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

Disassembly:
add esp, 4
pop ebx
push edi
xor edi, 0xec09
add edi, 0x13da4
xor edi, 0x12bd8
sub edi, 0x19e9
pop edi
mov edx, dword [ebp - 0x480]
mov dword [ebp - 0x368], edx
cmp dword [ebp - 0x368], 0
jne 0x40763b
push ecx
add ecx, 0x7cad
add ecx, 0x731d
call 0x407619
add byte [0x4e39484f], dh
inc ebp
xor eax, dword [edi + 0x50]
add esp, 4
call 0x40762b
add byte [ebx + 0x40], cl
cmp dword [edx + edi], esi
dec ecx
dec ebx
xor edi, dword [0x5904c483]
mov dword [ebp - 0x6c], 0
jmp 0x4079c7
push esi
or esi, 0x9edb
pop esi
push edi
call 0x407651
add byte [0x49414944], bh
cmp eax, 0x4c48350
jmp 0x40765a
add edi, 0x2c2f
pop edi
push ebx
push edx
add esp, 4
and ebx, 0x11152
pop ebx
mov eax, dword [ebp - 0x368]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x1ec], edx
cmp dword [ebp - 0x1ec], 0
jne 0x4076c6
push edx
push esi
add esp, 4
xor edx, 0x597f
pop edx
push eax
push ecx
add esp, 4
call 0x4076a8
add byte [ebx], dh
xor al, 0x42
dec eax
inc ebx
xor ecx, dword [ecx + 0x41]
inc edx
add esp, 4
jmp 0x4076b3
and eax, 0xdd19
pop eax
mov dword [ebp - 0x6c], 0
jmp 0x4079c7
mov eax, dword [ebp - 0x1ec]
mov dword [ebp - 0xc4], eax
push edx
or edx, 0x345d
add edx, 0x14756
and edx, 0x10fd2
sub edx, 0xc2d4
pop edx
push esi
push eax
add esp, 4
xor esi, 0x5c5a
xor esi, 0x10b5a
add esi, 0xd093
pop esi
lea ecx, [ebp - 0x2b0]
mov dword [ebp - 0x1e8], ecx
mov edx, dword [ebp - 0xc4]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x1e4], eax
push ebx
push esi
add esp, 4
or ebx, 0x7c3
or ebx, 0x7cf
pop ebx
push esi
push edi
add esp, 4
or esi, 0x3327
pop esi
push eax
or eax, 0x101f0
or eax, 0x14b73
add eax, 0x13425
pop eax
xor ecx, ecx
mov word [ebp - 0x54], cx
xor edx, edx
mov word [ebp - 8], dx
push ecx
jmp 0x407764
and ecx, 0xc2e
xor ecx, 0x1810c
pop ecx
push esi
push esi
add esp, 4
xor esi, 0x6b0a
pop esi
push edi
or edi, 0xa5be
pop edi
push edi
jmp 0x40778e
pop edi
mov eax, dword [ebp - 0x1e4]
mov cx, word [eax]
mov word [ebp - 0x288], cx
mov edx, dword [ebp - 0x1e4]
add edx, 2
mov dword [ebp - 0x1e4], edx
mov ax, word [ebp - 0x288]
mov word [ebp - 0x54], ax
push esi
push ecx
add esp, 4
jmp 0x4077c5
pop esi
push edx
push esi
add esp, 4
xor edx, 0xbb17
and edx, 0x135e5
call 0x4077e7
add byte [ebp + 0x45], al
xor eax, 0x404d433d
xor al, 0x43
inc esp
add esp, 4
pop edx
mov ecx, dword [ebp - 0x1e8]
mov dx, word [ecx]
mov word [ebp - 0x28a], dx
mov eax, dword [ebp - 0x1e8]
add eax, 2
mov dword [ebp - 0x1e8], eax
mov cx, word [ebp - 0x28a]
mov word [ebp - 8], cx
push edx
xor edx, 0xa18
add edx, 0x123b
pop edx
push edx
jmp 0x40782c
and edx, 0x3583
or edx, 0xbf4d
pop edx
push esi
sub esi, 0xdd93
add esi, 0x4640
pop esi
movzx edx, word [ebp - 8]
test edx, edx
jne 0x407864
movzx eax, word [ebp - 0x54]
movzx ecx, word [ebp - 8]
sub eax, ecx
mov dword [ebp - 0x370], eax
jmp 0x4078e7
movzx edx, word [ebp - 0x54]
movzx eax, word [ebp - 8]
cmp edx, eax
je 0x40775d
movzx ecx, word [ebp - 0x54]
xor ecx, 0x20
movzx edx, word [ebp - 8]
cmp ecx, edx
je 0x40775d
push edx
jmp 0x40788d
xor edx, 0xfc41
pop edx
push esi
add esi, 0x10abe
jmp 0x4078a4
pop esi
push edi
xor edi, 0x17d6f
sub edi, 0x5f32
sub edi, 0x1131b
pop edi
movzx eax, word [ebp - 0x54]
movzx ecx, word [ebp - 8]
cmp eax, ecx
jge 0x4078d1
mov dword [ebp - 0x36c], 0xffffffff
jmp 0x4078db
mov dword [ebp - 0x36c], 1
mov edx, dword [ebp - 0x36c]
mov dword [ebp - 0x370], edx
cmp dword [ebp - 0x370], 0
jne 0x407930
push ebx
push ecx
add esp, 4
call 0x407903
add byte [ebp + 0x3d], cl
aaa
aaa
cmp byte [esi + 0x33], al
cmp eax, dword [ebx + 0x565b04c4]
push edi
add esp, 4
or esi, 0x3154
call 0x40791e
add byte [edx], dh
dec ecx
inc eax
inc edx
aaa
dec esp
add esp, 4
pop esi
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x6c], eax
jmp 0x4079c7
mov ecx, dword [ebp - 0xc4]
mov edx, dword [ecx]
mov dword [ebp - 0xc4], edx
push edx
push ebx
add esp, 4
add edx, 0x181a9
pop edx
push ecx
sub ecx, 0x9486
call 0x40795e
add byte [ebp + 0x3f], cl
inc edi
inc eax
inc esi
add esp, 4
add ecx, 0x4856
pop ecx
push edi
add edi, 0xd5a7
pop edi
mov eax, dword [ebp - 0xc4]
cmp eax, dword [ebp - 0x1ec]
je 0x40798e
mov ecx, dword [ebp - 0xc4]
cmp dword [ecx + 0x30], 0
jne 0x4076d2
push edx
push ebx
add esp, 4
sub edx, 0xe1ff
pop edx
push ebx
push edx
add esp, 4
jmp 0x4079a8
jmp 0x4079b1
sub ebx, 0x5dd8
pop ebx
push edx
or edx, 0xb7e8
pop edx
mov dword [ebp - 0x6c], 0
cmp dword [ebp - 0x6c], 0
jne 0x40867c
push esi
push eax
add esp, 4
jmp 0x4079dc
and esi, 0x5cc3
push ecx
call 0x40868a
add byte [ebp + 0x43], al
cmp dword [edx + 0x46], ecx
dec edx
push eax
add esp, 4
pop ecx
push edi
sub edi, 0xfe7c
call 0x4086a4
add byte [eax + 0x3c], dl
dec esp
cmp byte [ebp + 0x3b], cl
aaa
dec ebp
add esp, 4
and edi, 0x13ed
pop edi
push edi
push ebx
add esp, 4
jmp 0x4086ba
call 0x4086c6
add byte [esi + 0x4a], cl
inc edi
dec esi
xor al, 0x37
add esp, 4
sub edi, 0x714d
call 0x4086dc
add byte [esi], dh
dec ebx
inc ebp
cmp al, 0x35
dec ebp
add esp, 4
pop edi
mov eax, dword fs:[0x18]
mov dword [ebp - 0x4a4], eax
push eax
push ecx
add esp, 4
jmp 0x4086f6
and eax, 0xeac1
pop eax
push ecx
sub ecx, 0x861b
pop ecx
push edx
push esi
add esp, 4
jmp 0x408711
pop edx
push ecx
push ebx
add esp, 4
or ecx, 0xc207
pop ecx
mov ecx, dword [ebp - 0x4a4]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x3dc], edx
push ebx
push edi
add esp, 4
or ebx, 0xe2f9
sub ebx, 0xbae6
add ebx, 0x16fc9
add ebx, 0xb9e5
pop ebx
push ecx
or ecx, 0x82f7
sub ecx, 0x176e2
xor ecx, 0x398c
pop ecx
mov eax, dword [ebp - 0x3dc]
mov dword [ebp - 0x2b8], eax
cmp dword [ebp - 0x2b8], 0
jne 0x4087b2
push esi
push esi
add esp, 4
sub esi, 0x70e5
add esi, 0x2612
pop esi
push edi
push esi
add esp, 4
or edi, 0x8c39
or edi, 0xaf7f
xor edi, 0x185da
pop edi
push ecx
xor ecx, 0x15909
pop ecx
mov dword [ebp - 0x6c], 0
jmp 0x408b3e
push ebx
push ecx
add esp, 4
sub ebx, 0xe08b
and ebx, 0x115fe
and ebx, 0x16d40
or ebx, 0x7a1a
pop ebx
push esi
push eax
add esp, 4
jmp 0x4087dd
and esi, 0x130df
pop esi
mov ecx, dword [ebp - 0x2b8]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x208], eax
cmp dword [ebp - 0x208], 0
jne 0x40883d
push edx
push eax
add esp, 4
call 0x408812
add byte [ebx + ecx*2], bh
aaa
inc esp
cmp dword [esi + 0x43], eax
aas
add esp, 4
or edx, 0xbf11
call 0x408827
add byte [edi], bh
aaa
inc eax
inc ebx
inc ebx
dec edi
add esp, 4
and edx, 0x15122
pop edx
mov dword [ebp - 0x6c], 0
jmp 0x408b3e
mov ecx, dword [ebp - 0x208]
mov dword [ebp - 0xc8], ecx
push eax
push ecx
add esp, 4
add eax, 0x4771
pop eax
push ecx
push esi
add esp, 4
jmp 0x408861
sub ecx, 0x11a78
jmp 0x40886e
pop ecx
push ecx
push esi
add esp, 4
xor ecx, 0xf847
pop ecx
lea edx, [ebp - 0x2b0]
mov dword [ebp - 0x204], edx
mov eax, dword [ebp - 0xc8]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x200], ecx
push eax
push edi
add esp, 4
xor eax, 0x9f84
call 0x4088b0
add byte [esi + 0x4e], al
inc ecx
inc eax
inc esi
inc esp
inc ebp
push eax
xor al, byte [ebx + 0x505804c4]
and eax, 0xbb8
add eax, 0x3b3
xor eax, 0x17881
pop eax
xor edx, edx
mov word [ebp - 0x5c], dx
xor eax, eax
mov word [ebp - 0x10], ax
push edi
jmp 0x4088de
pop edi
push eax
or eax, 0x1452a
pop eax
push ecx
call 0x4088f6
add byte [edx + 0x3e], cl
inc esp
inc ebp
aas
xor eax, 0x4c4834f
and ecx, 0x181d0
add ecx, 0x6d09
pop ecx
mov ecx, dword [ebp - 0x200]
mov dx, word [ecx]
mov word [ebp - 0x290], dx
mov eax, dword [ebp - 0x200]
add eax, 2
mov dword [ebp - 0x200], eax
mov cx, word [ebp - 0x290]
mov word [ebp - 0x5c], cx
push ecx
push esi
add esp, 4
and ecx, 0x94cd
call 0x408949
add byte [ecx], bh
inc eax
cmp eax, 0x33334e37
aaa
add esp, 4
pop ecx
push edx
push ecx
add esp, 4
jmp 0x40895b
sub edx, 0xae63
pop edx
mov edx, dword [ebp - 0x204]
mov ax, word [edx]
mov word [ebp - 0x292], ax
mov ecx, dword [ebp - 0x204]
add ecx, 2
mov dword [ebp - 0x204], ecx
mov dx, word [ebp - 0x292]
mov word [ebp - 0x10], dx
push esi
and esi, 0x5756
or esi, 0xca1
pop esi
push edi
sub edi, 0x14761
xor edi, 0xec7c
pop edi
push edi
xor edi, 0xf303
jmp 0x4089b8
jmp 0x4089bd
pop edi
movzx eax, word [ebp - 0x10]
test eax, eax
jne 0x4089db
movzx ecx, word [ebp - 0x5c]
movzx edx, word [ebp - 0x10]
sub ecx, edx
mov dword [ebp - 0x2c0], ecx
jmp 0x408a5e
movzx eax, word [ebp - 0x5c]
movzx ecx, word [ebp - 0x10]
cmp eax, ecx
je 0x4088d4
movzx edx, word [ebp - 0x5c]
xor edx, 0x20
movzx eax, word [ebp - 0x10]
cmp edx, eax
je 0x4088d4
push ecx
call 0x408a0c
add byte [0x324f4d47], dh
dec esp
cmp dword [ebx + 0x525904c4], eax
push ebx
add esp, 4
jmp 0x408a1c
sub edx, 0x1382d
jmp 0x408a29
and edx, 0x1f28
pop edx
movzx ecx, word [ebp - 0x5c]
movzx edx, word [ebp - 0x10]
cmp ecx, edx
jge 0x408a48
mov dword [ebp - 0x2bc], 0xffffffff
jmp 0x408a52
mov dword [ebp - 0x2bc], 1
mov eax, dword [ebp - 0x2bc]
mov dword [ebp - 0x2c0], eax
cmp dword [ebp - 0x2c0], 0
jne 0x408aa7
push ebx
and ebx, 0x127be
add ebx, 0x892a
xor ebx, 0x4c7c
add ebx, 0x1300e
pop ebx
push esi
push edi
add esp, 4
add esi, 0x10fb4
sub esi, 0x2580
and esi, 0x81ba
pop esi
mov ecx, dword [ebp - 0xc8]
mov dword [ebp - 0x6c], ecx
jmp 0x408b3e
mov edx, dword [ebp - 0xc8]
mov eax, dword [edx]
mov dword [ebp - 0xc8], eax
push edx
push edi
add esp, 4
call 0x408ac6
add byte [edi + 0x42], al
inc esi
aaa
cmp dword [edi - 0x7d], ecx
les eax, [ecx + eax*4]
retf 0x3ffa
push edx
call 0x408b4f
add byte [0x4d473347], bh
inc ecx
aaa
inc esp
cmp dword [ebx + eax*4 - 0x3c], eax
add al, 0x81
ret 0xcd60