Function at 0x10117098
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
mov eax, 0x1648
call fcn.1018e900
mov eax, dword [0x101f80c0]
xor eax, esp
mov dword [esp + 0x1644], eax
mov eax, dword [0x10213408]
push esi
push edi
cmp byte [eax + 0x32bc], 0
je case.0x10119bcb.0
cmp dword [eax + 0x32b8], 0
mov ecx, dword [0x103d7bec]
mov esi, dword [0x10214510]
movss xmm1, dword [ecx + 0x54]
movss xmm0, dword [ecx + 0x58]
movss dword [esp + 0x38], xmm1
movss dword [esp + 0x54], xmm0
jne case.0x10115f1b.0
mov eax, dword [0x10213410]
lea ecx, [esp + 0xac]
push ecx
lea ecx, [esp + 0x130]
push ecx
mov ecx, dword [eax + 0x5c]
call fcn.10034f70
mov eax, dword [esp + 0xac]
mov ecx, dword [0x1021451c]
mov dword [esp + 0x34], eax
mov eax, dword fs:[0x2c]
mov dword [esp + 0x24], 0
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x103db338]
cmp eax, dword [ecx + 4]
jle 0x10110b40
push 0x103db338
call fcn.1018e03f
add esp, 4
cmp dword [0x103db338], 0xffffffff
jne 0x10110b40
push 0x103db338
call fcn.1018dfee
add esp, 4
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x400
je case.0x10110b6a.0
mov edx, dword [eax + 0xe04]
lea ecx, [eax + 0xe04]
cmp edx, 3
ja case.0x10110b6a.0
jmp dword [edx*4 + 0x10119d74]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10110b82
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10110b6a.0
cmp byte [eax + 0x200], 0
je case.0x10110b6a.0
push 1
lea ecx, [esp + 0x604]
call fcn.1001f4d0
lea eax, [esp + 0xd54]
push eax
lea ecx, [esp + 0x9a]
call fcn.1011a000
mov edi, eax
cmp byte [edi + 7], 0
je 0x10110cef
xor ecx, ecx
mov dword [esp + 0x14], ecx
cmp esi, 2
jl 0x10110cc0
movaps xmm2, xmmword [0x101ea800]
movaps xmm3, xmmword [0x101eabd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ea840]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
movd xmm0, dword [edi]
packuswb xmm1, xmm1
paddb xmm1, xmmword [str.44444444444444447777777777777777]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [edi], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
movd xmm0, dword [edi + 4]
packuswb xmm1, xmm1
paddb xmm1, xmmword [str.44444444444444447777777777777777]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
jmp 0x10110cef
mov eax, 0x4d4873ed
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 8
jl 0x10110cc0
mov edx, edi
lea ecx, [esp + 0x600]
call fcn.100b1fb0
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0xc0]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x140]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x140]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x618]
mov dword [esp + 0x2c], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x54], eax
lea eax, [esp + 0xea4]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
mov ecx, dword [esp + 0x2c]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x54]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
mov ecx, 0xe
mov edx, dword [esp + 0x38]
push esi
sar eax, 1
add edx, 0xfffffea9
push 0x21
push eax
call fcn.1017d460
lea ecx, [esp + 0xe8c]
call fcn.10001f20
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x148]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x148]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x618]
mov dword [esp + 0x2c], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x54], eax
lea eax, [esp + 0xed4]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
push eax
mov ecx, dword [esp + 0x30]
call fcn.1001fd10
mov ecx, dword [esp + 0x54]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x24], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x618]
mov dword [esp + 0x2c], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x54], eax
lea eax, [esp + 0xebc]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
mov ecx, dword [esp + 0x2c]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x54]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x3c]
sar eax, 1
push 0x21
push dword [esp + 0x30]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
lea ecx, [esp + 0xea4]
call fcn.10001f20
lea ecx, [esp + 0xebc]
call fcn.10001f20
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x430]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x14c]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x3c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x618]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0xeec]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x2c]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
lea ecx, [esp + 0xed4]
call fcn.10001f20
mov eax, dword [esp + 0x34]
movss xmm1, dword [0x101ea48c]
lea ecx, [esp + 0x438]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xb0]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x2c], xmm0
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x618]
mov edi, esp
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0xf04]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x2c]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
lea ecx, [esp + 0xeec]
call fcn.10001f20
lea ecx, [esp + 0x600]
mov dword [esp + 0x24], 0x24
call fcn.100057b0
mov eax, dword [0x10213408]
test byte [eax + 0x32c0], 0x20
mov edi, 0x101e1e68
mov esi, 0x101e1e8c
je 0x1011142b
imul ecx, dword [0x1021e73c], 0x58
cmp byte [ecx + eax + 0xa78], 0
je 0x1011142b
cmp dword [ecx + eax + 0xa70], 3
je 0x1011142b
mov ecx, 0x10213408
call fcn.10034e10
lea ecx, [eax + 0xd70]
call fcn.100c0f70
test al, al
mov ecx, edi
cmove ecx, esi
push ecx
lea ecx, [esp + 0xd70]
call fcn.1001fd10
push 1
lea ecx, [esp + 0x69c]
call fcn.1001f4d0
lea eax, [esp + 0xd34]
push eax
lea ecx, [esp + 0x9b]
call fcn.1011a020
mov edi, eax
cmp byte [edi + 6], 0
je 0x101110e0
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop
mov eax, 0x3521cfb3
lea esi, [ecx + edi]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 7
jl 0x101110b0
mov edx, edi
lea ecx, [esp + 0x698]
call fcn.100b1fb0
lea edx, [esp + 0xd6c]
mov ecx, eax
call fcn.100c49e0
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0xcc]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x154]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x154]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x6b0]
mov dword [esp + 0x2c], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x54], eax
lea eax, [esp + 0xf1c]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
mov ecx, dword [esp + 0x2c]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x54]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
lea ecx, [esp + 0xf04]
call fcn.10001f20
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x15c]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x15c]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
mov dword [esp + 0x54], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x70], eax
lea eax, [esp + 0xf4c]
push eax
lea ecx, [esp + 0x6b4]
call fcn.1001f430
mov ecx, eax
call fcn.10006490
mov ecx, dword [esp + 0x54]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x70]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x40], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x6b0]
mov dword [esp + 0x70], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x54], eax
lea eax, [esp + 0xf34]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
mov ecx, dword [esp + 0x70]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x54]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x4c]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
lea ecx, [esp + 0xf1c]
call fcn.10001f20
lea ecx, [esp + 0xf34]
call fcn.10001f20
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x440]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x160]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x3c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x6b0]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
lea eax, [esp + 0xf64]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
movss xmm0, dword [esp + 0x40]
push esi
movss xmm1, dword [esp + 0x48]
call fcn.1017d0f0
lea ecx, [esp + 0xf4c]
call fcn.10001f20
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x448]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xbc]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x2c], xmm0
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x6b0]
mov edi, esp
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x58], eax
lea eax, [esp + 0xf7c]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
lea ecx, [esp + 0xf64]
call fcn.10001f20
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x698]
call fcn.100057b0
lea ecx, [esp + 0xd6c]
call fcn.10001f20
mov eax, dword [0x10213408]
test byte [eax + 0x32c0], 0x80
je case.0x1011210d.0
mov edx, dword [eax + 0xc98]
lea ecx, [eax + 0xc98]
cmp edx, 3
ja case.0x1011144d.0
jmp dword [edx*4 + 0x10119d84]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10111465
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x1011144d.0
cmp byte [0x101e2853], 0
movq xmm0, qword [0x101e2848]
mov eax, dword [0x101e2850]
movq qword [esp + 0x874], xmm0
mov dword [esp + 0x87c], eax
je 0x101115e3
xor edx, edx
cmp dword [0x10214510], 2
mov dword [esp + 0x3c], edx
jl 0x101115b0
movaps xmm2, xmmword [0x101ea800]
mov edx, 8
movaps xmm4, xmmword [0x101eabd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [str.44444444444444447777777777777777]
movaps xmm0, xmm1
mov dword [esp + 0x3c], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ea840]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101e2848]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x874], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x878]
xorps xmm1, xmm0
movd dword [esp + 0x878], xmm1
nop
mov eax, 0x4d4873ed
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x3c]
movsx eax, al
mov cl, dl
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x874], cl
inc edx
mov dword [esp + 0x3c], edx
cmp edx, 0xc
jl 0x101115b0
lea ecx, [esp + 0xc44]
call fcn.10028be0
lea ecx, [esp + 0x874]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10111600
sub ecx, edx
lea eax, [esp + 0x874]
push ecx
push eax
lea ecx, [esp + 0xc4c]
call fcn.10026920
lea ecx, [esp + 0xc44]
call fcn.10006490
lea ecx, [esp + 0x89c]
mov esi, eax
call fcn.10028be0
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10111640
sub ecx, edx
push ecx
push esi
lea ecx, [esp + 0x8a4]
call fcn.10026920
lea ecx, [esp + 0xc44]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0xe4]
call fcn.10001ee0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0xd0]
call fcn.10001ee0
mov esi, dword [esp + 0xc0]
lea ecx, [esp + 0xc4]
push 0
push 0
push 0
push 0
call fcn.10001ee0
mov eax, dword [0x10213418]
lea ecx, [esp + 0x89c]
mov edi, dword [esp + 0xc4]
mov eax, dword [eax + 0x20]
mov dword [esp + 0x14], eax
call fcn.10006490
sub esp, 0x18
mov dword [esp + 0x58], eax
mov eax, esp
mov ecx, eax
mov dword [esp + 0x70], eax
call fcn.10028be0
mov edx, dword [esp + 0x58]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [esp + 0x58], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101116f5
sub ecx, dword [esp + 0x58]
push ecx
mov ecx, dword [esp + 0x74]
push edx
call fcn.10026920
mov ecx, dword [esp + 0x2c]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push esi
sub eax, edx
mov dword [esp + 0x18], ecx
add ecx, 0xfffffea9
sar eax, 1
push edi
push 0x21
mov dword [esp + 0x24], ecx
mov edx, ecx
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0xd8]
call fcn.10001ee0
mov esi, dword [esp + 0xc8]
lea ecx, [esp + 0xcc]
push 0xa5
push 0
push 0
push 0
call fcn.10001ee0
mov eax, dword [0x10213418]
lea ecx, [esp + 0x89c]
mov edi, dword [esp + 0xcc]
mov eax, dword [eax + 0x20]
mov dword [esp + 0x3c], eax
call fcn.10006490
sub esp, 0x18
mov dword [esp + 0x58], eax
mov eax, esp
mov ecx, eax
mov dword [esp + 0x70], eax
call fcn.10028be0
mov edx, dword [esp + 0x58]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [esp + 0x58], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101117b5
sub ecx, dword [esp + 0x58]
push ecx
mov ecx, dword [esp + 0x74]
push edx
call fcn.10026920
mov ecx, dword [esp + 0x54]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x3c], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x8b4]
mov dword [esp + 0x58], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x70], eax
call fcn.10006490
mov ecx, dword [esp + 0x58]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x70]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push esi
sub eax, edx
mov edx, dword [esp + 0x1c]
push edi
sar eax, 1
push 0x21
push dword [esp + 0x48]
lea ecx, [eax + 0xe]
call fcn.1017d460
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x450]
movss xmm1, dword [0x101ea490]
add eax, 0xfffffead
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x164]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x3c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x8b4]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x458]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xd4]
movss xmm0, dword [eax]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x2c], xmm0
mov ecx, 0x10213418
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x8b4]
mov edi, esp
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x30], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x89c]
call fcn.10001f20
mov eax, dword [0x10213408]
mov edx, dword [eax + 0xc74]
lea ecx, [eax + 0xc74]
cmp edx, 3
ja case.0x1011196d.0
jmp dword [edx*4 + 0x10119d94]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10111985
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x1011196d.0
lea eax, [esp + 0xde4]
push eax
lea ecx, [esp + 0x9c]
call fcn.1011a050
mov edi, eax
cmp byte [edi + 0xa], 0
je 0x101119e0
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop
mov eax, 0x3521cfb3
lea esi, [ecx + edi]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xb
jl 0x101119b0
push edi
lea ecx, [esp + 0xf80]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0x8b8]
call fcn.1001fd10
lea ecx, [esp + 0xf7c]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0xe8]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x16c]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x16c]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x8cc]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x174]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x174]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x8cc]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x58], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x8cc]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x64]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x460]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x178]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x3c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x8cc]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x468]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xd8]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x2c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x18], eax
sub esp, 0x18
lea ecx, [esp + 0x8cc]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x8b4]
call fcn.10001f20
mov eax, dword [0x10213408]
mov edx, dword [eax + 0xce0]
lea ecx, [eax + 0xce0]
cmp edx, 3
ja case.0x10111cbe.0
jmp dword [edx*4 + 0x10119da4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10111cd6
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10111cbe.0
lea eax, [esp + 0xd5c]
push eax
lea ecx, [esp + 0x9d]
call fcn.1011a080
mov edi, eax
cmp byte [edi + 7], 0
je 0x10111e2f
xor ecx, ecx
cmp dword [0x10214510], 2
mov dword [esp + 0x14], ecx
jl 0x10111e00
movaps xmm2, xmmword [0x101ea800]
movaps xmm4, xmmword [0x101eabd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [str.44444444444444447777777777777777]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ea840]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [edi], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
jmp 0x10111e2f
mov eax, 0x4d4873ed
lea esi, [ecx + edi]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 8
jl 0x10111e00
push edi
lea ecx, [esp + 0xf98]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0x8d0]
call fcn.1001fd10
lea ecx, [esp + 0xf94]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0xec]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x180]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x180]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x8e4]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x188]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x188]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x8e4]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x58], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x8e4]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x64]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x478]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x18c]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x3c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x8e4]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x480]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xdc]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x2c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x18], eax
sub esp, 0x18
lea ecx, [esp + 0x8e4]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x8cc]
call fcn.10001f20
mov eax, dword [0x10213408]
mov edx, dword [eax + 0xcbc]
lea ecx, [eax + 0xcbc]
cmp edx, 3
ja case.0x1011210d.0
jmp dword [edx*4 + 0x10119db4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10112125
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x1011210d.0
lea eax, [esp + 0xdb4]
push eax
lea ecx, [esp + 0x9e]
call fcn.1011a0a0
mov edi, eax
cmp byte [edi + 8], 0
je 0x10112180
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop
mov eax, 0x3521cfb3
lea esi, [ecx + edi]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 9
jl 0x10112150
push edi
lea ecx, [esp + 0xfb0]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0x8e8]
call fcn.1001fd10
lea ecx, [esp + 0xfac]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0xf0]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x194]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x194]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x8fc]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x19c]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x19c]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x8fc]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x58], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x8fc]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x64]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x488]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x1a0]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x3c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x8fc]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x490]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xe0]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x2c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x18], eax
sub esp, 0x18
lea ecx, [esp + 0x8fc]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x8e4]
call fcn.10001f20
mov eax, dword [0x10213408]
test byte [eax + 0x32c0], 0x10
je 0x1011289c
mov ecx, dword [0x10214cf4]
cmp dword [ecx], 0
je 0x1011289c
mov ecx, 0x10214cf4
call fcn.10034210
mov ecx, eax
call fcn.10034230
test al, al
je 0x10112897
mov ecx, 0x10213408
call fcn.10034e10
push dword [0x1021e73c]
lea ecx, [eax + 0xa3c]
call fcn.10028790
cmp byte [eax + 0x21], 0
je 0x10112897
mov ecx, 0x10213408
call fcn.10034e10
lea ecx, [eax + 0xd4c]
call fcn.100c0f70
test al, al
je 0x10112897
mov ecx, 0x10213408
call fcn.10034e10
lea ecx, [eax + 0xd28]
call fcn.100c0f70
test al, al
mov ecx, 0x101e1e68
mov eax, 0x101e1e8c
cmovne eax, ecx
lea ecx, [esp + 0xd84]
push eax
call fcn.1001fd10
push 1
lea ecx, [esp + 0x7cc]
call fcn.1001f4d0
lea eax, [esp + 0xd3c]
push eax
lea ecx, [esp + 0x9f]
call fcn.1011a0c0
mov edi, eax
cmp byte [edi + 6], 0
je 0x10112551
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, 0x3521cfb3
lea esi, [ecx + edi]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 7
jl 0x10112521
mov edx, edi
lea ecx, [esp + 0x7c8]
call fcn.100b1fb0
lea edx, [esp + 0xd84]
mov ecx, eax
call fcn.100c49e0
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0xb4]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x1a8]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x1a8]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x7e0]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
lea eax, [esp + 0xfdc]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
lea ecx, [esp + 0xfc4]
call fcn.10001f20
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x1b0]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x1b0]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
lea eax, [esp + 0x100c]
push eax
lea ecx, [esp + 0x7e4]
call fcn.1001f430
mov ecx, eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x58], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x7e0]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
lea eax, [esp + 0xff4]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x64]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
lea ecx, [esp + 0xfdc]
call fcn.10001f20
lea ecx, [esp + 0xff4]
call fcn.10001f20
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x498]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x1b4]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x3c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x7e0]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
lea eax, [esp + 0x1024]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
push esi
movss xmm1, dword [esp + 0x48]
call fcn.1017d0f0
lea ecx, [esp + 0x100c]
call fcn.10001f20
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x4a0]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xa4]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x2c], xmm0
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x7e0]
mov edi, esp
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x30], eax
lea eax, [esp + 0x103c]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
lea ecx, [esp + 0x1024]
call fcn.10001f20
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x7c8]
call fcn.100057b0
lea ecx, [esp + 0xd84]
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x100000
je 0x10112d49
mov ecx, dword [0x10214cf4]
cmp dword [ecx], 0
je 0x10112d49
mov ecx, 0x10214cf4
call fcn.10034210
mov ecx, eax
call fcn.10034230
test al, al
je 0x10112d44
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, dword [eax + 0x10]
call fcn.1007c210
test eax, eax
je 0x10112d44
mov ecx, 0x10213404
call fcn.10034e10
push 1
lea ecx, [esp + 0x734]
mov eax, dword [eax + 0xd4]
mov eax, dword [eax + 0x4d30]
mov dword [esp + 0x1c], eax
call fcn.1001f4d0
lea eax, [esp + 0x1ac]
push eax
lea ecx, [esp + 0xa0]
call fcn.1011a0f0
mov edi, eax
cmp byte [edi + 3], 0
je 0x101129f0
xor ecx, ecx
cmp dword [0x10214510], 2
mov dword [esp + 0x14], ecx
jl 0x101129c1
movaps xmm3, xmmword [0x101ea800]
movaps xmm2, xmm3
movaps xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x101eabd0]
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x101eabd0]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x101ea890]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
movd xmm0, dword [edi]
packuswb xmm1, xmm1
paddb xmm1, xmmword [str.44444444444444447777777777777777]
xorps xmm1, xmm0
movd dword [edi], xmm1
jmp 0x101129f0
mov eax, 0x4d4873ed
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 4
jl 0x101129c1
push edi
lea ecx, [esp + 0x1040]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
mov edx, eax
lea ecx, [esp + 0x730]
call fcn.100b1fb0
push dword [esp + 0x18]
mov ecx, eax
call fcn.1001f550
lea ecx, [esp + 0x103c]
call fcn.10001f20
push 0xff
push 0xf3
push 0x78
push 0x86
lea ecx, [esp + 0xf8]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x1c0]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x1c0]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x748]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
lea eax, [esp + 0x106c]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
lea ecx, [esp + 0x1054]
call fcn.10001f20
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x1c8]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x1c8]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x748]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
lea eax, [esp + 0x1084]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x58], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x748]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
lea eax, [esp + 0xe80]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x64]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
lea ecx, [esp + 0xe68]
call fcn.10001f20
lea ecx, [esp + 0x106c]
call fcn.10001f20
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x4a8]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x1cc]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x3c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x748]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
lea eax, [esp + 0x109c]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
lea ecx, [esp + 0x1084]
call fcn.10001f20
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x4b0]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xe8]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x2c], xmm0
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x748]
mov edi, esp
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x30], eax
lea eax, [esp + 0x10b4]
push eax
call fcn.1001f430
mov ecx, eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
lea ecx, [esp + 0x109c]
call fcn.10001f20
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x730]
call fcn.100057b0
mov eax, dword [0x10213408]
test byte [eax + 0x32c0], 1
je case.0x10112d6b.0
mov edx, dword [eax + 0xd94]
lea ecx, [eax + 0xd94]
cmp edx, 3
ja case.0x10112d6b.0
jmp dword [edx*4 + 0x10119dc4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10112d83
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10112d6b.0
lea eax, [esp + 0x118]
push eax
lea ecx, [esp + 0xa1]
call fcn.1011a100
mov edi, eax
cmp byte [edi + 2], 0
je 0x10112de0
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop dword [eax]
mov eax, 0x3521cfb3
lea esi, [ecx + edi]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 3
jl 0x10112db0
push edi
lea ecx, [esp + 0x10b8]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0x900]
call fcn.1001fd10
lea ecx, [esp + 0x10b4]
call fcn.10001f20
lea ecx, [esp + 0xa0]
call fcn.10001eb0
mov ecx, 0x10213404
call fcn.10034e10
mov eax, dword [eax + 0xc]
movss xmm0, dword [eax]
subss xmm0, dword [0x1021e6e4]
comiss xmm0, dword [0x101ea224]
jbe 0x10112f16
mov ecx, 0x10214cf4
call fcn.10034220
test al, al
je 0x10112f16
mov ecx, 0x10214cf4
call fcn.10034210
mov ecx, eax
call fcn.10034230
test al, al
je 0x10112f16
mov ecx, 0x10214cf4
call fcn.10034210
mov ecx, eax
call fcn.1007c380
test eax, eax
je 0x10112f16
mov edi, dword [0x1021e704]
mov ecx, 0x10214cf4
call fcn.10034210
mov ecx, eax
call fcn.1007c380
mov ecx, eax
call fcn.1007c390
mov ecx, 0x10214cf4
mov dword [esp + 0x18], eax
call fcn.10034210
mov ecx, eax
call fcn.10095080
mov ecx, 0x10213404
mov esi, dword [eax]
sub esi, edi
call fcn.10034e10
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov eax, dword [eax + 0xc]
mulss xmm0, dword [eax + 0x20]
mov eax, dword [esp + 0x18]
comiss xmm0, dword [eax]
jb 0x10112f16
mov ecx, 0x10213408
call fcn.10034e10
cmp byte [eax + 0x3448], 0
je 0x10112f16
mov ecx, 0x10213408
call fcn.10034e10
lea ecx, [eax + 0x344c]
call fcn.100c0f70
test al, al
jne 0x10112f16
lea ecx, [esp + 0x1c4]
mov eax, 0xff
jmp 0x10112f1f
lea ecx, [esp + 0x1c8]
xor eax, eax
push 0xc8
push eax
push eax
push 0xff
call fcn.10001ec0
push eax
lea ecx, [esp + 0xa4]
call fcn.10001f00
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x1dc]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x1dc]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x914]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x1e4]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x1e4]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x914]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x58], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x914]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x64]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x3c8]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x1e8]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x3c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x914]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x4c0]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xa0]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x2c], xmm0
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x914]
mov edi, esp
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x30], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
push esi
mov ecx, dword [esp + 0x34]
movss xmm0, dword [esp + 0x44]
movss xmm1, dword [esp + 0x48]
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x8fc]
call fcn.10001f20
mov eax, dword [0x10213408]
test byte [eax + 0x32c0], 2
je case.0x101131db.0
mov edx, dword [eax + 0xdb8]
lea ecx, [eax + 0xdb8]
cmp edx, 3
ja case.0x101131db.0
jmp dword [edx*4 + 0x10119dd4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x101131f3
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x101131db.0
lea eax, [esp + 0xd44]
push eax
lea ecx, [esp + 0xa2]
call fcn.1011a120
mov edi, eax
cmp byte [edi + 6], 0
je 0x10113250
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop dword [eax]
mov eax, 0x3521cfb3
lea esi, [ecx + edi]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 7
jl 0x10113220
push edi
lea ecx, [esp + 0x10d0]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0x918]
call fcn.1001fd10
lea ecx, [esp + 0x10cc]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0xfc]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x1f0]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x1f0]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x92c]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x1f8]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x1f8]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x92c]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x58], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x92c]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x64]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x4c8]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x1fc]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x3c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x92c]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x4d0]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xec]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x2c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x18], eax
sub esp, 0x18
lea ecx, [esp + 0x92c]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x914]
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x100
je case.0x1011353e.0
mov edx, dword [eax + 0xd04]
lea ecx, [eax + 0xd04]
cmp edx, 3
ja case.0x1011353e.0
jmp dword [edx*4 + 0x10119de4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10113556
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x1011353e.0
mov ecx, 0x10213408
call fcn.10034e10
push dword [0x1021e73c]
lea ecx, [eax + 0xa3c]
call fcn.10028790
cmp byte [eax + 0x28], 0
je 0x10113899
lea eax, [esp + 0x11c]
push eax
lea ecx, [esp + 0xa3]
call fcn.1011a150
mov edi, eax
cmp byte [edi + 2], 0
je 0x101135d5
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 3
jl 0x101135a5
push edi
lea ecx, [esp + 0x10e8]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0x9d8]
call fcn.1001fd10
lea ecx, [esp + 0x10e4]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0x100]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x204]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x204]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9ec]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x20c]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x20c]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9ec]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x58], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9ec]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x64]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x4d8]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x210]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x3c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9ec]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x4e0]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xf0]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x2c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x18], eax
sub esp, 0x18
lea ecx, [esp + 0x9ec]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x9d4]
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x200
je case.0x101138c3.0
mov edx, dword [eax + 0x9e0]
lea ecx, [eax + 0x9e0]
cmp edx, 3
ja case.0x101138c3.0
jmp dword [edx*4 + 0x10119df4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x101138db
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x101138c3.0
lea eax, [esp + 0xac4]
push eax
lea ecx, [esp + 0x64]
call fcn.1011a170
mov edi, eax
cmp byte [edi + 4], 0
je 0x10113932
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, 0x3521cfb3
lea esi, [ecx + edi]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 5
jl 0x10113902
push edi
lea ecx, [esp + 0x1100]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0x930]
call fcn.1001fd10
lea ecx, [esp + 0x10fc]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0x104]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x218]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x218]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x944]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x220]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x220]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x944]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x58], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x944]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x64]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x4e8]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x224]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x3c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x944]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x4f0]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xf4]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x2c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x18], eax
sub esp, 0x18
lea ecx, [esp + 0x944]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x92c]
call fcn.10001f20
mov eax, dword [0x10213408]
test byte [eax + 0x32c0], 8
je case.0x10113c1d.0
mov edx, dword [eax + 0xc50]
lea ecx, [eax + 0xc50]
cmp edx, 3
ja case.0x10113c1d.0
jmp dword [edx*4 + 0x10119e04]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10113c35
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10113c1d.0
lea eax, [esp + 0xd4c]
push eax
lea ecx, [esp + 0x65]
call fcn.1011a190
mov edi, eax
cmp byte [edi + 6], 0
je 0x10113c90
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop dword [eax]
mov eax, 0x3521cfb3
lea esi, [ecx + edi]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 7
jl 0x10113c60
push edi
lea ecx, [esp + 0x1118]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0x948]
call fcn.1001fd10
lea ecx, [esp + 0x1114]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0x108]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x22c]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x22c]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x95c]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x234]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x234]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x95c]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x58], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x95c]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x64]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x4f8]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x238]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x3c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x95c]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x500]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xf8]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x2c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x18], eax
sub esp, 0x18
lea ecx, [esp + 0x95c]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x40]
movss xmm1, dword [esp + 0x44]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x944]
call fcn.10001f20
mov eax, dword [0x10213408]
test byte [eax + 0x32c0], 4
je case.0x10113f7b.0
mov edx, dword [eax + 0x9bc]
lea ecx, [eax + 0x9bc]
cmp edx, 3
ja case.0x10113f7b.0
jmp dword [edx*4 + 0x10119e14]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10113f93
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10113f7b.0
lea eax, [esp + 0x230]
push eax
lea ecx, [esp + 0x66]
call fcn.1011a1c0
mov edi, eax
cmp byte [edi + 3], 0
je 0x10114072
xor ecx, ecx
cmp dword [0x10214510], 2
mov dword [esp + 0x14], ecx
jl 0x10114043
movaps xmm3, xmmword [0x101ea800]
movaps xmm2, xmm3
movaps xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x101eabd0]
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x101eabd0]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x101ea890]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
movd xmm0, dword [edi]
packuswb xmm1, xmm1
paddb xmm1, xmmword [str.44444444444444447777777777777777]
xorps xmm1, xmm0
movd dword [edi], xmm1
jmp 0x10114072
mov eax, 0x4d4873ed
lea esi, [ecx + edi]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 4
jl 0x10114043
push edi
lea ecx, [esp + 0x1130]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0x960]
call fcn.1001fd10
lea ecx, [esp + 0x112c]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0x110]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x244]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x244]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x974]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x2c], ecx
add ecx, 0xfffffea9
sar eax, 1
push esi
push 0x21
mov dword [esp + 0x48], ecx
mov edx, ecx
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x24c]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov esi, dword [eax]
lea ecx, [esp + 0x24c]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov edi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x974]
mov dword [esp + 0x30], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
mov ecx, dword [esp + 0x30]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x58]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x14], eax
call fcn.10034e10
lea ecx, [esp + 0x95c]
mov eax, dword [eax + 0x20]
mov dword [esp + 0x58], eax
call fcn.10006490
sub esp, 0x18
mov dword [esp + 0x30], eax
mov eax, esp
mov ecx, eax
mov dword [esp + 0x58], eax
call fcn.10028be0
mov edx, dword [esp + 0x30]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [esp + 0x30], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10114201
sub ecx, dword [esp + 0x30]
push ecx
mov ecx, dword [esp + 0x5c]
push edx
call fcn.10026920
mov ecx, dword [esp + 0x70]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push esi
sub eax, edx
mov edx, dword [esp + 0x40]
push edi
sar eax, 1
push 0x21
push dword [esp + 0x20]
lea ecx, [eax + 0xe]
call fcn.1017d460
mov edi, dword [esp + 0x28]
lea ecx, [esp + 0xfc]
push 0xc8
push 0
push 0
lea eax, [edi - 0x153]
mov dword [esp + 0x64], 0x41c00000
movd xmm0, eax
cvtdq2ps xmm0, xmm0
push 0
movss dword [esp + 0x6c], xmm0
call fcn.10001ee0
mov eax, dword [0x10213418]
lea ecx, [esp + 0x95c]
mov esi, dword [esp + 0xfc]
mov eax, dword [eax + 0x20]
mov dword [esp + 0x40], eax
call fcn.10006490
sub esp, 0x18
mov dword [esp + 0x40], eax
mov eax, esp
mov ecx, eax
mov dword [esp + 0x30], eax
call fcn.10028be0
mov edx, dword [esp + 0x40]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [esp + 0x40], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101142b2
sub ecx, dword [esp + 0x40]
push ecx
mov ecx, dword [esp + 0x34]
push edx
call fcn.10026920
mov ecx, dword [esp + 0x58]
movss xmm0, dword [esp + 0x70]
movss xmm1, dword [esp + 0x74]
push esi
call fcn.1017d0f0
mov esi, dword [esp + 0x100]
lea eax, [edi - 0x154]
movd xmm0, eax
lea ecx, [esp + 0x95c]
mov eax, dword [0x10213418]
cvtdq2ps xmm0, xmm0
mov dword [esp + 0x40], 0x41b80000
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x18], eax
movss dword [esp + 0x44], xmm0
call fcn.10006490
sub esp, 0x18
mov edi, eax
mov eax, esp
mov ecx, eax
mov dword [esp + 0x40], eax
call fcn.10028be0
mov ecx, edi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10114330
sub ecx, edx
push ecx
mov ecx, dword [esp + 0x44]
push edi
call fcn.10026920
mov ecx, dword [esp + 0x30]
movss xmm0, dword [esp + 0x58]
movss xmm1, dword [esp + 0x5c]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x95c]
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x800
je case.0x101143a2.0
cmp byte [eax + 0x3485], 0
je case.0x101143a2.0
mov edx, dword [eax + 0x3488]
lea ecx, [eax + 0x3488]
cmp edx, 3
ja case.0x101143a2.0
jmp dword [edx*4 + 0x10119e24]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x101143ba
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x101143a2.0
lea eax, [esp + 0xad4]
push eax
lea ecx, [esp + 0x67]
call fcn.1011a1d0
mov edi, eax
cmp byte [edi + 4], 0
je 0x10114411
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 5
jl 0x101143e1
push edi
lea ecx, [esp + 0x1148]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0x978]
call fcn.1001fd10
lea ecx, [esp + 0x1144]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0x114]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x254]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x254]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x98c]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x25c]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x25c]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x98c]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x40], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x98c]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x4c]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x508]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x260]
movss dword [esp + 0x24], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x2c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x98c]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x40], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x510]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0x104]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x1c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x28], eax
sub esp, 0x18
lea ecx, [esp + 0x98c]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x974]
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x1000
je case.0x1011470c.0
cmp byte [eax + 0x3448], 0
je case.0x1011470c.0
mov edx, dword [eax + 0x344c]
lea ecx, [eax + 0x344c]
cmp edx, 3
ja case.0x1011470c.0
jmp dword [edx*4 + 0x10119e34]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10114724
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x1011470c.0
lea eax, [esp + 0xacc]
push eax
lea ecx, [esp + 0x68]
call fcn.1011a1f0
mov edi, eax
cmp byte [edi + 4], 0
je 0x10114780
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop dword [eax + eax]
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 5
jl 0x10114750
push edi
lea ecx, [esp + 0x1160]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0x990]
call fcn.1001fd10
lea ecx, [esp + 0x115c]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0x118]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x268]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x268]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9a4]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x270]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x270]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9a4]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x40], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9a4]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x4c]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x518]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x274]
movss dword [esp + 0x24], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x2c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9a4]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x40], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x520]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0x108]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x1c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x28], eax
sub esp, 0x18
lea ecx, [esp + 0x9a4]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x98c]
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x2000
je case.0x10114a7b.0
cmp byte [eax + 0x33b8], 0
je case.0x10114a7b.0
mov edx, dword [eax + 0x33cc]
lea ecx, [eax + 0x33cc]
cmp edx, 3
ja case.0x10114a7b.0
jmp dword [edx*4 + 0x10119e44]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10114a93
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10114a7b.0
lea eax, [esp + 0x120]
push eax
lea ecx, [esp + 0x69]
call fcn.1011a210
mov edi, eax
cmp byte [edi + 2], 0
je 0x10114af0
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop word [eax + eax]
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 3
jl 0x10114ac0
push edi
lea ecx, [esp + 0x1178]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0x9a8]
call fcn.1001fd10
lea ecx, [esp + 0x1174]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0x11c]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x27c]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x27c]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9bc]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x284]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x284]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9bc]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x40], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9bc]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x4c]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x528]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x288]
movss dword [esp + 0x24], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x2c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9bc]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x40], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x530]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0x10c]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x1c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x28], eax
sub esp, 0x18
lea ecx, [esp + 0x9bc]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x9a4]
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x4000
je case.0x10114deb.0
cmp byte [eax + 0x333c], 0
je case.0x10114deb.0
mov edx, dword [eax + 0x3340]
lea ecx, [eax + 0x3340]
cmp edx, 3
ja case.0x10114deb.0
jmp dword [edx*4 + 0x10119e54]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10114e03
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10114deb.0
lea eax, [esp + 0x124]
push eax
lea ecx, [esp + 0x6a]
call fcn.1011a230
mov edi, eax
cmp byte [edi + 2], 0
je 0x10114e60
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop word [eax + eax]
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 3
jl 0x10114e30
push edi
lea ecx, [esp + 0x1190]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0x9c0]
call fcn.1001fd10
lea ecx, [esp + 0x118c]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0x120]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x290]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x290]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9d4]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x298]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x298]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9d4]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x40], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9d4]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x4c]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x538]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x29c]
movss dword [esp + 0x24], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x2c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0x9d4]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x40], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x540]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0x110]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x1c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x28], eax
sub esp, 0x18
lea ecx, [esp + 0x9d4]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x9bc]
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x10000
je case.0x1011515b.0
cmp byte [eax + 0x33f0], 0
je case.0x1011515b.0
mov edx, dword [eax + 0x33f8]
lea ecx, [eax + 0x33f8]
cmp edx, 3
ja case.0x1011515b.0
jmp dword [edx*4 + 0x10119e64]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10115173
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x1011515b.0
lea eax, [esp + 0xae4]
push eax
lea ecx, [esp + 0x6b]
call fcn.1011a250
mov edi, eax
cmp byte [edi + 5], 0
je 0x101151d0
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop word [eax + eax]
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 6
jl 0x101151a0
push edi
lea ecx, [esp + 0x11a8]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xa08]
call fcn.1001fd10
lea ecx, [esp + 0x11a4]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0xb8]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x2a4]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x2a4]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa1c]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x2ac]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x2ac]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa1c]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x40], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa1c]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x4c]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x548]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x2b0]
movss dword [esp + 0x24], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x2c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa1c]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x40], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x550]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xa8]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x1c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x28], eax
sub esp, 0x18
lea ecx, [esp + 0xa1c]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0xa04]
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x20000
je case.0x101154cb.0
cmp byte [eax + 0x3390], 0
je case.0x101154cb.0
mov edx, dword [eax + 0x3394]
lea ecx, [eax + 0x3394]
cmp edx, 3
ja case.0x101154cb.0
jmp dword [edx*4 + 0x10119e74]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x101154e3
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x101154cb.0
lea eax, [esp + 0x128]
push eax
lea ecx, [esp + 0x6c]
call fcn.1011a270
mov edi, eax
cmp byte [edi + 2], 0
je 0x10115540
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop word [eax + eax]
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 3
jl 0x10115510
push edi
lea ecx, [esp + 0x11c0]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0x9f0]
call fcn.1001fd10
lea ecx, [esp + 0x11bc]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0xc4]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x2b8]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x2b8]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa04]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x2c0]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x2c0]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa04]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x40], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa04]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x4c]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x558]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x2c4]
movss dword [esp + 0x24], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x2c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa04]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x40], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x560]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xb4]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x1c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x28], eax
sub esp, 0x18
lea ecx, [esp + 0xa04]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0x9ec]
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x8000
je case.0x1011583b.0
cmp byte [eax + 0x3364], 0
je case.0x1011583b.0
mov edx, dword [eax + 0x336c]
lea ecx, [eax + 0x336c]
cmp edx, 3
ja case.0x1011583b.0
jmp dword [edx*4 + 0x10119e84]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10115853
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x1011583b.0
lea eax, [esp + 0x114]
push eax
lea ecx, [esp + 0x6d]
call fcn.1011a290
mov edi, eax
cmp byte [edi + 2], 0
je 0x101158b0
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop word [eax + eax]
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 3
jl 0x10115880
push edi
lea ecx, [esp + 0x11d8]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xa50]
call fcn.1001fd10
lea ecx, [esp + 0x11d4]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0xc8]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x2cc]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x2cc]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa64]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x2d4]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x2d4]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa64]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x40], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa64]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x4c]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x568]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x2d8]
movss dword [esp + 0x24], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x2c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa64]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x40], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x570]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xb8]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x1c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x28], eax
sub esp, 0x18
lea ecx, [esp + 0xa64]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0xa4c]
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x40000
je case.0x10115bab.0
cmp byte [eax + 0x3315], 0
je case.0x10115bab.0
mov edx, dword [eax + 0x3318]
lea ecx, [eax + 0x3318]
cmp edx, 3
ja case.0x10115bab.0
jmp dword [edx*4 + 0x10119e94]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10115bc3
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10115bab.0
lea eax, [esp + 0xaec]
push eax
lea ecx, [esp + 0x6e]
call fcn.1011a2b0
mov edi, eax
cmp byte [edi + 5], 0
je 0x10115c20
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop word [eax + eax]
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 6
jl 0x10115bf0
push edi
lea ecx, [esp + 0x11f0]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xa38]
call fcn.1001fd10
lea ecx, [esp + 0x11ec]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0xe0]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x2e0]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x2e0]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa4c]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x18], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x2e8]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x2e8]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa4c]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x40], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa4c]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x1c]
sar eax, 1
push 0x21
push dword [esp + 0x4c]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x578]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x2ec]
movss dword [esp + 0x24], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x2c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa4c]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x40], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x580]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xd0]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x1c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x28], eax
sub esp, 0x18
lea ecx, [esp + 0xa4c]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
add dword [esp + 0x24], 0x24
lea ecx, [esp + 0xa34]
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x80000
je case.0x10115f1b.0
cmp byte [eax + 0x32ed], 0
je case.0x10115f1b.0
mov edx, dword [eax + 0x32f0]
lea ecx, [eax + 0x32f0]
cmp edx, 3
ja case.0x10115f1b.0
jmp dword [edx*4 + 0x10119ea4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10115f33
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10115f1b.0
lea eax, [esp + 0xadc]
push eax
lea ecx, [esp + 0x6f]
call fcn.1011a2d0
mov edi, eax
cmp byte [edi + 4], 0
je 0x10115f90
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop word [eax + eax]
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 5
jl 0x10115f60
push edi
lea ecx, [esp + 0x1208]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xa20]
call fcn.1001fd10
lea ecx, [esp + 0x1204]
call fcn.10001f20
push 0xc8
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0xf4]
call fcn.10001ec0
push 0xa5
push 0
push 0
push 0
lea ecx, [esp + 0x2f4]
call fcn.10001ec0
push 0
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x2f4]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa34]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
mov ecx, dword [esp + 0x34]
xorps xmm0, xmm0
sub ecx, dword [esp + 0x24]
cdq
push edi
sub eax, edx
mov dword [esp + 0x38], ecx
push esi
sar eax, 1
lea edx, [ecx - 0x157]
push 0x21
push eax
mov ecx, 0xe
call fcn.1017d460
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x2fc]
call fcn.10001ec0
push 0xa5
push 0
push 0
mov edi, dword [eax]
lea ecx, [esp + 0x2fc]
push 0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa34]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
mov ecx, 0x10213418
sub eax, edx
sar eax, 1
mov dword [esp + 0x40], eax
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa34]
mov dword [esp + 0x40], esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
call fcn.10006490
mov ecx, dword [esp + 0x40]
push eax
call fcn.1001fd10
mov ecx, dword [esp + 0x30]
call fcn.1017d6c0
cdq
xorps xmm0, xmm0
push edi
sub eax, edx
push esi
mov esi, dword [esp + 0x3c]
sar eax, 1
push 0x21
push dword [esp + 0x4c]
lea edx, [esi - 0x157]
lea ecx, [eax + 0xe]
call fcn.1017d460
movss xmm1, dword [0x101ea490]
lea eax, [esi - 0x153]
movd xmm2, eax
lea ecx, [esp + 0x588]
cvtdq2ps xmm2, xmm2
call fcn.10097340
push 0xc8
push 0
push 0
movss xmm0, dword [eax]
lea ecx, [esp + 0x300]
movss dword [esp + 0x24], xmm0
movss xmm0, dword [eax + 4]
push 0
movss dword [esp + 0x2c], xmm0
call fcn.10001ec0
mov ecx, 0x10213418
mov esi, dword [eax]
call fcn.10034e10
sub esp, 0x18
lea ecx, [esp + 0xa34]
mov edi, esp
mov eax, dword [eax + 0x20]
mov dword [esp + 0x40], eax
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0x590]
movss xmm1, dword [0x101ea48c]
add eax, 0xfffffeac
movd xmm2, eax
cvtdq2ps xmm2, xmm2
call fcn.10097340
mov esi, dword [esp + 0xe4]
mov ecx, 0x10213418
movss xmm0, dword [eax]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x1c], xmm0
call fcn.10034e10
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x28], eax
sub esp, 0x18
lea ecx, [esp + 0xa34]
mov edi, esp
call fcn.10006490
push eax
mov ecx, edi
call fcn.1001fd10
mov ecx, dword [esp + 0x40]
movss xmm0, dword [esp + 0x30]
movss xmm1, dword [esp + 0x34]
push esi
call fcn.1017d0f0
lea ecx, [esp + 0xa1c]
call fcn.10001f20
mov eax, dword [0x10213408]
cmp dword [eax + 0x32b8], 1
jne case.0x10119bcb.0
mov eax, dword [0x10213410]
push 0xff
push 0xff
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
mov eax, dword [ecx]
mov eax, dword [eax + 0x64]
call eax
mov eax, dword [0x10213410]
mov edx, dword [eax + 0x5c]
mov eax, dword [0x10213418]
mov ecx, dword [eax + 0x2c]
mov eax, dword [edx]
push ecx
mov ecx, edx
mov eax, dword [eax + 0x5c]
call eax
movss xmm1, dword [esp + 0x54]
movss xmm0, dword [esp + 0x38]
mulss xmm1, dword [0x101ea26c]
mov eax, dword [0x10213410]
mulss xmm0, dword [0x101ea26c]
movss dword [esp + 0x54], xmm1
addss xmm1, dword [0x101ea440]
mov ecx, dword [eax + 0x5c]
movss dword [esp + 0x38], xmm0
addss xmm0, dword [0x101ea430]
mov eax, dword [ecx]
cvttss2si edx, xmm1
mov eax, dword [eax + 0x68]
cvttss2si esi, xmm0
push edx
mov dword [esp + 0x2c], edx
movss dword [esp + 0x38], xmm0
push esi
movss dword [esp + 0x20], xmm1
mov dword [esp + 0x1c], esi
call eax
mov eax, dword [0x101e2814]
xor edx, edx
mov dword [esp + 0x86c], eax
mov ax, word [0x101e2818]
mov word [esp + 0x870], ax
mov al, byte [0x101e281a]
mov byte [esp + 0x872], al
mov dword [esp + 0x3c], edx
nop
mov eax, 0x3521cfb3
mul edx
mov eax, dword [esp + 0x3c]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x3c]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x86c], cl
inc edx
mov dword [esp + 0x3c], edx
cmp edx, 7
jl 0x10116330
lea ecx, [esp + 0xc5c]
call fcn.10028be0
lea ecx, [esp + 0x86c]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10116380
sub ecx, edx
lea eax, [esp + 0x86c]
push ecx
push eax
lea ecx, [esp + 0xc64]
call fcn.10026920
lea ecx, [esp + 0xc5c]
call fcn.10006490
lea ecx, [esp + 0xa7c]
mov esi, eax
call fcn.10028be0
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101163c0
sub ecx, edx
push ecx
push esi
lea ecx, [esp + 0xa84]
call fcn.10026920
lea ecx, [esp + 0xc5c]
call fcn.10001f20
mov eax, dword [0x10213410]
lea ecx, [esp + 0xa7c]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x2f8]
push eax
call fcn.1003af20
lea ecx, [esp + 0xa7c]
mov esi, dword [eax]
lea eax, [esp + 0x2fc]
push eax
call fcn.1003af40
lea ecx, [esp + 0x6c]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x1228]
call fcn.1003b510
lea ecx, [esp + 0x598]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, dword [eax + 4]
mov edx, dword [eax]
mov eax, dword [edi]
push ecx
push edx
mov ecx, edi
mov eax, dword [eax + 0x70]
call eax
lea ecx, [esp + 0x121c]
call fcn.10001ff0
mov eax, dword [0x10213410]
push str.MEDUSA
mov ecx, dword [eax + 0x5c]
mov eax, dword [0x10213418]
push dword [eax + 0x2c]
lea eax, [esp + 0x3b8]
push eax
call fcn.10034ea0
mov esi, dword [0x10213408]
mov eax, dword [0x10213410]
cmp byte [esi + 0x32d8], 0
mov edi, dword [eax + 0x5c]
jne 0x10116513
mov eax, dword [0x10213404]
mov eax, dword [eax + 0xc]
movss xmm0, dword [eax + 0x10]
mulss xmm0, dword [0x101ea420]
cvtps2pd xmm0, xmm0
call fcn.101b5c90
movss xmm1, dword [0x101ea5b4]
mov ecx, edi
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [0x101ea26c]
addss xmm0, dword [0x101ea26c]
mulss xmm0, xmm1
cvttss2si eax, xmm0
movss xmm0, dword [esi + 0x32cc]
mulss xmm0, xmm1
push eax
cvttss2si eax, xmm0
movss xmm0, dword [esi + 0x32c8]
mulss xmm0, xmm1
push eax
cvttss2si eax, xmm0
movss xmm0, dword [esi + 0x32c4]
mulss xmm0, xmm1
push eax
cvttss2si eax, xmm0
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x64]
call eax
jmp 0x10116535
movss xmm0, dword [esi + 0x32d4]
push 0xff
sub esp, 0xc
mov ecx, esp
push ecx
call fcn.101824b0
add esp, 4
mov ecx, edi
call fcn.10034f00
mov eax, dword [0x10213410]
mov ecx, dword [eax + 0x5c]
mov eax, dword [0x10213418]
mov edx, dword [ecx]
push dword [eax + 0x2c]
mov eax, dword [edx + 0x5c]
call eax
movd xmm0, dword [esp + 0x3b0]
mov eax, dword [0x10213410]
push dword [esp + 0x28]
cvtdq2ps xmm0, xmm0
mov ecx, dword [eax + 0x5c]
addss xmm0, dword [esp + 0x38]
mov edx, dword [ecx]
cvttss2si eax, xmm0
push eax
mov eax, dword [edx + 0x68]
call eax
mov eax, dword [0x101e2a3c]
xor edx, edx
mov dword [esp + 0x864], eax
mov al, byte [0x101e2a40]
mov byte [esp + 0x868], al
mov dword [esp + 0x3c], edx
mov eax, 0x3521cfb3
mul edx
mov eax, dword [esp + 0x3c]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x3c]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x864], cl
inc edx
mov dword [esp + 0x3c], edx
cmp edx, 5
jl 0x10116594
lea ecx, [esp + 0xc74]
call fcn.10028be0
lea ecx, [esp + 0x864]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101165e0
sub ecx, edx
lea eax, [esp + 0x864]
push ecx
push eax
lea ecx, [esp + 0xc7c]
call fcn.10026920
lea ecx, [esp + 0xc74]
call fcn.10006490
lea ecx, [esp + 0xa94]
mov esi, eax
call fcn.10028be0
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10116620
sub ecx, edx
push ecx
push esi
lea ecx, [esp + 0xa9c]
call fcn.10026920
lea ecx, [esp + 0xc74]
call fcn.10001f20
mov eax, dword [0x10213410]
lea ecx, [esp + 0xa94]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x300]
push eax
call fcn.1003af20
lea ecx, [esp + 0xa94]
mov esi, dword [eax]
lea eax, [esp + 0x304]
push eax
call fcn.1003af40
lea ecx, [esp + 0x6d]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x1240]
call fcn.1003b510
lea ecx, [esp + 0x5a0]
push ecx
mov ecx, eax
call fcn.1001f840
mov edx, dword [edi]
mov ecx, edi
push 0
push dword [eax + 4]
push dword [eax]
mov eax, dword [edx + 0x70]
call eax
lea ecx, [esp + 0x1234]
call fcn.10001ff0
mov edi, 2
lea ecx, [esp + 0xa94]
mov dword [esp + 0x24], edi
call fcn.10001f20
lea ecx, [esp + 0xa7c]
call fcn.10001f20
mov eax, dword [0x10213410]
push 0xff
push 0xff
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
mov eax, dword [ecx]
mov eax, dword [eax + 0x3c]
call eax
mov eax, dword [0x10213410]
push str.FORMED.GG
mov esi, dword [eax + 0x5c]
mov ecx, esi
mov eax, dword [0x10213418]
push dword [eax + 0x2c]
lea eax, [esp + 0x4c0]
push eax
call fcn.10034ea0
push str.FORMED.GG
movd xmm0, dword [eax + 4]
mov eax, dword [0x10213410]
cvtdq2ps xmm0, xmm0
mov ecx, dword [eax + 0x5c]
mov eax, dword [0x10213418]
addss xmm0, dword [esp + 0x1c]
push dword [eax + 0x2c]
lea eax, [esp + 0x5b0]
push eax
movss dword [esp + 0x34], xmm0
call fcn.10034ea0
movd xmm0, dword [eax]
mov eax, dword [0x10213410]
cvtdq2ps xmm0, xmm0
mov ecx, dword [eax + 0x5c]
mov eax, dword [0x10213418]
addss xmm0, dword [esp + 0x38]
addss xmm0, dword [0x101ea430]
movss dword [esp + 0x18], xmm0
push str.FORMED.GG
push dword [eax + 0x2c]
lea eax, [esp + 0x5b8]
push eax
call fcn.10034ea0
mov edx, dword [esi]
mov ecx, esi
movd xmm0, dword [eax + 4]
cvttss2si eax, dword [esp + 0x28]
cvtdq2ps xmm0, xmm0
push eax
cvttss2si eax, dword [esp + 0x1c]
addss xmm0, dword [esp + 0x58]
push eax
addss xmm0, dword [0x101ea440]
cvttss2si eax, xmm0
push eax
push dword [esp + 0x20]
mov eax, dword [edx + 0x4c]
call eax
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x400
je case.0x101167ef.0
mov edx, dword [eax + 0xe04]
lea ecx, [eax + 0xe04]
cmp edx, 3
ja case.0x101167ef.0
jmp dword [edx*4 + 0x10119eb4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10116807
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x101167ef.0
cmp byte [eax + 0x200], 0
je case.0x101167ef.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea474]
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0xdf0]
push eax
lea ecx, [esp + 0x72]
call fcn.1011a2f0
mov edi, eax
cmp byte [edi + 0xa], 0
je 0x101168e1
xor ecx, ecx
mov dword [esp + 0x38], ecx
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x38]
inc ecx
mov dword [esp + 0x38], ecx
cmp ecx, 0xb
jl 0x101168b1
push edi
lea ecx, [esp + 0x1250]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xc90]
call fcn.1001fd10
lea ecx, [esp + 0x124c]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xc8c]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x308]
push eax
call fcn.1003af20
lea ecx, [esp + 0xc8c]
mov esi, dword [eax]
lea eax, [esp + 0x30c]
push eax
call fcn.1003af40
lea ecx, [esp + 0x6f]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x1270]
call fcn.1003b510
lea ecx, [esp + 0x5b8]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x1264]
call fcn.10001f10
mov edi, 3
lea ecx, [esp + 0xc8c]
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test byte [eax + 0x32c0], 0x20
je 0x10116d40
imul ecx, dword [0x1021e73c], 0x58
cmp byte [ecx + eax + 0xa78], 0
je 0x10116d40
cmp dword [ecx + eax + 0xa70], 3
je 0x10116d40
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [esp + 0x54]
addss xmm0, dword [0x101ea3e0]
movaps xmm2, xmm0
movss dword [esp + 0x28], xmm0
call fcn.1003b5d0
lea eax, [esp + 0xd64]
push eax
lea ecx, [esp + 0x74]
call fcn.1011a320
mov edi, eax
cmp byte [edi + 7], 0
je 0x10116b9f
xor ecx, ecx
cmp dword [0x10214510], 2
mov dword [esp + 0x38], ecx
jl 0x10116b70
movaps xmm2, xmmword [0x101ea800]
movaps xmm4, xmmword [0x101eabd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [str.44444444444444447777777777777777]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ea840]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [edi], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
jmp 0x10116b9f
mov eax, 0x4d4873ed
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x38]
inc ecx
mov dword [esp + 0x38], ecx
cmp ecx, 8
jl 0x10116b70
push edi
lea ecx, [esp + 0x1280]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xca8]
call fcn.1001fd10
lea ecx, [esp + 0x127c]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xca4]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x310]
push eax
call fcn.1003af20
lea ecx, [esp + 0xca4]
mov esi, dword [eax]
lea eax, [esp + 0x314]
push eax
call fcn.1003af40
lea ecx, [esp + 0x71]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x12a0]
call fcn.1003b510
lea ecx, [esp + 0x5c0]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x1294]
call fcn.10001f10
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
push str.DESYNC
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
lea eax, [esp + 0x3c0]
push eax
call fcn.10034ea0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0xff
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movd xmm1, dword [esp + 0x3b8]
movss xmm2, dword [esp + 0x28]
cvtdq2ps xmm1, xmm1
mov ecx, dword [eax + 0x5c]
addss xmm1, dword [esp + 0x34]
call fcn.1003b5d0
mov ecx, 0x10213408
call fcn.10034e10
lea ecx, [eax + 0xd70]
call fcn.100c0f70
mov edi, 0x101e1ebc
test al, al
mov ecx, 0x10213410
mov eax, 0x101e1eb4
cmove edi, eax
call fcn.10034e10
push 0
sub esp, 8
mov ecx, esp
mov esi, dword [eax + 0x5c]
push edi
call fcn.1001fe60
mov ecx, esi
call fcn.10034f50
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xca4]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test byte [eax + 0x32c0], 0x80
je case.0x1011764f.0
mov edx, dword [eax + 0xc98]
lea ecx, [eax + 0xc98]
cmp edx, 3
ja case.0x10116d62.0
jmp dword [edx*4 + 0x10119ec4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10116d7a
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10116d62.0
mov eax, dword [0x10213410]
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
mov eax, dword [ecx]
mov eax, dword [eax + 0x64]
call eax
mov eax, dword [0x10213410]
mov ecx, dword [eax + 0x5c]
mov eax, dword [0x10213418]
mov edx, dword [ecx]
push dword [eax + 0x2c]
mov eax, dword [edx + 0x5c]
call eax
mov eax, dword [0x10213410]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mov edx, dword [ecx]
addss xmm0, dword [esp + 0x54]
addss xmm0, dword [0x101ea3e0]
cvttss2si eax, xmm0
push eax
push dword [esp + 0x18]
mov eax, dword [edx + 0x68]
call eax
cmp byte [0x101e2363], 0
movq xmm0, qword [0x101e2358]
mov eax, dword [0x101e2360]
movq qword [esp + 0x880], xmm0
mov dword [esp + 0x888], eax
je 0x10116f63
xor edx, edx
cmp dword [0x10214510], 2
mov dword [esp + 0x38], edx
jl 0x10116f30
movaps xmm2, xmmword [0x101ea800]
mov edx, 8
movaps xmm4, xmmword [0x101eabd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [str.44444444444444447777777777777777]
movaps xmm0, xmm1
mov dword [esp + 0x38], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ea840]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101e2358]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x880], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x884]
xorps xmm1, xmm0
movd dword [esp + 0x884], xmm1
nop dword [eax]
mov eax, 0x4d4873ed
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x38]
movsx eax, al
mov cl, dl
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x880], cl
inc edx
mov dword [esp + 0x38], edx
cmp edx, 0xc
jl 0x10116f30
lea ecx, [esp + 0xcbc]
call fcn.10028be0
lea ecx, [esp + 0x880]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10116f80
sub ecx, edx
lea eax, [esp + 0x880]
push ecx
push eax
lea ecx, [esp + 0xcc4]
call fcn.10026920
lea ecx, [esp + 0xcbc]
call fcn.10006490
lea ecx, [esp + 0xa64]
mov esi, eax
call fcn.10028be0
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10116fc0
sub ecx, edx
push ecx
push esi
lea ecx, [esp + 0xa6c]
call fcn.10026920
lea ecx, [esp + 0xcbc]
call fcn.10001f20
mov eax, dword [0x10213410]
lea ecx, [esp + 0xa64]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x318]
push eax
call fcn.1003af20
lea ecx, [esp + 0xa64]
mov esi, dword [eax]
lea eax, [esp + 0x31c]
push eax
call fcn.1003af40
lea ecx, [esp + 0x72]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x12b8]
call fcn.1003b510
lea ecx, [esp + 0x5c8]
push ecx
mov ecx, eax
call fcn.1001f840
mov edx, dword [edi]
mov ecx, edi
push 0
push dword [eax + 4]
push dword [eax]
mov eax, dword [edx + 0x70]
call eax
lea ecx, [esp + 0x12ac]
call fcn.10001ff0
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xa64]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
mov edx, dword [eax + 0xc74]
lea ecx, [eax + 0xc74]
cmp edx, 3
ja case.0x10117083.0
jmp dword [edx*4 + 0x10119ed4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x1011709b
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10117083.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0x163c]
push eax
lea ecx, [esp + 0x77]
call fcn.1011a340
mov edi, eax
mov dword [esp + 0x18], edi
cmp byte [edi + 0xf], 0
je 0x101172bf
xor ecx, ecx
cmp dword [0x10214510], 2
mov dword [esp + 0x38], ecx
jl 0x10117290
movaps xmm0, xmmword [str.44444444444444447777777777777777]
mov eax, 4
movaps xmm4, xmmword [0x101ea800]
xor edx, edx
movaps xmm3, xmmword [0x101eabd0]
sub eax, edi
movaps xmm5, xmmword [0x101ea890]
mov ecx, edi
movaps xmmword [esp + 0x40], xmm0
mov edi, eax
mov esi, dword [esp + 0x40]
mov dword [esp + 0x28], eax
nop word [eax + eax]
movd xmm0, edx
lea eax, [edi + ecx]
pshufd xmm2, xmm0, 0
lea ecx, [ecx + 8]
paddd xmm2, xmm4
add edx, 8
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, esi
paddb xmm1, xmm0
movd xmm0, dword [ecx - 8]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ecx - 8], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, esi
paddb xmm1, xmm0
movd xmm0, dword [ecx - 4]
xorps xmm1, xmm0
movd dword [ecx - 4], xmm1
cmp edx, 0x10
jl 0x10117190
mov edi, dword [esp + 0x18]
jmp 0x101172bf
mov eax, 0x4d4873ed
lea esi, [ecx + edi]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x38]
inc ecx
mov dword [esp + 0x38], ecx
cmp ecx, 0x10
jl 0x10117290
push edi
lea ecx, [esp + 0x12c8]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xcd8]
call fcn.1001fd10
lea ecx, [esp + 0x12c4]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xcd4]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x320]
push eax
call fcn.1003af20
lea ecx, [esp + 0xcd4]
mov esi, dword [eax]
lea eax, [esp + 0x324]
push eax
call fcn.1003af40
lea ecx, [esp + 0x74]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x12e8]
call fcn.1003b510
lea ecx, [esp + 0x5d0]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x12dc]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xcd4]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
mov edx, dword [eax + 0xce0]
lea ecx, [eax + 0xce0]
cmp edx, 3
ja case.0x1011738f.0
jmp dword [edx*4 + 0x10119ee4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x101173a7
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x1011738f.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0x161c]
push eax
lea ecx, [esp + 0x79]
call fcn.1011a360
mov edi, eax
cmp byte [edi + 0xc], 0
je 0x1011757f
xor ecx, ecx
cmp dword [0x10214510], 2
mov dword [esp + 0x38], ecx
jl 0x10117550
movaps xmm2, xmmword [0x101ea800]
mov ecx, 8
movaps xmm4, xmmword [0x101eabd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [str.44444444444444447777777777777777]
movaps xmm0, xmm1
mov dword [esp + 0x38], ecx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ea840]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [edi], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
nop word [eax + eax]
mov eax, 0x4d4873ed
lea esi, [ecx + edi]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x38]
inc ecx
mov dword [esp + 0x38], ecx
cmp ecx, 0xd
jl 0x10117550
push edi
lea ecx, [esp + 0x12f8]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xcf0]
call fcn.1001fd10
lea ecx, [esp + 0x12f4]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xcec]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x328]
push eax
call fcn.1003af20
lea ecx, [esp + 0xcec]
mov esi, dword [eax]
lea eax, [esp + 0x32c]
push eax
call fcn.1003af40
lea ecx, [esp + 0x76]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x1318]
call fcn.1003b510
lea ecx, [esp + 0x5d8]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x130c]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xcec]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
mov edx, dword [eax + 0xcbc]
lea ecx, [eax + 0xcbc]
cmp edx, 3
ja case.0x1011764f.0
jmp dword [edx*4 + 0x10119ef4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10117667
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x1011764f.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0x162c]
push eax
lea ecx, [esp + 0x7b]
call fcn.1011a390
mov edi, eax
cmp byte [edi + 0xd], 0
je 0x1011783f
xor ecx, ecx
cmp dword [0x10214510], 2
mov dword [esp + 0x38], ecx
jl 0x10117810
movaps xmm2, xmmword [0x101ea800]
mov ecx, 8
movaps xmm4, xmmword [0x101eabd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [str.44444444444444447777777777777777]
movaps xmm0, xmm1
mov dword [esp + 0x38], ecx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ea840]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [edi], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
nop word [eax + eax]
mov eax, 0x4d4873ed
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x38]
inc ecx
mov dword [esp + 0x38], ecx
cmp ecx, 0xe
jl 0x10117810
push edi
lea ecx, [esp + 0x1328]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xd08]
call fcn.1001fd10
lea ecx, [esp + 0x1324]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xd04]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x330]
push eax
call fcn.1003af20
lea ecx, [esp + 0xd04]
mov esi, dword [eax]
lea eax, [esp + 0x334]
push eax
call fcn.1003af40
lea ecx, [esp + 0x78]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x1348]
call fcn.1003b510
lea ecx, [esp + 0x5e0]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x133c]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xd04]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test byte [eax + 0x32c0], 0x10
je 0x10117b2e
mov ecx, dword [0x10214cf4]
cmp dword [ecx], 0
je 0x10117b2e
mov ecx, 0x10214cf4
call fcn.10034210
mov ecx, eax
call fcn.10034230
test al, al
je 0x10117b29
mov ecx, 0x10213408
call fcn.10034e10
push dword [0x1021e73c]
lea ecx, [eax + 0xa3c]
call fcn.10028790
cmp byte [eax + 0x21], 0
je 0x10117b29
mov ecx, 0x10213408
call fcn.10034e10
lea ecx, [eax + 0xd4c]
call fcn.100c0f70
test al, al
je 0x10117b29
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [esp + 0x54]
addss xmm0, dword [0x101ea3e0]
movaps xmm2, xmm0
movss dword [esp + 0x28], xmm0
call fcn.1003b5d0
mov ecx, 0x10213410
call fcn.10034e10
push 0
sub esp, 8
mov ecx, esp
mov esi, dword [eax + 0x5c]
push str.FAKE__FLICK
call fcn.1001fe60
mov ecx, esi
call fcn.10034f50
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
push str.FAKE__FLICK
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
lea eax, [esp + 0x3c8]
push eax
call fcn.10034ea0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0xff
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movd xmm1, dword [esp + 0x3c0]
movss xmm2, dword [esp + 0x28]
cvtdq2ps xmm1, xmm1
mov ecx, dword [eax + 0x5c]
addss xmm1, dword [esp + 0x34]
call fcn.1003b5d0
mov ecx, 0x10213408
call fcn.10034e10
lea ecx, [eax + 0xd28]
call fcn.100c0f70
test al, al
mov ecx, 0x101e1ebc
mov eax, 0x101e1eb4
cmovne eax, ecx
lea ecx, [esp + 0xd9c]
push eax
call fcn.1003aee0
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xd9c]
mov esi, dword [eax + 0x5c]
lea eax, [esp + 0x5e8]
push eax
call fcn.1001f840
push 0
mov ecx, esi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
inc edi
lea ecx, [esp + 0xd9c]
mov dword [esp + 0x24], edi
call fcn.10001f10
mov eax, dword [0x10213408]
test byte [eax + 0x32c0], 1
je case.0x10117b50.0
mov edx, dword [eax + 0xd94]
lea ecx, [eax + 0xd94]
cmp edx, 3
ja case.0x10117b50.0
jmp dword [edx*4 + 0x10119f04]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10117b68
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10117b50.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0xe5c]
push eax
lea ecx, [esp + 0x7d]
call fcn.1011a3c0
mov edi, eax
cmp byte [edi + 0xb], 0
je 0x10117d3f
xor ecx, ecx
cmp dword [0x10214510], 2
mov dword [esp + 0x38], ecx
jl 0x10117d10
movaps xmm2, xmmword [0x101ea800]
mov ecx, 8
movaps xmm4, xmmword [0x101eabd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [str.44444444444444447777777777777777]
movaps xmm0, xmm1
mov dword [esp + 0x38], ecx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ea840]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [edi], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
nop dword [eax + eax]
mov eax, 0x4d4873ed
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x38]
inc ecx
mov dword [esp + 0x38], ecx
cmp ecx, 0xc
jl 0x10117d10
push edi
lea ecx, [esp + 0x1358]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xd20]
call fcn.1001fd10
lea ecx, [esp + 0x1354]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xd1c]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x338]
push eax
call fcn.1003af20
lea ecx, [esp + 0xd1c]
mov esi, dword [eax]
lea eax, [esp + 0x33c]
push eax
call fcn.1003af40
lea ecx, [esp + 0x7a]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x1378]
call fcn.1003b510
lea ecx, [esp + 0x5f0]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x136c]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xd1c]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test byte [eax + 0x32c0], 2
je case.0x10117e1c.0
mov edx, dword [eax + 0xdb8]
lea ecx, [eax + 0xdb8]
cmp edx, 3
ja case.0x10117e1c.0
jmp dword [edx*4 + 0x10119f14]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10117e34
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10117e1c.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0xe50]
push eax
lea ecx, [esp + 0x7f]
call fcn.1011a3e0
mov edi, eax
cmp byte [edi + 0xb], 0
je 0x1011800f
xor ecx, ecx
cmp dword [0x10214510], 2
mov dword [esp + 0x38], ecx
jl 0x10117fe0
movaps xmm2, xmmword [0x101ea800]
mov ecx, 8
movaps xmm4, xmmword [0x101eabd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [str.44444444444444447777777777777777]
movaps xmm0, xmm1
mov dword [esp + 0x38], ecx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ea840]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [edi], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
nop word [eax + eax]
mov eax, 0x4d4873ed
lea esi, [ecx + edi]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x38]
inc ecx
mov dword [esp + 0x38], ecx
cmp ecx, 0xc
jl 0x10117fe0
push edi
lea ecx, [esp + 0x1388]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xaf8]
call fcn.1001fd10
lea ecx, [esp + 0x1384]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xaf4]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x340]
push eax
call fcn.1003af20
lea ecx, [esp + 0xaf4]
mov esi, dword [eax]
lea eax, [esp + 0x344]
push eax
call fcn.1003af40
lea ecx, [esp + 0x7c]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x13a8]
call fcn.1003b510
lea ecx, [esp + 0x5f8]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x139c]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xaf4]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x100
je case.0x101180ef.0
mov edx, dword [eax + 0xd04]
lea ecx, [eax + 0xd04]
cmp edx, 3
ja case.0x101180ef.0
jmp dword [edx*4 + 0x10119f24]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10118107
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x101180ef.0
mov ecx, 0x10213408
call fcn.10034e10
push dword [0x1021e73c]
lea ecx, [eax + 0xa3c]
call fcn.10028790
cmp byte [eax + 0x28], 0
je 0x101182b6
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0xdc0]
push eax
lea ecx, [esp + 0x81]
call fcn.1011a400
mov edi, eax
cmp byte [edi + 9], 0
je 0x10118200
xor ecx, ecx
mov dword [esp + 0x38], ecx
nop
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x38]
inc ecx
mov dword [esp + 0x38], ecx
cmp ecx, 0xa
jl 0x101181d0
push edi
lea ecx, [esp + 0x13b8]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xb10]
call fcn.1001fd10
lea ecx, [esp + 0x13b4]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xb0c]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x348]
push eax
call fcn.1003af20
lea ecx, [esp + 0xb0c]
mov esi, dword [eax]
lea eax, [esp + 0x34c]
push eax
call fcn.1003af40
lea ecx, [esp + 0x7e]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x13d8]
call fcn.1003b510
lea ecx, [esp + 0x3d0]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x13cc]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xb0c]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x200
je case.0x101182e0.0
mov edx, dword [eax + 0x9e0]
lea ecx, [eax + 0x9e0]
cmp edx, 3
ja case.0x101182e0.0
jmp dword [edx*4 + 0x10119f34]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x101182f8
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x101182e0.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0xe44]
push eax
lea ecx, [esp + 0x83]
call fcn.1011a420
mov edi, eax
cmp byte [edi + 0xb], 0
je 0x101184cf
xor ecx, ecx
cmp dword [0x10214510], 2
mov dword [esp + 0x38], ecx
jl 0x101184a0
movaps xmm2, xmmword [0x101ea800]
mov ecx, 8
movaps xmm4, xmmword [0x101eabd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [str.44444444444444447777777777777777]
movaps xmm0, xmm1
mov dword [esp + 0x38], ecx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ea840]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [edi], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
nop
mov eax, 0x4d4873ed
lea esi, [ecx + edi]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x38]
inc ecx
mov dword [esp + 0x38], ecx
cmp ecx, 0xc
jl 0x101184a0
push edi
lea ecx, [esp + 0x13e8]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xb28]
call fcn.1001fd10
lea ecx, [esp + 0x13e4]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xb24]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x350]
push eax
call fcn.1003af20
lea ecx, [esp + 0xb24]
mov esi, dword [eax]
lea eax, [esp + 0x354]
push eax
call fcn.1003af40
lea ecx, [esp + 0x80]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x1408]
call fcn.1003b510
lea ecx, [esp + 0x3d8]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x13fc]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xb24]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test byte [eax + 0x32c0], 8
je case.0x101185af.0
mov edx, dword [eax + 0xc50]
lea ecx, [eax + 0xc50]
cmp edx, 3
ja case.0x101185af.0
jmp dword [edx*4 + 0x10119f44]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x101185c7
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x101185af.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0x160c]
push eax
lea ecx, [esp + 0x85]
call fcn.1011a440
mov edi, eax
cmp byte [edi + 0xc], 0
je 0x1011879f
xor ecx, ecx
cmp dword [0x10214510], 2
mov dword [esp + 0x38], ecx
jl 0x10118770
movaps xmm2, xmmword [0x101ea800]
mov ecx, 8
movaps xmm4, xmmword [0x101eabd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [str.44444444444444447777777777777777]
movaps xmm0, xmm1
mov dword [esp + 0x38], ecx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ea840]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [edi], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
nop dword [eax]
mov eax, 0x4d4873ed
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x38]
inc ecx
mov dword [esp + 0x38], ecx
cmp ecx, 0xd
jl 0x10118770
push edi
lea ecx, [esp + 0x1418]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xb40]
call fcn.1001fd10
lea ecx, [esp + 0x1414]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xb3c]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x358]
push eax
call fcn.1003af20
lea ecx, [esp + 0xb3c]
mov esi, dword [eax]
lea eax, [esp + 0x35c]
push eax
call fcn.1003af40
lea ecx, [esp + 0x82]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x1438]
call fcn.1003b510
lea ecx, [esp + 0x3e0]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x142c]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xb3c]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test byte [eax + 0x32c0], 4
je case.0x1011887f.0
mov edx, dword [eax + 0x9bc]
lea ecx, [eax + 0x9bc]
cmp edx, 3
ja case.0x1011887f.0
jmp dword [edx*4 + 0x10119f54]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10118897
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x1011887f.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, dword [eax + 0x5c]
mov eax, dword [0x10213418]
mov edx, dword [ecx]
push dword [eax + 0x2c]
mov eax, dword [edx + 0x5c]
call eax
mov eax, dword [0x10213410]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mov edx, dword [ecx]
addss xmm0, dword [esp + 0x54]
addss xmm0, dword [0x101ea3e0]
cvttss2si eax, xmm0
push eax
push dword [esp + 0x18]
mov eax, dword [edx + 0x68]
call eax
mov eax, dword [0x101e237c]
movq xmm0, qword [0x101e2374]
mov dword [esp + 0x894], eax
mov ax, word [0x101e2380]
movq qword [esp + 0x88c], xmm0
mov word [esp + 0x898], ax
test ah, ah
je 0x10118a93
xor edx, edx
cmp dword [0x10214510], 2
mov dword [esp + 0x14], edx
jl 0x10118a60
movaps xmm2, xmmword [0x101ea800]
mov edx, 8
movaps xmm4, xmmword [0x101eabd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [str.44444444444444447777777777777777]
movaps xmm0, xmm1
mov dword [esp + 0x14], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ea840]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101e2374]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x88c], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x890]
xorps xmm1, xmm0
movd dword [esp + 0x890], xmm1
nop dword [eax + eax]
mov eax, 0x4d4873ed
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x88c], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0xe
jl 0x10118a60
lea ecx, [esp + 0xb54]
call fcn.10028be0
lea ecx, [esp + 0x88c]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10118ab0
sub ecx, edx
lea eax, [esp + 0x88c]
push ecx
push eax
lea ecx, [esp + 0xb5c]
call fcn.10026920
lea ecx, [esp + 0xb54]
call fcn.10006490
lea ecx, [esp + 0xaac]
mov esi, eax
call fcn.10028be0
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10118af0
sub ecx, edx
push ecx
push esi
lea ecx, [esp + 0xab4]
call fcn.10026920
lea ecx, [esp + 0xb54]
call fcn.10001f20
mov eax, dword [0x10213410]
lea ecx, [esp + 0xaac]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x360]
push eax
call fcn.1003af20
lea ecx, [esp + 0xaac]
mov esi, dword [eax]
lea eax, [esp + 0x364]
push eax
call fcn.1003af40
lea ecx, [esp + 0x83]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x1450]
call fcn.1003b510
lea ecx, [esp + 0x3e8]
push ecx
mov ecx, eax
call fcn.1001f840
mov edx, dword [edi]
mov ecx, edi
push 0
push dword [eax + 4]
push dword [eax]
mov eax, dword [edx + 0x70]
call eax
lea ecx, [esp + 0x1444]
call fcn.10001ff0
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xaac]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x800
je case.0x10118bd3.0
cmp byte [eax + 0x3485], 0
je case.0x10118bd3.0
mov edx, dword [eax + 0x3488]
lea ecx, [eax + 0x3488]
cmp edx, 3
ja case.0x10118bd3.0
jmp dword [edx*4 + 0x10119f64]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10118beb
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10118bd3.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0xe20]
push eax
lea ecx, [esp + 0x88]
call fcn.1011a470
mov edi, eax
cmp byte [edi + 0xa], 0
je 0x10118cc0
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop dword [eax]
mov eax, 0x3521cfb3
lea esi, [ecx + edi]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xb
jl 0x10118c90
push edi
lea ecx, [esp + 0x1460]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xb70]
call fcn.1001fd10
lea ecx, [esp + 0x145c]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xb6c]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x368]
push eax
call fcn.1003af20
lea ecx, [esp + 0xb6c]
mov esi, dword [eax]
lea eax, [esp + 0x36c]
push eax
call fcn.1003af40
lea ecx, [esp + 0x85]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x1480]
call fcn.1003b510
lea ecx, [esp + 0x3f0]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x1474]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xb6c]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x1000
je case.0x10118db0.0
cmp byte [eax + 0x3448], 0
je case.0x10118db0.0
mov edx, dword [eax + 0x344c]
lea ecx, [eax + 0x344c]
cmp edx, 3
ja case.0x10118db0.0
jmp dword [edx*4 + 0x10119f74]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10118dc8
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10118db0.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0xe14]
push eax
lea ecx, [esp + 0x8a]
call fcn.1011a4a0
mov edi, eax
cmp byte [edi + 0xa], 0
je 0x10118ea0
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop word [eax + eax]
mov eax, 0x3521cfb3
lea esi, [ecx + edi]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xb
jl 0x10118e70
push edi
lea ecx, [esp + 0x1490]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xb88]
call fcn.1001fd10
lea ecx, [esp + 0x148c]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xb84]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x370]
push eax
call fcn.1003af20
lea ecx, [esp + 0xb84]
mov esi, dword [eax]
lea eax, [esp + 0x374]
push eax
call fcn.1003af40
lea ecx, [esp + 0x87]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x14b0]
call fcn.1003b510
lea ecx, [esp + 0x3f8]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x14a4]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xb84]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x2000
je case.0x10118f90.0
cmp byte [eax + 0x33b8], 0
je case.0x10118f90.0
mov edx, dword [eax + 0x33cc]
lea ecx, [eax + 0x33cc]
cmp edx, 3
ja case.0x10118f90.0
jmp dword [edx*4 + 0x10119f84]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10118fa8
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10118f90.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0xdcc]
push eax
lea ecx, [esp + 0x8c]
call fcn.1011a4d0
mov edi, eax
cmp byte [edi + 9], 0
je 0x10119080
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop word [eax + eax]
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xa
jl 0x10119050
push edi
lea ecx, [esp + 0x14c0]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xba0]
call fcn.1001fd10
lea ecx, [esp + 0x14bc]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xb9c]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x378]
push eax
call fcn.1003af20
lea ecx, [esp + 0xb9c]
mov esi, dword [eax]
lea eax, [esp + 0x37c]
push eax
call fcn.1003af40
lea ecx, [esp + 0x89]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x14e0]
call fcn.1003b510
lea ecx, [esp + 0x400]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x14d4]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xb9c]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x4000
je case.0x10119170.0
cmp byte [eax + 0x333c], 0
je case.0x10119170.0
mov edx, dword [eax + 0x3340]
lea ecx, [eax + 0x3340]
cmp edx, 3
ja case.0x10119170.0
jmp dword [edx*4 + 0x10119f94]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10119188
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10119170.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0xe2c]
push eax
lea ecx, [esp + 0x8e]
call fcn.1011a4f0
mov edi, eax
cmp byte [edi + 0xa], 0
je 0x10119260
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop word [eax + eax]
mov eax, 0x3521cfb3
lea esi, [ecx + edi]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xb
jl 0x10119230
push edi
lea ecx, [esp + 0x14f0]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xbb8]
call fcn.1001fd10
lea ecx, [esp + 0x14ec]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xbb4]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x380]
push eax
call fcn.1003af20
lea ecx, [esp + 0xbb4]
mov esi, dword [eax]
lea eax, [esp + 0x384]
push eax
call fcn.1003af40
lea ecx, [esp + 0x8b]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x1510]
call fcn.1003b510
lea ecx, [esp + 0x408]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x1504]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xbb4]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x10000
je case.0x10119350.0
cmp byte [eax + 0x33f0], 0
je case.0x10119350.0
mov edx, dword [eax + 0x33f8]
lea ecx, [eax + 0x33f8]
cmp edx, 3
ja case.0x10119350.0
jmp dword [edx*4 + 0x10119fa4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10119368
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10119350.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0xe80]
push eax
lea ecx, [esp + 0x90]
call fcn.1011a520
mov edi, eax
cmp byte [edi + 0xb], 0
je 0x1011953f
xor ecx, ecx
cmp dword [0x10214510], 2
mov dword [esp + 0x14], ecx
jl 0x10119510
movaps xmm2, xmmword [0x101ea800]
mov ecx, 8
movaps xmm4, xmmword [0x101eabd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [str.44444444444444447777777777777777]
movaps xmm0, xmm1
mov dword [esp + 0x14], ecx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ea840]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [edi], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ea890]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ea930]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
nop
mov eax, 0x4d4873ed
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xc
jl 0x10119510
push edi
lea ecx, [esp + 0x1520]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xbd0]
call fcn.1001fd10
lea ecx, [esp + 0x151c]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xbcc]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x388]
push eax
call fcn.1003af20
lea ecx, [esp + 0xbcc]
mov esi, dword [eax]
lea eax, [esp + 0x38c]
push eax
call fcn.1003af40
lea ecx, [esp + 0x8d]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x1540]
call fcn.1003b510
lea ecx, [esp + 0x410]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x1534]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xbcc]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x20000
je case.0x1011962f.0
cmp byte [eax + 0x3390], 0
je case.0x1011962f.0
mov edx, dword [eax + 0x3394]
lea ecx, [eax + 0x3394]
cmp edx, 3
ja case.0x1011962f.0
jmp dword [edx*4 + 0x10119fb4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10119647
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x1011962f.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0xdd8]
push eax
lea ecx, [esp + 0x92]
call fcn.1011a540
mov edi, eax
cmp byte [edi + 9], 0
je 0x10119720
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop dword [eax]
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xa
jl 0x101196f0
push edi
lea ecx, [esp + 0x1550]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xc30]
call fcn.1001fd10
lea ecx, [esp + 0x154c]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xc2c]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x390]
push eax
call fcn.1003af20
lea ecx, [esp + 0xc2c]
mov esi, dword [eax]
lea eax, [esp + 0x394]
push eax
call fcn.1003af40
lea ecx, [esp + 0x8f]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x1570]
call fcn.1003b510
lea ecx, [esp + 0x418]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x1564]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xc2c]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x8000
je case.0x10119810.0
cmp byte [eax + 0x3364], 0
je case.0x10119810.0
mov edx, dword [eax + 0x336c]
lea ecx, [eax + 0x336c]
cmp edx, 3
ja case.0x10119810.0
jmp dword [edx*4 + 0x10119fc4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10119828
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x10119810.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0xe38]
push eax
lea ecx, [esp + 0x94]
call fcn.1011a560
mov edi, eax
cmp byte [edi + 0xa], 0
je 0x10119900
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop word [eax + eax]
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xb
jl 0x101198d0
push edi
lea ecx, [esp + 0x1580]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xbe8]
call fcn.1001fd10
lea ecx, [esp + 0x157c]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xbe4]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x398]
push eax
call fcn.1003af20
lea ecx, [esp + 0xbe4]
mov esi, dword [eax]
lea eax, [esp + 0x39c]
push eax
call fcn.1003af40
lea ecx, [esp + 0x91]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x15a0]
call fcn.1003b510
lea ecx, [esp + 0x420]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x1594]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xbe4]
inc edi
mov dword [esp + 0x24], edi
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x40000
je case.0x101199f0.0
cmp byte [eax + 0x3315], 0
je case.0x101199f0.0
mov edx, dword [eax + 0x3318]
lea ecx, [eax + 0x3318]
cmp edx, 3
ja case.0x101199f0.0
jmp dword [edx*4 + 0x10119fd4]
call fcn.100c0ca0
mov cl, al
mov eax, dword [0x10213408]
jmp 0x10119a08
mov cl, byte [ecx + 0x20]
test cl, cl
je case.0x101199f0.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0xdfc]
push eax
lea ecx, [esp + 0x96]
call fcn.1011a590
mov edi, eax
cmp byte [edi + 0xa], 0
je 0x10119ae0
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop word [eax + eax]
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xb
jl 0x10119ab0
push edi
lea ecx, [esp + 0x15b0]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xc00]
call fcn.1001fd10
lea ecx, [esp + 0x15ac]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xbfc]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x3a0]
push eax
call fcn.1003af20
lea ecx, [esp + 0xbfc]
mov esi, dword [eax]
lea eax, [esp + 0x3a4]
push eax
call fcn.1003af40
lea ecx, [esp + 0x93]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x15d0]
call fcn.1003b510
lea ecx, [esp + 0x428]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x15c4]
call fcn.10001f10
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0xbfc]
inc edi
call fcn.10001f20
mov eax, dword [0x10213408]
test dword [eax + 0x32c0], 0x80000
je case.0x10119bcb.0
cmp byte [eax + 0x32ed], 0
je case.0x10119bcb.0
mov ecx, dword [eax + 0x32f0]
add eax, 0x32f0
cmp ecx, 3
ja case.0x10119bcb.0
jmp dword [ecx*4 + 0x10119fe4]
mov ecx, eax
call fcn.100c0ca0
jmp 0x10119bde
mov al, byte [eax + 0x20]
test al, al
je case.0x10119bcb.0
mov ecx, 0x10213410
call fcn.10034e10
push 0xff
push 0x9f8
push 0xff
mov ecx, dword [eax + 0x5c]
push 0xff
call fcn.10034ef0
mov ecx, 0x10213410
call fcn.10034e10
mov ecx, 0x10213418
mov esi, dword [eax + 0x5c]
call fcn.10034e10
mov ecx, esi
mov eax, dword [eax + 0x2c]
push eax
call fcn.10034ee0
mov ecx, 0x10213410
call fcn.10034e10
movss xmm1, dword [esp + 0x34]
mov ecx, dword [eax + 0x5c]
lea eax, [edi + edi*8]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, dword [esp + 0x54]
addss xmm2, dword [0x101ea3e0]
call fcn.1003b5d0
lea eax, [esp + 0xe08]
push eax
lea ecx, [esp + 0x98]
call fcn.1011a5c0
mov edi, eax
cmp byte [edi + 0xa], 0
je 0x10119cb0
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, 0x3521cfb3
lea esi, [edi + ecx]
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x34
xor byte [esi], cl
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xb
jl 0x10119c80
push edi
lea ecx, [esp + 0x15e0]
call fcn.1001fd10
mov ecx, eax
call fcn.10006490
push eax
lea ecx, [esp + 0xc18]
call fcn.1001fd10
lea ecx, [esp + 0x15dc]
call fcn.10001f20
mov ecx, 0x10213410
call fcn.10034e10
lea ecx, [esp + 0xc14]
mov edi, dword [eax + 0x5c]
lea eax, [esp + 0x3a8]
push eax
call fcn.1003af20
lea ecx, [esp + 0xc14]
mov esi, dword [eax]
lea eax, [esp + 0x3ac]
push eax
call fcn.1003af40
lea ecx, [esp + 0x95]
push ecx
push esi
push dword [eax]
lea ecx, [esp + 0x1600]
call fcn.1003b510
lea ecx, [esp + 0x470]
push ecx
mov ecx, eax
call fcn.1001f840
push 0
mov ecx, edi
push dword [eax + 4]
push dword [eax]
call fcn.10034f50
lea ecx, [esp + 0x15f4]
call fcn.10001f10
lea ecx, [esp + 0xc14]
call fcn.10001f20
mov ecx, dword [esp + 0x164c]
pop edi
pop esi
xor ecx, esp
call fcn.1018daa9
mov esp, ebp
pop ebp
ret