Function at 0x409c40
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 dword [ebp - 0x74], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x70], eax
mov eax, dword [0x433080]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x6c], 0xf8db4366
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x78], eax
sub eax, 0x851d6cd8
je 0x40a827
jmp 0x409c7b
mov eax, dword [ebp - 0x78]
sub eax, 0x86fffba9
je 0x40a41d
jmp 0x409c8e
mov eax, dword [ebp - 0x78]
sub eax, 0x87bb51db
je 0x40a6bf
jmp 0x409ca1
mov eax, dword [ebp - 0x78]
sub eax, 0x8bc0f9cc
je 0x40a10d
jmp 0x409cb4
mov eax, dword [ebp - 0x78]
sub eax, 0x9246456b
je 0x40a0a9
jmp 0x409cc7
mov eax, dword [ebp - 0x78]
sub eax, 0x9312018c
je 0x40a405
jmp 0x409cda
mov eax, dword [ebp - 0x78]
sub eax, 0x994a313b
je 0x40a5be
jmp 0x409ced
mov eax, dword [ebp - 0x78]
sub eax, 0x9cc91618
je 0x40a281
jmp 0x409d00
mov eax, dword [ebp - 0x78]
sub eax, 0xa20fa3bb
je 0x40a7c3
jmp 0x409d13
mov eax, dword [ebp - 0x78]
sub eax, 0xa825ec07
je 0x40a4f9
jmp 0x409d26
mov eax, dword [ebp - 0x78]
sub eax, 0xa8c0ebb8
je 0x40a6a0
jmp 0x409d39
mov eax, dword [ebp - 0x78]
sub eax, 0xb8318d9d
je 0x40a1ce
jmp 0x409d4c
mov eax, dword [ebp - 0x78]
sub eax, 0xb8690819
je 0x40a7fd
jmp 0x409d5f
mov eax, dword [ebp - 0x78]
sub eax, 0xbc183b60
je 0x40a011
jmp 0x409d72
mov eax, dword [ebp - 0x78]
sub eax, 0xc5ba3e38
je 0x40a625
jmp 0x409d85
mov eax, dword [ebp - 0x78]
sub eax, 0xca888363
je 0x40a490
jmp 0x409d98
mov eax, dword [ebp - 0x78]
sub eax, 0xcd941792
je 0x40a6cb
jmp 0x409dab
mov eax, dword [ebp - 0x78]
sub eax, 0xcdad8550
je 0x40a750
jmp 0x409dbe
mov eax, dword [ebp - 0x78]
sub eax, 0xd690b212
je 0x40a28d
jmp 0x409dd1
mov eax, dword [ebp - 0x78]
sub eax, 0xdd16cd95
je 0x40a6ac
jmp 0x409de4
mov eax, dword [ebp - 0x78]
sub eax, 0xdf21baf8
je 0x40a4ed
jmp 0x409df7
mov eax, dword [ebp - 0x78]
sub eax, 0xe60970ad
je 0x40a84d
jmp 0x409e0a
mov eax, dword [ebp - 0x78]
sub eax, 0xedc2e977
je 0x40a83e
jmp 0x409e1d
mov eax, dword [ebp - 0x78]
sub eax, 0xf072874f
je 0x40a3da
jmp 0x409e30
mov eax, dword [ebp - 0x78]
sub eax, 0xf8db4366
je 0x409f9e
jmp 0x409e43
mov eax, dword [ebp - 0x78]
sub eax, 0xff78998a
je 0x40a3bf
jmp 0x409e56
mov eax, dword [ebp - 0x78]
sub eax, 0x140d5a87
je 0x40a09d
jmp 0x409e69
mov eax, dword [ebp - 0x78]
sub eax, 0x1e14c884
je 0x40a5b2
jmp 0x409e7c
mov eax, dword [ebp - 0x78]
sub eax, 0x1f1d34a4
je 0x40a2aa
jmp 0x409e8f
mov eax, dword [ebp - 0x78]
sub eax, 0x27fac7e1
je 0x40a178
jmp 0x409ea2
mov eax, dword [ebp - 0x78]
sub eax, 0x2a99695c
je 0x40a228
jmp 0x409eb5
mov eax, dword [ebp - 0x78]
sub eax, 0x2d71c40f
je 0x40a1da
jmp 0x409ec8
mov eax, dword [ebp - 0x78]
sub eax, 0x2eb7d6c3
je 0x40a4e1
jmp 0x409edb
mov eax, dword [ebp - 0x78]
sub eax, 0x528c29d0
je 0x40a564
jmp 0x409eee
mov eax, dword [ebp - 0x78]
sub eax, 0x529ca02b
je 0x40a7dd
jmp 0x409f01
mov eax, dword [ebp - 0x78]
sub eax, 0x531baf0a
je 0x40a34c
jmp 0x409f14
mov eax, dword [ebp - 0x78]
sub eax, 0x563f77fe
je 0x40a81b
jmp 0x409f27
mov eax, dword [ebp - 0x78]
sub eax, 0x5a731e04
je 0x40a80c
jmp 0x409f3a
mov eax, dword [ebp - 0x78]
sub eax, 0x6877fe56
je 0x40a2cf
jmp 0x409f4d
mov eax, dword [ebp - 0x78]
sub eax, 0x72b34c2b
je 0x40a861
jmp 0x409f60
mov eax, dword [ebp - 0x78]
sub eax, 0x72cb99cd
je 0x40a2fe
jmp 0x409f73
mov eax, dword [ebp - 0x78]
sub eax, 0x7b15dee6
je 0x40a5df
jmp 0x409f86
mov eax, dword [ebp - 0x78]
sub eax, 0x7c146135
je 0x40a6dd
jmp 0x409f99
jmp 0x40a868
mov ecx, dword [0x434544]
mov eax, dword [0x434540]
mov edx, ecx
add edx, 0xd1e8caaa
sub edx, 1
sub edx, 0xd1e8caaa
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, 0x529ca02b
mov ecx, 0xbc183b60
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x74]
push eax
mov eax, esp
push eax
mov esi, esp
mov dword [ebp - 0x5c], esi
push eax
mov esi, esp
mov dword [ebp - 0x58], esi
push eax
mov esi, esp
mov dword [ebp - 0x54], esi
push eax
mov esi, esp
mov dword [ebp - 0x50], esi
push eax
mov esi, esp
mov dword [ebp - 0x4c], esi
push eax
mov esi, esp
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x68], ecx
mov ecx, dword [ebp - 0x68]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x68]
mov dword [ebp - 0x44], ecx
mov eax, dword [eax]
add eax, 0x3c
mov dword [ebp - 0x40], eax
mov eax, dword [0x434544]
mov ecx, dword [0x434540]
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, 0x529ca02b
mov ecx, 0x140d5a87
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov dword [ebp - 0x6c], 0x9246456b
jmp 0x40a868
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x44]
add ecx, eax
mov eax, dword [ebp - 0x5c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
add ecx, dword [eax + 0x78]
mov eax, dword [ebp - 0x58]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
add ecx, dword [eax + 0x1c]
mov eax, dword [ebp - 0x54]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
add ecx, dword [eax + 0x24]
mov eax, dword [ebp - 0x50]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
add ecx, dword [eax + 0x20]
mov eax, dword [ebp - 0x4c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x48]
mov dword [eax], 0
mov dword [ebp - 0x6c], 0x8bc0f9cc
jmp 0x40a868
mov ecx, dword [0x434544]
mov eax, dword [0x434540]
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, 0xb8690819
mov ecx, 0x27fac7e1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
mov eax, dword [0x434544]
mov ecx, dword [0x434540]
mov edx, eax
add edx, 0xb1c7a268
sub edx, 1
sub edx, 0xb1c7a268
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, 0xb8690819
mov ecx, 0xb8318d9d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov dword [ebp - 0x6c], 0x2d71c40f
jmp 0x40a868
mov eax, dword [0x434544]
mov ecx, dword [0x434540]
mov edx, eax
add edx, 0xbcbdc5b2
sub edx, 1
sub edx, 0xbcbdc5b2
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, 0x5a731e04
mov ecx, 0x2a99695c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
mov eax, dword [eax + 0x18]
mov dword [ebp - 0x38], eax
mov eax, dword [0x434544]
mov ecx, dword [0x434540]
mov edx, eax
add edx, 0xe69e75d5
sub edx, 1
sub edx, 0xe69e75d5
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, 0x5a731e04
mov ecx, 0x9cc91618
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov dword [ebp - 0x6c], 0xd690b212
jmp 0x40a868
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x38]
mov eax, 0xdd16cd95
mov ecx, 0x1f1d34a4
cmp edx, esi
cmovb eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x4c]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x48]
mov edx, dword [edx]
add eax, dword [ecx + edx*4]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x6c], 0x6877fe56
jmp 0x40a868
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x30]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.004210c0
add esp, 8
cmp eax, 0
sete al
and al, 1
mov byte [ebp - 0x29], al
mov dword [ebp - 0x6c], 0x72cb99cd
jmp 0x40a868
mov eax, dword [0x434544]
mov ecx, dword [0x434540]
mov edx, eax
add edx, 0xf7ca19af
sub edx, 1
sub edx, 0xf7ca19af
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, 0x563f77fe
mov ecx, 0x531baf0a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov ecx, dword [0x434544]
mov eax, dword [0x434540]
mov edx, ecx
sub edx, 0x96086592
sub edx, 1
add edx, 0x96086592
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, 0x563f77fe
mov ecx, 0xff78998a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov dl, byte [ebp - 0x29]
mov eax, 0xdf21baf8
mov ecx, 0xf072874f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x48]
mov ecx, dword [ecx]
movzx eax, word [eax + ecx*2]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x6c], 0x9312018c
jmp 0x40a868
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x6c], 0x86fffba9
jmp 0x40a868
mov ecx, dword [0x434544]
mov eax, dword [0x434540]
mov edx, ecx
sub edx, 0xf0386877
sub edx, 1
add edx, 0xf0386877
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, 0x851d6cd8
mov ecx, 0xca888363
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x1c]
add eax, ecx
mov dword [ebp - 0x60], eax
mov eax, dword [0x434544]
mov ecx, dword [0x434540]
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, 0x851d6cd8
mov ecx, 0x2eb7d6c3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov dword [ebp - 0x6c], 0xcd941792
jmp 0x40a868
mov dword [ebp - 0x6c], 0xa825ec07
jmp 0x40a868
mov ecx, dword [0x434544]
mov eax, dword [0x434540]
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, 0xedc2e977
mov ecx, 0x528c29d0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov eax, dword [0x434544]
mov ecx, dword [0x434540]
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, 0xedc2e977
mov ecx, 0x1e14c884
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov dword [ebp - 0x6c], 0x994a313b
jmp 0x40a868
mov eax, dword [ebp - 0x18]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 1
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x6c], 0x7b15dee6
jmp 0x40a868
mov eax, dword [0x434544]
mov ecx, dword [0x434540]
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, 0xe60970ad
mov ecx, 0xc5ba3e38
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x14]
mov dword [eax], ecx
mov ecx, dword [0x434544]
mov eax, dword [0x434540]
mov edx, ecx
add edx, 0xdac65466
sub edx, 1
sub edx, 0xdac65466
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, 0xe60970ad
mov ecx, 0xa8c0ebb8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov dword [ebp - 0x6c], 0x8bc0f9cc
jmp 0x40a868
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x6c], 0x87bb51db
jmp 0x40a868
mov dword [ebp - 0x6c], 0xcd941792
jmp 0x40a868
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x6c], 0x7c146135
jmp 0x40a868
mov ecx, dword [0x434544]
mov eax, dword [0x434540]
mov edx, ecx
sub edx, 0xe4c71e46
sub edx, 1
add edx, 0xe4c71e46
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, 0x72b34c2b
mov ecx, 0xcdad8550
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov ecx, dword [0x434544]
mov eax, dword [0x434540]
mov edx, ecx
sub edx, 0x9e62ccdf
sub edx, 1
add edx, 0x9e62ccdf
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, 0x72b34c2b
mov ecx, 0xa20fa3bb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x6c], eax
jmp 0x40a868
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.0041cad0
mov eax, dword [ebp - 0x7c]
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x74]
push eax
mov eax, esp
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x68], ecx
mov ecx, dword [ebp - 0x68]
mov dword [eax], ecx
mov dword [ebp - 0x6c], 0xbc183b60
jmp 0x40a868
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x6c], 0x27fac7e1
jmp 0x40a868
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x6c], 0x2a99695c
jmp 0x40a868
mov dword [ebp - 0x6c], 0x531baf0a
jmp 0x40a868
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x1c]
add eax, ecx
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x6c], 0xca888363
jmp 0x40a868
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x6c], 0x528c29d0
jmp 0x40a868
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x14]
mov dword [eax], ecx
mov dword [ebp - 0x6c], 0xc5ba3e38
jmp 0x40a868
mov dword [ebp - 0x6c], 0xcdad8550
jmp 0x409c65