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

Disassembly:
add esp, 4
pop edi
cmp dword [ebp - 0xcd0], 0
jne 0x406912
mov dword [ebp - 0x774], 0
jmp 0x406b5d
mov edx, dword [ebp - 0xcd0]
mov dword [ebp - 0x518], edx
push ebx
push ebx
add esp, 4
xor ebx, 0x16d89
xor ebx, 0x7fa7
add ebx, 0x369e
or ebx, 0x17e44
pop ebx
push edx
or edx, 0x56f8
jmp 0x406949
jmp 0x40694f
pop edx
lea eax, [ebp - 0x1770]
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
push ebx
add esp, 4
sub eax, 0x113d8
or eax, 0x8f48
pop eax
push eax
push eax
add esp, 4
or eax, 0x3be4
pop eax
push eax
sub eax, 0x10340
or eax, 0xc411
and eax, 0x14329
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
sub eax, 0x44ef
xor eax, 0x3f9e
jmp 0x406a16
call 0x406a25
add byte [eax], bh
inc ebx
inc eax
inc eax
inc ebx
cmp dword ss:[ebx + eax*4], esi
les eax, [eax + ebx*2]
push edi
push edx
add esp, 4
jmp 0x406a34
pop edi
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x406a52
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1668], edx
jmp 0x406aac
movzx ecx, word [ebp - 0x220]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x40697a
movzx eax, word [ebp - 0x220]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x40697a
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x406a96
mov dword [ebp - 0x1624], 0xffffffff
jmp 0x406aa0
mov dword [ebp - 0x1624], 1
mov ecx, dword [ebp - 0x1624]
mov dword [ebp - 0x1668], ecx
cmp dword [ebp - 0x1668], 0
jne 0x406af5
push edi
push esi
add esp, 4
and edi, 0x408d
xor edi, 0xd918
pop edi
push edx
and edx, 0x1f05
pop edx
push ebx
push ecx
add esp, 4
or ebx, 0x191e
or ebx, 0xc8e0
or ebx, 0x551a
pop ebx
mov edx, dword [ebp - 0x518]
mov dword [ebp - 0x774], edx
jmp 0x406b5d
push ebx
push esi
add esp, 4
or ebx, 0x13d5d
sub ebx, 0x4304
pop ebx
push ecx
push edi
add esp, 4
xor ecx, 0x5a0d
pop ecx
push edx
sub edx, 0xfdf9
add edx, 0xdcb1
or edx, 0x3495
pop edx
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 0x406b53
mov eax, dword [ebp - 0x518]
cmp dword [eax + 0x30], 0
jne 0x40691e
mov dword [ebp - 0x774], 0
push eax
push edi
add esp, 4
sub eax, 0x1271f
or eax, 0x7a30
add eax, 0x11b23
and eax, 0x538a
pop eax
push ecx
and ecx, 0x11d3
add ecx, 0xaabf
sub ecx, 0x14e29
pop ecx
cmp dword [ebp - 0x774], 0
jne 0x406bd9
push esi
or esi, 0xbd4
xor esi, 0xb5b0
pop esi
push edi
push edx
add esp, 4
xor edi, 0xba3e
sub edi, 0x1845e
sub edi, 0x90d3
pop edi
push ebx
push eax
add esp, 4
add ebx, 0x15fd3
pop ebx
mov dword [ebp - 0xab4], 0
jmp 0x407701
push eax
push ebx
add esp, 4
or eax, 0x51e1
sub eax, 0x12a43
or eax, 0x8495
pop eax
push ebx
add ebx, 0x14b0a
sub ebx, 0xb893
pop ebx
push ebx
push ebx
add esp, 4
add ebx, 0xb227
pop ebx
mov ecx, dword [ebp - 0x774]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x3a4], edx
mov dword [ebp - 0x784], 0
mov eax, dword [ebp - 0x3a4]
mov dword [ebp - 0x166c], eax
cmp dword [ebp - 0x166c], 0
jne 0x406c4a
mov ecx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], ecx
jmp 0x406f3b
mov edx, dword [ebp - 0x166c]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1670], eax
jne 0x406c72
mov ecx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], ecx
jmp 0x406f3b
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1670]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1678], edx
cmp dword [ebp - 0x1678], 0
jne 0x406ca4
mov eax, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], eax
jmp 0x406f3b
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [ebp - 0x1678]
mov dword [ebp - 0x778], ecx
jne 0x406cc9
mov edx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], edx
jmp 0x406f3b
mov eax, dword [ebp - 0x778]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19f4], ecx
mov edx, dword [ebp - 0x778]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19f8], eax
mov ecx, dword [ebp - 0x778]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x19fc], edx
mov dword [ebp - 0x77c], 0
jmp 0x406d23
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 0x406f2f
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 0x406d93
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 0x406e45
mov edx, dword [ebp - 0x1a0]
movsx eax, byte [ebp + edx - 0x8a4]
test eax, eax
je 0x406e45
push eax
push ecx
add esp, 4
call 0x406dd1
add byte [esi], dh
xor al, 0x37
inc ebp
cmp al, 0x48
add esp, 4
and eax, 0xbbb1
add eax, 0xea57
pop eax
push ecx
push edi
add esp, 4
jmp 0x406deb
or ecx, 0xd16
pop ecx
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 0x406e37
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 0x406e3e
jmp 0x406d84
jmp 0x406e45
push edi
xor edi, 0x5b56
or edi, 0x2dfc
call 0x406e61
add byte [esi + 0x4d], cl
dec ebx
inc ecx
dec esp
cmp esi, dword [edx]
aas
xor al, byte [ebx - 0x107efb3c]
xchg esp, eax
dec ebx
add byte [eax], al
pop edi
push esi
push edx
add esp, 4
sub esi, 0x9663
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 0x406ea4
mov dword [ebp - 0xcd4], 0
jmp 0x406f13
push esi
push edi
add esp, 4
jmp 0x406eb0
jmp 0x406eb8
pop esi
push edi
and edi, 0xad4e
sub edi, 0x11f41
call 0x406ed2
add byte [edi + edi], bh
inc edx
dec ebp
inc edx
dec ebx
add esp, 4
pop edi
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 0x406f09
mov dword [ebp - 0xcd4], 0xffffffff
jmp 0x406f13
mov dword [ebp - 0xcd4], 1
cmp dword [ebp - 0xcd4], 0
jne 0x406f2a
mov edx, dword [ebp - 0x1a00]
mov dword [ebp - 0x3f8], edx
jmp 0x406f3b
jmp 0x406d14
mov eax, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], eax
cmp dword [ebp - 0x3f8], 0
je 0x407016
push edx
and edx, 0x228a
sub edx, 0x5e4f
pop edx
push ebx
call 0x406f63
add byte [ecx*2 + 0x4d404f3b], dh
add esp, 4
jmp 0x406f6d
and ebx, 0x727f
and ebx, 0x10364
pop ebx
mov ecx, dword [ebp - 0x3f8]
mov dword [ebp - 0x1a04], ecx
push eax
push esi
add esp, 4
xor eax, 0x147f2
jmp 0x406f97
pop eax
push ecx
push edx
add esp, 4
sub ecx, 0x31f
add ecx, 0xca99
and ecx, 0x11bd7
pop ecx
push ecx
xor ecx, 0x107cd
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 0x407016
push eax
push esi
add esp, 4
jmp 0x406fe3
and eax, 0xd3b3
add eax, 0xd80f
pop eax
push edi
add edi, 0x2465
pop edi
push esi
jmp 0x407000
xor esi, 0x60f0
pop esi
mov dword [ebp - 0xab4], 0
jmp 0x407701