Function at 0x1012d978
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x54
mov eax, dword [0x102070c0]
xor eax, esp
mov dword [esp + 0x50], eax
mov eax, dword fs:[0x2c]
mov ecx, dword [0x10225d4c]
push ebx
push esi
push edi
mov esi, dword [eax + ecx*4]
mov eax, dword [0x10353a00]
cmp eax, dword [esi + 4]
jle 0x10126ccf
push 0x10353a00
call fcn.1019a827
add esp, 4
cmp dword [0x10353a00], 0xffffffff
jne 0x10126ccf
mov eax, dword [0x10224ca8]
push str.cl_clanid
mov ecx, dword [eax + 8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x3c]
call eax
push 0x10353a00
mov dword [0x10353824], eax
call fcn.1019a7d6
add esp, 4
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x33d8], 0
jne 0x10126dbe
cmp byte [0x103500b8], 0
je 0x10126dbe
mov eax, dword [0x10224ca8]
mov ecx, dword [0x10353824]
mov edi, dword [eax + 0x10]
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
call eax
mov edx, eax
lea ecx, [esp + 0x44]
call fcn.10003de0
push eax
mov edx, 0x101f01e0
lea ecx, [esp + 0x30]
call fcn.100247f0
mov edx, eax
cmp dword [edx + 0x14], 0xf
jbe 0x10126d27
mov edx, dword [edx]
mov eax, dword [edi]
mov ecx, edi
push 0
push edx
mov eax, dword [eax + 0x1c8]
call eax
mov ecx, dword [esp + 0x40]
cmp ecx, 0xf
jbe 0x10126d6c
mov edx, dword [esp + 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10126d62
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10127e87
push ecx
push edx
call fcn.1019a58d
add esp, 8
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0xf
mov byte [esp + 0x2c], 0
cmp ecx, 0xf
jbe 0x10126db7
mov edx, dword [esp + 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10126dad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10127e87
push ecx
push edx
call fcn.1019a58d
add esp, 8
mov byte [0x103500b8], 0
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x33d8], 0
je 0x10127e75
mov eax, dword [0x103536a4]
cmp eax, dword [esi + 4]
jle 0x10126e0a
push 0x103536a4
call fcn.1019a827
add esp, 4
cmp dword [0x103536a4], 0xffffffff
jne 0x10126e0a
push 0x101c70c0
call fcn.1019a573
push 0x103536a4
call fcn.1019a7d6
add esp, 8
mov eax, dword [0x10224c9c]
mov ecx, dword [eax + 0x10]
movss xmm0, dword [ecx + 0x10]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [0x101f88d0]
cvttsd2si ecx, xmm0
mov dword [esp + 0x10], ecx
mov ecx, dword [0x10224ca0]
cmp byte [ecx + 0x33d8], 0
je 0x10127e75
cvttsd2si ecx, xmm0
mov byte [0x103500b8], 1
cmp ecx, dword [0x1035010c]
je case.0x10126e6b.16
and ecx, 0x80000001
jns 0x10126e61
dec ecx
or ecx, 0xfffffffe
inc ecx
dec ecx
cmp ecx, 0x11
ja case.0x10126e6b.16
jmp dword [ecx*4 + 0x10127e8c]
mov esi, dword [eax + 0x28]
mov ax, word [0x101f0768]
movq xmm0, qword [str.BRGAW_WVQ_]
movq qword [esp + 0x20], xmm0
mov word [esp + 0x28], ax
test ah, ah
je 0x10126ebd
xor ebx, ebx
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 0xa
jl 0x10126e94
mov ax, word [0x101f0768]
movq xmm0, qword [str.BRGAW_WVQ_]
movq qword [esp + 0x14], xmm0
mov word [esp + 0x1c], ax
test ah, ah
je 0x10126f09
xor ebx, ebx
nop dword [eax]
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 0xa
jl 0x10126ee0
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call esi
jmp case.0x10126e6b.16
mov esi, dword [eax + 0x28]
xor ebx, ebx
mov ax, word [0x101f058c]
mov word [esp + 0x20], ax
mov al, byte [0x101f058e]
mov byte [esp + 0x22], al
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 3
jl 0x10126f31
mov ax, word [0x101f058c]
xor ebx, ebx
mov word [esp + 0x14], ax
mov al, byte [0x101f058e]
mov byte [esp + 0x16], al
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 3
jl 0x10126f70
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call esi
jmp case.0x10126e6b.16
cmp byte [0x101f0753], 0
mov edi, dword [eax + 0x28]
mov eax, dword [str.BRG5a__B]
mov esi, dword [0x10225d40]
mov dword [esp + 0x20], eax
je 0x10127078
xor ebx, ebx
cmp esi, 2
jl 0x10127050
movaps xmm3, xmmword [0x101f8d60]
movaps xmm2, xmm3
movaps xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x101f91b0]
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x101f91b0]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x101f8f00]
movd xmm0, eax
xorps xmm1, xmm0
movd dword [esp + 0x20], xmm1
jmp 0x10127078
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 4
jl 0x10127050
cmp byte [0x101f0753], 0
mov eax, dword [str.BRG5a__B]
mov dword [esp + 0x14], eax
je 0x10127148
xor ebx, ebx
cmp esi, 2
jl 0x10127120
movaps xmm3, xmmword [0x101f8d60]
lea edx, [esp + 0x20]
movaps xmm2, xmm3
lea ecx, [esp + 0x14]
punpckldq xmm2, xmm3
movaps xmm0, xmm3
pmuldq xmm2, xmmword [0x101f91b0]
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x101f91b0]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x101f8f00]
movd xmm0, eax
xorps xmm1, xmm0
movd dword [esp + 0x14], xmm1
call edi
jmp case.0x10126e6b.16
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 4
jl 0x10127120
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call edi
jmp case.0x10126e6b.16
mov esi, dword [eax + 0x28]
xor ebx, ebx
mov eax, dword [0x101f0ac8]
mov dword [esp + 0x20], eax
mov al, byte [0x101f0acc]
mov byte [esp + 0x24], al
nop
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 5
jl 0x10127170
mov eax, dword [0x101f0ac8]
xor ebx, ebx
mov dword [esp + 0x14], eax
mov al, byte [0x101f0acc]
mov byte [esp + 0x18], al
nop dword [eax]
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 5
jl 0x101271b0
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call esi
jmp case.0x10126e6b.16
mov esi, dword [eax + 0x28]
mov eax, dword [0x101f050c]
mov dword [esp + 0x20], eax
mov ax, word [0x101f0510]
mov word [esp + 0x24], ax
test ah, ah
je 0x1012722e
xor ebx, ebx
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 6
jl 0x10127205
mov eax, dword [0x101f050c]
mov dword [esp + 0x14], eax
mov ax, word [0x101f0510]
mov word [esp + 0x18], ax
test ah, ah
je 0x10127279
xor ebx, ebx
nop dword [eax + eax]
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 6
jl 0x10127250
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call esi
jmp case.0x10126e6b.16
mov esi, dword [eax + 0x28]
xor ebx, ebx
mov eax, dword [str.BRGAW_8]
mov dword [esp + 0x20], eax
mov ax, word [0x101f0e44]
mov word [esp + 0x24], ax
mov al, byte [0x101f0e46]
mov byte [esp + 0x26], al
nop word [eax + eax]
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 7
jl 0x101272b0
mov eax, dword [str.BRGAW_8]
xor ebx, ebx
mov dword [esp + 0x14], eax
mov ax, word [0x101f0e44]
mov word [esp + 0x18], ax
mov al, byte [0x101f0e46]
mov byte [esp + 0x1a], al
nop dword [eax + eax]
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 7
jl 0x10127300
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call esi
jmp case.0x10126e6b.16
cmp byte [0x101f0743], 0
mov edi, dword [eax + 0x28]
mov eax, dword [str.BRGAW_W9SG_TU_K:]
mov ecx, dword [0x101f0740]
mov esi, dword [0x10225d40]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], ecx
je 0x1012747d
xor ebx, ebx
cmp esi, 2
jl 0x10127455
movaps xmm2, xmmword [0x101f8d60]
movaps xmm3, xmmword [0x101f91b0]
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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x101f8f00]
movd xmm0, eax
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x20], 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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x101f8f00]
movd xmm0, ecx
xorps xmm1, xmm0
movd dword [esp + 0x24], xmm1
jmp 0x1012747d
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 8
jl 0x10127455
cmp byte [0x101f0743], 0
mov ecx, dword [str.BRGAW_W9SG_TU_K:]
mov edx, dword [0x101f0740]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], edx
je 0x101275cc
xor ebx, ebx
cmp esi, 2
jl 0x101275a4
movaps xmm2, xmmword [0x101f8d60]
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, ecx
xorps xmm1, xmm0
lea ecx, [esp + 0x14]
movd dword [esp + 0x14], xmm1
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
movaps xmm1, 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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, edx
xorps xmm1, xmm0
lea edx, [esp + 0x20]
movd dword [esp + 0x18], xmm1
call edi
jmp case.0x10126e6b.16
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 8
jl 0x101275a4
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call edi
jmp case.0x10126e6b.16
mov esi, dword [eax + 0x28]
xor ebx, ebx
movq xmm0, qword [str.BRGAW_WV:]
mov al, byte [0x101f06bc]
movq qword [esp + 0x20], xmm0
mov byte [esp + 0x28], al
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 9
jl 0x101275f7
movq xmm0, qword [str.BRGAW_WV:]
xor ebx, ebx
mov al, byte [0x101f06bc]
movq qword [esp + 0x14], xmm0
mov byte [esp + 0x1c], al
nop dword [eax]
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 9
jl 0x10127640
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call esi
jmp case.0x10126e6b.16
mov esi, dword [eax + 0x28]
mov ax, word [0x101f0768]
movq xmm0, qword [str.BRGAW_WVQ_]
movq qword [esp + 0x20], xmm0
mov word [esp + 0x28], ax
test ah, ah
je 0x101276c9
xor ebx, ebx
nop word [eax + eax]
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 0xa
jl 0x101276a0
mov ax, word [0x101f0768]
movq xmm0, qword [str.BRGAW_WVQ_]
movq qword [esp + 0x14], xmm0
mov word [esp + 0x1c], ax
test ah, ah
je 0x10127719
xor ebx, ebx
nop dword [eax + eax]
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 0xa
jl 0x101276f0
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call esi
jmp case.0x10126e6b.16
mov esi, dword [eax + 0x28]
xor ebx, ebx
movq xmm0, qword [str.BRGAW_WV:]
mov al, byte [0x101f06bc]
movq qword [esp + 0x20], xmm0
mov byte [esp + 0x28], al
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 9
jl 0x10127744
movq xmm0, qword [str.BRGAW_WV:]
xor ebx, ebx
mov al, byte [0x101f06bc]
movq qword [esp + 0x14], xmm0
mov byte [esp + 0x1c], al
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 9
jl 0x10127786
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call esi
jmp case.0x10126e6b.16
cmp byte [0x101f0743], 0
mov edi, dword [eax + 0x28]
mov ecx, dword [str.BRGAW_W9SG_TU_K:]
mov edx, dword [0x101f0740]
mov esi, dword [0x10225d40]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], edx
je 0x10127909
xor ebx, ebx
cmp esi, 2
jl 0x101278e1
movaps xmm2, xmmword [0x101f8d60]
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, ecx
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x20], 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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, edx
xorps xmm1, xmm0
movd dword [esp + 0x24], xmm1
jmp 0x10127909
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 8
jl 0x101278e1
cmp byte [0x101f0743], 0
mov ecx, dword [str.BRGAW_W9SG_TU_K:]
mov edx, dword [0x101f0740]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], edx
je 0x10127a58
xor ebx, ebx
cmp esi, 2
jl 0x10127a30
movaps xmm2, xmmword [0x101f8d60]
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, ecx
xorps xmm1, xmm0
lea ecx, [esp + 0x14]
movd dword [esp + 0x14], xmm1
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
movaps xmm1, 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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, edx
xorps xmm1, xmm0
lea edx, [esp + 0x20]
movd dword [esp + 0x18], xmm1
call edi
jmp case.0x10126e6b.16
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 8
jl 0x10127a30
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call edi
jmp case.0x10126e6b.16
mov esi, dword [eax + 0x28]
mov eax, dword [0x101f050c]
mov dword [esp + 0x20], eax
mov ax, word [0x101f0510]
mov word [esp + 0x24], ax
test ah, ah
je 0x10127aad
xor ebx, ebx
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 6
jl 0x10127a84
mov eax, dword [0x101f050c]
mov dword [esp + 0x14], eax
mov ax, word [0x101f0510]
mov word [esp + 0x18], ax
test ah, ah
je 0x10127af0
xor ebx, ebx
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 6
jl 0x10127ac7
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call esi
jmp case.0x10126e6b.16
mov esi, dword [eax + 0x28]
xor ebx, ebx
mov eax, dword [0x101f0ac8]
mov dword [esp + 0x20], eax
mov al, byte [0x101f0acc]
mov byte [esp + 0x24], al
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 5
jl 0x10127b16
mov eax, dword [0x101f0ac8]
xor ebx, ebx
mov dword [esp + 0x14], eax
mov al, byte [0x101f0acc]
mov byte [esp + 0x18], al
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 5
jl 0x10127b53
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call esi
jmp case.0x10126e6b.16
cmp byte [0x101f0753], 0
mov edi, dword [eax + 0x28]
mov eax, dword [str.BRG5a__B]
mov esi, dword [0x10225d40]
mov dword [esp + 0x20], eax
je 0x10127c58
xor ebx, ebx
cmp esi, 2
jl 0x10127c30
movaps xmm3, xmmword [0x101f8d60]
movaps xmm2, xmm3
movaps xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x101f91b0]
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x101f91b0]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x101f8f00]
movd xmm0, eax
xorps xmm1, xmm0
movd dword [esp + 0x20], xmm1
jmp 0x10127c58
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 4
jl 0x10127c30
cmp byte [0x101f0753], 0
mov eax, dword [str.BRG5a__B]
mov dword [esp + 0x14], eax
je 0x10127d28
xor ebx, ebx
cmp esi, 2
jl 0x10127d00
movaps xmm3, xmmword [0x101f8d60]
lea edx, [esp + 0x20]
movaps xmm2, xmm3
lea ecx, [esp + 0x14]
punpckldq xmm2, xmm3
movaps xmm0, xmm3
pmuldq xmm2, xmmword [0x101f91b0]
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x101f91b0]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x101f8f00]
movd xmm0, eax
xorps xmm1, xmm0
movd dword [esp + 0x14], xmm1
call edi
jmp case.0x10126e6b.16
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 4
jl 0x10127d00
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call edi
jmp case.0x10126e6b.16
mov esi, dword [eax + 0x28]
xor ebx, ebx
mov ax, word [0x101f058c]
mov word [esp + 0x20], ax
mov al, byte [0x101f058e]
mov byte [esp + 0x22], al
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 3
jl 0x10127d50
mov ax, word [0x101f058c]
xor ebx, ebx
mov word [esp + 0x14], ax
mov al, byte [0x101f058e]
mov byte [esp + 0x16], al
nop
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 3
jl 0x10127d90
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call esi
jmp case.0x10126e6b.16
mov esi, dword [eax + 0x28]
mov ax, word [0x101f0e4c]
mov word [esp + 0x20], ax
test ah, ah
je 0x10127e09
xor ebx, ebx
nop dword [eax]
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x20], cl
inc ebx
cmp ebx, 2
jl 0x10127de0
mov ax, word [0x101f0e4c]
mov word [esp + 0x14], ax
test ah, ah
je 0x10127e49
xor ebx, ebx
nop word [eax + eax]
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x14], cl
inc ebx
cmp ebx, 2
jl 0x10127e20
lea edx, [esp + 0x20]
lea ecx, [esp + 0x14]
call esi
jmp case.0x10126e6b.16
mov eax, dword [eax + 0x28]
lea edx, [esp + 0x14]
lea ecx, [esp + 0x20]
mov byte [esp + 0x14], 0
mov byte [esp + 0x20], 0
call eax
mov eax, dword [esp + 0x10]
mov dword [0x1035010c], eax
mov ecx, dword [esp + 0x5c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1019a294
mov esp, ebp
pop ebp
ret
call fcn.1019f6c6
jb 0x10127efc
adc dl, byte [eax]
sbb byte [edi + 0x12], ch
adc byte [eax + 1460671087], ch
jno 0x10127ead
adc al, ch
jno 0x10127eb1
adc byte [eax + 0x38101272], cl
jae 0x10127eb9
adc bl, bl
jne 0x10127ebd
adc byte [eax + 0x76], bh
adc dl, byte [eax]
sub byte [edi + 0x12], dh
jbe 0x10127ec1
adc byte [eax], ch
ja 0x10127ec5
adc byte [esi + 0x67101277], bh
jp 0x10127ecd
adc bh, bh
jp 0x10127ed1
adc byte [ebx + 0x3710127b], cl
jnp 0x10127ed5
adc byte [edi], dh
jge 0x10127ed9
adc byte [esi + edi*2 + 0x12], ch
adc al, cl
jge 0x10127ee1
adc byte [ebp + 0x7e], dl
adc dl, byte [eax]
int3
jle 0x10127ee5
adc ah, cl
int3
int3
mov ebp, esp
and esp, 0xfffffff0
mov eax, 0x2218
call fcn.1019b0f0
mov eax, dword [0x102070c0]
xor eax, esp
mov dword [esp + 0x2214], eax
invalid
add byte [eax], al
mov ecx, dword [0x10224ca0]
push esi
push edi
cmp byte [ecx + 0x3668], 0
je 0x10132be3
movss xmm0, dword [ecx + 0x366c]
xorps xmm1, xmm1
mov edx, dword [0x103501f8]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x10127f3e
movss xmm0, dword [ecx + 0x3670]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x10127f90
or dword [edx + 0x1c74], 1
mov eax, dword [ecx + 0x366c]
mov ecx, dword [ecx + 0x3670]
mov dword [edx + 0x1c84], eax
mov dword [edx + 0x1c88], ecx
movss dword [edx + 0x1c8c], xmm1
movss dword [edx + 0x1c90], xmm1
mov dword [edx + 0x1c78], 1
mov eax, dword [0x10224ca0]
mov dword [eax + 0x366c], 0
mov dword [eax + 0x3670], 0
mov eax, dword [0x10224cac]
mov ecx, 0xfb
mov esi, 0xc02fb
cmp byte [eax + 0x5c], 0
cmovne esi, ecx
or dword [edx + 0x1c74], 2
mov dword [edx + 0x1c94], 0x43160000
mov dword [edx + 0x1c98], 0
mov dword [edx + 0x1c7c], 2
mov ecx, dword [0x10224cac]
mov ecx, dword [ecx + 0x40]
call fcn.1015ba40
movq xmm0, qword [str.yVMW_YJ:]
xor edx, edx
mov al, byte [0x101f0aa0]
movq qword [esp + 0xf04], xmm0
mov byte [esp + 0xf0c], al
mov dword [esp + 0x30], edx
nop dword [eax]
mov eax, 0x2f684bdb
mul edx
mov eax, dword [esp + 0x30]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x30]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0xf04], cl
inc edx
mov dword [esp + 0x30], edx
cmp edx, 9
jl 0x10128000
lea ecx, [esp + 0x10ac]
call fcn.10029c00
lea ecx, [esp + 0xf04]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10128050
sub ecx, edx
lea eax, [esp + 0xf04]
push ecx
push eax
lea ecx, [esp + 0x10b4]
call fcn.10027940
push 0
lea ecx, [esp + 0x10b0]
call fcn.10006650
movss xmm0, dword [0x101f8bd4]
xor edx, edx
mov ecx, eax
call fcn.10156860
lea ecx, [esp + 0x10ac]
movss dword [esp + 0x38], xmm1
movss dword [esp + 0x34], xmm0
call fcn.100020d0
mov eax, dword [0x103501f8]
movss xmm0, dword [esp + 0x38]
mulss xmm0, dword [0x101f88b8]
movss xmm1, dword [0x101f8aa4]
or dword [eax + 0x1c74], 0x10
movss dword [esp + 0x3c], xmm0
subss xmm0, dword [0x101f88b8]
mov dword [eax + 0x1cb0], 0x43160000
movss dword [esp + 0x40], xmm1
xorps xmm1, xmm1
movss dword [eax + 0x1cb4], xmm1
mov dword [eax + 0x1cb8], 0x43160000
movss dword [eax + 0x1cbc], xmm0
mov dword [eax + 0x1cc0], 0
mov dword [eax + 0x1cc4], 0
call fcn.10153390
mov eax, dword [0x101f0bac]
movq xmm0, qword [0x101f0ba4]
mov dword [esp + 0xefc], eax
mov ax, word [0x101f0bb0]
mov word [esp + 0xf00], ax
test ah, ah
mov eax, dword [0x10225d40]
movq qword [esp + 0xef4], xmm0
je 0x10128294
xor edx, edx
mov dword [esp + 0x30], edx
cmp eax, 2
jl 0x10128261
movaps xmm2, xmmword [0x101f8d60]
mov edx, 8
movaps xmm3, xmmword [0x101f91b0]
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
mov dword [esp + 0x30], edx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
movd xmm0, dword [0x101f0ba4]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x101f8f00]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0xef4], 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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
movd xmm0, dword [esp + 0xef8]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x101f8f00]
xorps xmm1, xmm0
movd dword [esp + 0xef8], xmm1
mov eax, 0x4bda12f7
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x30]
movsx eax, al
mov cl, dl
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0xef4], cl
inc edx
mov dword [esp + 0x30], edx
cmp edx, 0xe
jl 0x10128261
lea ecx, [esp + 0x107c]
call fcn.10029c00
lea ecx, [esp + 0xef4]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101282b0
sub ecx, edx
lea eax, [esp + 0xef4]
push ecx
push eax
lea ecx, [esp + 0x1084]
call fcn.10027940
push esi
lea ecx, [esp + 0x1080]
call fcn.10006650
xor edx, edx
mov ecx, eax
call fcn.101592e0
lea ecx, [esp + 0x107c]
call fcn.100020d0
call fcn.10153390
mov ecx, dword [0x103501f8]
sub esp, 0x18
mov edx, esp
mov edi, eax
mov dword [esp + 0x2c], edi
mov ecx, dword [ecx + 0x1bec]
movss xmm0, dword [ecx + 0x10]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [ecx + 0x14]
mov ecx, dword [0x10224ca0]
movss dword [esp + 0x38], xmm0
movss xmm0, dword [ecx + 0x38d4]
divss xmm0, dword [0x101f8a74]
mov dword [esp + 0x19c], 0
mov dword [esp + 0x1a0], 0
mov dword [esp + 0x1a4], 0
movss dword [esp + 0x1a8], xmm0
movups xmm0, xmmword [ecx + 0x38b8]
mov eax, dword [ecx + 0x38c8]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], eax
mov al, byte [ecx + 0x38cc]
mov byte [edx + 0x14], al
call fcn.100bda30
push 0xff
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0x3bc]
mov esi, eax
call fcn.100d1830
mov edx, dword [0x10224ca0]
sub esp, 0x18
mov ecx, esp
movups xmm0, xmmword [edx + 0x38b8]
mov eax, dword [edx + 0x38c8]
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], eax
mov al, byte [edx + 0x38cc]
xorps xmm0, xmm0
mov byte [ecx + 0x14], al
call fcn.100bdbb0
mov ecx, dword [0x10224ca0]
sub esp, 0x18
mov edx, esp
mov dword [esp + 0x30], eax
movss xmm1, dword [ecx + 0x38c4]
movups xmm0, xmmword [ecx + 0x38b8]
mov eax, dword [ecx + 0x38c8]
mulss xmm1, dword [0x101f878c]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], eax
mov al, byte [ecx + 0x38cc]
movaps xmm0, xmm1
mov byte [edx + 0x14], al
call fcn.100bdbb0
mov dword [esp + 0x24], eax
sub esp, 0x18
mov eax, dword [0x10224ca0]
mov edx, esp
movups xmm0, xmmword [eax + 0x38b8]
mov ecx, dword [eax + 0x38c8]
mov al, byte [eax + 0x38cc]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], ecx
mov byte [edx + 0x14], al
call fcn.100bda30
mov ecx, dword [0x10224ca0]
movss xmm0, dword [0x101f8968]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
cmp dword [ecx + 0x38d0], 0
movss dword [esp + 0x1c], xmm0
je 0x10128478
xorps xmm0, xmm0
movss dword [esp + 0x1c], xmm0
lea ecx, [esp + 0x184]
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
movss xmm2, dword [esp + 0x20]
movaps xmm0, xmm1
addss xmm0, dword [0x101f8aa4]
push 0
push ecx
mov ecx, edi
movss dword [esp + 0xf4], xmm1
movss dword [esp + 0xf8], xmm2
movss dword [esp + 0x30], xmm0
movss dword [esp + 0xec], xmm0
movaps xmm0, xmm2
addss xmm0, dword [esp + 0x44]
movss dword [esp + 0x38], xmm0
subss xmm0, dword [0x101f88b8]
movss dword [esp + 0xf0], xmm0
movss xmm0, dword [esp + 0x24]
movss dword [esp], xmm0
push eax
lea eax, [esp + 0xf0]
push eax
lea eax, [esp + 0xfc]
push eax
call fcn.101658f0
mov eax, dword [0x10224ca0]
mov eax, dword [eax + 0x38d0]
test eax, eax
jne 0x1012859b
movss xmm0, dword [esp + 0x10]
addss xmm0, dword [0x101f8aa8]
movss xmm1, dword [0x101f87f8]
push ecx
mov dword [esp], 0x3fc00000
push eax
movss dword [esp + 0xfc], xmm0
lea eax, [esp + 0xfc]
movss xmm0, dword [esp + 0x38]
subss xmm0, xmm1
push ecx
mov dword [esp], 0x40a00000
mov ecx, edi
push esi
push eax
movss dword [esp + 0x10c], xmm0
lea eax, [esp + 0x110]
movss xmm0, dword [esp + 0x24]
subss xmm0, xmm1
push eax
movss dword [esp + 0x114], xmm0
movss xmm0, dword [esp + 0x38]
subss xmm0, xmm1
movss dword [esp + 0x118], xmm0
call fcn.10165800
jmp 0x10128740
cmp eax, 1
jne 0x101285fb
movss xmm0, dword [esp + 0x20]
lea eax, [esp + 0x104]
subss xmm0, dword [0x101f87f8]
movss xmm1, dword [esp + 0x28]
push ecx
mov dword [esp], 0x40000000
movss dword [esp + 0x108], xmm1
movss xmm1, dword [esp + 0x14]
push esi
push eax
movss dword [esp + 0x114], xmm0
lea eax, [esp + 0x118]
movss dword [esp + 0x118], xmm1
movss dword [esp + 0x11c], xmm0
jmp 0x10128738
cmp eax, 2
jne 0x1012865e
movss xmm0, dword [esp + 0x30]
lea ecx, [esp + 0x1a4]
subss xmm0, dword [0x101f8918]
movss xmm1, dword [esp + 0x28]
movaps xmm2, xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1009d8a0
movss xmm2, dword [esp + 0x3c]
lea ecx, [esp + 0x1ac]
movss xmm1, dword [esp + 0x10]
call fcn.1009d8a0
push ecx
mov dword [esp], 0x40000000
lea eax, [esp + 0x1a8]
push esi
push eax
lea eax, [esp + 0x1b8]
jmp 0x10128738
mov ecx, 0x10224ca0
call fcn.10035f00
cmp dword [eax + 0x38d0], 3
jne 0x101286cc
movss xmm0, dword [esp + 0x20]
lea ecx, [esp + 0x1b4]
subss xmm0, dword [0x101f87f8]
movss xmm1, dword [esp + 0x28]
movaps xmm2, xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1009d8a0
movss xmm2, dword [esp + 0x3c]
lea ecx, [esp + 0x1bc]
movss xmm1, dword [esp + 0x10]
call fcn.1009d8a0
push ecx
mov dword [esp], 0x40000000
lea eax, [esp + 0x1b8]
push esi
push eax
lea eax, [esp + 0x1c8]
jmp 0x10128738
mov ecx, 0x10224ca0
call fcn.10035f00
cmp dword [eax + 0x38d0], 4
jne 0x10128740
movss xmm0, dword [esp + 0x20]
lea ecx, [esp + 0x1c4]
subss xmm0, dword [0x101f87f8]
movss xmm1, dword [esp + 0x28]
movaps xmm2, xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1009d8a0
movss xmm2, dword [esp + 0x3c]
lea ecx, [esp + 0x194]
movss xmm1, dword [esp + 0x10]
call fcn.1009d8a0
push ecx
mov dword [esp], 0x40000000
lea eax, [esp + 0x1c8]
push esi
push eax
lea eax, [esp + 0x1a0]
push eax
mov ecx, edi
call fcn.101656d0
mov al, byte [0x101f0aa0]
xor edx, edx
movq xmm0, qword [str.yVMW_YJ:]
mov byte [esp + 0xeb4], al
movq qword [esp + 0xeac], xmm0
mov dword [esp + 0x1c], edx
mov eax, 0x2f684bdb
mul edx
mov eax, dword [esp + 0x1c]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x1c]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0xeac], cl
inc edx
mov dword [esp + 0x1c], edx
cmp edx, 9
jl 0x10128763
lea ecx, [esp + 0x1094]
call fcn.10029c00
lea ecx, [esp + 0xeac]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101287b0
sub ecx, edx
lea eax, [esp + 0xeac]
push ecx
push eax
lea ecx, [esp + 0x109c]
call fcn.10027940
lea ecx, [esp + 0x1094]
call fcn.10006650
lea ecx, [esp + 0x3ac]
mov esi, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
xorps xmm2, xmm2
movss xmm0, dword [esp + 0x34]
mulss xmm0, dword [0x101f878c]
push 0
addss xmm1, dword [0x101f8a58]
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
push esi
subss xmm1, xmm0
movss xmm0, dword [esp + 0x48]
mulss xmm0, dword [0x101f878c]
push eax
lea eax, [esp + 0x128]
push eax
addss xmm0, dword [esp + 0x38]
push 0
movss dword [esp + 0x130], xmm1
subss xmm0, dword [0x101f87f8]
movss dword [esp + 0x134], xmm0
call fcn.10165e70
lea ecx, [esp + 0x1094]
call fcn.100020d0
mov eax, dword [0x10224ca0]
mov eax, dword [eax + 0x38d0]
cmp eax, 3
jne 0x101288d3
movss xmm0, dword [esp + 0x28]
movss xmm1, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
push eax
movss dword [esp + 0x120], xmm0
movaps xmm0, xmm1
addss xmm0, dword [esp + 0x3c]
push eax
mov eax, dword [esp + 0x2c]
push eax
push eax
lea eax, [esp + 0x12c]
movss dword [esp + 0x130], xmm0
movss xmm0, dword [esp + 0x20]
push eax
movss dword [esp + 0x138], xmm0
lea eax, [esp + 0x138]
movss dword [esp + 0x13c], xmm1
jmp 0x1012899b
cmp eax, 4
jne 0x101289a3
movss xmm1, dword [esp + 0x10]
mov ecx, edi
mov esi, dword [esp + 0x18]
movaps xmm0, xmm1
addss xmm0, dword [0x101f88b8]
mov eax, dword [esp + 8]
push esi
push esi
push eax
push eax
movss dword [esp + 0x13c], xmm0
lea eax, [esp + 0x13c]
movss xmm0, dword [esp + 0x40]
push eax
movss dword [esp + 0x144], xmm0
lea eax, [esp + 0x148]
movss xmm0, dword [esp + 0x34]
push eax
movss dword [esp + 0x14c], xmm1
movss dword [esp + 0x150], xmm0
call fcn.10165a50
movss xmm0, dword [esp + 0x28]
mov eax, dword [esp + 8]
movss dword [esp + 0x13c], xmm0
movss xmm0, dword [esp + 0x30]
movss dword [esp + 0x140], xmm0
movss xmm0, dword [esp + 0x10]
addss xmm0, dword [0x101f8aa0]
push esi
push esi
push eax
push eax
lea eax, [esp + 0x14c]
movss dword [esp + 0x154], xmm0
movss xmm0, dword [esp + 0x30]
push eax
movss dword [esp + 0x15c], xmm0
lea eax, [esp + 0x158]
push eax
mov ecx, edi
call fcn.10165a50
movq xmm0, qword [str.iG_RQ__d:]
xor edx, edx
mov al, byte [0x101f051c]
movq qword [esp + 0xed0], xmm0
mov byte [esp + 0xed8], al
mov dword [esp + 0x1c], edx
nop word [eax + eax]
mov eax, 0x2f684bdb
mul edx
mov eax, dword [esp + 0x1c]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x1c]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0xed0], cl
inc edx
mov dword [esp + 0x1c], edx
cmp edx, 9
jl 0x101289d0
lea ecx, [esp + 0x1064]
call fcn.10029c00
lea ecx, [esp + 0xed0]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10128a20
sub ecx, edx
lea eax, [esp + 0xed0]
push ecx
push eax
lea ecx, [esp + 0x106c]
call fcn.10027940
push 0
lea ecx, [esp + 0x1068]
call fcn.10006650
movss xmm0, dword [0x101f8bd4]
xor edx, edx
mov ecx, eax
call fcn.10156860
lea ecx, [esp + 0x1064]
movss dword [esp + 0x40], xmm0
call fcn.100020d0
mov eax, dword [str.i__YRj8]
xor edx, edx
mov dword [esp + 0xedc], eax
mov ax, word [0x101f04b0]
mov word [esp + 0xee0], ax
mov al, byte [0x101f04b2]
mov byte [esp + 0xee2], al
mov dword [esp + 0x1c], edx
nop dword [eax + eax]
mov eax, 0x2f684bdb
mul edx
mov eax, dword [esp + 0x1c]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x1c]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0xedc], cl
inc edx
mov dword [esp + 0x1c], edx
cmp edx, 7
jl 0x10128aa0
lea ecx, [esp + 0x104c]
call fcn.10029c00
lea ecx, [esp + 0xedc]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10128af0
sub ecx, edx
lea eax, [esp + 0xedc]
push ecx
push eax
lea ecx, [esp + 0x1054]
call fcn.10027940
push 0
lea ecx, [esp + 0x1050]
call fcn.10006650
movss xmm0, dword [0x101f8bd4]
xor edx, edx
mov ecx, eax
call fcn.10156860
lea ecx, [esp + 0x104c]
movss dword [esp + 0x28], xmm0
call fcn.100020d0
mov eax, dword [str.iZh6]
xor edx, edx
mov dword [esp + 0xec8], eax
mov al, byte [0x101f05fc]
mov byte [esp + 0xecc], al
mov dword [esp + 0x1c], edx
nop dword [eax]
mov eax, 0x2f684bdb
mul edx
mov eax, dword [esp + 0x1c]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x1c]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0xec8], cl
inc edx
mov dword [esp + 0x1c], edx
cmp edx, 5
jl 0x10128b60
lea ecx, [esp + 0x1034]
call fcn.10029c00
lea ecx, [esp + 0xec8]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10128bb0
sub ecx, edx
lea eax, [esp + 0xec8]
push ecx
push eax
lea ecx, [esp + 0x103c]
call fcn.10027940
push 0
lea ecx, [esp + 0x1038]
call fcn.10006650
movss xmm0, dword [0x101f8bd4]
xor edx, edx
mov ecx, eax
call fcn.10156860
lea ecx, [esp + 0x1034]
movss dword [esp + 0x34], xmm0
call fcn.100020d0
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x288], 0
je case.0x10128c25.0
mov ecx, dword [eax + 0xeb0]
add eax, 0xeb0
cmp ecx, 3
ja case.0x10128c25.0
jmp dword [ecx*4 + 0x10132bf8]
mov ecx, eax
call fcn.100cac70
jmp 0x10128c38
mov al, byte [eax + 0x20]
test al, al
je case.0x10128c25.0
mov ecx, dword [0x10224ca0]
lea ecx, [ecx + 0xeb0]
call fcn.100cafa0
test al, al
jne 0x10128f41
lea eax, [esp + 0x1294]
push eax
lea ecx, [esp + 0xc7]
call fcn.10132da0
mov edi, eax
cmp byte [edi + 8], 0
je 0x10128cb0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x10128c80
push edi
lea ecx, [esp + 0x15f8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x680]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm0, dword [esp + 0x20]
lea ecx, [esp + 0x3fc]
addss xmm0, dword [0x101f89e4]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x15f4]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xeb0]
call fcn.100cac70
test al, al
je 0x10128e39
lea eax, [esp + 0x1224]
push eax
lea ecx, [esp + 0xc8]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x10128db0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x10128d80
push edi
lea ecx, [esp + 0x1610]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x690]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x404]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x160c]
jmp 0x10128f34
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xeb0]
call fcn.100cab10
test al, al
je 0x10128f39
lea eax, [esp + 0x12ac]
push eax
lea ecx, [esp + 0xc9]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x10128eb0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x10128e80
push edi
lea ecx, [esp + 0x1628]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x6a0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x40c]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1624]
call fcn.100020d0
mov dword [esp + 0xc], 3
mov ecx, 0x10224ca0
call fcn.10035f00
cmp byte [eax + 0x291], 0
je case.0x10128c25.0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xed4]
call fcn.100caf40
test al, al
je case.0x10128c25.0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xed4]
call fcn.100cafa0
test al, al
je 0x10129159
lea eax, [esp + 0x1510]
push eax
lea ecx, [esp + 0xca]
call fcn.10132e10
mov edi, eax
cmp byte [edi + 0xa], 0
je 0x10128fe4
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xb
jl 0x10128fb4
push edi
lea ecx, [esp + 0x1640]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x6b0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x414]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x163c]
call fcn.100020d0
lea eax, [esp + 0xfbc]
push eax
lea ecx, [esp + 0xcb]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x101290d0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x101290a0
push edi
lea ecx, [esp + 0x1658]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x6c0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x41c]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1654]
jmp 0x10129434
lea eax, [esp + 0x1504]
push eax
lea ecx, [esp + 0xcc]
call fcn.10132e10
mov edi, eax
cmp byte [edi + 0xa], 0
je 0x101291b0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xb
jl 0x10129180
push edi
lea ecx, [esp + 0x1670]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x6d0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x424]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x166c]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xed4]
call fcn.100cac70
test al, al
je 0x1012933d
lea eax, [esp + 0x122c]
push eax
lea ecx, [esp + 0xcd]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x101292b4
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x10129284
push edi
lea ecx, [esp + 0x1688]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x6e0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x42c]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1684]
jmp 0x10129434
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xed4]
call fcn.100cab10
test al, al
je 0x10129439
lea eax, [esp + 0x12a0]
push eax
lea ecx, [esp + 0xce]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x101293b0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x10129380
push edi
lea ecx, [esp + 0x16a0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x6f0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x434]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x169c]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
add eax, 0xa2c
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x10129452.2604
jmp dword [ecx*4 + 0x10132c08]
mov ecx, eax
call fcn.100cac70
jmp 0x10129465
mov al, byte [eax + 0x20]
test al, al
je case.0x10129452.2604
mov eax, dword [0x10224ca0]
cmp byte [eax], 0
je case.0x10129452.2604
lea ecx, [eax + 0xa2c]
call fcn.100cafa0
test al, al
jne 0x1012986d
lea eax, [esp + 0x1254]
push eax
lea ecx, [esp + 0xcf]
call fcn.10132e60
mov edi, eax
cmp byte [edi + 7], 0
je 0x101295df
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 8], ecx
jl 0x101295b0
movaps xmm2, xmmword [0x101f8d60]
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
jmp 0x101295df
mov eax, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 8
jl 0x101295b0
push edi
lea ecx, [esp + 0x16b8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x700]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x44c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x16b4]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xa2c]
call fcn.100cac70
test al, al
je 0x1012976c
lea eax, [esp + 0x1234]
push eax
lea ecx, [esp + 0xd0]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x101296e3
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x101296b3
push edi
lea ecx, [esp + 0x16d0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x710]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x454]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x16cc]
jmp 0x10129864
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xa2c]
call fcn.100cab10
test al, al
je 0x10129869
lea eax, [esp + 0x1384]
push eax
lea ecx, [esp + 0xd1]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x101297e0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x101297b0
push edi
lea ecx, [esp + 0x16e8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x720]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x45c]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x16e4]
call fcn.100020d0
inc dword [esp + 0xc]
mov ecx, dword [0x10224ca0]
lea ecx, [ecx + 0xd10]
call fcn.100cafa0
test al, al
je 0x10129b4f
lea eax, [esp + 0x1588]
push eax
lea ecx, [esp + 0xd2]
call fcn.10132e80
mov edi, eax
cmp byte [edi + 0xb], 0
je 0x101299df
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 0x1c], ecx
jl 0x101299b0
movaps xmm2, xmmword [0x101f8d60]
mov ecx, 8
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
mov dword [esp + 0x1c], ecx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
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, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 0x1c]
inc ecx
mov dword [esp + 0x1c], ecx
cmp ecx, 0xc
jl 0x101299b0
push edi
lea ecx, [esp + 0x1700]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x730]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x464]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x16fc]
call fcn.100020d0
lea eax, [esp + 0xfcc]
push eax
lea ecx, [esp + 0xd3]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x10129ac6
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x10129a96
push edi
lea ecx, [esp + 0x1718]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x740]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x46c]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1714]
jmp 0x10129f39
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xd10]
call fcn.100caf70
test al, al
je case.0x10129452.2604
lea eax, [esp + 0x157c]
push eax
lea ecx, [esp + 0x4f]
call fcn.10132e80
mov edi, eax
cmp byte [edi + 0xb], 0
je 0x10129cbf
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 0x1c], ecx
jl 0x10129c90
movaps xmm2, xmmword [0x101f8d60]
mov ecx, 8
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
mov dword [esp + 0x1c], ecx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
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, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 0x1c]
inc ecx
mov dword [esp + 0x1c], ecx
cmp ecx, 0xc
jl 0x10129c90
push edi
lea ecx, [esp + 0x1730]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x750]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x474]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x172c]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xd10]
call fcn.100cac70
test al, al
je 0x10129e49
lea eax, [esp + 0x123c]
push eax
lea ecx, [esp + 0x50]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x10129dc0
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x10129d90
push edi
lea ecx, [esp + 0x1748]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x760]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x47c]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1744]
jmp 0x10129f39
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xd10]
call fcn.100cab10
test al, al
je 0x10129f3e
lea eax, [esp + 0x1360]
push eax
lea ecx, [esp + 0x51]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x10129eb5
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x10129e85
push edi
lea ecx, [esp + 0x1760]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x770]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x484]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x175c]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
add eax, 0xe54
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x10129f57.3668
jmp dword [ecx*4 + 0x10132c18]
mov ecx, eax
call fcn.100cac70
jmp 0x10129f6a
mov al, byte [eax + 0x20]
test al, al
je case.0x10129f57.3668
mov ecx, dword [0x10224ca0]
lea ecx, [ecx + 0xe54]
call fcn.100cafa0
test al, al
je 0x1012a15b
lea eax, [esp + 0x1244]
push eax
lea ecx, [esp + 0x52]
call fcn.10132ea0
mov edi, eax
cmp byte [edi + 6], 0
je 0x10129fe0
xor ecx, ecx
mov dword [esp + 8], ecx
nop word [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x10129fb0
push edi
lea ecx, [esp + 0x1778]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x780]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x48c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1774]
call fcn.100020d0
lea eax, [esp + 0xfd4]
push eax
lea ecx, [esp + 0x53]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012a0c4
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012a094
push edi
lea ecx, [esp + 0x1790]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x790]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x494]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x178c]
call fcn.100020d0
mov edi, dword [esp + 0xc]
inc edi
mov dword [esp + 0xc], edi
jmp 0x1012a44c
lea eax, [esp + 0x124c]
push eax
lea ecx, [esp + 0x54]
call fcn.10132ea0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012a1b0
xor ecx, ecx
mov dword [esp + 8], ecx
nop word [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012a180
push edi
lea ecx, [esp + 0x17a8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x7a0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x49c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x17a4]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xe54]
call fcn.100cac70
test al, al
je 0x1012a348
lea eax, [esp + 0x115c]
push eax
lea ecx, [esp + 0x55]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012a2b1
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012a281
push edi
lea ecx, [esp + 0x17c0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x7b0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x4a4]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x17bc]
call fcn.100020d0
mov edi, dword [esp + 0xc]
inc edi
mov dword [esp + 0xc], edi
jmp 0x1012a44c
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xe54]
call fcn.100cab10
test al, al
je 0x1012a43d
lea eax, [esp + 0x1288]
push eax
lea ecx, [esp + 0x56]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012a3b4
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012a384
push edi
lea ecx, [esp + 0x17d8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x7c0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x4ac]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x17d4]
call fcn.100020d0
mov edi, dword [esp + 0xc]
inc edi
mov dword [esp + 0xc], edi
jmp 0x1012a44c
mov edi, dword [esp + 0xc]
mov eax, dword [0x10224ca0]
add eax, 0xe78
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x1012a461.3704
jmp dword [ecx*4 + 0x10132c28]
mov ecx, eax
call fcn.100cac70
jmp 0x1012a474
mov al, byte [eax + 0x20]
test al, al
je case.0x1012a461.3704
mov ecx, dword [0x10224ca0]
lea ecx, [ecx + 0xe78]
call fcn.100cafa0
test al, al
je 0x1012a6e0
lea eax, [esp + 0x14f8]
push eax
lea ecx, [esp + 0x57]
call fcn.10132ed0
mov esi, eax
mov dword [esp + 0x18], esi
cmp byte [esi + 0xa], 0
je 0x1012a4f8
xor ecx, ecx
mov edi, eax
mov dword [esp + 8], ecx
nop word [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xb
jl 0x1012a4c0
mov edi, dword [esp + 0xc]
mov esi, dword [esp + 0x18]
lea ecx, [esp + 0x101c]
call fcn.10029c00
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1012a510
sub ecx, edx
push ecx
push esi
lea ecx, [esp + 0x1024]
call fcn.10027940
lea ecx, [esp + 0x101c]
call fcn.10006650
movaps xmm0, xmmword [0x101f9140]
lea ecx, [esp + 0x3bc]
mov esi, eax
movups xmmword [esp + 0x3bc], xmm0
call fcn.100d18b0
movss xmm0, dword [esp + 0x10]
xorps xmm2, xmm2
addss xmm0, dword [0x101f8960]
push 0
push ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp], 0
movss dword [esp + 0x154], xmm0
movd xmm0, edi
cvtdq2ps xmm0, xmm0
push 0
push esi
push eax
lea eax, [esp + 0x160]
push eax
mulss xmm0, dword [0x101f89a4]
push 0
addss xmm0, dword [esp + 0x3c]
movss dword [esp + 0x40], xmm0
movss dword [esp + 0x16c], xmm0
call fcn.10165e70
lea ecx, [esp + 0x101c]
call fcn.100020d0
mov eax, dword [str.iZh6]
xor edx, edx
mov dword [esp + 0xeb8], eax
mov al, byte [0x101f05fc]
mov byte [esp + 0xebc], al
mov dword [esp + 0x1c], edx
nop dword [eax]
mov eax, 0x2f684bdb
mul edx
mov eax, dword [esp + 0x1c]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x1c]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0xeb8], cl
inc edx
mov dword [esp + 0x1c], edx
cmp edx, 5
jl 0x1012a5e0
lea ecx, [esp + 0x10cc]
call fcn.10029c00
lea ecx, [esp + 0xeb8]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1012a630
sub ecx, edx
lea eax, [esp + 0xeb8]
push ecx
push eax
lea ecx, [esp + 0x10d4]
call fcn.10027940
lea ecx, [esp + 0x10cc]
call fcn.10006650
movaps xmm0, xmmword [0x101f9140]
lea ecx, [esp + 0x3cc]
mov esi, eax
movups xmmword [esp + 0x3cc], xmm0
call fcn.100d18b0
movss xmm0, dword [esp + 0x10]
xorps xmm2, xmm2
subss xmm0, dword [esp + 0x34]
push 0
push ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp], 0
subss xmm0, dword [0x101f8960]
push 0
push esi
push eax
lea eax, [esp + 0x168]
addss xmm0, dword [0x101f8aa4]
push eax
push 0
movss dword [esp + 0x170], xmm0
movss xmm0, dword [esp + 0x40]
movss dword [esp + 0x174], xmm0
call fcn.10165e70
lea ecx, [esp + 0x10cc]
call fcn.100020d0
jmp 0x1012a9f2
mov ax, word [0x101f095c]
xor edx, edx
movq xmm0, qword [str.zZPP]
mov word [esp + 0xf30], ax
mov al, byte [0x101f095e]
movq qword [esp + 0xf28], xmm0
mov byte [esp + 0xf32], al
mov dword [esp + 0x1c], edx
mov eax, 0x2f684bdb
mul edx
mov eax, dword [esp + 0x1c]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x1c]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0xf28], cl
inc edx
mov dword [esp + 0x1c], edx
cmp edx, 0xb
jl 0x1012a711
lea ecx, [esp + 0x10e4]
call fcn.10029c00
lea ecx, [esp + 0xf28]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1012a760
sub ecx, edx
lea eax, [esp + 0xf28]
push ecx
push eax
lea ecx, [esp + 0x10ec]
call fcn.10027940
lea ecx, [esp + 0x10e4]
call fcn.10006650
movaps xmm0, xmmword [0x101f9140]
lea ecx, [esp + 0x3dc]
mov esi, eax
movups xmmword [esp + 0x3dc], xmm0
call fcn.100d18b0
movss xmm0, dword [esp + 0x10]
addss xmm0, dword [0x101f8960]
mov ecx, dword [esp + 0x14]
push 0
push esi
push eax
movss dword [esp + 0x168], xmm0
lea eax, [esp + 0x168]
movd xmm0, edi
cvtdq2ps xmm0, xmm0
push eax
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x30]
movss dword [esp + 0x28], xmm0
movss dword [esp + 0x170], xmm0
call fcn.10165f60
lea ecx, [esp + 0x10e4]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xe78]
call fcn.100cac70
test al, al
je 0x1012a8f9
lea eax, [esp + 0x1164]
push eax
lea ecx, [esp + 0x58]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012a870
xor ecx, ecx
mov dword [esp + 8], ecx
nop
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012a840
push edi
lea ecx, [esp + 0x17f0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x7d0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x4b4]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x17ec]
jmp 0x1012a9e9
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xe78]
call fcn.100cab10
test al, al
je 0x1012a9f2
lea eax, [esp + 0x127c]
push eax
lea ecx, [esp + 0x59]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012a965
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012a935
push edi
lea ecx, [esp + 0x1808]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xc40]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x4bc]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1804]
call fcn.100020d0
mov edi, dword [esp + 0xc]
inc edi
mov dword [esp + 0xc], edi
mov eax, dword [0x10224ca0]
add eax, 0xa50
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x1012aa0c.2640
jmp dword [ecx*4 + 0x10132c38]
mov ecx, eax
call fcn.100cac70
jmp 0x1012aa1f
mov al, byte [eax + 0x20]
test al, al
je case.0x1012aa0c.2640
mov ecx, dword [0x10224ca0]
lea ecx, [ecx + 0xa50]
call fcn.100cafa0
test al, al
je 0x1012ad04
lea eax, [esp + 0x21ac]
push eax
lea ecx, [esp + 0x5a]
call fcn.10132f00
mov edi, eax
cmp byte [edi + 0xc], 0
je 0x1012ab92
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 0x1c], ecx
jl 0x1012ab63
movaps xmm2, xmmword [0x101f8d60]
mov ecx, 8
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
mov dword [esp + 0x1c], ecx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
mov eax, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 0x1c]
inc ecx
mov dword [esp + 0x1c], ecx
cmp ecx, 0xd
jl 0x1012ab63
push edi
lea ecx, [esp + 0x1820]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x7f0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x4c4]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x181c]
call fcn.100020d0
lea eax, [esp + 0xfdc]
push eax
lea ecx, [esp + 0x5b]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012ac76
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012ac46
push edi
lea ecx, [esp + 0x1838]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x800]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x4cc]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1834]
call fcn.100020d0
jmp 0x1012b12e
mov eax, dword [0x101f0dc8]
xor edx, edx
cmp dword [0x10225d40], 2
movq xmm0, qword [0x101f0dc0]
mov dword [esp + 0xeec], eax
mov al, byte [0x101f0dcc]
movq qword [esp + 0xee4], xmm0
mov byte [esp + 0xef0], al
mov dword [esp + 0x1c], edx
jl 0x1012ae44
movaps xmm2, xmmword [0x101f8d60]
mov edx, 8
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
mov dword [esp + 0x1c], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f0dc0]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0xee4], 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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0xee8]
xorps xmm1, xmm0
movd dword [esp + 0xee8], xmm1
mov eax, 0x4bda12f7
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x1c]
movsx eax, al
mov cl, dl
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0xee4], cl
inc edx
mov dword [esp + 0x1c], edx
cmp edx, 0xd
jl 0x1012ae44
lea ecx, [esp + 0x10fc]
call fcn.10029c00
lea ecx, [esp + 0xee4]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1012ae90
sub ecx, edx
lea eax, [esp + 0xee4]
push ecx
push eax
lea ecx, [esp + 0x1104]
call fcn.10027940
lea ecx, [esp + 0x10fc]
call fcn.10006650
movaps xmm0, xmmword [0x101f9140]
lea ecx, [esp + 0x3ec]
mov esi, eax
movups xmmword [esp + 0x3ec], xmm0
call fcn.100d18b0
movss xmm0, dword [esp + 0x10]
xorps xmm2, xmm2
addss xmm0, dword [0x101f8960]
push 0
push ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp], 0
movss dword [esp + 0x16c], xmm0
movd xmm0, edi
cvtdq2ps xmm0, xmm0
push 0
push esi
push eax
lea eax, [esp + 0x178]
push eax
mulss xmm0, dword [0x101f89a4]
push 0
addss xmm0, dword [esp + 0x3c]
movss dword [esp + 0x34], xmm0
movss dword [esp + 0x184], xmm0
call fcn.10165e70
lea ecx, [esp + 0x10fc]
call fcn.100020d0
mov ecx, dword [0x10224ca0]
lea ecx, [ecx + 0xa50]
call fcn.100cac70
test al, al
je 0x1012b039
lea eax, [esp + 0x116c]
push eax
lea ecx, [esp + 0x5c]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012afb0
xor ecx, ecx
mov dword [esp + 8], ecx
nop word [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012af80
push edi
lea ecx, [esp + 0x1850]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x810]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x4d4]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x184c]
jmp 0x1012b129
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xa50]
call fcn.100cab10
test al, al
je 0x1012b132
lea eax, [esp + 0x139c]
push eax
lea ecx, [esp + 0x5d]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012b0a5
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012b075
push edi
lea ecx, [esp + 0x1868]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x820]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x4dc]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1864]
call fcn.100020d0
mov edi, dword [esp + 0xc]
inc edi
mov dword [esp + 0xc], edi
mov eax, dword [0x10224ca0]
add eax, 0xa74
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x1012b14c.2676
jmp dword [ecx*4 + 0x10132c48]
mov ecx, eax
call fcn.100cac70
jmp 0x1012b15f
mov al, byte [eax + 0x20]
test al, al
je case.0x1012b14c.2676
mov ecx, dword [0x10224ca0]
lea ecx, [ecx + 0xa74]
call fcn.100cafa0
xor edx, edx
mov dword [esp + 0x1c], edx
test al, al
je 0x1012b3d0
mov ax, word [0x101f0a20]
movq xmm0, qword [str.tFVS]
mov word [esp + 0xf18], ax
mov al, byte [0x101f0a22]
movq qword [esp + 0xf10], xmm0
mov byte [esp + 0xf1a], al
mov eax, 0x2f684bdb
mul edx
mov eax, dword [esp + 0x1c]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x1c]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0xf10], cl
inc edx
mov dword [esp + 0x1c], edx
cmp edx, 0xb
jl 0x1012b1b1
lea ecx, [esp + 0x1114]
call fcn.10029c00
lea ecx, [esp + 0xf10]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1012b200
sub ecx, edx
lea eax, [esp + 0xf10]
push ecx
push eax
lea ecx, [esp + 0x111c]
call fcn.10027940
lea ecx, [esp + 0x1114]
call fcn.10006650
movaps xmm0, xmmword [0x101f9140]
lea ecx, [esp + 0x43c]
mov esi, eax
movups xmmword [esp + 0x43c], xmm0
call fcn.100d18b0
movss xmm0, dword [esp + 0x10]
xorps xmm2, xmm2
addss xmm0, dword [0x101f8960]
push 0
push ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp], 0
movss dword [esp + 0x174], xmm0
movd xmm0, edi
cvtdq2ps xmm0, xmm0
push 0
push esi
push eax
lea eax, [esp + 0x180]
push eax
mulss xmm0, dword [0x101f89a4]
push 0
addss xmm0, dword [esp + 0x3c]
movss dword [esp + 0x40], xmm0
movss dword [esp + 0x18c], xmm0
call fcn.10165e70
lea ecx, [esp + 0x1114]
call fcn.100020d0
mov eax, dword [str.iZh6]
xor edx, edx
mov dword [esp + 0xec0], eax
mov al, byte [0x101f05fc]
mov byte [esp + 0xec4], al
mov dword [esp + 0x1c], edx
mov eax, 0x2f684bdb
mul edx
mov eax, dword [esp + 0x1c]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x1c]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0xec0], cl
inc edx
mov dword [esp + 0x1c], edx
cmp edx, 5
jl 0x1012b2d0
lea ecx, [esp + 0x112c]
call fcn.10029c00
lea ecx, [esp + 0xec0]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1012b320
sub ecx, edx
lea eax, [esp + 0xec0]
push ecx
push eax
lea ecx, [esp + 0x1134]
call fcn.10027940
lea ecx, [esp + 0x112c]
call fcn.10006650
movaps xmm0, xmmword [0x101f9140]
lea ecx, [esp + 0x594]
mov esi, eax
movups xmmword [esp + 0x594], xmm0
call fcn.100d18b0
movss xmm0, dword [esp + 0x10]
xorps xmm2, xmm2
subss xmm0, dword [esp + 0x34]
push 0
push ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp], 0
subss xmm0, dword [0x101f8960]
push 0
push esi
push eax
lea eax, [esp + 0x188]
addss xmm0, dword [0x101f8aa4]
push eax
push 0
movss dword [esp + 0x190], xmm0
movss xmm0, dword [esp + 0x40]
movss dword [esp + 0x194], xmm0
call fcn.10165e70
lea ecx, [esp + 0x112c]
call fcn.100020d0
jmp 0x1012b6f2
mov ax, word [0x101f0a20]
movq xmm0, qword [str.tFVS]
mov word [esp + 0xf24], ax
mov al, byte [0x101f0a22]
movq qword [esp + 0xf1c], xmm0
mov byte [esp + 0xf26], al
nop dword [eax + eax]
mov eax, 0x2f684bdb
mul edx
mov eax, dword [esp + 0x1c]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x1c]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0xf1c], cl
inc edx
mov dword [esp + 0x1c], edx
cmp edx, 0xb
jl 0x1012b400
lea ecx, [esp + 0x1144]
call fcn.10029c00
lea ecx, [esp + 0xf1c]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1012b450
sub ecx, edx
lea eax, [esp + 0xf1c]
push ecx
push eax
lea ecx, [esp + 0x114c]
call fcn.10027940
lea ecx, [esp + 0x1144]
call fcn.10006650
movaps xmm0, xmmword [0x101f9140]
lea ecx, [esp + 0x5b4]
mov esi, eax
movups xmmword [esp + 0x5b4], xmm0
call fcn.100d18b0
movss xmm0, dword [esp + 0x10]
xorps xmm2, xmm2
addss xmm0, dword [0x101f8960]
push 0
push ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp], 0
movss dword [esp + 0x184], xmm0
movd xmm0, edi
cvtdq2ps xmm0, xmm0
push 0
push esi
push eax
lea eax, [esp + 0x190]
push eax
mulss xmm0, dword [0x101f89a4]
push 0
addss xmm0, dword [esp + 0x3c]
movss dword [esp + 0x34], xmm0
movss dword [esp + 0x19c], xmm0
call fcn.10165e70
lea ecx, [esp + 0x1144]
call fcn.100020d0
mov ecx, dword [0x10224ca0]
lea ecx, [ecx + 0xa74]
call fcn.100cac70
test al, al
je 0x1012b5f9
lea eax, [esp + 0x1174]
push eax
lea ecx, [esp + 0x5e]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012b570
xor ecx, ecx
mov dword [esp + 8], ecx
nop word [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012b540
push edi
lea ecx, [esp + 0x1880]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x830]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x4e4]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x187c]
jmp 0x1012b6e9
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xa74]
call fcn.100cab10
test al, al
je 0x1012b6f2
lea eax, [esp + 0x1390]
push eax
lea ecx, [esp + 0x5f]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012b665
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012b635
push edi
lea ecx, [esp + 0x1898]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x840]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x4ec]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1894]
call fcn.100020d0
mov edi, dword [esp + 0xc]
inc edi
mov dword [esp + 0xc], edi
mov eax, dword [0x10224ca0]
add eax, 0xe0c
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x1012b70c.3596
jmp dword [ecx*4 + 0x10132c58]
mov ecx, eax
call fcn.100cac70
jmp 0x1012b71f
mov al, byte [eax + 0x20]
test al, al
je case.0x1012b70c.3596
imul ecx, dword [0x10226764], 0x58
mov eax, dword [0x10224ca0]
cmp byte [ecx + eax + 0xb1d], 0
je case.0x1012b70c.3596
lea ecx, [eax + 0xe0c]
call fcn.100cafa0
test al, al
je 0x1012b919
lea eax, [esp + 0x14ec]
push eax
lea ecx, [esp + 0x60]
call fcn.10132f30
mov edi, eax
cmp byte [edi + 0xa], 0
je 0x1012b7a3
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xb
jl 0x1012b773
push edi
lea ecx, [esp + 0x18b0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x850]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x4f4]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x18ac]
call fcn.100020d0
lea eax, [esp + 0xfac]
push eax
lea ecx, [esp + 0x61]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012b890
xor ecx, ecx
mov dword [esp + 8], ecx
nop word [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012b860
push edi
lea ecx, [esp + 0x18c8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x860]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x4fc]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x18c4]
jmp 0x1012bbea
lea eax, [esp + 0x14e0]
push eax
lea ecx, [esp + 0x62]
call fcn.10132f30
mov edi, eax
cmp byte [edi + 0xa], 0
je 0x1012b970
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xb
jl 0x1012b940
push edi
lea ecx, [esp + 0x18e0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x870]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x504]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x18dc]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xe0c]
call fcn.100cac70
test al, al
je 0x1012bafa
lea eax, [esp + 0x117c]
push eax
lea ecx, [esp + 0x63]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012ba71
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012ba41
push edi
lea ecx, [esp + 0x18f8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x880]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x50c]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x18f4]
jmp 0x1012bbea
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xe0c]
call fcn.100cab10
test al, al
je 0x1012bbef
lea eax, [esp + 0x1378]
push eax
lea ecx, [esp + 0x64]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012bb66
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012bb36
push edi
lea ecx, [esp + 0x1910]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x950]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x514]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x190c]
call fcn.100020d0
mov edi, dword [esp + 0xc]
mov ecx, 0x10224ca0
inc edi
mov esi, edi
mov dword [esp + 0xc], edi
mov dword [esp + 0x30], esi
call fcn.10035f00
lea ecx, [eax + 0xde8]
call fcn.100caf40
test al, al
je case.0x1012b70c.3596
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xde8]
call fcn.100cafa0
test al, al
je 0x1012bf5a
lea eax, [esp + 0x220c]
push eax
lea ecx, [esp + 0x65]
call fcn.10132f60
mov edi, eax
mov dword [esp + 0x3c], edi
cmp byte [edi + 0xf], 0
je 0x1012bddf
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 8], ecx
jl 0x1012bdb0
movaps xmm0, xmmword [0x101f8f00]
mov eax, 4
movaps xmm4, xmmword [0x101f8d60]
xor edx, edx
movaps xmm3, xmmword [0x101f91b0]
sub eax, edi
movaps xmm5, xmmword [0x101f8e10]
mov ecx, edi
movaps xmmword [esp + 0xd0], xmm0
mov edi, eax
mov esi, dword [esp + 0xd0]
mov dword [esp + 0x24], eax
nop dword [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 [0x101f8eb0]
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 [0x101f8eb0]
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 0x1012bcb0
mov edi, dword [esp + 0x3c]
jmp 0x1012bddf
mov eax, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0x10
jl 0x1012bdb0
push edi
lea ecx, [esp + 0x1928]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xa90]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0x30]
lea ecx, [esp + 0x51c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1924]
call fcn.100020d0
lea eax, [esp + 0xfe4]
push eax
lea ecx, [esp + 0x66]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012bec3
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012be93
push edi
lea ecx, [esp + 0x1940]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xaa0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x524]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x193c]
call fcn.100020d0
mov esi, dword [esp + 0x30]
inc esi
mov dword [esp + 0xc], esi
jmp case.0x1012b70c.3596
mov ecx, 0x10224ca0
mov dword [esp + 0xc], esi
call fcn.10035f00
lea ecx, [eax + 0xde8]
call fcn.100cafa0
test al, al
jne case.0x1012b70c.3596
lea eax, [esp + 0x21fc]
push eax
lea ecx, [esp + 0x67]
call fcn.10132f60
mov edi, eax
mov dword [esp + 0x3c], edi
cmp byte [edi + 0xf], 0
je 0x1012c11f
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 8], ecx
jl 0x1012c0f0
movaps xmm0, xmmword [0x101f8f00]
mov eax, 4
movaps xmm4, xmmword [0x101f8d60]
xor edx, edx
movaps xmm3, xmmword [0x101f91b0]
sub eax, edi
movaps xmm5, xmmword [0x101f8e10]
mov ecx, edi
movaps xmmword [esp + 0xd0], xmm0
mov edi, eax
mov esi, dword [esp + 0xd0]
mov dword [esp + 0x24], eax
nop dword [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 [0x101f8eb0]
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 [0x101f8eb0]
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 0x1012bff0
mov edi, dword [esp + 0x3c]
jmp 0x1012c11f
mov eax, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0x10
jl 0x1012c0f0
push edi
lea ecx, [esp + 0x1958]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xac0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0x30]
lea ecx, [esp + 0x52c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1954]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xde8]
call fcn.100cac70
test al, al
je 0x1012c2a9
lea eax, [esp + 0x1184]
push eax
lea ecx, [esp + 0x68]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012c220
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012c1f0
push edi
lea ecx, [esp + 0x1970]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xae0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x534]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x196c]
jmp 0x1012c399
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xde8]
call fcn.100cab10
test al, al
je 0x1012c39e
lea eax, [esp + 0x1348]
push eax
lea ecx, [esp + 0x69]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012c315
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012c2e5
push edi
lea ecx, [esp + 0x1988]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x890]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x53c]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1984]
call fcn.100020d0
mov eax, dword [esp + 0x30]
inc eax
mov dword [esp + 0xc], eax
mov eax, dword [0x10224ca0]
add eax, 0xdc4
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x1012c3bc.3524
jmp dword [ecx*4 + 0x10132c68]
mov ecx, eax
call fcn.100cac70
jmp 0x1012c3cf
mov al, byte [eax + 0x20]
test al, al
je case.0x1012c3bc.3524
imul ecx, dword [0x10226764], 0x58
mov eax, dword [0x10224ca0]
cmp byte [ecx + eax + 0xb24], 0
je case.0x1012c3bc.3524
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xdc4]
call fcn.100cafa0
test al, al
je 0x1012c5cd
lea eax, [esp + 0x14bc]
push eax
lea ecx, [esp + 0x6a]
call fcn.10132f80
mov edi, eax
cmp byte [edi + 9], 0
je 0x1012c460
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xa
jl 0x1012c430
push edi
lea ecx, [esp + 0x19a0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x8a0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x544]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x199c]
call fcn.100020d0
lea eax, [esp + 0xfec]
push eax
lea ecx, [esp + 0x6b]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012c544
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012c514
push edi
lea ecx, [esp + 0x19b8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x8b0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x54c]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x19b4]
jmp 0x1012c89a
lea eax, [esp + 0x14c8]
push eax
lea ecx, [esp + 0x6c]
call fcn.10132f80
mov edi, eax
cmp byte [edi + 9], 0
je 0x1012c620
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xa
jl 0x1012c5f0
push edi
lea ecx, [esp + 0x19d0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x8c0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x554]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x19cc]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xdc4]
call fcn.100cac70
test al, al
je 0x1012c7aa
lea eax, [esp + 0x118c]
push eax
lea ecx, [esp + 0x6d]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012c721
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012c6f1
push edi
lea ecx, [esp + 0x19e8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x8d0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x55c]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x19e4]
jmp 0x1012c89a
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xdc4]
call fcn.100cab10
test al, al
je 0x1012c89f
lea eax, [esp + 0x133c]
push eax
lea ecx, [esp + 0x6e]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012c816
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012c7e6
push edi
lea ecx, [esp + 0x1a00]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x8e0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x564]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x19fc]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
cmp byte [eax + 0xac8], 0
je case.0x1012d968.3452
mov ecx, dword [eax + 0xd58]
add eax, 0xd58
cmp ecx, 3
ja case.0x1012c8c9.0
jmp dword [ecx*4 + 0x10132c78]
mov ecx, eax
call fcn.100cac70
jmp 0x1012c8dc
mov al, byte [eax + 0x20]
test al, al
je case.0x1012c8c9.0
mov ecx, dword [0x10224ca0]
lea ecx, [ecx + 0xd58]
call fcn.100cafa0
test al, al
je 0x1012cabd
lea eax, [esp + 0x1330]
push eax
lea ecx, [esp + 0x6f]
call fcn.10132fa0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012c950
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012c920
push edi
lea ecx, [esp + 0x1a18]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x8f0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x56c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1a14]
call fcn.100020d0
lea eax, [esp + 0xff4]
push eax
lea ecx, [esp + 0x70]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012ca34
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012ca04
push edi
lea ecx, [esp + 0x1a30]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x900]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x574]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1a2c]
jmp 0x1012cd8a
lea eax, [esp + 0x1324]
push eax
lea ecx, [esp + 0x71]
call fcn.10132fa0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012cb10
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012cae0
push edi
lea ecx, [esp + 0x1a48]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x910]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x57c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1a44]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xd58]
call fcn.100cac70
test al, al
je 0x1012cc9a
lea eax, [esp + 0x1194]
push eax
lea ecx, [esp + 0x72]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012cc11
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012cbe1
push edi
lea ecx, [esp + 0x1a60]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x920]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x584]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1a5c]
jmp 0x1012cd8a
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xd58]
call fcn.100cab10
test al, al
je 0x1012cd8f
lea eax, [esp + 0x13a8]
push eax
lea ecx, [esp + 0x73]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012cd06
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012ccd6
push edi
lea ecx, [esp + 0x1a78]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x930]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x58c]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1a74]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
add eax, 0xd34
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x1012cda8.3380
jmp dword [ecx*4 + 0x10132c88]
mov ecx, eax
call fcn.100cac70
jmp 0x1012cdbb
mov al, byte [eax + 0x20]
test al, al
je case.0x1012cda8.3380
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xd34]
call fcn.100cafa0
test al, al
je 0x1012d09c
lea eax, [esp + 0x1274]
push eax
lea ecx, [esp + 0x74]
call fcn.10132fc0
mov edi, eax
cmp byte [edi + 7], 0
je 0x1012cf2f
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 8], ecx
jl 0x1012cf00
movaps xmm2, xmmword [0x101f8d60]
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
jmp 0x1012cf2f
mov eax, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 8
jl 0x1012cf00
push edi
lea ecx, [esp + 0x1a90]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x940]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x5a4]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1a8c]
call fcn.100020d0
lea eax, [esp + 0xffc]
push eax
lea ecx, [esp + 0x75]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012d013
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012cfe3
push edi
lea ecx, [esp + 0x1aa8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x670]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x5ac]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1aa4]
jmp 0x1012d469
lea eax, [esp + 0x126c]
push eax
lea ecx, [esp + 0x76]
call fcn.10132fc0
mov edi, eax
cmp byte [edi + 7], 0
je 0x1012d1ef
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 8], ecx
jl 0x1012d1c0
movaps xmm2, xmmword [0x101f8d60]
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
jmp 0x1012d1ef
mov eax, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 8
jl 0x1012d1c0
push edi
lea ecx, [esp + 0x1ac0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x960]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x5c4]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1abc]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xd34]
call fcn.100cac70
test al, al
je 0x1012d379
lea eax, [esp + 0x119c]
push eax
lea ecx, [esp + 0x77]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012d2f0
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012d2c0
push edi
lea ecx, [esp + 0x1ad8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x970]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x5cc]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1ad4]
jmp 0x1012d469
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xd34]
call fcn.100cab10
test al, al
je 0x1012d46e
lea eax, [esp + 0x1318]
push eax
lea ecx, [esp + 0x78]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012d3e5
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012d3b5
push edi
lea ecx, [esp + 0x1af0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x980]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x5d4]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1aec]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
add eax, 0xda0
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x1012d487.3488
jmp dword [ecx*4 + 0x10132c98]
mov ecx, eax
call fcn.100cac70
jmp 0x1012d49a
mov al, byte [eax + 0x20]
test al, al
je case.0x1012d487.3488
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xda0]
call fcn.100cafa0
test al, al
je 0x1012d67d
lea eax, [esp + 0x1004]
push eax
lea ecx, [esp + 0x79]
call fcn.10132fe0
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012d510
xor ecx, ecx
mov dword [esp + 8], ecx
nop
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012d4e0
push edi
lea ecx, [esp + 0x1b08]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x990]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x5dc]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1b04]
call fcn.100020d0
lea eax, [esp + 0xf34]
push eax
lea ecx, [esp + 0x7a]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012d5f4
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012d5c4
push edi
lea ecx, [esp + 0x1b20]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x9a0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x5e4]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1b1c]
jmp 0x1012d94a
lea eax, [esp + 0xf3c]
push eax
lea ecx, [esp + 0x7b]
call fcn.10132fe0
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012d6d0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012d6a0
push edi
lea ecx, [esp + 0x1b38]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x9c0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x5ec]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1b34]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xda0]
call fcn.100cac70
test al, al
je 0x1012d85a
lea eax, [esp + 0x11a4]
push eax
lea ecx, [esp + 0x7c]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012d7d1
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012d7a1
push edi
lea ecx, [esp + 0x1b50]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x9d0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x5f4]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1b4c]
jmp 0x1012d94a
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xda0]
call fcn.100cab10
test al, al
je 0x1012d94f
lea eax, [esp + 0x130c]
push eax
lea ecx, [esp + 0x7d]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012d8c6
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012d896
push edi
lea ecx, [esp + 0x1b68]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x9e0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x5fc]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1b64]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
add eax, 0xd7c
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x1012d968.3452
jmp dword [ecx*4 + 0x10132ca8]
mov ecx, eax
call fcn.100cac70
jmp 0x1012d97b
mov al, byte [eax + 0x20]
test al, al
je case.0x1012d968.3452
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xd7c]
call fcn.100cafa0
test al, al
je 0x1012db5d
lea eax, [esp + 0x10c4]
push eax
lea ecx, [esp + 0x7e]
call fcn.10133000
mov edi, eax
cmp byte [edi + 5], 0
je 0x1012d9f0
xor ecx, ecx
mov dword [esp + 8], ecx
nop
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 6
jl 0x1012d9c0
push edi
lea ecx, [esp + 0x1b80]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x9f0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x604]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1b7c]
call fcn.100020d0
lea eax, [esp + 0xf44]
push eax
lea ecx, [esp + 0x7f]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012dad4
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012daa4
push edi
lea ecx, [esp + 0x1b98]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xa00]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x60c]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1b94]
jmp 0x1012de34
lea eax, [esp + 0x1014]
push eax
lea ecx, [esp + 0x80]
call fcn.10133000
mov edi, eax
cmp byte [edi + 5], 0
je 0x1012dbb0
xor ecx, ecx
mov dword [esp + 8], ecx
nop
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 6
jl 0x1012db80
push edi
lea ecx, [esp + 0x1bb0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xa10]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x614]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1bac]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xd7c]
call fcn.100cac70
test al, al
je 0x1012dd3d
lea eax, [esp + 0x11ac]
push eax
lea ecx, [esp + 0x81]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012dcb4
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012dc84
push edi
lea ecx, [esp + 0x1bc8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xa20]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x61c]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1bc4]
jmp 0x1012de34
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xd7c]
call fcn.100cab10
test al, al
je 0x1012de39
lea eax, [esp + 0x136c]
push eax
lea ecx, [esp + 0x82]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012ddb0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012dd80
push edi
lea ecx, [esp + 0x1be0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xa30]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x624]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1bdc]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
add eax, 0xe30
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x1012de52.3632
jmp dword [ecx*4 + 0x10132cb8]
mov ecx, eax
call fcn.100cac70
jmp 0x1012de65
mov al, byte [eax + 0x20]
test al, al
je case.0x1012de52.3632
imul ecx, dword [0x10226764], 0x58
mov eax, dword [0x10224ca0]
cmp byte [ecx + eax + 0xb38], 0
je case.0x1012de52.3632
lea ecx, [eax + 0xe30]
call fcn.100cafa0
test al, al
je 0x1012e15f
lea eax, [esp + 0x21cc]
push eax
lea ecx, [esp + 0x83]
call fcn.10133020
mov edi, eax
cmp byte [edi + 0xd], 0
je 0x1012dfef
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 0x1c], ecx
jl 0x1012dfc0
movaps xmm2, xmmword [0x101f8d60]
mov ecx, 8
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
mov dword [esp + 0x1c], ecx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
mov eax, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 0x1c]
inc ecx
mov dword [esp + 0x1c], ecx
cmp ecx, 0xe
jl 0x1012dfc0
push edi
lea ecx, [esp + 0x1bf8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xa40]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x62c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1bf4]
call fcn.100020d0
lea eax, [esp + 0xf4c]
push eax
lea ecx, [esp + 0x84]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012e0d6
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012e0a6
push edi
lea ecx, [esp + 0x1c10]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xa50]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x634]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1c0c]
jmp 0x1012e544
lea eax, [esp + 0x21bc]
push eax
lea ecx, [esp + 0x85]
call fcn.10133020
mov edi, eax
cmp byte [edi + 0xd], 0
je 0x1012e2b4
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 0x1c], ecx
jl 0x1012e285
movaps xmm2, xmmword [0x101f8d60]
mov ecx, 8
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
mov dword [esp + 0x1c], ecx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
mov eax, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 0x1c]
inc ecx
mov dword [esp + 0x1c], ecx
cmp ecx, 0xe
jl 0x1012e285
push edi
lea ecx, [esp + 0x1c28]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xa60]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x63c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1c24]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xe30]
call fcn.100cac70
test al, al
je 0x1012e449
lea eax, [esp + 0x11b4]
push eax
lea ecx, [esp + 0x86]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012e3c0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012e390
push edi
lea ecx, [esp + 0x1c40]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xa70]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x644]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1c3c]
jmp 0x1012e544
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0xe30]
call fcn.100cab10
test al, al
je 0x1012e549
lea eax, [esp + 0x1300]
push eax
lea ecx, [esp + 0x87]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012e4c0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012e490
push edi
lea ecx, [esp + 0x1c58]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x9b0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x64c]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1c54]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
add eax, 0x353c
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x1012e562.13628
jmp dword [ecx*4 + 0x10132cc8]
mov ecx, eax
call fcn.100cac70
jmp 0x1012e575
mov al, byte [eax + 0x20]
test al, al
je case.0x1012e562.13628
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x3538], 0
je case.0x1012e562.13628
lea ecx, [eax + 0x353c]
call fcn.100cafa0
test al, al
je 0x1012e769
lea eax, [esp + 0x1498]
push eax
lea ecx, [esp + 0x88]
call fcn.10133050
mov edi, eax
cmp byte [edi + 9], 0
je 0x1012e5f4
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xa
jl 0x1012e5c4
push edi
lea ecx, [esp + 0x1c70]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xab0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x654]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1c6c]
call fcn.100020d0
lea eax, [esp + 0xf54]
push eax
lea ecx, [esp + 0x89]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012e6e0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012e6b0
push edi
lea ecx, [esp + 0x1c88]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xa80]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x65c]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1c84]
jmp 0x1012ea64
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x353c]
call fcn.100cafa0
test al, al
jne case.0x1012e562.13628
lea eax, [esp + 0x148c]
push eax
lea ecx, [esp + 0x8a]
call fcn.10133050
mov edi, eax
cmp byte [edi + 9], 0
je 0x1012e7e0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xa
jl 0x1012e7b0
push edi
lea ecx, [esp + 0x1ca0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xea0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x664]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1c9c]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x353c]
call fcn.100cac70
test al, al
je 0x1012e96d
lea eax, [esp + 0x121c]
push eax
lea ecx, [esp + 0x8b]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012e8e4
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012e8b4
push edi
lea ecx, [esp + 0x1cb8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xe90]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x1cc]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1cb4]
jmp 0x1012ea64
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x353c]
call fcn.100cab10
test al, al
je 0x1012ea69
lea eax, [esp + 0x12f4]
push eax
lea ecx, [esp + 0x8c]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012e9e0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012e9b0
push edi
lea ecx, [esp + 0x1cd0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xe80]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x1d4]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1ccc]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x3575], 0
je case.0x1012ea93.0
mov ecx, dword [eax + 0x3578]
add eax, 0x3578
cmp ecx, 3
ja case.0x1012ea93.0
jmp dword [ecx*4 + 0x10132cd8]
mov ecx, eax
call fcn.100cac70
jmp 0x1012eaa6
mov al, byte [eax + 0x20]
test al, al
je case.0x1012ea93.0
mov ecx, dword [0x10224ca0]
lea ecx, [ecx + 0x3578]
call fcn.100cafa0
test al, al
je 0x1012ed8f
lea eax, [esp + 0x1570]
push eax
lea ecx, [esp + 0x8d]
call fcn.10133070
mov edi, eax
cmp byte [edi + 0xb], 0
je 0x1012ec1f
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 0x1c], ecx
jl 0x1012ebf0
movaps xmm2, xmmword [0x101f8d60]
mov ecx, 8
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
mov dword [esp + 0x1c], ecx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
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, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 0x1c]
inc ecx
mov dword [esp + 0x1c], ecx
cmp ecx, 0xc
jl 0x1012ebf0
push edi
lea ecx, [esp + 0x1ce8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xe70]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x1dc]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1ce4]
call fcn.100020d0
lea eax, [esp + 0xf5c]
push eax
lea ecx, [esp + 0x8e]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012ed06
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012ecd6
push edi
lea ecx, [esp + 0x1d00]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xe60]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x1e4]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1cfc]
jmp 0x1012f174
lea eax, [esp + 0x1564]
push eax
lea ecx, [esp + 0x8f]
call fcn.10133070
mov edi, eax
cmp byte [edi + 0xb], 0
je 0x1012eee4
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 0x1c], ecx
jl 0x1012eeb5
movaps xmm2, xmmword [0x101f8d60]
mov ecx, 8
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
mov dword [esp + 0x1c], ecx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
mov eax, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 0x1c]
inc ecx
mov dword [esp + 0x1c], ecx
cmp ecx, 0xc
jl 0x1012eeb5
push edi
lea ecx, [esp + 0x1d18]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xe50]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x1ec]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1d14]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x3578]
call fcn.100cac70
test al, al
je 0x1012f079
lea eax, [esp + 0x11bc]
push eax
lea ecx, [esp + 0x90]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012eff0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012efc0
push edi
lea ecx, [esp + 0x1d30]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xe40]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x1f4]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1d2c]
jmp 0x1012f174
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x3578]
call fcn.100cab10
test al, al
je 0x1012f179
lea eax, [esp + 0x12e8]
push eax
lea ecx, [esp + 0x91]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012f0f0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012f0c0
push edi
lea ecx, [esp + 0x1d48]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xe30]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x1fc]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1d44]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x34a4], 0
je case.0x1012f1a3.0
mov ecx, dword [eax + 0x34bc]
add eax, 0x34bc
cmp ecx, 3
ja case.0x1012f1a3.0
jmp dword [ecx*4 + 0x10132ce8]
mov ecx, eax
call fcn.100cac70
jmp 0x1012f1b6
mov al, byte [eax + 0x20]
test al, al
je case.0x1012f1a3.0
mov ecx, dword [0x10224ca0]
lea ecx, [ecx + 0x34bc]
call fcn.100cafa0
test al, al
je 0x1012f3a9
lea eax, [esp + 0x12dc]
push eax
lea ecx, [esp + 0x92]
call fcn.10133090
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012f230
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012f200
push edi
lea ecx, [esp + 0x1d60]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xe20]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x204]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1d5c]
call fcn.100020d0
lea eax, [esp + 0xf64]
push eax
lea ecx, [esp + 0x93]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012f320
xor ecx, ecx
mov dword [esp + 8], ecx
nop word [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012f2f0
push edi
lea ecx, [esp + 0x1d78]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xe10]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x20c]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1d74]
jmp 0x1012f684
lea eax, [esp + 0x12d0]
push eax
lea ecx, [esp + 0x94]
call fcn.10133090
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012f400
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012f3d0
push edi
lea ecx, [esp + 0x1d90]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xe00]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x214]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1d8c]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x34bc]
call fcn.100cac70
test al, al
je 0x1012f58d
lea eax, [esp + 0x11c4]
push eax
lea ecx, [esp + 0x95]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012f504
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012f4d4
push edi
lea ecx, [esp + 0x1da8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xdf0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x21c]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1da4]
jmp 0x1012f684
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x34bc]
call fcn.100cab10
test al, al
je 0x1012f689
lea eax, [esp + 0x12c4]
push eax
lea ecx, [esp + 0x96]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012f600
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012f5d0
push edi
lea ecx, [esp + 0x1dc0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xde0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x224]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1dbc]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x347c], 0
je case.0x1012f6b3.0
mov ecx, dword [eax + 0x3480]
add eax, 0x3480
cmp ecx, 3
ja case.0x1012f6b3.0
jmp dword [ecx*4 + 0x10132cf8]
mov ecx, eax
call fcn.100cac70
jmp 0x1012f6c6
mov al, byte [eax + 0x20]
test al, al
je case.0x1012f6b3.0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x3480]
call fcn.100cafa0
test al, al
je 0x1012f8b9
lea eax, [esp + 0x12b8]
push eax
lea ecx, [esp + 0x97]
call fcn.101330b0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012f740
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012f710
push edi
lea ecx, [esp + 0x1dd8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xdd0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x22c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1dd4]
call fcn.100020d0
lea eax, [esp + 0xf6c]
push eax
lea ecx, [esp + 0x98]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012f830
xor ecx, ecx
mov dword [esp + 8], ecx
nop word [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012f800
push edi
lea ecx, [esp + 0x1df0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xdc0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x234]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1dec]
jmp 0x1012fb94
lea eax, [esp + 0x1420]
push eax
lea ecx, [esp + 0x99]
call fcn.101330b0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012f910
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012f8e0
push edi
lea ecx, [esp + 0x1e08]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xdb0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x23c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1e04]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x3480]
call fcn.100cac70
test al, al
je 0x1012fa9d
lea eax, [esp + 0x11cc]
push eax
lea ecx, [esp + 0x9a]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012fa14
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012f9e4
push edi
lea ecx, [esp + 0x1e20]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xda0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x244]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1e1c]
jmp 0x1012fb94
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x3480]
call fcn.100cab10
test al, al
je 0x1012fb99
lea eax, [esp + 0x1414]
push eax
lea ecx, [esp + 0x9b]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x1012fb10
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012fae0
push edi
lea ecx, [esp + 0x1e38]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xd90]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x24c]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1e34]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x1581], 0
je case.0x1012fbc3.0
mov ecx, dword [eax + 0x1584]
add eax, 0x1584
cmp ecx, 3
ja case.0x1012fbc3.0
jmp dword [ecx*4 + 0x10132d08]
mov ecx, eax
call fcn.100cac70
jmp 0x1012fbd6
mov al, byte [eax + 0x20]
test al, al
je case.0x1012fbc3.0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x1584]
call fcn.100cafa0
test al, al
je 0x1012fdc9
lea eax, [esp + 0xf74]
push eax
lea ecx, [esp + 0x9c]
call fcn.101330d0
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012fc50
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012fc20
push edi
lea ecx, [esp + 0x1e50]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xd80]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x254]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1e4c]
call fcn.100020d0
lea eax, [esp + 0xf7c]
push eax
lea ecx, [esp + 0x9d]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012fd40
xor ecx, ecx
mov dword [esp + 8], ecx
nop word [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012fd10
push edi
lea ecx, [esp + 0x1e68]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x7e0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x25c]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1e64]
jmp 0x101300a4
lea eax, [esp + 0xfc4]
push eax
lea ecx, [esp + 0x9e]
call fcn.101330d0
mov edi, eax
cmp byte [edi + 4], 0
je 0x1012fe20
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x1012fdf0
push edi
lea ecx, [esp + 0x1e80]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xd70]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x264]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1e7c]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x1584]
call fcn.100cac70
test al, al
je 0x1012ffad
lea eax, [esp + 0x11d4]
push eax
lea ecx, [esp + 0x9f]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x1012ff24
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x1012fef4
push edi
lea ecx, [esp + 0x1e98]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xd60]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x26c]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1e94]
jmp 0x101300a4
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x1584]
call fcn.100cab10
test al, al
je 0x101300a9
lea eax, [esp + 0x1408]
push eax
lea ecx, [esp + 0xa0]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x10130020
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x1012fff0
push edi
lea ecx, [esp + 0x1eb0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xd50]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x274]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1eac]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x15a8], 0
je case.0x101300d3.0
mov ecx, dword [eax + 0x15ac]
add eax, 0x15ac
cmp ecx, 3
ja case.0x101300d3.0
jmp dword [ecx*4 + 0x10132d18]
mov ecx, eax
call fcn.100cac70
jmp 0x101300e6
mov al, byte [eax + 0x20]
test al, al
je case.0x101300d3.0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x15ac]
call fcn.100cafa0
test al, al
je 0x101303cf
lea eax, [esp + 0x125c]
push eax
lea ecx, [esp + 0xa1]
call fcn.101330f0
mov edi, eax
cmp byte [edi + 7], 0
je 0x1013025f
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 8], ecx
jl 0x10130230
movaps xmm2, xmmword [0x101f8d60]
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
jmp 0x1013025f
mov eax, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 8
jl 0x10130230
push edi
lea ecx, [esp + 0x1ec8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xd40]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x27c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1ec4]
call fcn.100020d0
lea eax, [esp + 0xf84]
push eax
lea ecx, [esp + 0xa2]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x10130346
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x10130316
push edi
lea ecx, [esp + 0x1ee0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xd30]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x284]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1edc]
jmp 0x101307a4
lea eax, [esp + 0x1264]
push eax
lea ecx, [esp + 0xa3]
call fcn.101330f0
mov edi, eax
cmp byte [edi + 7], 0
je 0x1013051f
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 8], ecx
jl 0x101304f0
movaps xmm2, xmmword [0x101f8d60]
movaps xmm4, xmmword [0x101f91b0]
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 [0x101f8f00]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
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 [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
jmp 0x1013051f
mov eax, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 8
jl 0x101304f0
push edi
lea ecx, [esp + 0x1ef8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xd20]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x28c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1ef4]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x15ac]
call fcn.100cac70
test al, al
je 0x101306ac
lea eax, [esp + 0x11dc]
push eax
lea ecx, [esp + 0xa4]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x10130623
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x101305f3
push edi
lea ecx, [esp + 0x1f10]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xd10]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x294]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1f0c]
jmp 0x101307a4
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x15ac]
call fcn.100cab10
test al, al
je 0x101307a9
lea eax, [esp + 0x13fc]
push eax
lea ecx, [esp + 0xa5]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x10130720
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x101306f0
push edi
lea ecx, [esp + 0x1f28]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xd00]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x29c]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1f24]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x34e0], 0
je case.0x101307d3.0
mov ecx, dword [eax + 0x34e8]
add eax, 0x34e8
cmp ecx, 3
ja case.0x101307d3.0
jmp dword [ecx*4 + 0x10132d28]
mov ecx, eax
call fcn.100cac70
jmp 0x101307e6
mov al, byte [eax + 0x20]
test al, al
je case.0x101307d3.0
mov ecx, dword [0x10224ca0]
lea ecx, [ecx + 0x34e8]
call fcn.100cafa0
test al, al
je 0x10130b1f
lea eax, [esp + 0x21dc]
push eax
lea ecx, [esp + 0xa6]
call fcn.10133110
mov edi, eax
mov dword [esp + 0x3c], edi
cmp byte [edi + 0xf], 0
je 0x101309af
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 8], ecx
jl 0x10130980
movaps xmm0, xmmword [0x101f8f00]
mov eax, 4
movaps xmm4, xmmword [0x101f8d60]
xor edx, edx
movaps xmm3, xmmword [0x101f91b0]
sub eax, edi
movaps xmm5, xmmword [0x101f8e10]
mov ecx, edi
movaps xmmword [esp + 0xd0], xmm0
mov edi, eax
mov esi, dword [esp + 0xd0]
mov dword [esp + 0x24], 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 [0x101f8eb0]
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 [0x101f8eb0]
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 0x10130880
mov edi, dword [esp + 0x3c]
jmp 0x101309af
mov eax, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0x10
jl 0x10130980
push edi
lea ecx, [esp + 0x1f40]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xcf0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x2a4]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1f3c]
call fcn.100020d0
lea eax, [esp + 0xf8c]
push eax
lea ecx, [esp + 0xa7]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x10130a96
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x10130a66
push edi
lea ecx, [esp + 0x1f58]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xce0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x2ac]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1f54]
jmp 0x10130f44
lea eax, [esp + 0x21ec]
push eax
lea ecx, [esp + 0xa8]
call fcn.10133110
mov edi, eax
mov dword [esp + 0x3c], edi
cmp byte [edi + 0xf], 0
je 0x10130cbf
xor ecx, ecx
cmp dword [0x10225d40], 2
mov dword [esp + 8], ecx
jl 0x10130c90
movaps xmm0, xmmword [0x101f8f00]
mov eax, 4
movaps xmm4, xmmword [0x101f8d60]
xor edx, edx
movaps xmm3, xmmword [0x101f91b0]
sub eax, edi
movaps xmm5, xmmword [0x101f8e10]
mov ecx, edi
movaps xmmword [esp + 0xd0], xmm0
mov edi, eax
mov esi, dword [esp + 0xd0]
mov dword [esp + 0x24], 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 [0x101f8eb0]
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 [0x101f8eb0]
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 0x10130b92
mov edi, dword [esp + 0x3c]
jmp 0x10130cbf
mov eax, 0x4bda12f7
lea esi, [edi + ecx]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0x10
jl 0x10130c90
push edi
lea ecx, [esp + 0x1f70]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xcd0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x2b4]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1f6c]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x34e8]
call fcn.100cac70
test al, al
je 0x10130e4c
lea eax, [esp + 0x11e4]
push eax
lea ecx, [esp + 0xa9]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x10130dc3
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x10130d93
push edi
lea ecx, [esp + 0x1f88]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xcc0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x2bc]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1f84]
jmp 0x10130f44
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x34e8]
call fcn.100cab10
test al, al
je 0x10130f49
lea eax, [esp + 0x13f0]
push eax
lea ecx, [esp + 0xaa]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x10130ec0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x10130e90
push edi
lea ecx, [esp + 0x1fa0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xcb0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x2c4]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1f9c]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x3401], 0
je case.0x10130f73.0
mov ecx, dword [eax + 0x3404]
add eax, 0x3404
cmp ecx, 3
ja case.0x10130f73.0
jmp dword [ecx*4 + 0x10132d38]
mov ecx, eax
call fcn.100cac70
jmp 0x10130f86
mov al, byte [eax + 0x20]
test al, al
je case.0x10130f73.0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x3404]
call fcn.100cafa0
test al, al
je 0x10131179
lea eax, [esp + 0x1480]
push eax
lea ecx, [esp + 0xab]
call fcn.10133130
mov edi, eax
cmp byte [edi + 9], 0
je 0x10131000
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xa
jl 0x10130fd0
push edi
lea ecx, [esp + 0x1fb8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xca0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x2cc]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1fb4]
call fcn.100020d0
lea eax, [esp + 0xf94]
push eax
lea ecx, [esp + 0xac]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x101310f0
xor ecx, ecx
mov dword [esp + 8], ecx
nop word [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x101310c0
push edi
lea ecx, [esp + 0x1fd0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xc90]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x2d4]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1fcc]
jmp 0x10131454
lea eax, [esp + 0x14b0]
push eax
lea ecx, [esp + 0xad]
call fcn.10133130
mov edi, eax
cmp byte [edi + 9], 0
je 0x101311d0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xa
jl 0x101311a0
push edi
lea ecx, [esp + 0x1fe8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xc80]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x2dc]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1fe4]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x3404]
call fcn.100cac70
test al, al
je 0x1013135d
lea eax, [esp + 0x11ec]
push eax
lea ecx, [esp + 0xae]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x101312d4
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x101312a4
push edi
lea ecx, [esp + 0x2000]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xc70]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x2e4]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1ffc]
jmp 0x10131454
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x3404]
call fcn.100cab10
test al, al
je 0x10131459
lea eax, [esp + 0x1354]
push eax
lea ecx, [esp + 0xaf]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x101313d0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x101313a0
push edi
lea ecx, [esp + 0x2018]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xc60]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x2ec]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x2014]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x3428], 0
je case.0x10131483.0
mov ecx, dword [eax + 0x342c]
add eax, 0x342c
cmp ecx, 3
ja case.0x10131483.0
jmp dword [ecx*4 + 0x10132d48]
mov ecx, eax
call fcn.100cac70
jmp 0x10131496
mov al, byte [eax + 0x20]
test al, al
je case.0x10131483.0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x342c]
call fcn.100cafa0
test al, al
je 0x10131689
lea eax, [esp + 0x14a4]
push eax
lea ecx, [esp + 0xb0]
call fcn.10133150
mov edi, eax
cmp byte [edi + 9], 0
je 0x10131510
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xa
jl 0x101314e0
push edi
lea ecx, [esp + 0x2030]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xc50]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x2f4]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x202c]
call fcn.100020d0
lea eax, [esp + 0xf9c]
push eax
lea ecx, [esp + 0xb1]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x10131600
xor ecx, ecx
mov dword [esp + 8], ecx
nop word [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x101315d0
push edi
lea ecx, [esp + 0x2048]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xad0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x2fc]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x2044]
jmp 0x10131964
lea eax, [esp + 0x1474]
push eax
lea ecx, [esp + 0xb2]
call fcn.10133150
mov edi, eax
cmp byte [edi + 9], 0
je 0x101316e0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xa
jl 0x101316b0
push edi
lea ecx, [esp + 0x2060]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xc30]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x304]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x205c]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x342c]
call fcn.100cac70
test al, al
je 0x1013186d
lea eax, [esp + 0x11f4]
push eax
lea ecx, [esp + 0xb3]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x101317e4
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x101317b4
push edi
lea ecx, [esp + 0x2078]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xc20]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x30c]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x2074]
jmp 0x10131964
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x342c]
call fcn.100cab10
test al, al
je 0x10131969
lea eax, [esp + 0x13e4]
push eax
lea ecx, [esp + 0xb4]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x101318e0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x101318b0
push edi
lea ecx, [esp + 0x2090]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xc10]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x314]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x208c]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x3450], 0
je case.0x10131993.0
mov ecx, dword [eax + 0x3458]
add eax, 0x3458
cmp ecx, 3
ja case.0x10131993.0
jmp dword [ecx*4 + 0x10132d58]
mov ecx, eax
call fcn.100cac70
jmp 0x101319a6
mov al, byte [eax + 0x20]
test al, al
je case.0x10131993.0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x3458]
call fcn.100cafa0
test al, al
je 0x10131b99
lea eax, [esp + 0x1468]
push eax
lea ecx, [esp + 0xb5]
call fcn.10133170
mov edi, eax
cmp byte [edi + 9], 0
je 0x10131a20
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xa
jl 0x101319f0
push edi
lea ecx, [esp + 0x20a8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xc00]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x31c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x20a4]
call fcn.100020d0
lea eax, [esp + 0xfa4]
push eax
lea ecx, [esp + 0xb6]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x10131b10
xor ecx, ecx
mov dword [esp + 8], ecx
nop word [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x10131ae0
push edi
lea ecx, [esp + 0x20c0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xbf0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x324]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x20bc]
jmp 0x10131e74
lea eax, [esp + 0x145c]
push eax
lea ecx, [esp + 0xb7]
call fcn.10133170
mov edi, eax
cmp byte [edi + 9], 0
je 0x10131bf0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xa
jl 0x10131bc0
push edi
lea ecx, [esp + 0x20d8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xbe0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x32c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x20d4]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x3458]
call fcn.100cac70
test al, al
je 0x10131d7d
lea eax, [esp + 0x11fc]
push eax
lea ecx, [esp + 0xb8]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x10131cf4
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x10131cc4
push edi
lea ecx, [esp + 0x20f0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xbd0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x334]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x20ec]
jmp 0x10131e74
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x3458]
call fcn.100cab10
test al, al
je 0x10131e79
lea eax, [esp + 0x13d8]
push eax
lea ecx, [esp + 0xb9]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x10131df0
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x10131dc0
push edi
lea ecx, [esp + 0x2108]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xbc0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x33c]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x2104]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x350c], 0
je case.0x10131ea3.0
mov ecx, dword [eax + 0x3514]
add eax, 0x3514
cmp ecx, 3
ja case.0x10131ea3.0
jmp dword [ecx*4 + 0x10132d68]
mov ecx, eax
call fcn.100cac70
jmp 0x10131eb6
mov al, byte [eax + 0x20]
test al, al
je case.0x10131ea3.0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x3514]
call fcn.100cafa0
test al, al
je 0x101320a9
lea eax, [esp + 0x1450]
push eax
lea ecx, [esp + 0xba]
call fcn.10133190
mov edi, eax
cmp byte [edi + 9], 0
je 0x10131f30
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xa
jl 0x10131f00
push edi
lea ecx, [esp + 0x2120]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xbb0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x344]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x211c]
call fcn.100020d0
lea eax, [esp + 0x100c]
push eax
lea ecx, [esp + 0xbb]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x10132020
xor ecx, ecx
mov dword [esp + 8], ecx
nop word [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x10131ff0
push edi
lea ecx, [esp + 0x2138]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xba0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x34c]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x2134]
jmp 0x10132384
lea eax, [esp + 0x1444]
push eax
lea ecx, [esp + 0xbc]
call fcn.10133190
mov edi, eax
cmp byte [edi + 9], 0
je 0x10132100
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xa
jl 0x101320d0
push edi
lea ecx, [esp + 0x2150]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xb90]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x354]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x214c]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x3514]
call fcn.100cac70
test al, al
je 0x1013228d
lea eax, [esp + 0x1204]
push eax
lea ecx, [esp + 0xbd]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x10132204
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x101321d4
push edi
lea ecx, [esp + 0x2168]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xb80]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x35c]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x2164]
jmp 0x10132384
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x3514]
call fcn.100cab10
test al, al
je 0x10132389
lea eax, [esp + 0x13cc]
push eax
lea ecx, [esp + 0xbe]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x10132300
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x101322d0
push edi
lea ecx, [esp + 0x2180]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xb70]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x364]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x217c]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x35ad], 0
je case.0x101323b3.0
mov ecx, dword [eax + 0x36c0]
add eax, 0x36c0
cmp ecx, 3
ja case.0x101323b3.0
jmp dword [ecx*4 + 0x10132d78]
mov ecx, eax
call fcn.100cac70
jmp 0x101323c6
mov al, byte [eax + 0x20]
test al, al
je case.0x101323b3.0
mov ecx, dword [0x10224ca0]
lea ecx, [ecx + 0x36c0]
call fcn.100cafa0
test al, al
jne case.0x101323b3.0
lea eax, [esp + 0x14d4]
push eax
lea ecx, [esp + 0xbf]
call fcn.101331b0
mov edi, eax
cmp byte [edi + 0xa], 0
je 0x10132440
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xb
jl 0x10132410
push edi
lea ecx, [esp + 0x2198]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xb60]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x36c]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x2194]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x36c0]
call fcn.100cac70
test al, al
je 0x101325cd
lea eax, [esp + 0x120c]
push eax
lea ecx, [esp + 0xc0]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x10132544
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x10132514
push edi
lea ecx, [esp + 0x1520]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xb50]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x374]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x151c]
jmp 0x101326c4
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x36c0]
call fcn.100cab10
test al, al
je 0x101326c9
lea eax, [esp + 0x13c0]
push eax
lea ecx, [esp + 0xc1]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x10132640
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x10132610
push edi
lea ecx, [esp + 0x1538]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xb40]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x37c]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1534]
call fcn.100020d0
inc dword [esp + 0xc]
mov eax, dword [0x10224ca0]
cmp byte [eax + 0x33d9], 0
je case.0x101326f3.0
mov ecx, dword [eax + 0x33dc]
add eax, 0x33dc
cmp ecx, 3
ja case.0x101326f3.0
jmp dword [ecx*4 + 0x10132d88]
mov ecx, eax
call fcn.100cac70
jmp 0x10132706
mov al, byte [eax + 0x20]
test al, al
je case.0x101326f3.0
mov ecx, dword [0x10224ca0]
lea ecx, [ecx + 0x33dc]
call fcn.100cafa0
test al, al
je 0x101328f9
lea eax, [esp + 0x1438]
push eax
lea ecx, [esp + 0xc2]
call fcn.101331e0
mov edi, eax
cmp byte [edi + 9], 0
je 0x10132780
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xa
jl 0x10132750
push edi
lea ecx, [esp + 0x1550]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xb30]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x384]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x24], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x154c]
call fcn.100020d0
lea eax, [esp + 0xfb4]
push eax
lea ecx, [esp + 0xc3]
call fcn.10132e40
mov edi, eax
cmp byte [edi + 4], 0
je 0x10132870
xor ecx, ecx
mov dword [esp + 8], ecx
nop word [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 5
jl 0x10132840
push edi
lea ecx, [esp + 0x1598]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xb20]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x38c]
subss xmm1, dword [esp + 0x34]
movss xmm2, dword [esp + 0x24]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x1594]
jmp 0x10132bd4
lea eax, [esp + 0x142c]
push eax
lea ecx, [esp + 0xc4]
call fcn.101331e0
mov edi, eax
cmp byte [edi + 9], 0
je 0x10132950
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 0xa
jl 0x10132920
push edi
lea ecx, [esp + 0x15b0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xb10]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movd xmm0, dword [esp + 0xc]
lea ecx, [esp + 0x394]
movss xmm1, dword [esp + 0x10]
mov esi, eax
addss xmm1, dword [0x101f8960]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101f89a4]
addss xmm0, dword [esp + 0x20]
movaps xmm2, xmm0
movss dword [esp + 0x18], xmm0
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x15ac]
call fcn.100020d0
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x33dc]
call fcn.100cac70
test al, al
je 0x10132add
lea eax, [esp + 0x1214]
push eax
lea ecx, [esp + 0xc5]
call fcn.10132dc0
mov edi, eax
cmp byte [edi + 6], 0
je 0x10132a54
xor ecx, ecx
mov dword [esp + 8], ecx
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 7
jl 0x10132a24
push edi
lea ecx, [esp + 0x15c8]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xb00]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x39c]
subss xmm1, dword [esp + 0x28]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x15c4]
jmp 0x10132bd4
mov ecx, 0x10224ca0
call fcn.10035f00
lea ecx, [eax + 0x33dc]
call fcn.100cab10
test al, al
je case.0x101326f3.0
lea eax, [esp + 0x13b4]
push eax
lea ecx, [esp + 0xc6]
call fcn.10132df0
mov edi, eax
cmp byte [edi + 8], 0
je 0x10132b50
xor ecx, ecx
mov dword [esp + 8], ecx
nop dword [eax]
mov eax, 0x2f684bdb
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, 0x36
sub cl, al
add cl, 0x32
xor byte [esi], cl
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
cmp ecx, 9
jl 0x10132b20
push edi
lea ecx, [esp + 0x15e0]
call fcn.10020ac0
mov ecx, eax
call fcn.10006650
movss xmm1, dword [0x101f87f8]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0xaf0]
call fcn.100d1890
mov ecx, eax
call fcn.100d18b0
movss xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x3a4]
subss xmm1, dword [esp + 0x40]
movss xmm2, dword [esp + 0x18]
mov esi, eax
subss xmm1, dword [0x101f8960]
addss xmm1, dword [0x101f8aa4]
call fcn.1009d8a0
mov ecx, dword [esp + 0x14]
push 0
push edi
push esi
push eax
call fcn.10165f60
lea ecx, [esp + 0x15dc]
call fcn.100020d0
call fcn.1015baf0
call fcn.1015b580
mov ecx, dword [esp + 0x221c]
pop edi
pop esi
xor ecx, esp
call fcn.1019a294
mov esp, ebp
pop ebp
ret