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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x102241ac
mov eax, dword fs:[0]
push eax
sub esp, 0x58
mov eax, dword [0x102d5080]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x5c], 0
mov eax, dword [0x10bbf240]
add eax, 0xaff3cc8c
xor eax, 0x3743f7af
cmp byte [eax + 7], 0
je 0x1004de3f
cmp dword [eax + 0x134], 0
je 0x1004de3f
mov ecx, dword [esi + 0x54]
test ecx, ecx
je 0x1004de3f
mov eax, dword [ecx]
call dword [eax]
test eax, eax
je 0x1004de3f
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x18]
mov ebx, eax
mov dword [ebp - 0x60], ebx
test ebx, ebx
je 0x1004de3f
mov esi, dword [esi + 0x88]
mov dword [ebp - 0x58], esi
test esi, esi
je 0x1004de3f
mov edx, dword [ebx + 8]
lea ecx, [ebx + 8]
call dword [edx + 8]
mov edi, eax
test edi, edi
je 0x1004de3f
lea eax, [ebp - 0x28]
mov ecx, 0x1035ed90
push eax
call fcn.10042b20
mov dword [ebp - 4], 0
lea eax, [ebp - 0x28]
cmp dword [ebp - 0x14], 0xf
cmova eax, dword [ebp - 0x28]
push eax
lea eax, [esi + 4]
push eax
call fcn.101f52f0
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
mov esi, eax
call fcn.1002b0f0
mov eax, dword [edi + 0x14]
test esi, esi
je 0x1004d06c
cmp eax, 0x2a
jne 0x1004bf3a
mov ecx, dword [0x10bbf240]
add ecx, 0xaff3cc8c
xor ecx, 0x3743f7af
mov edx, dword [ecx + 0x134]
mov dword [ebp - 0x58], edx
test edx, edx
je 0x1004be64
mov ecx, dword [ecx + 0x184]
mov eax, dword [ecx + 0x1c]
cmp dword [eax + 0x30], ecx
jne 0x1004be64
cmp ebx, edx
je 0x1004be64
mov ecx, dword [0x1037553c]
test cl, 1
jne 0x1004bdca
or ecx, 1
mov dword [0x1037553c], ecx
mov dword [ebp - 4], 1
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004bcf4
mov eax, dword [ebx]
mov dword [ebp - 0x48], eax
test eax, eax
je 0x1004bce9
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
nop dword [eax + eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004bcc0
xor edx, edx
test ecx, ecx
je 0x1004bce9
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004bcd0
cmp esi, 0x1eee87cc
je 0x1004bd10
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004bca8
xor eax, eax
mov ebx, dword [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x1037553c]
mov dword [0x103754f4], eax
jmp 0x1004bdcf
mov eax, dword [ebp - 0x48]
xor esi, esi
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x50], esi
cmp dword [eax + 4], esi
jle 0x1004bdb8
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
nop dword [eax]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004bd61
cmp dword [ecx + 4], 0
jle 0x1004bd61
push 0
mov edx, 0xa5bfefb3
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004bd5e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x44], esi
mov eax, dword [ebp - 0x48]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1004bd70
xor edx, edx
test ecx, ecx
je 0x1004bd9c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004bd80
cmp edi, 0xa5bfefb3
je 0x1004bdbf
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x4c]
inc edx
mov esi, dword [ebp - 0x44]
add ecx, 0x3c
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x4c], ecx
cmp edx, dword [eax + 4]
jl 0x1004bd30
mov eax, esi
jmp 0x1004bcf6
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x44]
jmp 0x1004bcf6
mov eax, dword [0x103754f4]
mov edx, dword [eax + ebx]
mov dword [ebp - 0x54], edx
test cl, 1
jne 0x1004be58
or ecx, 1
mov dword [0x1037553c], ecx
mov dword [ebp - 4], 2
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004be44
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004be39
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
nop dword [eax + eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004be10
xor edx, edx
test ecx, ecx
je 0x1004be39
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004be20
cmp esi, 0x1eee87cc
je 0x1004be82
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004bdf8
xor eax, eax
mov edx, dword [ebp - 0x54]
mov ebx, dword [ebp - 0x60]
mov dword [0x103754f4], eax
mov dword [ebp - 4], 0xffffffff
mov esi, dword [ebp - 0x58]
cmp edx, dword [esi + eax]
je 0x1004bf3a
push 1
push 0
push 0x103593a8
movss xmm3, dword [0x102bd7ac]
mov ecx, dword [ebp - 0x64]
call fcn.1004b2a0
jmp 0x1004de41
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x4c], esi
cmp dword [eax + 4], esi
jle 0x1004bf28
xor ecx, ecx
mov dword [ebp - 0x50], ecx
nop dword [eax + eax]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004bed1
cmp dword [ecx + 4], 0
jle 0x1004bed1
push 0
mov edx, 0xa5bfefb3
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004bece
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1004bee0
xor edx, edx
test ecx, ecx
je 0x1004bf0c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004bef0
cmp edi, 0xa5bfefb3
je 0x1004bf2f
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x50], ecx
cmp edx, dword [eax + 4]
jl 0x1004bea0
mov eax, esi
jmp 0x1004be46
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
jmp 0x1004be46
mov eax, dword [ebx]
mov ecx, ebx
mov eax, dword [eax + 0x278]
call eax
test al, al
je 0x1004de3f
mov eax, dword [0x10373c4c]
test al, 1
jne 0x1004c0a2
or eax, 1
mov dword [0x10373c4c], eax
mov dword [ebp - 4], 3
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004bfc4
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004bfb9
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
nop dword [eax + eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004bf90
xor edx, edx
test ecx, ecx
je 0x1004bfb9
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004bfa0
cmp esi, 0x4e9f1122
je 0x1004bfda
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004bf78
mov ebx, dword [ebp - 0x60]
xor eax, eax
mov dword [0x10373c50], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1004c0a7
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x4c], esi
cmp dword [eax + 4], esi
jle 0x1004c078
xor ecx, ecx
mov dword [ebp - 0x50], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004c024
cmp dword [ecx + 4], 0
jle 0x1004c024
push 0
mov edx, 0x1c93bcf0
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004c021
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov edi, dword [ebx]
mov esi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004c030
xor edx, edx
test ecx, ecx
je 0x1004c05c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004c040
cmp esi, 0x1c93bcf0
je 0x1004c08b
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x50], ecx
cmp edx, dword [eax + 4]
jl 0x1004bff3
mov ebx, dword [ebp - 0x60]
mov eax, esi
mov dword [0x10373c50], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1004c0a7
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov ebx, dword [ebp - 0x60]
mov dword [0x10373c50], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1004c0a7
mov eax, dword [0x10373c50]
mov eax, dword [eax + ebx]
mov dword [ebp - 0x58], eax
mov eax, dword [0x1037556c]
test al, 1
jne 0x1004c202
or eax, 1
mov dword [0x1037556c], eax
mov dword [ebp - 4], 4
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004c124
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004c119
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004c0f0
xor edx, edx
test ecx, ecx
je 0x1004c119
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004c100
cmp esi, 0x72e242a1
je 0x1004c13a
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004c0d7
mov ebx, dword [ebp - 0x60]
xor eax, eax
mov dword [0x1037552c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1004c207
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x4c], esi
cmp dword [eax + 4], esi
jle 0x1004c1d8
xor ecx, ecx
mov dword [ebp - 0x50], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004c184
cmp dword [ecx + 4], 0
jle 0x1004c184
push 0
mov edx, 0x84cdad2
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004c181
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [esi + ecx], 0
jne 0x1004c190
xor edx, edx
test ecx, ecx
je 0x1004c1bc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004c1a0
cmp edi, 0x84cdad2
je 0x1004c1eb
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x50], ecx
cmp edx, dword [eax + 4]
jl 0x1004c153
mov ebx, dword [ebp - 0x60]
mov eax, esi
mov dword [0x1037552c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1004c207
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov ebx, dword [ebp - 0x60]
mov dword [0x1037552c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1004c207
mov eax, dword [0x1037552c]
cmp dword [ebp - 0x58], 2
je 0x1004de3f
cmp dword [eax + ebx], 0
jle 0x1004de3f
mov eax, dword [0x10376dd8]
test al, 1
jne 0x1004c35e
or eax, 1
mov dword [0x10376dd8], eax
mov dword [ebp - 4], 5
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004c289
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004c27e
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004c258
xor edx, edx
test ecx, ecx
je 0x1004c27e
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004c265
cmp esi, 0x72e242a1
je 0x1004c29f
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004c245
mov ebx, dword [ebp - 0x60]
xor eax, eax
mov dword [0x10376dd4], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1004c363
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x4c], esi
cmp dword [eax + 4], esi
jle 0x1004c334
xor ecx, ecx
mov dword [ebp - 0x50], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004c2e9
cmp dword [ecx + 4], 0
jle 0x1004c2e9
push 0
mov edx, 0x9c15080d
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004c2e6
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1004c2f2
xor edx, edx
test ecx, ecx
je 0x1004c31c
nop
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004c300
cmp edi, 0x9c15080d
je 0x1004c347
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x50], ecx
cmp edx, dword [eax + 4]
jl 0x1004c2b8
mov ebx, dword [ebp - 0x60]
mov eax, esi
mov dword [0x10376dd4], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1004c363
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov ebx, dword [ebp - 0x60]
mov dword [0x10376dd4], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1004c363
mov eax, dword [0x10376dd4]
mov al, byte [eax + ebx]
test al, al
jne 0x1004de3f
mov eax, dword [ebx + 8]
lea ecx, [ebx + 8]
mov eax, dword [eax + 0x24]
call eax
test al, al
jne 0x1004de3f
mov ecx, dword [0x10bbf240]
add ecx, 0xaff3cc8c
xor ecx, 0x3743f7af
mov eax, dword [ecx + 0x134]
mov dword [ebp - 0x54], eax
cmp ebx, eax
jne 0x1004c6f2
mov eax, dword [ecx + 0xd8]
cmp byte [eax + 0xa9], 0
je 0x1004de3f
movss xmm0, dword [0x102bd7ac]
mov eax, dword [0x10373cb0]
movss dword [ebp - 0x60], xmm0
test al, 1
jne 0x1004c50c
or eax, 1
mov dword [0x10373cb0], eax
mov dword [ebp - 4], 6
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004c434
nop
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004c429
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004c403
xor edx, edx
test ecx, ecx
je 0x1004c429
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004c410
cmp esi, 0x72e242a1
je 0x1004c447
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004c3f0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x10375558], eax
jmp 0x1004c511
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x4c], esi
cmp dword [eax + 4], esi
jle 0x1004c4e8
xor ecx, ecx
mov dword [ebp - 0x50], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004c491
cmp dword [ecx + 4], 0
jle 0x1004c491
push 0
mov edx, 0xf3e9a9ed
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004c48e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov edi, dword [ebx]
mov esi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004c4a0
xor edx, edx
test ecx, ecx
je 0x1004c4cc
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004c4b0
cmp esi, 0xf3e9a9ed
je 0x1004c4f8
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x50], ecx
cmp edx, dword [eax + 4]
jl 0x1004c460
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov dword [0x10375558], eax
jmp 0x1004c511
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov dword [0x10375558], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1004c511
mov eax, dword [0x10375558]
mov ecx, dword [ebp - 0x54]
cmp byte [ecx + eax], 0
jne 0x1004c6a1
mov eax, dword [0x10bbf240]
add eax, 0xaff3cc8c
xor eax, 0x3743f7af
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x1004c6ae
mov eax, dword [0x10373c90]
test al, 1
jne 0x1004c68c
or eax, 1
mov dword [0x10373c90], eax
mov dword [ebp - 4], 7
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004c5b4
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004c5a9
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
nop dword [eax + eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004c580
xor edx, edx
test ecx, ecx
je 0x1004c5a9
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004c590
cmp esi, 0xcd2ed041
je 0x1004c5c7
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004c568
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x10375574], eax
jmp 0x1004c691
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x4c], esi
cmp dword [eax + 4], esi
jle 0x1004c668
xor ecx, ecx
mov dword [ebp - 0x50], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004c611
cmp dword [ecx + 4], 0
jle 0x1004c611
push 0
mov edx, 0xa2ccb41a
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004c60e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov edi, dword [ebx]
mov esi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004c620
xor edx, edx
test ecx, ecx
je 0x1004c64c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004c630
cmp esi, 0xa2ccb41a
je 0x1004c678
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x50], ecx
cmp edx, dword [eax + 4]
jl 0x1004c5e0
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov dword [0x10375574], eax
jmp 0x1004c691
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov dword [0x10375574], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1004c691
mov eax, dword [0x10375574]
mov ecx, dword [ebp - 0x58]
movzx eax, word [ecx + eax]
add eax, 0xffffffd5
cmp ax, 5
ja 0x1004c6ae
movss xmm0, dword [0x102bd73c]
movss dword [ebp - 0x60], xmm0
mov eax, dword [0x10bbf240]
add eax, 0xaff3cc8c
xor eax, 0x3743f7af
mov ecx, dword [eax + 0xe4]
xor eax, eax
test ecx, ecx
push ecx
cmovne eax, ecx
movss dword [esp], xmm0
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
call eax
movss xmm3, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x64]
push 0
push 0
push 0x10359458
call fcn.1004b2a0
jmp 0x1004de41
test eax, eax
je 0x1004c8f8
mov ecx, dword [ecx + 0x184]
mov eax, dword [ecx + 0x1c]
cmp dword [eax + 0x30], ecx
jne 0x1004c8f8
mov ecx, dword [0x1037553c]
test cl, 1
jne 0x1004c85a
or ecx, 1
mov dword [0x1037553c], ecx
mov dword [ebp - 4], 8
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004c784
nop dword [eax]
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004c779
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004c753
xor edx, edx
test ecx, ecx
je 0x1004c779
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004c760
cmp esi, 0x1eee87cc
je 0x1004c7a0
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004c740
xor eax, eax
mov ebx, dword [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x1037553c]
mov dword [0x103754f4], eax
jmp 0x1004c85f
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x4c], esi
cmp dword [eax + 4], esi
jle 0x1004c848
xor ecx, ecx
mov dword [ebp - 0x50], ecx
nop dword [eax]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004c7f1
cmp dword [ecx + 4], 0
jle 0x1004c7f1
push 0
mov edx, 0xa5bfefb3
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004c7ee
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1004c800
xor edx, edx
test ecx, ecx
je 0x1004c82c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004c810
cmp edi, 0xa5bfefb3
je 0x1004c84f
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x50], ecx
cmp edx, dword [eax + 4]
jl 0x1004c7c0
mov eax, esi
jmp 0x1004c786
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
jmp 0x1004c786
mov eax, dword [0x103754f4]
mov edx, dword [eax + ebx]
mov dword [ebp - 0x58], edx
test cl, 1
jne 0x1004c8ec
or ecx, 1
mov dword [0x1037553c], ecx
mov dword [ebp - 4], 9
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004c8d8
nop dword [eax]
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004c8cd
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004c8a3
xor edx, edx
test ecx, ecx
je 0x1004c8cd
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004c8b0
cmp esi, 0x1eee87cc
je 0x1004c9a0
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004c890
xor eax, eax
mov ebx, dword [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x58]
mov dword [0x103754f4], eax
mov ecx, dword [ebp - 0x54]
cmp edx, dword [ecx + eax]
je 0x1004de3f
mov eax, dword [0x10bbf240]
add eax, 0xaff3cc8c
xor eax, 0x3743f7af
mov ecx, dword [eax + 0x134]
mov dword [ebp - 0x50], ecx
cmp ecx, ebx
je 0x1004de3f
mov eax, dword [0x10373c4c]
test al, 1
jne 0x1004cb22
or eax, 1
mov dword [0x10373c4c], eax
mov dword [ebp - 4], 0xa
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004c98a
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004c97f
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004c955
xor edx, edx
test ecx, ecx
je 0x1004c97f
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004c962
cmp esi, 0x4e9f1122
je 0x1004ca5a
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004c942
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x10373c50], eax
jmp 0x1004cb27
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x4c], esi
cmp dword [eax + 4], esi
jle 0x1004ca48
xor ecx, ecx
mov dword [ebp - 0x50], ecx
nop dword [eax]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004c9f1
cmp dword [ecx + 4], 0
jle 0x1004c9f1
push 0
mov edx, 0xa5bfefb3
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004c9ee
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1004ca00
xor edx, edx
test ecx, ecx
je 0x1004ca2c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004ca10
cmp edi, 0xa5bfefb3
je 0x1004ca4f
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x50], ecx
cmp edx, dword [eax + 4]
jl 0x1004c9c0
mov eax, esi
jmp 0x1004c8da
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
jmp 0x1004c8da
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x54], esi
cmp dword [eax + 4], esi
jle 0x1004caf8
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004caa4
cmp dword [ecx + 4], 0
jle 0x1004caa4
push 0
mov edx, 0x1c93bcf0
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004caa1
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1004cab0
xor edx, edx
test ecx, ecx
je 0x1004cadc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004cac0
cmp edi, 0x1c93bcf0
je 0x1004cb0b
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x4c]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x4c], ecx
cmp edx, dword [eax + 4]
jl 0x1004ca73
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x10373c50], eax
jmp 0x1004cb27
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x10373c50], eax
jmp 0x1004cb27
mov eax, dword [0x10373c50]
mov eax, dword [ecx + eax]
mov dword [ebp - 0x58], eax
mov eax, dword [0x1037556c]
test al, 1
jne 0x1004cc82
or eax, 1
mov dword [0x1037556c], eax
mov dword [ebp - 4], 0xb
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004cba4
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004cb99
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004cb70
xor edx, edx
test ecx, ecx
je 0x1004cb99
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004cb80
cmp esi, 0x72e242a1
je 0x1004cbba
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004cb57
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x1037552c], eax
jmp 0x1004cc87
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x54], esi
cmp dword [eax + 4], esi
jle 0x1004cc58
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004cc04
cmp dword [ecx + 4], 0
jle 0x1004cc04
push 0
mov edx, 0x84cdad2
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004cc01
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1004cc10
xor edx, edx
test ecx, ecx
je 0x1004cc3c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004cc20
cmp edi, 0x84cdad2
je 0x1004cc6b
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x4c]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x4c], ecx
cmp edx, dword [eax + 4]
jl 0x1004cbd3
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x1037552c], eax
jmp 0x1004cc87
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x1037552c], eax
jmp 0x1004cc87
mov eax, dword [0x1037552c]
cmp dword [ebp - 0x58], 2
je 0x1004d025
cmp dword [ecx + eax], 0
jle 0x1004d025
mov eax, dword [0x10bbf240]
add eax, 0xaff3cc8c
xor eax, 0x3743f7af
cmp byte [eax + 5], 0
jne 0x1004d025
cmp byte [0x10359248], 0
je 0x1004d025
mov ecx, dword [ebp - 0x60]
mov esi, dword [0x107f41e8]
add esi, 0xdee113ef
xor esi, 0xb3e5279a
mov eax, dword [ecx + 8]
add ecx, 8
call dword [eax + 0x28]
imul edi, eax, 0x38c
add edi, esi
je 0x1004d025
mov edx, dword [edi + 0x388]
test edx, edx
je 0x1004d025
cmp byte [0x10359a3c], 0
je 0x1004cda1
mov esi, 1
cmp edx, esi
jb 0x1004d025
nop word [eax + eax]
mov ecx, dword [edi + 0x384]
mov eax, dword [edi + 0x380]
dec ecx
dec eax
add ecx, esi
and ecx, eax
mov eax, dword [edi + 0x37c]
mov ebx, dword [eax + ecx*4]
test ebx, ebx
je 0x1004cd91
cmp byte [ebx + 8], 0
je 0x1004cd91
movd xmm0, edx
xorps xmm1, xmm1
cvtdq2pd xmm0, xmm0
shr edx, 0x1f
push 1
movd xmm2, esi
addsd xmm0, qword [edx*8 + 0x102bdf40]
cvtdq2ps xmm2, xmm2
cvtpd2ps xmm0, xmm0
divss xmm2, xmm0
movss xmm0, dword [0x102bd7ac]
call fcn.1003d480
mov ecx, dword [ebp - 0x64]
lea eax, [ebx + 0xa390]
push eax
push 0x10359248
movaps xmm3, xmm0
call fcn.1004b2a0
mov edx, dword [edi + 0x388]
inc esi
cmp esi, edx
jbe 0x1004cd20
jmp 0x1004d025
mov ecx, dword [edi + 0x384]
mov eax, dword [edi + 0x378]
mov byte [ebp - 0x58], 0
push dword [ebp - 0x58]
sub esp, 0xc
mov edx, esp
sub esp, 0xc
mov dword [edx + 8], ecx
mov dword [edx + 4], 0
mov dword [edx], eax
mov edx, esp
mov ecx, dword [edi + 0x388]
add ecx, dword [edi + 0x384]
mov eax, dword [edi + 0x378]
mov dword [edx + 8], ecx
lea ecx, [ebp - 0x1c]
mov dword [edx + 4], 0
mov dword [edx], eax
call fcn.10050290
mov eax, dword [ebp - 0x14]
add esp, 0x1c
cmp eax, dword [edi + 0x384]
je 0x1004d025
lea edx, [eax - 1]
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x1004ce10
mov eax, dword [eax]
jmp 0x1004ce12
xor eax, eax
mov ecx, dword [eax + 8]
mov eax, dword [eax + 4]
dec ecx
and ecx, edx
mov ebx, dword [eax + ecx*4]
mov dword [ebp - 0x58], ebx
test ebx, ebx
je 0x1004d025
mov eax, dword [0x10375508]
mov dword [ebp - 0x5c], 0x3f800000
mov dword [ebp - 0x50], 0
test al, 1
jne 0x1004cf68
or eax, 1
mov dword [0x10375508], eax
mov dword [ebp - 4], 0xc
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004cea5
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004ce9a
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x1004ce74
xor edx, edx
test ecx, ecx
je 0x1004ce9a
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004ce81
cmp esi, 0x1eee87cc
je 0x1004cebc
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004ce61
xor esi, esi
mov dword [ebp - 4], 0xffffffff
mov ebx, dword [ebp - 0x58]
mov dword [0x1037554c], esi
jmp 0x1004cf6e
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x54], esi
cmp dword [eax + 4], esi
jle 0x1004cea7
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004cf02
cmp dword [ecx + 4], 0
jle 0x1004cf02
push 0
mov edx, 0x559d81af
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004ceff
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1004cf10
xor edx, edx
test ecx, ecx
je 0x1004cf3c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004cf20
cmp edi, 0x559d81af
je 0x1004cf5d
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x4c]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x4c], ecx
cmp edx, dword [eax + 4]
jge 0x1004cea7
jmp 0x1004ced1
mov esi, dword [ebx + 0x2c]
add esi, dword [ebp - 0x48]
jmp 0x1004cea7
mov esi, dword [0x1037554c]
mov edi, dword [ebp - 0x60]
movss xmm1, dword [0x102bd800]
movss xmm0, dword [esi + edi + 4]
subss xmm0, dword [ebx + 0x98]
call fcn.1002f3b0
movss xmm1, dword [0x102bd800]
movss dword [ebp - 0x44], xmm0
movss xmm0, dword [esi + edi]
subss xmm0, dword [ebx + 0x94]
call fcn.1002f3b0
movss xmm1, dword [ebp - 0x44]
addss xmm1, xmm0
movss xmm0, dword [esi + edi + 8]
subss xmm0, dword [ebx + 0x9c]
movss dword [ebp - 0x44], xmm1
movss xmm1, dword [0x102bd800]
call fcn.1002f3b0
addss xmm0, dword [ebp - 0x44]
call fcn.1000ded0
mulss xmm0, dword [0x102bd680]
lea ecx, [ebp - 0x58]
lea eax, [ebp - 0x50]
xorps xmm1, xmm1
push 1
comiss xmm0, xmm1
movss xmm1, dword [0x102bd7ac]
movss dword [ebp - 0x58], xmm0
cmovae eax, ecx
lea ecx, [ebp - 0x5c]
comiss xmm1, xmm0
cmovae ecx, eax
lea eax, [ebx + 0xa390]
push eax
push 0x10359248
movss xmm3, dword [ecx]
mov ecx, dword [ebp - 0x64]
call fcn.1004b2a0
movss xmm3, dword [0x102bd7ac]
mov ecx, dword [ebp - 0x64]
push 1
push 0
push 0x10359198
call fcn.1004b2a0
movss xmm3, dword [0x102bd7ac]
mov bl, al
mov ecx, dword [ebp - 0x64]
push 0
push 0
push 0x103590e8
call fcn.1004b2a0
test al, al
jne 0x1004d065
test bl, bl
je 0x1004de3f
mov al, 1
jmp 0x1004de41
cmp eax, 0x8c
jne 0x1004d361
mov eax, dword [0x10bbf240]
add eax, 0xaff3cc8c
xor eax, 0x3743f7af
mov ecx, dword [eax + 0x134]
mov eax, dword [0x10373c4c]
mov dword [ebp - 0x50], ecx
test al, 1
jne 0x1004d1e2
or eax, 1
mov dword [0x10373c4c], eax
mov dword [ebp - 4], 0xd
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004d104
nop dword [eax]
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004d0f9
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004d0d3
xor edx, edx
test ecx, ecx
je 0x1004d0f9
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004d0e0
cmp esi, 0x4e9f1122
je 0x1004d11a
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004d0c0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x10373c50], eax
jmp 0x1004d1e7
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x54], esi
cmp dword [eax + 4], esi
jle 0x1004d1b8
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004d164
cmp dword [ecx + 4], 0
jle 0x1004d164
push 0
mov edx, 0x1c93bcf0
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004d161
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1004d170
xor edx, edx
test ecx, ecx
je 0x1004d19c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004d180
cmp edi, 0x1c93bcf0
je 0x1004d1cb
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x4c]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x4c], ecx
cmp edx, dword [eax + 4]
jl 0x1004d133
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x10373c50], eax
jmp 0x1004d1e7
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x10373c50], eax
jmp 0x1004d1e7
mov eax, dword [0x10373c50]
mov eax, dword [ecx + eax]
mov dword [ebp - 0x5c], eax
mov eax, dword [0x1037556c]
test al, 1
jne 0x1004d342
or eax, 1
mov dword [0x1037556c], eax
mov dword [ebp - 4], 0xe
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004d264
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004d259
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004d230
xor edx, edx
test ecx, ecx
je 0x1004d259
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004d240
cmp esi, 0x72e242a1
je 0x1004d27a
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004d217
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x1037552c], eax
jmp 0x1004d347
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x54], esi
cmp dword [eax + 4], esi
jle 0x1004d318
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004d2c4
cmp dword [ecx + 4], 0
jle 0x1004d2c4
push 0
mov edx, 0x84cdad2
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004d2c1
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1004d2d0
xor edx, edx
test ecx, ecx
je 0x1004d2fc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004d2e0
cmp edi, 0x84cdad2
je 0x1004d32b
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x4c]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x4c], ecx
cmp edx, dword [eax + 4]
jl 0x1004d293
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x1037552c], eax
jmp 0x1004d347
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x1037552c], eax
jmp 0x1004d347
mov eax, dword [0x1037552c]
cmp dword [ebp - 0x5c], 2
je 0x1004d361
cmp dword [ecx + eax], 0
jle 0x1004d361
push 0
push 0
push 0x103595b8
jmp 0x1004be6d
lea eax, [ebp - 0x40]
mov ecx, 0x1035f5e8
push eax
call fcn.10042ce0
mov dword [ebp - 4], 0xf
lea eax, [ebp - 0x40]
cmp dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x5c], 7
cmova eax, dword [ebp - 0x40]
push eax
mov eax, dword [ebp - 0x58]
add eax, 4
push eax
call fcn.101f52f0
add esp, 8
test eax, eax
je 0x1004d659
mov eax, dword [0x10bbf240]
add eax, 0xaff3cc8c
xor eax, 0x3743f7af
mov ecx, dword [eax + 0x134]
mov eax, dword [0x10373c4c]
mov dword [ebp - 0x50], ecx
test al, 1
jne 0x1004d4f4
or eax, 1
mov dword [0x10373c4c], eax
mov dword [ebp - 4], 0x10
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004d426
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004d41b
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004d3f5
xor edx, edx
test ecx, ecx
je 0x1004d41b
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004d402
cmp esi, 0x4e9f1122
je 0x1004d435
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004d3e2
mov ecx, dword [ebp - 0x50]
xor eax, eax
mov dword [0x10373c50], eax
jmp 0x1004d4f9
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x54], esi
cmp dword [eax + 4], esi
jle 0x1004d4d8
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
nop
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004d481
cmp dword [ecx + 4], 0
jle 0x1004d481
push 0
mov edx, 0x1c93bcf0
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004d47e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1004d490
xor edx, edx
test ecx, ecx
je 0x1004d4bc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004d4a0
cmp edi, 0x1c93bcf0
je 0x1004d4e4
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x4c]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x4c], ecx
cmp edx, dword [eax + 4]
jl 0x1004d450
mov ecx, dword [ebp - 0x50]
mov eax, esi
mov dword [0x10373c50], eax
jmp 0x1004d4f9
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x50]
mov dword [0x10373c50], eax
jmp 0x1004d4f9
mov eax, dword [0x10373c50]
mov eax, dword [ecx + eax]
mov dword [ebp - 0x58], eax
mov eax, dword [0x1037556c]
test al, 1
jne 0x1004d644
or eax, 1
mov dword [0x1037556c], eax
mov dword [ebp - 4], 0x11
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004d574
nop dword [eax]
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004d569
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004d543
xor edx, edx
test ecx, ecx
je 0x1004d569
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004d550
cmp esi, 0x72e242a1
je 0x1004d583
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004d530
mov ecx, dword [ebp - 0x50]
xor eax, eax
mov dword [0x1037552c], eax
jmp 0x1004d649
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x54], esi
cmp dword [eax + 4], esi
jle 0x1004d628
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
nop dword [eax]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004d5d1
cmp dword [ecx + 4], 0
jle 0x1004d5d1
push 0
mov edx, 0x84cdad2
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004d5ce
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1004d5e0
xor edx, edx
test ecx, ecx
je 0x1004d60c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004d5f0
cmp edi, 0x84cdad2
je 0x1004d634
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x4c]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x4c], ecx
cmp edx, dword [eax + 4]
jl 0x1004d5a0
mov ecx, dword [ebp - 0x50]
mov eax, esi
mov dword [0x1037552c], eax
jmp 0x1004d649
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x50]
mov dword [0x1037552c], eax
jmp 0x1004d649
mov eax, dword [0x1037552c]
cmp dword [ebp - 0x58], 2
je 0x1004d659
cmp dword [ecx + eax], 0
jle 0x1004d659
mov bl, 1
jmp 0x1004d65b
xor bl, bl
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002b0f0
test bl, bl
je 0x1004d67c
push 0
push 0
push 0x10359508
jmp 0x1004be6d
mov eax, dword [0x10bbf240]
add eax, 0xaff3cc8c
xor eax, 0x3743f7af
mov ecx, dword [eax + 0x134]
mov eax, dword [0x10373c4c]
mov dword [ebp - 0x50], ecx
test al, 1
jne 0x1004d7e2
or eax, 1
mov dword [0x10373c4c], eax
mov dword [ebp - 4], 0x12
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004d704
nop
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004d6f9
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004d6d3
xor edx, edx
test ecx, ecx
je 0x1004d6f9
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004d6e0
cmp esi, 0x4e9f1122
je 0x1004d71a
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004d6c0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x10373c50], eax
jmp 0x1004d7e7
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x54], esi
cmp dword [eax + 4], esi
jle 0x1004d7b8
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004d764
cmp dword [ecx + 4], 0
jle 0x1004d764
push 0
mov edx, 0x1c93bcf0
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004d761
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1004d770
xor edx, edx
test ecx, ecx
je 0x1004d79c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004d780
cmp edi, 0x1c93bcf0
je 0x1004d7cb
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x4c]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x4c], ecx
cmp edx, dword [eax + 4]
jl 0x1004d733
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x10373c50], eax
jmp 0x1004d7e7
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x10373c50], eax
jmp 0x1004d7e7
mov eax, dword [0x10373c50]
mov eax, dword [ecx + eax]
mov dword [ebp - 0x5c], eax
mov eax, dword [0x1037556c]
test al, 1
jne 0x1004d942
or eax, 1
mov dword [0x1037556c], eax
mov dword [ebp - 4], 0x13
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004d864
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004d859
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004d830
xor edx, edx
test ecx, ecx
je 0x1004d859
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004d840
cmp esi, 0x72e242a1
je 0x1004d87a
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004d817
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x1037552c], eax
jmp 0x1004d947
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x54], esi
cmp dword [eax + 4], esi
jle 0x1004d918
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004d8c4
cmp dword [ecx + 4], 0
jle 0x1004d8c4
push 0
mov edx, 0x84cdad2
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004d8c1
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x1004d8d0
xor edx, edx
test ecx, ecx
je 0x1004d8fc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004d8e0
cmp edi, 0x84cdad2
je 0x1004d92b
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x4c]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x4c], ecx
cmp edx, dword [eax + 4]
jl 0x1004d893
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x1037552c], eax
jmp 0x1004d947
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x50]
mov dword [0x1037552c], eax
jmp 0x1004d947
mov eax, dword [0x1037552c]
cmp dword [ebp - 0x5c], 2
je 0x1004de3f
cmp dword [ecx + eax], 0
jle 0x1004de3f
mov eax, dword [0x10bbf240]
add eax, 0xaff3cc8c
xor eax, 0x3743f7af
mov eax, dword [eax + 0xb0]
mov dword [ebp - 0x5c], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x58], eax
mov eax, dword [0x1037862c]
test al, 1
jne 0x1004dabc
or eax, 1
mov dword [0x1037862c], eax
mov dword [ebp - 4], 0x14
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004d9e9
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004d9de
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004d9b8
xor edx, edx
test ecx, ecx
je 0x1004d9de
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004d9c5
cmp esi, 0x1eee87cc
je 0x1004d9fc
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004d9a5
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x10378618], eax
jmp 0x1004dac1
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x54], esi
cmp dword [eax + 4], esi
jle 0x1004da98
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004da46
cmp dword [ecx + 4], 0
jle 0x1004da46
push 0
mov edx, 0x6bf5c5fc
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004da43
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop
inc ecx
cmp byte [ecx + esi], 0
jne 0x1004da50
xor edx, edx
test ecx, ecx
je 0x1004da7c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1004da60
cmp edi, 0x6bf5c5fc
je 0x1004daa8
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x4c]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x4c], ecx
cmp edx, dword [eax + 4]
jl 0x1004da15
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov dword [0x10378618], eax
jmp 0x1004dac1
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov dword [0x10378618], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1004dac1
mov eax, dword [0x10378618]
mov ecx, dword [ebp - 0x60]
push dword [eax + ecx]
mov ecx, dword [ebp - 0x5c]
call dword [ebp - 0x58]
mov ecx, dword [0x10bbf240]
add ecx, 0xaff3cc8c
xor ecx, 0x3743f7af
mov edx, dword [ecx + 0x134]
mov dword [ebp - 0x5c], edx
cmp eax, edx
jne 0x1004de3f
mov eax, dword [ecx + 0xd8]
cmp byte [eax + 0xa9], 0
je 0x1004de3f
movd xmm0, dword [0x10359a78]
mov eax, dword [0x10373cb0]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x102bd668]
movss dword [ebp - 0x50], xmm0
test al, 1
jne 0x1004dc5e
or eax, 1
mov dword [0x10373cb0], eax
mov dword [ebp - 4], 0x15
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004db89
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004db7e
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004db58
xor edx, edx
test ecx, ecx
je 0x1004db7e
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004db65
cmp esi, 0x72e242a1
je 0x1004db9f
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004db45
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x5c]
mov dword [0x10375558], eax
jmp 0x1004dc63
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x54], esi
cmp dword [eax + 4], esi
jle 0x1004dc34
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004dbe9
cmp dword [ecx + 4], 0
jle 0x1004dbe9
push 0
mov edx, 0xf3e9a9ed
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004dbe6
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov edi, dword [ebx]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004dbf2
xor edx, edx
test ecx, ecx
je 0x1004dc1c
nop
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004dc00
cmp esi, 0xf3e9a9ed
je 0x1004dc47
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x4c]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x4c], ecx
cmp edx, dword [eax + 4]
jl 0x1004dbb8
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x5c]
mov dword [0x10375558], eax
jmp 0x1004dc63
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x5c]
mov dword [0x10375558], eax
jmp 0x1004dc63
mov eax, dword [0x10375558]
cmp byte [edx + eax], 0
jne 0x1004ddf1
mov eax, dword [0x10bbf240]
add eax, 0xaff3cc8c
xor eax, 0x3743f7af
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x5c], eax
test eax, eax
je 0x1004ddfe
mov eax, dword [0x10373c90]
test al, 1
jne 0x1004dddc
or eax, 1
mov dword [0x10373c90], eax
mov dword [ebp - 4], 0x16
mov ebx, dword [0x10371278]
cmp ebx, dword [0x1037127c]
je 0x1004dd04
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1004dcf9
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004dcd0
xor edx, edx
test ecx, ecx
je 0x1004dcf9
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004dce0
cmp esi, 0xcd2ed041
je 0x1004dd17
add ebx, 4
cmp ebx, dword [0x1037127c]
jne 0x1004dcb7
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x10375574], eax
jmp 0x1004dde1
mov eax, dword [ebp - 0x44]
xor esi, esi
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x54], esi
cmp dword [eax + 4], esi
jle 0x1004ddb8
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1004dd61
cmp dword [ecx + 4], 0
jle 0x1004dd61
push 0
mov edx, 0xa2ccb41a
call fcn.1013bb80
add esp, 4
test eax, eax
je 0x1004dd5e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x44]
mov edi, dword [ebx]
mov esi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1004dd70
xor edx, edx
test ecx, ecx
je 0x1004dd9c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1004dd80
cmp esi, 0xa2ccb41a
je 0x1004ddc8
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x4c]
inc edx
mov esi, dword [ebp - 0x48]
add ecx, 0x3c
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x4c], ecx
cmp edx, dword [eax + 4]
jl 0x1004dd30
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov dword [0x10375574], eax
jmp 0x1004dde1
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x48]
mov dword [0x10375574], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1004dde1
mov eax, dword [0x10375574]
mov ecx, dword [ebp - 0x5c]
movzx eax, word [ecx + eax]
add eax, 0xffffffd5
cmp ax, 5
ja 0x1004ddfe
mulss xmm0, dword [0x102bd73c]
movss dword [ebp - 0x50], xmm0
mov eax, dword [0x10bbf240]
add eax, 0xaff3cc8c
xor eax, 0x3743f7af
mov ecx, dword [eax + 0xe4]
xor eax, eax
test ecx, ecx
push ecx
cmovne eax, ecx
movss dword [esp], xmm0
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
call eax
movss xmm3, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x64]
push 0
push 0
push 0x10359668
call fcn.1004b2a0
jmp 0x1004de41
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.101f36c3
mov esp, ebp
pop ebp
ret