Function at 0x848b80
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1cc
mov edi, ecx
nop
mov dword [ebp - 0x1c], esp
mov dword [ebp - 0x10], 0xffffffff
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], 0x852100
mov ecx, dword fs:[0]
mov dword [ebp - 0x18], ecx
mov dword fs:[0], eax
call fcn.0084e720
mov ebx, eax
movzx eax, byte [0xa8c614]
lea edx, [ebx + 0x39c6]
mov ecx, dword [0xa69050]
mov dword [ebp - 0x40], edx
add ecx, edx
mov dword [ebp - 0x24], eax
add ecx, eax
add ecx, dword [0xa69044]
call dword [0xa37360]
call ecx
cmp byte [edi], 0
jne 0x84a74f
mov esi, eax
mov eax, 0xffffc63a
mov dword [ebp - 0x44], ebx
sub eax, ebx
mov dword [ebp - 0x3c], eax
mov ecx, esi
xor ecx, 0x704fadb2
mov eax, esi
xor eax, 0x704fad9d
mov dword [ebp - 0xa0], ecx
mov dword [edi + ecx], eax
mov ecx, esi
xor ecx, 0x704fada6
mov eax, esi
xor eax, 0x704fadae
mov dword [ebp - 0x2c], eax
mov eax, dword [edi + eax]
mov edx, dword [edi + ecx]
mov dword [ebp - 0x50], edx
sub eax, edx
mov edx, esi
xor edx, 0x704f8da2
mov dword [ebp - 0x5c], edx
cmp eax, edx
mov eax, dword [0xa8d668]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x30], ecx
lea eax, [edi + ecx]
mov dword [ebp - 0x34], eax
nop
mov dword [ebp - 0x20], esi
jae 0x848d45
mov edi, esi
xor edi, 0x704fadaa
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + edi]
mov dword [ebp - 0x60], eax
mov eax, esi
xor eax, 0x704f8d81
push eax
call fcn.0091d7fd
add esp, 4
mov ecx, esi
xor ecx, 0x704fad81
mov dword [ebp - 0x48], ecx
add ecx, eax
mov ebx, esi
xor ebx, 0x8fb05242
and ebx, ecx
xor esi, 0x8fb0525e
mov dword [ebp - 0x4c], esi
mov dword [ebx + esi], eax
mov dword [ebp - 0x64], edi
mov eax, dword [ebp - 0x28]
mov edi, dword [eax + edi]
mov eax, dword [ebp - 0x34]
mov esi, dword [eax]
mov eax, dword [0xa69064]
mov ecx, dword [0xa69030]
or ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x3c]
add ecx, eax
sub edi, esi
call dword [0xa37360]
push edi
push esi
push ebx
call ecx
mov edx, dword [ebp - 0x28]
add esp, 0xc
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
test eax, eax
je 0x848d22
nop
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [edx + ecx]
sub ecx, eax
mov edi, dword [ebp - 0x20]
mov edx, edi
xor edx, 0x704fa25d
cmp ecx, edx
jbe 0x848d13
nop
mov esi, dword [ebp - 0x4c]
lea edx, [eax + esi]
mov eax, dword [eax + esi]
sub edx, eax
xor edi, 0x704fad82
cmp edx, edi
jae 0x84a780
add ecx, dword [ebp - 0x48]
nop
push ecx
push eax
call fcn.0091d82d
add esp, 8
nop
mov edx, dword [ebp - 0x28]
nop
mov ecx, dword [ebp - 0x60]
sub ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x34]
mov dword [eax], ebx
add ecx, ebx
mov eax, dword [ebp - 0x64]
mov dword [edx + eax], ecx
mov ecx, dword [ebp - 0x5c]
add ecx, ebx
mov eax, dword [ebp - 0x2c]
mov dword [edx + eax], ecx
nop
mov esi, dword [ebp - 0x20]
mov ecx, esi
xor ecx, 0x704fad82
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x84], ecx
mov eax, dword [eax + ecx]
test eax, eax
je 0x848db2
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x848d85
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x848dae
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
or edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov ecx, esi
xor ecx, 0x704fad86
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x80], ecx
mov eax, dword [eax + ecx]
test eax, eax
je 0x848e1b
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x848def
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x848e17
nop
mov edi, dword [0xa69060]
add edi, dword [ebp - 0x40]
add edi, dword [ebp - 0x24]
add edi, dword [0xa6903c]
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fad8a
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x848e80
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x848e54
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x848e7c
nop
mov edi, dword [0xa69060]
add edi, dword [ebp - 0x40]
add edi, dword [ebp - 0x24]
add edi, dword [0xa6903c]
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fac62
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x848eef
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x848eb9
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x848eeb
nop
mov eax, dword [0xa69060]
mov ecx, dword [0xa6903c]
sub ecx, dword [ebp - 0x24]
add ecx, eax
mov eax, dword [ebp - 0x44]
lea edi, [eax + ecx]
add edi, 0x39c6
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fac66
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x848f54
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x848f28
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x848f50
nop
mov edi, dword [0xa69060]
add edi, dword [ebp - 0x40]
add edi, dword [ebp - 0x24]
add edi, dword [0xa6903c]
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fac6a
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x848fb9
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x848f8d
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x848fb5
nop
mov edi, dword [0xa69060]
add edi, dword [ebp - 0x40]
add edi, dword [ebp - 0x24]
add edi, dword [0xa6903c]
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fac6e
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x84901f
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x848ff2
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x84901b
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
xor edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fac72
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x849085
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849058
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849081
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
or edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fac76
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x8490eb
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x8490be
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x8490e7
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
xor edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fac7a
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x849151
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849124
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x84914d
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
or edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fac7e
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x8491b7
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x84918a
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x8491b3
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
or edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fac42
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x849226
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x8491f0
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849222
nop
mov eax, dword [0xa69060]
mov ecx, dword [0xa6903c]
sub ecx, dword [ebp - 0x24]
add ecx, eax
mov eax, dword [ebp - 0x44]
lea edi, [eax + ecx]
add edi, 0x39c6
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov ecx, esi
xor ecx, 0x704fac46
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x8c], ecx
mov eax, dword [eax + ecx]
test eax, eax
je 0x84929c
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849266
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849298
nop
mov eax, dword [0xa69060]
mov ecx, dword [0xa6903c]
sub ecx, dword [ebp - 0x24]
add ecx, eax
mov eax, dword [ebp - 0x44]
lea edi, [eax + ecx]
add edi, 0x39c6
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fac4a
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
mov edi, dword [0xa69acc]
mov ecx, esi
xor ecx, 0x4ce68cfe
mov edx, esi
shl edx, 0x1c
xor edx, esi
mov dword [ebp - 0x4c], edx
xor edx, 0x93197301
add edx, ecx
mov dword [ebp - 0x60], edi
add edx, dword [edi]
mov dword [ebp - 0x48], edx
mov ecx, dword [0x9e9b04]
mov dword [ebp - 0x64], ecx
mov ecx, dword [0xa69ad0]
add ecx, dword [ecx]
mov dword [ebp - 0x54], ecx
test eax, eax
je 0x84933e
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849311
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x84933a
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
or edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fac4e
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x8493a3
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849377
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x84939f
nop
mov edi, dword [0xa69060]
add edi, dword [ebp - 0x40]
add edi, dword [ebp - 0x24]
add edi, dword [0xa6903c]
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fac52
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x849412
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x8493dc
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x84940e
nop
mov eax, dword [0xa69060]
mov ecx, dword [0xa6903c]
sub ecx, dword [ebp - 0x24]
add ecx, eax
mov eax, dword [ebp - 0x44]
lea edi, [eax + ecx]
add edi, 0x39c6
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fac56
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x849478
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x84944b
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849474
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
xor edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fac5a
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x8494de
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x8494b1
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x8494da
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
xor edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fac5e
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x849544
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849517
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849540
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
xor edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fafa2
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x8495b3
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x84957d
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x8495af
nop
mov eax, dword [0xa69060]
mov ecx, dword [0xa6903c]
sub ecx, dword [ebp - 0x24]
add ecx, eax
mov eax, dword [ebp - 0x44]
lea edi, [eax + ecx]
add edi, 0x39c6
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fafa6
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x849619
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x8495ec
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849615
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
xor edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fafaa
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x849695
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x84965f
nop
mov dword [esi], eax
mov eax, dword [edx + ecx]
add eax, dword [ebp - 0x30]
mov dword [0xa69ad8], 0x6efb6d89
mov dword [edx + ecx], eax
jmp 0x849691
nop
mov eax, dword [0xa69060]
mov ecx, dword [0xa6903c]
sub ecx, dword [ebp - 0x24]
add ecx, eax
mov eax, dword [ebp - 0x44]
lea edi, [eax + ecx]
add edi, 0x39c6
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
xor esi, 0x704fafae
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + esi]
test eax, eax
je 0x8496f7
nop
mov dword [ebp - 0x1d8], eax
mov ecx, dword [ebp - 0x20]
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x8496ce
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x8496f7
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
xor edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
cmp byte [0xa8c614], 0
jne 0x84976f
nop
mov eax, dword [ebp - 0x20]
xor eax, 0x704fafb2
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x84976f
nop
mov dword [ebp - 0x1d8], eax
mov ecx, dword [ebp - 0x20]
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x84973d
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x84976f
nop
mov eax, dword [0xa69060]
mov ecx, dword [0xa6903c]
sub ecx, dword [ebp - 0x24]
add ecx, eax
mov eax, dword [ebp - 0x44]
lea edi, [eax + ecx]
add edi, 0x39c6
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fafb6
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x8497d9
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x8497ac
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x8497d5
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
xor edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
nop
mov eax, dword [0xa69ac8]
mov ecx, eax
xor ecx, 1
mov edx, eax
and edx, 1
lea ecx, [ecx + edx*2]
mov dword [0xa69ac8], ecx
mov edx, dword [0xa69ad4]
xor edx, esi
cmp edx, 0x92237baf
sete dl
test ecx, eax
setne al
mov dword [ebp - 0x50], 0
xor al, dl
mov byte [ebp - 0x68], al
jne 0x849930
nop
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x64], 0
jle 0x849930
mov ecx, dword [ebp - 0x20]
mov eax, ecx
shr eax, 4
mov edx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x48]
add edx, esi
inc edx
mov dword [ebp - 0x60], edx
mov edx, dword [ebp - 0x5c]
add edx, dword [ebp - 0x54]
mov dword [ebp - 0x5c], edx
xor eax, 0xc718b627
mov edx, dword [ebp - 0x4c]
xor edx, 0x12089ef5
lea edi, [ecx + ecx]
xor edi, 0xdf7ce846
mov ebx, ecx
xor ebx, 0xcdf7610a
xor esi, esi
add ebx, edx
adc edi, eax
add ebx, 1
mov dword [ebp - 0x48], ebx
adc edi, 0
mov dword [ebp - 0x4c], edi
mov eax, ecx
xor eax, 0x8f58815d
mov edx, ecx
xor edx, 0x70a77ea2
add edx, eax
mov dword [ebp - 0x58], edx
mov eax, ecx
shr eax, 1
mov edx, ecx
shl edx, 0x1f
xor edx, ecx
xor edx, 0x704fada6
mov dword [ebp - 0x74], edx
xor eax, 0x3827d6d1
mov dword [ebp - 0x78], eax
xor ecx, 0x704fada1
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x50], 0
xor ebx, ebx
mov dword [ebp - 0x70], 0
jmp 0x8498db
xor dword [ebp - 0x50], edi
add esi, dword [ebp - 0x30]
cmp esi, dword [ebp - 0x64]
jge 0x849930
nop
mov edx, dword [ebp - 0x48]
add edx, dword [ebp - 0x5c]
mov edi, dword [ebp - 0x4c]
adc edi, ebx
mov eax, dword [ebp - 0x60]
lea ecx, [eax + esi]
sub edx, ecx
sbb edi, 0
cmp edx, dword [ebp - 0x74]
sbb edi, dword [ebp - 0x78]
mov edi, dword [eax + esi]
jge 0x8498d0
add esi, edx
mov ecx, dword [ebp - 0x6c]
shl edx, cl
mov eax, 1
mov ecx, edx
shl eax, cl
add eax, dword [ebp - 0x58]
and edi, eax
mov ebx, dword [ebp - 0x70]
lea eax, [ebx + 1]
mov ecx, dword [ebp - 0x54]
lea edx, [ecx + ebx*4]
add edx, 4
add edx, dword [ecx + ebx*4 + 4]
mov dword [ebp - 0x5c], edx
xor ebx, ebx
nop
mov dword [ebp - 0x70], eax
jmp 0x8498d0
nop
mov eax, dword [0xa69ad8]
mov edx, dword [ebp - 0x20]
xor eax, edx
xor ecx, ecx
cmp eax, 0x8c9abbe3
setne cl
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + ecx*4 + 0x214]
test eax, eax
je 0x8499af
nop
mov dword [ebp - 0x1d8], eax
mov ecx, edx
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x84997b
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x8499ab
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
xor edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov edx, dword [ebp - 0x20]
mov eax, edx
xor eax, 0x704fafbe
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x849a1c
nop
mov dword [ebp - 0x1d8], eax
mov ecx, edx
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x8499e8
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849a18
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
xor edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov edx, dword [ebp - 0x20]
nop
mov eax, dword [0xa69adc]
xor eax, edx
cmp eax, 0xfe0cc968
mov eax, dword [0x9e9b08]
jne 0x849a5d
nop
mov edx, dword [ebp - 0x50]
imul edx, edx
imul edx, edx
mov ecx, eax
sub ecx, edx
imul ecx, edx
shl eax, cl
mov edx, eax
sub edx, ecx
imul edx, ecx
add eax, edx
mov dword [0xa69ae8], 0xb4752772
mov ecx, 1
jmp 0x849a69
movzx ecx, byte [ebp - 0x68]
dec ecx
sub eax, dword [ebp - 0x50]
mov edx, eax
not edx
mov esi, ecx
not ecx
and ecx, edx
xor esi, eax
and eax, ecx
xor ecx, esi
or ecx, eax
mov esi, dword [ebp - 0x20]
mov edx, esi
xor edx, 0x704faf86
cmp ecx, 0xffffffff
setne cl
or cl, byte [0xa8c614]
mov eax, dword [0xa69ae0]
xor eax, esi
cmp eax, 0xfb1eb8de
mov eax, 8
jne 0x849ab1
nop
mov dword [0xa69ad4], 0x4b675782
mov eax, 0xe
and cl, 1
mov byte [0xa8c614], cl
mov ecx, dword [ebp - 0x38]
mov ecx, dword [ecx + edx]
test ecx, ecx
je 0x849b14
nop
mov dword [ebp - 0x1d8], ecx
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + eax]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849ae4
nop
mov dword [esi], ecx
mov ecx, dword [ebp - 0x30]
add dword [edx + eax], ecx
jmp 0x849b14
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
or edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov ecx, dword [ebp - 0x20]
mov eax, ecx
xor eax, 0x704faf8a
mov edx, dword [ebp - 0x38]
mov eax, dword [edx + eax]
test eax, eax
je 0x849b82
nop
mov dword [ebp - 0x1d8], eax
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849b4f
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849b7e
nop
mov edi, dword [0xa69060]
add edi, dword [ebp - 0x40]
add edi, dword [ebp - 0x24]
add edi, dword [0xa6903c]
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov ecx, dword [ebp - 0x20]
mov eax, ecx
xor eax, 0x704faf8e
mov edx, dword [ebp - 0x38]
mov eax, dword [edx + eax]
test eax, eax
je 0x849bec
nop
mov dword [ebp - 0x1d8], eax
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849bb9
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849be8
nop
mov edi, dword [0xa69060]
add edi, dword [ebp - 0x40]
add edi, dword [ebp - 0x24]
add edi, dword [0xa6903c]
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov ecx, dword [ebp - 0x20]
mov eax, ecx
xor eax, 0x704faf92
mov edx, dword [ebp - 0x38]
mov eax, dword [edx + eax]
test eax, eax
je 0x849c57
nop
mov dword [ebp - 0x1d8], eax
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849c23
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849c53
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
or edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov ecx, dword [ebp - 0x20]
mov eax, ecx
xor eax, 0x704faf96
mov edx, dword [ebp - 0x38]
mov eax, dword [edx + eax]
test eax, eax
je 0x849cc2
nop
mov dword [ebp - 0x1d8], eax
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849c8e
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849cbe
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
or edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov ecx, dword [ebp - 0x20]
mov eax, ecx
xor eax, 0x704faf9a
mov edx, dword [ebp - 0x38]
mov eax, dword [edx + eax]
test eax, eax
je 0x849d2d
nop
mov dword [ebp - 0x1d8], eax
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849cf9
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849d29
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
xor edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov ecx, dword [ebp - 0x20]
mov eax, ecx
xor eax, 0x704faf82
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x849d97
nop
mov dword [ebp - 0x1d8], eax
mov ecx, dword [ebp - 0x20]
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849d67
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849d97
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
xor edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
cmp byte [0xa8c601], 0
jne 0x849e0c
nop
mov eax, dword [ebp - 0x20]
xor eax, 0x704faf9e
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x849e0c
nop
mov dword [ebp - 0x1d8], eax
mov ecx, dword [ebp - 0x20]
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849ddd
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849e0c
nop
mov edi, dword [0xa69060]
add edi, dword [ebp - 0x40]
add edi, dword [ebp - 0x24]
add edi, dword [0xa6903c]
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704fafe2
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x849e86
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849e49
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849e82
nop
mov eax, dword [0xa69060]
mov ecx, dword [0xa6903c]
sub ecx, dword [ebp - 0x24]
add ecx, eax
mov eax, dword [ebp - 0x44]
lea edi, [eax + ecx]
add edi, 0x39c6
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704faf2a
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x849efc
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849ebf
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849ef8
nop
mov eax, dword [0xa69060]
mov ecx, dword [0xa6903c]
sub ecx, dword [ebp - 0x24]
add ecx, eax
mov eax, dword [ebp - 0x44]
lea edi, [eax + ecx]
add edi, 0x39c6
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704faf2e
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x849f69
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849f35
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849f65
nop
mov eax, dword [0xa69060]
mov edi, dword [0xa6903c]
xor edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704faf32
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x849fd5
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x849fa2
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x849fd1
nop
mov edi, dword [0xa69060]
add edi, dword [ebp - 0x40]
add edi, dword [ebp - 0x24]
add edi, dword [0xa6903c]
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704faf1a
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x84a04b
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x84a00e
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x84a047
nop
mov eax, dword [0xa69060]
mov ecx, dword [0xa6903c]
sub ecx, dword [ebp - 0x24]
add ecx, eax
mov eax, dword [ebp - 0x44]
lea edi, [eax + ecx]
add edi, 0x39c6
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704faf1e
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x84a0b7
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x84a084
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x84a0b3
nop
mov edi, dword [0xa69060]
add edi, dword [ebp - 0x40]
add edi, dword [ebp - 0x24]
add edi, dword [0xa6903c]
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704faf62
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x84a123
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov esi, dword [edx + ecx]
mov edi, dword [ebp - 0x2c]
cmp esi, dword [edx + edi]
je 0x84a0f0
nop
mov dword [esi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x84a11f
nop
mov edi, dword [0xa69060]
add edi, dword [ebp - 0x40]
add edi, dword [ebp - 0x24]
add edi, dword [0xa6903c]
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push esi
call edi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704faf72
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x84a199
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov edi, dword [edx + ecx]
mov esi, dword [ebp - 0x2c]
cmp edi, dword [edx + esi]
je 0x84a15c
nop
mov dword [edi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x84a195
nop
mov eax, dword [0xa69060]
mov ecx, dword [0xa6903c]
sub ecx, dword [ebp - 0x24]
add ecx, eax
mov eax, dword [ebp - 0x44]
lea esi, [eax + ecx]
add esi, 0x39c6
mov dword [ebp - 0x10], 0xffffffff
mov ecx, esi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push edi
call esi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704faf76
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x84a205
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov edi, dword [edx + ecx]
mov esi, dword [ebp - 0x2c]
cmp edi, dword [edx + esi]
je 0x84a1d2
nop
mov dword [edi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x84a201
nop
mov esi, dword [0xa69060]
add esi, dword [ebp - 0x40]
add esi, dword [ebp - 0x24]
add esi, dword [0xa6903c]
mov dword [ebp - 0x10], 0xffffffff
mov ecx, esi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push edi
call esi
nop
mov esi, dword [ebp - 0x20]
mov eax, esi
xor eax, 0x704faf7a
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax]
test eax, eax
je 0x84a27a
nop
mov dword [ebp - 0x1d8], eax
mov ecx, esi
xor ecx, 0x704fadaa
mov edx, dword [ebp - 0x28]
mov edi, dword [edx + ecx]
mov esi, dword [ebp - 0x2c]
cmp edi, dword [edx + esi]
je 0x84a23e
nop
mov dword [edi], eax
mov eax, dword [ebp - 0x30]
add dword [edx + ecx], eax
jmp 0x84a26e
nop
mov eax, dword [0xa69060]
mov esi, dword [0xa6903c]
or esi, dword [ebp - 0x24]
sub esi, dword [ebp - 0x3c]
add esi, eax
mov dword [ebp - 0x10], 0xffffffff
mov ecx, esi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
mov ecx, dword [ebp - 0x34]
push eax
push edi
call esi
nop
mov dword [ebp - 0x10], 0xffffffff
nop
mov esi, dword [ebp - 0x20]
nop
mov dword [ebp - 0x10], 0xffffffff
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, esi
xor ecx, 0x704fad9e
mov edi, dword [eax + ecx]
mov dword [ebp - 0x68], eax
add edi, eax
mov ecx, esi
xor ecx, 0x704fad26
cmp dword [ecx + edi], 0
je 0x84a6d8
nop
mov edx, dword [ebp - 0x20]
mov ecx, edx
xor ecx, 0x704fad22
mov esi, dword [edi + ecx]
mov ecx, dword [ebp - 0x68]
add esi, ecx
mov eax, edx
xor eax, 0x704fadb6
mov dword [ebp - 0x54], eax
mov eax, edx
xor eax, 0x704fadba
mov dword [ebp - 0x4c], eax
mov eax, edx
xor eax, 0x704fad8e
mov dword [ebp - 0x78], eax
mov eax, edx
xor eax, 0x704fadaa
mov dword [ebp - 0x70], eax
mov eax, edx
xor eax, 0x704fadad
mov dword [ebp - 0x48], eax
mov eax, edx
xor al, 0xbe
mov byte [ebp - 0x50], al
mov eax, edx
xor al, 0x5b
mov byte [ebp - 0x64], al
mov eax, edx
xor al, 0xeb
mov byte [ebp - 0x60], al
mov eax, edx
xor eax, 0x532e3fd1
mov dword [ebp - 0x9c], eax
mov eax, edx
xor eax, 0x704fadaf
mov edi, edx
xor edi, 0x704fa25d
mov dword [ebp - 0x88], edi
mov edi, edx
xor edi, 0x8fb0525e
mov dword [ebp - 0x7c], edi
neg edi
mov dword [ebp - 0x90], edi
cmp eax, 2
mov edx, 1
mov dword [ebp - 0x98], eax
cmovge edx, eax
mov dword [ebp - 0x94], edx
mov eax, dword [ebp - 0x30]
lea edx, [ebp + eax - 0x1d8]
mov dword [ebp - 0x58], edx
lea eax, [ebp + eax - 0xbc]
mov dword [ebp - 0x44], eax
lea eax, [ecx + 2]
mov dword [ebp - 0x74], eax
jmp 0x84a399
add eax, dword [ebp - 0x80]
mov esi, eax
mov ecx, edx
nop
push esi
push ecx
call fcn.0091d82d
add esp, 8
nop
mov esi, dword [ebp - 0x6c]
add esi, dword [ebp - 0x54]
nop
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x6c], esi
mov ebx, dword [esi + eax]
test ebx, ebx
je 0x84a6d8
nop
add ebx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x54]
mov dword [ebp + eax - 0x1d8], 0
mov eax, dword [ebp - 0x4c]
mov edi, dword [ebp - 0x48]
mov dword [ebp + eax - 0x1d8], edi
mov eax, dword [ebp - 0x58]
mov byte [eax], 0
push ebx
call fcn.00903f50
add esp, 4
mov esi, eax
cmp eax, edi
mov dword [ebp - 0x10], 0xffffffff
jbe 0x84a420
nop
mov eax, dword [0xa69058]
mov edi, dword [0xa69040]
xor edi, dword [ebp - 0x24]
sub edi, dword [ebp - 0x3c]
add edi, eax
mov ecx, edi
call dword [0xa37360]
sub esp, 0xc
movzx eax, byte [ebp - 0xbc]
mov byte [esp + 4], al
mov dword [esp + 8], ebx
mov dword [esp], esi
mov ecx, dword [ebp - 0x58]
call edi
jmp 0x84a453
nop
mov eax, dword [ebp - 0x54]
mov dword [ebp + eax - 0x1d8], esi
mov eax, dword [0xa69064]
mov ecx, dword [0xa69030]
xor ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x3c]
add ecx, eax
call dword [0xa37360]
push esi
push ebx
mov edi, dword [ebp - 0x58]
push edi
call ecx
add esp, 0xc
mov byte [edi + esi], 0
nop
mov dword [ebp - 0x1d8], 0x954b60
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp + eax - 0x1d8]
test eax, eax
je 0x84a493
nop
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x4c]
mov esi, dword [ebp - 0x48]
cmp dword [ebp + edx - 0x1d8], esi
jbe 0x84a484
mov ecx, dword [ebp - 0x58]
mov ecx, dword [ecx]
mov dword [ebp - 0x10], 3
push eax
push ecx
call dword [sym.imp.USER32.dll_CharLowerBuffA]
nop
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x48]
mov dword [ebp + eax - 0xbc], ecx
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x54]
mov dword [ebp + ecx - 0xbc], eax
movzx eax, byte [0xa68fbd]
cmp al, byte [ebp - 0x50]
je 0x84a542
nop
movzx eax, byte [ebp - 0x64]
movzx ecx, byte [ebp - 0x60]
lock cmpxchg byte [0xa68fbd], cl
je 0x84a4e0
cmp al, byte [ebp - 0x50]
jne 0x84a4c0
jmp 0x84a542
xor ecx, ecx
mov esi, dword [ebp - 0x9c]
mov edi, dword [ebp - 0x98]
mov ebx, dword [ebp - 0x94]
nop word cs:[eax + eax]
lea eax, [esi + ecx]
xor edx, edx
div edi
movzx eax, byte [ecx + 0xa68fb0]
movzx edx, byte [edx + 0x9e9b20]
xor dl, byte [ebp - 0x20]
xor dl, 0x72
mov ah, dl
xor ah, al
and dl, al
add dl, dl
add dl, ah
mov byte [ecx + 0xa68fb0], dl
inc ecx
cmp ebx, ecx
jne 0x84a500
nop
movzx eax, byte [ebp - 0x50]
xchg byte [0xa68fbd], al
mov dword [ebp - 0x10], 0xffffffff
nop
mov ecx, dword [0xa6905c]
add ecx, dword [ebp - 0x40]
add ecx, dword [ebp - 0x24]
add ecx, dword [0xa69034]
mov dword [ebp - 0x10], 0xffffffff
call dword [0xa37360]
push dword [ebp - 0x2c]
push 0xa68fb0
push dword [ebp - 0x44]
call ecx
add esp, 0xc
mov eax, dword [ebp - 0xa0]
mov byte [ebp + eax - 0xbc], 0
mov dword [ebp - 0xbc], 0x954b60
mov dword [ebp - 0x10], 4
lea ecx, [ebp - 0x1d8]
lea eax, [ebp - 0xbc]
push eax
call fcn.007256b0
mov esi, eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp + eax - 0xbc]
cmp eax, dword [ebp - 0x48]
jbe 0x84a5ee
nop
mov ecx, dword [ebp - 0x44]
mov ecx, dword [ecx]
lea edx, [eax + 1]
cmp edx, dword [ebp - 0x88]
jbe 0x84a5e3
nop
mov edx, dword [ebp - 0x7c]
mov edi, dword [ecx + edx]
add ecx, edx
sub ecx, edi
cmp ecx, dword [ebp - 0x84]
jae 0x84a766
add eax, dword [ebp - 0x80]
mov edx, eax
mov ecx, edi
nop
push edx
push ecx
call fcn.0091d82d
add esp, 8
test esi, esi
je 0x84a650
nop
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp + eax - 0x1d8]
cmp eax, dword [ebp - 0x48]
jbe 0x84a392
nop
mov ecx, dword [ebp - 0x58]
mov ecx, dword [ecx]
lea esi, [eax + 1]
cmp esi, dword [ebp - 0x88]
jbe 0x84a387
nop
mov edx, dword [ebp - 0x7c]
mov edx, dword [ecx + edx]
neg ecx
mov esi, ecx
mov edi, dword [ebp - 0x90]
xor esi, edi
and ecx, edi
add esi, edx
lea ecx, [esi + ecx*2]
neg ecx
cmp ecx, dword [ebp - 0x84]
jb 0x84a380
jmp 0x84a773
nop
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
test ecx, ecx
je 0x84a5f2
mov eax, ecx
add eax, dword [ebp - 0x68]
jmp 0x84a67f
nop
mov dword [edx], eax
mov eax, dword [ebp - 0x30]
add dword [ecx + edi], eax
mov eax, dword [ebp - 0x5c]
add eax, dword [ebp - 0x30]
nop
mov dword [ebp - 0x5c], eax
mov eax, dword [eax]
test eax, eax
je 0x84a5f2
js 0x84a679
nop
add eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x78]
mov ecx, dword [ecx + edx]
mov dword [ebp - 0x10], 3
push eax
push ecx
call fcn.008735a0
add esp, 8
nop
mov dword [ebp - 0xbc], eax
mov ecx, dword [ebp - 0x28]
mov edi, dword [ebp - 0x70]
mov edx, dword [ecx + edi]
mov esi, dword [ebp - 0x2c]
cmp edx, dword [ecx + esi]
jne 0x84a670
nop
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0xbc]
push eax
push edx
call fcn.0066c280
jmp 0x84a679
nop
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x8c]
mov esi, dword [eax + ecx]
mov ebx, dword [ebp - 0x30]
lea eax, [ebp + ebx - 0x1d8]
push 0x118
push 0
push eax
call fcn.009350b0
add esp, 0xc
mov edi, dword [ebp - 0x20]
mov eax, edi
xor eax, 0x704facbe
mov dword [ebp - 0x1d8], eax
mov dword [ebp - 0x10], 0xffffffff
mov ecx, esi
call dword [0xa37360]
lea eax, [ebp - 0x1d8]
push eax
call esi
test eax, eax
setne al
mov ecx, edi
xor ecx, 0x704fada7
cmp dword [ebp + ebx - 0x1d8], ecx
seta cl
and cl, al
xor edi, 0x704fad56
mov eax, dword [ebp - 0x28]
mov byte [eax + edi], cl
mov byte [eax], 1
nop
mov eax, dword [ebp - 0x18]
mov dword fs:[0], eax
mov al, 1
add esp, 0x1cc
pop esi
pop edi
pop ebx
pop ebp
ret
nop
mov dword [ebp - 0x10], 1
call fcn.00900ce1
nop
mov dword [ebp - 0x10], 2
call fcn.00900ce1
nop
mov dword [ebp - 0x10], 0
call fcn.00900ce1
nop dword [eax]
push ebp
sub esp, 0xc
add ebp, 0xc
call fcn.009350a0
nop dword [eax]
push ebp
sub esp, 0xc
add ebp, 0xc
call fcn.009350a0
nop dword [eax]
push ebp
sub esp, 0xc
add ebp, 0xc
call fcn.009350a0
nop dword [eax]
push ebp
sub esp, 0xc
add ebp, 0xc
nop
mov eax, dword [0xa69054]
mov esi, dword [ebp - 0x24]
xor esi, dword [0xa69038]
sub esi, dword [ebp - 0x3c]
add esi, eax
mov ecx, esi
call dword [0xa37360]
lea ecx, [ebp - 0x1d8]
call esi
add esp, 0xc
pop ebp
ret