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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x103a85f3
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x1d8
mov eax, dword [0x1049b0c0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0xdc], ecx
mov ecx, dword [0x110e5830]
add ecx, 0xaae697be
xor ecx, 0x122398de
add ecx, 0xc0
mov dword [ebp - 0x84], ecx
je 0x1024a462
mov edi, dword [0x110e5858]
add edi, 0x8e75b4b4
xor edi, 0xb007215a
add edi, 0xab8280
mov dword [ebp - 0xc0], edi
je 0x1024a462
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x154]
mov dword [ebp - 0x80], eax
mov eax, dword [0x1054166c]
test al, 1
jne 0x102490e8
or eax, 1
mov dword [0x1054166c], eax
mov dword [ebp - 4], 0
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x1053ebbc]
mov dword [ebp - 0x7c], eax
cmp eax, ecx
je 0x10248fad
mov dword [ebp - 0x74], eax
nop dword [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x98], ecx
test ecx, ecx
je 0x10248f9f
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x10248f76
xor edx, edx
test ecx, ecx
je 0x10248f9f
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10248f83
cmp esi, 0x72e242a1
je 0x10248fcc
mov eax, dword [ebp - 0x74]
add eax, 4
mov dword [ebp - 0x74], eax
cmp eax, dword [0x1053ebbc]
jne 0x10248f60
mov esi, dword [0x1053ebb8]
xor eax, eax
mov ecx, dword [ebp - 0x84]
mov dword [0x105446e8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x102490f6
mov eax, dword [ebp - 0x98]
xor edi, edi
mov dword [ebp - 0x94], edi
mov dword [ebp - 0x74], edi
cmp dword [eax + 4], edi
jle 0x102490cc
xor ecx, ecx
mov dword [ebp - 0x78], ecx
nop dword [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0xb0], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1024902d
cmp dword [ecx + 4], 0
jle 0x1024902d
push 0
mov edx, 0xf3e9a9ed
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10249027
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x94], edi
mov eax, dword [ebp - 0x98]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [edi + ecx], 0
jne 0x10249036
xor edx, edx
test ecx, ecx
je 0x10249062
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x10249043
cmp esi, 0xf3e9a9ed
je 0x102490a0
mov eax, dword [ebp - 0x98]
mov edx, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x78]
inc edx
mov edi, dword [ebp - 0x94]
add ecx, 0x3c
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x78], ecx
cmp edx, dword [eax + 4]
jl 0x10248ff0
mov esi, dword [0x1053ebb8]
mov eax, edi
mov ecx, dword [ebp - 0x84]
mov dword [ebp - 0x7c], esi
mov dword [0x105446e8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x102490f6
mov eax, dword [ebp - 0xb0]
mov esi, dword [0x1053ebb8]
mov ecx, dword [ebp - 0x84]
mov dword [ebp - 0x7c], esi
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x94]
mov dword [0x105446e8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x102490f6
mov esi, dword [0x1053ebb8]
mov eax, edi
mov ecx, dword [ebp - 0x84]
mov dword [0x105446e8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x102490f6
mov esi, dword [0x1053ebb8]
mov eax, dword [0x105446e8]
mov dword [ebp - 0x7c], esi
mov edx, dword [ebp - 0x80]
cmp byte [edx + eax], 0
mov eax, dword [0x11b92250]
je 0x1024911e
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x15c]
movss xmm2, dword [eax + 0x138]
jmp 0x10249136
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x15c]
movss xmm2, dword [eax + 0x134]
movss xmm3, dword [ecx + 0x58]
xor eax, eax
movss xmm4, dword [ecx + 0x5c]
movaps xmm1, xmm3
movaps xmm0, xmm4
mulss xmm1, xmm3
mov edi, dword [ebp - 0xc0]
mulss xmm0, xmm4
mov dword [ebp - 0xe0], eax
movss xmm5, dword [ecx + 0x60]
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0xe8], 0xe
addss xmm1, xmm0
movss dword [ebp - 0xf0], xmm4
xorps xmm0, xmm0
movss dword [ebp - 0xf4], xmm5
movups xmmword [ebp - 0x140], xmm3
sqrtss xmm0, xmm1
maxss xmm0, dword [0x1046f104]
divss xmm0, xmm2
mulss xmm0, dword [0x1046f1e0]
subss xmm0, dword [0x1046f104]
cvttss2si edx, xmm0
test edx, edx
cmovs edx, eax
mov eax, edx
mov dword [ebp - 0xe4], edx
shr eax, 0x1f
test al, al
lea eax, [ebp - 0xe4]
cmove ecx, eax
cmp edx, 0xe
lea eax, [ebp - 0xe8]
cmovle eax, ecx
mov eax, dword [eax]
mov dword [ebp - 0xec], eax
test eax, eax
jne 0x102491fe
mov ecx, dword [ebp - 0xdc]
movq xmm0, qword [edi + 0x24]
movq qword [ecx + 0x30], xmm0
mov eax, dword [edi + 0x2c]
jmp 0x1024a45f
xor edi, edi
mov dword [ebp - 0xb0], edi
test eax, eax
jle 0x1024a42e
nop
mov edx, dword [0x11b92250]
lea eax, [edi + 1]
add edx, 0xc6c19814
movd xmm0, eax
mov eax, dword [ebp - 0xc0]
xor edx, 0x26996288
cvtdq2ps xmm0, xmm0
mov ecx, dword [edx + 0x10c]
movaps xmm6, xmm3
movaps xmm7, xmm4
mulss xmm0, dword [ecx + 0x20]
mulss xmm6, xmm0
mulss xmm7, xmm0
mulss xmm5, xmm0
movaps xmm2, xmm6
addss xmm2, dword [eax + 0x24]
movaps xmm1, xmm7
movss dword [ebp - 0x8c], xmm6
addss xmm1, dword [eax + 0x28]
movaps xmm0, xmm5
movss dword [ebp - 0x94], xmm7
addss xmm0, dword [eax + 0x2c]
movss dword [ebp - 0xd8], xmm2
movss dword [ebp - 0x98], xmm5
movss dword [ebp - 0xd4], xmm1
movss dword [ebp - 0xbc], xmm6
movss dword [ebp - 0xd0], xmm0
mov eax, dword [edx + 0x154]
mov dword [ebp - 0x88], eax
mov eax, dword [0x10544904]
movss dword [ebp - 0xb8], xmm7
movss dword [ebp - 0xb4], xmm5
test al, 1
jne 0x1024944d
or eax, 1
mov dword [0x10544904], eax
mov dword [ebp - 4], 1
mov ecx, dword [0x1053ebbc]
cmp esi, ecx
je 0x10249340
mov eax, esi
mov dword [ebp - 0x74], esi
cmp eax, ecx
je 0x10249340
nop word [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x90], ecx
test ecx, ecx
je 0x1024932f
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10249306
xor edx, edx
test ecx, ecx
je 0x1024932f
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10249313
cmp edi, 0x72e242a1
je 0x10249354
mov eax, dword [ebp - 0x74]
add eax, 4
mov dword [ebp - 0x74], eax
cmp eax, dword [0x1053ebbc]
jne 0x102492f0
mov esi, dword [ebp - 0x7c]
xor ecx, ecx
mov dword [ebp - 4], 0xffffffff
mov dword [0x10541648], ecx
jmp 0x10249453
mov eax, dword [ebp - 0x90]
xor edi, edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x74], edi
cmp dword [eax + 4], edi
jle 0x10249439
xor ecx, ecx
mov dword [ebp - 0x7c], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x84], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x102493aa
cmp dword [ecx + 4], 0
jle 0x102493aa
push 0
mov edx, 0xa4a37590
call fcn.10238b60
add esp, 4
test eax, eax
je 0x102493a4
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x78], edi
mov eax, dword [ebp - 0x90]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x102493b3
xor edx, edx
test ecx, ecx
je 0x102493df
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x102493c0
cmp edi, 0xa4a37590
je 0x10249415
mov eax, dword [ebp - 0x90]
mov edx, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x7c]
inc edx
mov edi, dword [ebp - 0x78]
add ecx, 0x3c
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x7c], ecx
cmp edx, dword [eax + 4]
jl 0x10249370
mov esi, dword [0x1053ebb8]
mov ecx, edi
mov dword [ebp - 0x7c], esi
mov dword [0x10541648], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10249453
mov eax, dword [ebp - 0x84]
mov esi, dword [0x1053ebb8]
mov dword [ebp - 0x7c], esi
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x78]
mov dword [0x10541648], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10249453
mov esi, dword [ebp - 0x7c]
mov ecx, edi
mov dword [0x10541648], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10249453
mov ecx, dword [0x10541648]
mov eax, dword [ebp - 0x88]
mov edx, dword [0x11b92250]
add edx, 0xc6c19814
xor edx, 0x26996288
mov al, byte [eax + ecx]
and al, 1
mov byte [ebp - 0x99], al
mov eax, dword [edx + 0x154]
mov dword [ebp - 0x90], eax
mov eax, dword [0x120746c8]
test al, 1
jne 0x102494a1
or eax, 1
mov dword [0x120746c8], eax
mov edi, dword [edx + 0x210]
mov dword [0x120746f8], edi
jmp 0x102494a7
mov edi, dword [0x120746f8]
test al, 2
jne 0x102494c0
or eax, 2
mov dword [0x120746c8], eax
mov eax, dword [edx + 0x240]
mov dword [0x120746e4], eax
jmp 0x102494c5
mov eax, dword [0x120746e4]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x88]
test byte [eax + ecx], 1
jne 0x10249506
mov eax, dword [edi + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, edi
mov dword [ebp - 0x84], eax
mov eax, dword [edx + 0x10c]
movss xmm0, dword [ebp - 0x84]
mulss xmm0, dword [eax + 0x20]
subss xmm5, xmm0
movss dword [ebp - 0xb4], xmm5
jmp 0x102495bb
mov eax, dword [0x10544904]
test al, 1
jne 0x1024958d
or eax, 1
mov dword [0x10544904], eax
mov dword [ebp - 4], 2
cmp esi, dword [0x1053ebbc]
je 0x1024957e
mov eax, dword [esi]
mov dword [ebp - 0x78], eax
test eax, eax
je 0x10249570
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10249540
xor edx, edx
test ecx, ecx
je 0x1024956d
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10249550
cmp edi, 0x72e242a1
je 0x10249735
mov esi, dword [ebp - 0x7c]
add esi, 4
mov dword [ebp - 0x7c], esi
cmp esi, dword [0x1053ebbc]
jne 0x10249526
xor ecx, ecx
mov dword [0x10541648], ecx
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x90]
test byte [eax + ecx], 1
je 0x102495c3
cmp byte [ebp - 0x99], 0
jne 0x102495c3
mov ecx, dword [ebp - 0x80]
mov eax, dword [ecx + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, ecx
mov dword [ebp - 0xb4], eax
movss xmm5, dword [ebp - 0xb4]
movss dword [ebp - 0x98], xmm5
mov eax, dword [ebp - 0xd0]
lea ecx, [ebp - 0x70]
movss xmm3, dword [ebp - 0xd8]
movss xmm4, dword [ebp - 0xd4]
movaps xmm0, xmm3
mov dword [ebp - 0x11c], eax
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
unpcklps xmm0, xmm4
movq qword [ebp - 0xd8], xmm0
xor eax, 0x26996288
movq qword [ebp - 0x124], xmm0
mov eax, dword [eax + 0x10c]
movss xmm2, dword [eax + 0x20]
movaps xmm1, xmm2
movaps xmm0, xmm2
mulss xmm1, xmm6
mulss xmm0, xmm7
mulss xmm2, xmm5
addss xmm1, xmm3
addss xmm0, xmm4
addss xmm2, dword [ebp - 0xd0]
movss dword [ebp - 0xcc], xmm1
movss dword [ebp - 0xc8], xmm0
movss dword [ebp - 0xc4], xmm2
call fcn.1003b510
push 1
mov dword [ebp - 0x100], 0x1045977c
call fcn.102fe881
mov dword [ebp - 0xf8], eax
add esp, 4
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xfc], eax
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x114]
mov dword [ebp - 0xa4], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x14]
mov dword [ebp - 0xa0], eax
mov eax, dword [0x10544684]
test al, 1
jne 0x102498ee
or eax, 1
mov dword [0x10544684], eax
mov dword [ebp - 4], 3
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x1053ebbc]
mov dword [ebp - 0x7c], eax
cmp eax, ecx
je 0x1024971e
mov dword [ebp - 0x80], eax
nop
mov ecx, dword [eax]
mov dword [ebp - 0x78], ecx
test ecx, ecx
je 0x10249710
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x102496e3
xor edx, edx
test ecx, ecx
je 0x10249710
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x102496f0
cmp edi, 0x1eee87cc
je 0x102497f6
mov eax, dword [ebp - 0x80]
add eax, 4
mov dword [ebp - 0x80], eax
cmp eax, dword [0x1053ebbc]
jne 0x102496d0
mov eax, dword [ebp - 0x7c]
xor ecx, ecx
mov dword [0x10541660], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x102498fc
mov eax, dword [ebp - 0x78]
xor edi, edi
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0x88], edi
cmp dword [eax + 4], edi
jle 0x102497de
xor ecx, ecx
mov dword [ebp - 0x74], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x84], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10249788
cmp dword [ecx + 4], 0
jle 0x10249788
push 0
mov edx, 0xa4a37590
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10249785
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x7c], edi
mov eax, dword [ebp - 0x78]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10249791
xor edx, edx
test ecx, ecx
je 0x102497bc
nop
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x102497a0
cmp edi, 0xa4a37590
je 0x102497e5
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x74]
inc edx
mov edi, dword [ebp - 0x7c]
add ecx, 0x3c
mov dword [ebp - 0x88], edx
mov dword [ebp - 0x74], ecx
cmp edx, dword [eax + 4]
jl 0x10249751
mov ecx, edi
jmp 0x10249580
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x7c]
jmp 0x10249580
mov eax, dword [ebp - 0x78]
xor edi, edi
mov dword [ebp - 0x74], edi
mov dword [ebp - 0x80], edi
cmp dword [eax + 4], edi
jle 0x102498da
xor ecx, ecx
mov dword [ebp - 0x88], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x84], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10249849
cmp dword [ecx + 4], 0
jle 0x10249849
push 0
mov edx, 0x7d388d3e
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10249846
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x74], edi
mov eax, dword [ebp - 0x78]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10249852
xor edx, edx
test ecx, ecx
je 0x1024987c
nop
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10249860
cmp edi, 0x7d388d3e
je 0x102498b7
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x88]
inc edx
mov edi, dword [ebp - 0x74]
add ecx, 0x3c
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x88], ecx
cmp edx, dword [eax + 4]
jl 0x10249812
mov eax, dword [0x1053ebb8]
mov ecx, edi
mov dword [ebp - 0x7c], eax
mov dword [0x10541660], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x102498fc
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x74]
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x7c], eax
mov dword [0x10541660], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x102498fc
mov eax, dword [ebp - 0x7c]
mov ecx, edi
mov dword [0x10541660], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x102498fc
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x10541660]
mov dword [ebp - 0x7c], eax
add ecx, dword [ebp - 0x90]
mov dword [ebp - 0xac], ecx
mov ecx, dword [0x10541644]
test cl, 1
jne 0x10249a68
or ecx, 1
mov dword [0x10541644], ecx
mov dword [ebp - 4], 4
cmp eax, dword [0x1053ebbc]
je 0x1024997a
nop
mov ecx, dword [eax]
mov dword [ebp - 0x74], ecx
test ecx, ecx
je 0x1024996c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10249943
xor edx, edx
test ecx, ecx
je 0x1024996c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10249950
cmp edi, 0x1eee87cc
je 0x1024998d
mov eax, dword [ebp - 0x7c]
add eax, 4
mov dword [ebp - 0x7c], eax
cmp eax, dword [0x1053ebbc]
jne 0x10249930
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1054164c], eax
jmp 0x10249a6d
mov eax, dword [ebp - 0x74]
xor edi, edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x80], edi
cmp dword [eax + 4], edi
jle 0x10249a3e
xor ecx, ecx
mov dword [ebp - 0x88], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x84], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x102499e7
cmp dword [ecx + 4], 0
jle 0x102499e7
push 0
mov edx, 0xe57f80c
call fcn.10238b60
add esp, 4
test eax, eax
je 0x102499e4
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x78], edi
mov eax, dword [ebp - 0x74]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x102499f0
xor edx, edx
test ecx, ecx
je 0x10249a1c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10249a00
cmp edi, 0xe57f80c
je 0x10249a4e
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x88]
inc edx
mov edi, dword [ebp - 0x78]
add ecx, 0x3c
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x88], ecx
cmp edx, dword [eax + 4]
jl 0x102499b0
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x1054164c], eax
jmp 0x10249a6d
mov eax, dword [ebp - 0x84]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x78]
mov dword [0x1054164c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10249a6d
mov eax, dword [0x1054164c]
push dword [ebp - 0xac]
add eax, dword [ebp - 0x90]
lea ecx, [ebp - 0x190]
push eax
lea eax, [ebp - 0xcc]
push eax
lea eax, [ebp - 0x124]
push eax
call fcn.10062980
lea ecx, [ebp - 0x70]
push ecx
lea ecx, [ebp - 0x100]
push ecx
mov ecx, dword [ebp - 0xa4]
push 0x201400b
push eax
call dword [ebp - 0xa0]
movss xmm3, dword [ebp - 0x44]
ucomiss xmm3, dword [0x1046f104]
lahf
test ah, 0x44
jnp 0x10249ff5
mov dword [ebp - 0x84], 0
movss xmm4, dword [ebp - 0x54]
movss xmm5, dword [ebp - 0x58]
movaps xmm2, xmm4
mulss xmm2, dword [ebp - 0x94]
movaps xmm0, xmm5
mulss xmm0, dword [ebp - 0x8c]
movss xmm6, dword [ebp - 0x50]
movss xmm7, dword [ebp - 0x98]
addss xmm2, xmm0
movss xmm3, dword [ebp - 0x8c]
movaps xmm0, xmm6
mulss xmm0, xmm7
addss xmm2, xmm0
movaps xmm0, xmm2
movaps xmm1, xmm2
mulss xmm0, xmm5
mulss xmm2, xmm6
subss xmm3, xmm0
mulss xmm1, xmm4
subss xmm7, xmm2
movaps xmm2, xmm4
movaps xmm0, xmm3
movss dword [ebp - 0x8c], xmm3
movss dword [ebp - 0xbc], xmm0
movss xmm0, dword [ebp - 0x94]
subss xmm0, xmm1
movss dword [ebp - 0x98], xmm7
movss dword [ebp - 0xb4], xmm7
mulss xmm2, xmm0
movss dword [ebp - 0x94], xmm0
movss dword [ebp - 0xb8], xmm0
movaps xmm0, xmm5
mulss xmm0, xmm3
movss xmm3, dword [ebp - 0x44]
addss xmm2, xmm0
movaps xmm0, xmm6
mulss xmm0, xmm7
addss xmm2, xmm0
xorps xmm0, xmm0
comiss xmm0, xmm2
jbe 0x10249bf7
movaps xmm0, xmm2
movaps xmm1, xmm2
mulss xmm0, xmm5
mulss xmm1, xmm4
movss xmm4, dword [ebp - 0x8c]
subss xmm4, xmm0
mulss xmm2, xmm6
movss xmm0, dword [ebp - 0x94]
subss xmm0, xmm1
subss xmm7, xmm2
movss dword [ebp - 0x8c], xmm4
movss dword [ebp - 0xbc], xmm4
movss dword [ebp - 0x94], xmm0
movss dword [ebp - 0xb8], xmm0
movss dword [ebp - 0x98], xmm7
movss dword [ebp - 0xb4], xmm7
jmp 0x10249bff
movss xmm4, dword [ebp - 0x8c]
mov ecx, dword [0x11b92250]
movss xmm1, dword [0x1046f104]
add ecx, 0xc6c19814
xor ecx, 0x26996288
subss xmm1, xmm3
mov eax, dword [ecx + 0x10c]
mulss xmm1, dword [eax + 0x20]
movaps xmm2, xmm1
movaps xmm0, xmm1
mulss xmm0, dword [ebp - 0x94]
mulss xmm2, xmm4
addss xmm0, dword [ebp - 0x60]
mulss xmm1, xmm7
addss xmm2, dword [ebp - 0x64]
addss xmm1, dword [ebp - 0x5c]
unpcklps xmm2, xmm0
movq qword [ebp - 0xcc], xmm2
movss dword [ebp - 0x110], xmm1
mov eax, dword [ebp - 0x110]
mov dword [ebp - 0xc4], eax
mov eax, dword [ecx + 0x114]
mov dword [ebp - 0xac], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x14]
mov dword [ebp - 0xa8], eax
mov eax, dword [0x10544684]
test al, 1
jne 0x10249e0e
or eax, 1
mov dword [0x10544684], eax
mov dword [ebp - 4], 5
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x1053ebbc]
mov dword [ebp - 0x7c], eax
cmp eax, ecx
je 0x10249cfe
mov dword [ebp - 0x80], eax
mov ecx, dword [eax]
mov dword [ebp - 0x74], ecx
test ecx, ecx
je 0x10249cf0
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10249cc7
xor edx, edx
test ecx, ecx
je 0x10249cf0
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10249cd4
cmp edi, 0x1eee87cc
je 0x10249d15
mov eax, dword [ebp - 0x80]
add eax, 4
mov dword [ebp - 0x80], eax
cmp eax, dword [0x1053ebbc]
jne 0x10249cb4
mov eax, dword [ebp - 0x7c]
xor ecx, ecx
mov dword [0x10541660], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10249e1c
mov eax, dword [ebp - 0x74]
xor edi, edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x80], edi
cmp dword [eax + 4], edi
jle 0x10249dfa
xor ecx, ecx
mov dword [ebp - 0x88], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0xa0], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10249d68
cmp dword [ecx + 4], 0
jle 0x10249d68
push 0
mov edx, 0x7d388d3e
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10249d65
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x78], edi
mov eax, dword [ebp - 0x74]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10249d71
xor edx, edx
test ecx, ecx
je 0x10249d9c
nop
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10249d80
cmp edi, 0x7d388d3e
je 0x10249dd7
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x88]
inc edx
mov edi, dword [ebp - 0x78]
add ecx, 0x3c
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x88], ecx
cmp edx, dword [eax + 4]
jl 0x10249d31
mov eax, dword [0x1053ebb8]
mov ecx, edi
mov dword [ebp - 0x7c], eax
mov dword [0x10541660], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10249e1c
mov eax, dword [ebp - 0xa0]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x78]
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x7c], eax
mov dword [0x10541660], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10249e1c
mov eax, dword [ebp - 0x7c]
mov ecx, edi
mov dword [0x10541660], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x10249e1c
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x10541660]
mov dword [ebp - 0x7c], eax
add ecx, dword [ebp - 0x90]
mov dword [ebp - 0xa4], ecx
mov ecx, dword [0x10541644]
test cl, 1
jne 0x10249f88
or ecx, 1
mov dword [0x10541644], ecx
mov dword [ebp - 4], 6
cmp eax, dword [0x1053ebbc]
je 0x10249e9a
nop
mov ecx, dword [eax]
mov dword [ebp - 0x74], ecx
test ecx, ecx
je 0x10249e8c
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10249e63
xor edx, edx
test ecx, ecx
je 0x10249e8c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10249e70
cmp edi, 0x1eee87cc
je 0x10249ead
mov eax, dword [ebp - 0x7c]
add eax, 4
mov dword [ebp - 0x7c], eax
cmp eax, dword [0x1053ebbc]
jne 0x10249e50
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1054164c], eax
jmp 0x10249f8d
mov eax, dword [ebp - 0x74]
xor edi, edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x80], edi
cmp dword [eax + 4], edi
jle 0x10249f5e
xor ecx, ecx
mov dword [ebp - 0x88], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0xa0], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x10249f07
cmp dword [ecx + 4], 0
jle 0x10249f07
push 0
mov edx, 0xe57f80c
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10249f04
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x78], edi
mov eax, dword [ebp - 0x74]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10249f10
xor edx, edx
test ecx, ecx
je 0x10249f3c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10249f20
cmp edi, 0xe57f80c
je 0x10249f6e
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x88]
inc edx
mov edi, dword [ebp - 0x78]
add ecx, 0x3c
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x88], ecx
cmp edx, dword [eax + 4]
jl 0x10249ed0
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x1054164c], eax
jmp 0x10249f8d
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x78]
mov dword [0x1054164c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10249f8d
mov eax, dword [0x1054164c]
push dword [ebp - 0xa4]
add eax, dword [ebp - 0x90]
lea ecx, [ebp - 0x190]
push eax
lea eax, [ebp - 0xcc]
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.10062980
lea ecx, [ebp - 0x70]
push ecx
lea ecx, [ebp - 0x100]
push ecx
mov ecx, dword [ebp - 0xac]
push 0x201400b
push eax
call dword [ebp - 0xa8]
movss xmm3, dword [ebp - 0x44]
ucomiss xmm3, dword [0x1046f104]
lahf
test ah, 0x44
jnp 0x10249ff5
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp eax, 2
jl 0x10249ad0
movq xmm0, qword [ebp - 0x64]
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0xd0], eax
mov eax, dword [0x11b92250]
movq qword [ebp - 0xcc], xmm0
add eax, 0xc6c19814
movq qword [ebp - 0xd8], xmm0
xor eax, 0x26996288
movss xmm0, dword [ebp - 0x5c]
subss xmm0, dword [0x1046f158]
movss dword [ebp - 0xc4], xmm0
mov eax, dword [eax + 0x114]
mov dword [ebp - 0xa4], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x14]
mov dword [ebp - 0xac], eax
mov eax, dword [0x10544684]
test al, 1
jne 0x1024a1f7
or eax, 1
mov dword [0x10544684], eax
mov dword [ebp - 4], 7
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x1053ebbc]
mov dword [ebp - 0x8c], eax
cmp eax, ecx
je 0x1024a0d5
mov dword [ebp - 0x84], eax
mov ecx, dword [eax]
mov dword [ebp - 0x74], ecx
test ecx, ecx
je 0x1024a0c4
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1024a098
xor edx, edx
test ecx, ecx
je 0x1024a0c4
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1024a0a5
cmp edi, 0x1eee87cc
je 0x1024a0ef
mov eax, dword [ebp - 0x84]
add eax, 4
mov dword [ebp - 0x84], eax
cmp eax, dword [0x1053ebbc]
jne 0x1024a085
mov eax, dword [ebp - 0x8c]
xor ecx, ecx
mov dword [0x10541660], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1024a208
mov eax, dword [ebp - 0x74]
xor edi, edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x84], edi
cmp dword [eax + 4], edi
jle 0x1024a1e0
xor ecx, ecx
mov dword [ebp - 0x80], ecx
nop dword [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0xa8], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1024a147
cmp dword [ecx + 4], 0
jle 0x1024a147
push 0
mov edx, 0x7d388d3e
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1024a144
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x78], edi
mov eax, dword [ebp - 0x74]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1024a150
xor edx, edx
test ecx, ecx
je 0x1024a17c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1024a160
cmp edi, 0x7d388d3e
je 0x1024a1ba
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x80]
inc edx
mov edi, dword [ebp - 0x78]
add ecx, 0x3c
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], ecx
cmp edx, dword [eax + 4]
jl 0x1024a110
mov eax, dword [0x1053ebb8]
mov ecx, edi
mov dword [ebp - 0x8c], eax
mov dword [0x10541660], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1024a208
mov eax, dword [ebp - 0xa8]
mov ecx, dword [eax + 0x2c]
add ecx, dword [ebp - 0x78]
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x8c], eax
mov dword [0x10541660], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1024a208
mov eax, dword [ebp - 0x8c]
mov ecx, edi
mov dword [0x10541660], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1024a208
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x10541660]
mov dword [ebp - 0x8c], eax
add ecx, dword [ebp - 0x90]
mov dword [ebp - 0xa0], ecx
mov ecx, dword [0x10541644]
test cl, 1
jne 0x1024a378
or ecx, 1
mov dword [0x10541644], ecx
mov dword [ebp - 4], 8
cmp eax, dword [0x1053ebbc]
je 0x1024a290
nop dword [eax + eax]
mov ecx, dword [eax]
mov dword [ebp - 0x74], ecx
test ecx, ecx
je 0x1024a27f
mov esi, dword [ecx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1024a253
xor edx, edx
test ecx, ecx
je 0x1024a27f
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1024a260
cmp edi, 0x1eee87cc
je 0x1024a2a3
mov eax, dword [ebp - 0x8c]
add eax, 4
mov dword [ebp - 0x8c], eax
cmp eax, dword [0x1053ebbc]
jne 0x1024a240
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x1054164c], eax
jmp 0x1024a37d
mov eax, dword [ebp - 0x74]
xor edi, edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x84], edi
cmp dword [eax + 4], edi
jle 0x1024a34e
xor ecx, ecx
mov dword [ebp - 0x80], ecx
nop
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0xa8], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1024a2f7
cmp dword [ecx + 4], 0
jle 0x1024a2f7
push 0
mov edx, 0xe57f80c
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1024a2f4
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x78], edi
mov eax, dword [ebp - 0x74]
mov esi, dword [esi]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x1024a300
xor edx, edx
test ecx, ecx
je 0x1024a32c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1024a310
cmp edi, 0xe57f80c
je 0x1024a35e
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x80]
inc edx
mov edi, dword [ebp - 0x78]
add ecx, 0x3c
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], ecx
cmp edx, dword [eax + 4]
jl 0x1024a2c0
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x1054164c], eax
jmp 0x1024a37d
mov eax, dword [ebp - 0xa8]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x78]
mov dword [0x1054164c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1024a37d
mov eax, dword [0x1054164c]
push dword [ebp - 0xa0]
add eax, dword [ebp - 0x90]
lea ecx, [ebp - 0x1e0]
push eax
lea eax, [ebp - 0xcc]
push eax
lea eax, [ebp - 0xd8]
push eax
call fcn.10062980
lea ecx, [ebp - 0x70]
push ecx
lea ecx, [ebp - 0x100]
push ecx
mov ecx, dword [ebp - 0xa4]
push 0x201400b
push eax
call dword [ebp - 0xac]
mov edi, dword [ebp - 0xb0]
movq xmm0, qword [ebp - 0xbc]
inc edi
mov eax, dword [ebp - 0xb4]
movq qword [ebp - 0x10c], xmm0
mov dword [ebp - 0x104], eax
mov dword [ebp - 0xb0], edi
cmp edi, dword [ebp - 0xec]
jge 0x1024a416
mov esi, dword [0x1053ebb8]
movups xmm3, xmmword [ebp - 0x140]
mov dword [ebp - 0x7c], esi
movss xmm4, dword [ebp - 0xf0]
movss xmm5, dword [ebp - 0xf4]
jmp 0x10249210
movss xmm5, dword [ebp - 0x104]
movss xmm4, dword [ebp - 0x108]
movss xmm3, dword [ebp - 0x10c]
mov eax, dword [ebp - 0xc0]
mov ecx, dword [ebp - 0xdc]
addss xmm3, dword [eax + 0x24]
addss xmm4, dword [eax + 0x28]
addss xmm5, dword [eax + 0x2c]
unpcklps xmm3, xmm4
movss dword [ebp - 0x110], xmm5
mov eax, dword [ebp - 0x110]
movq qword [ecx + 0x30], xmm3
mov dword [ecx + 0x38], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.102fe398
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret