Function at 0x1015a030
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x102753a3
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x18e8
call fcn.10235cb0
mov eax, dword [0x103230ac]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x18b4], ecx
mov eax, dword [0x103c22ec]
mov ecx, dword [ebx + 8]
mov dword [ebp - 0x187c], ecx
test al, 1
jne 0x1015a226
or eax, 1
mov dword [0x103c22ec], eax
mov dword [ebp - 4], 0
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1878], eax
cmp eax, dword [0x103bf634]
je 0x1015a110
mov ecx, dword [eax]
mov dword [ebp - 0x1894], ecx
test ecx, ecx
je 0x1015a0ff
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1015a0d0
xor edx, edx
test ecx, ecx
je 0x1015a0ff
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1015a0e0
cmp esi, 0x4e9f1122
je 0x1015a129
mov eax, dword [ebp - 0x1878]
add eax, 4
mov dword [ebp - 0x1878], eax
cmp eax, dword [0x103bf634]
jne 0x1015a0b3
mov ecx, dword [ebp - 0x187c]
xor eax, eax
mov dword [0x103c22f0], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015a22b
mov eax, dword [ebp - 0x1894]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1878], edi
cmp dword [eax + 4], edi
jle 0x1015a1ed
xor ecx, ecx
mov dword [ebp - 0x1870], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x1864], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015a18d
cmp dword [ecx + 4], 0
jle 0x1015a18d
push 0
mov edx, 0x1c93bcf0
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015a187
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1894]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [ecx + edi], 0
jne 0x1015a196
xor edx, edx
test ecx, ecx
je 0x1015a1c2
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1015a1a3
cmp esi, 0x1c93bcf0
je 0x1015a203
mov eax, dword [ebp - 0x1894]
mov edx, dword [ebp - 0x1878]
mov ecx, dword [ebp - 0x1870]
inc edx
mov edi, dword [ebp - 0x1874]
add ecx, 0x3c
mov dword [ebp - 0x1878], edx
mov dword [ebp - 0x1870], ecx
cmp edx, dword [eax + 4]
jl 0x1015a150
mov ecx, dword [ebp - 0x187c]
mov eax, edi
mov dword [0x103c22f0], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015a22b
mov eax, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x187c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1874]
mov dword [0x103c22f0], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015a22b
mov eax, dword [0x103c22f0]
mov eax, dword [ecx + eax]
mov dword [ebp - 0x1868], eax
mov eax, dword [0x103c3c0c]
test al, 1
jne 0x1015a3d6
or eax, 1
mov dword [0x103c3c0c], eax
mov dword [ebp - 4], 1
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1878], eax
cmp eax, dword [0x103bf634]
je 0x1015a2c0
mov ecx, dword [eax]
mov dword [ebp - 0x1874], ecx
test ecx, ecx
je 0x1015a2af
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015a280
xor edx, edx
test ecx, ecx
je 0x1015a2af
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015a290
cmp edi, 0x72e242a1
je 0x1015a2d9
mov eax, dword [ebp - 0x1878]
add eax, 4
mov dword [ebp - 0x1878], eax
cmp eax, dword [0x103bf634]
jne 0x1015a263
mov ecx, dword [ebp - 0x187c]
xor eax, eax
mov dword [0x103c3bcc], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015a3db
mov eax, dword [ebp - 0x1874]
xor edi, edi
mov dword [ebp - 0x1894], edi
mov dword [ebp - 0x1878], edi
cmp dword [eax + 4], edi
jle 0x1015a39d
xor ecx, ecx
mov dword [ebp - 0x1870], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x1864], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015a33d
cmp dword [ecx + 4], 0
jle 0x1015a33d
push 0
mov edx, 0x84cdad2
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015a337
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1894], edi
mov eax, dword [ebp - 0x1874]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015a346
xor edx, edx
test ecx, ecx
je 0x1015a372
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015a353
cmp edi, 0x84cdad2
je 0x1015a3b3
mov eax, dword [ebp - 0x1874]
mov edx, dword [ebp - 0x1878]
mov ecx, dword [ebp - 0x1870]
inc edx
mov edi, dword [ebp - 0x1894]
add ecx, 0x3c
mov dword [ebp - 0x1878], edx
mov dword [ebp - 0x1870], ecx
cmp edx, dword [eax + 4]
jl 0x1015a300
mov ecx, dword [ebp - 0x187c]
mov eax, edi
mov dword [0x103c3bcc], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015a3db
mov eax, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x187c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1894]
mov dword [0x103c3bcc], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015a3db
mov eax, dword [0x103c3bcc]
cmp dword [ebp - 0x1868], 2
je 0x1015e0a7
cmp dword [ecx + eax], 0
jle 0x1015e0a7
mov eax, dword [ecx + 8]
lea edi, [ecx + 8]
mov ecx, edi
mov dword [ebp - 0x1878], edi
mov eax, dword [eax + 0x24]
call eax
test al, al
jne 0x1015e0a7
mov eax, dword [0x103c5478]
test al, 1
jne 0x1015a5a7
or eax, 1
mov dword [0x103c5478], eax
mov dword [ebp - 4], 2
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1870], eax
cmp eax, dword [0x103bf634]
je 0x1015a493
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1874], ecx
test ecx, ecx
je 0x1015a482
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015a456
xor edx, edx
test ecx, ecx
je 0x1015a482
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015a463
cmp edi, 0x72e242a1
je 0x1015a4ac
mov eax, dword [ebp - 0x1870]
add eax, 4
mov dword [ebp - 0x1870], eax
cmp eax, dword [0x103bf634]
jne 0x1015a440
mov edi, dword [ebp - 0x1878]
xor eax, eax
mov dword [0x103c5474], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015a5ac
mov eax, dword [ebp - 0x1874]
xor edi, edi
mov dword [ebp - 0x1894], edi
mov dword [ebp - 0x1870], edi
cmp dword [eax + 4], edi
jle 0x1015a56e
xor ecx, ecx
mov dword [ebp - 0x1868], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x1864], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015a50e
cmp dword [ecx + 4], 0
jle 0x1015a50e
push 0
mov edx, 0x9c15080d
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015a508
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1894], edi
mov eax, dword [ebp - 0x1874]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015a517
xor edx, edx
test ecx, ecx
je 0x1015a543
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015a524
cmp edi, 0x9c15080d
je 0x1015a584
mov eax, dword [ebp - 0x1874]
mov edx, dword [ebp - 0x1870]
mov ecx, dword [ebp - 0x1868]
inc edx
mov edi, dword [ebp - 0x1894]
add ecx, 0x3c
mov dword [ebp - 0x1870], edx
mov dword [ebp - 0x1868], ecx
cmp edx, dword [eax + 4]
jl 0x1015a4d1
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebp - 0x1878]
mov dword [0x103c5474], eax
jmp 0x1015a5ac
mov eax, dword [ebp - 0x1864]
mov edi, dword [ebp - 0x1878]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1894]
mov dword [0x103c5474], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015a5ac
mov eax, dword [0x103c5474]
mov ecx, dword [ebp - 0x187c]
mov al, byte [ecx + eax]
test al, al
jne 0x1015e0a7
mov eax, dword [edi]
mov ecx, edi
mov esi, dword [0x10842cb8]
add esi, 0x772b78e1
xor esi, 0xa30d42b2
mov eax, dword [eax + 0x28]
call eax
imul eax, eax, 0x394
add eax, esi
je 0x1015e0a7
cmp dword [eax + 0x390], 0
lea esi, [eax + 0x380]
mov dword [ebp - 0x188c], esi
je 0x1015e0a7
mov byte [ebp - 0x1864], 0
mov ecx, esi
push dword [ebp - 0x1864]
sub esp, 0xc
push esp
call fcn.10029fe0
sub esp, 0xc
mov ecx, esi
push esp
call fcn.1002ac20
lea ecx, [ebp - 0x18ec]
call fcn.10167260
add esp, 0x1c
mov dword [ebp - 0x1894], 0
lea eax, [ebp - 0x18dc]
mov ecx, esi
push eax
call fcn.10029fe0
mov ecx, dword [ebp - 0x18e4]
cmp ecx, dword [eax + 8]
je 0x1015a664
lea ecx, [ebp - 0x18ec]
call fcn.1003ba30
mov dword [ebp - 0x1894], eax
push 0x1800
xorps xmm0, xmm0
mov dword [ebp - 0x1830], 0
lea eax, [ebp - 0x1820]
movaps xmmword [ebp - 0x1860], xmm0
push 0
push eax
movaps xmmword [ebp - 0x1850], xmm0
movaps xmmword [ebp - 0x1840], xmm0
mov dword [ebp - 0x182c], 0
mov dword [ebp - 0x1828], 0
call fcn.102372c0
mov eax, dword [0x103c3ba8]
add esp, 0xc
test al, 1
jne 0x1015a83a
or eax, 1
mov dword [0x103c3ba8], eax
mov dword [ebp - 4], 3
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1870], eax
cmp eax, dword [0x103bf634]
je 0x1015a733
nop
mov ecx, dword [eax]
mov dword [ebp - 0x1874], ecx
test ecx, ecx
je 0x1015a722
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015a6f6
xor edx, edx
test ecx, ecx
je 0x1015a722
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015a703
cmp edi, 0x1eee87cc
je 0x1015a746
mov eax, dword [ebp - 0x1870]
add eax, 4
mov dword [ebp - 0x1870], eax
cmp eax, dword [0x103bf634]
jne 0x1015a6e0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3bec], eax
jmp 0x1015a83f
mov eax, dword [ebp - 0x1874]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1870], edi
cmp dword [eax + 4], edi
jle 0x1015a80d
xor ecx, ecx
mov dword [ebp - 0x1864], ecx
nop dword [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x18a0], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015a7ad
cmp dword [ecx + 4], 0
jle 0x1015a7ad
push 0
mov edx, 0x559d81af
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015a7a7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1874]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1015a7b6
xor edx, edx
test ecx, ecx
je 0x1015a7e2
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015a7c3
cmp edi, 0x559d81af
je 0x1015a81d
mov eax, dword [ebp - 0x1874]
mov edx, dword [ebp - 0x1870]
mov ecx, dword [ebp - 0x1864]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1870], edx
mov dword [ebp - 0x1864], ecx
cmp edx, dword [eax + 4]
jl 0x1015a770
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3bec], eax
jmp 0x1015a83f
mov eax, dword [ebp - 0x18a0]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1868]
mov dword [0x103c3bec], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015a83f
mov eax, dword [0x103c3bec]
mov esi, dword [ebp - 0x187c]
mov ecx, esi
movq xmm0, qword [esi + eax]
movq qword [ebp - 0x1860], xmm0
mov eax, dword [esi + eax + 8]
mov dword [ebp - 0x1858], eax
mov eax, dword [esi]
mov eax, dword [eax + 0x28]
call eax
movq xmm0, qword [eax]
movq qword [ebp - 0x1854], xmm0
mov eax, dword [eax + 8]
mov dword [ebp - 0x184c], eax
mov eax, dword [0x103c22c8]
test al, 1
jne 0x1015aa17
or eax, 1
mov dword [0x103c22c8], eax
mov dword [ebp - 4], 4
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015a903
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1868], ecx
test ecx, ecx
je 0x1015a8f2
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015a8c6
xor edx, edx
test ecx, ecx
je 0x1015a8f2
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015a8d3
cmp edi, 0x72e242a1
je 0x1015a91c
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015a8b0
mov esi, dword [ebp - 0x187c]
xor eax, eax
mov dword [0x103c2360], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015aa1c
mov eax, dword [ebp - 0x1868]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015a9de
xor ecx, ecx
mov dword [ebp - 0x1870], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x18a0], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015a97e
cmp dword [ecx + 4], 0
jle 0x1015a97e
push 0
mov edx, 0xf3c2c786
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015a978
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015a987
xor edx, edx
test ecx, ecx
je 0x1015a9b3
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015a994
cmp edi, 0xf3c2c786
je 0x1015a9f4
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1870]
inc edx
mov edi, dword [ebp - 0x1874]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1870], ecx
cmp edx, dword [eax + 4]
jl 0x1015a941
mov esi, dword [ebp - 0x187c]
mov eax, edi
mov dword [0x103c2360], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015aa1c
mov eax, dword [ebp - 0x18a0]
mov esi, dword [ebp - 0x187c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1874]
mov dword [0x103c2360], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015aa1c
mov eax, dword [0x103c2360]
movq xmm0, qword [esi + eax]
movq qword [ebp - 0x1848], xmm0
mov eax, dword [esi + eax + 8]
mov dword [ebp - 0x1840], eax
mov eax, dword [0x103c2300]
test al, 1
jne 0x1015abd3
or eax, 1
mov dword [0x103c2300], eax
mov dword [ebp - 4], 5
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015aab5
mov ecx, dword [eax]
mov dword [ebp - 0x1868], ecx
test ecx, ecx
je 0x1015aaa4
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015aa78
xor edx, edx
test ecx, ecx
je 0x1015aaa4
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015aa85
cmp edi, 0x1eee87cc
je 0x1015aace
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015aa62
mov esi, dword [ebp - 0x187c]
xor eax, eax
mov dword [0x103c2318], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015abd8
mov eax, dword [ebp - 0x1868]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015ab9a
xor ecx, ecx
mov dword [ebp - 0x1870], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x18a0], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015ab30
cmp dword [ecx + 4], 0
jle 0x1015ab30
push 0
mov edx, 0xe57f80c
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015ab2a
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [esi + ecx], 0
jne 0x1015ab40
xor edx, edx
test ecx, ecx
je 0x1015ab6f
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015ab50
cmp edi, 0xe57f80c
je 0x1015abb0
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1870]
inc edx
mov edi, dword [ebp - 0x1874]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1870], ecx
cmp edx, dword [eax + 4]
jl 0x1015aaf3
mov esi, dword [ebp - 0x187c]
mov eax, edi
mov dword [0x103c2318], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015abd8
mov eax, dword [ebp - 0x18a0]
mov esi, dword [ebp - 0x187c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1874]
mov dword [0x103c2318], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015abd8
mov eax, dword [0x103c2318]
movq xmm0, qword [esi + eax]
movq qword [ebp - 0x183c], xmm0
mov eax, dword [esi + eax + 8]
mov dword [ebp - 0x1834], eax
mov eax, dword [0x103c3b74]
test al, 1
jne 0x1015ad87
or eax, 1
mov dword [0x103c3b74], eax
mov dword [ebp - 4], 6
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015ac73
nop
mov ecx, dword [eax]
mov dword [ebp - 0x1868], ecx
test ecx, ecx
je 0x1015ac62
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1015ac36
xor edx, edx
test ecx, ecx
je 0x1015ac62
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015ac43
cmp edi, 0x1eee87cc
je 0x1015ac8c
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015ac20
mov esi, dword [ebp - 0x187c]
xor eax, eax
mov dword [0x103c2338], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015ad8c
mov eax, dword [ebp - 0x1868]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015ad4e
xor ecx, ecx
mov dword [ebp - 0x1870], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x18a0], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015acee
cmp dword [ecx + 4], 0
jle 0x1015acee
push 0
mov edx, 0x7d388d3e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015ace8
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015acf7
xor edx, edx
test ecx, ecx
je 0x1015ad23
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015ad04
cmp edi, 0x7d388d3e
je 0x1015ad64
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1870]
inc edx
mov edi, dword [ebp - 0x1874]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1870], ecx
cmp edx, dword [eax + 4]
jl 0x1015acb1
mov esi, dword [ebp - 0x187c]
mov eax, edi
mov dword [0x103c2338], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015ad8c
mov eax, dword [ebp - 0x18a0]
mov esi, dword [ebp - 0x187c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1874]
mov dword [0x103c2338], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1015ad8c
mov eax, dword [0x103c2338]
movq xmm0, qword [esi + eax]
lea edi, [ebp - 0x1820]
movq qword [ebp - 0x1830], xmm0
mov eax, dword [esi + eax + 8]
mov dword [ebp - 0x1828], eax
mov eax, dword [esi + 0x2920]
mov esi, dword [esi + 0x2914]
lea ecx, [eax + eax*2]
shl ecx, 4
rep movsb byte es:[edi], byte [esi]
mov edi, dword [ebp - 0x1894]
test edi, edi
jne 0x1015b839
mov eax, dword [ebp - 0x1858]
movq xmm0, qword [ebp - 0x1860]
mov dword [ebp - 0x1870], eax
mov eax, dword [0x103c3ba8]
movq qword [ebp - 0x1890], xmm0
test al, 1
jne 0x1015af68
or eax, 1
mov dword [0x103c3ba8], eax
mov dword [ebp - 4], 7
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015ae70
mov ecx, dword [eax]
mov dword [ebp - 0x1868], ecx
test ecx, ecx
je 0x1015ae5f
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015ae30
xor edx, edx
test ecx, ecx
je 0x1015ae5f
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015ae40
cmp edi, 0x1eee87cc
je 0x1015ae8b
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015ae16
xor eax, eax
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x1890]
mov dword [0x103c3bec], eax
jmp 0x1015af6d
mov eax, dword [ebp - 0x1868]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015af4d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x18a0], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015aeed
cmp dword [ecx + 4], 0
jle 0x1015aeed
push 0
mov edx, 0x559d81af
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015aee7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015aef6
xor edx, edx
test ecx, ecx
je 0x1015af22
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015af03
cmp edi, 0x559d81af
je 0x1015af54
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1874]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015aeb0
mov eax, edi
jmp 0x1015ae72
mov eax, dword [ebp - 0x18a0]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1874]
jmp 0x1015ae72
mov eax, dword [0x103c3bec]
mov esi, dword [ebp - 0x187c]
mov ecx, dword [ebp - 0x1870]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
lea ecx, [ebp - 0x1854]
mov eax, dword [0x1040e4ac]
push ecx
mov ecx, esi
call eax
mov eax, dword [ebp - 0x1840]
movq xmm0, qword [ebp - 0x1848]
mov dword [ebp - 0x1870], eax
mov eax, dword [0x103c22c8]
movq qword [ebp - 0x1890], xmm0
test al, 1
jne 0x1015b138
or eax, 1
mov dword [0x103c22c8], eax
mov dword [ebp - 4], 8
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015b033
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1868], ecx
test ecx, ecx
je 0x1015b022
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015aff6
xor edx, edx
test ecx, ecx
je 0x1015b022
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015b003
cmp edi, 0x72e242a1
je 0x1015b054
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015afe0
xor eax, eax
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x1890]
mov dword [0x103c2360], eax
jmp 0x1015b13d
mov eax, dword [ebp - 0x1868]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015b11d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x18a0], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015b0bd
cmp dword [ecx + 4], 0
jle 0x1015b0bd
push 0
mov edx, 0xf3c2c786
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015b0b7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015b0c6
xor edx, edx
test ecx, ecx
je 0x1015b0f2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015b0d3
cmp edi, 0xf3c2c786
je 0x1015b124
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1874]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015b080
mov eax, edi
jmp 0x1015b035
mov eax, dword [ebp - 0x18a0]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1874]
jmp 0x1015b035
mov eax, dword [0x103c2360]
mov ecx, dword [ebp - 0x1870]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
mov eax, dword [ebp - 0x1828]
movq xmm0, qword [ebp - 0x1830]
mov dword [ebp - 0x1870], eax
mov eax, dword [0x103c3b74]
movq qword [ebp - 0x1890], xmm0
test al, 1
jne 0x1015b2f8
or eax, 1
mov dword [0x103c3b74], eax
mov dword [ebp - 4], 9
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015b1f3
nop word [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1868], ecx
test ecx, ecx
je 0x1015b1e2
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015b1b6
xor edx, edx
test ecx, ecx
je 0x1015b1e2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015b1c3
cmp edi, 0x1eee87cc
je 0x1015b214
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015b1a0
xor eax, eax
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x1890]
mov dword [0x103c2338], eax
jmp 0x1015b2fd
mov eax, dword [ebp - 0x1868]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015b2dd
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x18a0], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015b27d
cmp dword [ecx + 4], 0
jle 0x1015b27d
push 0
mov edx, 0x7d388d3e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015b277
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015b286
xor edx, edx
test ecx, ecx
je 0x1015b2b2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015b293
cmp edi, 0x7d388d3e
je 0x1015b2e4
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1874]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015b240
mov eax, edi
jmp 0x1015b1f5
mov eax, dword [ebp - 0x18a0]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1874]
jmp 0x1015b1f5
mov eax, dword [0x103c2338]
mov ecx, dword [ebp - 0x1870]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
mov eax, dword [ebp - 0x1834]
movq xmm0, qword [ebp - 0x183c]
mov dword [ebp - 0x1870], eax
mov eax, dword [0x103c2300]
movq qword [ebp - 0x1890], xmm0
test al, 1
jne 0x1015b4b8
or eax, 1
mov dword [0x103c2300], eax
mov dword [ebp - 4], 0xa
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015b3b3
nop word [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1868], ecx
test ecx, ecx
je 0x1015b3a2
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015b376
xor edx, edx
test ecx, ecx
je 0x1015b3a2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015b383
cmp edi, 0x1eee87cc
je 0x1015b3d4
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015b360
xor eax, eax
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x1890]
mov dword [0x103c2318], eax
jmp 0x1015b4bd
mov eax, dword [ebp - 0x1868]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015b49d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x18a0], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015b43d
cmp dword [ecx + 4], 0
jle 0x1015b43d
push 0
mov edx, 0xe57f80c
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015b437
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015b446
xor edx, edx
test ecx, ecx
je 0x1015b472
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015b453
cmp edi, 0xe57f80c
je 0x1015b4a4
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1874]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015b400
mov eax, edi
jmp 0x1015b3b5
mov eax, dword [ebp - 0x18a0]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1874]
jmp 0x1015b3b5
mov eax, dword [0x103c2318]
mov edx, dword [0x103c2354]
mov ecx, dword [ebp - 0x1870]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
test dl, 1
jne 0x1015b658
or edx, 1
mov dword [0x103c2354], edx
mov dword [ebp - 4], 0xb
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015b553
nop
mov ecx, dword [eax]
mov dword [ebp - 0x1868], ecx
test ecx, ecx
je 0x1015b542
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015b516
xor edx, edx
test ecx, ecx
je 0x1015b542
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015b523
cmp edi, 0x54aff69
je 0x1015b576
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015b500
xor ecx, ecx
mov esi, dword [ebp - 0x187c]
add ecx, 0x1c
mov dword [ebp - 4], 0xffffffff
mov edx, dword [0x103c2354]
mov dword [0x103c22cc], ecx
jmp 0x1015b65e
mov eax, dword [ebp - 0x1868]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015b63d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x18a0], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015b5dd
cmp dword [ecx + 4], 0
jle 0x1015b5dd
push 0
mov edx, 0xddac019e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015b5d7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015b5e6
xor edx, edx
test ecx, ecx
je 0x1015b612
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015b5f3
cmp edi, 0xddac019e
je 0x1015b644
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1874]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015b5a0
mov ecx, edi
jmp 0x1015b555
mov eax, dword [ebp - 0x18a0]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1874]
jmp 0x1015b555
mov ecx, dword [0x103c22cc]
lea eax, [esi + ecx]
test eax, eax
je 0x1015b694
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov eax, dword [0x1040e3cc]
test eax, eax
je 0x1015b67f
add eax, 0xa
mov eax, dword [eax]
mov eax, dword [eax]
dec eax
mov dword [esi + 0x2690], eax
mov dword [esi + 0x2924], 0xff7fffff
test dl, 1
jne 0x1015b724
or edx, 1
mov dword [0x103c2354], edx
mov dword [ebp - 4], 0xc
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015b713
mov ecx, dword [eax]
mov dword [ebp - 0x1868], ecx
test ecx, ecx
je 0x1015b702
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015b6d6
xor edx, edx
test ecx, ecx
je 0x1015b702
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015b6e3
cmp edi, 0x54aff69
je 0x1015b75c
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015b6c0
xor ecx, ecx
mov esi, dword [ebp - 0x187c]
add ecx, 0x1c
mov dword [0x103c22cc], ecx
lea edx, [esi + ecx]
test edx, edx
je 0x1015e0a7
mov eax, dword [esi + 0x2920]
mov edi, dword [esi + 0x2914]
lea ecx, [eax + eax*2]
lea eax, [ebp - 0x1820]
shl ecx, 4
mov esi, eax
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - 0x187c]
mov eax, dword [ecx + 0x2920]
jmp 0x1015e097
mov eax, dword [ebp - 0x1868]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015b81e
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x18a0], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015b7be
cmp dword [ecx + 4], 0
jle 0x1015b7be
push 0
mov edx, 0xddac019e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015b7b8
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015b7c7
xor edx, edx
test ecx, ecx
je 0x1015b7f3
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015b7d4
cmp edi, 0xddac019e
je 0x1015b825
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1874]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015b781
mov ecx, edi
jmp 0x1015b715
mov eax, dword [ebp - 0x18a0]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1874]
jmp 0x1015b715
mov ecx, dword [ebp - 0x1878]
mov esi, dword [0x10842cb8]
add esi, 0x772b78e1
xor esi, 0xa30d42b2
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
imul eax, eax, 0x394
add eax, esi
je 0x1015c089
cmp byte [edi + 0xc], 0
lea eax, [edi + 0xd390]
jne 0x1015b878
lea eax, [edi + 0x94]
movss xmm0, dword [eax + 8]
movss xmm2, dword [eax]
movss xmm1, dword [eax + 4]
movss dword [ebp - 0x18c0], xmm0
mov eax, dword [ebp - 0x18c0]
unpcklps xmm2, xmm1
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c3ba8]
movq qword [ebp - 0x18c8], xmm2
movups xmmword [ebp - 0x18e0], xmm2
test al, 1
jne 0x1015ba39
or eax, 1
mov dword [0x103c3ba8], eax
mov dword [ebp - 4], 0xd
mov eax, dword [0x103bf630]
mov ecx, dword [0x103bf634]
mov dword [ebp - 0x1864], eax
cmp eax, ecx
je 0x1015b935
nop dword [eax]
mov edx, dword [eax]
mov dword [ebp - 0x1870], edx
test edx, edx
je 0x1015b928
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015b8f6
xor edx, edx
test ecx, ecx
je 0x1015b922
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015b903
cmp edi, 0x1eee87cc
je 0x1015b955
mov eax, dword [ebp - 0x1864]
mov ecx, dword [0x103bf634]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, ecx
jne 0x1015b8e0
xor eax, eax
mov edi, dword [ebp - 0x1894]
mov dword [ebp - 4], 0xffffffff
movups xmm2, xmmword [ebp - 0x18e0]
mov dword [0x103c3bec], eax
jmp 0x1015ba3e
mov ecx, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [ecx + 4], edi
jle 0x1015ba1e
xor eax, eax
mov dword [ebp - 0x1868], eax
nop word [eax + eax]
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x18a0], esi
test ecx, ecx
je 0x1015b9be
cmp dword [ecx + 4], 0
jle 0x1015b9be
push 0
mov edx, 0x559d81af
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015b9b8
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015b9c7
xor edx, edx
test ecx, ecx
je 0x1015b9f3
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015b9d4
cmp edi, 0x559d81af
je 0x1015ba25
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
add eax, 0x3c
mov ecx, dword [ebp - 0x1870]
inc edx
mov edi, dword [ebp - 0x1874]
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1868], eax
cmp edx, dword [ecx + 4]
jl 0x1015b980
mov eax, edi
jmp 0x1015b937
mov eax, dword [ebp - 0x18a0]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1874]
jmp 0x1015b937
mov eax, dword [0x103c3bec]
mov esi, dword [ebp - 0x187c]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm2
mov dword [esi + eax + 8], ecx
lea ecx, [ebp - 0x18c8]
mov eax, dword [0x1040e4ac]
push ecx
mov ecx, esi
call eax
mov eax, dword [edi + 0xcc]
movq xmm0, qword [edi + 0xc4]
mov dword [ebp - 0x18a0], eax
mov eax, dword [0x103c3b74]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015bc0a
or eax, 1
mov dword [0x103c3b74], eax
mov dword [ebp - 4], 0xe
mov eax, dword [0x103bf630]
mov ecx, dword [0x103bf634]
mov dword [ebp - 0x1864], eax
cmp eax, ecx
je 0x1015bb05
mov edx, dword [eax]
mov dword [ebp - 0x1870], edx
test edx, edx
je 0x1015baf8
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015bac6
xor edx, edx
test ecx, ecx
je 0x1015baf2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015bad3
cmp edi, 0x1eee87cc
je 0x1015bb2c
mov eax, dword [ebp - 0x1864]
mov ecx, dword [0x103bf634]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, ecx
jne 0x1015bab0
xor eax, eax
mov edi, dword [ebp - 0x1894]
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov dword [0x103c2338], eax
jmp 0x1015bc0f
mov ecx, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [ecx + 4], edi
jle 0x1015bbef
xor eax, eax
mov dword [ebp - 0x1868], eax
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x1888], esi
test ecx, ecx
je 0x1015bb8f
cmp dword [ecx + 4], 0
jle 0x1015bb8f
push 0
mov edx, 0x7d388d3e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015bb89
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015bb98
xor edx, edx
test ecx, ecx
je 0x1015bbc4
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015bba5
cmp edi, 0x7d388d3e
je 0x1015bbf6
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
add eax, 0x3c
mov ecx, dword [ebp - 0x1870]
inc edx
mov edi, dword [ebp - 0x1874]
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1868], eax
cmp edx, dword [ecx + 4]
jl 0x1015bb51
mov eax, edi
jmp 0x1015bb07
mov eax, dword [ebp - 0x1888]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1874]
jmp 0x1015bb07
mov eax, dword [0x103c2338]
mov ecx, dword [ebp - 0x18a0]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
mov eax, dword [edi + 0xc0]
movq xmm0, qword [edi + 0xb8]
mov dword [ebp - 0x18a0], eax
mov eax, dword [0x103c2300]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015bdc9
or eax, 1
mov dword [0x103c2300], eax
mov dword [ebp - 4], 0xf
mov eax, dword [0x103bf630]
mov ecx, dword [0x103bf634]
mov dword [ebp - 0x1864], eax
cmp eax, ecx
je 0x1015bcc5
nop dword [eax + eax]
mov edx, dword [eax]
mov dword [ebp - 0x1870], edx
test edx, edx
je 0x1015bcb8
mov esi, dword [edx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015bc86
xor edx, edx
test ecx, ecx
je 0x1015bcb2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015bc93
cmp edi, 0x1eee87cc
je 0x1015bce6
mov eax, dword [ebp - 0x1864]
mov ecx, dword [0x103bf634]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, ecx
jne 0x1015bc70
xor eax, eax
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov dword [0x103c2318], eax
jmp 0x1015bdce
mov ecx, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [ecx + 4], edi
jle 0x1015bdae
xor eax, eax
mov dword [ebp - 0x1868], eax
nop dword [eax + eax]
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x1888], esi
test ecx, ecx
je 0x1015bd4e
cmp dword [ecx + 4], 0
jle 0x1015bd4e
push 0
mov edx, 0xe57f80c
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015bd48
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015bd57
xor edx, edx
test ecx, ecx
je 0x1015bd83
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015bd64
cmp edi, 0xe57f80c
je 0x1015bdb5
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
add eax, 0x3c
mov ecx, dword [ebp - 0x1870]
inc edx
mov edi, dword [ebp - 0x1874]
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1868], eax
cmp edx, dword [ecx + 4]
jl 0x1015bd10
mov eax, edi
jmp 0x1015bcc7
mov eax, dword [ebp - 0x1888]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1874]
jmp 0x1015bcc7
mov eax, dword [0x103c2318]
mov edx, dword [0x103c2354]
mov ecx, dword [ebp - 0x18a0]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
test dl, 1
jne 0x1015bf69
or edx, 1
mov dword [0x103c2354], edx
mov dword [ebp - 4], 0x10
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015be63
nop
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015be52
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015be26
xor edx, edx
test ecx, ecx
je 0x1015be52
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015be33
cmp edi, 0x54aff69
je 0x1015be86
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015be10
xor ecx, ecx
mov esi, dword [ebp - 0x187c]
add ecx, 0x1c
mov dword [ebp - 4], 0xffffffff
mov edx, dword [0x103c2354]
mov dword [0x103c22cc], ecx
jmp 0x1015bf6f
mov ecx, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [ecx + 4], edi
jle 0x1015bf4e
xor eax, eax
mov dword [ebp - 0x1868], eax
nop dword [eax + eax]
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x1888], esi
test ecx, ecx
je 0x1015beee
cmp dword [ecx + 4], 0
jle 0x1015beee
push 0
mov edx, 0xddac019e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015bee8
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015bef7
xor edx, edx
test ecx, ecx
je 0x1015bf23
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015bf04
cmp edi, 0xddac019e
je 0x1015bf55
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
add eax, 0x3c
mov ecx, dword [ebp - 0x1870]
inc edx
mov edi, dword [ebp - 0x1874]
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1868], eax
cmp edx, dword [ecx + 4]
jl 0x1015beb0
mov ecx, edi
jmp 0x1015be65
mov eax, dword [ebp - 0x1888]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1874]
jmp 0x1015be65
mov ecx, dword [0x103c22cc]
lea eax, [esi + ecx]
test eax, eax
je 0x1015bfa5
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov eax, dword [0x1040e3cc]
test eax, eax
je 0x1015bf90
add eax, 0xa
mov eax, dword [eax]
mov eax, dword [eax]
dec eax
mov dword [esi + 0x2690], eax
mov dword [esi + 0x2924], 0xff7fffff
test dl, 1
jne 0x1015c040
or edx, 1
mov dword [0x103c2354], edx
mov dword [ebp - 4], 0x11
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015c028
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015c017
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015bfe7
xor edx, edx
test ecx, ecx
je 0x1015c017
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015bff4
cmp edi, 0x54aff69
je 0x1015c0ea
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015bfd1
xor ecx, ecx
mov esi, dword [ebp - 0x187c]
add ecx, 0x1c
mov dword [0x103c22cc], ecx
mov dword [ebp - 4], 0xffffffff
lea edx, [esi + ecx]
test edx, edx
je 0x1015c089
mov eax, dword [esi + 0x2920]
mov edi, dword [esi + 0x2914]
mov esi, dword [ebp - 0x1894]
add esi, 0xa390
lea ecx, [eax + eax*2]
shl ecx, 4
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - 0x187c]
mov esi, dword [ebp - 0x1894]
mov edi, dword [edx]
mov eax, dword [ecx + 0x2920]
lea ecx, [eax + eax*2]
shl ecx, 4
add esi, 0xa390
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - 0x18b4]
mov eax, dword [ecx]
lea esi, [eax + 0x63cd8]
lea edi, [eax + 0x63d68]
cmp esi, edi
je 0x1015c1ed
push dword [ecx + 4]
mov eax, dword [esi]
mov ecx, dword [ecx]
sub esp, 0xc
mov edx, esp
push dword [ebp - 0x1894]
mov dword [edx], eax
mov eax, dword [esi + 4]
push dword [ebp - 0x187c]
mov dword [edx + 4], eax
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
call fcn.10158f60
test al, al
jne 0x1015c1c9
mov ecx, dword [ebp - 0x18b4]
add esi, 0xc
cmp esi, edi
jne 0x1015c0a5
jmp 0x1015c1ed
mov ecx, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [ecx + 4], edi
jle 0x1015c1ae
xor eax, eax
mov dword [ebp - 0x1868], eax
nop
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x1888], esi
test ecx, ecx
je 0x1015c14e
cmp dword [ecx + 4], 0
jle 0x1015c14e
push 0
mov edx, 0xddac019e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015c148
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015c157
xor edx, edx
test ecx, ecx
je 0x1015c183
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015c164
cmp edi, 0xddac019e
je 0x1015c1b5
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
add eax, 0x3c
mov ecx, dword [ebp - 0x1870]
inc edx
mov edi, dword [ebp - 0x1874]
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1868], eax
cmp edx, dword [ecx + 4]
jl 0x1015c110
mov ecx, edi
jmp 0x1015c02a
mov eax, dword [ebp - 0x1888]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1874]
jmp 0x1015c02a
mov edx, dword [ebp - 0x18b4]
movq xmm0, qword [esi]
mov ecx, dword [edx + 8]
movq qword [ecx + 4], xmm0
mov eax, dword [esi + 8]
mov dword [ecx + 0xc], eax
mov eax, dword [edx + 8]
mov edx, dword [ebp - 0x1894]
mov dword [eax + 0x10], edx
mov edi, dword [ebp - 0x188c]
lea eax, [ebp - 0x18c8]
mov byte [ebp - 0x1888], 0
mov ecx, edi
push dword [ebp - 0x1888]
sub esp, 0xc
mov esi, esp
push eax
call fcn.1002ac20
lea eax, [ebp - 0x18c8]
mov ecx, esi
push eax
call fcn.1001ee10
sub esp, 0xc
lea eax, [ebp - 0x18c8]
mov esi, esp
mov ecx, edi
push eax
call fcn.10029fe0
lea eax, [ebp - 0x18c8]
mov ecx, esi
push eax
call fcn.1001ee10
lea ecx, [ebp - 0x18dc]
call fcn.101672b0
add esp, 0x1c
lea eax, [ebp - 0x18c8]
mov ecx, edi
push eax
call fcn.1002ac20
lea eax, [ebp - 0x18c8]
push eax
lea ecx, [ebp - 0x18ac]
call fcn.1001ee10
mov eax, dword [ebp - 0x18d4]
cmp eax, dword [ebp - 0x18a4]
je 0x1015e198
lea ecx, [ebp - 0x18dc]
call fcn.1004f5a0
mov edi, eax
mov dword [ebp - 0x1870], edi
test edi, edi
je 0x1015e198
cmp edi, dword [ebp - 0x1894]
je 0x1015e198
mov ecx, dword [ebp - 0x1878]
lea eax, [edi + 0xa390]
mov esi, dword [0x10842cb8]
mov dword [ebp - 0x1894], eax
add esi, 0x772b78e1
xor esi, 0xa30d42b2
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
imul eax, eax, 0x394
add eax, esi
je 0x1015cafc
cmp byte [edi + 0xc], 0
lea eax, [edi + 0xd390]
jne 0x1015c2f4
lea eax, [edi + 0x94]
movss xmm0, dword [eax + 8]
movss xmm2, dword [eax]
movss xmm1, dword [eax + 4]
movss dword [ebp - 0x18c0], xmm0
mov eax, dword [ebp - 0x18c0]
unpcklps xmm2, xmm1
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c3ba8]
movq qword [ebp - 0x18c8], xmm2
movups xmmword [ebp - 0x18b0], xmm2
test al, 1
jne 0x1015c4b8
or eax, 1
mov dword [0x103c3ba8], eax
mov dword [ebp - 4], 0x18
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015c3b3
nop dword [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1868], ecx
test ecx, ecx
je 0x1015c3a2
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015c376
xor edx, edx
test ecx, ecx
je 0x1015c3a2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015c383
cmp edi, 0x1eee87cc
je 0x1015c3d3
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015c360
xor eax, eax
mov dword [ebp - 4], 0xffffffff
movups xmm2, xmmword [ebp - 0x18b0]
mov edi, dword [ebp - 0x1870]
mov dword [0x103c3bec], eax
jmp 0x1015c4bd
mov eax, dword [ebp - 0x1868]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015c49d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015c43d
cmp dword [ecx + 4], 0
jle 0x1015c43d
push 0
mov edx, 0x559d81af
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015c437
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015c446
xor edx, edx
test ecx, ecx
je 0x1015c472
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015c453
cmp edi, 0x559d81af
je 0x1015c4a4
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1874]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015c400
mov eax, edi
jmp 0x1015c3b5
mov eax, dword [ebp - 0x188c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1874]
jmp 0x1015c3b5
mov eax, dword [0x103c3bec]
mov esi, dword [ebp - 0x187c]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm2
mov dword [esi + eax + 8], ecx
lea ecx, [ebp - 0x18c8]
mov eax, dword [0x1040e4ac]
push ecx
mov ecx, esi
call eax
mov eax, dword [edi + 0xcc]
movq xmm0, qword [edi + 0xc4]
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c3b74]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015c688
or eax, 1
mov dword [0x103c3b74], eax
mov dword [ebp - 4], 0x19
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015c583
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1868], ecx
test ecx, ecx
je 0x1015c572
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015c546
xor edx, edx
test ecx, ecx
je 0x1015c572
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015c553
cmp edi, 0x1eee87cc
je 0x1015c5aa
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015c530
xor eax, eax
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov edi, dword [ebp - 0x1870]
mov dword [0x103c2338], eax
jmp 0x1015c68d
mov eax, dword [ebp - 0x1868]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015c66d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015c60d
cmp dword [ecx + 4], 0
jle 0x1015c60d
push 0
mov edx, 0x7d388d3e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015c607
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015c616
xor edx, edx
test ecx, ecx
je 0x1015c642
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015c623
cmp edi, 0x7d388d3e
je 0x1015c674
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1874]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015c5d0
mov eax, edi
jmp 0x1015c585
mov eax, dword [ebp - 0x188c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1874]
jmp 0x1015c585
mov eax, dword [0x103c2338]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
mov eax, dword [edi + 0xc0]
movq xmm0, qword [edi + 0xb8]
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c2300]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015c848
or eax, 1
mov dword [0x103c2300], eax
mov dword [ebp - 4], 0x1a
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015c743
nop word [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1868], ecx
test ecx, ecx
je 0x1015c732
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015c706
xor edx, edx
test ecx, ecx
je 0x1015c732
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015c713
cmp edi, 0x1eee87cc
je 0x1015c764
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015c6f0
xor eax, eax
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov dword [0x103c2318], eax
jmp 0x1015c84d
mov eax, dword [ebp - 0x1868]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015c82d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015c7cd
cmp dword [ecx + 4], 0
jle 0x1015c7cd
push 0
mov edx, 0xe57f80c
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015c7c7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015c7d6
xor edx, edx
test ecx, ecx
je 0x1015c802
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015c7e3
cmp edi, 0xe57f80c
je 0x1015c834
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1874]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015c790
mov eax, edi
jmp 0x1015c745
mov eax, dword [ebp - 0x188c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1874]
jmp 0x1015c745
mov eax, dword [0x103c2318]
mov edx, dword [0x103c2354]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
test dl, 1
jne 0x1015c9e8
or edx, 1
mov dword [0x103c2354], edx
mov dword [ebp - 4], 0x1b
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015c8e3
nop
mov ecx, dword [eax]
mov dword [ebp - 0x1868], ecx
test ecx, ecx
je 0x1015c8d2
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015c8a6
xor edx, edx
test ecx, ecx
je 0x1015c8d2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015c8b3
cmp edi, 0x54aff69
je 0x1015c906
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015c890
xor ecx, ecx
mov esi, dword [ebp - 0x187c]
add ecx, 0x1c
mov dword [ebp - 4], 0xffffffff
mov edx, dword [0x103c2354]
mov dword [0x103c22cc], ecx
jmp 0x1015c9ee
mov eax, dword [ebp - 0x1868]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015c9cd
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015c96d
cmp dword [ecx + 4], 0
jle 0x1015c96d
push 0
mov edx, 0xddac019e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015c967
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015c976
xor edx, edx
test ecx, ecx
je 0x1015c9a2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015c983
cmp edi, 0xddac019e
je 0x1015c9d4
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1874]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015c930
mov ecx, edi
jmp 0x1015c8e5
mov eax, dword [ebp - 0x188c]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1874]
jmp 0x1015c8e5
mov ecx, dword [0x103c22cc]
lea eax, [esi + ecx]
test eax, eax
je 0x1015ca24
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov eax, dword [0x1040e3cc]
test eax, eax
je 0x1015ca0f
add eax, 0xa
mov eax, dword [eax]
mov eax, dword [eax]
dec eax
mov dword [esi + 0x2690], eax
mov dword [esi + 0x2924], 0xff7fffff
test dl, 1
jne 0x1015cabf
or edx, 1
mov dword [0x103c2354], edx
mov dword [ebp - 4], 0x1c
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015caa7
mov ecx, dword [eax]
mov dword [ebp - 0x1868], ecx
test ecx, ecx
je 0x1015ca96
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015ca66
xor edx, edx
test ecx, ecx
je 0x1015ca96
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015ca73
cmp edi, 0x54aff69
je 0x1015cb5d
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015ca50
xor ecx, ecx
mov esi, dword [ebp - 0x187c]
add ecx, 0x1c
mov dword [0x103c22cc], ecx
mov dword [ebp - 4], 0xffffffff
lea edx, [esi + ecx]
test edx, edx
je 0x1015cafc
mov eax, dword [esi + 0x2920]
mov edi, dword [esi + 0x2914]
mov esi, dword [ebp - 0x1894]
lea ecx, [eax + eax*2]
mov eax, dword [ebp - 0x187c]
shl ecx, 4
rep movsb byte es:[edi], byte [esi]
mov eax, dword [eax + 0x2920]
mov edi, dword [edx]
mov esi, dword [ebp - 0x1894]
lea ecx, [eax + eax*2]
shl ecx, 4
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - 0x18b4]
mov eax, dword [ecx]
lea esi, [eax + 0x63cd8]
lea edi, [eax + 0x63d68]
cmp esi, edi
je 0x1015cc5e
push dword [ecx + 4]
mov eax, dword [esi]
mov ecx, dword [ecx]
sub esp, 0xc
mov edx, esp
push dword [ebp - 0x1870]
mov dword [edx], eax
mov eax, dword [esi + 4]
push dword [ebp - 0x187c]
mov dword [edx + 4], eax
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
call fcn.10158f60
test al, al
jne 0x1015cc3a
mov ecx, dword [ebp - 0x18b4]
add esi, 0xc
cmp esi, edi
jne 0x1015cb18
jmp 0x1015cc5e
mov eax, dword [ebp - 0x1868]
xor edi, edi
mov dword [ebp - 0x1874], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015cc1f
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015cbbf
cmp dword [ecx + 4], 0
jle 0x1015cbbf
push 0
mov edx, 0xddac019e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015cbb9
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1874], edi
mov eax, dword [ebp - 0x1868]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015cbc8
xor edx, edx
test ecx, ecx
je 0x1015cbf4
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015cbd5
cmp edi, 0xddac019e
je 0x1015cc26
mov eax, dword [ebp - 0x1868]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1874]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015cb82
mov ecx, edi
jmp 0x1015caa9
mov eax, dword [ebp - 0x188c]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1874]
jmp 0x1015caa9
mov edx, dword [ebp - 0x18b4]
movq xmm0, qword [esi]
mov ecx, dword [edx + 8]
movq qword [ecx + 4], xmm0
mov eax, dword [esi + 8]
mov dword [ecx + 0xc], eax
mov eax, dword [edx + 8]
mov ecx, dword [ebp - 0x1870]
mov dword [eax + 0x10], ecx
mov eax, dword [ebp - 0x1858]
movq xmm0, qword [ebp - 0x1860]
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c3ba8]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015ce05
or eax, 1
mov dword [0x103c3ba8], eax
mov dword [ebp - 4], 0x1d
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015cd03
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015ccf2
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015ccc6
xor edx, edx
test ecx, ecx
je 0x1015ccf2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015ccd3
cmp edi, 0x1eee87cc
je 0x1015cd1e
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015ccb0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov dword [0x103c3bec], eax
jmp 0x1015ce0a
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015cdea
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015cd80
cmp dword [ecx + 4], 0
jle 0x1015cd80
push 0
mov edx, 0x559d81af
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015cd7a
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015cd90
xor edx, edx
test ecx, ecx
je 0x1015cdbf
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015cda0
cmp edi, 0x559d81af
je 0x1015cdf1
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015cd43
mov eax, edi
jmp 0x1015cd05
mov eax, dword [ebp - 0x188c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1868]
jmp 0x1015cd05
mov eax, dword [0x103c3bec]
mov esi, dword [ebp - 0x187c]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
lea ecx, [ebp - 0x1854]
mov eax, dword [0x1040e4ac]
push ecx
mov ecx, esi
call eax
mov eax, dword [ebp - 0x1840]
movq xmm0, qword [ebp - 0x1848]
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c22c8]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015cfd8
or eax, 1
mov dword [0x103c22c8], eax
mov dword [ebp - 4], 0x1e
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015ced3
nop word [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015cec2
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015ce96
xor edx, edx
test ecx, ecx
je 0x1015cec2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015cea3
cmp edi, 0x72e242a1
je 0x1015cef4
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015ce80
xor eax, eax
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov dword [0x103c2360], eax
jmp 0x1015cfdd
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015cfbd
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015cf5d
cmp dword [ecx + 4], 0
jle 0x1015cf5d
push 0
mov edx, 0xf3c2c786
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015cf57
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015cf66
xor edx, edx
test ecx, ecx
je 0x1015cf92
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015cf73
cmp edi, 0xf3c2c786
je 0x1015cfc4
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015cf20
mov eax, edi
jmp 0x1015ced5
mov eax, dword [ebp - 0x188c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1868]
jmp 0x1015ced5
mov eax, dword [0x103c2360]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
mov eax, dword [ebp - 0x1828]
movq xmm0, qword [ebp - 0x1830]
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c3b74]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015d198
or eax, 1
mov dword [0x103c3b74], eax
mov dword [ebp - 4], 0x1f
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015d093
nop word [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015d082
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015d056
xor edx, edx
test ecx, ecx
je 0x1015d082
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015d063
cmp edi, 0x1eee87cc
je 0x1015d0b4
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015d040
xor eax, eax
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov dword [0x103c2338], eax
jmp 0x1015d19d
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015d17d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015d11d
cmp dword [ecx + 4], 0
jle 0x1015d11d
push 0
mov edx, 0x7d388d3e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015d117
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015d126
xor edx, edx
test ecx, ecx
je 0x1015d152
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015d133
cmp edi, 0x7d388d3e
je 0x1015d184
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015d0e0
mov eax, edi
jmp 0x1015d095
mov eax, dword [ebp - 0x188c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1868]
jmp 0x1015d095
mov eax, dword [0x103c2338]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
mov eax, dword [ebp - 0x1834]
movq xmm0, qword [ebp - 0x183c]
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c2300]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015d358
or eax, 1
mov dword [0x103c2300], eax
mov dword [ebp - 4], 0x20
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015d253
nop word [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015d242
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015d216
xor edx, edx
test ecx, ecx
je 0x1015d242
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015d223
cmp edi, 0x1eee87cc
je 0x1015d274
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015d200
xor eax, eax
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov dword [0x103c2318], eax
jmp 0x1015d35d
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015d33d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015d2dd
cmp dword [ecx + 4], 0
jle 0x1015d2dd
push 0
mov edx, 0xe57f80c
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015d2d7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015d2e6
xor edx, edx
test ecx, ecx
je 0x1015d312
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015d2f3
cmp edi, 0xe57f80c
je 0x1015d344
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015d2a0
mov eax, edi
jmp 0x1015d255
mov eax, dword [ebp - 0x188c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1868]
jmp 0x1015d255
mov eax, dword [0x103c2318]
mov edx, dword [0x103c2354]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
test dl, 1
jne 0x1015d4f8
or edx, 1
mov dword [0x103c2354], edx
mov dword [ebp - 4], 0x21
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015d3f3
nop
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015d3e2
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015d3b6
xor edx, edx
test ecx, ecx
je 0x1015d3e2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015d3c3
cmp edi, 0x54aff69
je 0x1015d416
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015d3a0
xor ecx, ecx
mov esi, dword [ebp - 0x187c]
add ecx, 0x1c
mov dword [ebp - 4], 0xffffffff
mov edx, dword [0x103c2354]
mov dword [0x103c22cc], ecx
jmp 0x1015d4fe
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015d4dd
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015d47d
cmp dword [ecx + 4], 0
jle 0x1015d47d
push 0
mov edx, 0xddac019e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015d477
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015d486
xor edx, edx
test ecx, ecx
je 0x1015d4b2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015d493
cmp edi, 0xddac019e
je 0x1015d4e4
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015d440
mov ecx, edi
jmp 0x1015d3f5
mov eax, dword [ebp - 0x188c]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1868]
jmp 0x1015d3f5
mov ecx, dword [0x103c22cc]
lea eax, [esi + ecx]
test eax, eax
je 0x1015d534
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov eax, dword [0x1040e3cc]
test eax, eax
je 0x1015d51f
add eax, 0xa
mov eax, dword [eax]
mov eax, dword [eax]
dec eax
mov dword [esi + 0x2690], eax
mov dword [esi + 0x2924], 0xff7fffff
test dl, 1
jne 0x1015d5cf
or edx, 1
mov dword [0x103c2354], edx
mov dword [ebp - 4], 0x22
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015d5b7
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015d5a6
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015d576
xor edx, edx
test ecx, ecx
je 0x1015d5a6
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015d583
cmp edi, 0x54aff69
je 0x1015d6e2
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015d560
xor ecx, ecx
mov esi, dword [ebp - 0x187c]
add ecx, 0x1c
mov dword [0x103c22cc], ecx
mov dword [ebp - 4], 0xffffffff
lea edx, [esi + ecx]
test edx, edx
je 0x1015d60e
mov eax, dword [esi + 0x2920]
mov edi, dword [esi + 0x2914]
lea ecx, [eax + eax*2]
lea eax, [ebp - 0x1820]
shl ecx, 4
mov esi, eax
mov eax, dword [ebp - 0x187c]
rep movsb byte es:[edi], byte [esi]
mov edi, dword [edx]
lea esi, [ebp - 0x1820]
mov eax, dword [eax + 0x2920]
lea ecx, [eax + eax*2]
shl ecx, 4
rep movsb byte es:[edi], byte [esi]
mov edx, dword [ebp - 0x18b4]
mov eax, dword [edx + 8]
cmp dword [eax + 0x10], 0
je 0x1015e0a7
mov eax, dword [ebp - 0x1858]
movq xmm0, qword [ebp - 0x1860]
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c3ba8]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015d8a8
or eax, 1
mov dword [0x103c3ba8], eax
mov dword [ebp - 4], 0x23
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015d6c7
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015d6b6
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1015d686
xor edx, edx
test ecx, ecx
je 0x1015d6b6
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015d693
cmp edi, 0x1eee87cc
je 0x1015d7c8
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015d670
xor eax, eax
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov dword [0x103c3bec], eax
jmp 0x1015d8ad
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015d7ad
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop word [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015d74d
cmp dword [ecx + 4], 0
jle 0x1015d74d
push 0
mov edx, 0xddac019e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015d747
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015d756
xor edx, edx
test ecx, ecx
je 0x1015d782
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015d763
cmp edi, 0xddac019e
je 0x1015d7b4
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015d710
mov ecx, edi
jmp 0x1015d5b9
mov eax, dword [ebp - 0x188c]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1868]
jmp 0x1015d5b9
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015d88d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015d82d
cmp dword [ecx + 4], 0
jle 0x1015d82d
push 0
mov edx, 0x559d81af
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015d827
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1015d836
xor edx, edx
test ecx, ecx
je 0x1015d862
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015d843
cmp edi, 0x559d81af
je 0x1015d894
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015d7f0
mov eax, edi
jmp 0x1015d6c9
mov eax, dword [ebp - 0x188c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1868]
jmp 0x1015d6c9
mov eax, dword [0x103c3bec]
mov esi, dword [ebp - 0x187c]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
lea ecx, [ebp - 0x1854]
mov eax, dword [0x1040e4ac]
push ecx
mov ecx, esi
call eax
mov eax, dword [ebp - 0x1840]
movq xmm0, qword [ebp - 0x1848]
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c22c8]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015da78
or eax, 1
mov dword [0x103c22c8], eax
mov dword [ebp - 4], 0x24
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015d973
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015d962
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015d936
xor edx, edx
test ecx, ecx
je 0x1015d962
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015d943
cmp edi, 0x72e242a1
je 0x1015d994
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015d920
xor eax, eax
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov dword [0x103c2360], eax
jmp 0x1015da7d
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015da5d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015d9fd
cmp dword [ecx + 4], 0
jle 0x1015d9fd
push 0
mov edx, 0xf3c2c786
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015d9f7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1015da06
xor edx, edx
test ecx, ecx
je 0x1015da32
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015da13
cmp edi, 0xf3c2c786
je 0x1015da64
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015d9c0
mov eax, edi
jmp 0x1015d975
mov eax, dword [ebp - 0x188c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1868]
jmp 0x1015d975
mov eax, dword [0x103c2360]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
mov eax, dword [ebp - 0x1828]
movq xmm0, qword [ebp - 0x1830]
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c3b74]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015dc38
or eax, 1
mov dword [0x103c3b74], eax
mov dword [ebp - 4], 0x25
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015db33
nop word [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015db22
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1015daf6
xor edx, edx
test ecx, ecx
je 0x1015db22
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015db03
cmp edi, 0x1eee87cc
je 0x1015db54
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015dae0
xor eax, eax
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov dword [0x103c2338], eax
jmp 0x1015dc3d
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015dc1d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015dbbd
cmp dword [ecx + 4], 0
jle 0x1015dbbd
push 0
mov edx, 0x7d388d3e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015dbb7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1015dbc6
xor edx, edx
test ecx, ecx
je 0x1015dbf2
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015dbd3
cmp edi, 0x7d388d3e
je 0x1015dc24
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015db80
mov eax, edi
jmp 0x1015db35
mov eax, dword [ebp - 0x188c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1868]
jmp 0x1015db35
mov eax, dword [0x103c2338]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
mov eax, dword [ebp - 0x1834]
movq xmm0, qword [ebp - 0x183c]
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c2300]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015ddf8
or eax, 1
mov dword [0x103c2300], eax
mov dword [ebp - 4], 0x26
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015dcf3
nop word [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015dce2
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015dcb6
xor edx, edx
test ecx, ecx
je 0x1015dce2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015dcc3
cmp edi, 0x1eee87cc
je 0x1015dd14
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015dca0
xor eax, eax
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov dword [0x103c2318], eax
jmp 0x1015ddfd
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015dddd
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015dd7d
cmp dword [ecx + 4], 0
jle 0x1015dd7d
push 0
mov edx, 0xe57f80c
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015dd77
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015dd86
xor edx, edx
test ecx, ecx
je 0x1015ddb2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015dd93
cmp edi, 0xe57f80c
je 0x1015dde4
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015dd40
mov eax, edi
jmp 0x1015dcf5
mov eax, dword [ebp - 0x188c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1868]
jmp 0x1015dcf5
mov eax, dword [0x103c2318]
mov edx, dword [0x103c2354]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
test dl, 1
jne 0x1015df98
or edx, 1
mov dword [0x103c2354], edx
mov dword [ebp - 4], 0x27
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015de93
nop
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015de82
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015de56
xor edx, edx
test ecx, ecx
je 0x1015de82
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015de63
cmp edi, 0x54aff69
je 0x1015deb6
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015de40
xor ecx, ecx
mov esi, dword [ebp - 0x187c]
add ecx, 0x1c
mov dword [ebp - 4], 0xffffffff
mov edx, dword [0x103c2354]
mov dword [0x103c22cc], ecx
jmp 0x1015df9e
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015df7d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015df1d
cmp dword [ecx + 4], 0
jle 0x1015df1d
push 0
mov edx, 0xddac019e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015df17
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015df26
xor edx, edx
test ecx, ecx
je 0x1015df52
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015df33
cmp edi, 0xddac019e
je 0x1015df84
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015dee0
mov ecx, edi
jmp 0x1015de95
mov eax, dword [ebp - 0x188c]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1868]
jmp 0x1015de95
mov ecx, dword [0x103c22cc]
lea eax, [esi + ecx]
test eax, eax
je 0x1015dfd4
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov eax, dword [0x1040e3cc]
test eax, eax
je 0x1015dfbf
add eax, 0xa
mov eax, dword [eax]
mov eax, dword [eax]
dec eax
mov dword [esi + 0x2690], eax
mov dword [esi + 0x2924], 0xff7fffff
test dl, 1
jne 0x1015e068
or edx, 1
mov dword [0x103c2354], edx
mov dword [ebp - 4], 0x28
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015e057
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015e046
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015e016
xor edx, edx
test ecx, ecx
je 0x1015e046
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015e023
cmp edi, 0x54aff69
je 0x1015e0c7
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015e000
xor ecx, ecx
mov esi, dword [ebp - 0x187c]
add ecx, 0x1c
mov dword [0x103c22cc], ecx
lea edx, [esi + ecx]
test edx, edx
je 0x1015e0a7
mov eax, dword [esi + 0x2920]
mov edi, dword [esi + 0x2914]
lea ecx, [eax + eax*2]
lea eax, [ebp - 0x1820]
shl ecx, 4
mov esi, eax
mov eax, dword [ebp - 0x187c]
rep movsb byte es:[edi], byte [esi]
mov eax, dword [eax + 0x2920]
mov edi, dword [edx]
lea ecx, [eax + eax*2]
shl ecx, 4
lea esi, [ebp - 0x1820]
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.1023505f
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015e191
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015e12d
cmp dword [ecx + 4], 0
jle 0x1015e12d
push 0
mov edx, 0xddac019e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015e127
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015e136
xor edx, edx
test ecx, ecx
je 0x1015e166
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015e143
cmp edi, 0xddac019e
je 0x1015ebc2
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015e0f0
mov ecx, edi
jmp 0x1015e059
mov eax, dword [ebp - 0x1858]
movq xmm0, qword [ebp - 0x1860]
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c3ba8]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015e338
or eax, 1
mov dword [0x103c3ba8], eax
mov dword [ebp - 4], 0x12
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015e240
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015e22f
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015e200
xor edx, edx
test ecx, ecx
je 0x1015e22f
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015e210
cmp edi, 0x1eee87cc
je 0x1015e25b
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015e1e3
xor eax, eax
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov dword [0x103c3bec], eax
jmp 0x1015e33d
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015e31d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015e2bd
cmp dword [ecx + 4], 0
jle 0x1015e2bd
push 0
mov edx, 0x559d81af
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015e2b7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015e2c6
xor edx, edx
test ecx, ecx
je 0x1015e2f2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015e2d3
cmp edi, 0x559d81af
je 0x1015e324
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015e280
mov eax, edi
jmp 0x1015e242
mov eax, dword [ebp - 0x188c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1868]
jmp 0x1015e242
mov eax, dword [0x103c3bec]
mov esi, dword [ebp - 0x187c]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
lea ecx, [ebp - 0x1854]
mov eax, dword [0x1040e4ac]
push ecx
mov ecx, esi
call eax
mov eax, dword [ebp - 0x1840]
movq xmm0, qword [ebp - 0x1848]
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c22c8]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015e508
or eax, 1
mov dword [0x103c22c8], eax
mov dword [ebp - 4], 0x13
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015e403
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015e3f2
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015e3c6
xor edx, edx
test ecx, ecx
je 0x1015e3f2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015e3d3
cmp edi, 0x72e242a1
je 0x1015e424
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015e3b0
xor eax, eax
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov dword [0x103c2360], eax
jmp 0x1015e50d
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015e4ed
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015e48d
cmp dword [ecx + 4], 0
jle 0x1015e48d
push 0
mov edx, 0xf3c2c786
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015e487
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015e496
xor edx, edx
test ecx, ecx
je 0x1015e4c2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015e4a3
cmp edi, 0xf3c2c786
je 0x1015e4f4
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015e450
mov eax, edi
jmp 0x1015e405
mov eax, dword [ebp - 0x188c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1868]
jmp 0x1015e405
mov eax, dword [0x103c2360]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
mov eax, dword [ebp - 0x1828]
movq xmm0, qword [ebp - 0x1830]
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c3b74]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015e6c8
or eax, 1
mov dword [0x103c3b74], eax
mov dword [ebp - 4], 0x14
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015e5c3
nop word [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015e5b2
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015e586
xor edx, edx
test ecx, ecx
je 0x1015e5b2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015e593
cmp edi, 0x1eee87cc
je 0x1015e5e4
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015e570
xor eax, eax
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov dword [0x103c2338], eax
jmp 0x1015e6cd
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015e6ad
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015e64d
cmp dword [ecx + 4], 0
jle 0x1015e64d
push 0
mov edx, 0x7d388d3e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015e647
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015e656
xor edx, edx
test ecx, ecx
je 0x1015e682
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015e663
cmp edi, 0x7d388d3e
je 0x1015e6b4
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015e610
mov eax, edi
jmp 0x1015e5c5
mov eax, dword [ebp - 0x188c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1868]
jmp 0x1015e5c5
mov eax, dword [0x103c2338]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
mov eax, dword [ebp - 0x1834]
movq xmm0, qword [ebp - 0x183c]
mov dword [ebp - 0x1888], eax
mov eax, dword [0x103c2300]
movq qword [ebp - 0x18a8], xmm0
test al, 1
jne 0x1015e888
or eax, 1
mov dword [0x103c2300], eax
mov dword [ebp - 4], 0x15
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015e783
nop word [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015e772
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015e746
xor edx, edx
test ecx, ecx
je 0x1015e772
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015e753
cmp edi, 0x1eee87cc
je 0x1015e7a4
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015e730
xor eax, eax
mov esi, dword [ebp - 0x187c]
mov dword [ebp - 4], 0xffffffff
movq xmm0, qword [ebp - 0x18a8]
mov dword [0x103c2318], eax
jmp 0x1015e88d
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015e86d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015e80d
cmp dword [ecx + 4], 0
jle 0x1015e80d
push 0
mov edx, 0xe57f80c
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015e807
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015e816
xor edx, edx
test ecx, ecx
je 0x1015e842
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015e823
cmp edi, 0xe57f80c
je 0x1015e874
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015e7d0
mov eax, edi
jmp 0x1015e785
mov eax, dword [ebp - 0x188c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1868]
jmp 0x1015e785
mov eax, dword [0x103c2318]
mov edx, dword [0x103c2354]
mov ecx, dword [ebp - 0x1888]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
test dl, 1
jne 0x1015ea28
or edx, 1
mov dword [0x103c2354], edx
mov dword [ebp - 4], 0x16
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015e923
nop
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015e912
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015e8e6
xor edx, edx
test ecx, ecx
je 0x1015e912
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015e8f3
cmp edi, 0x54aff69
je 0x1015e946
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015e8d0
xor ecx, ecx
mov esi, dword [ebp - 0x187c]
add ecx, 0x1c
mov dword [ebp - 4], 0xffffffff
mov edx, dword [0x103c2354]
mov dword [0x103c22cc], ecx
jmp 0x1015ea2e
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015ea0d
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop dword [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015e9ad
cmp dword [ecx + 4], 0
jle 0x1015e9ad
push 0
mov edx, 0xddac019e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015e9a7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015e9b6
xor edx, edx
test ecx, ecx
je 0x1015e9e2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015e9c3
cmp edi, 0xddac019e
je 0x1015ea14
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jl 0x1015e970
mov ecx, edi
jmp 0x1015e925
mov eax, dword [ebp - 0x188c]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1868]
jmp 0x1015e925
mov ecx, dword [0x103c22cc]
lea eax, [esi + ecx]
test eax, eax
je 0x1015ea64
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov eax, dword [0x1040e3cc]
test eax, eax
je 0x1015ea4f
add eax, 0xa
mov eax, dword [eax]
mov eax, dword [eax]
dec eax
mov dword [esi + 0x2690], eax
mov dword [esi + 0x2924], 0xff7fffff
test dl, 1
jne 0x1015e068
or edx, 1
mov dword [0x103c2354], edx
mov dword [ebp - 4], 0x17
mov eax, dword [0x103bf630]
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
je 0x1015e057
mov ecx, dword [eax]
mov dword [ebp - 0x1870], ecx
test ecx, ecx
je 0x1015eadf
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015eab0
xor edx, edx
test ecx, ecx
je 0x1015eadf
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015eac0
cmp edi, 0x54aff69
je 0x1015eaf5
mov eax, dword [ebp - 0x1864]
add eax, 4
mov dword [ebp - 0x1864], eax
cmp eax, dword [0x103bf634]
jne 0x1015ea94
jmp 0x1015e057
mov eax, dword [ebp - 0x1870]
xor edi, edi
mov dword [ebp - 0x1868], edi
mov dword [ebp - 0x1864], edi
cmp dword [eax + 4], edi
jle 0x1015e191
xor ecx, ecx
mov dword [ebp - 0x1878], ecx
nop word [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x188c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1015eb5d
cmp dword [ecx + 4], 0
jle 0x1015eb5d
push 0
mov edx, 0xddac019e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1015eb57
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1868], edi
mov eax, dword [ebp - 0x1870]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1015eb66
xor edx, edx
test ecx, ecx
je 0x1015eb92
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1015eb73
cmp edi, 0xddac019e
je 0x1015ebc2
mov eax, dword [ebp - 0x1870]
mov edx, dword [ebp - 0x1864]
mov ecx, dword [ebp - 0x1878]
inc edx
mov edi, dword [ebp - 0x1868]
add ecx, 0x3c
mov dword [ebp - 0x1864], edx
mov dword [ebp - 0x1878], ecx
cmp edx, dword [eax + 4]
jge 0x1015e191
jmp 0x1015eb20
mov eax, dword [ebp - 0x188c]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x1868]
jmp 0x1015e059