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

Disassembly:
push ecx
xor ecx, 0x689
xor ecx, 0x1734c
and ecx, 0x15750
pop ecx
push eax
push edi
add esp, 4
jmp 0x407574
or eax, 0x8cad
and eax, 0xcf18
xor eax, 0x2b5a
pop eax
lea eax, [ebp - 0x1774]
mov dword [ebp - 0xccc], eax
mov ecx, dword [ebp - 0x518]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcc8], edx
xor eax, eax
mov word [ebp - 0x220], ax
xor ecx, ecx
mov word [ebp - 0x3c], cx
push eax
call 0x4075c2
add byte [ecx + eax*2 + 0x41], al
aas
aaa
dec esp
inc edi
dec edi
inc edx
add esp, 4
sub eax, 0x7468
and eax, 0x12b2c
call 0x4075df
add byte [eax + 0x47], al
xor eax, 0x443d4d3a
dec edx
add esp, 4
pop eax
mov edx, dword [ebp - 0xcc8]
mov ax, word [edx]
mov word [ebp - 0x1042], ax
mov ecx, dword [ebp - 0xcc8]
add ecx, 2
mov dword [ebp - 0xcc8], ecx
mov dx, word [ebp - 0x1042]
mov word [ebp - 0x220], dx
mov eax, dword [ebp - 0xccc]
mov cx, word [eax]
mov word [ebp - 0x1044], cx
mov edx, dword [ebp - 0xccc]
add edx, 2
mov dword [ebp - 0xccc], edx
mov ax, word [ebp - 0x1044]
mov word [ebp - 0x3c], ax
push esi
add esi, 0x17660
pop esi
push edx
sub edx, 0x16abc
add edx, 0xd717
sub edx, 0x39cc
and edx, 0xfd0b
pop edx
push edi
add edi, 0x8d94
pop edi
push ebx
add ebx, 0x1e2b
pop ebx
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x407689
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x166c], edx
jmp 0x4076e3
movzx ecx, word [ebp - 0x220]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x4075b1
movzx eax, word [ebp - 0x220]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x4075b1
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x4076cd
mov dword [ebp - 0x1668], 0xffffffff
jmp 0x4076d7
mov dword [ebp - 0x1668], 1
mov ecx, dword [ebp - 0x1668]
mov dword [ebp - 0x166c], ecx
cmp dword [ebp - 0x166c], 0
jne 0x40772c
push esi
or esi, 0x1184f
or esi, 0x64ab
or esi, 0x66d9
pop esi
push eax
push esi
add esp, 4
add eax, 0x15ca9
or eax, 0x359c
pop eax
push eax
push eax
add esp, 4
xor eax, 0x2eeb
pop eax
mov edx, dword [ebp - 0x518]
mov dword [ebp - 0x774], edx
jmp 0x407794
push ecx
sub ecx, 0x99e8
and ecx, 0x577d
call 0x407749
add byte [eax + 0x4d], cl
inc esi
dec ecx
inc eax
cmp al, 0x4b
cmp byte [esi + edi], dh
add esp, 4
call 0x40775a
add byte [edx], dh
inc edi
inc esp
dec ebx
inc edx
cmp byte [edi + 0x40], al
add esp, 4
pop ecx
mov eax, dword [ebp - 0x518]
mov ecx, dword [eax]
mov dword [ebp - 0x518], ecx
mov edx, dword [ebp - 0x518]
cmp edx, dword [ebp - 0xcd0]
je 0x40778a
mov eax, dword [ebp - 0x518]
cmp dword [eax + 0x30], 0
jne 0x407555
mov dword [ebp - 0x774], 0
push eax
add eax, 0x58a4
sub eax, 0xb047
sub eax, 0x160f9
call 0x4077b4
add byte [edx + 0x42], cl
dec edi
cmp byte [esi + 0x47], cl
xor al, 0x83
les eax, [eax + ebx*2]
push edi
sub edi, 0xd94d
sub edi, 0x15d60
pop edi
cmp dword [ebp - 0x774], 0
jne 0x407810
push ecx
push ecx
add esp, 4
xor ecx, 0x184f8
jmp 0x4077e2
xor ecx, 0x6df1
pop ecx
push ebx
push edi
add esp, 4
xor ebx, 0x8f99
and ebx, 0x5441
xor ebx, 0xdd21
pop ebx
mov dword [ebp - 0xabc], 0
jmp 0x408338
push edx
and edx, 0xfdf3
pop edx
push eax
push ecx
add esp, 4
and eax, 0x1ee0
call 0x407832
add byte [esi], dh
cmp al, 0x43
dec edx
inc ecx
aas
xor eax, 0x8104c483
invalid
push ebx
push ecx
add esp, 4
call 0x408349
add byte [edi + edi + 0x41], al
inc esp
dec ebx
cmp eax, 0xe804c483
or dword [eax], eax
add byte [eax], al
add byte [edx + 0x46], cl
aaa
inc edi
dec ebp
inc edi
cmp dword [edi], esi
add esp, 4
add ebx, 0x5dc7
and ebx, 0x117a1
pop ebx
mov edx, dword [ebp - 0xabc]
mov dword [ebp - 0x1a38], edx
lea eax, [ebp - 0xce8]
push eax
push 0x40
mov ecx, dword [ebp - 0x1698]
push ecx
mov edx, dword [ebp - 0x3e8]
push edx
call dword [ebp - 0x1a38]
test eax, eax
jne 0x4083dd
push ebx
push esi
add esp, 4
and ebx, 0x3c1b
or ebx, 0xe747
pop ebx
push ebx
sub ebx, 0x4572
pop ebx
push edx
push edi
add esp, 4
xor edx, 0x141af
sub edx, 0x7d94
xor edx, 0x12d99
pop edx
mov eax, dword [ebp - 0x79c]
mov dword [ebp - 0x1a3c], eax
push 0
call dword [ebp - 0x1a3c]
mov ecx, dword [ebp - 0x1a40]
mov dword [ebp - 0x798], ecx
jmp 0x4083fa