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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x70
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x68], eax
mov eax, dword [0x43a080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x43b564]
mov eax, dword [0x43b560]
mov edx, ecx
add edx, 0x66c1089c
sub edx, 1
sub edx, 0x66c1089c
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x5e], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x5d], al
mov dword [ebp - 0x64], 0x94421cb7
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x70], eax
sub eax, 0x84af288b
je 0x40a4aa
jmp 0x40a065
mov eax, dword [ebp - 0x70]
sub eax, 0x8894e78a
je 0x40a431
jmp 0x40a078
mov eax, dword [ebp - 0x70]
sub eax, 0x89c89175
je 0x40a862
jmp 0x40a08b
mov eax, dword [ebp - 0x70]
sub eax, 0x8cc096f4
je 0x40a941
jmp 0x40a09e
mov eax, dword [ebp - 0x70]
sub eax, 0x94421cb7
je 0x40a2f0
jmp 0x40a0b1
mov eax, dword [ebp - 0x70]
sub eax, 0x985a5480
je 0x40a613
jmp 0x40a0c4
mov eax, dword [ebp - 0x70]
sub eax, 0x993c7dec
je 0x40a400
jmp 0x40a0d7
mov eax, dword [ebp - 0x70]
sub eax, 0x9f52558b
je 0x40a953
jmp 0x40a0ea
mov eax, dword [ebp - 0x70]
sub eax, 0xa1c82249
je 0x40a5b2
jmp 0x40a0fd
mov eax, dword [ebp - 0x70]
sub eax, 0xa79f0d2d
je 0x40a45c
jmp 0x40a110
mov eax, dword [ebp - 0x70]
sub eax, 0xba52bbf8
je 0x40a316
jmp 0x40a123
mov eax, dword [ebp - 0x70]
sub eax, 0xbc8506b6
je 0x40a842
jmp 0x40a136
mov eax, dword [ebp - 0x70]
sub eax, 0xbcde8de2
je 0x40a97f
jmp 0x40a149
mov eax, dword [ebp - 0x70]
sub eax, 0xcb3d8776
je 0x40a8b2
jmp 0x40a15c
mov eax, dword [ebp - 0x70]
sub eax, 0xd09be8f3
je 0x40a52d
jmp 0x40a16f
mov eax, dword [ebp - 0x70]
sub eax, 0xd1441e5e
je 0x40a96b
jmp 0x40a182
mov eax, dword [ebp - 0x70]
sub eax, 0xd359a0a5
je 0x40a74c
jmp 0x40a195
mov eax, dword [ebp - 0x70]
sub eax, 0xde81c718
je 0x40a758
jmp 0x40a1a8
mov eax, dword [ebp - 0x70]
sub eax, 0xef68a1d2
je 0x40a554
jmp 0x40a1bb
mov eax, dword [ebp - 0x70]
sub eax, 0xa8fb427
je 0x40a6fe
jmp 0x40a1ce
mov eax, dword [ebp - 0x70]
sub eax, 0xd021783
je 0x40a6a4
jmp 0x40a1e1
mov eax, dword [ebp - 0x70]
sub eax, 0x18f32390
je 0x40a8a6
jmp 0x40a1f4
mov eax, dword [ebp - 0x70]
sub eax, 0x1b7f976a
je 0x40a8e1
jmp 0x40a207
mov eax, dword [ebp - 0x70]
sub eax, 0x1bc457de
je 0x40a836
jmp 0x40a21a
mov eax, dword [ebp - 0x70]
sub eax, 0x1cf11fa9
je 0x40a885
jmp 0x40a22d
mov eax, dword [ebp - 0x70]
sub eax, 0x24d0eb71
je 0x40a6b0
jmp 0x40a240
mov eax, dword [ebp - 0x70]
sub eax, 0x27f9c097
je 0x40a5cd
jmp 0x40a253
mov eax, dword [ebp - 0x70]
sub eax, 0x2ec436a2
je 0x40a43d
jmp 0x40a266
mov eax, dword [ebp - 0x70]
sub eax, 0x3a2238ff
je 0x40a539
jmp 0x40a279
mov eax, dword [ebp - 0x70]
sub eax, 0x5a35191e
je 0x40a7c3
jmp 0x40a28c
mov eax, dword [ebp - 0x70]
sub eax, 0x64314882
je 0x40a57a
jmp 0x40a29f
mov eax, dword [ebp - 0x70]
sub eax, 0x65f108b3
je 0x40a891
jmp 0x40a2b2
mov eax, dword [ebp - 0x70]
sub eax, 0x6b0179e3
je 0x40a8c6
jmp 0x40a2c5
mov eax, dword [ebp - 0x70]
sub eax, 0x74e5caa9
je 0x40a84e
jmp 0x40a2d8
mov eax, dword [ebp - 0x70]
sub eax, 0x79b4e54f
je 0x40a40c
jmp 0x40a2eb
jmp 0x40a986
mov al, byte [ebp - 0x5e]
mov cl, byte [ebp - 0x5d]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x1b7f976a
mov ecx, 0xba52bbf8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40a986
mov esi, dword [ebp - 0x68]
mov edi, dword [ebp - 0x6c]
push eax
mov eax, esp
mov dword [ebp - 0x5c], eax
push eax
mov eax, esp
mov dword [ebp - 0x58], eax
push eax
mov eax, esp
mov dword [ebp - 0x54], eax
push eax
mov edx, esp
push eax
mov eax, esp
push eax
mov ecx, esp
mov dword [ebp - 0x50], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x4c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x48], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x44], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x58]
mov dword [ecx], edi
mov ecx, dword [ebp - 0x54]
mov dword [ecx], esi
mov ecx, dword [ebp - 0x54]
mov ecx, dword [ecx]
mov dword [edx], ecx
mov ecx, dword [ebp - 0x54]
mov ecx, dword [ecx]
mov edx, dword [edx]
add ecx, dword [edx + 0x3c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x54]
mov ecx, dword [ecx]
mov eax, dword [eax]
add ecx, dword [eax + 0x78]
mov eax, dword [ebp - 0x50]
mov dword [eax], ecx
mov eax, dword [ebp - 0x54]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
add ecx, dword [eax + 0x1c]
mov eax, dword [ebp - 0x4c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x54]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
add ecx, dword [eax + 0x24]
mov eax, dword [ebp - 0x48]
mov dword [eax], ecx
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov dword [ebp - 0x38], eax
mov eax, dword [0x43b564]
mov ecx, dword [0x43b560]
mov edx, eax
sub edx, 0x9751c2d6
sub edx, 1
add edx, 0x9751c2d6
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, 0x1b7f976a
mov ecx, 0x993c7dec
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40a986
mov dword [ebp - 0x64], 0x79b4e54f
jmp 0x40a986
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x20]
mov ecx, dword [ebp - 0x3c]
add ecx, eax
mov eax, dword [ebp - 0x44]
mov dword [eax], ecx
mov eax, dword [ebp - 0x40]
mov dword [eax], 0
mov dword [ebp - 0x64], 0x8894e78a
jmp 0x40a986
mov dword [ebp - 0x64], 0x2ec436a2
jmp 0x40a986
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov eax, dword [eax + 0x18]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x64], 0xa79f0d2d
jmp 0x40a986
mov eax, dword [0x43b564]
mov ecx, dword [0x43b560]
mov edx, eax
add edx, 0x54dc3636
sub edx, 1
sub edx, 0x54dc3636
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, 0x8cc096f4
mov ecx, 0x84af288b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40a986
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x30]
cmp eax, ecx
setb al
and al, 1
mov byte [ebp - 0x29], al
mov ecx, dword [0x43b564]
mov eax, dword [0x43b560]
mov edx, ecx
sub edx, 0x6145a5f4
sub edx, 1
add edx, 0x6145a5f4
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, 0x8cc096f4
mov ecx, 0xd09be8f3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40a986
mov dword [ebp - 0x64], 0x3a2238ff
jmp 0x40a986
mov dl, byte [ebp - 0x29]
mov eax, 0x65f108b3
mov ecx, 0xef68a1d2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40a986
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x40]
mov ecx, dword [ecx]
shl ecx, 2
add eax, ecx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x64], 0x64314882
jmp 0x40a986
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov edx, dword [ebp - 0x28]
add edx, eax
mov eax, dword [ebp - 0x58]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.00427f50
add esp, 8
cmp eax, 0
sete al
and al, 1
mov byte [ebp - 0x1d], al
mov dword [ebp - 0x64], 0xa1c82249
jmp 0x40a986
mov dl, byte [ebp - 0x1d]
mov eax, 0xbc8506b6
mov ecx, 0x27f9c097
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40a986
mov eax, dword [0x43b564]
mov ecx, dword [0x43b560]
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, 0x9f52558b
mov ecx, 0x985a5480
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40a986
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x4c]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x48]
mov edx, dword [edx]
mov esi, dword [ebp - 0x40]
mov esi, dword [esi]
movzx edx, word [edx + esi*2]
add eax, dword [ecx + edx*4]
mov dword [ebp - 0x1c], eax
mov ecx, dword [0x43b564]
mov eax, dword [0x43b560]
mov edx, ecx
add edx, 0x5be05563
sub edx, 1
sub edx, 0x5be05563
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, 0x9f52558b
mov ecx, 0xd021783
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40a986
mov dword [ebp - 0x64], 0x24d0eb71
jmp 0x40a986
mov eax, dword [0x43b564]
mov ecx, dword [0x43b560]
mov edx, eax
sub edx, 0xcfc70178
sub edx, 1
add edx, 0xcfc70178
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, 0xd1441e5e
mov ecx, 0xa8fb427
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40a986
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x1c]
mov dword [eax], ecx
mov eax, dword [0x43b564]
mov ecx, dword [0x43b560]
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, 0xd1441e5e
mov ecx, 0xd359a0a5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40a986
mov dword [ebp - 0x64], 0xde81c718
jmp 0x40a986
mov ecx, dword [0x43b564]
mov eax, dword [0x43b560]
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, 0xbcde8de2
mov ecx, 0x5a35191e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40a986
mov ecx, dword [0x43b564]
mov eax, dword [0x43b560]
mov edx, ecx
sub edx, 0xe13b8960
sub edx, 1
add edx, 0xe13b8960
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, 0xbcde8de2
mov ecx, 0x1bc457de
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40a986
mov dword [ebp - 0x64], 0xcb3d8776
jmp 0x40a986
mov dword [ebp - 0x64], 0x74e5caa9
jmp 0x40a986
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x64], 0x89c89175
jmp 0x40a986
mov ecx, dword [ebp - 0x18]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 1
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [ebp - 0x40]
mov dword [eax], ecx
mov dword [ebp - 0x64], 0x1cf11fa9
jmp 0x40a986
mov dword [ebp - 0x64], 0x2ec436a2
jmp 0x40a986
mov eax, dword [ebp - 0x5c]
mov dword [eax], 0
mov dword [ebp - 0x64], 0x18f32390
jmp 0x40a986
mov dword [ebp - 0x64], 0xcb3d8776
jmp 0x40a986
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x64], 0x6b0179e3
jmp 0x40a986
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00423960
mov eax, dword [ebp - 0x74]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push eax
push eax
mov edi, esp
push eax
mov ecx, esp
push eax
mov eax, esp
mov dword [ebp - 0x7c], eax
push eax
mov ebx, esp
push eax
mov edx, esp
push eax
mov esi, esp
push eax
mov eax, esp
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x6c]
mov dword [edi], eax
mov eax, dword [ebp - 0x7c]
mov edi, dword [ebp - 0x68]
mov dword [ecx], edi
mov edi, dword [ecx]
mov dword [eax], edi
mov edi, dword [ecx]
mov eax, dword [eax]
add edi, dword [eax + 0x3c]
mov eax, dword [ebp - 0x78]
mov dword [ebx], edi
mov edi, dword [ecx]
mov ebx, dword [ebx]
add edi, dword [ebx + 0x78]
mov dword [edx], edi
mov edi, dword [ecx]
mov ebx, dword [edx]
add edi, dword [ebx + 0x1c]
mov dword [esi], edi
mov ecx, dword [ecx]
mov edx, dword [edx]
add ecx, dword [edx + 0x24]
mov dword [eax], ecx
mov dword [ebp - 0x64], 0xba52bbf8
jmp 0x40a986
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x64], 0x84af288b
jmp 0x40a986
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x64], 0x985a5480
jmp 0x40a986
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x1c]
mov dword [eax], ecx
mov dword [ebp - 0x64], 0xa8fb427
jmp 0x40a986
mov dword [ebp - 0x64], 0x5a35191e
jmp 0x40a04f