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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x70
mov eax, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov eax, dword [ebp + 8]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x50]
add eax, dword [ecx + 0x3c]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x54]
add eax, dword [ecx + 0x78]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x58]
add eax, 0x1c
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x6c], 0x71fbc333
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x70], eax
sub eax, 0x8351219b
je 0x40ea1f
jmp 0x40e368
mov eax, dword [ebp - 0x70]
sub eax, 0x89942067
je 0x40ed82
jmp 0x40e37b
mov eax, dword [ebp - 0x70]
sub eax, 0x8c7cee4d
je 0x40edee
jmp 0x40e38e
mov eax, dword [ebp - 0x70]
sub eax, 0x90879ece
je 0x40ec1a
jmp 0x40e3a1
mov eax, dword [ebp - 0x70]
sub eax, 0x90a9fefd
je 0x40e6fe
jmp 0x40e3b4
mov eax, dword [ebp - 0x70]
sub eax, 0x9893083f
je 0x40ee6d
jmp 0x40e3c7
mov eax, dword [ebp - 0x70]
sub eax, 0x9bad7b8f
je 0x40edd0
jmp 0x40e3da
mov eax, dword [ebp - 0x70]
sub eax, 0xa25fc2eb
je 0x40e792
jmp 0x40e3ed
mov eax, dword [ebp - 0x70]
sub eax, 0xb51cfc80
je 0x40ed0b
jmp 0x40e400
mov eax, dword [ebp - 0x70]
sub eax, 0xb829cbde
je 0x40ec39
jmp 0x40e413
mov eax, dword [ebp - 0x70]
sub eax, 0xb89dfe0e
je 0x40ee4f
jmp 0x40e426
mov eax, dword [ebp - 0x70]
sub eax, 0xbccfd25b
je 0x40e7ec
jmp 0x40e439
mov eax, dword [ebp - 0x70]
sub eax, 0xcd723011
je 0x40ee8c
jmp 0x40e44c
mov eax, dword [ebp - 0x70]
sub eax, 0xcd97c2ec
je 0x40ec08
jmp 0x40e45f
mov eax, dword [ebp - 0x70]
sub eax, 0xd37acb05
je 0x40ec99
jmp 0x40e472
mov eax, dword [ebp - 0x70]
sub eax, 0xd4b2cac2
je 0x40e9e6
jmp 0x40e485
mov eax, dword [ebp - 0x70]
sub eax, 0xd893bf04
je 0x40eb41
jmp 0x40e498
mov eax, dword [ebp - 0x70]
sub eax, 0xdc42416b
je 0x40ea06
jmp 0x40e4ab
mov eax, dword [ebp - 0x70]
sub eax, 0xe6a20198
je 0x40ead8
jmp 0x40e4be
mov eax, dword [ebp - 0x70]
sub eax, 0xe988540c
je 0x40e920
jmp 0x40e4d1
mov eax, dword [ebp - 0x70]
sub eax, 0xecfae85a
je 0x40eddc
jmp 0x40e4e4
mov eax, dword [ebp - 0x70]
sub eax, 0xf29570b6
je 0x40eaf3
jmp 0x40e4f7
mov eax, dword [ebp - 0x70]
sub eax, 0x436d476
je 0x40ee31
jmp 0x40e50a
mov eax, dword [ebp - 0x70]
sub eax, 0xf1eba87
je 0x40ee25
jmp 0x40e51d
mov eax, dword [ebp - 0x70]
sub eax, 0x11dc3285
je 0x40e85d
jmp 0x40e530
mov eax, dword [ebp - 0x70]
sub eax, 0x1e914779
je 0x40e79e
jmp 0x40e543
mov eax, dword [ebp - 0x70]
sub eax, 0x1f1e9f1e
je 0x40ed17
jmp 0x40e556
mov eax, dword [ebp - 0x70]
sub eax, 0x1ffcce5c
je 0x40e6b0
jmp 0x40e569
mov eax, dword [ebp - 0x70]
sub eax, 0x23218d0c
je 0x40ee79
jmp 0x40e57c
mov eax, dword [ebp - 0x70]
sub eax, 0x2c2456c2
je 0x40edf8
jmp 0x40e58f
mov eax, dword [ebp - 0x70]
sub eax, 0x3281a35f
je 0x40ebc6
jmp 0x40e5a2
mov eax, dword [ebp - 0x70]
sub eax, 0x3452e91b
je 0x40ebba
jmp 0x40e5b5
mov eax, dword [ebp - 0x70]
sub eax, 0x363ecd7c
je 0x40e8d4
jmp 0x40e5c8
mov eax, dword [ebp - 0x70]
sub eax, 0x40e4fa55
je 0x40ebfc
jmp 0x40e5db
mov eax, dword [ebp - 0x70]
sub eax, 0x5185903d
je 0x40ea6d
jmp 0x40e5ee
mov eax, dword [ebp - 0x70]
sub eax, 0x563f10d4
je 0x40ebe5
jmp 0x40e601
mov eax, dword [ebp - 0x70]
sub eax, 0x5b4bbd90
je 0x40ee3d
jmp 0x40e614
mov eax, dword [ebp - 0x70]
sub eax, 0x5e3942c1
je 0x40ec4b
jmp 0x40e627
mov eax, dword [ebp - 0x70]
sub eax, 0x6f890f75
je 0x40e869
jmp 0x40e63a
mov eax, dword [ebp - 0x70]
sub eax, 0x71fbc333
je 0x40e68b
jmp 0x40e64d
mov eax, dword [ebp - 0x70]
sub eax, 0x7b4eb7d4
je 0x40e92c
jmp 0x40e660
mov eax, dword [ebp - 0x70]
sub eax, 0x7ddd3693
je 0x40e972
jmp 0x40e673
mov eax, dword [ebp - 0x70]
sub eax, 0x7fb745c3
je 0x40e9cb
jmp 0x40e686
jmp 0x40ee93
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x48]
add eax, ecx
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x6c], 0x1ffcce5c
jmp 0x40ee93
mov eax, dword [0x43e53c]
mov ecx, dword [0x43e538]
mov edx, eax
add edx, 0xe9a25481
sub edx, 1
sub edx, 0xe9a25481
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x2c2456c2
mov ecx, 0x90a9fefd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax + 0x24]
mov eax, dword [ebp - 0x40]
add eax, ecx
mov dword [ebp - 0x60], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x58]
add eax, dword [ecx + 0x20]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x68], 0
mov ecx, dword [0x43e53c]
mov eax, dword [0x43e538]
mov edx, ecx
add edx, 0xe5c686d0
sub edx, 1
sub edx, 0xe5c686d0
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x2c2456c2
mov ecx, 0xa25fc2eb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov dword [ebp - 0x6c], 0x1e914779
jmp 0x40ee93
mov eax, dword [0x43e53c]
mov ecx, dword [0x43e538]
mov edx, eax
sub edx, 0xd05909ce
sub edx, 1
add edx, 0xd05909ce
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xf1eba87
mov ecx, 0xbccfd25b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x38], eax
mov ecx, dword [0x43e53c]
mov eax, dword [0x43e538]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xf1eba87
mov ecx, 0x11dc3285
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov dword [ebp - 0x6c], 0x6f890f75
jmp 0x40ee93
mov ecx, dword [0x43e53c]
mov eax, dword [0x43e538]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x436d476
mov ecx, 0x363ecd7c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x34], eax
mov eax, dword [0x43e53c]
mov ecx, dword [0x43e538]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x436d476
mov ecx, 0xe988540c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov dword [ebp - 0x6c], 0x7b4eb7d4
jmp 0x40ee93
mov eax, dword [0x43e53c]
mov ecx, dword [0x43e538]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x5b4bbd90
mov ecx, 0x7ddd3693
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax + 0x18]
mov eax, dword [ebp - 0x38]
cmp eax, ecx
setb al
and al, 1
mov byte [ebp - 0x2d], al
mov eax, dword [0x43e53c]
mov ecx, dword [0x43e538]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x5b4bbd90
mov ecx, 0x7fb745c3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov dl, byte [ebp - 0x2d]
mov eax, 0x5e3942c1
mov ecx, 0xd4b2cac2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov eax, dword [ebp + 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x68]
shl ecx, 2
add eax, ecx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x6c], 0xdc42416b
jmp 0x40ee93
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x2c]
add eax, ecx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x6c], 0x8351219b
jmp 0x40ee93
mov eax, dword [0x43e53c]
mov ecx, dword [0x43e538]
mov edx, eax
sub edx, 0x3d9bd911
sub edx, 1
add edx, 0x3d9bd911
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xb89dfe0e
mov ecx, 0x5185903d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x24]
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.0042a0c0
cmp eax, 0
sete al
and al, 1
mov byte [ebp - 0x1d], al
mov eax, dword [0x43e53c]
mov ecx, dword [0x43e538]
mov edx, eax
sub edx, 0xc07df7d7
sub edx, 1
add edx, 0xc07df7d7
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xb89dfe0e
mov ecx, 0xe6a20198
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov dl, byte [ebp - 0x1d]
mov eax, 0x40e4fa55
mov ecx, 0xf29570b6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov eax, dword [0x43e53c]
mov ecx, dword [0x43e538]
mov edx, eax
sub edx, 0xdaf0400d
sub edx, 1
add edx, 0xdaf0400d
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x9893083f
mov ecx, 0xd893bf04
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1c], eax
mov ecx, dword [0x43e53c]
mov eax, dword [0x43e538]
mov edx, ecx
sub edx, 0xd58470a0
sub edx, 1
add edx, 0xd58470a0
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x9893083f
mov ecx, 0x3452e91b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov dword [ebp - 0x6c], 0x3281a35f
jmp 0x40ee93
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 0x68]
movzx ecx, word [ecx + edx*2]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x6c], 0x563f10d4
jmp 0x40ee93
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
add eax, ecx
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x6c], 0xecfae85a
jmp 0x40ee93
mov dword [ebp - 0x6c], 0xcd97c2ec
jmp 0x40ee93
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x6c], 0x90879ece
jmp 0x40ee93
mov eax, dword [ebp - 0x14]
add eax, 0xa55118ba
add eax, 1
sub eax, 0xa55118ba
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x6c], 0xb829cbde
jmp 0x40ee93
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x6c], 0x1e914779
jmp 0x40ee93
mov eax, dword [0x43e53c]
mov ecx, dword [0x43e538]
mov edx, eax
add edx, 0x7247239e
sub edx, 1
sub edx, 0x7247239e
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x23218d0c
mov ecx, 0xd37acb05
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov dword [ebp - 0x4c], 0
mov ecx, dword [0x43e53c]
mov eax, dword [0x43e538]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x23218d0c
mov ecx, 0xb51cfc80
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov dword [ebp - 0x6c], 0x1f1e9f1e
jmp 0x40ee93
mov ecx, dword [0x43e53c]
mov eax, dword [0x43e538]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xcd723011
mov ecx, 0x89942067
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov eax, dword [0x43e53c]
mov ecx, dword [0x43e538]
mov edx, eax
add edx, 0xb79e34b2
sub edx, 1
sub edx, 0xb79e34b2
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xcd723011
mov ecx, 0x9bad7b8f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40ee93
mov dword [ebp - 0x6c], 0xecfae85a
jmp 0x40ee93
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x6c], 0x8c7cee4d
jmp 0x40ee93
mov eax, dword [ebp - 0xc]
add esp, 0x70
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax + 0x24]
mov eax, dword [ebp - 0x40]
add eax, ecx
mov dword [ebp - 0x60], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x58]
add eax, dword [ecx + 0x20]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x6c], 0x90a9fefd
jmp 0x40ee93
mov dword [ebp - 0x6c], 0xbccfd25b
jmp 0x40ee93
mov dword [ebp - 0x6c], 0x363ecd7c
jmp 0x40ee93
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x6c], 0x7ddd3693
jmp 0x40ee93
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x24]
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.0042a0c0
mov dword [ebp - 0x6c], 0x5185903d
jmp 0x40ee93
mov dword [ebp - 0x6c], 0xd893bf04
jmp 0x40ee93
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x6c], 0xd37acb05
jmp 0x40ee93
mov dword [ebp - 0x6c], 0x89942067
jmp 0x40e352