69 lines
1.6 KiB
NASM
69 lines
1.6 KiB
NASM
; Attributes: bp-based frame fpd=1A0h
|
|
|
|
; int main(...)
|
|
main proc near
|
|
|
|
frame= byte ptr -1C0h
|
|
var_1A0= byte ptr -1A0h
|
|
var_19C= dword ptr -19Ch
|
|
var_178= dword ptr -178h
|
|
var_148= qword ptr -148h
|
|
var_120= xmmword ptr -120h
|
|
var_F0= xmmword ptr -0F0h
|
|
var_18= qword ptr -18h
|
|
|
|
; __unwind { // j___GSHandlerCheck
|
|
push rbp
|
|
push rdi
|
|
sub rsp, 1B8h
|
|
lea rbp, [rsp+20h]
|
|
|
|
__$EncStackInitStart:
|
|
lea rdi, [rsp+1C0h+var_1A0]
|
|
mov ecx, 36h ; '6'
|
|
mov eax, 0CCCCCCCCh
|
|
rep stosd
|
|
|
|
__$EncStackInitEnd:
|
|
mov rax, cs:__security_cookie
|
|
xor rax, rbp
|
|
mov [rbp+1A0h+var_18], rax
|
|
lea rcx, __41B3B322_AsmSqrt@c ; JMC_flag
|
|
call j___CheckForDebuggerJustMyCode
|
|
movss xmm0, cs:__real@40800000
|
|
movss [rbp+1A0h+var_19C], xmm0
|
|
lea rax, [rbp+1A0h+var_19C]
|
|
mov [rbp+1A0h+var_148], rax
|
|
mov rax, [rbp+1A0h+var_148]
|
|
movss xmm0, dword ptr [rax]
|
|
xorps xmm1, xmm1
|
|
movss xmm1, xmm0
|
|
movaps xmm0, xmm1
|
|
movaps [rbp+1A0h+var_120], xmm0
|
|
movaps xmm0, [rbp+1A0h+var_120]
|
|
sqrtss xmm0, xmm0
|
|
movaps [rbp+1A0h+var_F0], xmm0
|
|
movaps xmm0, [rbp+1A0h+var_F0]
|
|
movss [rbp+1A0h+var_178], xmm0
|
|
mov eax, 4
|
|
imul rax, 0
|
|
cvtss2sd xmm0, [rbp+rax+1A0h+var_178]
|
|
movaps xmm1, xmm0
|
|
movq rdx, xmm1
|
|
lea rcx, _Format ; "%f"
|
|
call j_printf
|
|
xor eax, eax
|
|
mov edi, eax
|
|
lea rcx, [rbp+1A0h+frame] ; frame
|
|
lea rdx, v ; v
|
|
call j__RTC_CheckStackVars
|
|
mov eax, edi
|
|
mov rcx, [rbp+1A0h+var_18]
|
|
xor rcx, rbp ; StackCookie
|
|
call j___security_check_cookie
|
|
lea rsp, [rbp+198h]
|
|
pop rdi
|
|
pop rbp
|
|
retn
|
|
; } // starts at 140011870
|
|
main endp |