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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x7c
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x78], eax
mov eax, dword [0x440080]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x74], 0xdd7e4a2e
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x80], eax
sub eax, 0x83086024
je 0x40f9de
jmp 0x40f45b
mov eax, dword [ebp - 0x80]
sub eax, 0x833b5a19
je 0x40fe57
jmp 0x40f46e
mov eax, dword [ebp - 0x80]
sub eax, 0x8c1fdaaa
je 0x40fdf7
jmp 0x40f481
mov eax, dword [ebp - 0x80]
sub eax, 0x9000e99e
je 0x40ff2b
jmp 0x40f494
mov eax, dword [ebp - 0x80]
sub eax, 0x9968979c
je 0x40fcb3
jmp 0x40f4a7
mov eax, dword [ebp - 0x80]
sub eax, 0x9d2b1530
je 0x40fa38
jmp 0x40f4ba
mov eax, dword [ebp - 0x80]
sub eax, 0x9f9e7bb8
je 0x40fac6
jmp 0x40f4cd
mov eax, dword [ebp - 0x80]
sub eax, 0xb8ec9de8
je 0x40f9ea
jmp 0x40f4e0
mov eax, dword [ebp - 0x80]
sub eax, 0xbca3a0e8
je 0x40f8d3
jmp 0x40f4f3
mov eax, dword [ebp - 0x80]
sub eax, 0xc805faa8
je 0x40f8fa
jmp 0x40f506
mov eax, dword [ebp - 0x80]
sub eax, 0xd32c3649
je 0x40f7dd
jmp 0x40f519
mov eax, dword [ebp - 0x80]
sub eax, 0xd427583e
je 0x40fed7
jmp 0x40f52c
mov eax, dword [ebp - 0x80]
sub eax, 0xd45ee3a5
je 0x40fdd8
jmp 0x40f53f
mov eax, dword [ebp - 0x80]
sub eax, 0xdd7e4a2e
je 0x40f745
jmp 0x40f552
mov eax, dword [ebp - 0x80]
sub eax, 0xe9cb0619
je 0x40fbd2
jmp 0x40f565
mov eax, dword [ebp - 0x80]
sub eax, 0xf061b1ae
je 0x40fbc6
jmp 0x40f578
mov eax, dword [ebp - 0x80]
sub eax, 0xf1a457da
je 0x40fe09
jmp 0x40f58b
mov eax, dword [ebp - 0x80]
sub eax, 0xf72ae83e
je 0x40f850
jmp 0x40f59e
mov eax, dword [ebp - 0x80]
sub eax, 0xf86b617e
je 0x40fb4d
jmp 0x40f5b1
mov eax, dword [ebp - 0x80]
sub eax, 0xf8946647
je 0x40fc40
jmp 0x40f5c4
mov eax, dword [ebp - 0x80]
sub eax, 0xf9c6ff68
je 0x40fcbf
jmp 0x40f5d7
mov eax, dword [ebp - 0x80]
sub eax, 0x2275897
je 0x40fdeb
jmp 0x40f5ea
mov eax, dword [ebp - 0x80]
sub eax, 0xd7cc6cc
je 0x40f7c0
jmp 0x40f5fd
mov eax, dword [ebp - 0x80]
sub eax, 0x197e329b
je 0x40fdb1
jmp 0x40f610
mov eax, dword [ebp - 0x80]
sub eax, 0x252a9ea7
je 0x40fda5
jmp 0x40f623
mov eax, dword [ebp - 0x80]
sub eax, 0x26408e18
je 0x40fea5
jmp 0x40f636
mov eax, dword [ebp - 0x80]
sub eax, 0x276312c5
je 0x40fb07
jmp 0x40f649
mov eax, dword [ebp - 0x80]
sub eax, 0x2b9e755e
je 0x40f781
jmp 0x40f65c
mov eax, dword [ebp - 0x80]
sub eax, 0x2f3d606c
je 0x40f90c
jmp 0x40f66f
mov eax, dword [ebp - 0x80]
sub eax, 0x30a9c1f7
je 0x40fec5
jmp 0x40f682
mov eax, dword [ebp - 0x80]
sub eax, 0x3a6bfabe
je 0x40ff0d
jmp 0x40f695
mov eax, dword [ebp - 0x80]
sub eax, 0x3c12b6be
je 0x40f977
jmp 0x40f6a8
mov eax, dword [ebp - 0x80]
sub eax, 0x401ab6d2
je 0x40ff3a
jmp 0x40f6bb
mov eax, dword [ebp - 0x80]
sub eax, 0x4b53ee4b
je 0x40fae1
jmp 0x40f6ce
mov eax, dword [ebp - 0x80]
sub eax, 0x557efee2
je 0x40fbf2
jmp 0x40f6e1
mov eax, dword [ebp - 0x80]
sub eax, 0x559556e8
je 0x40f8df
jmp 0x40f6f4
mov eax, dword [ebp - 0x80]
sub eax, 0x55976446
je 0x40fdcc
jmp 0x40f707
mov eax, dword [ebp - 0x80]
sub eax, 0x644888c5
je 0x40fd32
jmp 0x40f71a
mov eax, dword [ebp - 0x80]
sub eax, 0x66306d3c
je 0x40fee9
jmp 0x40f72d
mov eax, dword [ebp - 0x80]
sub eax, 0x7fe0eb3e
je 0x40ff1f
jmp 0x40f740
jmp 0x40ff41
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x7c]
push eax
mov edx, esp
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x5c]
add eax, dword [ecx + 0x3c]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x60]
add eax, dword [ecx + 0x78]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x74], 0x2b9e755e
jmp 0x40ff41
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x64]
add eax, dword [ecx + 0x1c]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x64]
add eax, dword [ecx + 0x24]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x64]
add eax, dword [ecx + 0x20]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x4c]
mov dword [eax], 0
mov dword [ebp - 0x74], 0xd7cc6cc
jmp 0x40ff41
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax + 0x18]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x74], 0xd32c3649
jmp 0x40ff41
mov ecx, dword [0x441544]
mov eax, dword [0x441540]
mov edx, ecx
add edx, 0xa0f83049
sub edx, 1
sub edx, 0xa0f83049
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, 0x30a9c1f7
mov ecx, 0xf72ae83e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
cmp eax, ecx
setb al
and al, 1
mov byte [ebp - 0x39], al
mov ecx, dword [0x441544]
mov eax, dword [0x441540]
mov edx, ecx
add edx, 0xbd9c49ea
sub edx, 1
sub edx, 0xbd9c49ea
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, 0x30a9c1f7
mov ecx, 0xbca3a0e8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
mov dword [ebp - 0x74], 0x559556e8
jmp 0x40ff41
mov dl, byte [ebp - 0x39]
mov eax, 0xd45ee3a5
mov ecx, 0xc805faa8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x74], 0x2f3d606c
jmp 0x40ff41
mov ecx, dword [0x441544]
mov eax, dword [0x441540]
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, 0xd427583e
mov ecx, 0x3c12b6be
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x4c]
mov ecx, dword [ecx]
mov ecx, dword [eax + ecx*4]
mov eax, dword [ebp - 0x38]
add eax, ecx
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x30], eax
mov eax, dword [0x441544]
mov ecx, dword [0x441540]
mov edx, eax
sub edx, 0x652e48ac
sub edx, 1
add edx, 0x652e48ac
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, 0xd427583e
mov ecx, 0x83086024
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
mov dword [ebp - 0x74], 0xb8ec9de8
jmp 0x40ff41
mov eax, dword [0x441544]
mov ecx, dword [0x441540]
mov edx, eax
add edx, 0xad60c40d
sub edx, 1
sub edx, 0xad60c40d
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, 0x66306d3c
mov ecx, 0x9d2b1530
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
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.0042d210
add esp, 8
cmp eax, 0
sete al
and al, 1
mov byte [ebp - 0x29], al
mov ecx, dword [0x441544]
mov eax, dword [0x441540]
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, 0x66306d3c
mov ecx, 0x9f9e7bb8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
mov dl, byte [ebp - 0x29]
mov eax, 0x557efee2
mov ecx, 0x4b53ee4b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x74], 0x276312c5
jmp 0x40ff41
mov eax, dword [0x441544]
mov ecx, dword [0x441540]
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, 0x3a6bfabe
mov ecx, 0xf86b617e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
shl ecx, 1
add eax, ecx
mov dword [ebp - 0x18], eax
mov ecx, dword [0x441544]
mov eax, dword [0x441540]
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, 0x3a6bfabe
mov ecx, 0xf061b1ae
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
mov dword [ebp - 0x74], 0xe9cb0619
jmp 0x40ff41
mov eax, dword [ebp - 0x18]
movzx ecx, word [eax]
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax + ecx*4]
mov eax, dword [ebp - 0x28]
add eax, ecx
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x74], 0x8c1fdaaa
jmp 0x40ff41
mov eax, dword [0x441544]
mov ecx, dword [0x441540]
mov edx, eax
sub edx, 0xaeaff220
sub edx, 1
add edx, 0xaeaff220
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, 0x7fe0eb3e
mov ecx, 0xf8946647
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
mov ecx, dword [0x441544]
mov eax, dword [0x441540]
mov edx, ecx
sub edx, 0x211f9cf7
sub edx, 1
add edx, 0x211f9cf7
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, 0x7fe0eb3e
mov ecx, 0x9968979c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
mov dword [ebp - 0x74], 0xf9c6ff68
jmp 0x40ff41
mov ecx, dword [0x441544]
mov eax, dword [0x441540]
mov edx, ecx
sub edx, 0xd2835975
sub edx, 1
add edx, 0xd2835975
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, 0x9000e99e
mov ecx, 0x644888c5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov ecx, dword [0x441544]
mov eax, dword [0x441540]
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, 0x9000e99e
mov ecx, 0x252a9ea7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
mov dword [ebp - 0x74], 0x197e329b
jmp 0x40ff41
mov ecx, dword [ebp - 0x14]
xor eax, eax
sub eax, 1
sub ecx, eax
mov eax, dword [ebp - 0x4c]
mov dword [eax], ecx
mov dword [ebp - 0x74], 0x55976446
jmp 0x40ff41
mov dword [ebp - 0x74], 0xd7cc6cc
jmp 0x40ff41
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x74], 0x2275897
jmp 0x40ff41
mov dword [ebp - 0x74], 0x8c1fdaaa
jmp 0x40ff41
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x74], 0xf1a457da
jmp 0x40ff41
mov eax, dword [0x441544]
mov ecx, dword [0x441540]
mov edx, eax
sub edx, 0xe3ce5367
sub edx, 1
add edx, 0xe3ce5367
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, 0x401ab6d2
mov ecx, 0x833b5a19
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
mov eax, dword [0x441544]
mov ecx, dword [0x441540]
mov edx, eax
sub edx, 0x13bcc6e9
sub edx, 1
add edx, 0x13bcc6e9
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, 0x401ab6d2
mov ecx, 0x26408e18
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x74], eax
jmp 0x40ff41
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.00428c20
mov eax, dword [ebp - 0x84]
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x74], 0xf72ae83e
jmp 0x40ff41
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x74], 0x3c12b6be
jmp 0x40ff41
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.0042d210
add esp, 8
mov dword [ebp - 0x74], 0x9d2b1530
jmp 0x40ff41
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x74], 0xf86b617e
jmp 0x40ff41
mov dword [ebp - 0x74], 0xf8946647
jmp 0x40ff41
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x74], 0x644888c5
jmp 0x40ff41
mov dword [ebp - 0x74], 0x833b5a19
jmp 0x40f445