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

Disassembly:
push edi
push edx
add esp, 4
xor edi, 0xd000
pop edi
push ecx
push edi
add esp, 4
sub ecx, 0xed63
call 0x493bce
add byte [eax], bh
dec edx
cmp dword [ecx + 0x48], ecx
dec edi
dec ecx
cmp eax, dword [ebx + 0x7eb04c4]
aas
cmp dword [edi + 0x44], ecx
cmp al, 0x40
pop ecx
lea edx, [ebp - 0x17ac]
mov dword [ebp - 0xca4], edx
mov eax, dword [ebp - 0x50c]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xca0], ecx
xor edx, edx
mov word [ebp - 0x214], dx
xor eax, eax
mov word [ebp - 0x110], ax
push edi
jmp 0x493c11
add edi, 0x10542
pop edi
push edi
xor edi, 0xc5df
xor edi, 0x8427
sub edi, 0x14b0e
pop edi
push ecx
or ecx, 0xadfe
sub ecx, 0x10430
pop ecx
mov ecx, dword [ebp - 0xca0]
mov dx, word [ecx]
mov word [ebp - 0x103a], dx
mov eax, dword [ebp - 0xca0]
add eax, 2
mov dword [ebp - 0xca0], eax
mov cx, word [ebp - 0x103a]
mov word [ebp - 0x214], cx
mov edx, dword [ebp - 0xca4]
mov ax, word [edx]
mov word [ebp - 0x103c], ax
mov ecx, dword [ebp - 0xca4]
add ecx, 2
mov dword [ebp - 0xca4], ecx
mov dx, word [ebp - 0x103c]
mov word [ebp - 0x110], dx
push ebx
jmp 0x493c9a
call 0x493ca8
add byte [edx + ecx*2 + 0x49], cl
inc edx
inc eax
cmp eax, 0xc4834140
add al, 0x81
jl 0x493cf4
add byte [eax], al
pop ebx
push ecx
and ecx, 0x25f4
or ecx, 0xd398
add ecx, 0xb31c
pop ecx
movzx eax, word [ebp - 0x110]
test eax, eax
jne 0x493ce9
movzx ecx, word [ebp - 0x214]
movzx edx, word [ebp - 0x110]
sub ecx, edx
mov dword [ebp - 0x15f4], ecx
jmp 0x493d4c
movzx eax, word [ebp - 0x214]
movzx ecx, word [ebp - 0x110]
cmp eax, ecx
je 0x493c08
invalid
movzx edx, word [ebp - 0x214]
xor edx, 0x20
movzx eax, word [ebp - 0x110]
cmp edx, eax
je 0x493c08
movzx ecx, word [ebp - 0x214]
movzx edx, word [ebp - 0x110]
cmp ecx, edx
jge 0x493d36
mov dword [ebp - 0x15f0], 0xffffffff
jmp 0x493d40
mov dword [ebp - 0x15f0], 1
mov eax, dword [ebp - 0x15f0]
mov dword [ebp - 0x15f4], eax
cmp dword [ebp - 0x15f4], 0
jne 0x493d95
push edi
push eax
add esp, 4
jmp 0x493d63
call 0x493d6f
add byte [edx], bh
aaa
aas
dec esp
cmp al, byte [ebx - 0x387efb3c]
popal
rol dword [eax], 0
and edi, 0x156a3
pop edi
push edx
xor edx, 0x5df6
pop edx
mov ecx, dword [ebp - 0x50c]
mov dword [ebp - 0x754], ecx
jmp 0x493dfd
push edx
sub edx, 0xe74e
jmp 0x493da3
jmp 0x493da8
pop edx
push edx
push ebx
add esp, 4
or edx, 0x6482
sub edx, 0x1ece
xor edx, 0x44b8
or edx, 0xd344
pop edx
mov edx, dword [ebp - 0x50c]
mov eax, dword [edx]
mov dword [ebp - 0x50c], eax
mov ecx, dword [ebp - 0x50c]
cmp ecx, dword [ebp - 0xca8]
je 0x493df3
mov edx, dword [ebp - 0x50c]
cmp dword [edx + 0x30], 0
jne 0x493ba9
mov dword [ebp - 0x754], 0
push ecx
push eax
add esp, 4
and ecx, 0x12809
pop ecx
push edx
or edx, 0x169cc
sub edx, 0x5373
pop edx
push ecx
sub ecx, 0xbf9
call 0x493e2b
add byte [edi], dh
cmp eax, 0x3750323f
dec ebx
add esp, 4
pop ecx
cmp dword [ebp - 0x754], 0
jne 0x493e79
push eax
push ecx
add esp, 4
call 0x493e4a
add byte [edi + ecx*2], bh
xor al, 0x3d
inc ebx
inc ecx
add esp, 4
pop eax
push eax
push edi
add esp, 4
call 0x493e60
add byte [ebx + 0x42], cl
inc ebp
cmp dword [edx + 0x44], ecx
dec esp
add esp, 4
add eax, 0x17f2f
pop eax
mov dword [ebp - 0x7a0], 0
jmp 0x4949a0
push eax
or eax, 0x18288
add eax, 0x166ed
add eax, 0xa273
and eax, 0x2c30
pop eax
push edx
push edi
add esp, 4
sub edx, 0x26c9
and edx, 0x18af
xor edx, 0x14898
pop edx
mov eax, dword [ebp - 0x754]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x320], ecx
mov dword [ebp - 0x764], 0
mov edx, dword [ebp - 0x320]
mov dword [ebp - 0x15f8], edx
cmp dword [ebp - 0x15f8], 0
jne 0x493eea
mov eax, dword [ebp - 0x764]
mov dword [ebp - 0x3f8], eax
jmp 0x4941db
mov ecx, dword [ebp - 0x15f8]
mov edx, dword [ebp - 0x320]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x15fc], edx
jne 0x493f12
mov eax, dword [ebp - 0x764]
mov dword [ebp - 0x3f8], eax
jmp 0x4941db
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x15fc]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x1600], ecx
cmp dword [ebp - 0x1600], 0
jne 0x493f44
mov edx, dword [ebp - 0x764]
mov dword [ebp - 0x3f8], edx
jmp 0x4941db
mov eax, dword [ebp - 0x320]
add eax, dword [ebp - 0x1600]
mov dword [ebp - 0x758], eax
jne 0x493f69
mov ecx, dword [ebp - 0x764]
mov dword [ebp - 0x3f8], ecx
jmp 0x4941db
mov edx, dword [ebp - 0x758]
mov eax, dword [ebp - 0x320]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x1998], eax
mov ecx, dword [ebp - 0x758]
mov edx, dword [ebp - 0x320]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x199c], edx
mov eax, dword [ebp - 0x758]
mov ecx, dword [ebp - 0x320]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x19a0], ecx
mov dword [ebp - 0x75c], 0
jmp 0x493fc3
mov edx, dword [ebp - 0x75c]
add edx, 1
mov dword [ebp - 0x75c], edx
mov eax, dword [ebp - 0x758]
mov ecx, dword [ebp - 0x75c]
cmp ecx, dword [eax + 0x18]
jae 0x4941cf
mov edx, dword [ebp - 0x75c]
mov eax, dword [ebp - 0x1998]
mov ecx, dword [ebp - 0x320]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x760], ecx
mov edx, dword [ebp - 0x75c]
mov eax, dword [ebp - 0x199c]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x19a0]
mov eax, dword [ebp - 0x320]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x19a4], eax
mov dword [ebp - 0x194], 0
jmp 0x494033
mov ecx, dword [ebp - 0x194]
add ecx, 1
mov dword [ebp - 0x194], ecx
mov edx, dword [ebp - 0x760]
add edx, dword [ebp - 0x194]
movsx eax, byte [edx]
test eax, eax
je 0x4940e5
mov ecx, dword [ebp - 0x194]
movsx edx, byte [ebp + ecx - 0x898]
test edx, edx
je 0x4940e5
push ebx
push esi
add esp, 4
or ebx, 0x2ea4
or ebx, 0x1420b
add ebx, 0x30a1
and ebx, 0xfb73
pop ebx
push ebx
add ebx, 0x5712
pop ebx
push eax
push ecx
add esp, 4
xor eax, 0x154e
pop eax
mov eax, dword [ebp - 0x760]
add eax, dword [ebp - 0x194]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x194]
movsx eax, byte [ebp + edx - 0x898]
cmp ecx, eax
je 0x4940d7
mov ecx, dword [ebp - 0x760]
add ecx, dword [ebp - 0x194]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x194]
movsx ecx, byte [ebp + eax - 0x898]
cmp edx, ecx
jne 0x4940de
jmp 0x494024
jmp 0x4940e5
push eax
push esi
add esp, 4
add eax, 0x175cb
xor eax, 0x135cd
and eax, 0x8f82
pop eax
push eax
push eax
add esp, 4
or eax, 0x605e
jmp 0x494110
sub eax, 0x17929
pop eax
mov edx, dword [ebp - 0x760]
add edx, dword [ebp - 0x194]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x194]
movsx edx, byte [ebp + ecx - 0x898]
cmp eax, edx
jne 0x494144
mov dword [ebp - 0xcac], 0
jmp 0x4941b3
push edi
jmp 0x49414d
sub edi, 0x2911
and edi, 0x17457
pop edi
push esi
xor esi, 0x7934
and esi, 0x12067
or esi, 0x12f9e
jmp 0x494175
pop esi
mov eax, dword [ebp - 0x760]
add eax, dword [ebp - 0x194]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x194]
movsx eax, byte [ebp + edx - 0x898]
or eax, 0x20
cmp ecx, eax
jge 0x4941a9
mov dword [ebp - 0xcac], 0xffffffff
jmp 0x4941b3
mov dword [ebp - 0xcac], 1
cmp dword [ebp - 0xcac], 0
jne 0x4941ca
mov ecx, dword [ebp - 0x19a4]
mov dword [ebp - 0x3f8], ecx
jmp 0x4941db
jmp 0x493fb4
mov edx, dword [ebp - 0x764]
mov dword [ebp - 0x3f8], edx
cmp dword [ebp - 0x3f8], 0
je 0x4942b6
push esi
push esi
add esp, 4
call 0x4941f9
add byte [ebx + 0x35], al
inc ebx
inc esi
cmp ecx, dword [ebx - 0x7d]
les eax, [eax + ebp*8]
or dword [eax], eax
add byte [eax], al
add byte [eax + 0x3d], dl
dec esp
xor al, byte [ebx + 0x3f]
dec edi
dec esi
add esp, 4
xor esi, 0x16337
xor esi, 0x6890
pop esi
mov eax, dword [ebp - 0x3f8]
mov dword [ebp - 0x19a8], eax
push eax
push eax
add esp, 4
call 0x494238
add byte [ebp + 0x50], al
inc ebp
inc edx
dec eax
inc esp
inc esp
add esp, 4
jmp 0x494242
call 0x49424e
add byte [edx + 0x34], cl
inc esi
inc esp
inc edx
cmp al, 0x83
les eax, [ecx + eax*4]
invalid
push edx
push ebx
add esp, 4
sub edx, 0x13672
add edx, 0xaa3d
pop edx
push ebx
push esi
add esp, 4
add ebx, 0xbfa3
sub ebx, 0xc3b7
sub ebx, 0x7e0b
pop ebx
push eax
jmp 0x4942e7
pop eax
mov eax, dword fs:[0x18]
mov dword [ebp - 0x19b0], eax
mov ecx, dword [ebp - 0x19b0]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x19b4], edx
mov eax, dword [ebp - 0x19b4]
mov dword [ebp - 0x1604], eax
push esi
or esi, 0x11a0a
and esi, 0xa5dc
add esi, 0x12cf2
pop esi
push eax
push ebx
add esp, 4
add eax, 0x142b5
add eax, 0x16699
pop eax
push ecx
push edx
add esp, 4
add ecx, 0x13062
pop ecx
cmp dword [ebp - 0x1604], 0
jne 0x494359
mov dword [ebp - 0x2d4], 0
jmp 0x494600
mov ecx, dword [ebp - 0x1604]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xcb8], eax
push edi
push edi
add esp, 4
add edi, 0xc21f
pop edi
push edi
sub edi, 0x1609c
sub edi, 0x14435
xor edi, 0x1799a
sub edi, 0xe82d
pop edi
push ecx
push edx
add esp, 4
or ecx, 0x17be3
pop ecx
cmp dword [ebp - 0xcb8], 0
jne 0x4943b5
mov dword [ebp - 0x2d4], 0
jmp 0x494600
mov ecx, dword [ebp - 0xcb8]
mov dword [ebp - 0x510], ecx
push ebx
and ebx, 0x345d
add ebx, 0x6d18
pop ebx
push eax
and eax, 0x174ef
xor eax, 0x8098
pop eax
push edx
xor edx, 0x15d1f
pop edx
push ecx
and ecx, 0xb29e
add ecx, 0x2dd4
pop ecx
lea edx, [ebp - 0x1740]
mov dword [ebp - 0xcb4], edx
mov eax, dword [ebp - 0x510]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xcb0], ecx
xor edx, edx
mov word [ebp - 0x218], dx
xor eax, eax
mov word [ebp - 0x34], ax
push eax
push edi
add esp, 4
add eax, 0x168a9
add eax, 0x16e9d
xor eax, 0xa027
sub eax, 0x19c4
pop eax
push eax
sub eax, 0x13643
or eax, 0x5015
and eax, 0x10f87
pop eax
mov ecx, dword [ebp - 0xcb0]
mov dx, word [ecx]
mov word [ebp - 0x103e], dx
mov eax, dword [ebp - 0xcb0]
add eax, 2
mov dword [ebp - 0xcb0], eax
mov cx, word [ebp - 0x103e]
mov word [ebp - 0x218], cx
mov edx, dword [ebp - 0xcb4]
mov ax, word [edx]
mov word [ebp - 0x1040], ax
mov ecx, dword [ebp - 0xcb4]
add ecx, 2
mov dword [ebp - 0xcb4], ecx
mov dx, word [ebp - 0x1040]
mov word [ebp - 0x34], dx
push eax
add eax, 0x295f
pop eax
push ecx
call 0x4944bc
add byte [esp + edi + 0x3e], al
cmp al, 0x41
inc edi
dec esi
add esp, 4
sub ecx, 0x11369
call 0x4944d4
add byte [ecx + ecx*2], bh
dec edx
cmp dword [edx + 0x39], eax
inc esp
inc esi
inc esi
add esp, 4
pop ecx
movzx eax, word [ebp - 0x34]
test eax, eax
jne 0x4944f5
movzx ecx, word [ebp - 0x218]
movzx edx, word [ebp - 0x34]
sub ecx, edx
mov dword [ebp - 0x160c], ecx
jmp 0x49454f
movzx eax, word [ebp - 0x218]
movzx ecx, word [ebp - 0x34]
cmp eax, ecx
je 0x49441d
movzx edx, word [ebp - 0x218]
xor edx, 0x20
movzx eax, word [ebp - 0x34]
cmp edx, eax
je 0x49441d
movzx ecx, word [ebp - 0x218]
movzx edx, word [ebp - 0x34]
cmp ecx, edx
jge 0x494539
mov dword [ebp - 0x1608], 0xffffffff
jmp 0x494543
mov dword [ebp - 0x1608], 1
mov eax, dword [ebp - 0x1608]
mov dword [ebp - 0x160c], eax
cmp dword [ebp - 0x160c], 0
jne 0x494598
push edx
push edi
add esp, 4
add edx, 0x5445
and edx, 0x5248
pop edx
push edx
add edx, 0xb14f
pop edx
push ebx
call 0x494580
add byte [edx + 0x35], cl
aaa
aaa
inc esp
add esp, 4
jmp 0x494589
pop ebx
mov ecx, dword [ebp - 0x510]
mov dword [ebp - 0x2d4], ecx
jmp 0x494600
push ebx
or ebx, 0x149f
or ebx, 0xca5f
pop ebx
push esi
or esi, 0x5380
pop esi
push esi
push ecx
add esp, 4
and esi, 0x761c
call 0x4945c6
add byte [edx], dh
dec esp
xor eax, 0x464b4240
add esp, 4
pop esi
mov edx, dword [ebp - 0x510]
mov eax, dword [edx]
mov dword [ebp - 0x510], eax
mov ecx, dword [ebp - 0x510]
cmp ecx, dword [ebp - 0xcb8]
je 0x4945f6
mov edx, dword [ebp - 0x510]
cmp dword [edx + 0x30], 0
jne 0x4943c1
mov dword [ebp - 0x2d4], 0
push ecx
push edx
add esp, 4
and ecx, 0x17c8b
jmp 0x494610
jmp 0x494617
jmp 0x49461f
pop ecx
push esi
push edi
add esp, 4
sub esi, 0x1c18
jmp 0x494631
pop esi
mov eax, dword [ebp - 0x2d4]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x324], ecx
push ebx
push edx
add esp, 4
sub ebx, 0xf5ad
add ebx, 0xed3c
or ebx, 0x9a9a
pop ebx
push edi
or edi, 0x9c49
pop edi
push edx
push ecx
add esp, 4
and edx, 0x4324
sub edx, 0xc86e
pop edx
mov dword [ebp - 0x774], 0
mov edx, dword [ebp - 0x324]
mov dword [ebp - 0x1610], edx
cmp dword [ebp - 0x1610], 0
jne 0x4946a3
mov eax, dword [ebp - 0x774]
mov dword [ebp - 0x514], eax
jmp 0x494994
mov ecx, dword [ebp - 0x1610]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x1614], edx
jne 0x4946cb
mov eax, dword [ebp - 0x774]
mov dword [ebp - 0x514], eax
jmp 0x494994
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x1614]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x1618], ecx
cmp dword [ebp - 0x1618], 0
jne 0x4946fd
mov edx, dword [ebp - 0x774]
mov dword [ebp - 0x514], edx
jmp 0x494994
mov eax, dword [ebp - 0x324]
add eax, dword [ebp - 0x1618]
mov dword [ebp - 0x768], eax
jne 0x494722
mov ecx, dword [ebp - 0x774]
mov dword [ebp - 0x514], ecx
jmp 0x494994
mov edx, dword [ebp - 0x768]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x19b8], eax
mov ecx, dword [ebp - 0x768]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x19bc], edx
mov eax, dword [ebp - 0x768]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x19c0], ecx
mov dword [ebp - 0x76c], 0
jmp 0x49477c
mov edx, dword [ebp - 0x76c]
add edx, 1
mov dword [ebp - 0x76c], edx
mov eax, dword [ebp - 0x768]
mov ecx, dword [ebp - 0x76c]
cmp ecx, dword [eax + 0x18]
jae 0x494988
mov edx, dword [ebp - 0x76c]
mov eax, dword [ebp - 0x19b8]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x770], ecx
mov edx, dword [ebp - 0x76c]
mov eax, dword [ebp - 0x19bc]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x19c0]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x1d48], eax
mov dword [ebp - 0x198], 0
jmp 0x4947ec
mov ecx, dword [ebp - 0x198]
add ecx, 1
mov dword [ebp - 0x198], ecx
mov edx, dword [ebp - 0x770]
add edx, dword [ebp - 0x198]
movsx eax, byte [edx]
test eax, eax
je 0x49489e
mov ecx, dword [ebp - 0x198]
movsx edx, byte [ebp + ecx - 0x87c]
test edx, edx
je 0x49489e
push ebx
or ebx, 0x128ab
or ebx, 0x7428
pop ebx
push edx
and edx, 0x6f1e
pop edx
push ecx
push eax
add esp, 4
add ecx, 0xf788
call 0x494847
add byte [ecx + 0x3e], al
inc edx
inc esi
xor eax, dword [ebx + 0x47]
add esp, 4
pop ecx
mov eax, dword [ebp - 0x770]
add eax, dword [ebp - 0x198]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x198]
movsx eax, byte [ebp + edx - 0x87c]
cmp ecx, eax
je 0x494890
mov ecx, dword [ebp - 0x770]
add ecx, dword [ebp - 0x198]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x198]
movsx ecx, byte [ebp + eax - 0x87c]
cmp edx, ecx
jne 0x494897
jmp 0x4947dd
jmp 0x49489e
push edi
xor edi, 0xa0f8
call 0x4948b2
add byte [edi + ecx*2 + 0x43], al
cmp dword [eax + 0x32], edx
inc ecx
add esp, 4
xor edi, 0xa1d6
or edi, 0xd77c
pop edi
push ecx
sub ecx, 0xd585
xor ecx, 0x17b72
pop ecx
mov edx, dword [ebp - 0x770]
add edx, dword [ebp - 0x198]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x198]
movsx edx, byte [ebp + ecx - 0x87c]
cmp eax, edx
jne 0x4948fd
mov dword [ebp - 0xcbc], 0
jmp 0x49496c
push esi
xor esi, 0xcf3e
sub esi, 0xee50
sub esi, 0x94b1
pop esi
push ecx
push edi
add esp, 4
or ecx, 0x1492d
pop ecx
push ecx
push edi
add esp, 4
add ecx, 0x17e33
sub ecx, 0x181bc
pop ecx
mov eax, dword [ebp - 0x770]
add eax, dword [ebp - 0x198]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x198]
movsx eax, byte [ebp + edx - 0x87c]
or eax, 0x20
cmp ecx, eax
jge 0x494962
mov dword [ebp - 0xcbc], 0xffffffff
jmp 0x49496c
mov dword [ebp - 0xcbc], 1
cmp dword [ebp - 0xcbc], 0
jne 0x494983
mov ecx, dword [ebp - 0x1d48]
mov dword [ebp - 0x514], ecx
jmp 0x494994
jmp 0x49476d
mov edx, dword [ebp - 0x774]
mov dword [ebp - 0x514], edx
mov eax, dword [ebp - 0x514]
mov dword [ebp - 0x7a0], eax
push esi
push ecx
add esp, 4
and esi, 0x6ffd
jmp 0x4949b1
and esi, 0x49f5
add esi, 0xdf7c
pop esi
push esi
add esi, 0x6805
sub esi, 0x187d
sub esi, 0x14289
pop esi
mov ecx, dword [ebp - 0x3e4]
add ecx, 0xe
mov dword [ebp - 0x1a10], ecx
push edi
push esi
add esp, 4
jmp 0x4949ee
and edi, 0x92ea
and edi, 0xe643
pop edi
push edx
push ebx
add esp, 4
sub edx, 0xe20b
or edx, 0x5504
or edx, 0xee88
pop edx
cmp dword [ebp - 0x3e4], 0
je 0x494a25
cmp dword [ebp - 0xac4], 0
jne 0x494a6b
push ecx
xor ecx, 0x67b2
pop ecx
push ecx
and ecx, 0x55b8
pop ecx
push edx
and edx, 0x1558f
xor edx, 0x5450
xor edx, 0xc344
or edx, 0x75c1
pop edx
push esi
xor esi, 0xcf7a
pop esi
mov edx, dword [ebp - 0x7a0]
mov dword [ebp - 0x19c4], edx
push 0
call dword [ebp - 0x19c4]
mov dword [ebp - 0x20dc], 0xa
push ecx
push eax
add esp, 4
sub ecx, 0x11c22
pop ecx
push esi
add esi, 0x110fa
and esi, 0x14e61
or esi, 0x11e02
pop esi
push edi
call 0x494aa3
add byte [esi + 0x42], cl
dec ecx
cmp eax, dword [edi + 0x40]
add esp, 4
pop edi
mov eax, dword [ebp - 0x3e4]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x3ed], cl
mov edx, dword [ebp - 0xac4]
sub edx, dword [ebp - 0x3e4]
mov dword [ebp - 0x169c], edx
mov dword [ebp - 0xcec], 0
push edx
call 0x494ae1
add byte [eax], bh
dec ebp
xor cl, byte [ebx + 0x46]
cmp eax, 0x4c48333
call 0x494af4
add byte [edi + 0x40], al
dec eax
xor cl, byte [edi + 0x39]
aas
cmp al, 0x3e
inc ebp
add esp, 4
sub edx, 0xb93e
add edx, 0x1444b
pop edx
mov byte [ebp - 0x9d8], 0x56
mov byte [ebp - 0x9d7], 0x69
mov byte [ebp - 0x9d6], 0x72
mov byte [ebp - 0x9d5], 0x74
mov byte [ebp - 0x9d4], 0x75
mov byte [ebp - 0x9d3], 0x61
mov byte [ebp - 0x9d2], 0x6c
mov byte [ebp - 0x9d1], 0x50
mov byte [ebp - 0x9d0], 0x72
mov byte [ebp - 0x9cf], 0x6f
mov byte [ebp - 0x9ce], 0x74
mov byte [ebp - 0x9cd], 0x65
mov byte [ebp - 0x9cc], 0x63
mov byte [ebp - 0x9cb], 0x74
mov byte [ebp - 0x9ca], 0
push ebx
jmp 0x494b77
or ebx, 0x380a
call 0x494b89
add byte [ebx + 0x3b], cl
xor al, 0x50
dec edx
cmp byte [ebx + 0x535b04c4], al
push edx
add esp, 4
and ebx, 0x1624c
or ebx, 0x13cff
pop ebx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x19c8], eax
mov ecx, dword [ebp - 0x19c8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x19cc], edx
mov eax, dword [ebp - 0x19cc]
xor al, 0xe6
invalid
dec dword [ecx - 0x161b7b]
call dword [esi + 0x53]
add esp, 4
sub esi, 0x13c8c
sub esi, 0x9ecb
pop esi
push esi
push ebx
add esp, 4
xor esi, 0x17d9c
jmp 0x494beb
xor esi, 0x5ced
or esi, 0x16c2b
insb byte es:[edi], dx
add dword [eax], eax
pop esi
cmp dword [ebp - 0x161c], 0
jne 0x494c10
mov dword [ebp - 0x2f4], 0
jmp 0x494eb7
mov ecx, dword [ebp - 0x161c]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xcc8], eax
push ecx
add ecx, 0x10490
pop ecx
push edx
push esi
add esp, 4
call 0x494c3e
add byte [edi], bh
aaa
dec eax
xor dh, byte [edx]
inc ecx
cmp dword [ecx + 0x4b], eax
add esp, 4
xor edx, 0xc549
jmp 0x494c4d
or edx, 0x100e6
pop edx
cmp dword [ebp - 0xcc8], 0
jne 0x494c6c
mov dword [ebp - 0x2f4], 0
jmp 0x494eb7
mov ecx, dword [ebp - 0xcc8]
mov dword [ebp - 0x518], ecx
push edi
jmp 0x494c7e
xor edi, 0xcfff
xor edi, 0x3913
call 0x494c98
add byte [esi], bh
dec edx
dec edx
cmp dh, byte [eax + ecx*2]
dec esp
aas
add esp, 4
pop edi
push esi
add esi, 0xf2e1
and esi, 0x13c7b
pop esi
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 ecx
add ecx, 0x18300
sub ecx, 0x10978
pop ecx
push eax
push ebx
add esp, 4
and eax, 0xbece
pop eax
push edx
push ebx
add esp, 4
jmp 0x494cf8
or edx, 0x14c1d
jmp 0x494d05
pop edx
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 ecx
add esp, 4
xor edi, 0x7a87
xor edi, 0x2af
sub edi, 0xb47
sub edi, 0x7e12
pop edi
push edx
and edx, 0x40f4
pop edx
push ecx
push edi
add esp, 4
or ecx, 0x16ac0
pop ecx
movzx eax, word [ebp - 0x38]
test eax, eax
jne 0x494dac
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
sub ecx, edx
mov dword [ebp - 0x1624], ecx
jmp 0x494e06
movzx eax, word [ebp - 0x21c]
movzx ecx, word [ebp - 0x38]
cmp eax, ecx
je 0x494cd4
movzx edx, word [ebp - 0x21c]
xor edx, 0x20
movzx eax, word [ebp - 0x38]
cmp edx, eax
je 0x494cd4
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
cmp ecx, edx
jge 0x494df0
mov dword [ebp - 0x1620], 0xffffffff
jmp 0x494dfa
mov dword [ebp - 0x1620], 1
mov eax, dword [ebp - 0x1620]
mov dword [ebp - 0x1624], eax
cmp dword [ebp - 0x1624], 0
jne 0x494e4f
push edi
push ecx
add esp, 4
or edi, 0x6bcb
sub edi, 0xfcbd
pop edi
push ecx
push eax
add esp, 4
or ecx, 0xd3a4
add ecx, 0x4894
pop ecx
push ecx
xor ecx, 0xf748
or ecx, 0x175a0
pop ecx
mov ecx, dword [ebp - 0x518]
mov dword [ebp - 0x2f4], ecx
jmp 0x494eb7
push ecx
sub ecx, 0x356d
xor ecx, 0x2923
pop ecx
push esi
sub esi, 0x8415
pop esi
push ecx
sub ecx, 0x12299
jmp 0x494e73
jmp 0x494e7a
sub ecx, 0x11798
pop ecx
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 0x494ead
mov edx, dword [ebp - 0x518]
cmp dword [edx + 0x30], 0
jne 0x494c78
mov dword [ebp - 0x2f4], 0
push ebx
push ebx
add esp, 4
call 0x494ec9
add byte [ebx], dh
cmp byte [edx + 0x4b], cl
xor cl, byte [esi + 0x36]
add esp, 4
jmp 0x494ed4
or ebx, 0x7659
pop ebx
push ebx
xor ebx, 0x1246f
add dword [eax], eax
add ebx, 0xaa44
pop ebx
cmp dword [ebp - 0x2f4], 0
jne 0x4957ee
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 ecx
push esi
add esp, 4
add ecx, 0x12ab5
call 0x494fa9
add byte [ebx], bh
inc ebp
dec ebx
dec esi
cmp byte [esi + 0x4e], cl
inc ebx
aas
add esp, 4
xor ecx, 0x4dc1
pop ecx
push edi
and edi, 0x112f3
sub edi, 0x3f89
pop edi
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
and edi, 0x161c7
xor edi, 0xf119
xor edi, 0x18175
or edi, 0xe18a
pop edi
push edi
push ebx
add esp, 4
and edi, 0x15b21
sub edi, 0x137c2
add edi, 0xc118
pop edi
cmp dword [ebp - 0x1628], 0
jne 0x49508e
mov dword [ebp - 0x778], 0
jmp 0x495335
mov edx, dword [ebp - 0x1628]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcd4], ecx
push ecx
call 0x4950ae
add byte [esi], bh
aas
inc ecx
cmp esi, dword [esi]
inc edx
add esp, 4
sub ecx, 0x6a3a
and ecx, 0x123da
pop ecx
push eax
call 0x4950ce
add byte [eax + 0x3b], cl
xor al, 0x4a
inc ebp
inc esp
xor eax, 0xc4834d50
add al, 0x58
cmp dword [ebp - 0xcd4], 0
jne 0x4950ea
mov dword [ebp - 0x778], 0
jmp 0x495335
mov edx, dword [ebp - 0xcd4]
mov dword [ebp - 0x51c], edx
push ebx
push ecx
add esp, 4
add ebx, 0xf16c
xor ebx, 0xe2ad
pop ebx
push edi
sub edi, 0x16fbb
add edi, 0x9fa7
call 0x495124
add byte [esi + 0x3e], cl
inc edi
inc eax
xor eax, 0x383d393d
add esp, 4
pop edi
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 esi
push edi
add esp, 4
or esi, 0x1761b
sub esi, 0x176b5
xor esi, 0x6de2
or esi, 0x45bc
pop esi
push eax
xor eax, 0x175eb
add eax, 0x16462
and eax, 0x7410
pop eax
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 edx
jmp 0x4951e4
xor edx, 0xf51a
pop edx
push esi
and esi, 0x830d
call 0x495201
add byte [ebx + 0x3b], al
dec esi
push eax
inc edx
dec edx
cmp dh, byte [ebx + ecx*2]
add esp, 4
pop esi
push ecx
add ecx, 0x99ed
pop ecx
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x49522a
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1670], edx
jmp 0x495284
movzx ecx, word [ebp - 0x220]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x495152
movzx eax, word [ebp - 0x220]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x495152
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x49526e
mov dword [ebp - 0x162c], 0xffffffff
jmp 0x495278
mov dword [ebp - 0x162c], 1
mov ecx, dword [ebp - 0x162c]
mov dword [ebp - 0x1670], ecx
cmp dword [ebp - 0x1670], 0
jne 0x4952cd
push edi
sub edi, 0x840
xor edi, 0x7dd4
xor edi, 0x176be
pop edi
push edi
push edx
add esp, 4
jmp 0x4952af
jmp 0x4952b8
add edi, 0x11073
pop edi
mov edx, dword [ebp - 0x51c]
mov dword [ebp - 0x778], edx
jmp 0x495335
push edx
call 0x4952dd
add byte [ebx], bh
dec eax
inc edi
aaa
dec esp
inc ebx
aaa
inc ebp
cmp eax, 0x8104c483
ret 0xad9
push edi
push ebx
add esp, 4
and edi, 0x3c56
add edi, 0x1327d
pop edi
push edx
xor edx, 0x1122
call 0x49535d
add byte [ebx], bh
inc eax
cmp byte [edi], bh
cmp byte [edi + 0x33], al
push eax
add esp, 4
add edx, 0x33e5
pop edx
cmp dword [ebp - 0x778], 0
jne 0x4953b1
push ebx
and ebx, 0x13c77
xor ebx, 0x41f0
or ebx, 0xcd46
and ebx, 0xd783
pop ebx
push eax
push edx
add esp, 4
and eax, 0x11388
or eax, 0x760a
and eax, 0x9def
pop eax
mov dword [ebp - 0xac0], 0
jmp 0x495ed9
push ebx
push ebx
add esp, 4
and ebx, 0x505
pop ebx
push esi
push ecx
add esp, 4
sub esi, 0x22ca
xor esi, 0xc7cf
add esi, 0x949a
pop esi
push edi
or edi, 0x35d7
and edi, 0xa8bf
pop edi
mov ecx, dword [ebp - 0x778]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x3a4], edx
mov dword [ebp - 0x788], 0
mov eax, dword [ebp - 0x3a4]
mov dword [ebp - 0x1674], eax
cmp dword [ebp - 0x1674], 0
jne 0x495422
mov ecx, dword [ebp - 0x788]
mov dword [ebp - 0x3fc], ecx
jmp 0x495713
mov edx, dword [ebp - 0x1674]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1678], eax
jne 0x49544a
mov ecx, dword [ebp - 0x788]
mov dword [ebp - 0x3fc], ecx
jmp 0x495713
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1678]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1680], edx
inc dword [ebx - 0x167f43]
inc dword [eax]
jne 0x49547c
mov eax, dword [ebp - 0x788]
mov dword [ebp - 0x3fc], eax
jmp 0x495713
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [ebp - 0x1680]
mov dword [ebp - 0x77c], ecx
jne 0x4954a1
mov edx, dword [ebp - 0x788]
mov dword [ebp - 0x3fc], edx
jmp 0x495713
mov eax, dword [ebp - 0x77c]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19d8], ecx
mov edx, dword [ebp - 0x77c]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19dc], eax
mov ecx, dword [ebp - 0x77c]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x19e0], edx
mov dword [ebp - 0x780], 0
jmp 0x4954fb
mov eax, dword [ebp - 0x780]
add eax, 1
mov dword [ebp - 0x780], eax
mov ecx, dword [ebp - 0x77c]
mov edx, dword [ebp - 0x780]
cmp edx, dword [ecx + 0x18]
jae 0x495707
mov eax, dword [ebp - 0x780]
mov ecx, dword [ebp - 0x19d8]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x784], edx
mov eax, dword [ebp - 0x780]
mov ecx, dword [ebp - 0x19dc]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x19e0]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x19e4], ecx
mov dword [ebp - 0x19c], 0
jmp 0x49556b
mov edx, dword [ebp - 0x19c]
add edx, 1
mov dword [ebp - 0x19c], edx
mov eax, dword [ebp - 0x784]
add eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
test ecx, ecx
je 0x49561d
mov edx, dword [ebp - 0x19c]
movsx eax, byte [ebp + edx - 0x8a8]
test eax, eax
je 0x49561d
push eax
push eax
add esp, 4
or eax, 0x1b5a
add eax, 0xe86
xor eax, 0x16728
pop eax
push edx
and edx, 0x4263
xor edx, 0x2340
xor edx, 0xc87e
or edx, 0xd6a2
pop edx
mov ecx, dword [ebp - 0x784]
add ecx, dword [ebp - 0x19c]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x19c]
movsx ecx, byte [ebp + eax - 0x8a8]
cmp edx, ecx
je 0x49560f
mov edx, dword [ebp - 0x784]
add edx, dword [ebp - 0x19c]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x19c]
movsx edx, byte [ebp + ecx - 0x8a8]
cmp eax, edx
jne 0x495616
jmp 0x49555c
jmp 0x49561d
push ebx
push esi
add esp, 4
add ebx, 0x15ad3
jmp 0x495630
pop ebx
push eax
push eax
add esp, 4
or eax, 0x14ac7
pop eax
push ecx
push eax
add esp, 4
sub ecx, 0x72d9
sub ecx, 0x13b9e
pop ecx
mov eax, dword [ebp - 0x784]
add eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x19c]
movsx eax, byte [ebp + edx - 0x8a8]
cmp ecx, eax
jne 0x49567c
mov dword [ebp - 0xcd8], 0
jmp 0x4956eb
push ebx
push ebx
add esp, 4
sub ebx, 0x157ee
xor ebx, 0x8857
pop ebx
push ecx
call 0x49569c
add byte [ebx], bh
dec edx
xor ecx, dword [ebx + 0x43]
aas
cmp al, 0x83
les eax, [ecx + eax*4]
loope 0x4956f2
cmp al, 0
add byte [ecx + 0x53], bl
sub ebx, 0x1008b
pop ebx
mov ecx, dword [ebp - 0x784]
add ecx, dword [ebp - 0x19c]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x19c]
movsx ecx, byte [ebp + eax - 0x8a8]
or ecx, 0x20
cmp edx, ecx
jge 0x4956e1
mov dword [ebp - 0xcd8], 0xffffffff
jmp 0x4956eb
mov dword [ebp - 0xcd8], 1
cmp dword [ebp - 0xcd8], 0
jne 0x495702
mov edx, dword [ebp - 0x19e4]
mov dword [ebp - 0x3fc], edx
jmp 0x495713
jmp 0x4954ec
mov eax, dword [ebp - 0x788]
mov dword [ebp - 0x3fc], eax
cmp dword [ebp - 0x3fc], 0
je 0x4957ee
push esi
push edx
add esp, 4
jmp 0x49572a
call 0x49573a
add byte [edi], bh
dec ecx
cmp dword [ecx], edi
dec ebx
inc esi
inc eax
dec esp
dec ebp
add esp, 4
or esi, 0x152a8
and esi, 0x144d2
pop esi
push ecx
or ecx, 0x14ed0
pop ecx
mov ecx, dword [ebp - 0x3fc]
mov dword [ebp - 0x19e8], ecx
push edi
sub edi, 0x10204
call 0x495774
add byte [eax], bh
inc ecx
xor al, 0x32
dec ebp
dec esi
dec esi
cmp ecx, dword [esi - 0x7d]
les eax, [edi + ebx*2]
push eax
push ebx
add esp, 4
and eax, 0x50d8
xor eax, 0x4d3c
and eax, 0x122dc
pop eax
mov edx, dword [ebp - 0x19e8]
mov dword [ebp - 0x19ec], edx
lea eax, [ebp - 0x1740]
push eax
call dword [ebp - 0x19ec]
test eax, eax
jne 0x4957ee
push ecx
push edx
add esp, 4
and ecx, 0xb153
pop ecx
push edi
push edx
add esp, 4
add edi, 0x302a
xor edi, 0x135f1
jmp 0x4957d0
and edi, 0x2a5b
pop edi
push edi
add edi, 0x10e80
pop edi
mov dword [ebp - 0xac0], 0
jmp 0x495ed9
push eax
push eax
add esp, 4
jmp 0x4957fc
or eax, 0x9f0d
pop eax
push ebx
push esi
add esp, 4
add ebx, 0x179d7
pop ebx
push edx
jmp 0x495818
jmp 0x49581f
pop edx
mov ecx, dword fs:[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 eax
push ebx
add esp, 4
or eax, 0x3d06
xor eax, 0x15d56
sub eax, 0x16cb4
pop eax
push edi
push esi
add esp, 4
jmp 0x49586b
pop edi
push ebx
and ebx, 0x272a
jmp 0x495879
pop ebx
cmp dword [ebp - 0x1684], 0
jne 0x495892
mov dword [ebp - 0x2f4], 0
jmp 0x495b39
mov edx, dword [ebp - 0x1684]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xce4], ecx
push esi
call 0x4958b2
add byte [edi + 0x38], cl
cmp dword [ecx], edi
inc ebx
inc eax
dec edx
add esp, 4
jmp 0x4958be
call 0x4958cc
add byte [edi + 0x44], cl
push eax
inc ebp
cmp bh, byte [esi]
push eax
inc ecx
add esp, 4
xor esi, 0x16496
pop esi
cmp dword [ebp - 0xce4], 0
jne 0x4958ee
mov dword [ebp - 0x2f4], 0
jmp 0x495b39
mov edx, dword [ebp - 0xce4]
mov dword [ebp - 0x520], edx
push edx
push eax
add esp, 4
add edx, 0x18695
jmp 0x49590b
sub edx, 0x17ba
xor edx, 0x1a9b
pop edx
push ebx
xor ebx, 0x1781d
add ebx, 0x17c04
or ebx, 0x15412
pop ebx
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 ebx
or ebx, 0x7f4b
or ebx, 0x11e91
call 0x495970
add byte [eax + edx*2], dh
cmp eax, 0x47423837
add esp, 4
or ebx, 0x12847
pop ebx
push ebx
and ebx, 0x6910
sub ebx, 0x11f7f
pop ebx
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 edi
jmp 0x4959e8
jmp 0x4959ef
pop edi
push edx
push ecx
add esp, 4
add edx, 0x1724c
add edx, 0x9763
jmp 0x495a0a
sub edx, 0x1632d
pop edx
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x495a2e
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x168c], edx
jmp 0x495a88
movzx ecx, word [ebp - 0x224]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
invalid