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

Disassembly:
push ebp
sar byte [ebx], 0xca
je 0x4074b1
movzx eax, word [ebp - 0x20c]
xor eax, 0x20
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x4074b1
movzx edx, word [ebp - 0x20c]
movzx eax, word [ebp - 0x40]
cmp edx, eax
jge 0x4075cd
mov dword [ebp - 0x1578], 0xffffffff
jmp 0x4075d7
mov dword [ebp - 0x1578], 1
mov ecx, dword [ebp - 0x1578]
mov dword [ebp - 0x157c], ecx
cmp dword [ebp - 0x157c], 0
jne 0x40762c
push edx
push ecx
add esp, 4
and edx, 0x13b86
xor edx, 0x1208
pop edx
push ebx
push edi
add esp, 4
xor ebx, 0xcd39
jmp 0x407611
or ebx, 0x940e
add ebx, 0x84d5
pop ebx
mov edx, dword [ebp - 0x4ec]
mov dword [ebp - 0x2a8], edx
jmp 0x407694
push edi
push edi
add esp, 4
and edi, 0x266a
jmp 0x40763e
call 0x40764e
add byte [0x44454c33], dh
inc esp
push eax
dec esi
inc edx
cmp al, 0x83
les eax, [edi + ebx*2]
push edx
push ecx
add esp, 4
xor edx, 0x12603
pop edx
mov eax, dword [ebp - 0x4ec]
mov ecx, dword [eax]
mov dword [ebp - 0x4ec], ecx
mov edx, dword [ebp - 0x4ec]
cmp edx, dword [ebp - 0xc68]
je 0x40768a
mov eax, dword [ebp - 0x4ec]
cmp dword [eax + 0x30], 0
jne 0x407455
mov dword [ebp - 0x2a8], 0
push edx
push eax
add esp, 4
jmp 0x40769f
jmp 0x4076a6
and edx, 0x90f7
jmp 0x4076b1
pop edx
push esi
add esi, 0xbd70
pop esi
push edx
push esi
add esp, 4
or edx, 0x48e4
pop edx
mov ecx, dword [ebp - 0x2a8]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x304], edx
push edx
push esi
add esp, 4
and edx, 0x751d
pop edx
push eax
add eax, 0xde82
add eax, 0x141da
pop eax
push esi
push ebx
add esp, 4
xor esi, 0x4d30
sub esi, 0xeb41
add esi, 0x1811
pop esi
mov dword [ebp - 0x730], 0
mov eax, dword [ebp - 0x304]
mov dword [ebp - 0x1580], eax
cmp dword [ebp - 0x1580], 0
jne 0x407737
mov ecx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], ecx
jmp 0x407a28
mov edx, dword [ebp - 0x1580]
mov eax, dword [ebp - 0x304]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1584], eax
jne 0x40775f
mov ecx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], ecx
jmp 0x407a28
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1584]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1588], edx
cmp dword [ebp - 0x1588], 0
jne 0x407791
mov eax, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], eax
jmp 0x407a28
mov ecx, dword [ebp - 0x304]
add ecx, dword [ebp - 0x1588]
mov dword [ebp - 0x724], ecx
jne 0x4077b6
mov edx, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], edx
jmp 0x407a28
mov eax, dword [ebp - 0x724]
mov ecx, dword [ebp - 0x304]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x1900], ecx
mov edx, dword [ebp - 0x724]
mov eax, dword [ebp - 0x304]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x1904], eax
mov ecx, dword [ebp - 0x724]
mov edx, dword [ebp - 0x304]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x1908], edx
mov dword [ebp - 0x728], 0
jmp 0x407810
mov eax, dword [ebp - 0x728]
add eax, 1
mov dword [ebp - 0x728], eax
mov ecx, dword [ebp - 0x724]
mov edx, dword [ebp - 0x728]
cmp edx, dword [ecx + 0x18]
jae 0x407a1c
mov eax, dword [ebp - 0x728]
mov ecx, dword [ebp - 0x1900]
mov edx, dword [ebp - 0x304]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x72c], edx
mov eax, dword [ebp - 0x728]
mov ecx, dword [ebp - 0x1904]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x1908]
mov ecx, dword [ebp - 0x304]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x190c], ecx
mov dword [ebp - 0x18c], 0
jmp 0x407880
mov edx, dword [ebp - 0x18c]
add edx, 1
mov dword [ebp - 0x18c], edx
mov eax, dword [ebp - 0x72c]
add eax, dword [ebp - 0x18c]
movsx ecx, byte [eax]
test ecx, ecx
je 0x407932
mov edx, dword [ebp - 0x18c]
movsx eax, byte [ebp + edx - 0x960]
test eax, eax
je 0x407932
push edx
push edx
add esp, 4
xor edx, 0x2ae8
add edx, 0x52fb
xor edx, 0x2b62
pop edx
push ecx
or ecx, 0x6bf8
xor ecx, 0x1519c
xor ecx, 0x48aa
xor ecx, 0xafa0
pop ecx
mov ecx, dword [ebp - 0x72c]
add ecx, dword [ebp - 0x18c]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x18c]
movsx ecx, byte [ebp + eax - 0x960]
cmp edx, ecx
je 0x407924
mov edx, dword [ebp - 0x72c]
add edx, dword [ebp - 0x18c]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x18c]
movsx edx, byte [ebp + ecx - 0x960]
cmp eax, edx
jne 0x40792b
jmp 0x407871
jmp 0x407932
push esi
sub esi, 0x115b8
pop esi
push ebx
push eax
add esp, 4
jmp 0x407946
or ebx, 0x879d
xor ebx, 0x13f63
pop ebx
push esi
jmp 0x40795d
xor esi, 0x137cf
pop esi
mov eax, dword [ebp - 0x72c]
add eax, dword [ebp - 0x18c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x18c]
movsx eax, byte [ebp + edx - 0x960]
cmp ecx, eax
jne 0x407991
mov dword [ebp - 0xc6c], 0
jmp 0x407a00
push ecx
push edi
add esp, 4
and ecx, 0xf99a
or ecx, 0x12f47
and ecx, 0xc9f1
xor ecx, 0x9d58
pop ecx
push edi
and edi, 0x14657
and edi, 0xb6e2
jmp 0x4079c2
pop edi
mov ecx, dword [ebp - 0x72c]
add ecx, dword [ebp - 0x18c]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x18c]
movsx ecx, byte [ebp + eax - 0x960]
or ecx, 0x20
cmp edx, ecx
jge 0x4079f6
mov dword [ebp - 0xc6c], 0xffffffff
jmp 0x407a00
mov dword [ebp - 0xc6c], 1
cmp dword [ebp - 0xc6c], 0
jne 0x407a17
mov edx, dword [ebp - 0x190c]
mov dword [ebp - 0x4f0], edx
jmp 0x407a28
jmp 0x407801
mov eax, dword [ebp - 0x730]
mov dword [ebp - 0x4f0], eax
mov ecx, dword [ebp - 0x4f0]
mov dword [ebp - 0xa58], ecx
push esi
push esi
add esp, 4
call 0x407a48
add byte [ebp + 0x39], al
cmp dword [ecx], edi
dec edx
xor eax, 0x8350373f
les eax, [ecx + eax*4]
out dx, al
xor dword [ebp + 0x6eb0000], 0x48
cmp ecx, dword [ebx + 0x4f]
inc ebp
dec ecx
pop esi
push edx
push eax
add esp, 4
add edx, 0x2903
pop edx
mov edx, dword [ebp - 0xa58]
mov dword [ebp - 0x1910], edx
lea eax, [ebp - 0xc70]
push eax
push 0x40
mov ecx, dword [ebp - 0x158c]
push ecx
mov edx, dword [ebp - 0x3cc]
push edx
call dword [ebp - 0x1910]
test eax, eax
jne 0x407ad9
push ebx
push ebx
add esp, 4
call 0x407aa7
add byte [0x473c3d50], dh
cmp eax, 0x83393e3f
les eax, [ebx + ebp*8]
push es
aas
inc esp
aaa
xor al, 0x50
inc ecx
sub ebx, 0x3cf7
pop ebx
push ecx
push edi
add esp, 4
sub ecx, 0xe85f
pop ecx
mov eax, dword [ebp - 0x738]
mov dword [ebp - 0x1914], eax
push 0
call dword [ebp - 0x1914]
mov ecx, dword [ebp - 0x1918]
mov dword [ebp - 0x734], ecx
jmp 0x407af6
mov edx, dword [ebp - 0x734]
add edx, 1
mov dword [ebp - 0x734], edx
mov eax, dword [ebp - 0x734]
cmp eax, dword [ebp - 0xa5c]
jae 0x407b52
push edx
push edi
add esp, 4
add edx, 0x89fa
pop edx
push ebx
push ebx
add esp, 4
add ebx, 0xb4ad
pop ebx
push eax
jmp 0x407b26
jmp 0x407b2f
xor eax, 0x11c40
pop eax
movzx ecx, byte [ebp - 0x381]
mov edx, dword [ebp - 0x734]
movsx eax, byte [edx]
sub eax, ecx
mov ecx, dword [ebp - 0x734]
mov byte [ecx], al
jmp 0x407ae7
mov edx, dword [ebp - 0xa58]
mov dword [ebp - 0x191c], edx
lea eax, [ebp - 0xc70]
push eax
mov ecx, dword [ebp - 0xc70]
push ecx
mov edx, dword [ebp - 0x158c]
push edx
mov eax, dword [ebp - 0x3cc]
push eax
call dword [ebp - 0x191c]
test eax, eax
jne 0x407bca
push edi
push ebx
add esp, 4
or edi, 0x3170
pop edi
push edi
xor edi, 0x1234a
xor edi, 0xb6f4
or edi, 0x18617
and edi, 0x148b
pop edi
push ebx
push ecx
add esp, 4
xor ebx, 0xc5ac
pop ebx
mov ecx, dword [ebp - 0x738]
enter 0xfffffffffffffff8, 0xffffffffffffffff
mov dword [ebp - 0x1920], ecx
push 0
call dword [ebp - 0x1920]
push ebx
push eax
add esp, 4
or ebx, 0x245b
sub ebx, 0xf692
pop ebx
push edx
push edx
add esp, 4
xor edx, 0xd992
xor edx, 0x10a7a
pop edx
push edi
sub edi, 0x93cf
add edi, 0x275a
pop edi
push edx
mov ecx, 0x10101010
pop edx
push ecx
mov ecx, 0xffff07ff
pop ecx
pop eax
mov al, ch
enter 0x88c, 7
pushal
pop ebp
mov ch, dh
xchg edx, eax
rol dword [edi], 7
or cl, byte [esi + 0x3a]
inc ebx
mov ch, dl
jge 0x407bb8
pop es
pop es
mov ch, dh
wait
imul eax, dword [edi], 7
pop esi
push cs
push esi
dec esp
dec ecx
inc eax
push eax
push edi
push ebx
or edx, dword [esp + eax*2 + 0x3b]
sal word ds:[edx + 7], 7
pop es
insd dword es:[edi], dx
nop
pushfd
ret