Function at 0x40d88f
Capabilities:
Terminate thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov ebx, dword [0x420cb7]
call fcn.00404d56
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x40d8d4
push 4
call fcn.0040e01e
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40d8e7
push 1
call fcn.0040e01e
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov ebx, dword [ebx]
call fcn.00405221
xor ecx, ecx
push eax
lea eax, [ebp - 4]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40d98d
mov ebx, dword [0x420cb7]
call fcn.00404d56
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x40d935
push 4
call fcn.0040e01e
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40d948
push 1
call fcn.0040e01e
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], esp
push 0
push 0
push 1
mov ebx, dword [ebp - 0x14]
push dword [ebx]
call dword [sym.imp.KERNEL32.dll_PostQueuedCompletionStatus]
nop
nop
nop
nop
cmp dword [ebp - 0x18], esp
je 0x40d985
push 6
call fcn.0040e01e
add esp, 4
pop eax
pop ebx
pop ecx
jmp 0x40d907
add esp, 0xc
mov dword [ebp - 0x14], esp
call dword [sym.imp.KERNEL32.dll_GetTickCount]
nop
nop
nop
nop
cmp dword [ebp - 0x14], esp
je 0x40d9af
push 6
call fcn.0040e01e
add esp, 4
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0xc]
and eax, 1
xor eax, 1
test eax, eax
je 0x40dc77
mov dword [ebp - 0x14], esp
call dword [sym.imp.KERNEL32.dll_GetTickCount]
nop
nop
nop
nop
cmp dword [ebp - 0x14], esp
je 0x40d9e2
push 6
call fcn.0040e01e
add esp, 4
mov dword [ebp - 0x20], eax
fild dword [ebp - 0x20]
fstp qword [ebp - 0x20]
fld qword [ebp - 0x20]
fild dword [ebp - 8]
fstp qword [ebp - 0x28]
fsub qword [ebp - 0x28]
fstp qword [ebp - 0x30]
fild dword [ebp + 0xc]
fstp qword [ebp - 0x38]
fld qword [ebp - 0x30]
fsub qword [ebp - 0x38]
fcomp qword [0x420732]
fnstsw ax
test ah, 1
jne 0x40db28
mov ebx, dword [0x420cb7]
call fcn.00404d56
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x40da37
push 4
call fcn.0040e01e
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40da4a
push 1
call fcn.0040e01e
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov ebx, dword [ebx]
call fcn.00405221
xor ecx, ecx
push eax
lea eax, [ebp - 4]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40db1b
mov ebx, dword [0x420cb7]
call fcn.00404d56
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x40da98
push 4
call fcn.0040e01e
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40daab
push 1
call fcn.0040e01e
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 4]
call fcn.00404d56
push ebx
push ecx
mov eax, dword [ebp - 4]
dec eax
jns 0x40dacf
push 4
call fcn.0040e01e
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40dae2
push 1
call fcn.0040e01e
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], esp
push 1
mov ebx, dword [ebp - 0x14]
push dword [ebx]
call dword [sym.imp.KERNEL32.dll_TerminateThread]
nop
nop
nop
nop
cmp dword [ebp - 0x18], esp
je 0x40db13
push 6
call fcn.0040e01e
add esp, 4
pop eax
pop ebx
pop ecx
jmp 0x40da6a
add esp, 0xc
jmp 0x40dc77
mov dword [ebp - 0xc], 1
mov ebx, dword [0x420cb7]
call fcn.00404d56
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x40db4f
push 4
call fcn.0040e01e
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40db62
push 1
call fcn.0040e01e
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov ebx, dword [ebx]
call fcn.00405221
xor ecx, ecx
push eax
lea eax, [ebp - 4]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40dc46
mov ebx, dword [0x420cb7]
call fcn.00404d56
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x40dbb0
push 4
call fcn.0040e01e
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40dbc3
push 1
call fcn.0040e01e
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 4]
call fcn.00404d56
push ebx
push ecx
mov eax, dword [ebp - 4]
dec eax
jns 0x40dbe7
push 4
call fcn.0040e01e
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40dbfa
push 1
call fcn.0040e01e
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], esp
lea eax, [ebp - 0x10]
push eax
mov ebx, dword [ebp - 0x14]
push dword [ebx]
call dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
nop
nop
nop
nop
cmp dword [ebp - 0x18], esp
je 0x40dc2a
push 6
call fcn.0040e01e
add esp, 4
cmp dword [ebp - 0x10], 0x103
jne 0x40dc3e
mov dword [ebp - 0xc], 0
pop eax
pop ebx
pop ecx
jmp 0x40db82
add esp, 0xc
mov dword [ebp - 0x14], esp
push 0x64
push 0xffffffff
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
nop
nop
nop
nop
cmp dword [ebp - 0x14], esp
je 0x40dc72
push 6
call fcn.0040e01e
add esp, 4
jmp 0x40d9b2
mov ebx, dword [0x420cb7]
call fcn.00404d56
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x40dc97
push 4
call fcn.0040e01e
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40dcaa
push 1
call fcn.0040e01e
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov ebx, dword [ebx]
push ebx
call fcn.0040e012
add esp, 4
mov eax, 0x42008e
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
mov ebx, dword [0x420cb7]
call fcn.00404d56
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x40dcef
push 4
call fcn.0040e01e
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40dd02
push 1
call fcn.0040e01e
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], esp
mov ebx, dword [ebp - 0x14]
push dword [ebx]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x18], esp
je 0x40dd30
push 6
call fcn.0040e01e
add esp, 4
mov ebx, dword [0x420cb7]
call fcn.00404d56
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x40dd50
push 4
call fcn.0040e01e
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40dd63
push 1
call fcn.0040e01e
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov dword [ebx], 0
mov ebx, dword [0x420cb7]
call fcn.00404d56
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x40dd99
push 4
call fcn.0040e01e
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40ddac
push 1
call fcn.0040e01e
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov dword [ebx], 0
mov esp, ebp
pop ebp
ret 8