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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1b8]
sub rsp, 0x278
vmovaps xmmword [rax - 0x58], xmm6
vmovaps xmmword [rax - 0x68], xmm7
vmovaps xmmword [rax - 0x78], xmm8
vmovaps xmmword [rax - 0x88], xmm9
vmovaps xmmword [rax - 0x98], xmm10
vmovaps xmmword [rax - 0xa8], xmm11
vmovaps xmmword [rax - 0xb8], xmm12
vmovaps xmmword [rax - 0xc8], xmm13
vmovaps xmmword [rax - 0xd8], xmm14
vmovaps xmmword [rax - 0xe8], xmm15
mov r13, rcx
mov rbx, qword [0x180242b30]
xor esi, esi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
lea rax, [0x180202e70]
mov qword [rsp + 0x28], rax
vmovss xmm12, dword [0x180218d6c]
vmovss dword [rsp + 0x20], xmm12
vmovss xmm9, dword [0x180218d34]
vmovaps xmm3, xmm9
vmovss xmm2, dword [rbx + 0x1048]
lea rdx, [rbp + 0x1c8]
mov rcx, qword [rbx + 0x1040]
call fcn.18006d2c0
vmovss xmm3, dword [rax]
vmovss xmm0, dword [rbx + 0x1048]
vaddss xmm1, xmm0, dword [rbx + 0xc08]
vmulss xmm2, xmm1, dword [r13]
vmovss dword [r13 + 0x308], xmm3
vmovss dword [r13 + 0x30c], xmm2
lea rdx, [r13 + 0xd0]
mov r8d, 7
vmovss xmm3, dword [0x180218914]
vxorps xmm13, xmm13, xmm13
vmovss xmm2, dword [0x180218c54]
vmovss xmm15, dword [0x1802189f4]
nop word [rax + rax]
mov ecx, dword [rdx - 0x54]
movzx eax, cl
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm5, xmm0, xmm3
mov eax, ecx
shr eax, 8
movzx eax, al
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm4, xmm0, xmm3
mov eax, ecx
shr eax, 0x10
movzx eax, al
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm6, xmm0, xmm3
shr ecx, 0x18
mov eax, ecx
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm1, xmm0, xmm3
vmulss xmm7, xmm1, dword [rbx + 0xbb8]
vmovss xmm8, dword [0x180218a50]
vcomiss xmm13, xmm5
jbe 0x180091abc
vmovaps xmm0, xmm13
jmp 0x180091ac0
vminss xmm0, xmm8, xmm5
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si ecx, xmm1
vcomiss xmm13, xmm4
jbe 0x180091ada
vmovaps xmm0, xmm13
jmp 0x180091ade
vminss xmm0, xmm8, xmm4
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 8
or ecx, eax
vcomiss xmm13, xmm6
jbe 0x180091afd
vmovaps xmm0, xmm13
jmp 0x180091b01
vminss xmm0, xmm8, xmm6
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 0x10
or ecx, eax
vcomiss xmm13, xmm7
jbe 0x180091b20
vmovaps xmm0, xmm13
jmp 0x180091b24
vminss xmm0, xmm8, xmm7
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 0x18
or eax, ecx
mov dword [rdx], eax
mov ecx, dword [rdx - 0x50]
movzx eax, cl
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm6, xmm0, xmm3
mov eax, ecx
shr eax, 8
movzx eax, al
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm4, xmm0, xmm3
mov eax, ecx
shr eax, 0x10
movzx eax, al
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm5, xmm0, xmm3
shr ecx, 0x18
mov eax, ecx
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm1, xmm0, xmm3
vmulss xmm7, xmm1, dword [rbx + 0xbb8]
vcomiss xmm13, xmm6
jbe 0x180091b9c
vmovaps xmm0, xmm13
jmp 0x180091ba0
vminss xmm0, xmm8, xmm6
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si ecx, xmm1
vcomiss xmm13, xmm4
jbe 0x180091bba
vmovaps xmm0, xmm13
jmp 0x180091bbe
vminss xmm0, xmm8, xmm4
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 8
or ecx, eax
vcomiss xmm13, xmm5
jbe 0x180091bdd
vmovaps xmm0, xmm13
jmp 0x180091be1
vminss xmm0, xmm8, xmm5
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 0x10
or ecx, eax
vcomiss xmm13, xmm7
jbe 0x180091c00
vmovaps xmm0, xmm13
jmp 0x180091c04
vminss xmm0, xmm8, xmm7
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 0x18
or eax, ecx
mov dword [rdx + 4], eax
mov ecx, dword [rdx - 0x4c]
movzx eax, cl
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm6, xmm0, xmm3
mov eax, ecx
shr eax, 8
movzx eax, al
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm4, xmm0, xmm3
mov eax, ecx
shr eax, 0x10
movzx eax, al
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm5, xmm0, xmm3
shr ecx, 0x18
mov eax, ecx
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm1, xmm0, xmm3
vmulss xmm7, xmm1, dword [rbx + 0xbb8]
vcomiss xmm13, xmm6
jbe 0x180091c7d
vmovaps xmm0, xmm13
jmp 0x180091c81
vminss xmm0, xmm8, xmm6
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si ecx, xmm1
vcomiss xmm13, xmm4
jbe 0x180091c9b
vmovaps xmm0, xmm13
jmp 0x180091c9f
vminss xmm0, xmm8, xmm4
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 8
or ecx, eax
vcomiss xmm13, xmm5
jbe 0x180091cbe
vmovaps xmm0, xmm13
jmp 0x180091cc2
vminss xmm0, xmm8, xmm5
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 0x10
or ecx, eax
vcomiss xmm13, xmm7
jbe 0x180091ce1
vmovaps xmm0, xmm13
jmp 0x180091ce5
vminss xmm0, xmm8, xmm7
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 0x18
or eax, ecx
mov dword [rdx + 8], eax
add rdx, 0xc
sub r8, 1
jne 0x180091a50
mov rax, qword [rbx + 0x1330]
cmp qword [rax + 0x1c0], rsi
jne 0x180091d28
cmp qword [rbx + 0x2148], rsi
lea rcx, [rax + 0x268]
je 0x180091d2f
lea rcx, [rax + 0x238]
vmovss xmm1, dword [rcx]
vmovss xmm0, dword [rcx + 4]
vsubss xmm5, xmm0, dword [rax + 0x11c]
vsubss xmm0, xmm1, dword [rax + 0x118]
vmovss dword [rsp + 0x54], xmm0
mov byte [rax + 0xcc], 1
mov rax, qword [rbx + 0x1330]
mov r14, qword [rax + 0x2b0]
mov qword [rsp + 0x60], r14
vmovss xmm6, dword [r13 + 0x60]
cmp byte [r13 + 0x5c], sil
je 0x180091d91
mov byte [r13 + 0x5c], sil
mov rax, qword [rbx + 0x1330]
mov dword [rax + 0xac], esi
mov dword [rax + 0xb4], esi
mov dword [rax + 0xbc], esi
mov rax, qword [rbx + 0x1330]
vmovss xmm14, dword [rax + 0x118]
vmovss dword [rbp - 0x64], xmm14
vmovss xmm10, dword [rax + 0x11c]
vmovss dword [rbp - 0x60], xmm10
vmovss xmm7, dword [rax + 0x98]
vmovss dword [rsp + 0x58], xmm7
vmovss xmm4, dword [rax + 0x9c]
lea r12, [r13 + 0x30c]
vdivss xmm0, xmm4, dword [r12]
vxorps xmm2, xmm2, xmm2
vroundss xmm2, xmm2, xmm0, 1
vcvttss2si r15d, xmm2
mov dword [rsp + 0x50], r15d
vaddss xmm0, xmm5, xmm4
vdivss xmm1, xmm0, dword [r12]
vxorps xmm3, xmm3, xmm3
vroundss xmm3, xmm3, xmm1, 1
vcvttss2si r8d, xmm3
add r8d, r15d
mov rcx, qword [r13 + 0x10]
sub rcx, qword [r13 + 8]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea eax, [rdx - 1]
cmp r8d, eax
cmovl eax, r8d
mov edi, esi
test eax, eax
cmovg edi, eax
mov r9d, edx
lea r8, str.__d
mov edx, 0x10
lea rcx, [rbp - 0x58]
call fcn.18008d3e0
mov rbx, qword [0x180242b30]
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
lea rax, [rbp - 0x58]
mov qword [rsp + 0x28], rax
vmovss dword [rsp + 0x20], xmm12
vmovaps xmm3, xmm9
vmovss xmm2, dword [rbx + 0x1048]
lea rdx, [rbp + 0x1c8]
mov rcx, qword [rbx + 0x1040]
call fcn.18006d2c0
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, dword [r13 + 0x64]
vaddss xmm1, xmm0, dword [rax]
vmovss dword [r13 + 0x60], xmm1
lea rdx, [r13 + 8]
mov rax, qword [rdx + 8]
cmp qword [rdx], rax
je 0x180093183
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
lea rax, [0x180202e6c]
mov qword [rsp + 0x28], rax
vmovss dword [rsp + 0x20], xmm12
vmovaps xmm3, xmm9
vmovss xmm2, dword [rbx + 0x1048]
lea rdx, [rbp + 0xc8]
mov rcx, qword [rbx + 0x1040]
call fcn.18006d2c0
vmovss xmm11, dword [rax]
vmovss dword [rbp - 0x68], xmm11
movsxd rax, r15d
mov qword [rbp + 0x68], rax
movsxd rcx, edi
mov qword [rbp + 0xb0], rcx
movabs rdi, 0xcbf29ce484222325
mov qword [rbp + 0x70], rdi
cmp rax, rcx
jg 0x180092fa0
vaddss xmm0, xmm14, xmm7
vmovss dword [rsp + 0x70], xmm0
mov edi, r15d
nop
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, edi
vmulss xmm1, xmm0, dword [r12]
vaddss xmm9, xmm1, xmm10
vmovss dword [rbp - 0x5c], xmm9
vaddss xmm10, xmm14, dword [r13 + 0x60]
vmovss dword [rsp + 0x68], xmm10
lea r15, [rax + rax*2]
mov qword [rbp + 0x58], r15
mov r12, qword [r13 + 8]
mov qword [rbp - 0x70], r12
mov edx, edi
mov rcx, r13
call fcn.18008fb90
mov dword [rbp + 0x78], edi
mov dword [rbp + 0x7c], eax
lea rdx, [rbp + 0x78]
mov rcx, r13
call fcn.1800973c0
vaddss xmm1, xmm0, dword [r13 + 0x60]
vmaxss xmm6, xmm6, xmm1
vmovss dword [rsp + 0x6c], xmm6
mov edx, edi
mov rcx, r13
call fcn.18008fb90
mov ebx, eax
mov dword [rbp + 0x80], edi
mov dword [rbp + 0x84], eax
vmovaps xmm7, xmm12
vmovaps xmm6, xmm12
mov ecx, dword [r13 + 0x20]
cmp ecx, edi
je 0x180091fbf
setl dl
jmp 0x180091fc6
cmp dword [r13 + 0x24], ebx
setle dl
test dl, dl
je 0x180091ff1
cmp ecx, edi
jne 0x180091fd3
cmp dword [r13 + 0x24], 0
setg al
test al, al
je 0x180091fec
lea rdx, [r13 + 0x20]
mov rcx, r13
call fcn.1800973c0
vmovaps xmm7, xmm0
jmp 0x180091ff1
vmovaps xmm7, xmm13
lea r8, [r13 + 0x28]
mov eax, dword [r8]
cmp eax, edi
jne 0x180092001
cmp dword [r8 + 4], 0
setg cl
test cl, cl
je 0x180092030
cmp eax, edi
jne 0x180092010
cmp dword [r13 + 0x2c], ebx
setl al
lea rdx, [rbp + 0x80]
test al, al
cmovne rdx, r8
mov rcx, r13
call fcn.1800973c0
vmovaps xmm6, xmm0
lea r8, [r13 + 0x28]
cmp dword [r8], edi
jle 0x18009203e
vaddss xmm6, xmm6, dword [r13 + 0x308]
vucomiss xmm7, xmm12
jp 0x180092047
je 0x1800920a2
vucomiss xmm6, xmm12
jp 0x180092050
je 0x1800920a2
vcomiss xmm6, xmm7
jbe 0x1800920a2
vaddss xmm2, xmm14, dword [r13 + 0x60]
vaddss xmm0, xmm7, xmm2
vmovss dword [rbp - 0x40], xmm0
vmovss dword [rbp - 0x3c], xmm9
vaddss xmm1, xmm9, dword [r13 + 0x30c]
vaddss xmm0, xmm6, xmm2
vmovss dword [rbp - 0x48], xmm0
vmovss dword [rbp - 0x44], xmm1
mov dword [rsp + 0x28], esi
vmovss dword [rsp + 0x20], xmm13
mov r9d, dword [r13 + 0x108]
lea r8, [rbp - 0x48]
lea rdx, [rbp - 0x40]
mov rcx, r14
call fcn.180068ca0
vmovss dword [rsp + 0x74], xmm9
lea ebx, [rdi + 1]
mov r8d, ebx
mov eax, ebx
shr eax, 8
movzx edx, al
movzx eax, bl
movabs rcx, 0xcbf29ce484222325
xor rax, rcx
movabs r9, 0x100000001b3
imul rax, r9
xor rdx, rax
imul rdx, r9
mov eax, ebx
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r9
mov eax, ebx
shr rax, 0x18
xor rdx, rax
imul rdx, r9
and rdx, qword [r13 + 0x2e8]
add rdx, rdx
mov rcx, qword [r13 + 0x2d0]
mov rax, qword [rcx + rdx*8 + 8]
cmp rax, qword [r13 + 0x2c0]
je 0x180092130
mov rcx, qword [rcx + rdx*8]
cmp r8d, dword [rax + 0x10]
je 0x180092133
cmp rax, rcx
je 0x180092130
mov rax, qword [rax + 8]
cmp ebx, dword [rax + 0x10]
jne 0x180092120
jmp 0x180092133
mov rax, rsi
vmovss xmm6, dword [rsp + 0x58]
test rax, rax
je 0x180092181
vaddss xmm2, xmm9, dword [r13 + 0x30c]
vaddss xmm1, xmm14, dword [rsp + 0x54]
vaddss xmm0, xmm6, xmm6
vaddss xmm1, xmm1, xmm0
vmovss dword [rbp - 0x38], xmm1
vmovss dword [rbp - 0x34], xmm2
mov dword [rsp + 0x28], esi
vmovss dword [rsp + 0x20], xmm13
mov r9d, dword [r13 + 0x110]
lea r8, [rbp - 0x38]
lea rdx, [rsp + 0x70]
mov rcx, r14
call fcn.180068ca0
mov rax, qword [r13 + 0x2f8]
mov rcx, qword [rax + 8]
mov rdi, rax
cmp byte [rcx + 0x19], 0
jne 0x1800921ac
cmp dword [rcx + 0x20], ebx
jge 0x1800921a0
mov rcx, qword [rcx + 0x10]
jmp 0x1800921a6
mov rdi, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x180092195
cmp byte [rdi + 0x19], 0
jne 0x180092401
cmp ebx, dword [rdi + 0x20]
jl 0x180092401
cmp rdi, rax
je 0x180092401
vaddss xmm7, xmm9, dword [r13 + 0x30c]
vaddss xmm1, xmm6, xmm6
vaddss xmm0, xmm14, dword [rsp + 0x54]
vaddss xmm6, xmm1, xmm0
vmovss dword [rbp - 0x30], xmm6
vmovss dword [rbp - 0x2c], xmm7
mov dword [rsp + 0x28], esi
vmovss dword [rsp + 0x20], xmm13
mov r9d, dword [r13 + 0x10c]
lea r8, [rbp - 0x30]
lea rdx, [rsp + 0x70]
mov rcx, r14
call fcn.180068ca0
mov rcx, qword [0x180242b30]
mov rax, qword [rcx + 0x1330]
vmaxss xmm5, xmm9, dword [rax + 0x254]
vmaxss xmm0, xmm14, dword [rax + 0x250]
vminss xmm7, xmm7, dword [rax + 0x25c]
vminss xmm6, xmm6, dword [rax + 0x258]
vmovss xmm3, dword [rcx + 0x110]
vmovss xmm4, dword [rcx + 0xc1c]
vsubss xmm0, xmm0, xmm4
vcomiss xmm3, xmm0
jb 0x180092401
vmovss xmm1, dword [rcx + 0x114]
vmovss xmm2, dword [rcx + 0xc20]
vsubss xmm0, xmm5, xmm2
vcomiss xmm1, xmm0
jb 0x180092401
vaddss xmm0, xmm6, xmm4
vcomiss xmm0, xmm3
jbe 0x180092401
vaddss xmm0, xmm2, xmm7
vcomiss xmm0, xmm1
jbe 0x180092401
xor ecx, ecx
call fcn.180056040
mov rbx, qword [0x180242b30]
mov dword [rsp + 0x78], esi
vmovups xmm0, xmmword [rbx + 0xca8]
vmovups xmmword [rsp + 0x7c], xmm0
lea rcx, [rbx + 0x1dc0]
lea rdx, [rsp + 0x78]
call fcn.18005dcd0
cmp dword [rbx + 0x1dbc], 0
je 0x1800922db
vmovdqu xmm0, xmmword [0x180219220]
vmovups xmmword [rbx + 0xca8], xmm0
mov edx, dword [rdi + 0x20]
lea rcx, str.Error_at_line__d:
call fcn.18007a0f0
mov rbx, qword [0x180242b30]
movsxd rax, dword [rbx + 0x1dc0]
cmp eax, 1
jl 0x180092325
lea rdx, [rax + rax*4]
mov rcx, qword [rbx + 0x1dc8]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
vmovups xmm0, xmmword [rcx + rdx*4 - 0x10]
vmovups xmmword [rbx + rax*8 + 0xca8], xmm0
dec dword [rbx + 0x1dc0]
mov rdx, qword [rbx + 0x1330]
cmp byte [rdx + 0xcf], 0
jne 0x180092369
mov r8d, dword [rdx + 0x1cc]
mov eax, r8d
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [rdx + 0x1c0], 0
je 0x180092358
neg r8d
sbb ecx, ecx
add ecx, 6
vmovaps xmm1, xmm8
call fcn.18007c7a0
mov rbx, qword [0x180242b30]
mov dword [rsp + 0x78], esi
vmovups xmm0, xmmword [rbx + 0xca8]
vmovups xmmword [rsp + 0x7c], xmm0
lea rcx, [rbx + 0x1dc0]
lea rdx, [rsp + 0x78]
call fcn.18005dcd0
cmp dword [rbx + 0x1dbc], 0
je 0x1800923a5
vmovdqu xmm0, xmmword [0x180219230]
vmovups xmmword [rbx + 0xca8], xmm0
lea rdx, [rdi + 0x28]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800923b3
mov rdx, qword [rdx]
lea rcx, [0x1801c07c4]
call fcn.18007a0f0
mov r8, qword [0x180242b30]
movsxd rax, dword [r8 + 0x1dc0]
cmp eax, 1
jl 0x1800923fc
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x1dc8]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
vmovups xmm0, xmmword [rcx + rdx*4 - 0x10]
vmovups xmmword [r8 + rax*8 + 0xca8], xmm0
dec dword [r8 + 0x1dc0]
call fcn.180050da0
mov edi, dword [rsp + 0x50]
lea r9d, [rdi + 1]
lea r8, str._d
mov edx, 0x10
lea rcx, [rbp - 0x58]
call fcn.18008d3e0
mov rbx, qword [0x180242b30]
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
lea rax, [rbp - 0x58]
mov qword [rsp + 0x28], rax
vmovss dword [rsp + 0x20], xmm12
vmovss xmm3, dword [0x180218d34]
vmovss xmm2, dword [rbx + 0x1048]
lea rdx, [rbp + 0xb8]
mov rcx, qword [rbx + 0x1040]
call fcn.18006d2c0
mov ecx, dword [r13 + 0x114]
vaddss xmm0, xmm14, dword [r13 + 0x60]
vsubss xmm1, xmm0, dword [rax]
vmovss dword [rbp - 0x28], xmm1
vmovss dword [rbp - 0x24], xmm9
test ecx, 0xff000000
je 0x1800924f1
cmp byte [rbp - 0x58], 0
je 0x1800924f1
lea rdx, [rbp - 0x58]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], 0
jne 0x180092495
lea rdx, [rbp - 0x58]
add rdx, rax
mov rax, qword [r14 + 0x38]
vmovups xmm0, xmmword [r14 + 0x60]
vmovups xmmword [rsp + 0x78], xmm0
mov byte [rsp + 0x48], 0
vmovss dword [rsp + 0x40], xmm13
mov qword [rsp + 0x38], rdx
lea rdx, [rbp - 0x58]
mov qword [rsp + 0x30], rdx
lea rdx, [rsp + 0x78]
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], ecx
lea r9, [rbp - 0x28]
vmovss xmm2, dword [rax + 0x10]
mov rdx, r14
mov rcx, qword [rax + 8]
call fcn.18006d6c0
cmp dword [r13 + 0x30], edi
jne 0x1800927d9
mov rax, qword [0x180242b30]
mov rcx, qword [rax + 0x1e60]
test rcx, rcx
jne 0x180092512
xor bl, bl
jmp 0x18009251c
cmp rcx, qword [rax + 0x1330]
sete bl
mov eax, dword [r13 + 0x28]
cmp eax, dword [r13 + 0x20]
jne 0x18009252e
mov eax, dword [r13 + 0x24]
cmp dword [r13 + 0x2c], eax
setg al
test al, al
jne 0x18009263c
vaddss xmm6, xmm9, dword [r13 + 0x30c]
vmovss xmm14, dword [rsp + 0x70]
vaddss xmm0, xmm14, dword [rsp + 0x54]
vaddss xmm7, xmm0, dword [rsp + 0x58]
vmovss dword [rbp - 0x20], xmm7
vmovss dword [rbp - 0x1c], xmm6
movzx r9d, bl
xor r9, 1
mov dword [rsp + 0x28], esi
vmovss dword [rsp + 0x20], xmm13
mov r9d, dword [r13 + r9*4 + 0x118]
lea r8, [rbp - 0x20]
lea rdx, [rsp + 0x70]
mov rcx, r14
call fcn.180068ca0
mov edi, dword [r13 + 0x120]
test edi, 0xff000000
je 0x18009263c
vaddss xmm2, xmm9, xmm15
mov dword [rsp + 0x20], esi
vmovaps xmm3, xmm8
mov rcx, r14
test byte [r14 + 0x30], 1
je 0x1800925e1
vsubss xmm1, xmm6, xmm15
vsubss xmm0, xmm7, xmm15
vmovss dword [rbp - 0x18], xmm0
vmovss dword [rbp - 0x14], xmm1
vaddss xmm0, xmm14, xmm15
vmovss dword [rbp - 0x10], xmm0
vmovss dword [rbp - 0xc], xmm2
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x10]
jmp 0x180092612
vsubss xmm1, xmm6, dword [0x1802189f0]
vsubss xmm0, xmm7, dword [0x1802189f0]
vmovss dword [rbp - 8], xmm0
vmovss dword [rbp - 4], xmm1
vaddss xmm0, xmm14, xmm15
vmovss dword [rbp], xmm0
vmovss dword [rbp + 4], xmm2
lea r8, [rbp - 8]
lea rdx, [rbp]
call fcn.180068630
vmovss dword [rsp + 0x28], xmm8
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [r14 + 0x50]
mov rdx, qword [r14 + 0x58]
mov rcx, r14
call fcn.1800668b0
mov dword [r14 + 0x50], esi
test bl, bl
je 0x1800927d9
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
mov rcx, rax
movabs rax, 0x346dc5d63886594b
imul rcx
mov rbx, rdx
sar rbx, 0xb
mov rax, rbx
shr rax, 0x3f
add rbx, rax
mov rsi, rbx
sub rsi, qword [r13 + 0x340]
cmp rsi, 0x190
jbe 0x1800927d7
vmovaps xmm6, xmm8
lea rdx, [r13 + 0x30]
mov rcx, r13
call fcn.18008f900
movsxd rdi, eax
lea rdx, [r13 + 0x30]
mov rcx, r13
call fcn.1800973c0
vmovaps xmm7, xmm0
cmp byte [r13 + 0x58], 0
je 0x180092779
mov r8, qword [r12 + r15*8]
mov rcx, qword [r12 + r15*8 + 8]
sub rcx, r8
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp edi, edx
jge 0x180092779
lea rcx, [rdi + rdi*2]
movzx eax, byte [r8 + rcx*4]
xor r12d, r12d
cmp al, 9
jne 0x180092720
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, dword [r13 + 0x54]
vmulss xmm4, xmm0, xmm11
vaddss xmm1, xmm7, xmm8
vdivss xmm2, xmm1, xmm4
vxorps xmm3, xmm3, xmm3
vroundss xmm3, xmm3, xmm2, 1
vaddss xmm0, xmm3, xmm8
vmulss xmm1, xmm0, xmm4
vsubss xmm6, xmm1, xmm7
jmp 0x18009277c
mov byte [rbp + 0x1c8], al
mov byte [rbp + 0x1c9], 0
mov rax, qword [0x180242b30]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
lea rcx, [rbp + 0x1c8]
mov qword [rsp + 0x28], rcx
vmovss dword [rsp + 0x20], xmm12
vmovss xmm3, dword [0x180218d34]
vmovss xmm2, dword [rax + 0x1048]
lea rdx, [rbp + 0xc0]
mov rcx, qword [rax + 0x1040]
call fcn.18006d2c0
vmovss xmm6, dword [rax]
jmp 0x18009277c
xor r12d, r12d
vaddss xmm0, xmm10, xmm7
vmovss dword [rbp + 0x10], xmm0
vmovss dword [rbp + 0x14], xmm9
vaddss xmm1, xmm9, dword [r13 + 0x30c]
vaddss xmm0, xmm0, xmm6
vmovss dword [rbp + 8], xmm0
vmovss dword [rbp + 0xc], xmm1
mov dword [rsp + 0x28], r12d
vmovss dword [rsp + 0x20], xmm13
mov r9d, dword [r13 + 0x104]
lea r8, [rbp + 8]
lea rdx, [rbp + 0x10]
mov rcx, r14
call fcn.180068ca0
mov r12, qword [rbp - 0x70]
cmp rsi, 0x320
jbe 0x1800927d7
mov qword [r13 + 0x340], rbx
xor esi, esi
mov r11, qword [r12 + r15*8 + 8]
mov r10, qword [r12 + r15*8]
cmp r10, r11
jne 0x1800927f0
mov ebx, dword [r13 + 0xd0]
jmp 0x1800927fd
mov rdx, r10
mov rcx, r13
call fcn.180090990
mov ebx, eax
mov dword [rbp + 0x1d8], ebx
vmovaps xmm14, xmm13
mov edi, esi
mov dword [rbp + 0x1d0], esi
mov r12, rsi
sub r11, r10
movabs rax, 0x2aaaaaaaaaaaaaab
imul r11
sar rdx, 1
mov rcx, rdx
shr rcx, 0x3f
add rdx, rcx
je 0x180092e97
nop word [rax + rax]
lea rax, [r12 + r12*2]
lea r14, [r10 + rax*4]
mov rdx, r14
mov rcx, r13
call fcn.180090990
mov r15d, eax
cmp eax, ebx
jne 0x18009286c
movzx ecx, byte [r14]
cmp cl, 9
je 0x18009286c
cmp cl, 0x20
jne 0x1800929ab
cmp qword [r13 + 0x330], 0
je 0x1800929ab
vaddss xmm1, xmm9, xmm13
vaddss xmm0, xmm14, xmm10
vmovss dword [rbp + 0x18], xmm0
vmovss dword [rbp + 0x1c], xmm1
lea rdi, [r13 + 0x320]
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800928ab
mov rdx, qword [rdi]
lea rsi, [r13 + 0x320]
jmp 0x1800928ae
mov rsi, rdi
mov rbx, rsi
mov r9d, dword [rbp + 0x1d8]
test r9d, 0xff000000
je 0x18009293a
mov rbx, rdi
test rdx, rdx
je 0x18009293a
mov rbx, rsi
cmp byte [rdx], 0
je 0x18009293a
mov rcx, 0xffffffffffffffff
nop dword [rax + rax]
inc rcx
cmp byte [rdx + rcx], 0
jne 0x1800928e0
add rcx, rdx
mov r8, qword [rsp + 0x60]
mov rax, qword [r8 + 0x38]
vmovups xmm0, xmmword [r8 + 0x60]
vmovups xmmword [rsp + 0x78], xmm0
mov byte [rsp + 0x48], 0
vmovss dword [rsp + 0x40], xmm13
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rdx
lea rcx, [rsp + 0x78]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r9d
lea r9, [rbp + 0x18]
vmovss xmm2, dword [rax + 0x10]
mov rdx, r8
mov rcx, qword [rax + 8]
call fcn.18006d6c0
mov rax, qword [0x180242b30]
mov rcx, qword [rax + 0x1040]
cmp qword [rdi + 0x18], 0xf
jbe 0x180092952
mov rdi, qword [rdi]
mov rax, qword [0x180242b30]
xor esi, esi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
vmovss dword [rsp + 0x20], xmm12
vmovss xmm3, dword [0x180218d34]
vmovss xmm2, dword [rax + 0x1048]
lea rdx, [rbp + 0xa8]
call fcn.18006d2c0
vaddss xmm14, xmm14, dword [rbp + 0xa8]
mov qword [rbx + 0x10], rsi
cmp qword [rbx + 0x18], 0xf
jbe 0x1800929a2
mov rbx, qword [rbx]
mov byte [rbx], sil
mov edi, dword [rbp + 0x1d0]
mov ebx, r15d
mov dword [rbp + 0x1d8], ebx
movzx ecx, byte [r14]
cmp cl, 9
jne 0x180092ce9
vmovaps xmm5, xmm14
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, dword [r13 + 0x54]
vmulss xmm4, xmm0, xmm11
vaddss xmm1, xmm14, xmm8
vdivss xmm2, xmm1, xmm4
vxorps xmm3, xmm3, xmm3
vroundss xmm3, xmm3, xmm2, 1
vaddss xmm0, xmm3, xmm8
vmulss xmm14, xmm0, xmm4
inc edi
mov dword [rbp + 0x1d0], edi
inc r12
mov r14, qword [rsp + 0x60]
cmp byte [r13 + 0x7b], 0
je 0x180092e58
mov rax, qword [0x180242b30]
vmovss xmm2, dword [rax + 0x1048]
vaddss xmm0, xmm10, xmm14
vsubss xmm10, xmm0, xmm8
vmulss xmm1, xmm2, xmm15
vaddss xmm0, xmm9, xmm13
vaddss xmm11, xmm1, xmm0
vmulss xmm2, xmm2, dword [0x1802189b0]
vsubss xmm8, xmm10, xmm2
vsubss xmm9, xmm11, xmm2
vaddss xmm12, xmm2, xmm11
vaddss xmm7, xmm11, xmm15
vaddss xmm0, xmm5, dword [rsp + 0x68]
vaddss xmm1, xmm0, dword [0x180218a50]
vaddss xmm2, xmm1, xmm15
vmovss dword [rbp + 0x20], xmm2
vmovss dword [rbp + 0x24], xmm7
mov r8d, dword [r14 + 0x54]
mov ecx, dword [r14 + 0x50]
cmp ecx, r8d
jne 0x180092aa0
inc ecx
test r8d, r8d
je 0x180092a8b
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x180092a90
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
lea rcx, [r14 + 0x50]
call fcn.18005de10
movsxd rdx, dword [r14 + 0x50]
mov rcx, qword [r14 + 0x58]
mov rax, qword [rbp + 0x20]
mov qword [rcx + rdx*8], rax
mov r8d, dword [r14 + 0x50]
inc r8d
mov dword [r14 + 0x50], r8d
vaddss xmm6, xmm10, xmm15
vmovss dword [rbp + 0x28], xmm6
vmovss dword [rbp + 0x2c], xmm7
mov ecx, dword [r14 + 0x54]
cmp r8d, ecx
jne 0x180092afd
inc r8d
test ecx, ecx
je 0x180092ae5
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180092aea
mov eax, 8
cmp eax, r8d
cmovg r8d, eax
mov edx, r8d
lea rcx, [r14 + 0x50]
call fcn.18005de10
movsxd rdx, dword [r14 + 0x50]
mov rcx, qword [r14 + 0x58]
mov rax, qword [rbp + 0x28]
mov qword [rcx + rdx*8], rax
inc dword [r14 + 0x50]
vmovss xmm0, dword [0x180218a50]
vmovss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], esi
mov r9d, 0x90909090
mov r8d, dword [r14 + 0x50]
mov rdx, qword [r14 + 0x58]
mov rcx, r14
call fcn.1800668b0
mov dword [r14 + 0x50], esi
vmovss dword [rbp + 0x30], xmm6
vmovss dword [rbp + 0x34], xmm7
mov r15d, 8
cmp dword [r14 + 0x54], 0
jne 0x180092b69
mov edx, 1
test sil, sil
cmove edx, r15d
lea rcx, [r14 + 0x50]
call fcn.18005de10
movsxd rdx, dword [r14 + 0x50]
mov rcx, qword [r14 + 0x58]
mov rax, qword [rbp + 0x30]
mov qword [rcx + rdx*8], rax
mov r8d, dword [r14 + 0x50]
inc r8d
mov dword [r14 + 0x50], r8d
vaddss xmm0, xmm9, xmm15
vaddss xmm6, xmm8, xmm15
vmovss dword [rbp + 0x38], xmm6
vmovss dword [rbp + 0x3c], xmm0
mov ecx, dword [r14 + 0x54]
cmp r8d, ecx
jne 0x180092bc9
inc r8d
test ecx, ecx
je 0x180092bb3
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180092bb6
mov eax, r15d
cmp eax, r8d
cmovg r8d, eax
mov edx, r8d
lea rcx, [r14 + 0x50]
call fcn.18005de10
movsxd rdx, dword [r14 + 0x50]
mov rcx, qword [r14 + 0x58]
mov rax, qword [rbp + 0x38]
mov qword [rcx + rdx*8], rax
inc dword [r14 + 0x50]
vmovss xmm8, dword [0x180218a50]
vmovss dword [rsp + 0x28], xmm8
mov dword [rsp + 0x20], esi
mov r9d, 0x90909090
mov r8d, dword [r14 + 0x50]
mov rdx, qword [r14 + 0x58]
mov rcx, r14
call fcn.1800668b0
mov dword [r14 + 0x50], esi
vaddss xmm1, xmm11, xmm15
vaddss xmm0, xmm10, xmm15
vmovss dword [rbp + 0x40], xmm0
vmovss dword [rbp + 0x44], xmm1
cmp dword [r14 + 0x54], 0
jne 0x180092c39
mov edx, 1
test sil, sil
cmove edx, r15d
lea rcx, [r14 + 0x50]
call fcn.18005de10
movsxd rdx, dword [r14 + 0x50]
mov rcx, qword [r14 + 0x58]
mov rax, qword [rbp + 0x40]
mov qword [rcx + rdx*8], rax
mov r8d, dword [r14 + 0x50]
inc r8d
mov dword [r14 + 0x50], r8d
vaddss xmm0, xmm12, xmm15
vmovss dword [rbp + 0x48], xmm6
vmovss dword [rbp + 0x4c], xmm0
mov ecx, dword [r14 + 0x54]
cmp r8d, ecx
jne 0x180092c94
inc r8d
test ecx, ecx
je 0x180092c7e
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180092c81
mov eax, r15d
cmp eax, r8d
cmovg r8d, eax
mov edx, r8d
lea rcx, [r14 + 0x50]
call fcn.18005de10
movsxd rdx, dword [r14 + 0x50]
mov rcx, qword [r14 + 0x58]
mov rax, qword [rbp + 0x48]
mov qword [rcx + rdx*8], rax
inc dword [r14 + 0x50]
vmovss dword [rsp + 0x28], xmm8
mov dword [rsp + 0x20], esi
mov r9d, 0x90909090
mov r8d, dword [r14 + 0x50]
mov rdx, qword [r14 + 0x58]
mov rcx, r14
call fcn.1800668b0
mov dword [r14 + 0x50], esi
vmovss xmm9, dword [rbp - 0x5c]
vmovss xmm10, dword [rsp + 0x68]
vmovss xmm11, dword [rbp - 0x68]
vmovss xmm12, dword [0x180218d6c]
jmp 0x180092e58
cmp cl, 0x20
jne 0x180092d8c
mov r14, qword [rsp + 0x60]
cmp byte [r13 + 0x7b], 0
je 0x180092d77
mov rax, qword [0x180242b30]
vaddss xmm1, xmm14, xmm10
vmulss xmm0, xmm11, xmm15
vaddss xmm3, xmm1, xmm0
vmulss xmm2, xmm15, dword [rax + 0x1048]
vaddss xmm0, xmm9, xmm13
vaddss xmm1, xmm2, xmm0
vmovss dword [rbp + 0x50], xmm3
vmovss dword [rbp + 0x54], xmm1
mov dword [rsp + 0x28], 3
vmovss xmm0, dword [0x180218b08]
vmovss dword [rsp + 0x20], xmm0
vmovaps xmm3, xmm13
vmovss xmm2, dword [0x180218a74]
lea rdx, [rbp + 0x50]
mov rcx, r14
call fcn.180068200
mov r9d, 0x80808080
mov r8d, dword [r14 + 0x50]
mov rdx, qword [r14 + 0x58]
mov rcx, r14
call fcn.180067750
mov dword [r14 + 0x50], esi
vaddss xmm14, xmm14, xmm11
inc edi
mov dword [rbp + 0x1d0], edi
inc r12
jmp 0x180092e58
movzx eax, cl
and al, 0xfe
cmp al, 0xfc
jne 0x180092d9c
mov edi, 6
jmp 0x180092dda
movzx eax, cl
and al, 0xfc
cmp al, 0xf8
jne 0x180092dac
mov edi, 5
jmp 0x180092dda
movzx eax, cl
and al, 0xf8
cmp al, 0xf0
jne 0x180092dbc
mov edi, 4
jmp 0x180092dda
movzx eax, cl
and al, 0xf0
cmp al, 0xe0
jne 0x180092dcc
mov edi, 3
jmp 0x180092dda
and cl, 0xe0
mov edi, esi
cmp cl, 0xc0
sete dil
inc edi
lea rbx, [r13 + 0x320]
lea rsi, [r12 + r12*2]
shl rsi, 2
add dword [rbp + 0x1d0], edi
mov eax, edi
add r12, rax
mov r14, qword [rbp + 0x58]
mov r15, qword [rbp - 0x70]
nop dword [rax]
dec edi
mov rax, qword [r15 + r14*8]
movzx r9d, byte [rsi + rax]
lea rsi, [rsi + 0xc]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x180092e3b
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0xf
jbe 0x180092e30
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x180092e43
mov rcx, rbx
call fcn.18009ad40
test edi, edi
jg 0x180092e00
mov edi, dword [rbp + 0x1d0]
mov r14, qword [rsp + 0x60]
mov ebx, dword [rbp + 0x1d8]
mov rax, qword [rbp + 0x58]
mov rcx, qword [rbp - 0x70]
mov r10, qword [rcx + rax*8]
mov rcx, qword [rcx + rax*8 + 8]
sub rcx, r10
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, edi
cmp rax, rdx
mov esi, 0
jb 0x180092840
cmp qword [r13 + 0x330], 0
je 0x180092f56
vaddss xmm1, xmm9, xmm13
vaddss xmm0, xmm14, xmm10
vmovss dword [rbp + 0x60], xmm0
vmovss dword [rbp + 0x64], xmm1
lea rbx, [r13 + 0x320]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x180092ecd
mov rdx, qword [rbx]
mov r9d, dword [rbp + 0x1d8]
test r9d, 0xff000000
je 0x180092f45
test rdx, rdx
je 0x180092f45
cmp byte [rdx], 0
je 0x180092f45
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp byte [rdx + rcx], 0
jne 0x180092ef0
add rcx, rdx
mov rax, qword [r14 + 0x38]
vmovups xmm0, xmmword [r14 + 0x60]
vmovups xmmword [rsp + 0x78], xmm0
mov byte [rsp + 0x48], 0
vmovss dword [rsp + 0x40], xmm13
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rdx
lea rcx, [rsp + 0x78]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r9d
lea r9, [rbp + 0x60]
vmovss xmm2, dword [rax + 0x10]
mov rdx, r14
mov rcx, qword [rax + 8]
call fcn.18006d6c0
mov qword [rbx + 0x10], rsi
cmp qword [rbx + 0x18], 0xf
jbe 0x180092f53
mov rbx, qword [rbx]
mov byte [rbx], 0
mov edi, dword [rsp + 0x50]
inc edi
mov dword [rsp + 0x50], edi
mov rax, qword [rbp + 0x68]
inc rax
mov qword [rbp + 0x68], rax
cmp rax, qword [rbp + 0xb0]
vmovss xmm14, dword [rbp - 0x64]
vmovss xmm6, dword [rsp + 0x6c]
vmovss xmm10, dword [rbp - 0x60]
lea r12, [r13 + 0x30c]
jle 0x180091f30
lea r12, [r13 + 0x30c]
movabs rdi, 0xcbf29ce484222325
lea rdx, [r13 + 8]
mov rax, qword [0x180242b30]
vmovss xmm0, dword [rax + 0x110]
vmovss xmm2, dword [rax + 0x114]
vmovss xmm1, dword [0x180218df4]
vcomiss xmm0, xmm1
jb 0x180093183
vcomiss xmm2, xmm1
jb 0x180093183
vmovsd xmm0, qword [rax + 0x110]
vmovsd qword [rbp + 0x1c8], xmm0
lea r8, [rbp + 0x1c8]
lea rdx, [rbp + 0x1d0]
mov rcx, r13
call fcn.18008ef90
mov r8, rax
lea rdx, [rbp + 0x88]
mov rcx, r13
call fcn.180090890
nop
mov rbx, qword [rbp + 0x98]
test rbx, rbx
je 0x18009316c
lea rdx, [rbp + 0x88]
mov r14, qword [rbp + 0x88]
mov r15, qword [rbp + 0xa0]
cmp r15, 0xf
cmova rdx, r14
mov r9, rdi
xor r12d, r12d
mov ecx, r12d
test rbx, rbx
je 0x180093073
movabs r8, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, r8
inc rcx
cmp rcx, rbx
jb 0x180093060
lea r8, [rbp + 0x88]
lea rdx, [rsp + 0x78]
lea rcx, [r13 + 0x188]
call fcn.18009c890
mov rdi, qword [rax + 8]
test rdi, rdi
jne 0x18009309b
mov rdi, qword [r13 + 0x190]
cmp rdi, qword [r13 + 0x190]
je 0x1800930b4
xor ecx, ecx
call fcn.180056040
lea rcx, [rdi + 0x38]
jmp 0x18009314f
lea rdi, [r13 + 0x1c8]
lea rcx, [rbp + 0x88]
cmp r15, 0xf
cmova rcx, r14
test rbx, rbx
je 0x180093116
movabs rdi, 0xcbf29ce484222325
movabs r13, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx + r12]
xor rdi, rax
imul rdi, r13
inc r12
cmp r12, rbx
jb 0x1800930f0
mov qword [rbp + 0x70], rdi
mov r13, qword [rbp + 0x1c0]
lea rdi, [r13 + 0x1c8]
mov r9, qword [rbp + 0x70]
lea r8, [rbp + 0x88]
lea rdx, [rsp + 0x78]
mov rcx, rdi
call fcn.18009c890
mov rbx, qword [rax + 8]
test rbx, rbx
jne 0x18009313b
mov rbx, qword [rdi + 8]
cmp rbx, qword [r13 + 0x1d0]
je 0x18009316c
xor ecx, ecx
call fcn.180056040
lea rcx, [rbx + 0x38]
cmp qword [rcx + 0x18], 0xf
jbe 0x180093159
mov rcx, qword [rcx]
mov r8d, 1
xor edx, edx
call fcn.180079940
call fcn.180050da0
nop
lea rcx, [rbp + 0x88]
call fcn.180098e30
lea rdx, [r13 + 8]
lea r12, [r13 + 0x30c]
vaddss xmm0, xmm6, dword [0x180218a98]
vmovss dword [rbp + 0x1c0], xmm0
mov rcx, qword [rdx + 8]
sub rcx, qword [rdx]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
vxorps xmm0, xmm0, xmm0
js 0x1800931c2
vcvtsi2ss xmm0, xmm0, rdx
jmp 0x1800931d7
mov rax, rdx
shr rax, 1
and edx, 1
or rax, rdx
vcvtsi2ss xmm0, xmm0, rax
vaddss xmm0, xmm0, xmm0
vmulss xmm0, xmm0, dword [r12]
vmovss dword [rbp + 0x1c4], xmm0
lea rcx, [rbp + 0x1c0]
call fcn.18007c630
cmp byte [r13 + 0x5b], 0
je 0x18009321a
mov rcx, r13
call fcn.180097660
xor edx, edx
mov rcx, qword [0x180242b30]
mov rcx, qword [rcx + 0x1330]
call fcn.180051020
mov byte [r13 + 0x5b], 0
lea r11, [rsp + 0x278]
vmovaps xmm6, xmmword [r11 - 0x18]
vmovaps xmm7, xmmword [r11 - 0x28]
vmovaps xmm8, xmmword [r11 - 0x38]
vmovaps xmm9, xmmword [r11 - 0x48]
vmovaps xmm10, xmmword [r11 - 0x58]
vmovaps xmm11, xmmword [r11 - 0x68]
vmovaps xmm12, xmmword [r11 - 0x78]
vmovaps xmm13, xmmword [r11 - 0x88]
vmovaps xmm14, xmmword [r11 - 0x98]
vmovaps xmm15, xmmword [r11 - 0xa8]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret