Function at 0x402cd8
Capabilities:
Check internet connectivity via wininet
Create http request
Create thread
Get http content length

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x68
push 8
call fcn.00406078
add esp, 4
mov dword [ebp - 4], eax
mov edi, eax
mov esi, 0x426315
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x44], 0
push closesocket
push 0
push 0
push 0
push 0
push 0
push 0x80000004
push 0
push 0x426376
push 0x80000004
push 0
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
jne 0x402d9f
mov eax, 0x4262f0
push eax
push 4
mov ebx, 0x14c
call fcn.00406e70
add esp, 0x34
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0xffffffff
jne 0x402f61
push 0
push 0
push 0
push 0x80000004
push 0
push 0x426378
push 0x80000004
push 0
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
jne 0x402de6
mov eax, 0x4262f0
push eax
push 3
mov ebx, 0x190
call fcn.00406ad0
add esp, 0x28
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
push eax
mov ebx, dword [ebp - 4]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x402e1e
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x402e1a
imul eax, dword [ebx]
jmp 0x402e0f
mov ecx, eax
test ecx, ecx
je 0x402e3d
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x402e36
push ebx
push eax
call fcn.00406072
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x402e24
call fcn.00406072
add esp, 4
pop eax
mov dword [ebp - 4], eax
push 0x80000301
push 0
push 1
push 0x80000004
push 0
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
jne 0x402e6a
mov eax, 0x4262f0
push eax
push 2
mov ebx, 0x138
call fcn.00406f20
add esp, 0x1c
mov dword [ebp - 0x48], eax
push 0x426378
push dword [ebp - 0x48]
call fcn.00401289
add esp, 8
cmp eax, 0
mov eax, 0
setne al
mov dword [ebp - 0x4c], eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x402eae
push ebx
call fcn.00406072
add esp, 4
cmp dword [ebp - 0x4c], 0
je 0x402eee
push 0x426378
mov ebx, dword [ebp + 0xc]
push dword [ebx]
mov ecx, 2
call fcn.004013ca
add esp, 8
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
push eax
mov ebx, dword [ebp + 0xc]
mov ebx, dword [ebx]
test ebx, ebx
je 0x402ee8
push ebx
call fcn.00406072
add esp, 4
pop eax
mov ebx, dword [ebp + 0xc]
mov dword [ebx], eax
mov ebx, dword [ebp - 4]
call fcn.0040133f
push ebx
push ecx
mov ebx, dword [ebp - 4]
call fcn.00401326
dec eax
jns 0x402f10
push 4
call fcn.00406084
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402f23
push 1
call fcn.00406084
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
push dword [ebx]
mov ebx, dword [ebp + 0xc]
push dword [ebx]
mov ecx, 2
call fcn.004013ca
add esp, 8
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp + 0xc]
mov ebx, dword [ebx]
test ebx, ebx
je 0x402f5b
push ebx
call fcn.00406072
add esp, 4
pop eax
mov ebx, dword [ebp + 0xc]
mov dword [ebx], eax
mov dword [ebp - 0x48], esp
push 0
lea eax, [ebp - 8]
push eax
call dword [sym.imp.WININET.dll_InternetGetConnectedState]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x402f89
push 6
call fcn.00406084
add esp, 4
push 0x80000301
push 0
push 4
push 0x80000301
push 0
push dword [ebp - 8]
push 2
mov ebx, 0xc4
call fcn.00406f90
add esp, 0x1c
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
jne 0x403033
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x140
call fcn.00406fb0
add esp, 0x10
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x4c], esp
push 0
push 0
push 0
push 4
push dword [ebp - 0x48]
call dword [sym.imp.WININET.dll_InternetOpenA]
nop
nop
nop
nop
cmp dword [ebp - 0x4c], esp
je 0x403015
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x403028
push ebx
call fcn.00406072
add esp, 4
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0xc], eax
jmp 0x4030a3
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x140
call fcn.00406fb0
add esp, 0x10
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x4c], esp
push 0
push 0
push 0
push 0
push dword [ebp - 0x48]
call dword [sym.imp.WININET.dll_InternetOpenA]
nop
nop
nop
nop
cmp dword [ebp - 0x4c], esp
je 0x40308a
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x40309d
push ebx
call fcn.00406072
add esp, 4
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x4030b7
mov eax, 0xffffffff
jmp 0x403c22
mov eax, 0x42637a
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4030cd
push ebx
call fcn.00406072
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
push 0x80000004
push 0
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x4030e4
mov eax, 0x4262f0
push eax
push 1
mov ebx, 0x130
call fcn.00406cb0
add esp, 0x10
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x4c], esp
push 0
push 0x84000100
push dword [ebp - 0x48]
push dword [ebp - 0x10]
mov ebx, dword [ebp + 8]
push dword [ebx]
push dword [ebp - 0xc]
call dword [sym.imp.WININET.dll_InternetOpenUrlA]
nop
nop
nop
nop
cmp dword [ebp - 0x4c], esp
je 0x403131
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jne 0x40316a
mov dword [ebp - 0x48], esp
push dword [ebp - 0xc]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403160
push 6
call fcn.00406084
add esp, 4
mov eax, 0xffffffff
jmp 0x403c22
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 4
mov dword [ebp - 0x48], esp
mov eax, 0
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x18]
push eax
push 0x20000005
push dword [ebp - 0x14]
call dword [sym.imp.WININET.dll_HttpQueryInfoA]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x4031b3
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0
jne 0x4031c7
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x48], esp
push dword [ebp - 0x14]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x4031e9
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x48], esp
push dword [ebp - 0xc]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x40320b
push 6
call fcn.00406084
add esp, 4
push 0x80000301
push 0
push 0x40000000
push 0x80000301
push 0
push closesocket
push 2
mov ebx, 0xc8
call fcn.00406fd0
add esp, 0x1c
mov dword [ebp - 0x48], eax
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push 1
push 2
mov ebx, 0xc8
call fcn.00406fd0
add esp, 0x1c
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x50], esp
push 0
push 0
push 2
push 0
push dword [ebp - 0x4c]
push dword [ebp - 0x48]
mov ebx, dword [ebp + 0xc]
push dword [ebx]
call dword [sym.imp.KERNEL32.dll_CreateFileA]
nop
nop
nop
nop
cmp dword [ebp - 0x50], esp
je 0x4032a3
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xffffffff
jne 0x4032ba
mov eax, 0xffffffff
jmp 0x403c22
mov dword [ebp - 0x48], esp
push 0
push dword [ebp - 0x18]
push 0
push 4
push 0
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x4032f3
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jne 0x40332c
mov dword [ebp - 0x48], esp
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403322
push 6
call fcn.00406084
add esp, 4
mov eax, 0xffffffff
jmp 0x403c22
cmp dword [ebp - 0x18], 0
jne 0x403384
mov dword [ebp - 0x48], esp
push dword [ebp - 0x24]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403358
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x48], esp
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x40337a
push 6
call fcn.00406084
add esp, 4
mov eax, 0
jmp 0x403c22
mov dword [ebp - 0x28], 0x100000
fild dword [ebp - 0x18]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
fild dword [ebp - 0x28]
fstp qword [ebp - 0x54]
fdiv qword [ebp - 0x54]
fstp qword [ebp - 0x5c]
fld qword [ebp - 0x5c]
call fcn.0040227d
mov dword [ebp - 0x2c], eax
fild dword [ebp - 0x28]
fstp qword [ebp - 0x4c]
push 0x80000601
push dword [ebp - 0x48]
push dword [ebp - 0x4c]
fild dword [ebp - 0x18]
fstp qword [ebp - 0x54]
push 0x80000601
push dword [ebp - 0x50]
push dword [ebp - 0x54]
push 2
mov ebx, 0x48
call fcn.00406ff0
add esp, 0x1c
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], edx
fld qword [ebp - 0x64]
ftst
fnstsw ax
test ah, 1
je 0x4033f3
fchs
fcomp qword [0x426417]
fnstsw ax
test ah, 0x41
jne 0x403407
inc dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
cmp dword [ebp + 0x10], eax
jle 0x403419
mov eax, dword [ebp - 0x2c]
mov dword [ebp + 0x10], eax
mov dword [ebp - 0x48], esp
push 0
push 0
push 4
call dword [sym.imp.KERNEL32.dll_HeapCreate]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403447
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x4034a2
mov dword [ebp - 0x48], esp
push dword [ebp - 0x24]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403476
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x48], esp
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403498
push 6
call fcn.00406084
add esp, 4
mov eax, 0xffffffff
jmp 0x403c22
mov dword [ebp - 0x48], esp
push 0x3c
push 8
push dword [ebp - 0x30]
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x4034ce
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
jne 0x40354b
mov dword [ebp - 0x48], esp
push dword [ebp - 0x30]
call dword [sym.imp.KERNEL32.dll_HeapDestroy]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x4034fd
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x48], esp
push dword [ebp - 0x24]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x40351f
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x48], esp
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403541
push 6
call fcn.00406084
add esp, 4
mov eax, 0xffffffff
jmp 0x403c22
push 0x80000004
push 0
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
jne 0x403560
mov eax, 0x4262f0
push eax
push 1
mov ebx, 0x130
call fcn.00406cb0
add esp, 0x10
mov dword [ebp - 0x50], eax
fild dword [ebp - 0x50]
fstp qword [ebp - 0x50]
fld qword [ebp - 0x50]
fadd qword [0x42636c]
fstp qword [ebp - 0x58]
mov dword [ebp - 0x5c], esp
fld qword [ebp - 0x58]
call fcn.0040227d
push eax
push 8
push dword [ebp - 0x30]
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
nop
nop
nop
nop
cmp dword [ebp - 0x5c], esp
je 0x4035b8
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jne 0x403635
mov dword [ebp - 0x48], esp
push dword [ebp - 0x30]
call dword [sym.imp.KERNEL32.dll_HeapDestroy]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x4035e7
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x48], esp
push dword [ebp - 0x24]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403609
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x48], esp
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x40362b
push 6
call fcn.00406084
add esp, 4
mov eax, 0xffffffff
jmp 0x403c22
push 0x80000004
push 0
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
jne 0x40364a
mov eax, 0x4262f0
push eax
push 1
mov ebx, 0x130
call fcn.00406cb0
add esp, 0x10
mov dword [ebp - 0x50], eax
fild dword [ebp - 0x50]
fstp qword [ebp - 0x50]
fld qword [ebp - 0x50]
fadd qword [0x42636c]
fstp qword [ebp - 0x58]
mov dword [ebp - 0x5c], esp
fld qword [ebp - 0x58]
call fcn.0040227d
push eax
mov ebx, dword [ebp + 8]
push dword [ebx]
push dword [ebp - 0x38]
call dword [sym.imp.KERNEL32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x5c], esp
je 0x4036a2
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x48], esp
push 0x18
push 8
push dword [ebp - 0x30]
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x4036ce
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0
jne 0x40374b
mov dword [ebp - 0x48], esp
push dword [ebp - 0x30]
call dword [sym.imp.KERNEL32.dll_HeapDestroy]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x4036fd
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x48], esp
push dword [ebp - 0x24]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x40371f
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x48], esp
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403741
push 6
call fcn.00406084
add esp, 4
mov eax, 0xffffffff
jmp 0x403c22
mov dword [ebp - 0x48], esp
push dword [ebp - 0x3c]
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x40376d
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x48], esp
push 4
lea eax, [ebp - 0x38]
push eax
push dword [ebp - 0x34]
call dword [sym.imp.KERNEL32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403798
push 6
call fcn.00406084
add esp, 4
fild dword [ebp - 0x34]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
fadd qword [0x42641f]
fstp qword [ebp - 0x54]
mov dword [ebp - 0x58], esp
push 4
lea eax, [ebp + 0x14]
push eax
fld qword [ebp - 0x54]
call fcn.0040227d
push eax
call dword [sym.imp.KERNEL32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x58], esp
je 0x4037db
push 6
call fcn.00406084
add esp, 4
fild dword [ebp - 0x34]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
fadd qword [0x426427]
fstp qword [ebp - 0x54]
mov dword [ebp - 0x58], esp
push 4
lea eax, [ebp - 0x20]
push eax
fld qword [ebp - 0x54]
call fcn.0040227d
push eax
call dword [sym.imp.KERNEL32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x58], esp
je 0x40381e
push 6
call fcn.00406084
add esp, 4
fild dword [ebp - 0x34]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
fadd qword [0x42642f]
fstp qword [ebp - 0x54]
mov dword [ebp - 0x58], esp
push 4
lea eax, [ebp - 0x24]
push eax
fld qword [ebp - 0x54]
call fcn.0040227d
push eax
call dword [sym.imp.KERNEL32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x58], esp
je 0x403861
push 6
call fcn.00406084
add esp, 4
fild dword [ebp - 0x34]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
fadd qword [0x426437]
fstp qword [ebp - 0x54]
mov dword [ebp - 0x58], esp
push 4
lea eax, [ebp - 0x30]
push eax
fld qword [ebp - 0x54]
call fcn.0040227d
push eax
call dword [sym.imp.KERNEL32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x58], esp
je 0x4038a4
push 6
call fcn.00406084
add esp, 4
fild dword [ebp - 0x34]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
fadd qword [0x42643f]
fstp qword [ebp - 0x54]
mov dword [ebp - 0x58], esp
push 4
lea eax, [ebp - 0x3c]
push eax
fld qword [ebp - 0x54]
call fcn.0040227d
push eax
call dword [sym.imp.KERNEL32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x58], esp
je 0x4038e7
push 6
call fcn.00406084
add esp, 4
fild dword [ebp - 0x34]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
fadd qword [0x426447]
fstp qword [ebp - 0x54]
mov dword [ebp - 0x58], esp
push 4
lea eax, [ebp + 0x10]
push eax
fld qword [ebp - 0x54]
call fcn.0040227d
push eax
call dword [sym.imp.KERNEL32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x58], esp
je 0x40392a
push 6
call fcn.00406084
add esp, 4
fild dword [ebp - 0x34]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
fadd qword [0x42644f]
fstp qword [ebp - 0x54]
mov dword [ebp - 0x58], esp
push 4
lea eax, [ebp - 0x40]
push eax
fld qword [ebp - 0x54]
call fcn.0040227d
push eax
call dword [sym.imp.KERNEL32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x58], esp
je 0x40396d
push 6
call fcn.00406084
add esp, 4
fild dword [ebp - 0x34]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
fadd qword [0x426457]
fstp qword [ebp - 0x54]
mov dword [ebp - 0x58], esp
push 4
mov eax, 0
mov dword [ebp - 0x5c], eax
lea eax, [ebp - 0x5c]
push eax
fld qword [ebp - 0x54]
call fcn.0040227d
push eax
call dword [sym.imp.KERNEL32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x58], esp
je 0x4039b8
push 6
call fcn.00406084
add esp, 4
fild dword [ebp - 0x34]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
fadd qword [0x42645f]
fstp qword [ebp - 0x54]
mov dword [ebp - 0x58], esp
push 4
lea eax, [ebp - 0x28]
push eax
fld qword [ebp - 0x54]
call fcn.0040227d
push eax
call dword [sym.imp.KERNEL32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x58], esp
je 0x4039fb
push 6
call fcn.00406084
add esp, 4
fild dword [ebp - 0x34]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
fadd qword [0x426467]
fstp qword [ebp - 0x54]
mov dword [ebp - 0x58], esp
push 4
mov eax, 0
mov dword [ebp - 0x5c], eax
lea eax, [ebp - 0x5c]
push eax
fld qword [ebp - 0x54]
call fcn.0040227d
push eax
call dword [sym.imp.KERNEL32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x58], esp
je 0x403a46
push 6
call fcn.00406084
add esp, 4
fild dword [ebp - 0x34]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
fadd qword [0x42646f]
fstp qword [ebp - 0x54]
mov dword [ebp - 0x58], esp
push 4
lea eax, [ebp - 0x2c]
push eax
fld qword [ebp - 0x54]
call fcn.0040227d
push eax
call dword [sym.imp.KERNEL32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x58], esp
je 0x403a89
push 6
call fcn.00406084
add esp, 4
fild dword [ebp - 0x34]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
fadd qword [0x426477]
fstp qword [ebp - 0x54]
mov dword [ebp - 0x58], esp
push 4
mov eax, 0
mov dword [ebp - 0x5c], eax
lea eax, [ebp - 0x5c]
push eax
fld qword [ebp - 0x54]
call fcn.0040227d
push eax
call dword [sym.imp.KERNEL32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x58], esp
je 0x403ad4
push 6
call fcn.00406084
add esp, 4
fild dword [ebp - 0x34]
fstp qword [ebp - 0x4c]
fld qword [ebp - 0x4c]
fadd qword [0x42647f]
fstp qword [ebp - 0x54]
mov dword [ebp - 0x58], esp
push 4
lea eax, [ebp - 0x18]
push eax
fld qword [ebp - 0x54]
call fcn.0040227d
push eax
call dword [sym.imp.KERNEL32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x58], esp
je 0x403b17
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x48], esp
mov eax, 0
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
push 0
push dword [ebp - 0x34]
push 0x4057ec
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403b59
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jne 0x403bf8
mov dword [ebp - 0x48], esp
push dword [ebp - 0x3c]
call dword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403b88
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x48], esp
push dword [ebp - 0x30]
call dword [sym.imp.KERNEL32.dll_HeapDestroy]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403baa
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x48], esp
push dword [ebp - 0x24]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403bcc
push 6
call fcn.00406084
add esp, 4
mov dword [ebp - 0x48], esp
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403bee
push 6
call fcn.00406084
add esp, 4
mov eax, 0xffffffff
jmp 0x403c22
mov dword [ebp - 0x48], esp
push dword [ebp - 0x44]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x48], esp
je 0x403c1a
push 6
call fcn.00406084
add esp, 4
mov eax, dword [ebp - 0x34]
jmp 0x403c22
push eax
mov ebx, dword [ebp - 4]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x403c41
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x403c3d
imul eax, dword [ebx]
jmp 0x403c32
mov ecx, eax
test ecx, ecx
je 0x403c60
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x403c59
push ebx
push eax
call fcn.00406072
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x403c47
call fcn.00406072
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x403c78
push ebx
call fcn.00406072
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x10