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

Disassembly:
call dword [esi + 0x56]
add esp, 4
or esi, 0x146a0
pop esi
push esi
push edi
add esp, 4
add esi, 0x12caf
add esi, 0x130ef
add esi, 0x17591
add esi, 0x1922
pop esi
push esi
or esi, 0x2e44
pop esi
cmp dword [ebp - 0xce0], 0
jne 0x4074bd
mov dword [ebp - 0x2fc], 0
jmp 0x407708
mov edx, dword [ebp - 0xce0]
mov dword [ebp - 0x51c], edx
push eax
sub eax, 0xb0b0
or eax, 0xc85f
pop eax
push edi
or edi, 0x15d40
sub edi, 0x987e
pop edi
push edi
add edi, 0x112c5
jmp 0x4074f4
or edi, 0xda0
pop edi
lea eax, [ebp - 0x173c]
mov dword [ebp - 0xcdc], eax
mov ecx, dword [ebp - 0x51c]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcd8], edx
xor eax, eax
mov word [ebp - 0x224], ax
xor ecx, ecx
mov word [ebp - 0x40], cx
push edi
jmp 0x40752c
xor edi, 0xdcea
or edi, 0x38b2
pop edi
push esi
push edi
add esp, 4
add esi, 0x10b8c
or esi, 0x43ee
xor esi, 0xaa3c
add esi, 0x7496
pop esi
mov edx, dword [ebp - 0xcd8]
mov ax, word [edx]
mov word [ebp - 0x1046], ax
mov ecx, dword [ebp - 0xcd8]
add ecx, 2
mov dword [ebp - 0xcd8], ecx
mov dx, word [ebp - 0x1046]
mov word [ebp - 0x224], dx
fdiv st(5), st(0)
invalid
dec dword [ebx - 0xcdb7b]
jmp dword [esi - 0x75]
or byte [esi - 0x77], ah
lea edi, [eax - 0x74000011]
xchg ebp, eax
and al, 0xf3
invalid
inc dword [ebx - 0x6a76fd3e]
and al, 0xf3
invalid
jmp dword [esi - 0x75]
test dword [eax + 0x66ffffef], edi
mov dword [ebp - 0x40], eax
push eax
push ecx
add esp, 4
or eax, 0x147b1
or eax, 0xdaf7
add eax, 0x11237
pop eax
push ebx
push ebx
add esp, 4
sub ebx, 0x9a45
pop ebx
push esi
or esi, 0x100e4
add esi, 0x16030
pop esi
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x4075fd
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x1688], edx
jmp 0x407657
movzx ecx, word [ebp - 0x224]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
je 0x407525
movzx eax, word [ebp - 0x224]
xor eax, 0x20
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x407525
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
cmp edx, eax
jge 0x407641
mov dword [ebp - 0x1684], 0xffffffff
jmp 0x40764b
mov dword [ebp - 0x1684], 1
mov ecx, dword [ebp - 0x1684]
mov dword [ebp - 0x1688], ecx
cmp dword [ebp - 0x1688], 0
jne 0x4076a0
push esi
jmp 0x407667
xor esi, 0x18188
xor esi, 0x6747
pop esi
push ebx
push edi
add esp, 4
add ebx, 0x10ae
sub ebx, 0x184c3
pop ebx
push edx
push edx
add esp, 4
and edx, 0xa872
pop edx
mov edx, dword [ebp - 0x51c]
mov dword [ebp - 0x2fc], edx
jmp 0x407708
push eax
push edi
add esp, 4
jmp 0x4076ab
jmp 0x4076b2
xor eax, 0x15133
pop eax
push esi
push edx
add esp, 4
add esi, 0x15574
jmp 0x4076cb
add esi, 0x8d87
pop esi
mov eax, dword [ebp - 0x51c]
mov ecx, dword [eax]
mov dword [ebp - 0x51c], ecx
mov edx, dword [ebp - 0x51c]
cmp edx, dword [ebp - 0xce0]
je 0x4076fe
mov eax, dword [ebp - 0x51c]
cmp dword [eax + 0x30], 0
jne 0x4074c9
mov dword [ebp - 0x2fc], 0
push eax
call 0x407718
add byte [edi + 0x3f], cl
inc ebp
inc esp
xor edi, dword [ecx]
dec ebx
inc ebx
inc esi
add esp, 4
pop eax
push eax
push edi
add esp, 4
xor eax, 0x96c7
add eax, 0xee17
add eax, 0x9039
and eax, 0x8bb
pop eax
mov ecx, dword [ebp - 0x2fc]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x338], edx
push edx
xor edx, 0xbaa8
pop edx
push esi
push edi
add esp, 4
sub esi, 0x13cee
call 0x40776b
add byte [edx], bh
cmp eax, 0x3f3f4137
push eax
cmp al, 0x39
add esp, 4
or esi, 0x167a
sub esi, 0x8865
pop esi
mov dword [ebp - 0x794], 0
mov eax, dword [ebp - 0x338]
mov dword [ebp - 0x168c], eax
cmp dword [ebp - 0x168c], 0
jne 0x4077ab
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x520], ecx
jmp 0x407a9c
mov edx, dword [ebp - 0x168c]
mov eax, dword [ebp - 0x338]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1690], eax
jne 0x4077d3
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x520], ecx
jmp 0x407a9c
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1690]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1694], edx
cmp dword [ebp - 0x1694], 0
jne 0x407805
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x520], eax
jmp 0x407a9c
mov ecx, dword [ebp - 0x338]
add ecx, dword [ebp - 0x1694]
mov dword [ebp - 0x788], ecx
jne 0x40782a
mov edx, dword [ebp - 0x794]
mov dword [ebp - 0x520], edx
jmp 0x407a9c
mov eax, dword [ebp - 0x788]
mov ecx, dword [ebp - 0x338]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x1a28], ecx
mov edx, dword [ebp - 0x788]
mov eax, dword [ebp - 0x338]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x1a2c], eax
mov ecx, dword [ebp - 0x788]
mov edx, dword [ebp - 0x338]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x1a30], edx
mov dword [ebp - 0x78c], 0
jmp 0x407884
mov eax, dword [ebp - 0x78c]
add eax, 1
mov dword [ebp - 0x78c], eax
mov ecx, dword [ebp - 0x788]
mov edx, dword [ebp - 0x78c]
cmp edx, dword [ecx + 0x18]
jae 0x407a90
mov eax, dword [ebp - 0x78c]
mov ecx, dword [ebp - 0x1a28]
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 - 0x1a2c]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x1a30]
mov ecx, dword [ebp - 0x338]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1a34], ecx
invalid
test dword [esi + edi*8 - 1], ebx
inc dword [eax]