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

Disassembly:
push ecx
push ecx
add esp, 4
sub ecx, 0xfb2f
pop ecx
push eax
xor eax, 0xa339
pop eax
push ebx
push edi
add esp, 4
sub ebx, 0x8dcf
or ebx, 0x14d02
sub ebx, 0x15b86
add ebx, 0xaa6d
pop ebx
lea edx, [ebp - 0x1740]
mov dword [ebp - 0xcc4], edx
mov eax, dword [ebp - 0x518]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xcc0], ecx
xor edx, edx
mov word [ebp - 0x21c], dx
xor eax, eax
mov word [ebp - 0x38], ax
push ebx
push ecx
add esp, 4
xor ebx, 0x61c
pop ebx
push esi
and esi, 0xa048
add esi, 0xe14b
and esi, 0x6a9
call fcn.00406af0
add byte [edi + 0x45], cl
inc ecx
dec edi
dec edx
xor al, 0x3c
cmp eax, 0x4c48340
add esp, 4
add esp, 4
pop esi
mov ecx, dword [ebp - 0xcc0]
mov dx, word [ecx]
mov word [ebp - 0x1042], dx
mov eax, dword [ebp - 0xcc0]
add eax, 2
mov dword [ebp - 0xcc0], eax
mov cx, word [ebp - 0x1042]
mov word [ebp - 0x21c], cx
mov edx, dword [ebp - 0xcc4]
mov ax, word [edx]
mov word [ebp - 0x1044], ax
mov ecx, dword [ebp - 0xcc4]
add ecx, 2
mov dword [ebp - 0xcc4], ecx
mov dx, word [ebp - 0x1044]
mov word [ebp - 0x38], dx
push edi
push edx
add esp, 4
and edi, 0xd4e3
pop edi
push edx
push ecx
add esp, 4
add edx, 0x168b4
pop edx
push esi
xor esi, 0x70be
jmp 0x406b70
or esi, 0x14167
xor esi, 0x16110
pop esi
movzx eax, word [ebp - 0x38]
test eax, eax
jne 0x406b9a
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
sub ecx, edx
mov dword [ebp - 0x1624], ecx
jmp 0x406bf4
movzx eax, word [ebp - 0x21c]
movzx ecx, word [ebp - 0x38]
cmp eax, ecx
je 0x406ac2
movzx edx, word [ebp - 0x21c]
xor edx, 0x20
movzx eax, word [ebp - 0x38]
cmp edx, eax
je 0x406ac2
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
cmp ecx, edx
jge 0x406bde
mov dword [ebp - 0x1620], 0xffffffff
jmp 0x406be8
mov dword [ebp - 0x1620], 1
mov eax, dword [ebp - 0x1620]
mov dword [ebp - 0x1624], eax
cmp dword [ebp - 0x1624], 0
jne 0x406c3d
push ecx
and ecx, 0xc106
xor ecx, 0x14a5b
pop ecx
push ecx
or ecx, 0x880
and ecx, 0x3607
call 0x406c25
add byte [0x4c454f3a], dh
inc eax
inc ebx
add esp, 4
or ecx, 0xe695
pop ecx
mov ecx, dword [ebp - 0x518]
mov dword [ebp - 0x2f4], ecx
jmp 0x406ca5
push eax
push ebx
add esp, 4
sub eax, 0x12c2c
sub eax, 0x8d94
and eax, 0x50d5
pop eax
push ebx
xor ebx, 0xbda7
xor ebx, 0x239a
xor ebx, 0x8835
xor ebx, 0x75ec
pop ebx
mov edx, dword [ebp - 0x518]
mov eax, dword [edx]
mov dword [ebp - 0x518], eax
mov ecx, dword [ebp - 0x518]
cmp ecx, dword [ebp - 0xcc8]
je 0x406c9b
mov edx, dword [ebp - 0x518]
cmp dword [edx + 0x30], 0
jne 0x406a66
mov dword [ebp - 0x2f4], 0
push ebx
push edx
add esp, 4
add ebx, 0x13b4f
and ebx, 0x15ef8
xor ebx, 0xe80e
pop ebx
push eax
push ebx
add esp, 4
or eax, 0x72ca
add eax, 0x6b16
pop eax
push edx
and edx, 0x18278
pop edx
cmp dword [ebp - 0x2f4], 0
jne 0x4075dc
mov eax, 0x6b
mov word [ebp - 0x17c8], ax
mov ecx, 0x65
mov word [ebp - 0x17c6], cx
mov edx, 0x72
mov word [ebp - 0x17c4], dx
mov eax, 0x6e
mov word [ebp - 0x17c2], ax
mov ecx, 0x65
mov word [ebp - 0x17c0], cx
mov edx, 0x6c
mov word [ebp - 0x17be], dx
mov eax, 0x33
mov word [ebp - 0x17bc], ax
mov ecx, 0x32
mov word [ebp - 0x17ba], cx
mov edx, 0x2e
mov word [ebp - 0x17b8], dx
mov eax, 0x64
mov word [ebp - 0x17b6], ax
mov ecx, 0x6c
mov word [ebp - 0x17b4], cx
mov edx, 0x6c
mov word [ebp - 0x17b2], dx
xor eax, eax
mov word [ebp - 0x17b0], ax
push esi
push edx
add esp, 4
and esi, 0xa3b9
sub esi, 0x14b60
call 0x406d9a
add byte [ecx + 0x3a], al
dec ebp
dec esi
xor al, 0x3d
add esp, 4
pop esi
push edx
push edi
add esp, 4
jmp 0x406da8
add edx, 0xaf47
pop edx
mov byte [ebp - 0x8a8], 0x4c
mov byte [ebp - 0x8a7], 0x6f
mov byte [ebp - 0x8a6], 0x61
mov byte [ebp - 0x8a5], 0x64
mov byte [ebp - 0x8a4], 0x4c
mov byte [ebp - 0x8a3], 0x69
mov byte [ebp - 0x8a2], 0x62
mov byte [ebp - 0x8a1], 0x72
mov byte [ebp - 0x8a0], 0x61
mov byte [ebp - 0x89f], 0x72
mov byte [ebp - 0x89e], 0x79
mov byte [ebp - 0x89d], 0x57
mov byte [ebp - 0x89c], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x19d0], ecx
mov edx, dword [ebp - 0x19d0]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x19d4], eax
mov ecx, dword [ebp - 0x19d4]
mov dword [ebp - 0x1628], ecx
push edi
push ecx
add esp, 4
jmp 0x406e3c
or edi, 0x16ecc
jmp 0x406e4b
pop edi
push eax
push eax
add esp, 4
add eax, 0x157cb
xor eax, 0xa198
jmp 0x406e63
pop eax
cmp dword [ebp - 0x1628], 0
jne 0x406e7c
mov dword [ebp - 0x778], 0
jmp 0x407123
mov edx, dword [ebp - 0x1628]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcd4], ecx
push ebx
push edi
add esp, 4
jmp 0x406e9b
jmp 0x406ea0
add ebx, 0x837c
jmp 0x406ead
pop ebx
push ecx
push edx
add esp, 4
jmp 0x406eb9
xor eax, dword ss:[ecx + 0xc9aae1]
add byte [ecx - 0x7d], bl
mov ebp, 0xfffff32c
add byte [ebp + 0xf], dh
and ecx, 0xc9aa
pop ecx
cmp dword [ebp - 0xcd4], 0
jne 0x406ed8
mov dword [ebp - 0x778], 0
jmp 0x407123
mov edx, dword [ebp - 0xcd4]
mov dword [ebp - 0x51c], edx
push ecx
and ecx, 0x135c
sub ecx, 0x111be
pop ecx
push ebx
jmp 0x406ef9
call 0x406f06
add byte [ecx + 0x34], cl
cmp byte [0x8337363d], dh
les eax, [ecx + eax*4]
jecxz 0x406eb7
inc ebp
add byte [eax], al
add ebx, 0x108c
pop ebx
lea eax, [ebp - 0x17c8]
mov dword [ebp - 0xcd0], eax
mov ecx, dword [ebp - 0x51c]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xccc], edx
xor eax, eax
mov word [ebp - 0x220], ax
xor ecx, ecx
mov word [ebp - 0x3c], cx
push eax
push esi
add esp, 4
add eax, 0x1039f
add eax, 0x12ce9
pop eax
push ecx
push ebx
add esp, 4
xor ecx, 0x104da
xor ecx, 0x15a42
and ecx, 0xca1b
pop ecx
push ecx
xor ecx, 0xb57e
pop ecx
mov edx, dword [ebp - 0xccc]
mov ax, word [edx]
mov word [ebp - 0x1046], ax
mov ecx, dword [ebp - 0xccc]
add ecx, 2
mov dword [ebp - 0xccc], ecx
mov dx, word [ebp - 0x1046]
mov word [ebp - 0x220], dx
mov eax, dword [ebp - 0xcd0]
mov cx, word [eax]
mov word [ebp - 0x1048], cx
mov edx, dword [ebp - 0xcd0]
add edx, 2
mov dword [ebp - 0xcd0], edx
mov ax, word [ebp - 0x1048]
mov word [ebp - 0x3c], ax
push edi
xor edi, 0x17ee9
xor edi, 0x4ce7
jmp 0x406fde
pop edi
push eax
xor eax, 0x3394
add eax, 0x181fa
pop eax
push ecx
or ecx, 0x21f4
sub ecx, 0x834b
pop ecx
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x407018
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1670], edx
jmp 0x407072
movzx ecx, word [ebp - 0x220]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x406f40
movzx eax, word [ebp - 0x220]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x406f40
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x40705c
mov dword [ebp - 0x162c], 0xffffffff
jmp 0x407066
mov dword [ebp - 0x162c], 1
mov ecx, dword [ebp - 0x162c]
mov dword [ebp - 0x1670], ecx
cmp dword [ebp - 0x1670], 0
jne 0x4070bb
push eax
push ecx
add esp, 4
jmp 0x407088
pop eax
push edi
add edi, 0xc0bf
xor edi, 0x16e53
pop edi
push edx
jmp 0x4070a0
jmp 0x4070a6
or edx, 0x13936
pop edx
mov edx, dword [ebp - 0x51c]
mov dword [ebp - 0x778], edx
jmp 0x407123
push ecx
push ebx
add esp, 4
xor ecx, 0x85d0
pop ecx
push esi
push eax
add esp, 4
xor esi, 0x10ced
pop esi
push eax
push ebx
add esp, 4
jmp 0x4070de
pop eax
push ecx
add ecx, 0x11d0a
or ecx, 0x5248
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 - 0xcd4]
je 0x407119
mov eax, dword [ebp - 0x51c]
cmp dword [eax + 0x30], 0
jne 0x406ee4
mov dword [ebp - 0x778], 0
push edi
push ebx
add esp, 4
and edi, 0x16615
pop edi
push ebx
and ebx, 0x15785
or ebx, 0x683b
and ebx, 0xa9d9
pop ebx
push esi
call 0x407151
add byte [edx + edi], dh
cmp eax, dword [edx + 0x38]
dec esi
add esp, 4
pop esi
cmp dword [ebp - 0x778], 0
jne 0x40719f
push edi
sub edi, 0x1123d
pop edi
push edi
push esi
add esp, 4
call 0x407178
add byte [ebp + 0x36], cl
cmp eax, dword [eax + 0x3c]
aaa
aaa
add esp, 4
xor edi, 0x4cad
sub edi, 0x16ba1
jmp 0x40718f
pop edi
mov dword [ebp - 0xac0], 0
jmp 0x407cc7
push eax
and eax, 0x4dea
pop eax
push ebx
sub ebx, 0x12a92
jmp 0x4071b7
pop ebx
push edx
call 0x4071c7
add byte [esp + edi + 0x41], cl
dec ecx
aaa
inc edx
aas
xor al, 0x83
les eax, [ecx + eax*4]
ljmp 0x8b5a
push ecx
or ecx, 0x119ac
jmp 0x4075eb
pop ecx
push ecx
jmp 0x4075f6
call 0x407604
add byte [edi], bh
cmp eax, dword [ebx + 0x50]
xor eax, 0x83393f38
les eax, [ecx + eax*4]
leave
inc dword [ebx + 0x64590001]
mov ecx, dword [0x18]
mov dword [ebp - 0x19f0], ecx
mov edx, dword [ebp - 0x19f0]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x19f4], eax
mov ecx, dword [ebp - 0x19f4]
mov dword [ebp - 0x1684], ecx
push esi
push esi
add esp, 4
xor esi, 0xbee
or esi, 0x14686
and esi, 0xb620
pop esi
push eax
push edx
add esp, 4
or eax, 0x2e99
add eax, 0xa906
pop eax
push eax
sub eax, 0x70c9
pop eax
cmp dword [ebp - 0x1684], 0
jne 0x407680
mov dword [ebp - 0x2f4], 0
jmp 0x407927
mov edx, dword [ebp - 0x1684]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xce4], ecx
push ecx
push edx
add esp, 4
add ecx, 0x142a4
and ecx, 0x42a5
or ecx, 0x1f50
pop ecx
push eax
or eax, 0xc901
pop eax
push ecx
push edi
add esp, 4
xor ecx, 0x183cd
xor ecx, 0xfd8e
pop ecx
cmp dword [ebp - 0xce4], 0
jne 0x4076dc
mov dword [ebp - 0x2f4], 0
jmp 0x407927
mov edx, dword [ebp - 0xce4]
mov dword [ebp - 0x520], edx
push esi
add esi, 0x6ec5
call 0x4076fd
add byte [eax + edx*2 + 0x40], al
inc esi
cmp esi, dword [ebx]
dec esp
cmp al, byte [ebx + 0xbe804c4]
add byte [eax], al
add byte [eax], al
xor al, 0x4f
cmp dword [esi + 0x35], eax
cmp byte [eax + 0x4b], dl
dec ecx
aas
add esp, 4
xor esi, 0x5712
pop esi
lea eax, [ebp - 0x1740]
mov dword [ebp - 0xce0], eax
mov ecx, dword [ebp - 0x520]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcdc], edx
xor eax, eax
mov word [ebp - 0x224], ax
xor ecx, ecx
mov word [ebp - 0x40], cx
push esi
push edx
add esp, 4
add esi, 0x1031f
or esi, 0x6de4
call 0x407765
add byte [ecx + 0x43], al
xor al, byte [edx + 0x37]
inc ebx
cmp al, 0x3a
dec esi
inc ebp
add esp, 4
pop esi
push edx
or edx, 0xcf6d
jmp 0x407775
pop edx
mov edx, dword [ebp - 0xcdc]
mov ax, word [edx]
mov word [ebp - 0x104a], ax
mov ecx, dword [ebp - 0xcdc]
add ecx, 2
mov dword [ebp - 0xcdc], ecx
mov dx, word [ebp - 0x104a]
mov word [ebp - 0x224], dx
mov eax, dword [ebp - 0xce0]
mov cx, word [eax]
mov word [ebp - 0x104c], cx
mov edx, dword [ebp - 0xce0]
add edx, 2
mov dword [ebp - 0xce0], edx
mov ax, word [ebp - 0x104c]
mov word [ebp - 0x40], ax
push eax
push esi
add esp, 4
jmp 0x4077d9
pop eax
push eax
push ebx
add esp, 4
call 0x4077ef
add byte [esi + 0x3c], al
xor al, 0x4c
aas
aas
xor bh, byte [eax]
inc edi
dec eax
add esp, 4
add eax, 0x11286
or eax, 0x9976
pop eax
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x40781c
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x168c], edx
jmp 0x407876
movzx ecx, word [ebp - 0x224]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
je 0x407744
movzx eax, word [ebp - 0x224]
xor eax, 0x20
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x407744
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
cmp edx, eax
jge 0x407860
mov dword [ebp - 0x1688], 0xffffffff
jmp 0x40786a
mov dword [ebp - 0x1688], 1
mov ecx, dword [ebp - 0x1688]
mov dword [ebp - 0x168c], ecx
cmp dword [ebp - 0x168c], 0
jne 0x4078bf
push esi
push esi
add esp, 4
add esi, 0x1276b
pop esi
push ecx
push eax
add esp, 4
and ecx, 0x130c8
and ecx, 0x10564
xor ecx, 0x4327
pop ecx
push eax
and eax, 0xa598
and eax, 0x12d23
pop eax
mov edx, dword [ebp - 0x520]
mov dword [ebp - 0x2f4], edx
jmp 0x407927
push edx
sub edx, 0xade1
jmp 0x4078cc
call 0x4078d9
add byte [0x4d464246], bh
dec edx
cmp eax, 0x8104c483
ljmp 0x525a
push edi
push edi
add esp, 4
jmp 0x407932
xor edi, 0x119aa
pop edi
push eax
and eax, 0x15a4
add eax, 0x16c94
pop eax
push edx
push edx
add esp, 4
and edx, 0x3a7a
sub edx, 0xb75
pop edx
mov ecx, dword [ebp - 0x2f4]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x36c], edx
push edi
sub edi, 0x102b3
sub edi, 0x468d
xor edi, 0x4d85
pop edi
push esi
push ecx
add esp, 4
and esi, 0x11c5c
and esi, 0xa9f0
and esi, 0xc095
and esi, 0xf190
pop esi
mov dword [ebp - 0x798], 0
mov eax, dword [ebp - 0x36c]
mov dword [ebp - 0x1690], eax
cmp dword [ebp - 0x1690], 0
jne 0x4079ca
mov ecx, dword [ebp - 0x798]
mov dword [ebp - 0x524], ecx
jmp 0x407cbb
mov edx, dword [ebp - 0x1690]
mov eax, dword [ebp - 0x36c]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1694], eax
jne 0x4079f2
mov ecx, dword [ebp - 0x798]
mov dword [ebp - 0x524], ecx
jmp 0x407cbb
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1694]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1698], edx
cmp dword [ebp - 0x1698], 0
jne 0x407a24
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x524], eax
jmp 0x407cbb
mov ecx, dword [ebp - 0x36c]
add ecx, dword [ebp - 0x1698]
mov dword [ebp - 0x78c], ecx
jne 0x407a49
mov edx, dword [ebp - 0x798]
mov dword [ebp - 0x524], edx
jmp 0x407cbb
mov eax, dword [ebp - 0x78c]
mov ecx, dword [ebp - 0x36c]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19f8], ecx
mov edx, dword [ebp - 0x78c]
mov eax, dword [ebp - 0x36c]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19fc], eax
mov ecx, dword [ebp - 0x78c]
mov edx, dword [ebp - 0x36c]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x1a00], edx
mov dword [ebp - 0x790], 0
jmp 0x407aa3
mov eax, dword [ebp - 0x790]
add eax, 1
mov dword [ebp - 0x790], eax
mov ecx, dword [ebp - 0x78c]
mov edx, dword [ebp - 0x790]
cmp edx, dword [ecx + 0x18]
jae 0x407caf
mov eax, dword [ebp - 0x790]
mov ecx, dword [ebp - 0x19f8]
mov edx, dword [ebp - 0x36c]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x794], edx
mov eax, dword [ebp - 0x790]
mov ecx, dword [ebp - 0x19fc]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x1a00]
mov ecx, dword [ebp - 0x36c]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1a04], ecx
mov dword [ebp - 0x1a0], 0
jmp 0x407b13
mov edx, dword [ebp - 0x1a0]
add edx, 1
mov dword [ebp - 0x1a0], edx
mov eax, dword [ebp - 0x794]
add eax, dword [ebp - 0x1a0]
movsx ecx, byte [eax]
test ecx, ecx
je 0x407bc5
mov edx, dword [ebp - 0x1a0]
movsx eax, byte [ebp + edx - 0x9d8]
test eax, eax
je 0x407bc5
push esi
push ecx
add esp, 4
sub esi, 0xb0ad
add esi, 0xd84c
or esi, 0x67b0
jmp 0x407b5e
pop esi
push edx
push edx
add esp, 4
xor edx, 0x13749
jmp 0x407b71
pop edx
mov ecx, dword [ebp - 0x794]
add ecx, dword [ebp - 0x1a0]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1a0]
movsx ecx, byte [ebp + eax - 0x9d8]
cmp edx, ecx
je 0x407bb7
mov edx, dword [ebp - 0x794]
add edx, dword [ebp - 0x1a0]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1a0]
movsx edx, byte [ebp + ecx - 0x9d8]
cmp eax, edx
jne 0x407bbe
jmp 0x407b04
jmp 0x407bc5
push eax
sub eax, 0x5127
pop eax
push ebx
push esi
add esp, 4
or ebx, 0x17387
pop ebx
push esi
sub esi, 0x4234
add esi, 0x8657
pop esi
push edx
or edx, 0x72e2
pop edx
push ebx
xor ebx, 0xd8a
pop ebx
mov eax, dword [ebp - 0x794]
add eax, dword [ebp - 0x1a0]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1a0]
movsx eax, byte [ebp + edx - 0x9d8]
cmp ecx, eax
jne 0x407c24
mov dword [ebp - 0xce8], 0
jmp 0x407c93
push ebx
push ebx
add esp, 4
add ebx, 0x16fa7
add ebx, 0x6cf7
or ebx, 0x71dc
xor ebx, 0xc45b
pop ebx
push esi
push esi
add esp, 4
xor esi, 0x13211
jmp 0x407c55
pop esi
mov ecx, dword [ebp - 0x794]
add ecx, dword [ebp - 0x1a0]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x1a0]
movsx ecx, byte [ebp + eax - 0x9d8]
or ecx, 0x20
cmp edx, ecx
jge 0x407c89
mov dword [ebp - 0xce8], 0xffffffff
jmp 0x407c93
mov dword [ebp - 0xce8], 1
cmp dword [ebp - 0xce8], 0
jne 0x407caa
mov edx, dword [ebp - 0x1a04]
mov dword [ebp - 0x524], edx
jmp 0x407cbb
jmp 0x407a94
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x524], eax
mov ecx, dword [ebp - 0x524]
mov dword [ebp - 0xac0], ecx
push ecx
add ecx, 0xd93e
and ecx, 0x1c9d
or ecx, 0x346a
sub ecx, 0x83d5
pop ecx
push edx
push ecx
add esp, 4
or edx, 0x10440
pop edx
push edx
push eax
add esp, 4
add edx, 0x17bb5
pop edx
mov edx, dword [ebp - 0xac0]
mov dword [ebp - 0x1a08], edx
lea eax, [ebp - 0xcec]
push eax
push 0x40
mov ecx, dword [ebp - 0x169c]
push ecx
mov edx, dword [ebp - 0x3e4]
push edx
call dword [ebp - 0x1a08]
test eax, eax
jne 0x407d6c
push ebx
push ebx
add esp, 4
and ebx, 0xfa6
add ebx, 0x425a
and ebx, 0x16996
pop ebx
push edi
or edi, 0x1239b
sub edi, 0x3fda
and edi, 0x1730
add edi, 0x126fa
pop edi
mov eax, dword [ebp - 0x7a0]
mov dword [ebp - 0x1a0c], eax
push 0
call dword [ebp - 0x1a0c]
mov ecx, dword [ebp - 0x1a10]
mov dword [ebp - 0x79c], ecx
jmp 0x407d89
mov eax, dword [ebp - 0x79c]
cmp eax, dword [ebp - 0xac4]
jae 0x407de5
push esi
push edi
add esp, 4
or esi, 0x5b9e
pop esi
push ebx
add ebx, 0x522b
call 0x407db9
add byte [0x443d3b4a], dh
dec ebx
xor eax, 0xc483493c
add al, 0x81
ret
mov edx, dword [ebp - 0xac0]
mov dword [ebp - 0x1a14], edx
lea eax, [ebp - 0xcec]
push eax
mov ecx, dword [ebp - 0xcec]
push ecx
mov edx, dword [ebp - 0x169c]
push edx
mov eax, dword [ebp - 0x3e4]
push eax
call dword [ebp - 0x1a14]
test eax, eax
jne 0x407e5d
push ebx
sub ebx, 0x1663b
pop ebx
push esi
push ebx
add esp, 4
call 0x407e31
add byte [esi], bh
inc ebx
cmp al, 0x40
push eax
xor eax, dword [ebx + 0x535e04c4]
add ebx, 0xdefe
jmp 0x407e42
xor ebx, 0x16e6
pop ebx
mov ecx, dword [ebp - 0x7a0]
mov dword [ebp - 0x1a18], ecx
push 0
call dword [ebp - 0x1a18]
push eax
push ebx
add esp, 4
xor eax, 0xbd8f
add eax, 0x16919
pop eax
push esi
push edx
add esp, 4
xor esi, 0x15e2f
jmp 0x407e82
pop esi
push esi
push ebx
add esp, 4
xor esi, 0x7eac
pop esi
push edx
mov ecx, 0x10101010
pop edx
push ecx
mov ecx, 0xffff07ff
pop ecx
pop esi
mov dh, dl
xchg dl, bh
pop es
pop es
or edi, dword [ebx]
dec edx
inc edx
inc esp
pop cx
mov cl, dh
inc esi
xlatb
pop es
pop es
mov cl, cl
mov edi, 0xef070847
sysret