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

Disassembly:
or esi, 0x8fc0
call 0x406c62
add byte [eax + 0x4f], cl
dec edi
xor al, byte [edi + 0x47]
add esp, 4
jmp 0x406c6c
sub esi, 0x416a
pop esi
push edi
and edi, 0x2a3f
and edi, 0xa526
pop edi
cmp dword [ebp - 0x15a8], 0
jne 0x406c99
mov dword [ebp - 0x2bc], 0
jmp 0x406f40
mov ecx, dword [ebp - 0x15a8]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc68], eax
push eax
call 0x406cb9
add byte [eax + 0x34], cl
dec edx
xor al, 0x43
inc esp
dec ebx
add esp, 4
or eax, 0x34d7
call 0x406cd1
add byte [esi], bh
inc eax
dec eax
dec edx
cmp dword [edx], esi
inc edx
inc ecx
cmp al, byte [ebx + 0x525804c4]
and edx, 0x9391
pop edx
cmp dword [ebp - 0xc68], 0
jne 0x406cf5
mov dword [ebp - 0x2bc], 0
jmp 0x406f40
mov ecx, dword [ebp - 0xc68]
mov dword [ebp - 0x4e0], ecx
push edx
sub edx, 0x15b49
pop edx
push edx
push esi
add esp, 4
or edx, 0x10941
call 0x406d20
add byte [ebx], bh
xor esi, dword [esi]
inc esi
cmp byte [edx], dh
add esp, 4
pop edx
push esi
push ebx
add esp, 4
jmp 0x406d32
pop esi
lea edx, [ebp - 0x1670]
mov dword [ebp - 0xc64], edx
mov eax, dword [ebp - 0x4e0]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc60], ecx
xor edx, edx
mov word [ebp - 0x1cc], dx
xor eax, eax
mov word [ebp - 0x30], ax
push esi
sub esi, 0xa089
pop esi
push ebx
push ebx
add esp, 4
xor ebx, 0x14a2
xor ebx, 0x2096
xor ebx, 0x17c36
pop ebx
push eax
call 0x406d8b
add byte [edx + 0x3a], cl
dec esi
inc ebx
inc edi
inc edx
cmp al, 0x83
les eax, [eax + ebx*2]
mov ecx, dword [ebp - 0xc60]
mov dx, word [ecx]
mov word [ebp - 0xfee], dx
mov eax, dword [ebp - 0xc60]
add eax, 2
mov dword [ebp - 0xc60], eax
mov cx, word [ebp - 0xfee]
mov word [ebp - 0x1cc], cx
mov edx, dword [ebp - 0xc64]
mov ax, word [edx]
mov word [ebp - 0xff0], ax
mov ecx, dword [ebp - 0xc64]
add ecx, 2
mov dword [ebp - 0xc64], ecx
mov dx, word [ebp - 0xff0]
mov word [ebp - 0x30], dx
push eax
push edi
add esp, 4
or eax, 0xed10
add eax, 0x16d31
pop eax
push edi
push edx
add esp, 4
jmp 0x406e03
pop edi
push ecx
or ecx, 0xd3dd
or ecx, 0x15c83
jmp 0x406e17
pop ecx
movzx eax, word [ebp - 0x30]
test eax, eax
jne 0x406e35
movzx ecx, word [ebp - 0x1cc]
movzx edx, word [ebp - 0x30]
sub ecx, edx
mov dword [ebp - 0x15b4], ecx
jmp 0x406e8f
movzx eax, word [ebp - 0x1cc]
movzx ecx, word [ebp - 0x30]
cmp eax, ecx
je 0x406d5d
movzx edx, word [ebp - 0x1cc]
xor edx, 0x20
movzx eax, word [ebp - 0x30]
cmp edx, eax
je 0x406d5d
movzx ecx, word [ebp - 0x1cc]
movzx edx, word [ebp - 0x30]
cmp ecx, edx
jge 0x406e79
mov dword [ebp - 0x15b0], 0xffffffff
jmp 0x406e83
mov dword [ebp - 0x15b0], 1
mov eax, dword [ebp - 0x15b0]
mov dword [ebp - 0x15b4], eax
cmp dword [ebp - 0x15b4], 0
jne 0x406ed8
push esi
push edx
add esp, 4
sub esi, 0xc9f
xor esi, 0x438
or esi, 0x7b16
pop esi
push ecx
call 0x406ec0
add byte [eax + 0x39], dl
xor cl, byte [esi + 0x3c]
inc ebx
inc esp
inc edi
cmp byte [ebx - 0x1e7efb3c], al
sub byte [eax], dl
add byte [ecx - 0x75], bl
lea esp, [eax]
sti
invalid
push edi
push ecx
add esp, 4
add edi, 0xefdd
pop edi
push edi
sub edi, 0xc68f
or edi, 0x283b
pop edi
push ebx
xor ebx, 0x7098
pop ebx
push ecx
and ecx, 0xe174
jmp 0x406f09
pop ecx
mov edx, dword [ebp - 0x4e0]
mov eax, dword [edx]
mov dword [ebp - 0x4e0], eax
mov ecx, dword [ebp - 0x4e0]
cmp ecx, dword [ebp - 0xc68]
je 0x406f36
mov edx, dword [ebp - 0x4e0]
cmp dword [edx + 0x30], 0
jne 0x406d01
mov dword [ebp - 0x2bc], 0
push ecx
or ecx, 0x4c0b
add ecx, 0x16e68
add ecx, 0x15722
or ecx, 0x1220c
pop ecx
push ecx
push edi
add esp, 4
and ecx, 0x14139
add ecx, 0xc8ab
or ecx, 0x11292
pop ecx
mov eax, dword [ebp - 0x2bc]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x328], ecx
push ebx
add ebx, 0x55a3
xor ebx, 0x112cb
xor ebx, 0x13db3
pop ebx
push eax
push ecx
add esp, 4
sub eax, 0xb9a9
pop eax
push ebx
push edi
add esp, 4
xor ebx, 0xddaa
sub ebx, 0x529b
pop ebx
mov dword [ebp - 0x75c], 0
mov edx, dword [ebp - 0x328]
mov dword [ebp - 0x15b8], edx
cmp dword [ebp - 0x15b8], 0
jne 0x406fe3
mov eax, dword [ebp - 0x75c]
mov dword [ebp - 0x4e4], eax
jmp 0x4072d4
mov ecx, dword [ebp - 0x15b8]
mov edx, dword [ebp - 0x328]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x15bc], edx
jne 0x40700b
mov eax, dword [ebp - 0x75c]
mov dword [ebp - 0x4e4], eax
jmp 0x4072d4
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x15bc]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x15c0], ecx
cmp dword [ebp - 0x15c0], 0
jne 0x40703d
mov edx, dword [ebp - 0x75c]
mov dword [ebp - 0x4e4], edx
jmp 0x4072d4
mov eax, dword [ebp - 0x328]
add eax, dword [ebp - 0x15c0]
mov dword [ebp - 0x750], eax
jne 0x407062
mov ecx, dword [ebp - 0x75c]
mov dword [ebp - 0x4e4], ecx
jmp 0x4072d4
mov edx, dword [ebp - 0x750]
mov eax, dword [ebp - 0x328]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x1d8c], eax
mov ecx, dword [ebp - 0x750]
mov edx, dword [ebp - 0x328]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x1d90], edx
mov eax, dword [ebp - 0x750]
mov ecx, dword [ebp - 0x328]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x1d94], ecx
mov dword [ebp - 0x754], 0
jmp 0x4070bc
mov eax, dword [ebp - 0x750]
mov ecx, dword [ebp - 0x754]
cmp ecx, dword [eax + 0x18]
jae 0x4072c8
mov edx, dword [ebp - 0x754]
mov eax, dword [ebp - 0x1d8c]
mov ecx, dword [ebp - 0x328]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x758], ecx
mov edx, dword [ebp - 0x754]
mov eax, dword [ebp - 0x1d90]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x1d94]
mov eax, dword [ebp - 0x328]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x1d98], eax
mov dword [ebp - 0x154], 0
jmp 0x40712c
invalid
mov ecx, dword [ebp - 0x154]
add ecx, 1
mov dword [ebp - 0x154], ecx
mov edx, dword [ebp - 0x758]
add edx, dword [ebp - 0x154]
movsx eax, byte [edx]
test eax, eax
je 0x4071de
mov ecx, dword [ebp - 0x154]
movsx edx, byte [ebp + ecx - 0x854]
test edx, edx
je 0x4071de
push ebx
push ebx
add esp, 4
or ebx, 0x3c38
sub ebx, 0x6ac2
pop ebx
push eax
push esi
add esp, 4
add eax, 0x1641b
add eax, 0xeabd
jmp 0x407184
add eax, 0xb36e
pop eax
mov eax, dword [ebp - 0x758]
test dword [eax + 0x3fffff8], ebp
test dword [esi + edi*8 - 0x41f00001], ebp
or byte [ebx - 0x1536b], cl
dec dword [edi]
mov esi, 0xf7ac1584
invalid
invalid
cmp ecx, eax
je 0x4071d0
mov ecx, dword [ebp - 0x758]
add ecx, dword [ebp - 0x154]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x154]
movsx ecx, byte [ebp + eax - 0x854]
cmp edx, ecx
jne 0x4071d7
jmp 0x40711d
jmp 0x4071de
push eax
xor eax, 0x156d6
invalid
salc
push esi
add dword [eax], eax
or eax, 0x12358
pop eax
push edx
sub edx, 0x6549
pop edx
push ecx
push edi
add esp, 4
jmp 0x4071ff
call 0x40720c
add byte [0x483a4550], dh
dec ebp
xor al, byte [ebx - 0x74a6fb3c]
invalid
xchg ebp, eax
test al, 0xf8
invalid
mov edx, dword [ebp - 0x75c]
mov dword [ebp - 0x4e4], edx
mov eax, dword [ebp - 0x4e4]
mov dword [ebp - 0x788], eax
push ecx
push edi
add esp, 4
and ecx, 0xcc21
call 0x4072f9
add byte [edi + 0x46], al
cmp edi, dword [edi]
cmp eax, 0x83403a38
les eax, [eax + ebp*8]
pop es
add byte [eax], al
add byte [eax], al
xor eax, 0x38393f44
dec edx
add esp, 4
jmp 0x407311
pop ecx
mov ecx, dword [ebp - 0x3cc]
add ecx, 0xe
mov dword [ebp - 0x1de8], ecx
push eax
add eax, 0xb45c
call 0x407337
add byte [ecx + 0x33], cl
dec esi
dec ebp
dec esp
aaa
inc esi
cmp al, 0x34
add esp, 4
pop eax
push esi
push ecx
add esp, 4
call 0x40734f
add byte [esi + edi + 0x48], cl
xor ecx, dword [esi + 0x3c]
dec esp
inc edx
inc esp
add esp, 4
pop esi
cmp dword [ebp - 0x3cc], 0
je 0x407365
cmp dword [ebp - 0xa7c], 0
jne 0x4073ab
push eax
jmp 0x40736c
sub eax, 0x13b09
jmp 0x407379
pop eax
push eax
jmp 0x407383
jmp 0x40738a
sub eax, 0x9349
sub eax, 0x85b9
pop eax
mov edx, dword [ebp - 0x788]
mov dword [ebp - 0x1d9c], edx
push 0
call dword [ebp - 0x1d9c]
mov dword [ebp - 0x1e38], 0xa
push eax
call 0x4073c5
add byte [ecx + 0x38], cl
aaa
inc eax
dec edi
dec eax
inc edi
xor eax, 0x5804c483
push eax
sub eax, 0x10b6c
jmp 0x4073d8
pop eax
push ecx
and ecx, 0xdb9d
and ecx, 0x3dda
pop ecx
mov eax, dword [ebp - 0x3cc]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x392], cl
mov edx, dword [ebp - 0xa7c]
sub edx, dword [ebp - 0x3cc]
mov dword [ebp - 0x1600], edx
mov dword [ebp - 0xc9c], 0
push ebx
push ebx
add esp, 4
and ebx, 0xf4c4
or ebx, 0x1157b
call 0x407433
add byte [ebx], bh
cmp al, 0x4b
dec ebx
dec eax
push eax
xor bh, byte [edi]
cmp dh, byte [edx]
add esp, 4
jmp 0x40743b
pop ebx
push eax
add eax, 0x24a3
pop eax
mov byte [ebp - 0x9a0], 0x56
mov byte [ebp - 0x99f], 0x69
mov byte [ebp - 0x99e], 0x72
mov byte [ebp - 0x99d], 0x74
mov byte [ebp - 0x99c], 0x75
mov byte [ebp - 0x99b], 0x61
mov byte [ebp - 0x99a], 0x6c
mov byte [ebp - 0x999], 0x50
mov byte [ebp - 0x998], 0x72
mov byte [ebp - 0x997], 0x6f
mov byte [ebp - 0x996], 0x74
mov byte [ebp - 0x995], 0x65
mov byte [ebp - 0x994], 0x63
mov byte [ebp - 0x993], 0x74
mov byte [ebp - 0x992], 0
push eax
jmp 0x4074b7
call 0x4074c7
add byte [eax + 0x3c], dl
inc edi
cmp dword [eax + 0x32], eax
cmp edx, dword [eax + 0x44]
inc edi
add esp, 4
add eax, 0x14c1d
or eax, 0x1142c
pop eax
push eax
or eax, 0x49f6
pop eax
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1da0], eax
mov ecx, dword [ebp - 0x1da0]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1da4], edx
mov eax, dword [ebp - 0x1da4]
mov dword [ebp - 0x15c4], eax
push edx
or edx, 0x146ee
call 0x40751d
add byte [esi + 0x48], al
cmp al, 0x4a
cmp al, 0x40
push eax
dec edx
dec ebp
cmp al, byte [ebx + 0x575a04c4]
push eax
add esp, 4
and edi, 0x17ef3
pop edi
push ecx
jmp 0x407537
pop ecx
cmp dword [ebp - 0x15c4], 0
jne 0x407550
mov dword [ebp - 0x2c0], 0
jmp 0x4077f7
mov ecx, dword [ebp - 0x15c4]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc78], eax
push ecx
add ecx, 0x5d7
and ecx, 0xdbd2
add ecx, 0x11d43
or ecx, 0x84e8
pop ecx
push esi
push ebx
add esp, 4
or esi, 0x3e33
xor esi, 0xcdc3
test bl, 0xcd
add byte [eax], al
sub esi, 0xfb3
pop esi
cmp dword [ebp - 0xc78], 0
jne 0x4075ac
mov dword [ebp - 0x2c0], 0
jmp 0x4077f7
mov ecx, dword [ebp - 0xc78]
mov dword [ebp - 0x4e8], ecx