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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1026a18d
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
push ebx
push esi
push edi
mov eax, dword [0x103230ac]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x14], ebx
mov esi, dword [0x10c0dd10]
add esi, 0x72c821ae
xor esi, 0x43f50f5d
mov eax, dword [esi + 0x138]
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x1008b8ce
mov eax, dword [0x10c0dd38]
add eax, 0x6153321e
xor eax, 0xf66471cc
cmp byte [eax + 0x34], 0
je 0x1008b34f
cmp byte [eax + 0x35], 0
jne 0x1008b8ce
mov ecx, dword [ebx + 4]
cmp ecx, 2
je 0x1008b8ce
cmp byte [ebx + 0x1c], 0
jne 0x1008b8ce
cmp byte [ebx + 0x1d], 0
je 0x1008b8ce
cmp dword [ebx + 0x20], 0
jg 0x1008b8ce
mov eax, dword [esi + 0x140]
mov edx, dword [eax + 4]
mov eax, dword [ebx + 0x24]
sub eax, edx
mov dword [ebp - 0x30], edx
cdq
xor eax, edx
sub eax, edx
cmp eax, 2
jl 0x1008b8ce
cmp byte [0x103c3c40], 0
jne 0x1008b554
cmp byte [ebx + 0x1e], 0
je 0x1008b554
mov eax, dword [ebx + 0x2c]
mov ecx, dword [0x10c0dd30]
inc eax
mov dword [ebp - 0x34], eax
add ecx, 0x6153321e
mov eax, dword [esi + 0x134]
xor ecx, 0xf66471cc
mov dword [ebp - 0x28], eax
mov eax, dword [0x103c2304]
mov dword [ebp - 0x2c], ecx
test al, 1
jne 0x1008b51a
or eax, 1
mov dword [0x103c2304], eax
mov dword [ebp - 4], 0
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008b444
nop
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1008b439
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008b413
xor edx, edx
test ecx, ecx
je 0x1008b439
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008b420
cmp edi, 0x4e9f1122
je 0x1008b456
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008b400
mov ecx, dword [ebp - 0x2c]
xor eax, eax
mov ebx, dword [ebp - 0x14]
mov dword [0x103c232c], eax
jmp 0x1008b51f
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x24], esi
cmp dword [eax + 4], esi
jle 0x1008b4f8
xor ecx, ecx
mov dword [ebp - 0x20], ecx
nop
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008b4a1
cmp dword [ecx + 4], 0
jle 0x1008b4a1
push 0
mov edx, 0x9a8c76d
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008b49e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x18], esi
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008b4b0
xor edx, edx
test ecx, ecx
je 0x1008b4dc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008b4c0
cmp edi, 0x9a8c76d
je 0x1008b507
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
inc edx
mov esi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], ecx
cmp edx, dword [eax + 4]
jl 0x1008b470
mov ecx, dword [ebp - 0x2c]
mov eax, esi
mov ebx, dword [ebp - 0x14]
mov dword [0x103c232c], eax
jmp 0x1008b51f
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x2c]
mov ebx, dword [ebp - 0x14]
mov dword [0x103c232c], eax
jmp 0x1008b51f
mov eax, dword [0x103c232c]
mov edx, dword [ebp - 0x28]
mov eax, dword [edx + eax]
mov dword [ecx], eax
mov eax, dword [ebp - 0x30]
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x34]
mov dword [ecx + 8], eax
mov byte [ecx + 0x10], 0
mov dword [ecx + 0xc], 1
mov byte [ebx + 0x1e], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
sub ecx, 0
je 0x1008bad9
sub ecx, 1
jne 0x1008b8ce
mov eax, dword [ebx + 0x2c]
mov dword [ebx + 0x14], eax
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x34], eax
mov eax, dword [0x103c2330]
test al, 1
jne 0x1008b6cc
or eax, 1
mov dword [0x103c2330], eax
mov dword [ebp - 4], 0x11
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008b5f4
nop
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1008b5e9
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008b5c3
xor edx, edx
test ecx, ecx
je 0x1008b5e9
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008b5d0
cmp edi, 0xcd2ed041
je 0x1008b607
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008b5b0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3c14], eax
jmp 0x1008b6d1
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x24], esi
cmp dword [eax + 4], esi
jle 0x1008b6a8
xor ecx, ecx
mov dword [ebp - 0x20], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008b651
cmp dword [ecx + 4], 0
jle 0x1008b651
push 0
mov edx, 0xa2ccb41a
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008b64e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x18], esi
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008b660
xor edx, edx
test ecx, ecx
je 0x1008b68c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008b670
cmp edi, 0xa2ccb41a
je 0x1008b6b8
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
inc edx
mov esi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], ecx
cmp edx, dword [eax + 4]
jl 0x1008b620
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3c14], eax
jmp 0x1008b6d1
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x103c3c14], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1008b6d1
mov eax, dword [0x103c3c14]
mov ecx, dword [ebp - 0x34]
movzx esi, word [ecx + eax]
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov ecx, dword [eax + 0xf4]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
test eax, eax
je 0x1008b719
mov eax, dword [eax + 0xc8]
test si, si
je 0x1008b719
cmp si, 0x1f
je 0x1008b719
add eax, 0xfffffff9
cmp eax, 9
jbe 0x1008b8c8
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x34], eax
mov eax, dword [0x103c2330]
test al, 1
jne 0x1008b87c
or eax, 1
mov dword [0x103c2330], eax
mov dword [ebp - 4], 0x12
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008b7a4
nop dword [eax + eax]
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1008b799
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008b773
xor edx, edx
test ecx, ecx
je 0x1008b799
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008b780
cmp edi, 0xcd2ed041
je 0x1008b7b7
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008b760
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3c14], eax
jmp 0x1008b881
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x24], esi
cmp dword [eax + 4], esi
jle 0x1008b858
xor ecx, ecx
mov dword [ebp - 0x20], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008b801
cmp dword [ecx + 4], 0
jle 0x1008b801
push 0
mov edx, 0xa2ccb41a
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008b7fe
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x18], esi
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008b810
xor edx, edx
test ecx, ecx
je 0x1008b83c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008b820
cmp edi, 0xa2ccb41a
je 0x1008b868
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
inc edx
mov esi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], ecx
cmp edx, dword [eax + 4]
jl 0x1008b7d0
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3c14], eax
jmp 0x1008b881
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x103c3c14], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1008b881
mov eax, dword [0x103c3c14]
mov ecx, dword [ebp - 0x34]
cmp word [ecx + eax], 0x40
je 0x1008b8c8
mov ecx, dword [0x1040e298]
add ecx, 0xed3cd0a4
xor ecx, 0x80d02dea
cmp byte [ecx + 0x63d69], 0
jne 0x1008b8e0
call fcn.10147ef0
test al, al
jne 0x1008b8e0
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x140]
and dword [eax + 0x30], 0xfffffffe
mov edx, dword [ebp - 0x14]
mov byte [edx], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10c0dd10]
mov edx, dword [ebp - 0x14]
add ecx, 0x72c821ae
xor ecx, 0x43f50f5d
mov eax, dword [ecx + 0x10]
cmp byte [eax], 0
je 0x1008baca
mov ecx, dword [edx + 0x30]
mov dword [edx + 0x10], ecx
mov byte [edx], 1
mov edx, dword [0x10c0dd30]
lea eax, [ecx + 1]
add edx, 0x6153321e
mov ecx, dword [0x10c0dd10]
xor edx, 0xf66471cc
add ecx, 0x72c821ae
mov dword [ebp - 0x28], eax
xor ecx, 0x43f50f5d
mov dword [ebp - 0x34], edx
mov eax, dword [ecx + 0x140]
mov eax, dword [eax + 4]
mov dword [ebp - 0x2c], eax
mov eax, dword [ecx + 0x134]
mov dword [ebp - 0x30], eax
mov eax, dword [0x103c2304]
test al, 1
jne 0x1008ba94
or eax, 1
mov dword [0x103c2304], eax
mov dword [ebp - 4], 0x13
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008b9c4
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1008b9b9
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [esi + ecx], 0
jne 0x1008b990
xor edx, edx
test ecx, ecx
je 0x1008b9b9
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008b9a0
cmp edi, 0x4e9f1122
je 0x1008b9d3
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008b976
mov edx, dword [ebp - 0x34]
xor eax, eax
mov dword [0x103c232c], eax
jmp 0x1008ba99
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x24], esi
cmp dword [eax + 4], esi
jle 0x1008ba78
xor ecx, ecx
mov dword [ebp - 0x20], ecx
nop dword [eax]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008ba21
cmp dword [ecx + 4], 0
jle 0x1008ba21
push 0
mov edx, 0x9a8c76d
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008ba1e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x18], esi
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008ba30
xor edx, edx
test ecx, ecx
je 0x1008ba5c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008ba40
cmp edi, 0x9a8c76d
je 0x1008ba84
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
inc edx
mov esi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], ecx
cmp edx, dword [eax + 4]
jl 0x1008b9f0
mov edx, dword [ebp - 0x34]
mov eax, esi
mov dword [0x103c232c], eax
jmp 0x1008ba99
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x34]
mov dword [0x103c232c], eax
jmp 0x1008ba99
mov eax, dword [0x103c232c]
mov ecx, dword [ebp - 0x30]
mov eax, dword [ecx + eax]
mov dword [edx], eax
mov eax, dword [ebp - 0x2c]
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x28]
mov dword [edx + 8], eax
mov byte [edx + 0x10], 1
mov dword [edx + 0xc], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ecx + 0x140]
and dword [eax + 0x30], 0xfffffffe
jmp 0x1008b8cb
cmp byte [ebx + 0xb], 0
je 0x1008bd0c
mov eax, dword [0x103c3b98]
test al, 1
jne 0x1008bc26
or eax, 1
mov dword [0x103c3b98], eax
mov dword [ebp - 4], 1
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008bb54
nop dword [eax]
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1008bb49
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008bb23
xor edx, edx
test ecx, ecx
je 0x1008bb49
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008bb30
cmp edi, 0x20093b89
je 0x1008bb64
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008bb10
mov ebx, dword [ebp - 0x14]
xor ecx, ecx
mov dword [0x103c3bb4], ecx
jmp 0x1008bc2c
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x24], esi
cmp dword [eax + 4], esi
jle 0x1008bc08
xor ecx, ecx
mov dword [ebp - 0x20], ecx
nop dword [eax]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008bbb1
cmp dword [ecx + 4], 0
jle 0x1008bbb1
push 0
mov edx, 0x7a37978c
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008bbae
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x18], esi
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008bbc0
xor edx, edx
test ecx, ecx
je 0x1008bbec
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008bbd0
cmp edi, 0x7a37978c
je 0x1008bc15
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
inc edx
mov esi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], ecx
cmp edx, dword [eax + 4]
jl 0x1008bb80
mov ebx, dword [ebp - 0x14]
mov ecx, esi
mov dword [0x103c3bb4], ecx
jmp 0x1008bc2c
mov ecx, dword [ebx + 0x2c]
add ecx, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x14]
mov dword [0x103c3bb4], ecx
jmp 0x1008bc2c
mov ecx, dword [0x103c3bb4]
mov edx, dword [0x10c0dd10]
mov esi, dword [ebp - 0x2c]
add edx, 0x72c821ae
xor edx, 0x43f50f5d
movss xmm0, dword [esi + ecx]
subss xmm0, dword [edx + 0x40]
call fcn.1000e030
comiss xmm0, dword [0x1030b7fc]
setae cl
cmp byte [0x103c3c40], 0
jne 0x1008bcc8
mov eax, dword [0x10c0dd38]
add eax, 0x6153321e
xor eax, 0xf66471cc
cmp byte [eax + 0x34], 0
je 0x1008bc7e
cmp byte [eax + 0x35], 0
jne 0x1008bcc8
test cl, cl
je 0x1008bcc8
mov eax, dword [0x1040e298]
add eax, 0xed3cd0a4
xor eax, 0x80d02dea
cmp byte [eax + 0x63d6a], 0
jne 0x1008bcc8
cmp dword [0x103c7080], 0
jne 0x1008bcc8
mov word [ebx + 0x1c], 1
mov eax, dword [ebx + 0x28]
mov dword [ebx + 0x20], eax
mov byte [ebx + 0xb], 0
mov byte [ebx], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [edx + 0x140]
test byte [eax + 0x30], 1
je 0x1008bce9
inc dword [ebx + 0xc]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [edx + 0xa8]
mov eax, dword [eax + 0x4d30]
mov dword [0x103c7080], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx + 0x2c]
mov dword [ebp - 0x18], eax
mov eax, dword [0x103c2330]
test al, 1
jne 0x1008be5c
or eax, 1
mov dword [0x103c2330], eax
mov dword [ebp - 4], 2
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008bd84
nop dword [eax]
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1008bd79
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008bd53
xor edx, edx
test ecx, ecx
je 0x1008bd79
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008bd60
cmp edi, 0xcd2ed041
je 0x1008bd97
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008bd40
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3c14], eax
jmp 0x1008be61
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x24], esi
cmp dword [eax + 4], esi
jle 0x1008be38
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008bde1
cmp dword [ecx + 4], 0
jle 0x1008bde1
push 0
mov edx, 0xa2ccb41a
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008bdde
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x20], esi
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008bdf0
xor edx, edx
test ecx, ecx
je 0x1008be1c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008be00
cmp edi, 0xa2ccb41a
je 0x1008be48
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
inc edx
mov esi, dword [ebp - 0x20]
add ecx, 0x3c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1008bdb0
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3c14], eax
jmp 0x1008be61
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x20]
mov dword [0x103c3c14], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1008be61
mov eax, dword [0x103c3c14]
mov esi, dword [ebp - 0x2c]
movzx esi, word [esi + eax]
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov ecx, dword [eax + 0xf4]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
test eax, eax
je 0x1008c1fc
mov eax, dword [eax + 0xc8]
test si, si
je 0x1008c1fc
cmp si, 0x1f
je 0x1008c1fc
add eax, 0xfffffff9
cmp eax, 9
ja 0x1008c1fc
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x34], eax
mov eax, dword [0x103c2330]
test al, 1
jne 0x1008c01c
or eax, 1
mov dword [0x103c2330], eax
mov dword [ebp - 4], 3
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008bf44
mov eax, dword [ebx]
mov dword [ebp - 0x20], eax
test eax, eax
je 0x1008bf39
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008bf10
xor edx, edx
test ecx, ecx
je 0x1008bf39
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008bf20
cmp edi, 0xcd2ed041
je 0x1008bf57
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008bef7
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3c14], eax
jmp 0x1008c021
mov eax, dword [ebp - 0x20]
xor esi, esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x2c], esi
cmp dword [eax + 4], esi
jle 0x1008bff8
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008bfa1
cmp dword [ecx + 4], 0
jle 0x1008bfa1
push 0
mov edx, 0xa2ccb41a
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008bf9e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x1c], esi
mov eax, dword [ebp - 0x20]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008bfb0
xor edx, edx
test ecx, ecx
je 0x1008bfdc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008bfc0
cmp edi, 0xa2ccb41a
je 0x1008c008
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov esi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1008bf70
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3c14], eax
jmp 0x1008c021
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x1c]
mov dword [0x103c3c14], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1008c021
mov eax, dword [0x103c3c14]
mov ecx, dword [ebp - 0x34]
movzx esi, word [ecx + eax]
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov ecx, dword [eax + 0xf4]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
test eax, eax
je 0x1008c05f
cmp dword [eax + 0xc8], 0
jne 0x1008c05f
cmp si, 0x1f
jne 0x1008c1fc
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x34], eax
mov eax, dword [0x103c2330]
test al, 1
jne 0x1008c1bc
or eax, 1
mov dword [0x103c2330], eax
mov dword [ebp - 4], 4
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008c0e5
mov eax, dword [ebx]
mov dword [ebp - 0x20], eax
test eax, eax
je 0x1008c0da
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008c0b4
xor edx, edx
test ecx, ecx
je 0x1008c0da
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008c0c1
cmp edi, 0xcd2ed041
je 0x1008c0f8
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008c0a1
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3c14], eax
jmp 0x1008c1c1
mov eax, dword [ebp - 0x20]
xor esi, esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x2c], esi
cmp dword [eax + 4], esi
jle 0x1008c198
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008c142
cmp dword [ecx + 4], 0
jle 0x1008c142
push 0
mov edx, 0xa2ccb41a
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008c13f
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x1c], esi
mov eax, dword [ebp - 0x20]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008c150
xor edx, edx
test ecx, ecx
je 0x1008c17c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008c160
cmp edi, 0xa2ccb41a
je 0x1008c1a8
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov esi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1008c111
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3c14], eax
jmp 0x1008c1c1
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x1c]
mov dword [0x103c3c14], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1008c1c1
mov eax, dword [0x103c3c14]
mov ecx, dword [ebp - 0x34]
movzx eax, word [ecx + eax]
mov edi, eax
mov esi, eax
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov ecx, dword [eax + 0xf4]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
test eax, eax
je 0x1008c1f6
cmp di, 0x1f
je 0x1008c1fc
mov byte [ebp - 0xd], 1
jmp 0x1008c201
xor cl, cl
mov byte [ebp - 0xd], cl
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x34], eax
mov eax, dword [0x103c2330]
test al, 1
jne 0x1008c299
or eax, 1
mov dword [0x103c2330], eax
mov dword [ebp - 4], 5
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008c28b
mov eax, dword [ebx]
mov dword [ebp - 0x28], eax
test eax, eax
je 0x1008c280
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008c256
xor edx, edx
test ecx, ecx
je 0x1008c280
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008c263
cmp edi, 0xcd2ed041
je 0x1008c33c
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008c243
xor eax, eax
mov dword [0x103c3c14], eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x103c3c14]
mov ecx, dword [ebp - 0x34]
movzx eax, word [ecx + eax]
add eax, 0xffffffd5
cmp ax, 5
mov al, byte [ebp - 0xd]
jbe 0x1008c2f3
test al, al
jne 0x1008c2f3
mov ecx, dword [0x1040e298]
add ecx, 0xed3cd0a4
xor ecx, 0x80d02dea
call fcn.10147ef0
test al, al
jne 0x1008c3ea
mov eax, dword [0x1040e298]
add eax, 0xed3cd0a4
xor eax, 0x80d02dea
cmp byte [eax + 0x63d69], 0
jne 0x1008c3ea
mov al, byte [ebp - 0xd]
mov ecx, dword [ebp - 0x14]
cmp byte [ecx + 0xa], 0
je 0x1008c3f9
mov eax, dword [ecx + 0x2c]
inc dword [ecx + 0xc]
mov dword [ecx + 0x10], 0
mov word [ecx + 0x34], 1
mov byte [ecx + 0x36], 0
mov dword [ecx + 0x38], eax
mov word [ecx + 0xa], 0x100
mov byte [ecx], 1
mov dword [ecx + 0x44], 0x64
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x28]
xor eax, eax
xor esi, esi
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], esi
cmp dword [edx + 4], eax
jle 0x1008c3d8
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
mov ebx, dword [edx]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008c388
cmp dword [ecx + 4], 0
jle 0x1008c388
push 0
mov edx, 0xa2ccb41a
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008c385
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x1c], esi
mov eax, dword [ebp - 0x20]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008c391
xor edx, edx
test ecx, ecx
je 0x1008c3bc
nop
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008c3a0
cmp edi, 0xa2ccb41a
je 0x1008c3df
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x28]
inc eax
mov ecx, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x2c], ecx
cmp eax, dword [edx + 4]
jl 0x1008c357
mov eax, esi
jmp 0x1008c28d
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x1c]
jmp 0x1008c28d
mov ecx, dword [ebp - 0x14]
mov al, byte [ebp - 0xd]
mov byte [ecx + 0xa], 1
jmp 0x1008c2f6
test al, al
jne 0x1008c8d0
mov eax, dword [0x10c0dd10]
mov ecx, dword [0x103c2330]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x38], eax
test cl, 1
jne 0x1008c4ac
or ecx, 1
mov dword [0x103c2330], ecx
mov dword [ebp - 4], 6
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008c498
mov eax, dword [ebx]
mov dword [ebp - 0x20], eax
test eax, eax
je 0x1008c48d
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [esi + ecx], 0
jne 0x1008c460
xor edx, edx
test ecx, ecx
je 0x1008c48d
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008c470
cmp edi, 0xcd2ed041
je 0x1008c63b
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008c446
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x103c2330]
mov dword [0x103c3c14], eax
mov eax, dword [0x103c3c14]
mov dword [ebp - 0x30], eax
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x34], eax
test cl, 1
jne 0x1008c549
or ecx, 1
mov dword [0x103c2330], ecx
mov dword [ebp - 4], 7
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008c53b
mov eax, dword [ebx]
mov dword [ebp - 0x20], eax
test eax, eax
je 0x1008c530
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008c506
xor edx, edx
test ecx, ecx
je 0x1008c530
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008c513
cmp edi, 0xcd2ed041
je 0x1008c6ea
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008c4f3
xor eax, eax
mov dword [0x103c3c14], eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x103c3c14]
mov ecx, dword [ebp - 0x34]
movzx esi, word [ecx + eax]
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov ecx, dword [eax + 0xf4]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
test eax, eax
je 0x1008c58f
cmp dword [eax + 0xc8], 0
jne 0x1008c58f
mov dword [ebp - 0x24], 1
cmp si, 0x1f
jne 0x1008c596
mov dword [ebp - 0x24], 0
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x34], eax
mov eax, dword [0x103c2330]
test al, 1
jne 0x1008c85c
or eax, 1
mov dword [0x103c2330], eax
mov dword [ebp - 4], 8
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008c628
mov eax, dword [ebx]
mov dword [ebp - 0x20], eax
test eax, eax
je 0x1008c61d
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008c5f0
xor edx, edx
test ecx, ecx
je 0x1008c61d
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008c600
cmp edi, 0xcd2ed041
je 0x1008c79a
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008c5d8
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3c14], eax
jmp 0x1008c861
mov eax, dword [ebp - 0x20]
xor esi, esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x2c], esi
cmp dword [eax + 4], esi
jle 0x1008c6d8
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008c685
cmp dword [ecx + 4], 0
jle 0x1008c685
push 0
mov edx, 0xa2ccb41a
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008c682
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x1c], esi
mov eax, dword [ebp - 0x20]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008c690
xor edx, edx
test ecx, ecx
je 0x1008c6bc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008c6a0
cmp edi, 0xa2ccb41a
je 0x1008c6df
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov esi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1008c654
mov eax, esi
jmp 0x1008c49a
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x1c]
jmp 0x1008c49a
mov eax, dword [ebp - 0x20]
xor esi, esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x2c], esi
cmp dword [eax + 4], esi
jle 0x1008c788
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008c734
cmp dword [ecx + 4], 0
jle 0x1008c734
push 0
mov edx, 0xa2ccb41a
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008c731
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x1c], esi
mov eax, dword [ebp - 0x20]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [esi + ecx], 0
jne 0x1008c740
xor edx, edx
test ecx, ecx
je 0x1008c76c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008c750
cmp edi, 0xa2ccb41a
je 0x1008c78f
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov esi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1008c703
mov eax, esi
jmp 0x1008c53d
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x1c]
jmp 0x1008c53d
mov eax, dword [ebp - 0x20]
xor esi, esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x2c], esi
cmp dword [eax + 4], esi
jle 0x1008c838
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008c7e4
cmp dword [ecx + 4], 0
jle 0x1008c7e4
push 0
mov edx, 0xa2ccb41a
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008c7e1
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x1c], esi
mov eax, dword [ebp - 0x20]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008c7f0
xor edx, edx
test ecx, ecx
je 0x1008c81c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008c800
cmp edi, 0xa2ccb41a
je 0x1008c848
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov esi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1008c7b3
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3c14], eax
jmp 0x1008c861
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x1c]
mov dword [0x103c3c14], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1008c861
mov eax, dword [0x103c3c14]
mov ecx, dword [ebp - 0x34]
movzx esi, word [ecx + eax]
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov ecx, dword [eax + 0xf4]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
xor ecx, ecx
test eax, eax
je 0x1008c895
cmp si, 0x1f
sete cl
mov edx, dword [ebp - 0x30]
xor eax, eax
mov esi, dword [ebp - 0x38]
cmp word [esi + edx], 0x40
setne al
xor eax, dword [ebp - 0x24]
cmp eax, ecx
je 0x1008c8d0
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
cmp byte [eax + 0xc], 0
jne 0x1008c8ca
cmp byte [0x103a6a13], 0
je 0x1008c8d0
mov byte [ebp - 0xe], 1
jmp 0x1008c8de
xor al, al
mov byte [ebp - 0xe], al
cmp byte [ebp - 0xd], al
jne 0x1008d309
mov eax, dword [0x10c0dd10]
mov ecx, dword [0x103c2330]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x30], eax
test cl, 1
jne 0x1008c97f
or ecx, 1
mov dword [0x103c2330], ecx
mov dword [ebp - 4], 9
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008c96b
mov eax, dword [ebx]
mov dword [ebp - 0x20], eax
test eax, eax
je 0x1008c960
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1008c936
xor edx, edx
test ecx, ecx
je 0x1008c960
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008c943
cmp edi, 0xcd2ed041
je 0x1008cb10
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008c923
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x103c2330]
mov dword [0x103c3c14], eax
mov eax, dword [0x103c3c14]
mov dword [ebp - 0x34], eax
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x38], eax
test cl, 1
jne 0x1008ca26
or ecx, 1
mov dword [0x103c2330], ecx
mov dword [ebp - 4], 0xa
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008ca18
mov eax, dword [ebx]
mov dword [ebp - 0x20], eax
test eax, eax
je 0x1008ca0d
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [esi + ecx], 0
jne 0x1008c9e0
xor edx, edx
test ecx, ecx
je 0x1008ca0d
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008c9f0
cmp edi, 0xcd2ed041
je 0x1008cbca
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008c9c6
xor eax, eax
mov dword [0x103c3c14], eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x103c3c14]
mov ecx, dword [ebp - 0x38]
movzx esi, word [ecx + eax]
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov ecx, dword [eax + 0xf4]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
test eax, eax
je 0x1008ca6c
cmp dword [eax + 0xc8], 0
jne 0x1008ca6c
mov dword [ebp - 0x24], 1
cmp si, 0x1f
jne 0x1008ca73
mov dword [ebp - 0x24], 0
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x38], eax
mov eax, dword [0x103c2330]
test al, 1
jne 0x1008cd3c
or eax, 1
mov dword [0x103c2330], eax
mov dword [ebp - 4], 0xb
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008cafd
mov eax, dword [ebx]
mov dword [ebp - 0x20], eax
test eax, eax
je 0x1008caf2
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008cac8
xor edx, edx
test ecx, ecx
je 0x1008caf2
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008cad5
cmp edi, 0xcd2ed041
je 0x1008cc7a
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008cab5
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3c14], eax
jmp 0x1008cd41
mov eax, dword [ebp - 0x20]
xor esi, esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x2c], esi
cmp dword [eax + 4], esi
jle 0x1008cbb8
xor ecx, ecx
mov dword [ebp - 0x28], ecx
nop dword [eax]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008cb61
cmp dword [ecx + 4], 0
jle 0x1008cb61
push 0
mov edx, 0xa2ccb41a
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008cb5e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x1c], esi
mov eax, dword [ebp - 0x20]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008cb70
xor edx, edx
test ecx, ecx
je 0x1008cb9c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008cb80
cmp edi, 0xa2ccb41a
je 0x1008cbbf
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov esi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1008cb30
mov eax, esi
jmp 0x1008c96d
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x1c]
jmp 0x1008c96d
mov eax, dword [ebp - 0x20]
xor esi, esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x2c], esi
cmp dword [eax + 4], esi
jle 0x1008cc68
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008cc14
cmp dword [ecx + 4], 0
jle 0x1008cc14
push 0
mov edx, 0xa2ccb41a
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008cc11
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x1c], esi
mov eax, dword [ebp - 0x20]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008cc20
xor edx, edx
test ecx, ecx
je 0x1008cc4c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008cc30
cmp edi, 0xa2ccb41a
je 0x1008cc6f
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov esi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1008cbe3
mov eax, esi
jmp 0x1008ca1a
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x1c]
jmp 0x1008ca1a
mov eax, dword [ebp - 0x20]
xor esi, esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x2c], esi
cmp dword [eax + 4], esi
jle 0x1008cd18
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008ccc4
cmp dword [ecx + 4], 0
jle 0x1008ccc4
push 0
mov edx, 0xa2ccb41a
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008ccc1
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x1c], esi
mov eax, dword [ebp - 0x20]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [esi + ecx], 0
jne 0x1008ccd0
xor edx, edx
test ecx, ecx
je 0x1008ccfc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008cce0
cmp edi, 0xa2ccb41a
je 0x1008cd28
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov esi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1008cc93
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3c14], eax
jmp 0x1008cd41
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x1c]
mov dword [0x103c3c14], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1008cd41
mov eax, dword [0x103c3c14]
mov ecx, dword [ebp - 0x38]
movzx esi, word [ecx + eax]
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov ecx, dword [eax + 0xf4]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
xor ecx, ecx
test eax, eax
je 0x1008cd75
cmp si, 0x1f
sete cl
mov edx, dword [ebp - 0x34]
xor eax, eax
mov esi, dword [ebp - 0x30]
cmp word [esi + edx], 0x40
setne al
xor eax, dword [ebp - 0x24]
cmp eax, ecx
je 0x1008d306
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
cmp byte [eax + 0xc], 0
jne 0x1008cf1e
cmp byte [0x103a6a12], 0
je 0x1008d306
mov eax, dword [eax + 0x134]
mov dword [ebp - 0x38], eax
mov eax, dword [0x103c3c08]
test al, 1
jne 0x1008cf0c
or eax, 1
mov dword [0x103c3c08], eax
mov dword [ebp - 4], 0xc
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008ce34
nop dword [eax]
mov eax, dword [ebx]
mov dword [ebp - 0x20], eax
test eax, eax
je 0x1008ce29
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008ce03
xor edx, edx
test ecx, ecx
je 0x1008ce29
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008ce10
cmp edi, 0x72e242a1
je 0x1008ce47
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008cdf0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c2308], eax
jmp 0x1008cf11
mov eax, dword [ebp - 0x20]
xor esi, esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x2c], esi
cmp dword [eax + 4], esi
jle 0x1008cee8
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008ce91
cmp dword [ecx + 4], 0
jle 0x1008ce91
push 0
mov edx, 0xa4a37590
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008ce8e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x1c], esi
mov eax, dword [ebp - 0x20]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008cea0
xor edx, edx
test ecx, ecx
je 0x1008cecc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008ceb0
cmp edi, 0xa4a37590
je 0x1008cef8
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov esi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1008ce60
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c2308], eax
jmp 0x1008cf11
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x1c]
mov dword [0x103c2308], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1008cf11
mov eax, dword [0x103c2308]
mov ecx, dword [ebp - 0x38]
test byte [ecx + eax], 1
jne 0x1008d306
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x44]
lea esi, [ecx + 0x44]
mov dword [ebp - 0x1c], esi
cmp eax, 0x64
jne 0x1008cf45
mov eax, dword [ebp - 0x18]
mov edx, ecx
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x10], eax
mov dword [esi], 0
jmp 0x1008b8cb
test eax, eax
jne 0x1008d127
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x10], eax
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x10]
mov byte [eax], 1
mov ecx, dword [0x10c0dd10]
mov edx, dword [0x10c0dd30]
add ecx, 0x72c821ae
xor ecx, 0x43f50f5d
add edx, 0x6153321e
xor edx, 0xf66471cc
mov dword [ebp - 0x38], edx
mov eax, dword [ecx + 0x140]
mov eax, dword [eax + 4]
mov dword [ebp - 0x30], eax
mov eax, dword [ecx + 0x134]
mov dword [ebp - 0x34], eax
mov eax, dword [0x103c2304]
test al, 1
jne 0x1008d0ea
or eax, 1
mov dword [0x103c2304], eax
mov dword [ebp - 4], 0xd
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008d01a
nop
mov eax, dword [ebx]
mov dword [ebp - 0x20], eax
test eax, eax
je 0x1008d009
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008cfe3
xor edx, edx
test ecx, ecx
je 0x1008d009
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008cff0
cmp edi, 0x4e9f1122
je 0x1008d02c
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008cfd0
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x38]
xor eax, eax
mov esi, dword [ebp - 0x1c]
mov dword [0x103c232c], eax
jmp 0x1008d0ef
mov eax, dword [ebp - 0x20]
xor esi, esi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x2c], esi
cmp dword [eax + 4], esi
jle 0x1008d0c8
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008d076
cmp dword [ecx + 4], 0
jle 0x1008d076
push 0
mov edx, 0x9a8c76d
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008d073
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x24], esi
mov eax, dword [ebp - 0x20]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008d080
xor edx, edx
test ecx, ecx
je 0x1008d0ac
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008d090
cmp edi, 0x9a8c76d
je 0x1008d0d7
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov esi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1008d045
mov edx, dword [ebp - 0x38]
mov eax, esi
mov esi, dword [ebp - 0x1c]
mov dword [0x103c232c], eax
jmp 0x1008d0ef
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x1c]
mov dword [0x103c232c], eax
jmp 0x1008d0ef
mov eax, dword [0x103c232c]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ecx + eax]
mov dword [edx], eax
mov eax, dword [ebp - 0x30]
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x18]
inc eax
mov dword [edx + 8], eax
mov byte [edx + 0x10], 0
mov dword [edx + 0xc], 1
inc dword [esi]
mov edx, dword [ebp - 0x14]
cmp dword [esi], eax
jle 0x1008b8cb
mov dword [esi], 0
jmp 0x1008b8cb
mov edi, dword [ebp - 0x18]
mov dword [ecx + 0x14], edi
mov dword [ecx + 0x10], edi
cmp eax, 1
jne 0x1008d6c9
test edi, edi
je 0x1008d6c9
cmp byte [ecx + 9], 0
je 0x1008d6c9
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x10]
mov byte [eax], 1
mov edx, dword [0x10c0dd10]
mov ebx, dword [0x10c0dd30]
add edx, 0x72c821ae
xor edx, 0x43f50f5d
add ebx, 0x6153321e
xor ebx, 0xf66471cc
mov dword [ebp - 0x38], ebx
mov eax, dword [edx + 0xa8]
mov ecx, dword [eax + 0x4d30]
mov eax, dword [eax + 0x4d2c]
inc eax
add eax, ecx
mov dword [ebp - 0x30], eax
mov eax, dword [edx + 0x134]
mov dword [ebp - 0x34], eax
mov eax, dword [0x103c2304]
test al, 1
jne 0x1008d69c
or eax, 1
mov dword [0x103c2304], eax
mov dword [ebp - 4], 0xe
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008d21c
mov eax, dword [ebx]
mov dword [ebp - 0x24], eax
test eax, eax
je 0x1008d20b
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008d1e5
xor edx, edx
test ecx, ecx
je 0x1008d20b
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008d1f2
cmp edi, 0x4e9f1122
je 0x1008d231
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008d1d2
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp - 0x38]
xor eax, eax
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
mov dword [0x103c232c], eax
jmp 0x1008d6a1
mov eax, dword [ebp - 0x24]
xor esi, esi
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x2c], esi
cmp dword [eax + 4], esi
jle 0x1008d2d8
xor ecx, ecx
mov dword [ebp - 0x28], ecx
nop word [eax + eax]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008d281
cmp dword [ecx + 4], 0
jle 0x1008d281
push 0
mov edx, 0x9a8c76d
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008d27e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x20], esi
mov eax, dword [ebp - 0x24]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008d290
xor edx, edx
test ecx, ecx
je 0x1008d2bc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008d2a0
cmp edi, 0x9a8c76d
je 0x1008d2ed
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov esi, dword [ebp - 0x20]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1008d250
mov ebx, dword [ebp - 0x38]
mov eax, esi
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
mov dword [0x103c232c], eax
jmp 0x1008d6a1
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x20]
mov ebx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
mov dword [0x103c232c], eax
jmp 0x1008d6a1
mov al, byte [ebp - 0xe]
mov ecx, dword [ebp - 0x14]
lea esi, [ecx + 0x44]
mov dword [ebp - 0x1c], esi
test al, al
je 0x1008d6e3
mov eax, dword [esi]
cmp eax, 0x64
je 0x1008cf2f
test eax, eax
jne 0x1008d4d0
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x10], eax
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x10]
mov byte [eax], 1
mov ecx, dword [0x10c0dd10]
mov edx, dword [0x10c0dd30]
add ecx, 0x72c821ae
xor ecx, 0x43f50f5d
add edx, 0x6153321e
xor edx, 0xf66471cc
mov dword [ebp - 0x38], edx
mov eax, dword [ecx + 0x140]
mov eax, dword [eax + 4]
mov dword [ebp - 0x30], eax
mov eax, dword [ecx + 0x134]
mov dword [ebp - 0x34], eax
mov eax, dword [0x103c2304]
test al, 1
jne 0x1008d0ea
or eax, 1
mov dword [0x103c2304], eax
mov dword [ebp - 4], 0xf
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008d3fa
nop
mov eax, dword [ebx]
mov dword [ebp - 0x24], eax
test eax, eax
je 0x1008d3e9
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008d3c3
xor edx, edx
test ecx, ecx
je 0x1008d3e9
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008d3d0
cmp edi, 0x4e9f1122
je 0x1008d40c
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008d3b0
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x38]
xor eax, eax
mov esi, dword [ebp - 0x1c]
mov dword [0x103c232c], eax
jmp 0x1008d0ef
mov eax, dword [ebp - 0x24]
xor esi, esi
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x2c], esi
cmp dword [eax + 4], esi
jle 0x1008d4a8
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008d456
cmp dword [ecx + 4], 0
jle 0x1008d456
push 0
mov edx, 0x9a8c76d
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008d453
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x20], esi
mov eax, dword [ebp - 0x24]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008d460
xor edx, edx
test ecx, ecx
je 0x1008d48c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008d470
cmp edi, 0x9a8c76d
je 0x1008d4ba
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov esi, dword [ebp - 0x20]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1008d425
mov edx, dword [ebp - 0x38]
mov eax, esi
mov esi, dword [ebp - 0x1c]
mov dword [0x103c232c], eax
jmp 0x1008d0ef
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x1c]
mov dword [0x103c232c], eax
jmp 0x1008d0ef
mov edi, dword [ebp - 0x18]
mov dword [ecx + 0x14], edi
mov dword [ecx + 0x10], edi
cmp eax, 1
jne 0x1008d6c9
test edi, edi
je 0x1008d6c9
cmp byte [ecx + 9], 0
je 0x1008d6c9
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0x10]
mov byte [eax], 1
mov edx, dword [0x10c0dd10]
mov ebx, dword [0x10c0dd30]
add edx, 0x72c821ae
xor edx, 0x43f50f5d
add ebx, 0x6153321e
xor ebx, 0xf66471cc
mov dword [ebp - 0x38], ebx
mov eax, dword [edx + 0xa8]
mov ecx, dword [eax + 0x4d30]
mov eax, dword [eax + 0x4d2c]
inc eax
add eax, ecx
mov dword [ebp - 0x30], eax
mov eax, dword [edx + 0x134]
mov dword [ebp - 0x34], eax
mov eax, dword [0x103c2304]
test al, 1
jne 0x1008d69c
or eax, 1
mov dword [0x103c2304], eax
mov dword [ebp - 4], 0x10
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1008d5ca
nop dword [eax + eax]
mov eax, dword [ebx]
mov dword [ebp - 0x24], eax
test eax, eax
je 0x1008d5b9
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008d593
xor edx, edx
test ecx, ecx
je 0x1008d5b9
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008d5a0
cmp edi, 0x4e9f1122
je 0x1008d5df
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1008d580
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp - 0x38]
xor eax, eax
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
mov dword [0x103c232c], eax
jmp 0x1008d6a1
mov eax, dword [ebp - 0x24]
xor esi, esi
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x2c], esi
cmp dword [eax + 4], esi
jle 0x1008d674
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1008d629
cmp dword [ecx + 4], 0
jle 0x1008d629
push 0
mov edx, 0x9a8c76d
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1008d626
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x20], esi
mov eax, dword [ebp - 0x24]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1008d632
xor edx, edx
test ecx, ecx
je 0x1008d65c
nop
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1008d640
cmp edi, 0x9a8c76d
je 0x1008d686
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov esi, dword [ebp - 0x20]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x1008d5f8
mov ebx, dword [ebp - 0x38]
mov eax, esi
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
mov dword [0x103c232c], eax
jmp 0x1008d6a1
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x20]
mov ebx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
mov dword [0x103c232c], eax
jmp 0x1008d6a1
mov eax, dword [0x103c232c]
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x14]
mov eax, dword [ecx + eax]
mov dword [ebx], eax
mov eax, dword [ebp - 0x30]
mov dword [ebx + 4], eax
lea eax, [edi + 1]
mov dword [ebx + 8], eax
mov byte [ebx + 0x10], 0
mov dword [ebx + 0xc], 1
mov byte [edx + 9], 0
jmp 0x1008d6cb
mov edx, ecx
inc dword [esi]
lea eax, [edi + 1]
cmp dword [esi], eax
jle 0x1008b8cb
mov dword [esi], 0
jmp 0x1008b8cb
mov eax, dword [ebp - 0x18]
mov edx, ecx
mov dword [esi], 0x64
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
jmp 0x1008b8cb