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

Disassembly:
push edi
push edx
add esp, 4
xor edi, 0x218
pop edi
push edi
push eax
add esp, 4
sub edi, 0x10c1b
sub edi, 0xf755
pop edi
push eax
xor eax, 0x4d33
or eax, 0xa006
sub eax, 0xc927
pop eax
lea eax, [ebp - 0x1790]
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
xor eax, 0xf753
or eax, 0x50bc
xor eax, 0x6747
pop eax
push eax
push eax
add esp, 4
or eax, 0x486c
or eax, 0x750a
add eax, 0x9647
or eax, 0x17fb3
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 eax
push edi
add esp, 4
add eax, 0x16ec7
pop eax
push eax
push esi
add esp, 4
sub eax, 0x12f3e
sub eax, 0xf03c
pop eax
push edx
or edx, 0xff2c
xor edx, 0xa9ff
and edx, 0x16eb5
pop edx
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x40768e
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1668], edx
jmp 0x4076e8
movzx ecx, word [ebp - 0x220]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x4075b6
movzx eax, word [ebp - 0x220]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x4075b6
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x4076d2
mov dword [ebp - 0x1624], 0xffffffff
jmp 0x4076dc
mov dword [ebp - 0x1624], 1
mov ecx, dword [ebp - 0x1624]
mov dword [ebp - 0x1668], ecx
cmp dword [ebp - 0x1668], 0
jne 0x407731
push edi
push ecx
add esp, 4
and edi, 0x13032
jmp 0x407701
sub edi, 0x155ba
pop edi
push eax
add eax, 0xc189
sub eax, 0x3dd5
jmp 0x40771c
add eax, 0x97a5
pop eax
mov edx, dword [ebp - 0x518]
mov dword [ebp - 0x774], edx
jmp 0x407799
push esi
push esi
add esp, 4
and esi, 0x214b
call 0x40774a
add byte [ebx + 0x32], cl
cmp dword [edi + 0x32], ecx
inc eax
dec ebx
aaa
add esp, 4
or esi, 0x180db
pop esi
push ebx
or ebx, 0x2360
jmp 0x407762
pop ebx
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 0x40778f
mov eax, dword [ebp - 0x518]
cmp dword [eax + 0x30], 0
jne 0x40755a
mov dword [ebp - 0x774], 0
push ecx
sub ecx, 0x17d23
call 0x4077af
add byte [eax + edx*2], dh
cmp esi, dword [edi]
cmp cl, byte [edx + 0x49]
inc esp
dec edi
add esp, 4
add ecx, 0x1816f
or ecx, 0x8afe
pop ecx
push ebx
push esi
add esp, 4
and ebx, 0x5f4b
pop ebx
cmp dword [ebp - 0x774], 0
jne 0x407815
push edi
push ecx
add esp, 4
and edi, 0x10cfa
or edi, 0x10ff6
jmp 0x4077ea
call 0x4077f6
add byte [edi], dh
cmp edi, dword [edi]
dec ebp
cmp esi, dword [edx]
add esp, 4
pop edi
push ebx
push ebx
add esp, 4
xor ebx, 0x88eb
pop ebx
mov dword [ebp - 0xab4], 0
jmp 0x40833d
push ebx
push eax
add esp, 4
or ebx, 0x2165
and ebx, 0x8219
add ebx, 0xb2ee
pop ebx
push ebx
add ebx, 0x10564
call 0x407843
add byte [eax], bh
dec ebp
inc edx
xor eax, 0x50434f3c
add esp, 4
pop ebx
mov ecx, dword [ebp - 0x774]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x3a4], edx
mov dword [ebp - 0x784], 0
add byte [eax], al
mov eax, dword [ebp - 0x3a4]
mov dword [ebp - 0x166c], eax
cmp dword [ebp - 0x166c], 0