Function at 0x4036e0
Capabilities:
Link many functions at runtime
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c8
mov eax, dword [0x42fc30]
xor eax, ebp
mov dword [ebp - 8], eax
mov dword [ebp - 0x4c8], ecx
xor eax, eax
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], al
mov dword [ebp - 0x124], 0x33529905
mov dword [ebp - 4], 0x99b683e
mov dword [ebp - 0x120], 0x347579bf
mov dword [ebp - 0x148], 0x6eb9367
mov dword [ebp - 0x11c], 0x197800
mov ecx, dword [ebp - 0x11c]
push ecx
mov edx, dword [ebp - 0x148]
push edx
mov eax, dword [ebp - 0x120]
push eax
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp - 0x124]
push edx
push 5
push 0x10
lea eax, [ebp - 0x140]
push eax
call fcn.00402e00
add esp, 0x20
mov dword [ebp - 0x118], 0xffffffff
mov byte [ebp - 0x110], 0
push 0x103
push 0
lea ecx, [ebp - 0x10f]
push ecx
call fcn.00412490
add esp, 0xc
push 0x104
lea edx, [ebp - 0x110]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
xor eax, eax
mov dword [ebp - 0x444], eax
mov dword [ebp - 0x440], eax
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x438], eax
mov word [ebp - 0x434], ax
mov byte [ebp - 0x432], al
mov dword [ebp - 0x144], 0x33ec8ebb
mov dword [ebp - 0x154], 0x998f09b
mov dword [ebp - 0x430], 0x1882667d
mov dword [ebp - 0x128], 0xafa719
mov dword [ebp - 0x150], 0x606cd77
mov dword [ebp - 0x42c], 0x1bdc9
mov ecx, dword [ebp - 0x42c]
push ecx
mov edx, dword [ebp - 0x150]
push edx
mov eax, dword [ebp - 0x128]
push eax
mov ecx, dword [ebp - 0x430]
push ecx
mov edx, dword [ebp - 0x154]
push edx
mov eax, dword [ebp - 0x144]
push eax
push 6
push 0x12
lea ecx, [ebp - 0x444]
push ecx
call fcn.00402e00
add esp, 0x24
lea edx, [ebp - 0x12c]
push edx
lea eax, [ebp - 0x14c]
push eax
mov ecx, dword [ebp + 0x20]
push ecx
lea edx, [ebp - 0x114]
push edx
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0x428]
push ecx
lea edx, [ebp - 0x110]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x4c8]
call fcn.004031d0
test eax, eax
je 0x403cd0
xor ecx, ecx
mov dword [ebp - 0x460], ecx
mov dword [ebp - 0x45c], ecx
mov dword [ebp - 0x458], ecx
mov dword [ebp - 0x454], ecx
mov byte [ebp - 0x450], cl
mov dword [ebp - 0x464], 0x31883960
mov dword [ebp - 0x468], 0x18766192
mov dword [ebp - 0x484], 0xbbf847f
mov dword [ebp - 0x480], 0xa986e4
mov dword [ebp - 0x494], 0x606f874
mov edx, dword [ebp - 0x494]
push edx
mov eax, dword [ebp - 0x480]
push eax
mov ecx, dword [ebp - 0x484]
push ecx
mov edx, dword [ebp - 0x468]
push edx
mov eax, dword [ebp - 0x464]
push eax
push 5
push 0x10
lea ecx, [ebp - 0x460]
push ecx
call fcn.00402e00
add esp, 0x20
xor edx, edx
mov dword [ebp - 0x47c], edx
mov dword [ebp - 0x478], edx
mov dword [ebp - 0x474], edx
mov byte [ebp - 0x470], dl
mov dword [ebp - 0x488], 0x30efa2cf
mov dword [ebp - 0x490], 0xa32a44a
mov dword [ebp - 0x48c], 0x18766192
mov dword [ebp - 0x46c], 0x301ec
mov eax, dword [ebp - 0x46c]
push eax
mov ecx, dword [ebp - 0x48c]
push ecx
mov edx, dword [ebp - 0x490]
push edx
mov eax, dword [ebp - 0x488]
push eax
push 4
push 0xc
lea ecx, [ebp - 0x47c]
push ecx
call fcn.00402e00
add esp, 0x1c
mov dword [ebp - 0x44c], 0
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x34]
cmp eax, dword [ebp - 0x14c]
jne 0x403a07
mov ecx, dword [ebp - 0x12c]
cmp ecx, dword [ebp + 0x1c]
jb 0x403a07
lea edx, [ebp - 0x140]
push edx
mov eax, dword [ebp - 0x4c8]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4318d8], eax
mov edx, dword [ebp - 0x14c]
mov dword [ebp - 0x44c], edx
lea eax, [ebp - 0x448]
push eax
push 0x40
mov ecx, dword [ebp - 0x12c]
push ecx
mov edx, dword [ebp - 0x44c]
push edx
mov eax, dword [ebp - 0x118]
push eax
call dword [0x4318d8]
jmp 0x403b57
mov dword [ebp - 0x4b4], 0
xor ecx, ecx
mov dword [ebp - 0x4a8], ecx
mov dword [ebp - 0x4a4], ecx
mov dword [ebp - 0x4a0], ecx
mov word [ebp - 0x49c], cx
mov byte [ebp - 0x49a], cl
mov dword [ebp - 0x4ac], 0x33529905
mov dword [ebp - 0x4bc], 0x99b683e
mov dword [ebp - 0x4b0], 0x3390808c
mov dword [ebp - 0x498], 0xaae4cb
mov dword [ebp - 0x4b8], 0x14
mov edx, dword [ebp - 0x4b8]
push edx
mov eax, dword [ebp - 0x498]
push eax
mov ecx, dword [ebp - 0x4b0]
push ecx
mov edx, dword [ebp - 0x4bc]
push edx
mov eax, dword [ebp - 0x4ac]
push eax
push 5
push 0xe
lea ecx, [ebp - 0x4a8]
push ecx
call fcn.00402e00
add esp, 0x20
lea edx, [ebp - 0x4a8]
push edx
mov eax, dword [ebp - 0x4c8]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x4b4], eax
mov edx, dword [ebp - 0x14c]
push edx
mov eax, dword [ebp - 0x118]
push eax
mov ecx, dword [ebp - 0x4c8]
call fcn.004040f0
test eax, eax
je 0x403af8
push 0x40
push 0x3000
mov ecx, dword [ebp + 0x1c]
push ecx
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x34]
push eax
mov ecx, dword [ebp - 0x118]
push ecx
call dword [ebp - 0x4b4]
mov dword [ebp - 0x44c], eax
cmp dword [ebp - 0x44c], 0
jne 0x403b57
mov edx, dword [ebp + 0x10]
push edx
mov ecx, dword [ebp - 0x4c8]
call fcn.00403f90
test eax, eax
je 0x403b57
push 0x40
push 0x3000
mov eax, dword [ebp + 0x1c]
push eax
push 0
mov ecx, dword [ebp - 0x118]
push ecx
call dword [ebp - 0x4b4]
mov dword [ebp - 0x44c], eax
cmp dword [ebp - 0x44c], 0
je 0x403b57
mov edx, dword [ebp - 0x44c]
push edx
mov eax, dword [ebp + 0x18]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov ecx, dword [ebp - 0x4c8]
call fcn.00403fd0
cmp dword [ebp - 0x44c], 0
je 0x403cc8
lea edx, [ebp - 0x444]
push edx
mov eax, dword [ebp - 0x4c8]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4318dc], eax
lea edx, [ebp - 0x448]
push edx
push 4
lea eax, [ebp - 0x44c]
push eax
mov ecx, dword [ebp - 0x384]
add ecx, 8
push ecx
mov edx, dword [ebp - 0x118]
push edx
call dword [0x4318dc]
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp - 0x44c]
mov dword [eax + 0x34], ecx
lea edx, [ebp - 0x448]
push edx
mov eax, dword [ebp + 0x1c]
push eax
mov ecx, dword [ebp + 0x18]
push ecx
mov edx, dword [ebp - 0x44c]
push edx
mov eax, dword [ebp - 0x118]
push eax
call dword [0x4318dc]
test eax, eax
je 0x403cbe
lea ecx, [ebp - 0x460]
push ecx
mov edx, dword [ebp - 0x4c8]
mov eax, dword [edx]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4318e0], eax
lea ecx, [ebp - 0x47c]
push ecx
mov edx, dword [ebp - 0x4c8]
mov eax, dword [edx]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4318e4], eax
mov dword [ebp - 0x428], 0x10007
mov ecx, dword [ebp - 0x44c]
cmp ecx, dword [ebp - 0x14c]
jne 0x403c3f
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x34]
mov ecx, dword [ebp + 0x10]
add eax, dword [ecx + 0x28]
mov dword [ebp - 0x378], eax
jmp 0x403c51
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x44c]
add eax, dword [edx + 0x28]
mov dword [ebp - 0x378], eax
lea ecx, [ebp - 0x428]
push ecx
mov edx, dword [ebp - 0x114]
push edx
call dword [0x4318e0]
mov eax, dword [ebp + 0x20]
mov ecx, dword [eax]
push ecx
call fcn.00401bf0
add esp, 4
mov dword [ebp - 0x4c4], 0x4f5d4b
call fcn.00412e35
mov dword [ebp - 0x4c0], eax
push 0xa
mov edx, dword [ebp - 0x4c0]
push edx
mov eax, dword [ebp - 0x4c4]
cdq
push edx
push eax
call fcn.00402bc0
add esp, 0x10
mov eax, dword [ebp - 0x114]
push eax
call dword [0x4318e4]
mov ecx, dword [ebp - 0x114]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x403cc6
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
jmp 0x403cd0
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
xor eax, eax
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.00411ff2
mov esp, ebp
pop ebp
ret 0x1c