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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x103a8bb5
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x70
push esi
push edi
mov eax, dword [0x1049b0c0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x20], ecx
mov eax, dword [0x10541630]
test al, 1
jne 0x10251afb
or eax, 1
mov dword [0x10541630], eax
mov dword [ebp - 4], 0
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x1c], eax
cmp eax, dword [0x1053ebbc]
je 0x10251a2a
nop word [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x10251a1c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x102519f3
xor edx, edx
test ecx, ecx
je 0x10251a1c
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10251a00
cmp edi, 0x4e9f1122
je 0x10251a3d
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
cmp eax, dword [0x1053ebbc]
jne 0x102519e0
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x10541634], eax
jmp 0x10251b00
mov eax, dword [ebp - 0x18]
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x24], edi
cmp dword [eax + 4], edi
jle 0x10251ad4
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x2c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10251a8a
cmp dword [ecx + 4], 0
jle 0x10251a8a
push 0
mov edx, 0x1c93bcf0
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10251a87
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x1c], edi
mov eax, dword [ebp - 0x18]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10251a93
xor edx, edx
test ecx, ecx
je 0x10251abc
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10251aa0
cmp edi, 0x1c93bcf0
je 0x10251ae4
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x10251a56
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x10541634], eax
jmp 0x10251b00
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x1c]
mov dword [0x10541634], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10251b00
mov eax, dword [0x10541634]
mov esi, dword [ebx + 8]
mov eax, dword [eax + esi]
mov dword [ebp - 0x44], eax
mov eax, dword [0x10544908]
test al, 1
jne 0x10251c69
or eax, 1
mov dword [0x10544908], eax
mov dword [ebp - 4], 1
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1053ebbc]
je 0x10251b7f
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
test ecx, ecx
je 0x10251b71
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10251b48
xor edx, edx
test ecx, ecx
je 0x10251b71
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10251b55
cmp edi, 0x72e242a1
je 0x10251b95
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [0x1053ebbc]
jne 0x10251b35
mov esi, dword [ebx + 8]
xor eax, eax
mov dword [0x105446c4], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10251c6e
mov eax, dword [ebp - 0x2c]
xor esi, esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x28], esi
cmp dword [eax + 4], esi
jle 0x10251c3f
xor ecx, ecx
mov dword [ebp - 0x24], ecx
nop
mov edi, dword [eax]
add edi, ecx
mov dword [ebp - 0x38], edi
mov ecx, dword [edi + 0x28]
test ecx, ecx
je 0x10251be1
cmp dword [ecx + 4], 0
jle 0x10251be1
push 0
mov edx, 0x84cdad2
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10251be1
mov ecx, dword [edi + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x1c], esi
mov esi, dword [edi]
mov eax, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [esi + ecx], 0
jne 0x10251bf0
xor edx, edx
test ecx, ecx
je 0x10251c20
mov edi, eax
nop
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10251c00
mov dword [ebp - 0x18], edi
cmp dword [ebp - 0x18], 0x84cdad2
mov edi, dword [ebp - 0x38]
je 0x10251c52
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
inc edx
mov ecx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], ecx
cmp edx, dword [eax + 4]
jl 0x10251bb0
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov esi, dword [ebx + 8]
mov dword [0x105446c4], eax
jmp 0x10251c6e
mov eax, dword [edi + 0x2c]
add eax, dword [ebp - 0x1c]
mov esi, dword [ebx + 8]
mov dword [0x105446c4], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10251c6e
mov eax, dword [0x105446c4]
cmp dword [ebp - 0x44], 2
je 0x10252733
cmp dword [eax + esi], 0
jle 0x10252733
mov eax, dword [esi + 8]
lea edi, [esi + 8]
mov ecx, edi
mov eax, dword [eax + 0x24]
call eax
test al, al
jne 0x10252733
mov eax, dword [0x1054796c]
mov ecx, edi
test al, 1
jne 0x10251de7
or eax, 1
mov dword [0x1054796c], eax
mov dword [ebp - 4], 2
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
je 0x10251d12
mov ecx, dword [eax]
mov dword [ebp - 0x24], ecx
test ecx, ecx
je 0x10251d01
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10251cd8
xor edx, edx
test ecx, ecx
je 0x10251d01
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10251ce5
cmp edi, 0x72e242a1
je 0x10251d2b
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
jne 0x10251cc5
mov esi, dword [ebx + 8]
xor eax, eax
mov dword [0x10547968], eax
lea edi, [esi + 8]
mov dword [ebp - 4], 0xffffffff
lea ecx, [esi + 8]
jmp 0x10251dec
mov eax, dword [ebp - 0x24]
xor esi, esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x2c], esi
cmp dword [eax + 4], esi
jle 0x10251dcf
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov edi, dword [eax]
add edi, ecx
mov dword [ebp - 0x44], edi
mov ecx, dword [edi + 0x28]
test ecx, ecx
je 0x10251d75
cmp dword [ecx + 4], 0
jle 0x10251d75
push 0
mov edx, 0x9c15080d
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10251d75
mov ecx, dword [edi + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x1c], esi
mov esi, dword [edi]
mov eax, 0x811c9dc5
xor ecx, ecx
nop
inc ecx
cmp byte [esi + ecx], 0
jne 0x10251d80
xor edx, edx
test ecx, ecx
je 0x10251db0
mov edi, eax
nop
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10251d90
mov dword [ebp - 0x18], edi
cmp dword [ebp - 0x18], 0x9c15080d
mov edi, dword [ebp - 0x44]
je 0x10251dd9
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
inc edx
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x1c]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x10251d44
mov eax, esi
mov esi, dword [ebx + 8]
jmp 0x10251d14
mov eax, dword [edi + 0x2c]
add eax, dword [ebp - 0x1c]
mov esi, dword [ebx + 8]
jmp 0x10251d14
mov eax, dword [0x10547968]
mov al, byte [eax + esi]
test al, al
jne 0x10252733
mov eax, dword [ecx]
mov ecx, edi
mov esi, dword [ebp - 0x20]
mov eax, dword [eax + 0x28]
mov esi, dword [esi]
call eax
imul eax, eax, 0x30b0
add esi, 0x40
add eax, esi
mov dword [ebp - 0x14], eax
je 0x10252733
mov eax, dword [eax + 0xc]
test eax, eax
je 0x10252733
cmp eax, dword [ebx + 8]
jne 0x10252733
mov eax, dword [0x10541630]
test al, 1
jne 0x10251ebc
or eax, 1
mov dword [0x10541630], eax
mov dword [ebp - 4], 3
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
je 0x10251eae
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x10251ea0
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10251e73
xor edx, edx
test ecx, ecx
je 0x10251ea0
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10251e80
cmp edi, 0x4e9f1122
je 0x10251f58
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
jne 0x10251e60
xor eax, eax
mov dword [0x10541634], eax
mov dword [ebp - 4], 0xffffffff
mov edx, dword [0x10544908]
test dl, 1
jne 0x102520b9
or edx, 1
mov dword [0x10544908], edx
mov dword [ebp - 4], 4
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
je 0x10251f3e
nop dword [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x10251f30
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10251f03
xor edx, edx
test ecx, ecx
je 0x10251f30
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10251f10
cmp edi, 0x72e242a1
je 0x1025200d
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
jne 0x10251ef0
xor ecx, ecx
mov dword [ebp - 4], 0xffffffff
mov edx, dword [0x10544908]
mov dword [0x105446c4], ecx
jmp 0x102520bf
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x2c], edi
cmp dword [eax + 4], edi
jle 0x10251ff8
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x44], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10251fa5
cmp dword [ecx + 4], 0
jle 0x10251fa5
push 0
mov edx, 0x1c93bcf0
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10251fa2
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
nop
inc ecx
cmp byte [ecx + esi], 0
jne 0x10251fb0
xor edx, edx
test ecx, ecx
je 0x10251fdc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10251fc0
cmp edi, 0x1c93bcf0
je 0x10251fff
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x10251f71
mov eax, edi
jmp 0x10251eb0
mov eax, dword [ebp - 0x44]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x18]
jmp 0x10251eb0
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x2c], edi
cmp dword [eax + 4], edi
jle 0x102520a4
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x44], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1025205a
cmp dword [ecx + 4], 0
jle 0x1025205a
push 0
mov edx, 0x84cdad2
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10252057
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10252063
xor edx, edx
test ecx, ecx
je 0x1025208c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10252070
cmp edi, 0x84cdad2
je 0x102520ab
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x10252026
mov ecx, edi
jmp 0x10251f40
mov ecx, dword [ebp - 0x44]
mov ecx, dword [ecx + 0x2c]
add ecx, dword [ebp - 0x18]
jmp 0x10251f40
mov ecx, dword [0x105446c4]
mov edi, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14]
mov esi, dword [edi]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x24], eax
test dl, 1
jne 0x10252162
or edx, 1
mov dword [0x10544908], edx
mov dword [ebp - 4], 5
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
je 0x1025214a
nop dword [eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1025213c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10252113
xor edx, edx
test ecx, ecx
je 0x1025213c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10252120
cmp edi, 0x72e242a1
je 0x1025217d
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
jne 0x10252100
xor ecx, ecx
mov eax, dword [ebp - 0x24]
mov edi, dword [ebp - 0x20]
mov dword [ebp - 4], 0xffffffff
mov esi, dword [ebp - 0x38]
mov dword [0x105446c4], ecx
cmp byte [0x10523818], 0
mov ecx, dword [eax + ecx]
je 0x10252229
mov eax, dword [esi + 0xc8ed4]
jmp 0x1025222f
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x2c], edi
cmp dword [eax + 4], edi
jle 0x10252214
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x44], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x102521ca
cmp dword [ecx + 4], 0
jle 0x102521ca
push 0
mov edx, 0x84cdad2
call fcn.10238b60
add esp, 4
test eax, eax
je 0x102521c7
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x102521d3
xor edx, edx
test ecx, ecx
je 0x102521fc
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x102521e0
cmp edi, 0x84cdad2
je 0x1025221b
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x10252196
mov ecx, edi
jmp 0x1025214c
mov ecx, dword [ebp - 0x44]
mov ecx, dword [ecx + 0x2c]
add ecx, dword [ebp - 0x18]
jmp 0x1025214c
mov eax, dword [esi + 0xc8ed0]
cmp eax, ecx
jle 0x10252242
cmp eax, 0x64
jg 0x1025223b
inc ecx
jmp 0x10252245
add ecx, 0xffffff9c
add ecx, eax
jmp 0x10252245
lea ecx, [eax + 1]
mov eax, dword [edi]
mov dword [ebp - 0x4c], ecx
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0x4c]
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x80]
mov dword [ebp - 0x3c], ecx
lea ecx, [ebp - 0x40]
push eax
call fcn.10252750
cmp byte [ebp - 0x80], 0
je 0x10252733
mov eax, dword [edi]
cmp byte [eax + 0xc8ec2], 0
je 0x102526ed
lea ecx, [ebp - 0x48]
call fcn.100ae340
lea edx, [ebp - 0x40]
mov dword [ebp - 0x40], 0x3e8
mov dword [ebp - 0x3c], 0
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x48], ecx
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x44], eax
call fcn.100c4f70
test al, al
js 0x102526ed
lea edx, [ebp - 0x40]
mov dword [ebp - 0x40], 0x190
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x3c], 0
call fcn.100c4f70
test al, al
jg 0x102526ed
mov ecx, dword [edi]
call fcn.10243be0
test al, al
je 0x102526ed
mov eax, dword [edi + 4]
cmp byte [eax], 0
mov eax, dword [0x11b92250]
jne 0x10252340
lea esi, [eax - 0x393e67ec]
xor esi, 0x26996288
mov ecx, dword [esi + 0x10]
cmp byte [ecx], 0
jne 0x102526e5
mov edx, dword [esi + 0x214]
mov ecx, dword [edx + 0x1c]
mov ecx, dword [ecx + 0x2c]
xor ecx, edx
xor edx, edx
mov dword [ebp - 0x44], ecx
mov ecx, dword [esi + 0xc0]
movss xmm0, dword [ebp - 0x44]
subss xmm0, dword [0x1046f104]
movd xmm1, dword [ecx + 0x4d30]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
seta dl
jmp 0x10252387
lea ecx, [eax - 0x393e67ec]
xor ecx, 0x26996288
mov ecx, dword [ecx + 0x10c]
movss xmm0, dword [ecx + 0x10]
divss xmm0, dword [ecx + 0x20]
mov ecx, dword [0x11b92278]
add ecx, 0x7f89ab4f
xor ecx, 0xa61a61a6
mov ecx, dword [ecx + 0x4c]
addss xmm0, dword [0x1046f094]
cvttss2si edx, xmm0
sub ecx, edx
xor edx, edx
cmp ecx, 6
setg dl
test edx, edx
je 0x102526e5
lea ecx, [eax - 0x393e67ec]
xor ecx, 0x26996288
mov ecx, dword [ecx + 0x158]
mov dword [ebp - 0x38], ecx
mov ecx, dword [0x10541658]
test cl, 1
jne 0x10252508
or ecx, 1
mov dword [0x10541658], ecx
mov dword [ebp - 4], 6
mov ecx, dword [0x1053ebb8]
mov dword [ebp - 0x1c], ecx
cmp ecx, dword [0x1053ebbc]
je 0x10252429
mov edx, dword [ecx]
mov dword [ebp - 0x28], edx
test edx, edx
je 0x1025241b
mov edi, dword [edx + 0xc]
mov ecx, 0x811c9dc5
xor edx, edx
inc edx
cmp byte [edi + edx], 0
jne 0x102523e7
xor esi, esi
test edx, edx
je 0x10252418
mov eax, ecx
movsx ecx, byte [edi + esi]
inc esi
xor ecx, eax
imul eax, ecx, 0x1000193
cmp esi, edx
jb 0x102523f6
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xcd2ed041
mov eax, dword [0x11b92250]
je 0x1025243d
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
cmp ecx, dword [0x1053ebbc]
jne 0x102523d4
xor ecx, ecx
mov dword [ebp - 4], 0xffffffff
mov dword [0x10544910], ecx
jmp 0x1025250e
mov ecx, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x2c], edi
cmp dword [ecx + 4], edi
jle 0x102524da
xor eax, eax
mov dword [ebp - 0x1c], eax
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x44], esi
test ecx, ecx
je 0x1025248b
cmp dword [ecx + 4], 0
jle 0x1025248b
push 0
mov edx, 0xa2ccb41a
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10252488
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10252494
xor edx, edx
test ecx, ecx
je 0x102524bd
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x102524a1
cmp edi, 0xa2ccb41a
je 0x102524eb
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2c]
add eax, 0x3c
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x1c], eax
cmp edx, dword [ecx + 4]
jl 0x10252456
mov eax, dword [0x11b92250]
mov ecx, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x10544910], ecx
jmp 0x1025250e
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x18]
mov eax, dword [0x11b92250]
mov dword [0x10544910], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1025250e
mov ecx, dword [0x10544910]
mov edx, dword [ebp - 0x38]
add eax, 0xc6c19814
xor eax, 0x26996288
movzx esi, word [edx + ecx]
mov ecx, dword [eax + 0x110]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
test eax, eax
je 0x10252547
cmp dword [eax + 0xc8], 0
jne 0x10252547
cmp si, 0x1f
jne 0x102526e5
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x158]
mov dword [ebp - 0x38], eax
mov eax, dword [0x10541658]
test al, 1
jne 0x102526ab
or eax, 1
mov dword [0x10541658], eax
mov dword [ebp - 4], 7
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
je 0x102525da
nop dword [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x102525cc
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x102525a3
xor edx, edx
test ecx, ecx
je 0x102525cc
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x102525b0
cmp edi, 0xcd2ed041
je 0x102525ed
mov eax, dword [ebp - 0x2c]
add eax, 4
mov dword [ebp - 0x2c], eax
cmp eax, dword [0x1053ebbc]
jne 0x10252590
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x10544910], eax
jmp 0x102526b0
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x2c], edi
cmp dword [eax + 4], edi
jle 0x10252684
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x44], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1025263a
cmp dword [ecx + 4], 0
jle 0x1025263a
push 0
mov edx, 0xa2ccb41a
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10252637
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10252643
xor edx, edx
test ecx, ecx
je 0x1025266c
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10252650
cmp edi, 0xa2ccb41a
je 0x10252694
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x10252606
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x10544910], eax
jmp 0x102526b0
mov eax, dword [ebp - 0x44]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x10544910], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x102526b0
mov eax, dword [0x10544910]
mov ecx, dword [ebp - 0x38]
movzx eax, word [ecx + eax]
mov edi, eax
mov esi, eax
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov ecx, dword [eax + 0x110]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
test eax, eax
je 0x10252733
cmp di, 0x1f
jne 0x10252733
lea ecx, [ebp - 0x48]
call fcn.100ae340
mov ecx, dword [ebp - 0x14]
movups xmm0, xmmword [ebp - 0x80]
mov eax, dword [ebp - 0x50]
movups xmmword [ecx + 0x3058], xmm0
movups xmm0, xmmword [ebp - 0x70]
movups xmmword [ecx + 0x3068], xmm0
movups xmm0, xmmword [ebp - 0x60]
movups xmmword [ecx + 0x3078], xmm0
mov dword [ecx + 0x3088], eax
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x3050]
mov dword [ecx + 0x3054], eax
mov eax, dword [ebp - 0x14]
mov byte [eax + 0x3058], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4