Function at 0x1400a3a50
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x188]
sub rsp, 0x250
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
mov rax, qword [0x14010efb0]
xor rax, rsp
mov qword [rbp + 0xa0], rax
xor r14d, r14d
mov byte [rsp + 0x5c], dl
mov ebx, r8d
mov dword [rcx + 0x3440], r14d
mov rdi, rcx
mov dword [rsp + 0x54], ebx
lea rcx, [rbp + 0x90]
lea edx, [r14 + 1]
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__timespec64_get]
imul rcx, qword [rbp + 0x90], 0x3b9aca00
movsxd rax, dword [rbp + 0x98]
mov esi, 0xbb8
add rcx, rax
mov qword [rbp - 0x58], rsi
mov rax, qword [rdi]
mov qword [rbp - 0x20], rcx
movss xmm1, dword [rax + 0x38]
movss xmm3, dword [rax + 0x3c]
mov r9, qword [rax + 0x80]
mov rcx, qword [rax + 0x88]
movss xmm7, dword [rax + 0x70]
movss xmm9, dword [rax + 0x6c]
movss dword [rsp + 0x78], xmm1
movss dword [rsp + 0x7c], xmm3
movss dword [rbp - 0x28], xmm7
movss dword [rbp - 0x24], xmm9
mov qword [rsp + 0x68], r9
mov qword [rbp - 0x68], rcx
movups xmm8, xmmword [rax + 0x10]
movaps xmmword [rbp - 0x10], xmm8
test ebx, ebx
jne 0x1400a4090
lea rcx, [rdi + 0x60]
mov dword [rdi + 0x50], r14d
xor edx, edx
mov dword [rdi + 0x54], 0x10
mov r8d, 0x2ee4
mov dword [rdi + 0x5c], r14d
call sub.VCRUNTIME140.dll_memset
mov dword [rdi + 0x3444], r14d
mov rax, qword [rdi + 0x30d8]
cmp rax, qword [rdi + 0x30e0]
je 0x1400a3b70
mov qword [rdi + 0x30e0], rax
mov rax, qword [rdi + 0x30f0]
cmp rax, qword [rdi + 0x30f8]
je 0x1400a3b87
mov qword [rdi + 0x30f8], rax
mov eax, r14d
mov dword [rsp + 0x60], eax
cmp dword [rdi + 0x3510], r14d
jbe 0x1400a407f
mov r8d, r14d
mov dword [rsp + 0x74], r14d
nop dword [rax]
nop word [rax + rax]
mov ecx, eax
mov ebx, r14d
mov rax, qword [rdi + 0x3508]
mov dword [rsp + 0x70], ebx
mov r15, qword [rax + rcx*8]
add r15, 0x10
nop dword [rax + rax]
cmp qword [r15 - 0x10], 0xffffffffffffffff
movzx r13d, byte [r15 + 0x16]
mov r9d, dword [r15 - 4]
mov r10d, dword [r15]
mov esi, dword [r15 + 4]
movzx r14d, byte [r15 + 0x14]
mov dword [rbp - 0x80], r13d
mov dword [rsp + 0x58], r9d
mov dword [rsp + 0x50], r10d
je 0x1400a4038
mov ecx, 0x20
lea r12d, [r8 + rbx]
sub ecx, r13d
mov r8d, 1
shl r8, cl
mov rcx, qword [rdi + 0x2f90]
sar rcx, 0x20
lea eax, [r8 + r9]
cmp ecx, r9d
jl 0x1400a3c34
cmp ecx, eax
jg 0x1400a3c30
xor r11d, r11d
jmp 0x1400a3c42
sub ecx, eax
jmp 0x1400a3c3b
mov eax, r9d
sub eax, ecx
mov ecx, eax
movsxd r11, ecx
imul r11, r11
mov rcx, qword [rdi + 0x2f98]
lea eax, [r8 + r10]
sar rcx, 0x20
cmp ecx, r10d
jl 0x1400a3c62
cmp ecx, eax
jg 0x1400a3c5e
xor edx, edx
jmp 0x1400a3c70
sub ecx, eax
jmp 0x1400a3c69
mov eax, r10d
sub eax, ecx
mov ecx, eax
movsxd rdx, ecx
imul rdx, rdx
mov rcx, qword [rdi + 0x2fa0]
lea eax, [r8 + rsi]
sar rcx, 0x20
cmp ecx, esi
jl 0x1400a3c8f
cmp ecx, eax
jg 0x1400a3c8b
xor eax, eax
jmp 0x1400a3c9c
sub ecx, eax
jmp 0x1400a3c95
mov eax, esi
sub eax, ecx
mov ecx, eax
movsxd rax, ecx
imul rax, rax
lea r8, [rax + rdx]
mov ecx, 0x18
mov rdx, qword [rbp - 0x68]
sub ecx, r14d
sub ecx, r13d
add r8, r11
add ecx, ecx
mov rax, r8
shl rdx, cl
shr rax, 0x10
cmp rax, rdx
ja 0x1400a419c
mov r11d, 0xbb8
mov ebx, r11d
test r8, r8
je 0x1400a3d1a
lzcnt rax, r8
mov edx, 0x3f
sub rdx, rax
lea ecx, [rdx - 5]
test ecx, ecx
js 0x1400a3cee
shr r8, cl
jmp 0x1400a3cf3
neg ecx
shl r8, cl
shl rdx, 5
lea ecx, [r14 + r13]
shl ecx, 6
mov rax, r11
sub rax, rcx
mov ebx, 0
sub rax, rdx
sub rax, r8
cmovns rbx, rax
cmp rbx, r11
cmova rbx, r11
mov eax, dword [rdi + 0x3444]
cmp rbx, rax
jb 0x1400a4198
mov r14d, dword [rsp + 0x74]
mov ecx, 0x80000000
mov r8d, dword [rdi + rbx*4 + 0x60]
lea r14, [r14 + rcx]
add r14d, dword [rsp + 0x70]
test r8b, 0xf
jne 0x1400a3de2
mov r8d, dword [rdi + 0x5c]
test r8d, r8d
je 0x1400a3d6f
mov rax, qword [rdi + 0x48]
mov edx, r8d
shr rdx, 0x10
movzx ecx, r8w
mov rax, qword [rax + rdx*8]
mov ecx, dword [rax + rcx*4]
mov dword [rdi + 0x5c], ecx
jmp 0x1400a3dc8
cmp dword [rdi + 0x54], 0x10000
jne 0x1400a3db2
inc dword [rdi + 0x50]
mov eax, dword [rdi + 0x50]
mov dword [rdi + 0x54], 0
cmp eax, dword [rdi + 0x58]
jne 0x1400a3db2
mov edx, 0x40
mov ecx, 0x40000
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll__aligned_malloc]
mov edx, dword [rdi + 0x58]
mov rcx, qword [rdi + 0x48]
mov r9d, dword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov qword [rcx + rdx*8], rax
inc dword [rdi + 0x58]
mov ecx, dword [rdi + 0x54]
mov eax, dword [rdi + 0x50]
shl eax, 0x10
lea r8d, [rcx + 0xf]
add r8d, eax
lea eax, [rcx + 0x10]
mov dword [rdi + 0x54], eax
mov rcx, qword [rdi + 0x48]
mov eax, r8d
shr rax, 0x10
movzx edx, r8w
mov rcx, qword [rcx + rax*8]
mov eax, dword [rdi + rbx*4 + 0x60]
mov dword [rcx + rdx*4], eax
lea eax, [r8 - 1]
mov dword [rdi + rbx*4 + 0x60], eax
mov edx, eax
mov ecx, eax
mov rax, qword [rdi + 0x48]
shr rdx, 0x10
movzx ecx, cx
mov rax, qword [rax + rdx*8]
mov dword [rax + rcx*4], r14d
movzx r14d, byte [r15 + 0x15]
lea eax, [r14 + r13]
cmp eax, 0x14
jae 0x1400a402f
mov ebx, dword [rbp - 0x80]
mov ecx, 0x20
movzx r13d, byte [r15 + 0x17]
inc ebx
sub ecx, ebx
mov eax, 1
shl rax, cl
mov qword [rbp - 0x78], rax
test r13b, 1
jne 0x1400a3e68
mov rax, qword [rsp + 0x68]
mov r8d, r12d
mov qword [rsp + 0x48], rax
movzx edx, r14b
mov dword [rsp + 0x38], esi
mov rcx, rdi
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x28], r9d
xor r9d, r9d
mov dword [rsp + 0x20], ebx
call fcn.1400a6360
mov rax, qword [rbp - 0x78]
test r13b, 2
jne 0x1400a3ea7
mov rcx, qword [rsp + 0x68]
add eax, esi
mov qword [rsp + 0x48], rcx
mov r9d, 1
mov dword [rsp + 0x38], eax
mov r8d, r12d
mov eax, dword [rsp + 0x50]
movzx edx, r14b
mov dword [rsp + 0x30], eax
mov rcx, rdi
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ebx
call fcn.1400a6360
mov rcx, qword [rbp - 0x78]
mov eax, dword [rsp + 0x50]
add eax, ecx
add ecx, esi
mov dword [rbp - 0x70], eax
mov dword [rbp - 0x80], ecx
test r13b, 8
jne 0x1400a3ef5
mov rdx, qword [rsp + 0x68]
mov r9d, 3
mov qword [rsp + 0x48], rdx
mov r8d, r12d
mov dword [rsp + 0x38], ecx
movzx edx, r14b
mov dword [rsp + 0x30], eax
mov rcx, rdi
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ebx
call fcn.1400a6360
mov eax, dword [rbp - 0x70]
test r13b, 4
jne 0x1400a3f2e
mov rcx, qword [rsp + 0x68]
mov r9d, 2
mov qword [rsp + 0x48], rcx
mov r8d, r12d
mov dword [rsp + 0x38], esi
movzx edx, r14b
mov dword [rsp + 0x30], eax
mov rcx, rdi
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ebx
call fcn.1400a6360
mov eax, dword [rsp + 0x58]
mov rcx, qword [rbp - 0x78]
add eax, ecx
mov dword [rsp + 0x58], eax
test r13b, 0x40
jne 0x1400a3f78
mov rcx, qword [rsp + 0x68]
mov r9d, 6
mov qword [rsp + 0x48], rcx
mov r8d, r12d
mov ecx, dword [rbp - 0x70]
movzx edx, r14b
mov dword [rsp + 0x38], esi
mov dword [rsp + 0x30], ecx
mov rcx, rdi
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ebx
call fcn.1400a6360
mov eax, dword [rsp + 0x58]
test r13b, r13b
js 0x1400a3fb2
mov rcx, qword [rsp + 0x68]
mov r9d, 7
mov qword [rsp + 0x48], rcx
mov r8d, r12d
mov ecx, dword [rbp - 0x80]
movzx edx, r14b
mov dword [rsp + 0x38], ecx
mov ecx, dword [rbp - 0x70]
mov dword [rsp + 0x30], ecx
mov rcx, rdi
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ebx
call fcn.1400a6360
test r13b, 0x20
jne 0x1400a3ff2
mov rax, qword [rsp + 0x68]
mov r9d, 5
mov qword [rsp + 0x48], rax
mov r8d, r12d
mov eax, dword [rbp - 0x80]
movzx edx, r14b
mov dword [rsp + 0x38], eax
mov rcx, rdi
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ebx
call fcn.1400a6360
test r13b, 0x10
jne 0x1400a402f
mov rax, qword [rsp + 0x68]
mov r9d, 4
mov qword [rsp + 0x48], rax
mov r8d, r12d
mov eax, dword [rsp + 0x50]
movzx edx, r14b
mov dword [rsp + 0x38], esi
mov rcx, rdi
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ebx
call fcn.1400a6360
mov ebx, dword [rsp + 0x70]
mov r8d, dword [rsp + 0x74]
inc ebx
add r15, 0x28
mov dword [rsp + 0x70], ebx
cmp ebx, 0x10000
jb 0x1400a3bd0
mov eax, dword [rsp + 0x60]
add r8d, 0x10000
inc eax
mov dword [rsp + 0x74], r8d
mov r14d, 0
mov dword [rsp + 0x60], eax
cmp eax, dword [rdi + 0x3510]
jb 0x1400a3bb0
mov ebx, dword [rsp + 0x54]
mov esi, 0xbb8
mov r9, qword [rsp + 0x68]
movss xmm3, dword [rsp + 0x7c]
movss xmm1, dword [rsp + 0x78]
cmp byte [rsp + 0x5c], 0
movaps xmmword [rsp + 0x240], xmm6
jne 0x1400a4890
test ebx, ebx
cmovne esi, ebx
mov qword [rbp - 0x58], rsi
cmp esi, dword [rdi + 0x3444]
jl 0x1400a5b4a
movsxd rbx, esi
mov r13d, 0x27
add rbx, 0x18
lea rbx, [rdi + rbx*4]
mov qword [rbp - 0x78], rbx
nop dword [rax]
mov r8d, dword [rbx]
test r8d, r8d
je 0x1400a4817
nop dword [rax]
mov rax, qword [rdi + 0x48]
mov edx, r8d
shr rdx, 0x10
movzx ecx, r8w
inc r8d
mov rax, qword [rax + rdx*8]
mov r10d, dword [rax + rcx*4]
mov eax, r8d
and eax, 0xf
mov dword [rbx], r8d
cmp al, 0xf
jne 0x1400a412c
mov rax, qword [rdi + 0x48]
mov ecx, r8d
shr rcx, 0x10
movzx r8d, r8w
mov rdx, qword [rax + rcx*8]
mov eax, dword [rdi + 0x5c]
mov ecx, dword [rdx + r8*4]
mov dword [rdx + r8*4], eax
mov eax, dword [rbx]
mov dword [rdi + 0x5c], eax
mov dword [rbx], ecx
test r10d, r10d
jns 0x1400a47cd
mov rdx, qword [rdi + 0x3508]
mov eax, r10d
btr eax, 0x1f
mov r10d, 1
mov r8d, eax
movzx eax, ax
shr r8, 0x10
lea rcx, [rax + rax*4]
mov rax, qword [rdx + r8*8]
mov r8d, dword [rax + rcx*8 + 0xc]
lea r15, [rax + rcx*8]
movzx eax, byte [rax + rcx*8 + 0x26]
mov ecx, 0x20
mov edx, dword [r15 + 0x10]
sub ecx, eax
mov rax, qword [rdi + 0x2f90]
mov r9d, dword [r15 + 0x14]
shl r10, cl
sar rax, 0x20
lea ecx, [r10 + r8]
cmp eax, r8d
jl 0x1400a41b0
cmp eax, ecx
jg 0x1400a41ac
mov r8, r14
jmp 0x1400a41bd
mov ebx, dword [rsp + 0x70]
mov edx, r12d
mov rcx, rdi
call fcn.1400a37c0
jmp 0x1400a4033
sub eax, ecx
jmp 0x1400a41b6
sub r8d, eax
mov eax, r8d
movsxd r8, eax
imul r8, r8
mov rax, qword [rdi + 0x2f98]
lea ecx, [r10 + rdx]
sar rax, 0x20
cmp eax, edx
jl 0x1400a41dd
cmp eax, ecx
jg 0x1400a41d9
mov rcx, r14
jmp 0x1400a41e8
sub eax, ecx
jmp 0x1400a41e1
sub edx, eax
mov eax, edx
movsxd rcx, eax
imul rcx, rcx
mov rax, qword [rdi + 0x2fa0]
lea edx, [r9 + r10]
sar rax, 0x20
cmp eax, r9d
jl 0x1400a4209
cmp eax, edx
jg 0x1400a4205
mov rax, r14
jmp 0x1400a4215
sub eax, edx
jmp 0x1400a420f
sub r9d, eax
mov eax, r9d
cdqe
imul rax, rax
movzx esi, word [r15 + 0x1e]
xorps xmm7, xmm7
add rax, r8
mov dword [rsp + 0x50], esi
add rax, rcx
cvtsi2ss xmm7, rax
movaps xmm6, xmm7
mulss xmm7, xmm3
mulss xmm6, xmm1
test esi, esi
je 0x1400a42fc
nop
lea r14d, [rsi - 1]
mov eax, r14d
imul rbx, rax, 0x38
add rbx, qword [r15]
comiss xmm6, dword [rbx + 0x2c]
jbe 0x1400a42f8
movzx edx, byte [rbx + 0x1c]
movsxd r8, dword [rbx + 0x18]
mov ecx, edx
and ecx, 0xf
je 0x1400a42b2
sub ecx, 1
je 0x1400a4279
cmp ecx, 1
jne 0x1400a42e5
and dl, 0xf0
mov byte [rbx + 0x1c], dl
jmp 0x1400a42e5
mov rax, qword [rdi + 0x3050]
mov rcx, qword [rdi + 0x3048]
mov rax, qword [rax - 8]
mov qword [rcx + r8*8], rax
mov rax, qword [rdi + 0x3048]
mov rcx, qword [rax + r8*8]
mov dword [rcx + 0x18], r8d
add qword [rdi + 0x3050], 0xfffffffffffffff8
dec dword [rdi + 0x3040]
and byte [rbx + 0x1c], 0xf0
jmp 0x1400a42e5
mov rdx, qword [rdi + 0x3470]
lea rcx, [rdi + 0x3468]
mov dword [rsp + 0x54], r8d
cmp rdx, qword [rdi + 0x3478]
je 0x1400a42db
mov dword [rdx], r8d
add qword [rdi + 0x3470], 4
jmp 0x1400a42e5
lea r8, [rsp + 0x54]
call fcn.1400a3140
mov dword [rbx + 0x18], 0xffffffff
mov esi, r14d
test r14d, r14d
jne 0x1400a4240
mov dword [rsp + 0x50], esi
mov word [r15 + 0x1e], si
test esi, esi
je 0x1400a458d
nop dword [rax]
lea ecx, [rsi - 1]
imul rbx, rcx, 0x38
add rbx, qword [r15]
comiss xmm7, dword [rbx + 0x2c]
jbe 0x1400a458d
movzx edx, byte [rbx + 0x1c]
test dl, 0xf
je 0x1400a4580
movsxd r8, dword [rbx + 0x18]
mov ecx, edx
and ecx, 0xf
je 0x1400a4387
sub ecx, 1
je 0x1400a434e
cmp ecx, 1
jne 0x1400a43c1
and dl, 0xf0
mov byte [rbx + 0x1c], dl
jmp 0x1400a43c1
mov rax, qword [rdi + 0x3050]
mov rcx, qword [rdi + 0x3048]
mov rax, qword [rax - 8]
mov qword [rcx + r8*8], rax
mov rax, qword [rdi + 0x3048]
mov rcx, qword [rax + r8*8]
mov dword [rcx + 0x18], r8d
add qword [rdi + 0x3050], 0xfffffffffffffff8
dec dword [rdi + 0x3040]
and byte [rbx + 0x1c], 0xf0
jmp 0x1400a43ba
mov rdx, qword [rdi + 0x3470]
lea rcx, [rdi + 0x3468]
mov dword [rsp + 0x54], r8d
cmp rdx, qword [rdi + 0x3478]
je 0x1400a43b0
mov dword [rdx], r8d
add qword [rdi + 0x3470], 4
jmp 0x1400a43ba
lea r8, [rsp + 0x54]
call fcn.1400a3140
mov dword [rbx + 0x18], 0xffffffff
mov r14, qword [rdi + 0x3468]
mov rax, qword [rdi + 0x3470]
sub rax, r14
sar rax, 2
test eax, eax
je 0x1400a43ea
dec eax
mov r14d, dword [r14 + rax*4]
add qword [rdi + 0x3470], 0xfffffffffffffffc
jmp 0x1400a4424
mov r14, qword [rdi + 0x3450]
mov rax, qword [rdi + 0x3458]
sub rax, r14
sar rax, 2
test eax, eax
je 0x1400a4413
dec eax
mov r14d, dword [r14 + rax*4]
add qword [rdi + 0x3458], 0xfffffffffffffffc
jmp 0x1400a4424
mov r14d, dword [rdi + 0x3448]
lea eax, [r14 + 1]
mov dword [rdi + 0x3448], eax
mov r11, qword [rbx + 0x10]
mov r10, qword [rbx + 8]
mov rax, r11
mov r9, qword [rbx]
cqo
mov r8, rax
mov dword [rbx + 0x18], r14d
xor r8, rdx
mov rax, r10
sub r8, rdx
cqo
mov rcx, rax
mov rax, r9
xor rcx, rdx
sub rcx, rdx
cqo
xor rax, rdx
sub rax, rdx
mov edx, dword [rdi + 0x309c]
cmp rax, rcx
cmovl rax, rcx
mov ecx, r13d
cmp rax, r8
cmovl rax, r8
lzcnt rax, rax
dec eax
cmp eax, r13d
cmova eax, r13d
sub ecx, eax
movzx eax, byte [rbx + 0x24]
sar r9, cl
sar r10, cl
sar r11, cl
shl r9, 7
add r9d, eax
shl r10, 7
movzx eax, byte [rbx + 0x25]
add r10d, eax
shl r11, 7
movzx eax, byte [rbx + 0x26]
add r11d, eax
mov dword [rbp - 0x68], r9d
mov eax, dword [rbx + 0x28]
shl eax, 5
add eax, ecx
mov dword [rbp - 0x64], r10d
mov ecx, dword [rdi + 0x30a0]
mov dword [rbp - 0x5c], eax
mov dword [rbp - 0x60], r11d
lea eax, [rcx + rdx]
cmp eax, r14d
jne 0x1400a44dc
lea eax, [rcx + 1]
lea rcx, [rdi + 0x30a8]
jmp 0x1400a4559
mov r8d, dword [rdi + 0x3098]
shl edx, 4
shl ecx, 4
mov eax, edx
mov rdx, qword [rdi + 0x3088]
shl r8d, 4
mov r9d, ecx
lea rcx, [rdi + 0x3080]
mov qword [rbp - 0x10], r8
mov qword [rbp - 8], rax
mov qword [rbp], r9
cmp rdx, qword [rdi + 0x3090]
je 0x1400a452a
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], r9
add qword [rdi + 0x3088], 0x18
jmp 0x1400a4533
lea r8, [rbp - 0x10]
call fcn.1400a97f0
lea rcx, [rdi + 0x30a8]
mov rax, qword [rcx + 8]
sub rax, qword [rcx]
sar rax, 4
mov dword [rdi + 0x3098], eax
mov eax, dword [rbx + 0x18]
mov dword [rdi + 0x309c], eax
mov eax, 1
mov dword [rdi + 0x30a0], eax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x1400a4577
movups xmm0, xmmword [rbp - 0x68]
movups xmmword [rdx], xmm0
add qword [rcx + 8], 0x10
jmp 0x1400a4580
lea r8, [rbp - 0x68]
call fcn.1400a9700
add esi, 0xffffffff
mov dword [rsp + 0x50], esi
jne 0x1400a4310
mov qword [rsp + 0x30], r15
mov rcx, rdi
mov dword [rsp + 0x28], esi
call fcn.1400a8060
movss dword [rsp + 0x38], xmm7
lea rax, [rsp + 0x50]
mov qword [rsp + 0x30], rax
mov rcx, rdi
mov qword [rsp + 0x28], r15
call fcn.1400a8580
mov ecx, dword [rsp + 0x50]
movzx r12d, word [r15 + 0x1c]
mov word [r15 + 0x20], cx
cmp cx, word [r15 + 0x1e]
cmovb cx, word [r15 + 0x1e]
movzx r14d, cx
cmp r14d, r12d
jae 0x1400a47be
mov eax, r14d
imul rbx, rax, 0x38
add rbx, qword [r15]
movss xmm0, dword [rbx + 0x2c]
comiss xmm0, xmm6
jb 0x1400a47be
mov rsi, qword [rdi + 0x3468]
mov rax, qword [rdi + 0x3470]
sub rax, rsi
sar rax, 2
test eax, eax
je 0x1400a4621
dec eax
mov esi, dword [rsi + rax*4]
add qword [rdi + 0x3470], 0xfffffffffffffffc
jmp 0x1400a4658
mov rsi, qword [rdi + 0x3450]
mov rax, qword [rdi + 0x3458]
sub rax, rsi
sar rax, 2
test eax, eax
je 0x1400a4649
dec eax
mov esi, dword [rsi + rax*4]
add qword [rdi + 0x3458], 0xfffffffffffffffc
jmp 0x1400a4658
mov esi, dword [rdi + 0x3448]
lea eax, [rsi + 1]
mov dword [rdi + 0x3448], eax
mov r11, qword [rbx + 0x10]
mov r10, qword [rbx + 8]
mov rax, r11
mov r9, qword [rbx]
cqo
mov r8, rax
mov dword [rbx + 0x18], esi
xor r8, rdx
mov rax, r10
sub r8, rdx
cqo
mov rcx, rax
mov rax, r9
xor rcx, rdx
sub rcx, rdx
cqo
xor rax, rdx
sub rax, rdx
mov edx, dword [rdi + 0x309c]
cmp rax, rcx
cmovl rax, rcx
mov ecx, r13d
cmp rax, r8
cmovl rax, r8
lzcnt rax, rax
dec eax
cmp eax, r13d
cmova eax, r13d
sub ecx, eax
movzx eax, byte [rbx + 0x24]
sar r9, cl
sar r10, cl
sar r11, cl
shl r9, 7
add r9d, eax
shl r10, 7
movzx eax, byte [rbx + 0x25]
add r10d, eax
shl r11, 7
movzx eax, byte [rbx + 0x26]
add r11d, eax
mov dword [rbp - 0x50], r9d
mov eax, dword [rbx + 0x28]
shl eax, 5
add eax, ecx
mov dword [rbp - 0x4c], r10d
mov ecx, dword [rdi + 0x30a0]
mov dword [rbp - 0x44], eax
mov dword [rbp - 0x48], r11d
lea eax, [rcx + rdx]
cmp eax, esi
jne 0x1400a470e
lea eax, [rcx + 1]
lea rcx, [rdi + 0x30a8]
jmp 0x1400a478b
mov r8d, dword [rdi + 0x3098]
shl edx, 4
shl ecx, 4
mov eax, edx
mov rdx, qword [rdi + 0x3088]
shl r8d, 4
mov r9d, ecx
lea rcx, [rdi + 0x3080]
mov qword [rbp - 0x10], r8
mov qword [rbp - 8], rax
mov qword [rbp], r9
cmp rdx, qword [rdi + 0x3090]
je 0x1400a475c
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], r9
add qword [rdi + 0x3088], 0x18
jmp 0x1400a4765
lea r8, [rbp - 0x10]
call fcn.1400a97f0
lea rcx, [rdi + 0x30a8]
mov rax, qword [rcx + 8]
sub rax, qword [rcx]
sar rax, 4
mov dword [rdi + 0x3098], eax
mov eax, dword [rbx + 0x18]
mov dword [rdi + 0x309c], eax
mov eax, 1
mov dword [rdi + 0x30a0], eax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x1400a47a9
movups xmm0, xmmword [rbp - 0x50]
movups xmmword [rdx], xmm0
add qword [rcx + 8], 0x10
jmp 0x1400a47b2
lea r8, [rbp - 0x50]
call fcn.1400a9700
inc r14d
cmp r14d, r12d
jb 0x1400a45e1
mov rbx, qword [rbp - 0x78]
mov rsi, qword [rbp - 0x58]
mov word [r15 + 0x1e], r14w
jmp 0x1400a47f4
mov qword [rsp + 0x30], r9
mov edx, r10d
movss dword [rsp + 0x28], xmm3
mov r9d, esi
mov rcx, rdi
movss dword [rsp + 0x20], xmm1
call fcn.1400a5b90
test al, al
jne 0x1400a5b4a
mov r8d, dword [rbx]
mov r14d, 0
movss xmm1, dword [rsp + 0x78]
movss xmm3, dword [rsp + 0x7c]
mov r9, qword [rsp + 0x68]
test r8d, r8d
jne 0x1400a40e0
mov edx, 1
lea rcx, [rbp + 0x90]
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__timespec64_get]
test esi, esi
jle 0x1400a484f
imul rcx, qword [rbp + 0x90], 0x3b9aca00
movsxd rax, dword [rbp + 0x98]
add rcx, rax
sub rcx, qword [rbp - 0x20]
cmp rcx, qword [rdi + 0x2f68]
ja 0x1400a4882
dec esi
sub rbx, 4
mov qword [rbp - 0x58], rsi
mov qword [rbp - 0x78], rbx
cmp esi, dword [rdi + 0x3444]
jl 0x1400a5b4a
movss xmm1, dword [rsp + 0x78]
xor r14d, r14d
movss xmm3, dword [rsp + 0x7c]
mov r9, qword [rsp + 0x68]
jmp 0x1400a40d0
lea eax, [rsi - 1]
mov dword [rdi + 0x3440], eax
jmp 0x1400a5b4a
lea r15, [rdi + 0x3048]
mov dword [rdi + 0x3448], r14d
mov dword [rdi + 0x3040], r14d
mov dword [rdi + 0x3060], r14d
mov rax, qword [r15]
cmp rax, qword [r15 + 8]
je 0x1400a48b9
mov qword [r15 + 8], rax
movss xmm0, dword [rdi + 0x34e8]
movss xmm5, dword [rdi + 0x34f4]
movdqa xmm2, xmmword [0x140101450]
shufps xmm0, xmm0, 0
movaps xmmword [rbp + 0x50], xmm0
movss xmm0, dword [rdi + 0x34ec]
shufps xmm0, xmm0, 0
movaps xmmword [rbp + 0x60], xmm0
movss xmm0, dword [rdi + 0x34f0]
shufps xmm0, xmm0, 0
movaps xmmword [rbp + 0x70], xmm0
movss xmm0, dword [rdi + 0x34f8]
shufps xmm0, xmm0, 0
movaps xmmword [rbp + 0x30], xmm0
movss xmm0, dword [rdi + 0x34fc]
shufps xmm0, xmm0, 0
movaps xmmword [rbp + 0x40], xmm0
movss xmm0, dword [0x14012bbb0]
shufps xmm0, xmm0, 0
shufps xmm5, xmm5, 0
movaps xmmword [rbp + 0x80], xmm0
movaps xmmword [rbp + 0x90], xmm5
cmp dword [rdi + 0x3444], esi
jg 0x1400a5b4a
movaps xmmword [rsp + 0x200], xmm10
mov rbx, rsi
movaps xmmword [rsp + 0x1f0], xmm11
mov r13d, 0x27
movaps xmmword [rsp + 0x1e0], xmm12
movaps xmmword [rsp + 0x1d0], xmm13
movaps xmmword [rsp + 0x1c0], xmm14
movaps xmmword [rsp + 0x1b0], xmm15
mov qword [rbp - 0x78], rbx
nop word [rax + rax]
mov r8d, dword [rdi + rbx*4 + 0x60]
test r8d, r8d
je 0x1400a5aea
nop
mov rax, qword [rdi + 0x48]
mov edx, r8d
shr rdx, 0x10
movzx ecx, r8w
inc r8d
mov rax, qword [rax + rdx*8]
mov r10d, dword [rax + rcx*4]
mov eax, r8d
and eax, 0xf
mov dword [rdi + rbx*4 + 0x60], r8d
cmp al, 0xf
jne 0x1400a49f2
mov rax, qword [rdi + 0x48]
mov ecx, r8d
shr rcx, 0x10
movzx r8d, r8w
mov rdx, qword [rax + rcx*8]
mov eax, dword [rdi + 0x5c]
mov ecx, dword [rdx + r8*4]
mov dword [rdx + r8*4], eax
mov eax, dword [rdi + rbx*4 + 0x60]
mov dword [rdi + 0x5c], eax
mov dword [rdi + rbx*4 + 0x60], ecx
test r10d, r10d
jns 0x1400a5a99
mov rdx, qword [rdi + 0x3508]
mov eax, r10d
btr eax, 0x1f
mov r8d, eax
movzx eax, ax
shr r8, 0x10
lea rcx, [rax + rax*4]
mov rax, qword [rdx + r8*8]
mov r9, qword [rax + rcx*8]
lea r12, [rax + rcx*8]
test r9, r9
je 0x1400a5acb
movzx eax, byte [r12 + 0x26]
mov ecx, 0x20
mov edx, dword [r12 + 0xc]
sub ecx, eax
mov rax, qword [rdi + 0x2f90]
mov r11d, 1
mov r8d, dword [r12 + 0x10]
mov r10d, dword [r12 + 0x14]
shl r11, cl
sar rax, 0x20
lea ecx, [r11 + rdx]
cmp eax, edx
jl 0x1400a4a71
cmp eax, ecx
jg 0x1400a4a6d
mov rdx, r14
jmp 0x1400a4a7c
sub eax, ecx
jmp 0x1400a4a75
sub edx, eax
mov eax, edx
movsxd rdx, eax
imul rdx, rdx
mov rax, qword [rdi + 0x2f98]
lea ecx, [r11 + r8]
sar rax, 0x20
cmp eax, r8d
jl 0x1400a4a9d
cmp eax, ecx
jg 0x1400a4a99
mov rcx, r14
jmp 0x1400a4aaa
sub eax, ecx
jmp 0x1400a4aa3
sub r8d, eax
mov eax, r8d
movsxd rcx, eax
imul rcx, rcx
mov rax, qword [rdi + 0x2fa0]
lea r8d, [r11 + r10]
sar rax, 0x20
cmp eax, r10d
jl 0x1400a4acd
cmp eax, r8d
jg 0x1400a4ac8
mov rax, r14
jmp 0x1400a4ad9
sub eax, r8d
jmp 0x1400a4ad3
sub r10d, eax
mov eax, r10d
cdqe
imul rax, rax
movzx r11d, word [r12 + 0x1c]
xorps xmm6, xmm6
add rax, rcx
add rax, rdx
cvtsi2ss xmm6, rax
movaps xmm11, xmm6
mulss xmm6, xmm3
mulss xmm11, xmm1
movss dword [rsp + 0x60], xmm6
movss dword [rsp + 0x54], xmm11
test r11d, r11d
je 0x1400a4f5b
movaps xmm11, xmmword [0x140101490]
mov r10d, 2
movaps xmm12, xmmword [0x140101510]
movaps xmm13, xmmword [0x1401014a0]
movaps xmm14, xmmword [0x1401014b0]
movaps xmm15, xmmword [0x140101500]
nop
lea ecx, [r10 - 2]
imul rbx, rcx, 0x38
lea esi, [r10 - 1]
and byte [rbx + r9 + 0x1c], 0xf0
movzx edx, byte [rbx + r9 + 0x27]
movss xmm9, dword [rbx + r9 + 0x30]
imul rcx, rdx, 0x4c0
movd xmm10, edx
shufps xmm9, xmm9, 0
pshufd xmm10, xmm10, 0
mov dword [rbx + r9 + 0x18], 0xffffffff
mov rax, qword [rdi + 0x3068]
movss xmm3, dword [rcx + rax + 0x20]
movss xmm4, dword [rcx + rax + 0x30]
shufps xmm3, xmm3, 0
shufps xmm4, xmm4, 0
cmp esi, r11d
jae 0x1400a4c86
mov eax, esi
imul rdx, rax, 0x38
add rdx, r9
and byte [rdx + 0x1c], 0xf0
movzx r8d, byte [rdx + 0x27]
insertps xmm9, dword [rdx + 0x30], 0x10
imul rcx, r8, 0x4c0
pinsrd xmm10, r8d, 1
mov dword [rdx + 0x18], 0xffffffff
mov rax, qword [rdi + 0x3068]
insertps xmm3, dword [rcx + rax + 0x20], 0x10
insertps xmm4, dword [rcx + rax + 0x30], 0x10
cmp r10d, r11d
jae 0x1400a4c86
mov eax, r10d
imul rdx, rax, 0x38
add rdx, r9
and byte [rdx + 0x1c], 0xf0
movzx r8d, byte [rdx + 0x27]
insertps xmm9, dword [rdx + 0x30], 0x20
imul rcx, r8, 0x4c0
pinsrd xmm10, r8d, 2
mov dword [rdx + 0x18], 0xffffffff
mov rax, qword [rdi + 0x3068]
insertps xmm3, dword [rcx + rax + 0x20], 0x20
insertps xmm4, dword [rcx + rax + 0x30], 0x20
lea eax, [r10 + 1]
cmp eax, r11d
jae 0x1400a4c86
imul rdx, rax, 0x38
add rdx, r9
and byte [rdx + 0x1c], 0xf0
movzx r8d, byte [rdx + 0x27]
insertps xmm9, dword [rdx + 0x30], 0x30
mov dword [rdx + 0x18], 0xffffffff
mov rax, qword [rdi + 0x3068]
imul rcx, r8, 0x4c0
pinsrd xmm10, r8d, 3
insertps xmm3, dword [rcx + rax + 0x20], 0x30
insertps xmm4, dword [rcx + rax + 0x30], 0x30
movdqa xmm0, xmm9
andps xmm0, xmm2
movaps xmm2, xmm11
orps xmm0, xmmword [0x1401014f0]
mulps xmm2, xmm0
addps xmm2, xmmword [0x1401015c0]
mulps xmm2, xmm0
addps xmm2, xmmword [0x140101530]
mulps xmm2, xmm0
movdqa xmm0, xmm9
psrld xmm0, 0x17
psubd xmm0, xmmword [0x1401013f0]
cvtdq2ps xmm0, xmm0
addps xmm2, xmmword [0x1401015d0]
mulps xmm0, xmmword [0x1401014c0]
addps xmm2, xmm0
movaps xmm0, xmm13
mulps xmm2, xmm3
mulps xmm2, xmm12
roundps xmm1, xmm2, 1
subps xmm2, xmm1
cvtps2dq xmm8, xmm1
mulps xmm0, xmm2
movaps xmm1, xmm13
pslld xmm8, 0x17
addps xmm0, xmm14
mulps xmm0, xmm2
addps xmm0, xmm15
paddd xmm8, xmm0
movaps xmm0, xmm12
mulps xmm8, xmm4
movaps xmm6, xmm8
movaps xmm7, xmm8
mulps xmm7, xmmword [rbp + 0x30]
mulps xmm8, xmmword [rbp + 0x40]
mulps xmm6, xmm5
mulps xmm0, xmm6
roundps xmm2, xmm0, 1
subps xmm0, xmm2
cvtps2dq xmm4, xmm2
mulps xmm1, xmm0
pslld xmm4, 0x17
addps xmm1, xmm14
mulps xmm1, xmm0
movaps xmm0, xmm12
mulps xmm0, xmm7
addps xmm1, xmm15
roundps xmm2, xmm0, 1
subps xmm0, xmm2
cvtps2dq xmm5, xmm2
paddd xmm4, xmm1
movaps xmm1, xmm13
mulps xmm1, xmm0
pslld xmm5, 0x17
addps xmm1, xmm14
mulps xmm1, xmm0
movaps xmm0, xmm12
mulps xmm0, xmm8
addps xmm1, xmm15
roundps xmm2, xmm0, 1
subps xmm0, xmm2
cvtps2dq xmm3, xmm2
movaps xmm2, xmmword [0x1401014f0]
paddd xmm5, xmm1
subps xmm4, xmm2
pslld xmm3, 0x17
movaps xmm1, xmm13
subps xmm5, xmm2
mulps xmm1, xmm0
addps xmm1, xmm14
mulps xmm1, xmm0
movaps xmm0, xmmword [0x140101550]
cmpleps xmm0, xmm6
movaps xmm6, xmmword [rbp + 0x50]
divps xmm6, xmm4
movaps xmm4, xmmword [rbp + 0x60]
addps xmm1, xmm15
blendvps xmm6, xmmword [0x140101480], xmm0
movaps xmm0, xmmword [0x140101550]
cmpleps xmm0, xmm7
paddd xmm3, xmm1
pslld xmm10, 8
subps xmm3, xmm2
movaps xmm2, xmmword [0x140101560]
movaps xmm1, xmm6
movaps xmm7, xmm9
mulps xmm7, xmm9
divps xmm4, xmm5
movaps xmm5, xmmword [rbp + 0x70]
blendvps xmm4, xmmword [0x140101480], xmm0
movaps xmm0, xmmword [0x140101550]
cmpleps xmm0, xmm8
divps xmm5, xmm3
maxps xmm1, xmm4
blendvps xmm5, xmmword [0x140101480], xmm0
maxps xmm1, xmm5
movaps xmm0, xmm1
mulps xmm0, xmmword [rbp + 0x80]
divps xmm2, xmm1
mulps xmm7, xmm0
movaps xmm0, xmm2
mulps xmm0, xmm4
movdqa xmm4, xmm7
punpckldq xmm4, xmm9
cvttps2dq xmm3, xmm0
movaps xmm0, xmm2
mulps xmm2, xmm5
mulps xmm0, xmm6
pslld xmm3, 8
cvttps2dq xmm0, xmm0
paddd xmm3, xmm0
cvttps2dq xmm0, xmm2
movdqa xmm2, xmm7
psrld xmm2, 0x17
paddd xmm0, xmm10
psubd xmm2, xmmword [0x140101400]
pslld xmm0, 0x10
pslld xmm2, 0x14
paddd xmm3, xmm0
movdqa xmm0, xmm7
andps xmm0, xmmword [0x140101450]
paddd xmm0, xmmword [0x140101570]
roundps xmm0, xmm0, 8
cvtps2dq xmm1, xmm0
pslld xmm1, 8
paddd xmm2, xmm1
movdqa xmm1, xmm3
punpckldq xmm1, xmm2
movdqa xmm0, xmm1
punpcklqdq xmm0, xmm4
movdqu xmmword [rbx + r9 + 0x24], xmm0
cmp esi, r11d
jae 0x1400a4f1e
mov eax, esi
imul rcx, rax, 0x38
punpckhqdq xmm1, xmm4
movdqu xmmword [rcx + r9 + 0x24], xmm1
cmp r10d, r11d
jae 0x1400a4f1e
mov eax, r10d
imul rcx, rax, 0x38
punpckhdq xmm3, xmm2
punpckhdq xmm7, xmm9
movdqa xmm0, xmm3
punpcklqdq xmm0, xmm7
lea eax, [r10 + 1]
movdqu xmmword [rcx + r9 + 0x24], xmm0
cmp eax, r11d
jae 0x1400a4f1e
imul rcx, rax, 0x38
punpckhqdq xmm3, xmm7
movdqu xmmword [rcx + r9 + 0x24], xmm3
movaps xmm5, xmmword [rbp + 0x90]
add r10d, 4
movdqa xmm2, xmmword [0x140101450]
lea eax, [r10 - 2]
cmp eax, r11d
jb 0x1400a4b40
movss xmm11, dword [rsp + 0x54]
movss xmm6, dword [rsp + 0x60]
movss xmm7, dword [rbp - 0x28]
movaps xmm8, xmmword [rbp - 0x10]
movss xmm9, dword [rbp - 0x24]
mov rcx, qword [r12]
lea r9, [0x1400a37b0]
imul rdx, r11, 0x38
movabs rax, 0x6db6db6db6db6db7
mov r8, rdx
add rdx, rcx
sar r8, 3
imul r8, rax
call fcn.1400a8e70
movzx ecx, word [r12 + 0x1c]
mov dword [r12 + 0x1e], 0
mov dword [rsp + 0x60], ecx
test ecx, ecx
je 0x1400a52d6
nop dword [rax]
nop word [rax + rax]
mov eax, r14d
imul rsi, rax, 0x38
add rsi, qword [r12]
movss xmm0, dword [rsi + 0x2c]
comiss xmm0, xmm6
jb 0x1400a52d6
comiss xmm7, xmm0
jbe 0x1400a4fdf
movdqa xmm0, xmm8
psrldq xmm0, 8
movq r8, xmm0
jmp 0x1400a5022
mulss xmm0, xmm9
movd r8d, xmm0
movd eax, xmm0
and r8d, 0x7fffff
shr eax, 0x17
bts r8, 0x17
movzx edx, al
lea eax, [rdx - 0x96]
cmp edx, 0xd6
jb 0x1400a5018
lea ecx, [rdx - 0xd6]
shl r8, cl
jmp 0x1400a5022
mov ecx, 0x40
sub ecx, eax
shr r8, cl
mov rcx, qword [rsi]
sub rcx, qword [rdi + 0x2f90]
mov r10, qword [rsi + 0x10]
mov rax, rcx
mov r9, qword [rsi + 8]
sub r10, qword [rdi + 0x2fa0]
sub r9, qword [rdi + 0x2f98]
imul rcx
mov rcx, rdx
cmp rdx, r8
ja 0x1400a510d
mov rax, r9
imul r9
add rcx, rdx
cmp rcx, r8
ja 0x1400a510d
mov rax, r10
imul r10
add rcx, rdx
cmp rcx, r8
ja 0x1400a510d
mov ecx, dword [rdi + 0x3040]
lea eax, [rcx + 1]
mov dword [rdi + 0x3040], eax
mov dword [rsi + 0x18], ecx
mov r9, qword [r15 + 8]
mov rdx, qword [r15]
mov rcx, r9
mov ebx, dword [rdi + 0x3040]
sub rcx, rdx
sar rcx, 3
mov qword [rbp - 0x20], r9
cmp rbx, rcx
jae 0x1400a50b0
lea rax, [rdx + rbx*8]
jmp 0x1400a50ee
jbe 0x1400a50f2
mov rax, qword [r15 + 0x10]
sub rax, rdx
sar rax, 3
cmp rbx, rax
jbe 0x1400a50cf
mov rdx, rbx
mov rcx, r15
call fcn.1400a99e0
jmp 0x1400a50f2
sub rbx, rcx
xor edx, edx
mov rcx, r9
lea rbx, [rbx*8]
mov r8, rbx
call sub.VCRUNTIME140.dll_memset
mov rax, qword [rbp - 0x20]
add rax, rbx
mov qword [r15 + 8], rax
mov rax, qword [r15]
movsxd rcx, dword [rsi + 0x18]
mov qword [rax + rcx*8], rsi
movzx eax, byte [rsi + 0x1c]
and al, 0xf1
or al, 1
mov byte [rsi + 0x1c], al
jmp 0x1400a52c6
mov rbx, qword [rdi + 0x3468]
mov rax, qword [rdi + 0x3470]
sub rax, rbx
sar rax, 2
test eax, eax
je 0x1400a5135
dec eax
mov ebx, dword [rbx + rax*4]
add qword [rdi + 0x3470], 0xfffffffffffffffc
jmp 0x1400a516c
mov rbx, qword [rdi + 0x3450]
mov rax, qword [rdi + 0x3458]
sub rax, rbx
sar rax, 2
test eax, eax
je 0x1400a515d
dec eax
mov ebx, dword [rbx + rax*4]
add qword [rdi + 0x3458], 0xfffffffffffffffc
jmp 0x1400a516c
mov ebx, dword [rdi + 0x3448]
lea eax, [rbx + 1]
mov dword [rdi + 0x3448], eax
mov r11, qword [rsi + 0x10]
mov r10, qword [rsi + 8]
mov rax, r11
mov r9, qword [rsi]
cqo
mov r8, rax
mov dword [rsi + 0x18], ebx
xor r8, rdx
mov rax, r10
sub r8, rdx
cqo
mov rcx, rax
mov rax, r9
xor rcx, rdx
sub rcx, rdx
cqo
xor rax, rdx
sub rax, rdx
mov edx, dword [rdi + 0x309c]
cmp rax, rcx
cmovl rax, rcx
mov ecx, r13d
cmp rax, r8
cmovl rax, r8
lzcnt rax, rax
dec eax
cmp eax, r13d
cmova eax, r13d
sub ecx, eax
movzx eax, byte [rsi + 0x24]
sar r9, cl
sar r10, cl
sar r11, cl
shl r9, 7
add r9d, eax
shl r10, 7
movzx eax, byte [rsi + 0x25]
add r10d, eax
shl r11, 7
movzx eax, byte [rsi + 0x26]
add r11d, eax
mov dword [rbp - 0x50], r9d
mov eax, dword [rsi + 0x28]
shl eax, 5
add eax, ecx
mov dword [rbp - 0x4c], r10d
mov ecx, dword [rdi + 0x30a0]
mov dword [rbp - 0x44], eax
mov dword [rbp - 0x48], r11d
lea eax, [rcx + rdx]
cmp eax, ebx
jne 0x1400a5222
lea eax, [rcx + 1]
lea rcx, [rdi + 0x30a8]
jmp 0x1400a529f
mov r8d, dword [rdi + 0x3098]
shl edx, 4
shl ecx, 4
mov eax, edx
mov rdx, qword [rdi + 0x3088]
shl r8d, 4
mov r9d, ecx
lea rcx, [rdi + 0x3080]
mov qword [rbp - 0x40], r8
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], r9
cmp rdx, qword [rdi + 0x3090]
je 0x1400a5270
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], r9
add qword [rdi + 0x3088], 0x18
jmp 0x1400a5279
lea r8, [rbp - 0x40]
call fcn.1400a97f0
lea rcx, [rdi + 0x30a8]
mov rax, qword [rcx + 8]
sub rax, qword [rcx]
sar rax, 4
mov dword [rdi + 0x3098], eax
mov eax, dword [rsi + 0x18]
mov dword [rdi + 0x309c], eax
mov eax, 1
mov dword [rdi + 0x30a0], eax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x1400a52bd
movups xmm0, xmmword [rbp - 0x50]
movups xmmword [rdx], xmm0
add qword [rcx + 8], 0x10
jmp 0x1400a52c6
lea r8, [rbp - 0x50]
call fcn.1400a9700
mov ecx, dword [rsp + 0x60]
inc r14d
cmp r14d, ecx
jb 0x1400a4fb0
mov word [r12 + 0x20], r14w
cmp r14d, ecx
jae 0x1400a54d6
mov r15d, dword [rsp + 0x60]
nop word [rax + rax]
mov eax, r14d
imul rbx, rax, 0x38
add rbx, qword [r12]
movss xmm0, dword [rbx + 0x2c]
comiss xmm0, xmm11
jb 0x1400a54cf
mov rsi, qword [rdi + 0x3468]
mov rax, qword [rdi + 0x3470]
sub rax, rsi
sar rax, 2
test eax, eax
je 0x1400a5332
dec eax
mov esi, dword [rsi + rax*4]
add qword [rdi + 0x3470], 0xfffffffffffffffc
jmp 0x1400a5369
mov rsi, qword [rdi + 0x3450]
mov rax, qword [rdi + 0x3458]
sub rax, rsi
sar rax, 2
test eax, eax
je 0x1400a535a
dec eax
mov esi, dword [rsi + rax*4]
add qword [rdi + 0x3458], 0xfffffffffffffffc
jmp 0x1400a5369
mov esi, dword [rdi + 0x3448]
lea eax, [rsi + 1]
mov dword [rdi + 0x3448], eax
mov r11, qword [rbx + 0x10]
mov r10, qword [rbx + 8]
mov rax, r11
mov r9, qword [rbx]
cqo
mov r8, rax
mov dword [rbx + 0x18], esi
xor r8, rdx
mov rax, r10
sub r8, rdx
cqo
mov rcx, rax
mov rax, r9
xor rcx, rdx
sub rcx, rdx
cqo
xor rax, rdx
sub rax, rdx
mov edx, dword [rdi + 0x309c]
cmp rax, rcx
cmovl rax, rcx
mov ecx, r13d
cmp rax, r8
cmovl rax, r8
lzcnt rax, rax
dec eax
cmp eax, r13d
cmova eax, r13d
sub ecx, eax
movzx eax, byte [rbx + 0x24]
sar r9, cl
sar r10, cl
sar r11, cl
shl r9, 7
add r9d, eax
shl r10, 7
movzx eax, byte [rbx + 0x25]
add r10d, eax
shl r11, 7
movzx eax, byte [rbx + 0x26]
add r11d, eax
mov dword [rbp - 0x68], r9d
mov eax, dword [rbx + 0x28]
shl eax, 5
add eax, ecx
mov dword [rbp - 0x64], r10d
mov ecx, dword [rdi + 0x30a0]
mov dword [rbp - 0x5c], eax
mov dword [rbp - 0x60], r11d
lea eax, [rcx + rdx]
cmp eax, esi
jne 0x1400a541f
lea eax, [rcx + 1]
lea rcx, [rdi + 0x30a8]
jmp 0x1400a549c
mov r8d, dword [rdi + 0x3098]
shl edx, 4
shl ecx, 4
mov eax, edx
mov rdx, qword [rdi + 0x3088]
shl r8d, 4
mov r9d, ecx
lea rcx, [rdi + 0x3080]
mov qword [rbp - 0x40], r8
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], r9
cmp rdx, qword [rdi + 0x3090]
je 0x1400a546d
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], r9
add qword [rdi + 0x3088], 0x18
jmp 0x1400a5476
lea r8, [rbp - 0x40]
call fcn.1400a97f0
lea rcx, [rdi + 0x30a8]
mov rax, qword [rcx + 8]
sub rax, qword [rcx]
sar rax, 4
mov dword [rdi + 0x3098], eax
mov eax, dword [rbx + 0x18]
mov dword [rdi + 0x309c], eax
mov eax, 1
mov dword [rdi + 0x30a0], eax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x1400a54ba
movups xmm0, xmmword [rbp - 0x68]
movups xmmword [rdx], xmm0
add qword [rcx + 8], 0x10
jmp 0x1400a54c3
lea r8, [rbp - 0x68]
call fcn.1400a9700
inc r14d
cmp r14d, r15d
jb 0x1400a52f0
lea r15, [rdi + 0x3048]
movzx esi, r14w
mov word [r12 + 0x1e], si
mov dword [rsp + 0x50], esi
test esi, esi
je 0x1400a55a7
nop dword [rax]
lea r14d, [rsi - 1]
mov eax, r14d
imul rbx, rax, 0x38
add rbx, qword [r12]
comiss xmm11, dword [rbx + 0x2c]
jbe 0x1400a55a7
movzx edx, byte [rbx + 0x1c]
movsxd r8, dword [rbx + 0x18]
mov ecx, edx
and ecx, 0xf
je 0x1400a555c
sub ecx, 1
je 0x1400a552b
cmp ecx, 1
jne 0x1400a558f
and dl, 0xf0
mov byte [rbx + 0x1c], dl
jmp 0x1400a558f
mov rax, qword [rdi + 0x3050]
mov rcx, qword [r15]
mov rax, qword [rax - 8]
mov qword [rcx + r8*8], rax
mov rax, qword [r15]
mov rcx, qword [rax + r8*8]
mov dword [rcx + 0x18], r8d
add qword [rdi + 0x3050], 0xfffffffffffffff8
dec dword [rdi + 0x3040]
and byte [rbx + 0x1c], 0xf0
jmp 0x1400a558f
mov rdx, qword [rdi + 0x3470]
lea rcx, [rdi + 0x3468]
mov dword [rsp + 0x54], r8d
cmp rdx, qword [rdi + 0x3478]
je 0x1400a5585
mov dword [rdx], r8d
add qword [rdi + 0x3470], 4
jmp 0x1400a558f
lea r8, [rsp + 0x54]
call fcn.1400a3140
mov dword [rbx + 0x18], 0xffffffff
mov esi, r14d
mov dword [rsp + 0x50], r14d
test r14d, r14d
jne 0x1400a54f0
mov word [r12 + 0x1e], si
test esi, esi
je 0x1400a5836
nop word [rax + rax]
lea ecx, [rsi - 1]
imul rbx, rcx, 0x38
add rbx, qword [r12]
comiss xmm6, dword [rbx + 0x2c]
jbe 0x1400a5836
movzx edx, byte [rbx + 0x1c]
test dl, 0xf
je 0x1400a5829
movsxd r8, dword [rbx + 0x18]
mov ecx, edx
and ecx, 0xf
je 0x1400a5630
sub ecx, 1
je 0x1400a55ff
cmp ecx, 1
jne 0x1400a566a
and dl, 0xf0
mov byte [rbx + 0x1c], dl
jmp 0x1400a566a
mov rax, qword [rdi + 0x3050]
mov rcx, qword [r15]
mov rax, qword [rax - 8]
mov qword [rcx + r8*8], rax
mov rax, qword [r15]
mov rcx, qword [rax + r8*8]
mov dword [rcx + 0x18], r8d
add qword [rdi + 0x3050], 0xfffffffffffffff8
dec dword [rdi + 0x3040]
and byte [rbx + 0x1c], 0xf0
jmp 0x1400a5663
mov rdx, qword [rdi + 0x3470]
lea rcx, [rdi + 0x3468]
mov dword [rsp + 0x54], r8d
cmp rdx, qword [rdi + 0x3478]
je 0x1400a5659
mov dword [rdx], r8d
add qword [rdi + 0x3470], 4
jmp 0x1400a5663
lea r8, [rsp + 0x54]
call fcn.1400a3140
mov dword [rbx + 0x18], 0xffffffff
mov r14, qword [rdi + 0x3468]
mov rax, qword [rdi + 0x3470]
sub rax, r14
sar rax, 2
test eax, eax
je 0x1400a5693
dec eax
mov r14d, dword [r14 + rax*4]
add qword [rdi + 0x3470], 0xfffffffffffffffc
jmp 0x1400a56cd
mov r14, qword [rdi + 0x3450]
mov rax, qword [rdi + 0x3458]
sub rax, r14
sar rax, 2
test eax, eax
je 0x1400a56bc
dec eax
mov r14d, dword [r14 + rax*4]
add qword [rdi + 0x3458], 0xfffffffffffffffc
jmp 0x1400a56cd
mov r14d, dword [rdi + 0x3448]
lea eax, [r14 + 1]
mov dword [rdi + 0x3448], eax
mov r11, qword [rbx + 0x10]
mov r10, qword [rbx + 8]
mov rax, r11
mov r9, qword [rbx]
cqo
mov r8, rax
mov dword [rbx + 0x18], r14d
xor r8, rdx
mov rax, r10
sub r8, rdx
cqo
mov rcx, rax
mov rax, r9
xor rcx, rdx
sub rcx, rdx
cqo
xor rax, rdx
sub rax, rdx
mov edx, dword [rdi + 0x309c]
cmp rax, rcx
cmovl rax, rcx
mov ecx, r13d
cmp rax, r8
cmovl rax, r8
lzcnt rax, rax
dec eax
cmp eax, r13d
cmova eax, r13d
sub ecx, eax
movzx eax, byte [rbx + 0x24]
sar r9, cl
sar r10, cl
sar r11, cl
shl r9, 7
add r9d, eax
shl r10, 7
movzx eax, byte [rbx + 0x25]
add r10d, eax
shl r11, 7
movzx eax, byte [rbx + 0x26]
add r11d, eax
mov dword [rbp + 0x10], r9d
mov eax, dword [rbx + 0x28]
shl eax, 5
add eax, ecx
mov dword [rbp + 0x14], r10d
mov ecx, dword [rdi + 0x30a0]
mov dword [rbp + 0x1c], eax
mov dword [rbp + 0x18], r11d
lea eax, [rcx + rdx]
cmp eax, r14d
jne 0x1400a5785
lea eax, [rcx + 1]
lea rcx, [rdi + 0x30a8]
jmp 0x1400a5802
mov r8d, dword [rdi + 0x3098]
shl edx, 4
shl ecx, 4
mov eax, edx
mov rdx, qword [rdi + 0x3088]
shl r8d, 4
mov r9d, ecx
lea rcx, [rdi + 0x3080]
mov qword [rbp - 0x40], r8
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], r9
cmp rdx, qword [rdi + 0x3090]
je 0x1400a57d3
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], r9
add qword [rdi + 0x3088], 0x18
jmp 0x1400a57dc
lea r8, [rbp - 0x40]
call fcn.1400a97f0
lea rcx, [rdi + 0x30a8]
mov rax, qword [rcx + 8]
sub rax, qword [rcx]
sar rax, 4
mov dword [rdi + 0x3098], eax
mov eax, dword [rbx + 0x18]
mov dword [rdi + 0x309c], eax
mov eax, 1
mov dword [rdi + 0x30a0], eax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x1400a5820
movups xmm0, xmmword [rbp + 0x10]
movups xmmword [rdx], xmm0
add qword [rcx + 8], 0x10
jmp 0x1400a5829
lea r8, [rbp + 0x10]
call fcn.1400a9700
add esi, 0xffffffff
mov dword [rsp + 0x50], esi
jne 0x1400a55c0
mov qword [rsp + 0x30], r12
mov rcx, rdi
mov dword [rsp + 0x28], esi
call fcn.1400a8060
movss dword [rsp + 0x38], xmm6
lea rax, [rsp + 0x50]
mov qword [rsp + 0x30], rax
mov rcx, rdi
mov qword [rsp + 0x28], r12
call fcn.1400a8580
mov ecx, dword [rsp + 0x50]
movzx eax, word [r12 + 0x1c]
mov word [r12 + 0x20], cx
cmp cx, word [r12 + 0x1e]
cmovb cx, word [r12 + 0x1e]
movzx r14d, cx
cmp r14d, eax
jae 0x1400a5a86
mov r15d, eax
nop dword [rax]
nop word [rax + rax]
mov eax, r14d
imul rbx, rax, 0x38
add rbx, qword [r12]
movss xmm0, dword [rbx + 0x2c]
comiss xmm0, xmm11
jb 0x1400a5a7f
mov rsi, qword [rdi + 0x3468]
mov rax, qword [rdi + 0x3470]
sub rax, rsi
sar rax, 2
test eax, eax
je 0x1400a58e2
dec eax
mov esi, dword [rsi + rax*4]
add qword [rdi + 0x3470], 0xfffffffffffffffc
jmp 0x1400a5919
mov rsi, qword [rdi + 0x3450]
mov rax, qword [rdi + 0x3458]
sub rax, rsi
sar rax, 2
test eax, eax
je 0x1400a590a
dec eax
mov esi, dword [rsi + rax*4]
add qword [rdi + 0x3458], 0xfffffffffffffffc
jmp 0x1400a5919
mov esi, dword [rdi + 0x3448]
lea eax, [rsi + 1]
mov dword [rdi + 0x3448], eax
mov r11, qword [rbx + 0x10]
mov r10, qword [rbx + 8]
mov rax, r11
mov r9, qword [rbx]
cqo
mov r8, rax
mov dword [rbx + 0x18], esi
xor r8, rdx
mov rax, r10
sub r8, rdx
cqo
mov rcx, rax
mov rax, r9
xor rcx, rdx
sub rcx, rdx
cqo
xor rax, rdx
sub rax, rdx
mov edx, dword [rdi + 0x309c]
cmp rax, rcx
cmovl rax, rcx
mov ecx, r13d
cmp rax, r8
cmovl rax, r8
lzcnt rax, rax
dec eax
cmp eax, r13d
cmova eax, r13d
sub ecx, eax
movzx eax, byte [rbx + 0x24]
sar r9, cl
sar r10, cl
sar r11, cl
shl r9, 7
add r9d, eax
shl r10, 7
movzx eax, byte [rbx + 0x25]
add r10d, eax
shl r11, 7
movzx eax, byte [rbx + 0x26]
add r11d, eax
mov dword [rbp + 0x20], r9d
mov eax, dword [rbx + 0x28]
shl eax, 5
add eax, ecx
mov dword [rbp + 0x24], r10d
mov ecx, dword [rdi + 0x30a0]
mov dword [rbp + 0x2c], eax
mov dword [rbp + 0x28], r11d
lea eax, [rcx + rdx]
cmp eax, esi
jne 0x1400a59cf
lea eax, [rcx + 1]
lea rcx, [rdi + 0x30a8]
jmp 0x1400a5a4c
mov r8d, dword [rdi + 0x3098]
shl edx, 4
shl ecx, 4
mov eax, edx
mov rdx, qword [rdi + 0x3088]
shl r8d, 4
mov r9d, ecx
lea rcx, [rdi + 0x3080]
mov qword [rbp - 0x40], r8
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], r9
cmp rdx, qword [rdi + 0x3090]
je 0x1400a5a1d
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], r9
add qword [rdi + 0x3088], 0x18
jmp 0x1400a5a26
lea r8, [rbp - 0x40]
call fcn.1400a97f0
lea rcx, [rdi + 0x30a8]
mov rax, qword [rcx + 8]
sub rax, qword [rcx]
sar rax, 4
mov dword [rdi + 0x3098], eax
mov eax, dword [rbx + 0x18]
mov dword [rdi + 0x309c], eax
mov eax, 1
mov dword [rdi + 0x30a0], eax
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x1400a5a6a
movups xmm0, xmmword [rbp + 0x20]
movups xmmword [rdx], xmm0
add qword [rcx + 8], 0x10
jmp 0x1400a5a73
lea r8, [rbp + 0x20]
call fcn.1400a9700
inc r14d
cmp r14d, r15d
jb 0x1400a58a0
lea r15, [rdi + 0x3048]
mov rbx, qword [rbp - 0x78]
mov rsi, qword [rbp - 0x58]
mov word [r12 + 0x1e], r14w
xor r14d, r14d
jmp 0x1400a5abc
mov qword [rsp + 0x30], r9
mov edx, r10d
movss dword [rsp + 0x28], xmm3
mov r9d, esi
mov rcx, rdi
movss dword [rsp + 0x20], xmm1
call fcn.1400a5b90
test al, al
jne 0x1400a5b14
movdqa xmm2, xmmword [0x140101450]
movaps xmm5, xmmword [rbp + 0x90]
mov r8d, dword [rdi + rbx*4 + 0x60]
movss xmm1, dword [rsp + 0x78]
movss xmm3, dword [rsp + 0x7c]
mov r9, qword [rsp + 0x68]
test r8d, r8d
jne 0x1400a49a0
movss xmm1, dword [rsp + 0x78]
dec esi
movss xmm3, dword [rsp + 0x7c]
dec rbx
mov r9, qword [rsp + 0x68]
mov qword [rbp - 0x58], rsi
mov qword [rbp - 0x78], rbx
cmp esi, dword [rdi + 0x3444]
jge 0x1400a4990
movaps xmm14, xmmword [rsp + 0x1c0]
movaps xmm13, xmmword [rsp + 0x1d0]
movaps xmm12, xmmword [rsp + 0x1e0]
movaps xmm11, xmmword [rsp + 0x1f0]
movaps xmm10, xmmword [rsp + 0x200]
movaps xmm15, xmmword [rsp + 0x1b0]
movaps xmm6, xmmword [rsp + 0x240]
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.1400d6af0
lea r11, [rsp + 0x250]
mov rbx, qword [r11 + 0x48]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret