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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x6c
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x68], eax
mov eax, dword [0x435080]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x64], 0x790307fa
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x70], eax
sub eax, 0x9ef20497
je 0x40a4f5
jmp 0x409fcb
mov eax, dword [ebp - 0x70]
sub eax, 0xa10c513f
je 0x40a2d1
jmp 0x409fde
mov eax, dword [ebp - 0x70]
sub eax, 0xad090030
je 0x40a3db
jmp 0x409ff1
mov eax, dword [ebp - 0x70]
sub eax, 0xae8bfc06
je 0x40a5da
jmp 0x40a004
mov eax, dword [ebp - 0x70]
sub eax, 0xb158fc18
je 0x40a4e9
jmp 0x40a017
mov eax, dword [ebp - 0x70]
sub eax, 0xb4fce530
je 0x40aa07
jmp 0x40a02a
mov eax, dword [ebp - 0x70]
sub eax, 0xb92e36fc
je 0x40a31f
jmp 0x40a03d
mov eax, dword [ebp - 0x70]
sub eax, 0xbb857f7b
je 0x40a5bc
jmp 0x40a050
mov eax, dword [ebp - 0x70]
sub eax, 0xc2d1a5f6
je 0x40a859
jmp 0x40a063
mov eax, dword [ebp - 0x70]
sub eax, 0xcf9ba465
je 0x40a7da
jmp 0x40a076
mov eax, dword [ebp - 0x70]
sub eax, 0xe4c9da3d
je 0x40a64e
jmp 0x40a089
mov eax, dword [ebp - 0x70]
sub eax, 0xed2e5954
je 0x40a6c5
jmp 0x40a09c
mov eax, dword [ebp - 0x70]
sub eax, 0xed73e267
je 0x40a84d
jmp 0x40a0af
mov eax, dword [ebp - 0x70]
sub eax, 0x30a0d0
je 0x40a95c
jmp 0x40a0c2
mov eax, dword [ebp - 0x70]
sub eax, 0x68536f
je 0x40a46e
jmp 0x40a0d5
mov eax, dword [ebp - 0x70]
sub eax, 0x627311b
je 0x40a55b
jmp 0x40a0e8
mov eax, dword [ebp - 0x70]
sub eax, 0xaf8480c
je 0x40a9d7
jmp 0x40a0fb
mov eax, dword [ebp - 0x70]
sub eax, 0x1b3ec668
je 0x40a60c
jmp 0x40a10e
mov eax, dword [ebp - 0x70]
sub eax, 0x25818f30
je 0x40a968
jmp 0x40a121
mov eax, dword [ebp - 0x70]
sub eax, 0x276a4ded
je 0x40a76f
jmp 0x40a134
mov eax, dword [ebp - 0x70]
sub eax, 0x29170ebf
je 0x40a878
jmp 0x40a147
mov eax, dword [ebp - 0x70]
sub eax, 0x3066e5f0
je 0x40aa13
jmp 0x40a15a
mov eax, dword [ebp - 0x70]
sub eax, 0x361b7059
je 0x40a8e3
jmp 0x40a16d
mov eax, dword [ebp - 0x70]
sub eax, 0x4d1e5e59
je 0x40a9e6
jmp 0x40a180
mov eax, dword [ebp - 0x70]
sub eax, 0x50239c55
je 0x40a5c8
jmp 0x40a193
mov eax, dword [ebp - 0x70]
sub eax, 0x5291980f
je 0x40a3e7
jmp 0x40a1a6
mov eax, dword [ebp - 0x70]
sub eax, 0x5a6c6a81
je 0x40a638
jmp 0x40a1b9
mov eax, dword [ebp - 0x70]
sub eax, 0x5e48b3a8
je 0x40a740
jmp 0x40a1cc
mov eax, dword [ebp - 0x70]
sub eax, 0x62605275
je 0x40a66b
jmp 0x40a1df
mov eax, dword [ebp - 0x70]
sub eax, 0x6eb5657a
je 0x40a515
jmp 0x40a1f2
mov eax, dword [ebp - 0x70]
sub eax, 0x71f5ec09
je 0x40a86c
jmp 0x40a205
mov eax, dword [ebp - 0x70]
sub eax, 0x7256b757
je 0x40a9f8
jmp 0x40a218
mov eax, dword [ebp - 0x70]
sub eax, 0x7360bc8b
je 0x40a677
jmp 0x40a22b
mov eax, dword [ebp - 0x70]
sub eax, 0x75a2b6b4
je 0x40a74c
jmp 0x40a23e
mov eax, dword [ebp - 0x70]
sub eax, 0x775cb585
je 0x40a3fb
jmp 0x40a251
mov eax, dword [ebp - 0x70]
sub eax, 0x790307fa
je 0x40a27c
jmp 0x40a264
mov eax, dword [ebp - 0x70]
sub eax, 0x7a11b845
je 0x40a982
jmp 0x40a277
jmp 0x40aa1a
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x6c]
push eax
mov eax, esp
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
push eax
mov esi, esp
mov dword [ebp - 0x44], esi
push eax
mov esi, esp
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x5c], ecx
mov ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x60], ecx
mov ecx, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x60]
add ecx, dword [edx + 0x3c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x3c], ecx
mov eax, dword [eax]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x64], 0xa10c513f
jmp 0x40aa1a
mov eax, dword [0x436594]
mov ecx, dword [0x436590]
mov edx, eax
sub edx, 0xc14de4d4
sub edx, 1
add edx, 0xc14de4d4
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, 0x7a11b845
mov ecx, 0xb92e36fc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40aa1a
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x78]
mov ecx, dword [ebp - 0x3c]
add ecx, eax
mov eax, dword [ebp - 0x50]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
add ecx, dword [eax + 0x1c]
mov eax, dword [ebp - 0x4c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
add ecx, dword [eax + 0x24]
mov eax, dword [ebp - 0x48]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
add ecx, dword [eax + 0x20]
mov eax, dword [ebp - 0x44]
mov dword [eax], ecx
mov eax, dword [ebp - 0x40]
mov dword [eax], 0
mov ecx, dword [0x436594]
mov eax, dword [0x436590]
mov edx, ecx
add edx, 0xd8a904d4
sub edx, 1
sub edx, 0xd8a904d4
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, 0x7a11b845
mov ecx, 0xad090030
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40aa1a
mov dword [ebp - 0x64], 0x5291980f
jmp 0x40aa1a
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x64], 0x775cb585
jmp 0x40aa1a
mov ecx, dword [0x436594]
mov eax, dword [0x436590]
mov edx, ecx
add edx, 0xcf0d10e
sub edx, 1
sub edx, 0xcf0d10e
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, 0xaf8480c
mov ecx, 0x68536f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40aa1a
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov dword [ebp - 0x30], eax
mov ecx, dword [0x436594]
mov eax, dword [0x436590]
mov edx, ecx
sub edx, 0xd1b5cb70
sub edx, 1
add edx, 0xd1b5cb70
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, 0xaf8480c
mov ecx, 0xb158fc18
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40aa1a
mov dword [ebp - 0x64], 0x9ef20497
jmp 0x40aa1a
mov eax, dword [ebp - 0x30]
mov esi, dword [eax + 0x18]
mov edx, dword [ebp - 0x34]
mov eax, 0xc2d1a5f6
mov ecx, 0x6eb5657a
cmp edx, esi
cmovb eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40aa1a
mov eax, dword [0x436594]
mov ecx, dword [0x436590]
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, 0x4d1e5e59
mov ecx, 0x627311b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40aa1a
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x44]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x40]
mov edx, dword [edx]
add eax, dword [ecx + edx*4]
mov dword [ebp - 0x2c], eax
mov eax, dword [0x436594]
mov ecx, dword [0x436590]
mov edx, eax
sub edx, 0xb69d33cd
sub edx, 1
add edx, 0xb69d33cd
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, 0x4d1e5e59
mov ecx, 0xbb857f7b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40aa1a
mov dword [ebp - 0x64], 0x50239c55
jmp 0x40aa1a
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x64], 0xae8bfc06
jmp 0x40aa1a
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.00423af0
add esp, 8
mov edx, eax
mov eax, 0x62605275
mov ecx, 0x1b3ec668
cmp edx, 0
cmove eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40aa1a
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x40]
mov ecx, dword [ecx]
mov ax, word [eax + ecx*2]
mov word [ebp - 0x1a], ax
mov dword [ebp - 0x64], 0x5a6c6a81
jmp 0x40aa1a
mov ax, word [ebp - 0x1a]
movzx eax, ax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x64], 0xe4c9da3d
jmp 0x40aa1a
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [eax + ecx*4]
mov eax, dword [ebp - 0x24]
add eax, ecx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x64], 0x29170ebf
jmp 0x40aa1a
mov dword [ebp - 0x64], 0x7360bc8b
jmp 0x40aa1a
mov eax, dword [0x436594]
mov ecx, dword [0x436590]
mov edx, eax
sub edx, 0x79a7ab55
sub edx, 1
add edx, 0x79a7ab55
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, 0x7256b757
mov ecx, 0xed2e5954
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40aa1a
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov ecx, dword [0x436594]
mov eax, dword [0x436590]
mov edx, ecx
sub edx, 0x29dda1de
sub edx, 1
add edx, 0x29dda1de
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, 0x7256b757
mov ecx, 0x5e48b3a8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40aa1a
mov dword [ebp - 0x64], 0x75a2b6b4
jmp 0x40aa1a
mov ecx, dword [ebp - 0x14]
sub ecx, 0xc03144ca
add ecx, 1
add ecx, 0xc03144ca
mov eax, dword [ebp - 0x40]
mov dword [eax], ecx
mov dword [ebp - 0x64], 0x276a4ded
jmp 0x40aa1a
mov ecx, dword [0x436594]
mov eax, dword [0x436590]
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, 0xb4fce530
mov ecx, 0xcf9ba465
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40aa1a
mov ecx, dword [0x436594]
mov eax, dword [0x436590]
mov edx, ecx
add edx, 0xbfb61026
sub edx, 1
sub edx, 0xbfb61026
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, 0xb4fce530
mov ecx, 0xed73e267
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40aa1a
mov dword [ebp - 0x64], 0x5291980f
jmp 0x40aa1a
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x64], 0x71f5ec09
jmp 0x40aa1a
mov dword [ebp - 0x64], 0x29170ebf
jmp 0x40aa1a
mov ecx, dword [0x436594]
mov eax, dword [0x436590]
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, 0x3066e5f0
mov ecx, 0x361b7059
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40aa1a
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x10], eax
mov ecx, dword [0x436594]
mov eax, dword [0x436590]
mov edx, ecx
sub edx, 0x9017de59
sub edx, 1
add edx, 0x9017de59
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, 0x3066e5f0
mov ecx, 0x30a0d0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x40aa1a
mov dword [ebp - 0x64], 0x25818f30
jmp 0x40aa1a
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.0041f4d0
mov eax, dword [ebp - 0x74]
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x78]
mov ecx, dword [ebp - 0x3c]
add ecx, eax
mov eax, dword [ebp - 0x50]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
add ecx, dword [eax + 0x1c]
mov eax, dword [ebp - 0x4c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
add ecx, dword [eax + 0x24]
mov eax, dword [ebp - 0x48]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
add ecx, dword [eax + 0x20]
mov eax, dword [ebp - 0x44]
mov dword [eax], ecx
mov eax, dword [ebp - 0x40]
mov dword [eax], 0
mov dword [ebp - 0x64], 0xb92e36fc
jmp 0x40aa1a
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x64], 0x68536f
jmp 0x40aa1a
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x64], 0x627311b
jmp 0x40aa1a
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x64], 0xed2e5954
jmp 0x40aa1a
mov dword [ebp - 0x64], 0xcf9ba465
jmp 0x40aa1a
mov dword [ebp - 0x64], 0x361b7059
jmp 0x409fb5