Function at 0x40e280
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xd0
mov eax, dword [ebp + 8]
mov dword [esp + 0xb4], eax
mov ax, word [0x41d128]
mov word [esp + 0x4c], ax
mov eax, dword [0x41d124]
mov dword [esp + 0x48], eax
mov eax, dword [0x464814]
mov dword [esp + 0xbc], eax
lea edx, [esp + 0x38]
lea ecx, [esp + 0x5c]
lea esi, [esp + 0xac]
mov dword [esp + 0xb0], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x30], 0x9d8cfa91
jmp 0x40e3d0
mov dword [esp + 0x30], 0xdf18f114
nop
nop
nop
nop
mov eax, dword [esp + 0x30]
cmp eax, 0x7b6793e5
jg 0x40e400
cmp eax, 0x9055a937
jg 0x40e410
cmp eax, 0x87607be2
jne 0x40e3d0
mov dword [esp + 0x30], 0xc1ac0b80
jmp 0x40e3d0
cmp eax, 0x7b6793e6
jne 0x40e3d0
jmp 0x40e3c4
cmp eax, 0x9c8be1c5
jg 0x40e428
cmp eax, 0x9055a938
jne 0x40e3d0
mov dword [esp + 0x30], 0xec1e29b5
jmp 0x40e3d0
cmp eax, 0x6ba082f4
jg 0x40e467
cmp eax, 0x69319600
jg 0x40e47f
cmp eax, 0x677afb2c
jg 0x40e497
cmp eax, 0x626c340a
jg 0x40e4bc
cmp eax, 0x9d8cfa90
jg 0x40e4e5
cmp eax, 0x9c8be1c6
jne 0x40e3d0
mov dword [esp + 0x30], 0x53113a2e
jmp 0x40e3d0
cmp eax, 0x6ba082f5
jne 0x40e3d0
mov dword [esp + 0x30], 0xbde773f6
jmp 0x40e3d0
cmp eax, 0x69319601
jne 0x40e3d0
mov dword [esp + 0x30], 0x2c615e85
jmp 0x40e3d0
cmp eax, 0x677afb2d
jne 0x40e3d0
mov eax, 0x4228141f
cmp dword [esp + 0x58], 0
jne 0x40e4b3
mov eax, 0xf15f6412
mov dword [esp + 0x30], eax
jmp 0x40e3d0
cmp eax, 0x626c340b
jne 0x40e3d0
mov al, byte [esp + 0xc6]
test al, al
mov eax, 0xc2999c8f
jne 0x40e4dc
mov eax, 0xfebcfecf
mov dword [esp + 0x30], eax
jmp 0x40e3d0
cmp eax, 0x9f691faf
jg 0x40e514
cmp eax, 0x9d8cfa91
jne 0x40e3d0
mov eax, 0x76dae39
cmp dword [esp + 0xbc], 0
jne 0x40e50b
mov eax, 0x31e5242f
mov dword [esp + 0x30], eax
jmp 0x40e3d0
cmp eax, 0xa2dedaf1
jg 0x40e565
cmp eax, 0x9f691fb0
jne 0x40e3d0
mov edi, ecx
mov ebx, edx
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x464818
mov dword [esp], 0
call dword [0x46579c]
sub esp, 0xc
test eax, eax
mov eax, 0xbde773f6
jne 0x40e944
mov eax, 0x5f4f5153
mov dword [esp + 0x30], eax
jmp 0x40e948
cmp eax, 0xabcc8ee0
jg 0x40e584
cmp eax, 0xa2dedaf2
jne 0x40e3d0
mov dword [esp + 0x30], 0xc1ac0b80
jmp 0x40e3d0
cmp eax, 0xb1e7941b
jg 0x40e5b4
cmp eax, 0xabcc8ee1
jne 0x40e3d0
mov al, byte [esp + 0xc4]
test al, al
mov eax, 0xc0d5d70c
jne 0x40e5ab
mov eax, 0x5f8ccec0
mov dword [esp + 0x30], eax
jmp 0x40e3d0
cmp eax, 0x5f8ccebf
jg 0x40e688
cmp eax, 0x5f4f5152
jg 0x40e6a0
cmp eax, 0x5ad5fd5b
jg 0x40e6b8
cmp eax, 0x5aa894c7
jg 0x40e6f5
cmp eax, 0x59ec1b53
jg 0x40e732
cmp eax, 0x53113a2d
jg 0x40e788
cmp eax, 0x4228141e
jg 0x40e7a0
cmp eax, 0x31e5242e
jg 0x40e7cc
cmp eax, 0x2f058692
jg 0x40e805
cmp eax, 0x2d877421
jg 0x40e81d
cmp eax, 0x2c615e84
jg 0x40e835
cmp eax, 0x2b0fb725
jg 0x40e84d
cmp eax, 0x25d39c0f
jg 0x40e871
cmp eax, 0x1ceb025f
jg 0x40e89e
mov edi, esi
cmp eax, 0xb20f50e8
jg 0x40e8b6
cmp eax, 0xb1e7941c
mov esi, edi
jne 0x40e3d0
mov edi, esi
mov al, byte [esp + 0xc7]
test al, al
mov eax, 0x9f691fb0
jne 0x40e893
mov eax, 0xee7e4ff9
jmp 0x40e893
cmp eax, 0x5f8ccec0
jne 0x40e3d0
mov dword [esp + 0x30], 0x2d877422
jmp 0x40e3d0
cmp eax, 0x5f4f5153
jne 0x40e3d0
mov dword [esp + 0x30], 0xe599066e
jmp 0x40e3d0
cmp eax, 0x5ad5fd5c
jne 0x40e3d0
mov eax, dword [esp + 0x58]
mov dword [esp + 0xb0], eax
mov eax, dword [eax]
mov dword [esp + 4], esi
mov dword [esp], eax
mov ebx, edx
mov edi, ecx
call dword [0x4657a4]
sub esp, 8
mov ecx, edi
mov edx, ebx
mov dword [esp + 0x30], 0xfb57ddc9
jmp 0x40e3d0
cmp eax, 0x5aa894c8
jne 0x40e3d0
mov eax, dword [esp + 0x58]
mov dword [esp + 0xb0], eax
mov eax, dword [eax]
mov dword [esp + 4], esi
mov dword [esp], eax
mov ebx, edx
mov edi, ecx
call dword [0x4657a4]
sub esp, 8
mov ecx, edi
mov edx, ebx
mov dword [esp + 0x30], 0xedff5898
jmp 0x40e3d0
cmp eax, 0x59ec1b54
jne 0x40e3d0
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x58]
mov ebx, edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp], edx
mov dword [esp + 4], 0x19
call dword [0x4657a8]
sub esp, 0x14
test eax, eax
mov eax, 0x17a042c6
jne 0x40e779
mov eax, 0x2d877422
mov dword [esp + 0x30], eax
mov edx, ebx
lea ecx, [esp + 0x5c]
jmp 0x40e3d0
cmp eax, 0x53113a2e
jne 0x40e3d0
mov dword [esp + 0x30], 0xf9014124
jmp 0x40e3d0
cmp eax, 0x4228141f
jne 0x40e3d0
mov eax, dword [esp + 0x58]
mov dword [esp], eax
mov ebx, edx
mov edi, ecx
call fcn.0041314b
mov ecx, edi
mov edx, ebx
mov dword [esp + 0x30], 0xf15f6412
jmp 0x40e3d0
cmp eax, 0x31e5242f
jne 0x40e3d0
mov edi, ecx
mov ebx, edx
call fcn.00403cf0
mov ecx, dword [esp + 0xb4]
mov dword [ecx], eax
mov dword [esp + 0x34], eax
mov ecx, 0xcc1bd26c
cmp eax, 5
ja 0x40e7fc
mov ecx, 0x7b6793e6
mov dword [esp + 0x30], ecx
jmp 0x40e948
cmp eax, 0x2f058693
jne 0x40e3d0
mov dword [esp + 0x30], 0xe954cc25
jmp 0x40e3d0
cmp eax, 0x2d877422
jne 0x40e3d0
mov dword [esp + 0x30], 0x9c8be1c6
jmp 0x40e3d0
cmp eax, 0x2c615e85
jne 0x40e3d0
mov dword [esp + 0x30], 0x25d39c10
jmp 0x40e3d0
cmp eax, 0x2b0fb726
jne 0x40e3d0
mov edi, esi
mov al, byte [esp + 0xc5]
test al, al
mov eax, 0xabcc8ee1
jne 0x40e893
mov eax, 0x5ad5fd5c
jmp 0x40e893
cmp eax, 0x25d39c10
jne 0x40e3d0
mov edi, esi
mov al, byte [esp + 0xc3]
test al, al
mov eax, 0xc1824a5a
jne 0x40e893
mov eax, 0xf9014124
mov dword [esp + 0x30], eax
mov esi, edi
jmp 0x40e3d0
cmp eax, 0x1ceb0260
jne 0x40e3d0
mov dword [esp + 0x30], 0x178cfbde
jmp 0x40e3d0
cmp eax, 0xba1dc18b
jg 0x40e90b
cmp eax, 0xb20f50e9
mov esi, edi
jne 0x40e3d0
mov eax, dword [esp + 0x38]
mov edi, ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], eax
mov dword [esp], ecx
mov dword [esp + 8], 0
mov dword [esp + 4], 0x19
mov ebx, edx
call dword [0x4657a8]
sub esp, 0x14
mov ecx, edi
mov edx, ebx
mov dword [esp + 0x30], 0x178cfbde
jmp 0x40e3d0
cmp eax, 0xbde773f5
jg 0x40e951
cmp eax, 0xba1dc18c
mov esi, edi
jne 0x40e3d0
mov ebx, edx
mov eax, dword [esp + 0xac]
mov dword [esp + 4], ecx
mov edi, ecx
mov dword [esp], eax
call fcn.004142b8
test eax, eax
mov eax, 0xc51a7260
jne 0x40e944
mov eax, 0xde13fc7f
mov dword [esp + 0x30], eax
mov edx, ebx
mov ecx, edi
jmp 0x40e3d0
cmp eax, 0xc0d5d70b
jg 0x40e98a
cmp eax, 0xbde773f6
mov esi, edi
jne 0x40e3d0
mov eax, dword [esp + 0x44]
mov dword [esp], eax
mov ebx, edx
mov edi, ecx
call dword [0x465798]
sub esp, 4
mov ecx, edi
mov edx, ebx
mov dword [esp + 0x30], 0xee7e4ff9
jmp 0x40e3d0
cmp eax, 0xc1824a59
jg 0x40ea76
cmp eax, 0xc0d5d70c
mov esi, edi
jne 0x40e3d0
mov eax, dword [0x41d12c]
movzx eax, word [eax]
mov dword [esp + 0x40], eax
mov edi, ecx
mov ecx, dword [0x41d12c]
movzx eax, word [ecx + eax*2 + 2]
mov dword [esp + 0x3c], eax
mov ecx, dword [0x41d12c]
mov edx, dword [esp + 0x40]
lea esi, [ecx + edx*2 + 4]
add ecx, 2
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], esi
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
lea eax, [esp + 0x84]
mov esi, eax
mov dword [esp], esi
call fcn.00403650
mov eax, dword [0x41d130]
movzx eax, word [eax]
mov dword [esp + 0x40], eax
mov ecx, dword [0x41d130]
movzx eax, word [ecx + eax*2 + 2]
mov dword [esp + 0x3c], eax
mov ecx, dword [0x41d130]
mov edx, dword [esp + 0x40]
lea ebx, [ecx + edx*2 + 4]
mov dword [esp + 0x2c], ebx
add ecx, 2
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], edi
mov ebx, edi
call fcn.00403650
mov eax, dword [esp + 0xac]
mov dword [esp + 4], esi
mov dword [esp], eax
call fcn.004142b8
test eax, eax
mov eax, 0xba1dc18c
jne 0x40ea60
mov eax, 0xde13fc7f
mov dword [esp + 0x30], eax
lea edx, [esp + 0x38]
mov ecx, ebx
lea esi, [esp + 0xac]
jmp 0x40e3d0
cmp eax, 0xc1ac0b7f
jg 0x40eac5
cmp eax, 0xc1824a5a
mov esi, edi
jne 0x40e3d0
mov edi, esi
mov ebx, ecx
mov eax, dword [esp + 0x38]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.00413183
mov dword [esp + 0x58], eax
mov ecx, 0xdcb9c689
test eax, eax
je 0x40eab4
mov ecx, 0x59ec1b54
mov dword [esp + 0x30], ecx
lea edx, [esp + 0x38]
mov ecx, ebx
mov esi, edi
jmp 0x40e3d0
cmp eax, 0xc2999c8e
jg 0x40eaf4
cmp eax, 0xc1ac0b80
mov esi, edi
jne 0x40e3d0
mov eax, dword [esp + 0xb8]
mov dword [esp + 0xc8], eax
mov dword [esp + 0x30], 0xc97afa77
jmp 0x40e3d0
cmp eax, 0xc51a725f
jg 0x40eb2d
cmp eax, 0xc2999c8f
mov esi, edi
jne 0x40e3d0
mov eax, dword [esp + 0x54]
mov dword [esp], eax
mov ebx, edx
mov edi, ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov ecx, edi
mov edx, ebx
mov dword [esp + 0x30], 0x2f058693
jmp 0x40e3d0
cmp eax, 0xc97afa76
jg 0x40eb4e
cmp eax, 0xc51a7260
mov esi, edi
jne 0x40e3d0
mov dword [esp + 0x30], 0x5f8ccec0
jmp 0x40e3d0
cmp eax, 0xcc1bd26b
jg 0x40eb67
cmp eax, 0xc97afa77
mov esi, edi
jne 0x40e3d0
jmp 0x40f009
cmp eax, 0xcdc36b41
jg 0x40ebba
cmp eax, 0xcc1bd26c
mov esi, edi
jne 0x40e3d0
mov edi, esi
mov ebx, ecx
mov esi, dword [0x4657ac]
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea ecx, [esp + 0x54]
mov dword [esp + 8], ecx
mov dword [esp], eax
mov dword [esp + 4], 0x2000000
call esi
sub esp, 0xc
test eax, eax
mov eax, 0x1ceb0260
jne 0x40ebb1
mov eax, 0xe954cc25
mov dword [esp + 0x30], eax
jmp 0x40eab8
cmp eax, 0xdcb9c688
jg 0x40ec47
cmp eax, 0xcdc36b42
mov esi, edi
jne 0x40e3d0
lea eax, [esp + 0x44]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x48]
mov dword [esp], eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x220
mov dword [esp + 8], 0x20
mov dword [esp + 4], 2
mov ebx, edx
mov edi, ecx
call dword [0x4657a0]
sub esp, 0x2c
mov ecx, edi
mov edx, ebx
mov dword [esp + 0x30], 0xdf18f114
jmp 0x40e3d0
cmp eax, 0xde13fc7e
jg 0x40ec8b
cmp eax, 0xdcb9c689
mov esi, edi
jne 0x40e3d0
mov eax, dword [esp + 0x54]
mov dword [esp], eax
mov ebx, edx
mov edi, ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov ecx, edi
mov edx, ebx
mov dword [esp + 0xb8], 0xffffffff
mov dword [esp + 0x30], 0xa2dedaf2
jmp 0x40e3d0
cmp eax, 0xdf18f113
jg 0x40ecb6
cmp eax, 0xde13fc7f
mov esi, edi
jne 0x40e3d0
mov dword [0x464818], 1
mov dword [esp + 0x30], 0xc51a7260
jmp 0x40e3d0
cmp eax, 0xe30e1c46
jg 0x40ed4d
cmp eax, 0xdf18f114
mov esi, edi
jne 0x40e3d0
lea eax, [esp + 0x44]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x48]
mov dword [esp], eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x220
mov dword [esp + 8], 0x20
mov dword [esp + 4], 2
mov ebx, edx
mov edi, ecx
call dword [0x4657a0]
sub esp, 0x2c
mov ecx, edi
mov edx, ebx
test eax, eax
setne byte [esp + 0xc7]
mov dword [esp + 0x30], 0xb1e7941c
jmp 0x40e3d0
cmp eax, 0xe599066d
jg 0x40ed78
cmp eax, 0xe30e1c47
mov esi, edi
jne 0x40e3d0
mov dword [0x464818], 0
mov dword [esp + 0x30], 0xe599066e
jmp 0x40e3d0
cmp eax, 0xe954cc24
jg 0x40eda3
cmp eax, 0xe599066e
mov esi, edi
jne 0x40e3d0
mov dword [0x464818], 0
mov dword [esp + 0x30], 0x6ba082f5
jmp 0x40e3d0
cmp eax, 0xec1e29b4
jg 0x40edc4
cmp eax, 0xe954cc25
mov esi, edi
jne 0x40e3d0
mov dword [esp + 0x30], 0x677afb2d
jmp 0x40e3d0
cmp eax, 0xedff5897
jg 0x40eded
cmp eax, 0xec1e29b5
mov esi, edi
jne 0x40e3d0
mov byte [esp + 0xc6], 1
mov dword [esp + 0x30], 0x626c340b
jmp 0x40e3d0
cmp eax, 0xee7e4ff8
jg 0x40ee45
cmp eax, 0xedff5898
mov esi, edi
jne 0x40e3d0
mov eax, dword [esp + 0x58]
mov dword [esp + 0xb0], eax
mov eax, dword [eax]
mov dword [esp + 4], esi
mov dword [esp], eax
mov ebx, edx
mov edi, ecx
call dword [0x4657a4]
sub esp, 8
mov ecx, edi
mov edx, ebx
test eax, eax
setne byte [esp + 0xc4]
mov byte [esp + 0xc5], 1
mov dword [esp + 0x30], 0x2b0fb726
jmp 0x40e3d0
cmp eax, 0xf14cdb38
jg 0x40ee66
cmp eax, 0xee7e4ff9
mov esi, edi
jne 0x40e3d0
mov dword [esp + 0x30], 0x677afb2d
jmp 0x40e3d0
cmp eax, 0x17a042c5
jg 0x40eedf
cmp eax, 0x178cfbdd
jg 0x40eef9
cmp eax, 0x76dae38
jg 0x40ef54
cmp eax, 0xfebcfece
jg 0x40ef7a
cmp eax, 0xfd906613
jg 0x40efac
cmp eax, 0xfb57ddc8
jg 0x40efc6
cmp eax, 0xf14cdb39
je 0x40efe0
cmp eax, 0xf15f6412
jne 0x40efef
mov dword [0x464814], 1
mov eax, dword [0x464818]
mov dword [esp + 0xb8], eax
mov dword [esp + 0x30], 0xa2dedaf2
mov esi, edi
jmp 0x40e3d0
cmp eax, 0x17a042c6
mov esi, edi
jne 0x40e3d0
mov dword [esp + 0x30], 0xfb57ddc9
jmp 0x40e3d0
cmp eax, 0x178cfbde
mov esi, edi
jne 0x40e3d0
mov eax, dword [esp + 0x38]
mov edi, ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], eax
mov dword [esp], ecx
mov dword [esp + 8], 0
mov dword [esp + 4], 0x19
mov ebx, edx
call dword [0x4657a8]
sub esp, 0x14
mov ecx, edi
mov edx, ebx
cmp dword [esp + 0x38], 0
setne byte [esp + 0xc3]
mov dword [esp + 0x30], 0xfd906614
jmp 0x40e3d0
cmp eax, 0x76dae39
mov esi, edi
jne 0x40e3d0
mov eax, dword [0x464818]
mov dword [esp + 0xb8], eax
mov dword [esp + 0x30], 0xa2dedaf2
jmp 0x40e3d0
cmp eax, 0xfebcfecf
mov esi, edi
jne 0x40e3d0
mov eax, dword [esp + 0x54]
mov dword [esp], eax
mov ebx, edx
mov edi, ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov ecx, edi
mov edx, ebx
mov dword [esp + 0x30], 0xc2999c8f
jmp 0x40e3d0
cmp eax, 0xfd906614
mov esi, edi
jne 0x40e3d0
mov dword [esp + 0x30], 0x2c615e85
jmp 0x40e3d0
cmp eax, 0xfb57ddc9
mov esi, edi
jne 0x40e3d0
mov dword [esp + 0x30], 0xedff5898
jmp 0x40e3d0
mov dword [esp + 0x30], 0x9c8be1c6
mov esi, edi
jmp 0x40e3d0
cmp eax, 0xf9014124
mov esi, edi
jne 0x40e3d0
mov dword [esp + 0x30], 0xec1e29b5
jmp 0x40e3d0
mov eax, dword [esp + 0xc8]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret