Function at 0x100ff1c2
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov ecx, dword [0x10216634]
sub esp, 0xcc
cmp byte [ecx + 0x3754], 0
push ebx
push esi
push edi
je 0x10101c12
movss xmm0, dword [ecx + 0x3758]
xorps xmm1, xmm1
mov edx, dword [0x10423820]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x100fcafd
movss xmm0, dword [ecx + 0x375c]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x100fcb53
or dword [edx + 0x1c64], 1
mov eax, dword [ecx + 0x3758]
mov ecx, dword [ecx + 0x375c]
mov dword [edx + 0x1c74], eax
mov dword [edx + 0x1c78], ecx
mov dword [edx + 0x1c7c], 0
mov dword [edx + 0x1c80], 0
mov dword [edx + 0x1c68], 1
mov eax, dword [0x10216634]
mov dword [eax + 0x3758], 0
mov dword [eax + 0x375c], 0
mov eax, dword [0x10216964]
mov ecx, 0xfb
mov esi, 0xc02fb
cmp byte [eax + 0xc], 0
mov dword [edx + 0x1c84], 0x43160000
cmovne esi, ecx
mov dword [edx + 0x1c88], 0
or dword [edx + 0x1c64], 2
mov dword [edx + 0x1c6c], 2
mov ecx, dword [0x10216964]
mov ecx, dword [ecx + 0xb8]
call fcn.10123260
movq xmm0, qword [0x101e4ec8]
xor ebx, ebx
mov al, byte [0x101e4ed0]
movq qword [esp + 0x2c], xmm0
mov byte [esp + 0x34], al
nop dword [eax + eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 9
jl 0x100fcbc0
lea ecx, [esp + 0x48]
call fcn.1002b3d0
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fcbf1
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
push 0
lea ecx, [esp + 0x4c]
call fcn.10006980
movss xmm0, dword [0x101ececc]
xor edx, edx
mov ecx, eax
call fcn.1011dfb0
lea ecx, [esp + 0x48]
movss dword [esp + 0x80], xmm1
movss dword [esp + 0x7c], xmm0
call fcn.10002120
movss xmm0, dword [esp + 0x80]
mulss xmm0, dword [0x101ecc48]
mov eax, dword [0x10423820]
movss xmm1, dword [0x101ecdf0]
movss dword [esp + 0x90], xmm1
xorps xmm1, xmm1
movss dword [esp + 0x60], xmm0
subss xmm0, dword [0x101ecc48]
or dword [eax + 0x1c64], 0x10
mov dword [eax + 0x1ca0], 0x43160000
movss dword [eax + 0x1ca4], xmm1
mov dword [eax + 0x1ca8], 0x43160000
movss dword [eax + 0x1cac], xmm0
mov dword [eax + 0x1cb0], 0
mov dword [eax + 0x1cb4], 0
call fcn.1011b3e0
mov eax, dword [0x101b2fec]
movq xmm0, qword [0x101b2fe4]
mov dword [esp + 0x34], eax
mov ax, word [0x101b2ff0]
mov word [esp + 0x38], ax
test ah, ah
mov eax, dword [0x10217ca4]
movq qword [esp + 0x2c], xmm0
je 0x100fce1a
xor ebx, ebx
cmp eax, 2
jl 0x100fcdf0
movaps xmm2, xmmword [0x101ed000]
mov ebx, 8
movaps xmm3, xmmword [0x101ed410]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm1, xmm3
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ed030]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
movd xmm0, dword [0x101b2fe4]
packuswb xmm1, xmm1
paddb xmm1, xmmword [str.4444444444444444]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x2c], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm1, xmm3
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
movd xmm0, dword [esp + 0x30]
packuswb xmm1, xmm1
paddb xmm1, xmmword [str.4444444444444444]
xorps xmm1, xmm0
movd dword [esp + 0x30], xmm1
nop dword [eax]
mov eax, 0x8d3dcb09
mov cl, bl
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 0xe
jl 0x100fcdf0
lea ecx, [esp + 0x48]
call fcn.1002b3d0
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fce30
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
push esi
lea ecx, [esp + 0x4c]
call fcn.10006980
xor edx, edx
mov ecx, eax
call fcn.10120b40
lea ecx, [esp + 0x48]
call fcn.10002120
call fcn.1011b3e0
mov ecx, dword [0x10423820]
sub esp, 0x18
mov edx, esp
mov edi, eax
mov dword [esp + 0x40], edi
mov ecx, dword [ecx + 0x1bdc]
movss xmm0, dword [ecx + 0xc]
movss dword [esp + 0x2c], xmm0
movss xmm0, dword [ecx + 0x10]
mov ecx, dword [0x10216634]
movss dword [esp + 0x80], xmm0
movss xmm0, dword [ecx + 0x3b30]
divss xmm0, dword [0x101ecdd0]
mov dword [esp + 0xd0], 0
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd8], 0
movss dword [esp + 0xdc], xmm0
movups xmm0, xmmword [ecx + 0x3ad4]
mov eax, dword [ecx + 0x3ae4]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], eax
mov al, byte [ecx + 0x3ae8]
mov byte [edx + 0x14], al
call fcn.100b1220
push 0xff
push 0xff
push 0xff
push 0xff
lea ecx, [esp + 0xd8]
call fcn.100c4af0
mov edx, dword [0x10216634]
sub esp, 0x18
mov ecx, esp
movups xmm0, xmmword [edx + 0x3ad4]
mov eax, dword [edx + 0x3ae4]
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], eax
mov al, byte [edx + 0x3ae8]
xorps xmm0, xmm0
mov byte [ecx + 0x14], al
call fcn.100b13a0
mov eax, dword [0x10216634]
sub esp, 0x18
mov edx, esp
movss xmm1, dword [eax + 0x3ae0]
movups xmm0, xmmword [eax + 0x3ad4]
mov ecx, dword [eax + 0x3ae4]
mulss xmm1, dword [0x101ecb34]
mov al, byte [eax + 0x3ae8]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], ecx
movaps xmm0, xmm1
mov byte [edx + 0x14], al
call fcn.100b13a0
mov edx, dword [0x10216634]
sub esp, 0x18
mov ecx, esp
movups xmm0, xmmword [edx + 0x3ad4]
mov eax, dword [edx + 0x3ae4]
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], eax
mov al, byte [edx + 0x3ae8]
mov byte [ecx + 0x14], al
call fcn.100b1220
mov dword [esp + 0x10], 2
lea ecx, [esp + 0xb8]
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
movss xmm2, dword [esp + 0x68]
movaps xmm0, xmm1
addss xmm0, dword [0x101ecdf0]
push 0
push ecx
mov dword [esp], 0x40400000
mov ecx, edi
push eax
movss dword [esp + 0x9c], xmm0
lea eax, [esp + 0x9c]
movaps xmm0, xmm2
movss dword [esp + 0x94], xmm1
addss xmm0, dword [esp + 0x6c]
push eax
lea eax, [esp + 0x98]
movss dword [esp + 0x9c], xmm2
push eax
subss xmm0, dword [0x101ecc48]
movss dword [esp + 0xa8], xmm0
call fcn.1012cb00
movq xmm0, qword [0x101e4ec8]
xor ebx, ebx
mov al, byte [0x101e4ed0]
movq qword [esp + 0x2c], xmm0
mov byte [esp + 0x34], al
nop
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 9
jl 0x100fd050
lea ecx, [esp + 0x48]
call fcn.1002b3d0
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fd081
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
lea ecx, [esp + 0xc8]
mov esi, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
xorps xmm2, xmm2
movss xmm0, dword [esp + 0x7c]
mulss xmm0, dword [0x101ecb34]
push 0
addss xmm1, dword [0x101ecdb4]
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
push esi
subss xmm1, xmm0
movss xmm0, dword [esp + 0x90]
mulss xmm0, dword [0x101ecb34]
push eax
lea eax, [esp + 0xa4]
push eax
addss xmm0, dword [esp + 0x80]
push 0
movss dword [esp + 0xac], xmm1
subss xmm0, dword [0x101ecba0]
movss dword [esp + 0xb0], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
movq xmm0, qword [str.oAYP_U_f_]
xor ebx, ebx
mov al, byte [0x101e4e6c]
movq qword [esp + 0x2c], xmm0
mov byte [esp + 0x34], al
nop dword [eax + eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 9
jl 0x100fd150
lea ecx, [esp + 0x48]
call fcn.1002b3d0
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fd181
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
push 0
lea ecx, [esp + 0x4c]
call fcn.10006980
movss xmm0, dword [0x101ececc]
xor edx, edx
mov ecx, eax
call fcn.1011dfb0
lea ecx, [esp + 0x48]
movss dword [esp + 0x94], xmm1
movss dword [esp + 0x90], xmm0
call fcn.10002120
mov eax, dword [str.o_Y_d:]
xor ebx, ebx
mov dword [esp + 0x1c], eax
mov ax, word [0x101e4f00]
mov word [esp + 0x20], ax
mov al, byte [0x101e4f02]
mov byte [esp + 0x22], al
nop
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 7
jl 0x100fd1f0
lea ecx, [esp + 0x48]
call fcn.1002b3d0
lea ecx, [esp + 0x1c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fd221
sub ecx, edx
lea eax, [esp + 0x1c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
push 0
lea ecx, [esp + 0x4c]
call fcn.10006980
movss xmm0, dword [0x101ececc]
xor edx, edx
mov ecx, eax
call fcn.1011dfb0
lea ecx, [esp + 0x48]
movss dword [esp + 0x88], xmm0
call fcn.10002120
mov eax, dword [0x101e4e28]
xor ebx, ebx
mov dword [esp + 0x60], eax
mov al, byte [0x101e4e2c]
mov byte [esp + 0x64], al
nop dword [eax + eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x60], cl
inc ebx
cmp ebx, 5
jl 0x100fd280
lea ecx, [esp + 0x48]
call fcn.1002b3d0
lea ecx, [esp + 0x60]
mov ebx, 2
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fd2b6
sub ecx, edx
lea eax, [esp + 0x60]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
push 0
lea ecx, [esp + 0x4c]
call fcn.10006980
movss xmm0, dword [0x101ececc]
xor edx, edx
mov ecx, eax
call fcn.1011dfb0
lea ecx, [esp + 0x48]
movss dword [esp + 0x80], xmm1
movss dword [esp + 0x7c], xmm0
call fcn.10002120
mov eax, dword [0x10216634]
add eax, 0xe5c
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x100fd317.3676
jmp dword [ecx*4 + 0x10101c1c]
mov ecx, eax
call fcn.100be310
jmp 0x100fd32a
mov al, byte [eax + 0x20]
test al, al
je case.0x100fd317.3676
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xe5c]
call fcn.100be5f0
xor ebx, ebx
test al, al
je 0x100fd4f1
mov ax, word [0x101e52a0]
movq xmm0, qword [str.pZCUT_]
mov word [esp + 0x34], ax
mov al, byte [0x101e52a2]
movq qword [esp + 0x2c], xmm0
mov byte [esp + 0x36], al
nop
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 0xb
jl 0x100fd370
lea ecx, [esp + 0x48]
call fcn.1002b3d0
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fd3a1
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x28], xmm0
movss xmm0, dword [esp + 0x74]
addss xmm0, dword [0x101ecd5c]
push esi
push eax
lea eax, [esp + 0x30]
push eax
push 0
movss dword [esp + 0x7c], xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov eax, dword [0x101e4e28]
xor ebx, ebx
mov dword [esp + 0x3c], eax
mov al, byte [0x101e4e2c]
mov byte [esp + 0x40], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x3c], cl
inc ebx
cmp ebx, 5
jl 0x100fd443
lea ecx, [esp + 0x48]
call fcn.1002b3d0
lea ecx, [esp + 0x3c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fd474
sub ecx, edx
lea eax, [esp + 0x3c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
subss xmm0, dword [esp + 0x7c]
push 0
push ecx
mov dword [esp], 0
push 0
subss xmm0, dword [0x101ecce0]
push esi
push eax
lea eax, [esp + 0x30]
addss xmm0, dword [0x101ecdf0]
movss dword [esp + 0x30], xmm0
movss xmm0, dword [esp + 0x74]
movss dword [esp + 0x34], xmm0
jmp 0x100fd6bc
mov ax, word [0x101e52a0]
movq xmm0, qword [str.pZCUT_]
mov word [esp + 0x34], ax
mov al, byte [0x101e52a2]
movq qword [esp + 0x2c], xmm0
mov byte [esp + 0x36], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 0xb
jl 0x100fd513
lea ecx, [esp + 0x48]
call fcn.1002b3d0
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fd544
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x28], xmm0
movss xmm0, dword [esp + 0x74]
addss xmm0, dword [0x101ecd5c]
push esi
push eax
lea eax, [esp + 0x30]
push eax
push 0
movss dword [esp + 0x58], xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xe5c]
call fcn.100be310
test al, al
je 0x100fd6d7
mov eax, dword [str.o_Y_d:]
xor ebx, ebx
mov dword [esp + 0x1c], eax
mov ax, word [0x101e4f00]
mov word [esp + 0x20], ax
mov al, byte [0x101e4f02]
mov byte [esp + 0x22], al
nop word [eax + eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 7
jl 0x100fd610
lea ecx, [esp + 0x48]
call fcn.1002b3d0
lea ecx, [esp + 0x1c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fd641
sub ecx, edx
lea eax, [esp + 0x1c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
subss xmm0, dword [esp + 0x88]
movss xmm2, dword [esp + 0x3c]
push 0
push ecx
mov dword [esp], 0
subss xmm0, dword [0x101ecce0]
push 0
push esi
push eax
movss dword [esp + 0x78], xmm2
lea eax, [esp + 0x74]
addss xmm0, dword [0x101ecdf0]
movss dword [esp + 0x74], xmm0
push eax
push 0
xorps xmm2, xmm2
mov ecx, edi
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
jmp 0x100fd7a5
mov eax, dword [0x10216634]
cmp byte [eax + 0xe7c], 0
je 0x100fd7a5
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x100fd723
xor ebx, ebx
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x100fd701
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x1c]
subss xmm1, dword [esp + 0x90]
movss xmm2, dword [esp + 0x3c]
mov esi, eax
subss xmm1, dword [0x101ecce0]
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
push 0
push edi
mov edi, dword [esp + 0x30]
mov ecx, edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0x48]
call fcn.10002120
mov ebx, 3
mov dword [esp + 0x10], ebx
mov eax, dword [0x10216634]
add eax, 0xe80
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x100fd7c3.3712
jmp dword [ecx*4 + 0x10101c2c]
mov ecx, eax
call fcn.100be310
jmp 0x100fd7d6
mov al, byte [eax + 0x20]
test al, al
je case.0x100fd7c3.3712
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xe80]
call fcn.100be5f0
xor ebx, ebx
test al, al
je 0x100fd9b3
mov ax, word [0x101e5200]
movq xmm0, qword [0x101e51f8]
mov word [esp + 0x34], ax
mov al, byte [0x101e5202]
movq qword [esp + 0x2c], xmm0
mov byte [esp + 0x36], al
nop dword [eax + eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 0xb
jl 0x100fd820
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fd855
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x28], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push esi
push eax
lea eax, [esp + 0x30]
push eax
push 0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x84]
movss dword [esp + 0x7c], xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov eax, dword [0x101e4e28]
xor ebx, ebx
mov dword [esp + 0x3c], eax
mov al, byte [0x101e4e2c]
mov byte [esp + 0x40], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x3c], cl
inc ebx
cmp ebx, 5
jl 0x100fd901
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x3c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fd936
sub ecx, edx
lea eax, [esp + 0x3c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
subss xmm0, dword [esp + 0x7c]
push 0
push ecx
mov dword [esp], 0
push 0
subss xmm0, dword [0x101ecce0]
push esi
push eax
lea eax, [esp + 0x30]
addss xmm0, dword [0x101ecdf0]
movss dword [esp + 0x30], xmm0
movss xmm0, dword [esp + 0x74]
movss dword [esp + 0x34], xmm0
jmp 0x100fdb90
mov ax, word [0x101e5200]
movq xmm0, qword [0x101e51f8]
mov word [esp + 0x34], ax
mov al, byte [0x101e5202]
movq qword [esp + 0x2c], xmm0
mov byte [esp + 0x36], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 0xb
jl 0x100fd9d5
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fda10
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x28], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push esi
push eax
lea eax, [esp + 0x30]
push eax
push 0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x84]
movss dword [esp + 0x58], xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xe80]
call fcn.100be310
test al, al
je 0x100fdbab
mov eax, dword [str.o_Y_d:]
xor ebx, ebx
mov dword [esp + 0x1c], eax
mov ax, word [0x101e4f00]
mov word [esp + 0x20], ax
mov al, byte [0x101e4f02]
mov byte [esp + 0x22], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 7
jl 0x100fdae0
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x1c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fdb15
sub ecx, edx
lea eax, [esp + 0x1c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
subss xmm0, dword [esp + 0x88]
movss xmm2, dword [esp + 0x3c]
push 0
push ecx
mov dword [esp], 0
subss xmm0, dword [0x101ecce0]
push 0
push esi
push eax
movss dword [esp + 0x78], xmm2
lea eax, [esp + 0x74]
addss xmm0, dword [0x101ecdf0]
movss dword [esp + 0x74], xmm0
push eax
push 0
xorps xmm2, xmm2
mov ecx, edi
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
jmp 0x100fdc7d
mov eax, dword [0x10216634]
cmp byte [eax + 0xea0], 0
je 0x100fdc7d
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x100fdbfb
xor ebx, ebx
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x100fdbd5
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x1c]
subss xmm1, dword [esp + 0x90]
movss xmm2, dword [esp + 0x3c]
mov esi, eax
subss xmm1, dword [0x101ecce0]
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
push 0
push edi
mov edi, dword [esp + 0x30]
mov ecx, edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0x48]
call fcn.10002120
inc ebx
mov dword [esp + 0x10], ebx
mov eax, dword [0x10216634]
add eax, 0xa70
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x100fdc97.2672
jmp dword [ecx*4 + 0x10101c3c]
mov ecx, eax
call fcn.100be310
jmp 0x100fdcaa
mov al, byte [eax + 0x20]
test al, al
je case.0x100fdc97.2672
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xa70]
call fcn.100be5f0
test al, al
je 0x100fdfa2
mov eax, dword [0x101e5310]
movq xmm0, qword [str.CSEJP]
mov dword [esp + 0x34], eax
mov al, byte [0x101e5314]
mov byte [esp + 0x38], al
xor eax, eax
cmp dword [0x10217ca4], 2
movq qword [esp + 0x2c], xmm0
mov dword [esp + 0x3c], eax
jl 0x100fde01
movaps xmm2, xmmword [0x101ed000]
movaps xmm4, xmmword [0x101ed410]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [str.4444444444444444]
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ed030]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.CSEJP]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x2c], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x3c], eax
movd xmm0, dword [esp + 0x30]
xorps xmm1, xmm0
movd dword [esp + 0x30], xmm1
mov ebx, dword [esp + 0x3c]
mov eax, 0x8d3dcb09
mov cl, bl
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 0xd
jl 0x100fde05
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fde43
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x28], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push esi
push eax
lea eax, [esp + 0x30]
push eax
push 0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x84]
movss dword [esp + 0x7c], xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov eax, dword [0x101e4e28]
xor ebx, ebx
mov dword [esp + 0x3c], eax
mov al, byte [0x101e4e2c]
mov byte [esp + 0x40], al
nop
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x3c], cl
inc ebx
cmp ebx, 5
jl 0x100fdef0
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x3c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fdf25
sub ecx, edx
lea eax, [esp + 0x3c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
subss xmm0, dword [esp + 0x7c]
push 0
push ecx
mov dword [esp], 0
push 0
subss xmm0, dword [0x101ecce0]
push esi
push eax
lea eax, [esp + 0x30]
addss xmm0, dword [0x101ecdf0]
movss dword [esp + 0x30], xmm0
movss xmm0, dword [esp + 0x74]
movss dword [esp + 0x34], xmm0
jmp 0x100fe2a0
mov eax, dword [0x101e5310]
movq xmm0, qword [str.CSEJP]
mov dword [esp + 0x34], eax
mov al, byte [0x101e5314]
mov byte [esp + 0x38], al
xor eax, eax
cmp dword [0x10217ca4], 2
movq qword [esp + 0x2c], xmm0
mov dword [esp + 0x3c], eax
jl 0x100fe0d8
movaps xmm2, xmmword [0x101ed000]
movaps xmm4, xmmword [0x101ed410]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [str.4444444444444444]
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ed030]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.CSEJP]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x2c], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x3c], eax
movd xmm0, dword [esp + 0x30]
xorps xmm1, xmm0
movd dword [esp + 0x30], xmm1
mov ebx, dword [esp + 0x3c]
nop dword [eax]
mov eax, 0x8d3dcb09
mov cl, bl
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 0xd
jl 0x100fe0e0
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fe120
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x28], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push esi
push eax
lea eax, [esp + 0x30]
push eax
push 0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x84]
movss dword [esp + 0x58], xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xa70]
call fcn.100be310
test al, al
je 0x100fe2bb
mov eax, dword [str.o_Y_d:]
xor ebx, ebx
mov dword [esp + 0x1c], eax
mov ax, word [0x101e4f00]
mov word [esp + 0x20], ax
mov al, byte [0x101e4f02]
mov byte [esp + 0x22], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 7
jl 0x100fe1f0
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x1c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fe225
sub ecx, edx
lea eax, [esp + 0x1c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
subss xmm0, dword [esp + 0x88]
movss xmm2, dword [esp + 0x3c]
push 0
push ecx
mov dword [esp], 0
subss xmm0, dword [0x101ecce0]
push 0
push esi
push eax
movss dword [esp + 0x78], xmm2
lea eax, [esp + 0x74]
addss xmm0, dword [0x101ecdf0]
movss dword [esp + 0x74], xmm0
push eax
push 0
xorps xmm2, xmm2
mov ecx, edi
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
jmp 0x100fe38d
mov eax, dword [0x10216634]
cmp byte [eax + 0xa90], 0
je 0x100fe38d
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x100fe30b
xor ebx, ebx
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x100fe2e5
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x1c]
subss xmm1, dword [esp + 0x90]
movss xmm2, dword [esp + 0x3c]
mov esi, eax
subss xmm1, dword [0x101ecce0]
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
push 0
push edi
mov edi, dword [esp + 0x30]
mov ecx, edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0x48]
call fcn.10002120
inc ebx
mov dword [esp + 0x10], ebx
mov eax, dword [0x10216634]
add eax, 0xa94
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x100fe3a7.2708
jmp dword [ecx*4 + 0x10101c4c]
mov ecx, eax
call fcn.100be310
jmp 0x100fe3ba
mov al, byte [eax + 0x20]
test al, al
je case.0x100fe3a7.2708
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xa94]
call fcn.100be5f0
xor ebx, ebx
test al, al
je 0x100fe593
mov ax, word [0x101e50c4]
movq xmm0, qword [str.rZDT_]
mov word [esp + 0x34], ax
mov al, byte [0x101e50c6]
movq qword [esp + 0x2c], xmm0
mov byte [esp + 0x36], al
nop
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 0xb
jl 0x100fe400
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fe435
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x28], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push esi
push eax
lea eax, [esp + 0x30]
push eax
push 0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x84]
movss dword [esp + 0x7c], xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov eax, dword [0x101e4e28]
xor ebx, ebx
mov dword [esp + 0x3c], eax
mov al, byte [0x101e4e2c]
mov byte [esp + 0x40], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x3c], cl
inc ebx
cmp ebx, 5
jl 0x100fe4e1
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x3c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fe516
sub ecx, edx
lea eax, [esp + 0x3c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
subss xmm0, dword [esp + 0x7c]
push 0
push ecx
mov dword [esp], 0
push 0
subss xmm0, dword [0x101ecce0]
push esi
push eax
lea eax, [esp + 0x30]
addss xmm0, dword [0x101ecdf0]
movss dword [esp + 0x30], xmm0
movss xmm0, dword [esp + 0x74]
movss dword [esp + 0x34], xmm0
jmp 0x100fe770
mov ax, word [0x101e50c4]
movq xmm0, qword [str.rZDT_]
mov word [esp + 0x34], ax
mov al, byte [0x101e50c6]
movq qword [esp + 0x2c], xmm0
mov byte [esp + 0x36], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 0xb
jl 0x100fe5b5
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fe5f0
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x28], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push esi
push eax
lea eax, [esp + 0x30]
push eax
push 0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x84]
movss dword [esp + 0x58], xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xa94]
call fcn.100be310
test al, al
je 0x100fe78b
mov eax, dword [str.o_Y_d:]
xor ebx, ebx
mov dword [esp + 0x1c], eax
mov ax, word [0x101e4f00]
mov word [esp + 0x20], ax
mov al, byte [0x101e4f02]
mov byte [esp + 0x22], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 7
jl 0x100fe6c0
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x1c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fe6f5
sub ecx, edx
lea eax, [esp + 0x1c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
subss xmm0, dword [esp + 0x88]
movss xmm2, dword [esp + 0x3c]
push 0
push ecx
mov dword [esp], 0
subss xmm0, dword [0x101ecce0]
push 0
push esi
push eax
movss dword [esp + 0x78], xmm2
lea eax, [esp + 0x74]
addss xmm0, dword [0x101ecdf0]
movss dword [esp + 0x74], xmm0
push eax
push 0
xorps xmm2, xmm2
mov ecx, edi
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
jmp 0x100fe85d
mov eax, dword [0x10216634]
cmp byte [eax + 0xab4], 0
je 0x100fe85d
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x100fe7db
xor ebx, ebx
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x100fe7b5
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x1c]
subss xmm1, dword [esp + 0x90]
movss xmm2, dword [esp + 0x3c]
mov esi, eax
subss xmm1, dword [0x101ecce0]
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
push 0
push edi
mov edi, dword [esp + 0x30]
mov ecx, edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0x48]
call fcn.10002120
inc ebx
mov dword [esp + 0x10], ebx
mov eax, dword [0x10216634]
add eax, 0xdcc
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x100fe877.3532
jmp dword [ecx*4 + 0x10101c5c]
mov ecx, eax
call fcn.100be310
jmp 0x100fe88a
mov al, byte [eax + 0x20]
test al, al
je case.0x100fe877.3532
imul ecx, dword [0x102226f4], 0x54
mov eax, dword [0x10216634]
cmp byte [ecx + eax + 0xb40], 0
je case.0x100fe877.3532
lea ecx, [eax + 0xdcc]
call fcn.100be5f0
test al, al
je 0x100fea89
mov ax, word [0x101b1ce4]
movq xmm0, qword [str.rGSRKM_UX]
movq qword [esp + 0x2c], xmm0
mov word [esp + 0x34], ax
test ah, ah
je 0x100fe905
xor ebx, ebx
nop
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 0xa
jl 0x100fe8e0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x48]
call fcn.1002b3d0
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fe915
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x28], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push esi
push eax
lea eax, [esp + 0x30]
push eax
push 0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x84]
movss dword [esp + 0x7c], xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov eax, dword [0x101e4e28]
xor ebx, ebx
mov dword [esp + 0x3c], eax
mov al, byte [0x101e4e2c]
mov byte [esp + 0x40], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x3c], cl
inc ebx
cmp ebx, 5
jl 0x100fe9c1
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x3c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fe9f6
sub ecx, edx
lea eax, [esp + 0x3c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
subss xmm0, dword [esp + 0x7c]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
subss xmm0, dword [0x101ecce0]
push esi
push eax
lea eax, [esp + 0x30]
push eax
addss xmm0, dword [0x101ecdf0]
push 0
movss dword [esp + 0x38], xmm0
movss xmm0, dword [esp + 0x7c]
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
jmp 0x100fed08
mov ax, word [0x101b1ce4]
movq xmm0, qword [str.rGSRKM_UX]
movq qword [esp + 0x2c], xmm0
mov word [esp + 0x34], ax
test ah, ah
je 0x100fead5
xor ebx, ebx
nop dword [eax + eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 0xa
jl 0x100feab0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x48]
call fcn.1002b3d0
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100feae5
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x28], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push esi
push eax
lea eax, [esp + 0x30]
push eax
push 0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x84]
movss dword [esp + 0x58], xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xdcc]
call fcn.100be310
test al, al
je 0x100fec27
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101d40
mov edi, eax
cmp byte [edi + 6], 0
je 0x100febd6
xor ebx, ebx
nop
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 7
jl 0x100febb0
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x60]
subss xmm1, dword [esp + 0x88]
jmp 0x100fecd2
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0xdcc]
call fcn.100be060
test al, al
je 0x100fed08
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x100fec86
xor ebx, ebx
nop dword [eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x100fec60
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x1c]
subss xmm1, dword [esp + 0x90]
subss xmm1, dword [0x101ecce0]
movss xmm2, dword [esp + 0x3c]
mov esi, eax
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
push 0
push edi
mov edi, dword [esp + 0x30]
mov ecx, edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0x48]
call fcn.10002120
inc ebx
mov dword [esp + 0x10], ebx
mov eax, dword [0x10216634]
cmp byte [eax + 0xae4], 0
je case.0x100ffc30.3460
mov ecx, dword [eax + 0xd60]
add eax, 0xd60
cmp ecx, 3
ja case.0x100fed33.0
jmp dword [ecx*4 + 0x10101c6c]
mov ecx, eax
call fcn.100be310
jmp 0x100fed46
mov al, byte [eax + 0x20]
test al, al
je case.0x100fed33.0
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xd60]
call fcn.100be5f0
xor ebx, ebx
test al, al
je 0x100fef29
movq xmm0, qword [str.vTUOXH__]
mov al, byte [0x101e4e78]
movq qword [esp + 0x2c], xmm0
mov byte [esp + 0x34], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 9
jl 0x100fed80
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fedb5
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x28], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push esi
push eax
lea eax, [esp + 0x30]
push eax
push 0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x84]
movss dword [esp + 0x7c], xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov eax, dword [0x101e4e28]
xor ebx, ebx
mov dword [esp + 0x3c], eax
mov al, byte [0x101e4e2c]
mov byte [esp + 0x40], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x3c], cl
inc ebx
cmp ebx, 5
jl 0x100fee61
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x3c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fee96
sub ecx, edx
lea eax, [esp + 0x3c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
subss xmm0, dword [esp + 0x7c]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
subss xmm0, dword [0x101ecce0]
push esi
push eax
lea eax, [esp + 0x30]
push eax
addss xmm0, dword [0x101ecdf0]
push 0
movss dword [esp + 0x38], xmm0
movss xmm0, dword [esp + 0x7c]
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
jmp 0x100ff198
movq xmm0, qword [str.vTUOXH__]
mov al, byte [0x101e4e78]
movq qword [esp + 0x2c], xmm0
mov byte [esp + 0x34], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x2c], cl
inc ebx
cmp ebx, 9
jl 0x100fef40
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x2c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fef75
sub ecx, edx
lea eax, [esp + 0x2c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x28], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push esi
push eax
lea eax, [esp + 0x30]
push eax
push 0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x84]
movss dword [esp + 0x58], xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xd60]
call fcn.100be310
test al, al
je 0x100ff0b7
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101d40
mov edi, eax
cmp byte [edi + 6], 0
je 0x100ff066
xor ebx, ebx
nop
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 7
jl 0x100ff040
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x60]
subss xmm1, dword [esp + 0x88]
jmp 0x100ff162
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0xd60]
call fcn.100be060
test al, al
je 0x100ff198
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x100ff116
xor ebx, ebx
nop dword [eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x100ff0f0
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x1c]
subss xmm1, dword [esp + 0x90]
subss xmm1, dword [0x101ecce0]
movss xmm2, dword [esp + 0x3c]
mov esi, eax
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
push 0
push edi
mov edi, dword [esp + 0x30]
mov ecx, edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0x48]
call fcn.10002120
inc ebx
mov dword [esp + 0x10], ebx
mov eax, dword [0x10216634]
add eax, 0xd3c
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x100ff1b2.3388
jmp dword [ecx*4 + 0x10101c7c]
mov ecx, eax
call fcn.100be310
jmp 0x100ff1c5
mov al, byte [eax + 0x20]
test al, al
je case.0x100ff1b2.3388
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xd3c]
call fcn.100be5f0
test al, al
je 0x100ff4bf
cmp byte [0x101e4ea7], 0
mov ecx, dword [str.rZD_YK_]
mov edx, dword [0x101e4ea4]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edx
je 0x100ff33e
cmp dword [0x10217ca4], 2
jl 0x100ff30a
movaps xmm2, xmmword [0x101ed000]
movaps xmm4, xmmword [0x101ed410]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [str.4444444444444444]
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ed030]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, ecx
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x1c], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, edx
xorps xmm1, xmm0
movd dword [esp + 0x20], xmm1
jmp 0x100ff33e
xor ebx, ebx
nop dword [eax]
mov eax, 0x8d3dcb09
mov cl, bl
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 8
jl 0x100ff310
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x48]
call fcn.1002b3d0
lea ecx, [esp + 0x1c]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ff350
sub ecx, edx
lea eax, [esp + 0x1c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x48], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push esi
push eax
lea eax, [esp + 0x50]
push eax
push 0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x84]
movss dword [esp + 0x7c], xmm0
movss dword [esp + 0x5c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov eax, dword [0x101e4e28]
xor ebx, ebx
mov dword [esp + 0x3c], eax
mov al, byte [0x101e4e2c]
mov byte [esp + 0x40], al
nop dword [eax]
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x3c], cl
inc ebx
cmp ebx, 5
jl 0x100ff400
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x3c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ff435
sub ecx, edx
lea eax, [esp + 0x3c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
subss xmm0, dword [esp + 0x7c]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
subss xmm0, dword [0x101ecce0]
push esi
push eax
lea eax, [esp + 0x30]
push eax
addss xmm0, dword [0x101ecdf0]
push 0
movss dword [esp + 0x38], xmm0
movss xmm0, dword [esp + 0x7c]
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
jmp 0x100ff81d
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101d70
mov edi, eax
cmp byte [edi + 7], 0
je 0x100ff60f
cmp dword [0x10217ca4], 2
jl 0x100ff5da
movaps xmm2, xmmword [0x101ed000]
movaps xmm4, xmmword [0x101ed410]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [str.4444444444444444]
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ed030]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
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
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
jmp 0x100ff60f
xor ebx, ebx
nop dword [eax]
mov eax, 0x8d3dcb09
lea esi, [edi + ebx]
imul ebx
mov cl, bl
add edx, ebx
inc ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 8
jl 0x100ff5e0
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x60]
addss xmm1, dword [0x101ecce0]
movd xmm0, ebx
mov esi, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x68]
movaps xmm2, xmm0
movss dword [esp + 0x3c], xmm0
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0x48]
call fcn.10002120
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0xd3c]
call fcn.100be310
test al, al
je 0x100ff747
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101d40
mov edi, eax
cmp byte [edi + 6], 0
je 0x100ff6f6
xor ebx, ebx
nop dword [eax + eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 7
jl 0x100ff6d0
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x60]
subss xmm1, dword [esp + 0x88]
jmp 0x100ff7f2
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0xd3c]
call fcn.100be060
test al, al
je 0x100ff826
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x100ff7a6
xor ebx, ebx
nop dword [eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x100ff780
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x1c]
subss xmm1, dword [esp + 0x90]
subss xmm1, dword [0x101ecce0]
movss xmm2, dword [esp + 0x3c]
mov esi, eax
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0x48]
call fcn.10002120
inc ebx
mov dword [esp + 0x10], ebx
mov eax, dword [0x10216634]
add eax, 0xda8
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x100ff840.3496
jmp dword [ecx*4 + 0x10101c8c]
mov ecx, eax
call fcn.100be310
jmp 0x100ff853
mov al, byte [eax + 0x20]
test al, al
je case.0x100ff840.3496
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xda8]
call fcn.100be5f0
test al, al
je 0x100ff9cb
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101d90
mov edi, eax
cmp byte [edi + 4], 0
je 0x100ff8b6
xor ebx, ebx
nop dword [eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 5
jl 0x100ff890
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x2c]
addss xmm1, dword [0x101ecce0]
movd xmm0, ebx
mov esi, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x68]
movaps xmm2, xmm0
movss dword [esp + 0x60], xmm0
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0x48]
call fcn.10002120
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101db0
mov edi, eax
cmp byte [edi + 4], 0
je 0x100ff97b
xor ebx, ebx
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 5
jl 0x100ff955
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x7c]
movss xmm2, dword [esp + 0x60]
jmp 0x100ffbe4
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d90
mov edi, eax
cmp byte [edi + 4], 0
je 0x100ffa09
xor ebx, ebx
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 5
jl 0x100ff9e3
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x2c]
addss xmm1, dword [0x101ecce0]
movd xmm0, ebx
mov esi, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x68]
movaps xmm2, xmm0
movss dword [esp + 0x3c], xmm0
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0x48]
call fcn.10002120
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0xda8]
call fcn.100be310
test al, al
je 0x100ffb38
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d40
mov edi, eax
cmp byte [edi + 6], 0
je 0x100ffaeb
xor ebx, ebx
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 7
jl 0x100ffac5
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x88]
jmp 0x100ffbde
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0xda8]
call fcn.100be060
test al, al
je 0x100ffc16
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x100ffb96
xor ebx, ebx
nop dword [eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x100ffb70
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x90]
movss xmm2, dword [esp + 0x3c]
subss xmm1, dword [0x101ecce0]
lea ecx, [esp + 0x2c]
mov esi, eax
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0x48]
call fcn.10002120
inc ebx
mov dword [esp + 0x10], ebx
mov eax, dword [0x10216634]
add eax, 0xd84
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x100ffc30.3460
jmp dword [ecx*4 + 0x10101c9c]
mov ecx, eax
call fcn.100be310
jmp 0x100ffc43
mov al, byte [eax + 0x20]
test al, al
je case.0x100ffc30.3460
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xd84]
call fcn.100be5f0
lea ecx, [esp + 0xf]
test al, al
je 0x100ffdbb
lea eax, [esp + 0x3c]
push eax
call fcn.10101dd0
mov edi, eax
cmp byte [edi + 5], 0
je 0x100ffca6
xor ebx, ebx
nop dword [eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 6
jl 0x100ffc80
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x2c]
addss xmm1, dword [0x101ecce0]
movd xmm0, ebx
mov esi, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x68]
movaps xmm2, xmm0
movss dword [esp + 0x60], xmm0
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0x48]
call fcn.10002120
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101db0
mov edi, eax
cmp byte [edi + 4], 0
je 0x100ffd6b
xor ebx, ebx
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 5
jl 0x100ffd45
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x7c]
movss xmm2, dword [esp + 0x60]
jmp 0x100fffd4
lea eax, [esp + 0x1c]
push eax
call fcn.10101dd0
mov edi, eax
cmp byte [edi + 5], 0
je 0x100ffdf6
xor ebx, ebx
nop
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 6
jl 0x100ffdd0
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x2c]
addss xmm1, dword [0x101ecce0]
movd xmm0, ebx
mov esi, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x68]
movaps xmm2, xmm0
movss dword [esp + 0x3c], xmm0
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0x48]
call fcn.10002120
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0xd84]
call fcn.100be310
test al, al
je 0x100fff25
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d40
mov edi, eax
cmp byte [edi + 6], 0
je 0x100ffed8
xor ebx, ebx
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 7
jl 0x100ffeb2
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x88]
jmp 0x100fffce
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0xd84]
call fcn.100be060
test al, al
je 0x10100006
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x100fff86
xor ebx, ebx
nop word [eax + eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x100fff60
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0x4c]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x70]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x90]
movss xmm2, dword [esp + 0x3c]
subss xmm1, dword [0x101ecce0]
lea ecx, [esp + 0x2c]
mov esi, eax
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0x48]
call fcn.10002120
inc ebx
mov dword [esp + 0x10], ebx
mov eax, dword [0x10216634]
add eax, 0xe38
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x10100020.3640
jmp dword [ecx*4 + 0x10101cac]
mov ecx, eax
call fcn.100be310
jmp 0x10100033
mov al, byte [eax + 0x20]
test al, al
je case.0x10100020.3640
imul ecx, dword [0x102226f4], 0x54
mov eax, dword [0x10216634]
cmp byte [ecx + eax + 0xb54], 0
je case.0x10100020.3640
lea ecx, [eax + 0xe38]
call fcn.100be5f0
test al, al
lea ecx, [esp + 0xf]
lea eax, [esp + 0x6c]
push eax
je 0x101002e9
call fcn.10101df0
mov edi, eax
cmp byte [edi + 0xd], 0
je 0x101001c3
xor ecx, ecx
cmp dword [0x10217ca4], 2
mov dword [esp + 0x3c], ecx
jl 0x10100190
movaps xmm2, xmmword [0x101ed000]
mov ecx, 8
movaps xmm4, xmmword [0x101ed410]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [str.4444444444444444]
psrad xmm1, 5
mov dword [esp + 0x3c], ecx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ed030]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
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
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
mov ebx, dword [esp + 0x3c]
mov eax, 0x8d3dcb09
lea esi, [edi + ebx]
imul ebx
mov cl, bl
add edx, ebx
inc ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 0xe
jl 0x10100194
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x2c]
addss xmm1, dword [0x101ecce0]
movd xmm0, ebx
mov esi, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x68]
movaps xmm2, xmm0
movss dword [esp + 0x60], xmm0
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0xa0]
call fcn.10002120
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101db0
mov edi, eax
cmp byte [edi + 4], 0
je 0x10100296
xor ebx, ebx
nop dword [eax + eax]
mov eax, 0x8d3dcb09
lea esi, [edi + ebx]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 5
jl 0x10100270
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x7c]
movss xmm2, dword [esp + 0x60]
jmp 0x10100627
call fcn.10101df0
mov edi, eax
cmp byte [edi + 0xd], 0
je 0x1010043f
xor ecx, ecx
cmp dword [0x10217ca4], 2
mov dword [esp + 0x3c], ecx
jl 0x10100408
movaps xmm2, xmmword [0x101ed000]
mov ecx, 8
movaps xmm4, xmmword [0x101ed410]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [str.4444444444444444]
psrad xmm1, 5
mov dword [esp + 0x3c], ecx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ed030]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
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
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [edi + 4]
xorps xmm1, xmm0
movd dword [edi + 4], xmm1
mov ebx, dword [esp + 0x3c]
nop dword [eax]
mov eax, 0x8d3dcb09
lea esi, [edi + ebx]
imul ebx
mov cl, bl
add edx, ebx
inc ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 0xe
jl 0x10100410
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x2c]
addss xmm1, dword [0x101ecce0]
movd xmm0, ebx
mov esi, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x68]
movaps xmm2, xmm0
movss dword [esp + 0x3c], xmm0
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0xa0]
call fcn.10002120
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0xe38]
call fcn.100be310
test al, al
je 0x10100577
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d40
mov edi, eax
cmp byte [edi + 6], 0
je 0x10100527
xor ebx, ebx
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 7
jl 0x10100501
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x88]
jmp 0x10100621
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0xe38]
call fcn.100be060
test al, al
je 0x1010065c
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x101005d6
xor ebx, ebx
nop dword [eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x101005b0
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x90]
movss xmm2, dword [esp + 0x3c]
subss xmm1, dword [0x101ecce0]
lea ecx, [esp + 0x2c]
mov esi, eax
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0xa0]
call fcn.10002120
inc ebx
mov dword [esp + 0x10], ebx
mov eax, dword [0x10216634]
add eax, 0x3644
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x10100676.13892
jmp dword [ecx*4 + 0x10101cbc]
mov ecx, eax
call fcn.100be310
jmp 0x10100689
mov al, byte [eax + 0x20]
test al, al
je case.0x10100676.13892
mov eax, dword [0x10216634]
cmp byte [eax + 0x3640], 0
je case.0x10100676.13892
lea ecx, [eax + 0x3644]
call fcn.100be5f0
test al, al
je 0x10100819
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101e20
mov edi, eax
cmp byte [edi + 9], 0
je 0x101006f6
xor ebx, ebx
nop
mov eax, 0x8d3dcb09
lea esi, [edi + ebx]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 0xa
jl 0x101006d0
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x2c]
addss xmm1, dword [0x101ecce0]
movd xmm0, ebx
mov esi, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x68]
movaps xmm2, xmm0
movss dword [esp + 0x60], xmm0
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0xa0]
call fcn.10002120
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101db0
mov edi, eax
cmp byte [edi + 4], 0
je 0x101007c6
xor ebx, ebx
nop dword [eax + eax]
mov eax, 0x8d3dcb09
lea esi, [edi + ebx]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 5
jl 0x101007a0
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x7c]
movss xmm2, dword [esp + 0x60]
jmp 0x10100a67
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0x3644]
call fcn.100be5f0
test al, al
jne case.0x10100676.13892
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101e20
mov edi, eax
cmp byte [edi + 9], 0
je 0x10100876
xor ebx, ebx
nop
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 0xa
jl 0x10100850
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x2c]
addss xmm1, dword [0x101ecce0]
movd xmm0, ebx
mov esi, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x68]
movaps xmm2, xmm0
movss dword [esp + 0x3c], xmm0
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0xa0]
call fcn.10002120
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0x3644]
call fcn.100be310
test al, al
je 0x101009b6
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d40
mov edi, eax
cmp byte [edi + 6], 0
je 0x10100966
xor ebx, ebx
nop dword [eax + eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 7
jl 0x10100940
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x88]
jmp 0x10100a61
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0x3644]
call fcn.100be060
test al, al
je 0x10100a9c
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x10100a16
xor ebx, ebx
nop dword [eax + eax]
mov eax, 0x8d3dcb09
lea esi, [edi + ebx]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x101009f0
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x90]
movss xmm2, dword [esp + 0x3c]
subss xmm1, dword [0x101ecce0]
lea ecx, [esp + 0x2c]
mov esi, eax
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0xa0]
call fcn.10002120
inc ebx
mov dword [esp + 0x10], ebx
mov eax, dword [0x10216634]
cmp byte [eax + 0x367d], 0
je case.0x10100ac7.0
mov ecx, dword [eax + 0x3680]
add eax, 0x3680
cmp ecx, 3
ja case.0x10100ac7.0
jmp dword [ecx*4 + 0x10101ccc]
mov ecx, eax
call fcn.100be310
jmp 0x10100ada
mov al, byte [eax + 0x20]
test al, al
je case.0x10100ac7.0
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0x3680]
call fcn.100be5f0
lea ecx, [esp + 0xf]
test al, al
je 0x10100c95
lea eax, [esp + 0x3c]
push eax
call fcn.100ea050
mov edi, eax
cmp byte [edi + 9], 0
je 0x10100b39
xor ebx, ebx
mov eax, 0x8d3dcb09
lea esi, [edi + ebx]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 0xa
jl 0x10100b13
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x2c]
addss xmm1, dword [0x101ecce0]
movd xmm0, ebx
mov esi, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x68]
movaps xmm2, xmm0
movss dword [esp + 0x60], xmm0
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0xa0]
call fcn.10002120
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101db0
mov edi, eax
cmp byte [edi + 4], 0
je 0x10100c06
xor ebx, ebx
nop
mov eax, 0x8d3dcb09
lea esi, [edi + ebx]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 5
jl 0x10100be0
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x7c]
movss xmm2, dword [esp + 0x60]
subss xmm1, dword [0x101ecce0]
lea ecx, [esp + 0x2c]
mov esi, eax
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
push 0
push edi
mov edi, dword [esp + 0x30]
mov ecx, edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0xa0]
call fcn.10002120
inc ebx
mov dword [esp + 0x10], ebx
jmp 0x10100ed1
lea eax, [esp + 0x1c]
push eax
call fcn.100ea050
mov edi, eax
cmp byte [edi + 9], 0
je 0x10100cd6
xor ebx, ebx
nop dword [eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 0xa
jl 0x10100cb0
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x2c]
addss xmm1, dword [0x101ecce0]
movd xmm0, ebx
mov esi, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x68]
movaps xmm2, xmm0
movss dword [esp + 0x3c], xmm0
call fcn.10036a60
push 0
push edi
mov edi, dword [esp + 0x30]
mov ecx, edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0xa0]
call fcn.10002120
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0x3680]
call fcn.100be310
test al, al
je 0x10100e1c
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d40
mov edi, eax
cmp byte [edi + 6], 0
je 0x10100dc6
xor ebx, ebx
nop word [eax + eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 7
jl 0x10100da0
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x88]
movss xmm2, dword [esp + 0x3c]
jmp 0x10100c54
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0x3680]
call fcn.100be060
test al, al
je 0x10100c8b
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x10100e77
xor ebx, ebx
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x10100e51
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x90]
movss xmm2, dword [esp + 0x3c]
jmp 0x10100c54
mov edi, dword [esp + 0x28]
mov eax, dword [0x10216634]
add eax, 0xfac
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x10100ee6.4012
jmp dword [ecx*4 + 0x10101cdc]
mov ecx, eax
call fcn.100be310
jmp 0x10100ef9
mov al, byte [eax + 0x20]
test al, al
je case.0x10100ee6.4012
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xfac]
call fcn.100be5f0
test al, al
jne case.0x10100ee6.4012
cmp byte [0x101e51e3], 0
mov eax, dword [str.qff7pPWCPwUOU_w__]
mov dword [esp + 0x3c], eax
je 0x10100fee
cmp dword [0x10217ca4], 2
jl 0x10100fbb
movaps xmm3, xmmword [0x101ed000]
movaps xmm2, xmm3
movaps xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x101ed410]
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x101ed410]
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm3
psrad xmm2, 5
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x101ed0c0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101ed130]
packuswb xmm1, xmm1
paddb xmm1, xmmword [str.4444444444444444]
movd xmm0, eax
xorps xmm1, xmm0
movd dword [esp + 0x3c], xmm1
jmp 0x10100fee
xor ebx, ebx
nop dword [eax]
mov eax, 0x8d3dcb09
mov cl, bl
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x3c], cl
inc ebx
cmp ebx, 4
jl 0x10100fc0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x48]
call fcn.1002b3d0
lea ecx, [esp + 0x3c]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10101000
sub ecx, edx
lea eax, [esp + 0x3c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x28], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push esi
push eax
lea eax, [esp + 0x30]
push eax
push 0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x84]
movss dword [esp + 0x7c], xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xfac]
call fcn.100be310
test al, al
je 0x10101146
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d40
mov edi, eax
cmp byte [edi + 6], 0
je 0x101010f6
xor ebx, ebx
nop dword [eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 7
jl 0x101010d0
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x88]
jmp 0x101011f1
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0xfac]
call fcn.100be060
test al, al
je 0x1010122e
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x101011a6
xor ebx, ebx
nop dword [eax + eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x10101180
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x90]
subss xmm1, dword [0x101ecce0]
movss xmm2, dword [esp + 0x60]
lea ecx, [esp + 0x2c]
mov esi, eax
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
push 0
push edi
mov edi, dword [esp + 0x30]
mov ecx, edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0xa0]
call fcn.10002120
inc ebx
mov dword [esp + 0x10], ebx
mov eax, dword [0x10216634]
add eax, 0xf88
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x10101248.3976
jmp dword [ecx*4 + 0x10101cec]
mov ecx, eax
call fcn.100be310
jmp 0x1010125b
mov al, byte [eax + 0x20]
test al, al
je case.0x10101248.3976
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xf88]
call fcn.100be5f0
test al, al
jne case.0x10101248.3976
mov eax, dword [str.sYY_8]
xor ebx, ebx
mov dword [esp + 0x3c], eax
mov al, byte [0x101e50b8]
mov byte [esp + 0x40], al
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x3c], cl
inc ebx
cmp ebx, 5
jl 0x10101290
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x3c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101012c5
sub ecx, edx
lea eax, [esp + 0x3c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x28], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push esi
push eax
lea eax, [esp + 0x30]
push eax
push 0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x84]
movss dword [esp + 0x7c], xmm0
movss dword [esp + 0x3c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xf88]
call fcn.100be310
test al, al
je 0x10101406
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d40
mov edi, eax
cmp byte [edi + 6], 0
je 0x101013b6
xor ebx, ebx
nop
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 7
jl 0x10101390
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x88]
jmp 0x101014b1
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0xf88]
call fcn.100be060
test al, al
je 0x101014ee
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x10101466
xor ebx, ebx
nop dword [eax + eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x10101440
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x90]
subss xmm1, dword [0x101ecce0]
movss xmm2, dword [esp + 0x60]
lea ecx, [esp + 0x2c]
mov esi, eax
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
push 0
push edi
mov edi, dword [esp + 0x30]
mov ecx, edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0xa0]
call fcn.10002120
inc ebx
mov dword [esp + 0x10], ebx
mov eax, dword [0x10216634]
add eax, 0xf24
mov ecx, dword [eax]
cmp ecx, 3
ja case.0x10101508.3876
jmp dword [ecx*4 + 0x10101cfc]
mov ecx, eax
call fcn.100be310
jmp 0x1010151b
mov al, byte [eax + 0x20]
test al, al
je case.0x10101508.3876
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xf24]
call fcn.100be5f0
test al, al
jne case.0x10101508.3876
mov eax, dword [str.w_WZK9]
mov dword [esp + 0x1c], eax
mov ax, word [0x101b2d24]
mov word [esp + 0x20], ax
test ah, ah
je 0x1010157b
xor ebx, ebx
mov eax, 0x8d3dcb09
mov cl, bl
mul ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 6
jl 0x10101556
mov ebx, dword [esp + 0x10]
lea ecx, [esp + 0x48]
call fcn.1002b3d0
lea ecx, [esp + 0x1c]
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10101590
sub ecx, edx
lea eax, [esp + 0x1c]
push ecx
push eax
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x48], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push esi
push eax
lea eax, [esp + 0x50]
push eax
push 0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x84]
movss dword [esp + 0x7c], xmm0
movss dword [esp + 0x5c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0xf24]
call fcn.100be310
test al, al
je 0x101016d6
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d40
mov edi, eax
cmp byte [edi + 6], 0
je 0x10101686
xor ebx, ebx
nop dword [eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 7
jl 0x10101660
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x88]
jmp 0x10101781
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0xf24]
call fcn.100be060
test al, al
je 0x101017be
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x10101736
xor ebx, ebx
nop dword [eax + eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x10101710
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x90]
subss xmm1, dword [0x101ecce0]
movss xmm2, dword [esp + 0x60]
lea ecx, [esp + 0x2c]
mov esi, eax
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
push 0
push edi
mov edi, dword [esp + 0x30]
mov ecx, edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0xa0]
call fcn.10002120
inc ebx
mov dword [esp + 0x10], ebx
mov eax, dword [0x10216634]
cmp byte [eax + 0x3614], 0
je case.0x101017e9.0
mov ecx, dword [eax + 0x361c]
add eax, 0x361c
cmp ecx, 3
ja case.0x101017e9.0
jmp dword [ecx*4 + 0x10101d0c]
mov ecx, eax
call fcn.100be310
jmp 0x101017fc
mov al, byte [eax + 0x20]
test al, al
je case.0x101017e9.0
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0x361c]
call fcn.100be5f0
lea ecx, [esp + 0xf]
test al, al
je 0x10101985
lea eax, [esp + 0x90]
push eax
call fcn.10101e40
mov edi, eax
cmp byte [edi + 9], 0
je 0x10101866
xor ebx, ebx
nop dword [eax + eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 0xa
jl 0x10101840
mov ebx, dword [esp + 0x10]
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
lea ecx, [esp + 0x2c]
addss xmm1, dword [0x101ecce0]
movd xmm0, ebx
mov esi, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x68]
movaps xmm2, xmm0
movss dword [esp + 0x60], xmm0
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0xa0]
call fcn.10002120
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1f]
call fcn.10101db0
mov edi, eax
cmp byte [edi + 4], 0
je 0x10101932
xor ebx, ebx
nop dword [eax + eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 5
jl 0x10101910
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x7c]
movss xmm2, dword [esp + 0x60]
jmp 0x10101bd3
lea eax, [esp + 0x2c]
push eax
call fcn.10101e40
mov esi, eax
mov dword [esp + 0x60], esi
cmp byte [esi + 9], 0
je 0x101019ce
xor ebx, ebx
mov edi, eax
nop
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 0xa
jl 0x101019a0
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x28]
mov esi, dword [esp + 0x60]
lea ecx, [esp + 0x48]
call fcn.1002b3d0
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101019e0
sub ecx, edx
push ecx
push esi
lea ecx, [esp + 0x50]
call fcn.100291a0
lea ecx, [esp + 0x48]
call fcn.10006980
movaps xmm0, xmmword [0x101ed280]
lea ecx, [esp + 0x6c]
mov esi, eax
movups xmmword [esp + 0x6c], xmm0
call fcn.100b2170
movss xmm0, dword [esp + 0x14]
xorps xmm2, xmm2
addss xmm0, dword [0x101ecce0]
push 0
push ecx
mov dword [esp], 0
mov ecx, edi
push 0
movss dword [esp + 0x88], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push esi
push eax
lea eax, [esp + 0x90]
push eax
push 0
mulss xmm0, dword [0x101ecd28]
addss xmm0, dword [esp + 0x84]
movss dword [esp + 0x7c], xmm0
movss dword [esp + 0x9c], xmm0
call fcn.1012d080
lea ecx, [esp + 0x48]
call fcn.10002120
mov ecx, dword [0x10216634]
lea ecx, [ecx + 0x361c]
call fcn.100be310
test al, al
je 0x10101b22
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d40
mov edi, eax
cmp byte [edi + 6], 0
je 0x10101ad2
xor ebx, ebx
nop
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 7
jl 0x10101ab0
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x88]
jmp 0x10101bcd
mov ecx, 0x10216634
call fcn.1003a860
lea ecx, [eax + 0x361c]
call fcn.100be060
test al, al
je case.0x101017e9.0
lea eax, [esp + 0x7c]
push eax
lea ecx, [esp + 0x13]
call fcn.10101d20
mov edi, eax
cmp byte [edi + 8], 0
je 0x10101b82
xor ebx, ebx
nop word [eax + eax]
mov eax, 0x8d3dcb09
lea esi, [ebx + edi]
mul ebx
mov cl, bl
inc ebx
shr edx, 5
movsx eax, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x34
xor byte [esi], cl
cmp ebx, 9
jl 0x10101b60
push edi
lea ecx, [esp + 0xa4]
call fcn.100217c0
mov ecx, eax
call fcn.10006980
movss xmm1, dword [0x101ecba0]
mov edi, eax
push ecx
movaps xmm3, xmm1
mov dword [esp], 0x3f800000
movaps xmm2, xmm1
lea ecx, [esp + 0x4c]
call fcn.100b0cc0
mov ecx, eax
call fcn.100b2170
movss xmm1, dword [esp + 0x14]
subss xmm1, dword [esp + 0x90]
movss xmm2, dword [esp + 0x60]
subss xmm1, dword [0x101ecce0]
lea ecx, [esp + 0x2c]
mov esi, eax
addss xmm1, dword [0x101ecdf0]
call fcn.10036a60
mov ecx, dword [esp + 0x28]
push 0
push edi
push esi
push eax
call fcn.1012d170
lea ecx, [esp + 0xa0]
call fcn.10002120
call fcn.10123310
call fcn.10122da0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret