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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x74
mov eax, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov eax, dword [ebp + 8]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x54]
add eax, dword [ecx + 0x3c]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x58]
add eax, dword [ecx + 0x78]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x5c]
add eax, 0x1c
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x70], 0x80d4a2f7
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x74], eax
sub eax, 0x80d4a2f7
je 0x409d0b
jmp 0x4099e8
mov eax, dword [ebp - 0x74]
sub eax, 0x88ac592f
je 0x40a2d8
jmp 0x4099fb
mov eax, dword [ebp - 0x74]
sub eax, 0x8b78b2f3
je 0x40a526
jmp 0x409a0e
mov eax, dword [ebp - 0x74]
sub eax, 0x8ee4d619
je 0x409e4d
jmp 0x409a21
mov eax, dword [ebp - 0x74]
sub eax, 0x9e903d62
je 0x409d3f
jmp 0x409a34
mov eax, dword [ebp - 0x74]
sub eax, 0x9fdca4a6
je 0x40a51a
jmp 0x409a47
mov eax, dword [ebp - 0x74]
sub eax, 0xa09acd23
je 0x40a418
jmp 0x409a5a
mov eax, dword [ebp - 0x74]
sub eax, 0xa1d736b0
je 0x40a038
jmp 0x409a6d
mov eax, dword [ebp - 0x74]
sub eax, 0xa5c79643
je 0x40a0ba
jmp 0x409a80
mov eax, dword [ebp - 0x74]
sub eax, 0xa7e1efb0
je 0x40a292
jmp 0x409a93
mov eax, dword [ebp - 0x74]
sub eax, 0xb06050fe
je 0x40a57a
jmp 0x409aa6
mov eax, dword [ebp - 0x74]
sub eax, 0xb3b03652
je 0x409ec0
jmp 0x409ab9
mov eax, dword [ebp - 0x74]
sub eax, 0xb6adc4e0
je 0x40a053
jmp 0x409acc
mov eax, dword [ebp - 0x74]
sub eax, 0xb75859f3
je 0x40a34b
jmp 0x409adf
mov eax, dword [ebp - 0x74]
sub eax, 0xbc7ed2d9
je 0x409d5d
jmp 0x409af2
mov eax, dword [ebp - 0x74]
sub eax, 0xbcedbed5
je 0x40a49d
jmp 0x409b05
mov eax, dword [ebp - 0x74]
sub eax, 0xc097cdec
je 0x40a0eb
jmp 0x409b18
mov eax, dword [ebp - 0x74]
sub eax, 0xc4ff198c
je 0x40a0cc
jmp 0x409b2b
mov eax, dword [ebp - 0x74]
sub eax, 0xc9d436a8
je 0x40a108
jmp 0x409b3e
mov eax, dword [ebp - 0x74]
sub eax, 0xd52b3a75
je 0x40a532
jmp 0x409b51
mov eax, dword [ebp - 0x74]
sub eax, 0xd68f1c32
je 0x40a1ee
jmp 0x409b64
mov eax, dword [ebp - 0x74]
sub eax, 0xe287d677
je 0x409fb3
jmp 0x409b77
mov eax, dword [ebp - 0x74]
sub eax, 0xe43b9017
je 0x409f48
jmp 0x409b8a
mov eax, dword [ebp - 0x74]
sub eax, 0xeeedee25
je 0x40a08e
jmp 0x409b9d
mov eax, dword [ebp - 0x74]
sub eax, 0x30fd989
je 0x409f3c
jmp 0x409bb0
mov eax, dword [ebp - 0x74]
sub eax, 0x15fc8796
je 0x40a267
jmp 0x409bc3
mov eax, dword [ebp - 0x74]
sub eax, 0x228b83aa
je 0x40a544
jmp 0x409bd6
mov eax, dword [ebp - 0x74]
sub eax, 0x24e655e6
je 0x40a42a
jmp 0x409be9
mov eax, dword [ebp - 0x74]
sub eax, 0x2e43d0e6
je 0x40a338
jmp 0x409bfc
mov eax, dword [ebp - 0x74]
sub eax, 0x3144a5c5
je 0x40a55c
jmp 0x409c0f
mov eax, dword [ebp - 0x74]
sub eax, 0x32b2e6f1
je 0x40a14e
jmp 0x409c22
mov eax, dword [ebp - 0x74]
sub eax, 0x3d405685
je 0x40a399
jmp 0x409c35
mov eax, dword [ebp - 0x74]
sub eax, 0x42fddcbf
je 0x40a194
jmp 0x409c48
mov eax, dword [ebp - 0x74]
sub eax, 0x47f5c883
je 0x40a40c
jmp 0x409c5b
mov eax, dword [ebp - 0x74]
sub eax, 0x4c0603a6
je 0x40a510
jmp 0x409c6e
mov eax, dword [ebp - 0x74]
sub eax, 0x511c06eb
je 0x40a06b
jmp 0x409c81
mov eax, dword [ebp - 0x74]
sub eax, 0x53cddbe7
je 0x409e41
jmp 0x409c94
mov eax, dword [ebp - 0x74]
sub eax, 0x556e1e6e
je 0x40a32c
jmp 0x409ca7
mov eax, dword [ebp - 0x74]
sub eax, 0x60186028
je 0x40a56e
jmp 0x409cba
mov eax, dword [ebp - 0x74]
sub eax, 0x68612d22
je 0x40a1a0
jmp 0x409ccd
mov eax, dword [ebp - 0x74]
sub eax, 0x68b3ffa8
je 0x40a273
jmp 0x409ce0
mov eax, dword [ebp - 0x74]
sub eax, 0x6ddda142
je 0x409dc8
jmp 0x409cf3
mov eax, dword [ebp - 0x74]
sub eax, 0x75ff525a
je 0x40a550
jmp 0x409d06
jmp 0x40a581
mov eax, dword [ebp - 0x48]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x4c]
add eax, ecx
mov dword [ebp - 0x60], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x5c]
add eax, dword [ecx + 0x24]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x70], 0x9e903d62
jmp 0x40a581
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
add eax, ecx
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x70], 0xbc7ed2d9
jmp 0x40a581
mov ecx, dword [0x43a544]
mov eax, dword [0x43a540]
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, 0x9fdca4a6
mov ecx, 0x6ddda142
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x3c], eax
mov ecx, dword [0x43a544]
mov eax, dword [0x43a540]
mov edx, ecx
add edx, 0xe941a8c1
sub edx, 1
sub edx, 0xe941a8c1
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, 0x9fdca4a6
mov ecx, 0x53cddbe7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov dword [ebp - 0x70], 0x8ee4d619
jmp 0x40a581
mov ecx, dword [0x43a544]
mov eax, dword [0x43a540]
mov edx, ecx
sub edx, 0xe25ee412
sub edx, 1
add edx, 0xe25ee412
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, 0x8b78b2f3
mov ecx, 0xb3b03652
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov eax, dword [ebp - 0x5c]
add eax, 0x18
mov dword [ebp - 0x38], eax
mov ecx, dword [0x43a544]
mov eax, dword [0x43a540]
mov edx, ecx
sub edx, 0xe2e6bbe2
sub edx, 1
add edx, 0xe2e6bbe2
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, 0x8b78b2f3
mov ecx, 0x30fd989
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov dword [ebp - 0x70], 0xe43b9017
jmp 0x40a581
mov ecx, dword [0x43a544]
mov eax, dword [0x43a540]
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, 0xd52b3a75
mov ecx, 0xe287d677
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x3c]
cmp eax, ecx
setb al
and al, 1
mov byte [ebp - 0x31], al
mov ecx, dword [0x43a544]
mov eax, dword [0x43a540]
mov edx, ecx
sub edx, 0xbb855f86
sub edx, 1
add edx, 0xbb855f86
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, 0xd52b3a75
mov ecx, 0xa1d736b0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov dl, byte [ebp - 0x31]
mov eax, 0x2e43d0e6
mov ecx, 0xb6adc4e0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov eax, dword [ebp + 8]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x70], 0x511c06eb
jmp 0x40a581
mov ecx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax + ecx*4]
mov eax, dword [ebp - 0x30]
add eax, ecx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x70], 0xeeedee25
jmp 0x40a581
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.00427b00
mov edx, eax
mov eax, 0xc9d436a8
mov ecx, 0xa5c79643
cmp edx, 0
cmove eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov eax, dword [ebp + 8]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x70], 0xc4ff198c
jmp 0x40a581
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x6c]
movzx eax, word [eax + ecx*2]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x70], 0xc097cdec
jmp 0x40a581
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [eax + ecx*4]
mov eax, dword [ebp - 0x20]
add eax, ecx
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x70], 0xa09acd23
jmp 0x40a581
mov eax, dword [0x43a544]
mov ecx, dword [0x43a540]
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, 0x228b83aa
mov ecx, 0x32b2e6f1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov eax, dword [0x43a544]
mov ecx, dword [0x43a540]
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, 0x228b83aa
mov ecx, 0x42fddcbf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov dword [ebp - 0x70], 0x68612d22
jmp 0x40a581
mov eax, dword [0x43a544]
mov ecx, dword [0x43a540]
mov edx, eax
add edx, 0x195714d2
sub edx, 1
sub edx, 0x195714d2
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, 0x75ff525a
mov ecx, 0xd68f1c32
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x14], eax
mov ecx, dword [0x43a544]
mov eax, dword [0x43a540]
mov edx, ecx
add edx, 0x9205f4d9
sub edx, 1
sub edx, 0x9205f4d9
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, 0x75ff525a
mov ecx, 0x15fc8796
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov dword [ebp - 0x70], 0x68b3ffa8
jmp 0x40a581
mov eax, dword [ebp - 0x14]
add eax, 0xe83f83c2
add eax, 1
sub eax, 0xe83f83c2
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x70], 0xa7e1efb0
jmp 0x40a581
mov eax, dword [0x43a544]
mov ecx, dword [0x43a540]
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, 0x3144a5c5
mov ecx, 0x88ac592f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x6c], eax
mov eax, dword [0x43a544]
mov ecx, dword [0x43a540]
mov edx, eax
sub edx, 0x8e8623dc
sub edx, 1
add edx, 0x8e8623dc
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, 0x3144a5c5
mov ecx, 0x556e1e6e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov dword [ebp - 0x70], 0xbc7ed2d9
jmp 0x40a581
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x70], 0xb75859f3
jmp 0x40a581
mov eax, dword [0x43a544]
mov ecx, dword [0x43a540]
mov edx, eax
add edx, 0x9930b0d
sub edx, 1
sub edx, 0x9930b0d
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, 0x60186028
mov ecx, 0x3d405685
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov ecx, dword [0x43a544]
mov eax, dword [0x43a540]
mov edx, ecx
add edx, 0x771dee55
sub edx, 1
sub edx, 0x771dee55
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, 0x60186028
mov ecx, 0x47f5c883
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov dword [ebp - 0x70], 0xa09acd23
jmp 0x40a581
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x70], 0x24e655e6
jmp 0x40a581
mov ecx, dword [0x43a544]
mov eax, dword [0x43a540]
mov edx, ecx
add edx, 0x4e00c604
sub edx, 1
sub edx, 0x4e00c604
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, 0xb06050fe
mov ecx, 0xbcedbed5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov ecx, dword [0x43a544]
mov eax, dword [0x43a540]
mov edx, ecx
sub edx, 0x3c1ad2c7
sub edx, 1
add edx, 0x3c1ad2c7
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, 0xb06050fe
mov ecx, 0x4c0603a6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40a581
mov eax, dword [ebp - 0xc]
add esp, 0x74
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0x70], 0x6ddda142
jmp 0x40a581
mov dword [ebp - 0x70], 0xb3b03652
jmp 0x40a581
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x70], 0xe287d677
jmp 0x40a581
mov dword [ebp - 0x70], 0x32b2e6f1
jmp 0x40a581
mov dword [ebp - 0x70], 0xd68f1c32
jmp 0x40a581
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x70], 0x88ac592f
jmp 0x40a581
mov dword [ebp - 0x70], 0x3d405685
jmp 0x40a581
mov dword [ebp - 0x70], 0xbcedbed5
jmp 0x4099d2