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

Disassembly:
mov eax, dword [ebp - 0x77c]
add eax, 1
mov dword [ebp - 0x77c], eax
mov ecx, dword [ebp - 0x778]
mov edx, dword [ebp - 0x77c]
cmp edx, dword [ecx + 0x18]
jae 0x407992
mov eax, dword [ebp - 0x77c]
mov ecx, dword [ebp - 0x19f4]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x780], edx
mov eax, dword [ebp - 0x77c]
mov ecx, dword [ebp - 0x19f8]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x19fc]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1a00], ecx
mov dword [ebp - 0x1a0], 0
jmp 0x4077f6
mov edx, dword [ebp - 0x1a0]
add edx, 1
mov dword [ebp - 0x1a0], edx
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x1a0]
movsx ecx, byte [eax]
test ecx, ecx
je 0x4078a8
mov edx, dword [ebp - 0x1a0]
movsx eax, byte [ebp + edx - 0x8a4]
test eax, eax
je 0x4078a8
push edx
push eax
add esp, 4
or edx, 0xed4b
pop edx
push ebx
add ebx, 0xdbc4
and ebx, 0x17219
sub ebx, 0x1324b
sub ebx, 0xc2ab
pop ebx
push esi
push ebx
add esp, 4
or esi, 0x7925
pop esi
mov ecx, dword [ebp - 0x780]
add ecx, dword [ebp - 0x1a0]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1a0]
movsx ecx, byte [ebp + eax - 0x8a4]
cmp edx, ecx
je 0x40789a
mov edx, dword [ebp - 0x780]
add edx, dword [ebp - 0x1a0]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1a0]
movsx edx, byte [ebp + ecx - 0x8a4]
cmp eax, edx
jne 0x4078a1
jmp 0x4077e7
jmp 0x4078a8
push edi
push ebx
add esp, 4
xor edi, 0x1aff
pop edi
push eax
call 0x4078c2
add byte [edx + esi], dh
dec esi
inc edi
dec ecx
xor al, byte [ebp - 0x7d]
les eax, [eax + ebx*2]
push eax
push ecx
add esp, 4
xor eax, 0x48e0
pop eax
push esi
and esi, 0xe7ed
pop esi
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x1a0]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1a0]
movsx eax, byte [ebp + edx - 0x8a4]
cmp ecx, eax
jne 0x407907
mov dword [ebp - 0xcd4], 0
jmp 0x407976
push eax
or eax, 0xa6d0
sub eax, 0x14d15
or eax, 0xe902
sub eax, 0x3878
pop eax
push ebx
push eax
add esp, 4
and ebx, 0xde98
pop ebx
push ebx
push ebx
add esp, 4
or ebx, 0xbf53
pop ebx
mov ecx, dword [ebp - 0x780]
add ecx, dword [ebp - 0x1a0]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x1a0]
movsx ecx, byte [ebp + eax - 0x8a4]
or ecx, 0x20
cmp edx, ecx
jge 0x40796c
mov dword [ebp - 0xcd4], 0xffffffff
jmp 0x407976
mov dword [ebp - 0xcd4], 1
cmp dword [ebp - 0xcd4], 0
jne 0x40798d
mov edx, dword [ebp - 0x1a00]
mov dword [ebp - 0x3f8], edx
jmp 0x40799e
jmp 0x407777
mov eax, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], eax
cmp dword [ebp - 0x3f8], 0
je 0x407a79
push ebx
add ebx, 0x9e04
add ebx, 0xad96
sub ebx, 0xd818
and ebx, 0x15491
pop ebx
push ecx
push edx
add esp, 4
sub ecx, 0x12b7
pop ecx
push ebx
push edx
add esp, 4
or ebx, 0x13c47
pop ebx
mov ecx, dword [ebp - 0x3f8]
mov dword [ebp - 0x1a04], ecx
push ecx
push eax
add esp, 4
call 0x4079fa
add byte [ebx], dh
inc edi
dec ebp
cmp al, 0x4a
cmp al, 0x83
les eax, [eax + ebp*8]
or dword [eax], eax
add byte [eax], al
add byte [esi], bh
dec ebx
aaa
inc esi
inc esi
cmp dword [edx], esi
inc ecx
add esp, 4
jmp 0x407a14
and ecx, 0x5095
pop ecx
mov edx, dword [ebp - 0x1a04]
mov dword [ebp - 0x1a08], edx
lea eax, [ebp - 0x1738]
push eax
call dword [ebp - 0x1a08]
test eax, eax
jne 0x407a79
push esi
xor esi, 0x113f
add esi, 0xfb17
sub esi, 0x4a09
and esi, 0xde5
pop esi
push edx
sub edx, 0xd15b
call 0x407a66
add byte [esi], dh
cmp edx, dword ds:[eax + 0x4b]
cmp bh, byte [0x5a04c483]
mov dword [ebp - 0xab4], 0
jmp 0x408164
push eax
jmp 0x407a83
call 0x407a93
add byte [edi], bh
xor eax, 0x3a364342
dec esp
push eax
cmp al, 0x4b
add esp, 4
and eax, 0x15669
xor eax, 0x60a0
pop eax
push edi
xor edi, 0x973c
pop edi
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x1a0c], ecx
mov edx, dword [ebp - 0x1a0c]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x1a10], eax
mov ecx, dword [ebp - 0x1a10]
mov dword [ebp - 0x167c], ecx
push ebx
push edx
add esp, 4
call 0x407ae8
add byte [edi], bh
dec esi
cmp cl, byte [ebp + 0x48]
inc edx
inc ecx
dec ecx
xor eax, dword [edi - 0x7d]
les eax, [eax + ebp*8]
or dword [eax], eax
add byte [eax], al
add byte [edi + 0x4c], cl
cmp al, 0x3d
dec ebx
xor eax, 0xc4833b3b
add al, 0xeb
push es
inc edx
cmp al, 0x4d
inc esi
aas
inc esp
pop ebx
cmp dword [ebp - 0x167c], 0
jne 0x407b1d
mov dword [ebp - 0x2fc], 0
jmp 0x407dc4
mov edx, dword [ebp - 0x167c]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xce0], ecx
push esi
or esi, 0x17a3
pop esi
push esi
xor esi, 0xcee8
pop esi
push edi
push eax
add esp, 4
and edi, 0x6772
jmp 0x407b51
jmp 0x407b5a
xor edi, 0x90bf
pop edi
cmp dword [ebp - 0xce0], 0
jne 0x407b79
mov dword [ebp - 0x2fc], 0
jmp 0x407dc4
mov edx, dword [ebp - 0xce0]
mov dword [ebp - 0x51c], edx
push eax
call 0x407b92
add byte [ecx + 0x48], al
dec edi
inc edi
dec esp
add esp, 4
jmp 0x407b9c
jmp 0x407ba4
sub eax, 0x11292
pop eax
push edx
push ebx
add esp, 4
xor edx, 0x9d71
pop edx
lea eax, [ebp - 0x1738]
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 eax
or eax, 0x17b3f
pop eax
push eax
push edi
add esp, 4
xor eax, 0x17fca
or eax, 0x16ecb
xor eax, 0x11c86
xor eax, 0x111eb
pop eax
push ebx
push esi
add esp, 4
and ebx, 0x9ae3
pop ebx
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
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 edi
push esi
add esp, 4
add edi, 0x3809
pop edi
push esi
push edi
add esp, 4
and esi, 0x131b0
pop esi
push eax
xor eax, 0x17dd5
xor eax, 0x127cb
pop eax
push eax
push esi
add esp, 4
sub eax, 0xe13b
pop eax
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x407cb9
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x1684], edx
jmp 0x407d13
movzx ecx, word [ebp - 0x224]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
je 0x407be1
movzx eax, word [ebp - 0x224]
xor eax, 0x20
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x407be1
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
cmp edx, eax
jge 0x407cfd
mov dword [ebp - 0x1680], 0xffffffff
jmp 0x407d07
mov dword [ebp - 0x1680], 1
mov ecx, dword [ebp - 0x1680]
mov dword [ebp - 0x1684], ecx
cmp dword [ebp - 0x1684], 0
jne 0x407d5c
push ebx
push esi
add esp, 4
and ebx, 0xbf21
pop ebx
push ebx
push ebx
add esp, 4
jmp 0x407d36
xor ebx, 0x5a9
pop ebx
push ecx
add ecx, 0x16d2c
jmp 0x407d4d
pop ecx
mov edx, dword [ebp - 0x51c]
mov dword [ebp - 0x2fc], edx
jmp 0x407dc4
push ebx
and ebx, 0x12044
jmp 0x407d69
or ebx, 0x1318c
pop ebx
push edx
push edx
add esp, 4
sub edx, 0x11c32
jmp 0x407d81
pop edx
push ecx
push esi
add esp, 4
or ecx, 0x6f62
pop ecx
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 0x407dba
mov eax, dword [ebp - 0x51c]
cmp dword [eax + 0x30], 0
jne 0x407b85
mov dword [ebp - 0x2fc], 0
push eax
and eax, 0x137a8
xor eax, 0xbd95
pop eax
push edx
and edx, 0x484b
and edx, 0x126ed
call 0x407dec
add byte [esi + 0x49], al
xor dh, byte [edi]
dec esi
cmp eax, 0x4c48337
and edx, 0xd5ee
pop edx
mov ecx, dword [ebp - 0x2fc]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x338], edx
push edi
push eax
add esp, 4
or edi, 0x3647
xor edi, 0xc773
and edi, 0xca95
pop edi
push ebx
call 0x407e2d
add byte [edx], bh
aaa
cmp dword [0x4d3d394f], edi
cmp dword [ebx - 0x1c7efb3c], eax
xor al, 0x25
add dword [eax], eax
pop ebx
mov dword [ebp - 0x794], 0
mov eax, dword [ebp - 0x338]
mov dword [ebp - 0x1688], eax
cmp dword [ebp - 0x1688], 0
jne 0x407e67
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x520], ecx
jmp 0x408158
mov edx, dword [ebp - 0x1688]
mov eax, dword [ebp - 0x338]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x168c], eax
jne 0x407e8f
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x520], ecx
jmp 0x408158
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 0x407ec1
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x520], eax
jmp 0x408158
mov ecx, dword [ebp - 0x338]
add ecx, dword [ebp - 0x1690]
mov dword [ebp - 0x788], ecx
jne 0x407ee6
mov edx, dword [ebp - 0x794]
mov dword [ebp - 0x520], edx
jmp 0x408158
mov eax, dword [ebp - 0x788]
mov ecx, dword [ebp - 0x338]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x1a14], ecx
mov edx, dword [ebp - 0x788]
mov eax, dword [ebp - 0x338]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x1a18], eax
mov ecx, dword [ebp - 0x788]
mov edx, dword [ebp - 0x338]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x1a1c], edx
mov dword [ebp - 0x78c], 0
jmp 0x407f40
mov ecx, dword [ebp - 0x788]
mov edx, dword [ebp - 0x78c]
cmp edx, dword [ecx + 0x18]
jae 0x40814c
mov eax, dword [ebp - 0x78c]
mov ecx, dword [ebp - 0x1a14]
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 - 0x1a18]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x1a1c]
mov ecx, dword [ebp - 0x338]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1a20], ecx
mov dword [ebp - 0x1a4], 0
jmp 0x407fb0
mov edx, dword [ebp - 0x1a4]
add edx, 1
mov dword [ebp - 0x1a4], edx
mov eax, dword [ebp - 0x790]
add eax, dword [ebp - 0x1a4]
movsx ecx, byte [eax]
test ecx, ecx
je 0x408062
mov edx, dword [ebp - 0x1a4]
movsx eax, byte [ebp + edx - 0x9d4]
test eax, eax
je 0x408062
push ecx
call 0x407feb
add byte [ebx + 0x47], cl
dec esi
xor eax, 0x83464f43
les eax, [ecx + ebx*2]
push edx
jmp 0x407ff5
sub edx, 0xb53b
call 0x40800b
add byte [edx], bh
dec eax
aaa
cmp eax, 0x3a45404e
xor eax, 0x4c48346
pop edx
mov ecx, dword [ebp - 0x790]
add ecx, dword [ebp - 0x1a4]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1a4]
movsx ecx, byte [ebp + eax - 0x9d4]
cmp edx, ecx
je 0x408054
mov edx, dword [ebp - 0x790]
add edx, dword [ebp - 0x1a4]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1a4]
movsx edx, byte [ebp + ecx - 0x9d4]
cmp eax, edx
jne 0x40805b
jmp 0x407fa1
jmp 0x408062
push esi
jmp 0x40806c
call 0x408078
add byte [eax], bh
dec edx
cmp bh, byte [0xc4833341]
add al, 0x81
into
invalid
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x520], eax
mov ecx, dword [ebp - 0x520]
mov dword [ebp - 0xab4], ecx
push eax
push ecx
add esp, 4
call 0x408175
add byte [esi], dh
cmp byte [esi + 0x3b], cl
inc ebp
inc esi
add esp, 4
add eax, 0x80a2
call 0x40818a
add byte [esi], bh
inc esp
dec esi
inc esp
cmp eax, dword [eax - 0x7d]
les eax, [eax + ebx*2]
push eax
sub eax, 0x17ab7
pop eax
mov edx, dword [ebp - 0xab4]
mov dword [ebp - 0x1a24], edx
lea eax, [ebp - 0xce8]
push eax
push 0x40
mov ecx, dword [ebp - 0x1694]
push ecx
mov edx, dword [ebp - 0x3e8]
push edx
call dword [ebp - 0x1a24]
test eax, eax
jne 0x408209
push edx
sub edx, 0x141f8
add edx, 0xa014
call 0x4081dd
add byte [edi + 0x36], al
inc ebp
inc ebx
inc ebp
dec eax
dec edi
add esp, 4
xor edx, 0xfe59
pop edx
push ebx
sub ebx, 0x7fff
or ebx, 0x53c0
pop ebx
mov eax, dword [ebp - 0x79c]
mov dword [ebp - 0x1a28], eax
push 0
call dword [ebp - 0x1a28]
mov ecx, dword [ebp - 0x1a2c]
mov dword [ebp - 0x798], ecx
jmp 0x408226
mov edx, dword [ebp - 0x798]
add edx, 1
mov dword [ebp - 0x798], edx
mov eax, dword [ebp - 0x798]
cmp eax, dword [ebp - 0xab8]
jae 0x408282
push ebx
xor ebx, 0x7a2f
sub ebx, 0x4cf2
add ebx, 0xd065
pop ebx
push eax
push ebx
add esp, 4
add eax, 0x11724
call 0x408262
add byte [edi], bh
aaa
cmp cl, byte [esi + 0x4d]
dec edi
inc esi
add esp, 4
pop eax
movzx ecx, byte [ebp - 0x3ae]
mov edx, dword [ebp - 0x798]
movsx eax, byte [edx]
sub eax, ecx
mov ecx, dword [ebp - 0x798]
mov byte [ecx], al
jmp 0x408217
mov edx, dword [ebp - 0xab4]
mov dword [ebp - 0x1a30], edx
lea eax, [ebp - 0xce8]
push eax
mov ecx, dword [ebp - 0xce8]
push ecx
mov edx, dword [ebp - 0x1694]
push edx
mov eax, dword [ebp - 0x3e8]
push eax
call dword [ebp - 0x1a30]
test eax, eax
jne 0x4082fa
push ebx
push edx
add esp, 4
sub ebx, 0x1068f
pop ebx
push eax
xor eax, 0x2ddc
jmp 0x4082cc
or eax, 0xdb6f
call 0x4082e2
add byte [eax + 0x3e], cl
inc ebp
inc esi
inc esp
cmp dword ss:[ebp + 0x4c], ecx
xor eax, 0x5804c483
mov ecx, dword [ebp - 0x79c]
mov dword [ebp - 0x1a34], ecx
push 0
call dword [ebp - 0x1a34]
push edi
push esi
add esp, 4
xor edi, 0x17e04
or edi, 0x3be9
call 0x408317
add byte [0x4540483d], dh
dec ebp
add esp, 4
sub edi, 0xa929
pop edi
push esi
push eax
add esp, 4
jmp 0x40832b
pop esi
push edx
mov ecx, 0x10101010
pop edx
push ecx
mov ecx, 0xffff05ff
pop ecx
pop eax
in eax, dx
or al, 5
add eax, 0x3f430505
cmp byte [esi + 0x43], cl
dec edx
mov cl, cl
or ebp, ebp
or al, 5
add eax, 0x4b410505
dec edx
cmp al, 0x42
mov cl, cl
or dword [eax + 0x56], esp
push edi
mov cl, cl
or dword [esi + 0x6405eee], eax
add eax, 0x5a8af686
push es
add eax, 0xb98acb5e
add al, 4
dec esp
retf