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

Disassembly:
push eax
add eax, 0x1167f
pop eax
push ecx
sub ecx, 0xcca1
pop ecx
push esi
xor esi, 0x16fb4
or esi, 0x17bb1
xor esi, 0x184b6
pop esi
push ebx
or ebx, 0xbf02
or ebx, 0x655b
pop ebx
mov edx, dword [ebp - 0xcd8]
mov ax, word [edx]
mov word [ebp - 0x1046], ax
mov ecx, dword [ebp - 0xcd8]
add ecx, 2
rol dword [edx], 0x89
lea ebp, [eax]
invalid
invalid
jmp dword [esi - 0x75]
xchg ebp, eax
mov edx, 0x66ffffef
mov dword [ebp - 0x224], edx
mov eax, dword [ebp - 0xcdc]
mov cx, word [eax]
mov word [ebp - 0x1048], cx
mov edx, dword [ebp - 0xcdc]
add edx, 2
mov dword [ebp - 0xcdc], edx
mov ax, word [ebp - 0x1048]
mov word [ebp - 0x40], ax
push eax
or eax, 0x80b
or eax, 0x165a1
add byte [eax + 0x51], bl
push ebx
add esp, 4
sub ecx, 0x25fc
pop ecx
push ecx
push ecx
add esp, 4
and ecx, 0x148a4
xor ecx, 0x7de6
and ecx, 0x14247
pop ecx
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x40a6b0
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x1684], edx
jmp 0x40a70a
movzx ecx, word [ebp - 0x224]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
je 0x40a5d8
movzx eax, word [ebp - 0x224]
xor eax, 0x20
cmp dword [ebp - 0x1684], 0
jne 0x40a753
push esi
and esi, 0x176bf
or esi, 0x15bda
pop esi
push edx
jmp 0x40a72a
sub edx, 0xda19
and edx, 0x11f3
and edx, 0x4a36
pop edx
push esi
or esi, 0xfbec
pop esi
mov edx, dword [ebp - 0x51c]
mov dword [ebp - 0x2fc], edx
jmp 0x40a7bb
push edi
push esi
add esp, 4
call 0x40a766
add byte [eax + 0x3d], dl
push eax
cmp eax, 0x463f464c
dec esi
dec edi
add esp, 4
jmp 0x40a770
pop edi
push ecx
push ebx
add esp, 4
push ebx
push eax
add esp, 4
or ebx, 0xd82
or ebx, 0x7eea
jmp 0x40a7d2
pop ebx
push eax
push ebx
add esp, 4
and eax, 0x13e62
xor eax, 0x4028
jmp 0x40a7ec
pop eax
mov ecx, dword [ebp - 0x2fc]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x338], edx
push edx
xor edx, 0x8022
add edx, 0x1260
and edx, 0xf6c2
pop edx
push edi
push edi
add esp, 4
xor edi, 0xc261
and edi, 0x125be
or edi, 0xbcf6
add edi, 0x171d8
pop edi
mov dword [ebp - 0x794], 0
mov eax, dword [ebp - 0x338]
mov dword [ebp - 0x1688], eax
cmp dword [ebp - 0x1688], 0
jne 0x40a85e
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x520], ecx
jmp 0x40ab4f
mov edx, dword [ebp - 0x1688]
mov eax, dword [ebp - 0x338]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x168c], eax
jne 0x40a886
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x520], ecx
jmp 0x40ab4f
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x168c]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1690], edx
cmp dword [ebp - 0x1690], 0
jne 0x40a8b8
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x520], eax
jmp 0x40ab4f
mov ecx, dword [ebp - 0x338]
add ecx, dword [ebp - 0x1690]
mov dword [ebp - 0x788], ecx
jne 0x40a8dd
mov edx, dword [ebp - 0x794]
mov dword [ebp - 0x520], edx
jmp 0x40ab4f
mov eax, dword [ebp - 0x788]
mov ecx, dword [ebp - 0x338]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19c4], ecx
mov edx, dword [ebp - 0x788]
mov eax, dword [ebp - 0x338]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19c8], eax
mov ecx, dword [ebp - 0x788]
mov edx, dword [ebp - 0x338]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x19cc], edx
mov dword [ebp - 0x78c], 0
jmp 0x40a937
mov ecx, dword [ebp - 0x788]
mov edx, dword [ebp - 0x78c]
cmp edx, dword [ecx + 0x18]
jae 0x40ab43
mov eax, dword [ebp - 0x78c]
mov ecx, dword [ebp - 0x19c4]
mov edx, dword [ebp - 0x338]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x790], edx
mov eax, dword [ebp - 0x78c]
mov ecx, dword [ebp - 0x19c8]
movzx edx, word [ecx + eax*2]
invalid
invalid