Function at 0x1400a4a50
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 [0x140218fc0]
xor rax, rsp
mov qword [rbp + 0xa0], rax
xor r14d, r14d
mov byte [rsp + 0x60], dl
mov ebx, r8d
mov dword [rcx + 0x3438], r14d
mov rdi, rcx
mov dword [rsp + 0x78], 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 - 0x70], rsi
mov rax, qword [rdi]
mov qword [rbp - 0x28], 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 + 0x70], xmm1
movss dword [rsp + 0x74], xmm3
movss dword [rbp - 0x30], xmm7
movss dword [rbp - 0x2c], xmm9
mov qword [rsp + 0x68], r9
mov qword [rbp - 0x58], rcx
movups xmm8, xmmword [rax + 0x10]
movaps xmmword [rbp - 0x20], xmm8
test ebx, ebx
jne 0x1400a509d
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 + 0x343c], r14d
mov rax, qword [rdi + 0x30d0]
cmp rax, qword [rdi + 0x30d8]
je 0x1400a4b70
mov qword [rdi + 0x30d8], rax
mov rax, qword [rdi + 0x30e8]
cmp rax, qword [rdi + 0x30f0]
je 0x1400a4b87
mov qword [rdi + 0x30f0], rax
mov eax, r14d
mov dword [rsp + 0x64], eax
cmp dword [rdi + 0x3508], r14d
jbe 0x1400a508c
mov r8d, r14d
mov dword [rsp + 0x54], r14d
nop dword [rax]
nop word [rax + rax]
mov ecx, eax
mov ebx, r14d
mov rax, qword [rdi + 0x3500]
mov dword [rsp + 0x58], ebx
mov r12, qword [rax + rcx*8]
add r12, 0x10
mov qword [rbp - 0x78], r12
nop dword [rax]
cmp qword [r12 - 0x10], 0xffffffffffffffff
movzx r11d, byte [r12 + 0x16]
mov r15d, dword [r12 - 4]
mov esi, dword [r12]
mov r14d, dword [r12 + 4]
movzx r13d, byte [r12 + 0x14]
mov dword [rbp - 0x80], r11d
je 0x1400a5041
lea r10d, [r8 + rbx]
mov ecx, 0x20
sub ecx, r11d
mov dword [rsp + 0x5c], r10d
mov r8d, 1
shl r8, cl
mov rcx, qword [rdi + 0x2f90]
sar rcx, 0x20
lea eax, [r8 + r15]
cmp ecx, r15d
jl 0x1400a4c35
cmp ecx, eax
jg 0x1400a4c31
xor r9d, r9d
jmp 0x1400a4c43
sub ecx, eax
jmp 0x1400a4c3c
mov eax, r15d
sub eax, ecx
mov ecx, eax
movsxd r9, ecx
imul r9, r9
mov rcx, qword [rdi + 0x2f98]
lea eax, [r8 + rsi]
sar rcx, 0x20
cmp ecx, esi
jl 0x1400a4c62
cmp ecx, eax
jg 0x1400a4c5e
xor edx, edx
jmp 0x1400a4c6f
sub ecx, eax
jmp 0x1400a4c68
mov eax, esi
sub eax, ecx
mov ecx, eax
movsxd rdx, ecx
imul rdx, rdx
mov rcx, qword [rdi + 0x2fa0]
lea eax, [r8 + r14]
sar rcx, 0x20
cmp ecx, r14d
jl 0x1400a4c8f
cmp ecx, eax
jg 0x1400a4c8b
xor eax, eax
jmp 0x1400a4c9d
sub ecx, eax
jmp 0x1400a4c96
mov eax, r14d
sub eax, ecx
mov ecx, eax
movsxd rax, ecx
imul rax, rax
lea r8, [rax + rdx]
mov ecx, 0x18
mov rdx, qword [rbp - 0x58]
sub ecx, r13d
sub ecx, r11d
add r8, r9
add ecx, ecx
mov rax, r8
shl rdx, cl
shr rax, 0x10
cmp rax, rdx
ja 0x1400a51b6
mov r9d, 0xbb8
mov ebx, r9d
test r8, r8
je 0x1400a4d1b
lzcnt rax, r8
mov edx, 0x3f
sub rdx, rax
lea ecx, [rdx - 5]
test ecx, ecx
js 0x1400a4cef
shr r8, cl
jmp 0x1400a4cf4
neg ecx
shl r8, cl
shl rdx, 5
lea ecx, [r11 + r13]
shl ecx, 6
mov rax, r9
sub rax, rcx
mov ebx, 0
sub rax, rdx
sub rax, r8
cmovns rbx, rax
cmp rbx, r9
cmova rbx, r9
mov eax, dword [rdi + 0x343c]
cmp rbx, rax
jb 0x1400a51b2
mov r13d, dword [rsp + 0x54]
mov ecx, 0x80000000
mov r8d, dword [rdi + rbx*4 + 0x60]
lea r13, [rcx + r13]
add r13d, dword [rsp + 0x58]
test r8b, 0xf
jne 0x1400a4de2
mov r8d, dword [rdi + 0x5c]
test r8d, r8d
je 0x1400a4d70
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 0x1400a4dc8
cmp dword [rdi + 0x54], 0x10000
jne 0x1400a4db2
inc dword [rdi + 0x50]
mov eax, dword [rdi + 0x50]
mov dword [rdi + 0x54], 0
cmp eax, dword [rdi + 0x58]
jne 0x1400a4db2
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 r10d, dword [rsp + 0x5c]
mov r11d, dword [rbp - 0x80]
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], r13d
movzx r13d, byte [r12 + 0x15]
lea eax, [r11 + r13]
cmp eax, 0x14
jae 0x1400a5038
movzx eax, byte [r12 + 0x17]
mov ecx, 0x20
lea r12d, [r11 + 1]
mov byte [rsp + 0x50], al
sub ecx, r12d
mov ebx, 1
shl rbx, cl
test al, 1
jne 0x1400a4e6a
mov rax, qword [rsp + 0x68]
xor r9d, r9d
mov qword [rsp + 0x48], rax
mov r8d, r10d
mov dword [rsp + 0x38], r14d
movzx edx, r13b
mov dword [rsp + 0x30], esi
mov rcx, rdi
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r12d
call fcn.1400a7390
movzx eax, byte [rsp + 0x50]
test al, 2
jne 0x1400a4eaa
mov rcx, qword [rsp + 0x68]
lea eax, [rbx + r14]
mov r8d, dword [rsp + 0x5c]
mov r9d, 1
mov qword [rsp + 0x48], rcx
movzx edx, r13b
mov dword [rsp + 0x38], eax
mov rcx, rdi
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r12d
call fcn.1400a7390
movzx eax, byte [rsp + 0x50]
test al, 8
jne 0x1400a4eed
mov rdx, qword [rsp + 0x68]
lea eax, [rbx + r14]
mov r8d, dword [rsp + 0x5c]
lea ecx, [rbx + rsi]
mov qword [rsp + 0x48], rdx
mov r9d, 3
mov dword [rsp + 0x38], eax
movzx edx, r13b
mov dword [rsp + 0x30], ecx
mov rcx, rdi
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r12d
call fcn.1400a7390
movzx eax, byte [rsp + 0x50]
test al, 4
jne 0x1400a4f2d
mov rcx, qword [rsp + 0x68]
lea eax, [rbx + rsi]
mov r8d, dword [rsp + 0x5c]
mov r9d, 2
mov qword [rsp + 0x48], rcx
movzx edx, r13b
mov dword [rsp + 0x38], r14d
mov rcx, rdi
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r12d
call fcn.1400a7390
movzx eax, byte [rsp + 0x50]
test al, 0x40
jne 0x1400a4f70
mov rdx, qword [rsp + 0x68]
lea eax, [rbx + rsi]
mov r8d, dword [rsp + 0x5c]
lea ecx, [rbx + r15]
mov qword [rsp + 0x48], rdx
mov r9d, 6
mov dword [rsp + 0x38], r14d
movzx edx, r13b
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], ecx
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.1400a7390
movzx eax, byte [rsp + 0x50]
test al, al
js 0x1400a4fb6
mov r8, qword [rsp + 0x68]
lea edx, [rbx + r15]
mov qword [rsp + 0x48], r8
lea eax, [rbx + r14]
mov r8d, dword [rsp + 0x5c]
lea ecx, [rbx + rsi]
mov dword [rsp + 0x38], eax
mov r9d, 7
mov dword [rsp + 0x30], ecx
mov rcx, rdi
mov dword [rsp + 0x28], edx
movzx edx, r13b
mov dword [rsp + 0x20], r12d
call fcn.1400a7390
movzx eax, byte [rsp + 0x50]
test al, 0x20
jne 0x1400a4ff9
mov rdx, qword [rsp + 0x68]
lea eax, [rbx + r14]
mov r8d, dword [rsp + 0x5c]
lea ecx, [rbx + r15]
mov qword [rsp + 0x48], rdx
mov r9d, 5
mov dword [rsp + 0x38], eax
movzx edx, r13b
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], ecx
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.1400a7390
movzx eax, byte [rsp + 0x50]
test al, 0x10
jne 0x1400a5034
mov rcx, qword [rsp + 0x68]
lea eax, [rbx + r15]
mov r8d, dword [rsp + 0x5c]
mov r9d, 4
mov qword [rsp + 0x48], rcx
movzx edx, r13b
mov dword [rsp + 0x38], r14d
mov rcx, rdi
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r12d
call fcn.1400a7390
mov r12, qword [rbp - 0x78]
mov ebx, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x54]
inc ebx
add r12, 0x28
mov dword [rsp + 0x58], ebx
mov qword [rbp - 0x78], r12
cmp ebx, 0x10000
jb 0x1400a4bd0
mov eax, dword [rsp + 0x64]
add r8d, 0x10000
inc eax
mov dword [rsp + 0x54], r8d
mov r14d, 0
mov dword [rsp + 0x64], eax
cmp eax, dword [rdi + 0x3508]
jb 0x1400a4bb0
mov ebx, dword [rsp + 0x78]
mov esi, 0xbb8
mov r9, qword [rsp + 0x68]
movss xmm3, dword [rsp + 0x74]
movss xmm1, dword [rsp + 0x70]
cmp byte [rsp + 0x60], 0
movaps xmmword [rsp + 0x240], xmm6
jne 0x1400a589b
test ebx, ebx
cmovne esi, ebx
mov qword [rbp - 0x70], rsi
cmp esi, dword [rdi + 0x343c]
jl 0x1400a6b48
movsxd rbx, esi
mov r13d, 0x27
add rbx, 0x18
lea rbx, [rdi + rbx*4]
mov qword [rbp - 0x78], rbx
nop word [rax + rax]
mov r8d, dword [rbx]
test r8d, r8d
je 0x1400a5825
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 0x1400a513c
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 0x1400a57e1
mov rdx, qword [rdi + 0x3500]
mov eax, r10d
btr eax, 0x1f
mov r9d, 1
mov r8d, eax
movzx eax, ax
shr r8, 0x10
lea rcx, [rax + rax*4]
mov rax, qword [rdx + r8*8]
movzx edx, byte [rax + rcx*8 + 0x26]
lea r14, [rax + rcx*8]
mov eax, dword [rax + rcx*8 + 0xc]
mov ecx, 0x20
mov r15d, dword [r14 + 0x14]
sub ecx, edx
mov r12d, dword [r14 + 0x10]
shl r9, cl
mov rcx, qword [rdi + 0x2f90]
sar rcx, 0x20
mov dword [rsp + 0x64], edx
mov dword [rsp + 0x58], eax
lea edx, [r9 + rax]
mov dword [rbp - 0x80], r15d
cmp ecx, eax
jl 0x1400a51ca
cmp ecx, edx
jg 0x1400a51c6
xor r8d, r8d
jmp 0x1400a51d5
mov ebx, dword [rsp + 0x58]
mov edx, r10d
mov rcx, rdi
call fcn.1400a47c0
jmp 0x1400a503c
sub ecx, edx
jmp 0x1400a51ce
sub eax, ecx
mov ecx, eax
movsxd r8, ecx
imul r8, r8
mov rcx, qword [rdi + 0x2f98]
lea eax, [r9 + r12]
sar rcx, 0x20
cmp ecx, r12d
jl 0x1400a51f5
cmp ecx, eax
jg 0x1400a51f1
xor edx, edx
jmp 0x1400a5203
sub ecx, eax
jmp 0x1400a51fc
mov eax, r12d
sub eax, ecx
mov ecx, eax
movsxd rdx, ecx
imul rdx, rdx
mov rcx, qword [rdi + 0x2fa0]
lea eax, [r9 + r15]
sar rcx, 0x20
cmp ecx, r15d
jl 0x1400a5223
cmp ecx, eax
jg 0x1400a521f
xor ecx, ecx
jmp 0x1400a5231
sub ecx, eax
jmp 0x1400a522a
mov eax, r15d
sub eax, ecx
mov ecx, eax
movsxd rcx, ecx
imul rcx, rcx
movzx esi, word [r14 + 0x1e]
lea rax, [rdx + r8]
xorps xmm7, xmm7
mov dword [rsp + 0x54], esi
add rax, rcx
cvtsi2ss xmm7, rax
movaps xmm6, xmm7
mulss xmm7, xmm3
mulss xmm6, xmm1
test esi, esi
je 0x1400a531c
nop dword [rax]
lea r15d, [rsi - 1]
lea rbx, [r15 + r15*2]
shl rbx, 4
add rbx, qword [r14]
comiss xmm6, dword [rbx + 0x28]
jbe 0x1400a5314
movzx ecx, byte [rbx + 0x1e]
movsxd r8, dword [rbx + 0x18]
test ecx, ecx
je 0x1400a52ce
sub ecx, 1
je 0x1400a5295
cmp ecx, 1
jne 0x1400a5301
mov byte [rbx + 0x1e], 0
jmp 0x1400a5301
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]
mov byte [rbx + 0x1e], 0
jmp 0x1400a5301
mov rdx, qword [rdi + 0x3468]
lea rcx, [rdi + 0x3460]
mov dword [rsp + 0x78], r8d
cmp rdx, qword [rdi + 0x3470]
je 0x1400a52f7
mov dword [rdx], r8d
add qword [rdi + 0x3468], 4
jmp 0x1400a5301
lea r8, [rsp + 0x78]
call fcn.1400a4270
mov dword [rbx + 0x18], 0xffffffff
mov esi, r15d
test r15d, r15d
jne 0x1400a5260
mov r15d, dword [rbp - 0x80]
mov dword [rsp + 0x54], esi
mov word [r14 + 0x1e], si
test esi, esi
je 0x1400a556f
nop dword [rax]
lea eax, [rsi - 1]
lea rbx, [rax + rax*2]
shl rbx, 4
add rbx, qword [r14]
comiss xmm7, dword [rbx + 0x28]
jbe 0x1400a556f
movzx eax, byte [rbx + 0x1e]
test al, al
je 0x1400a5562
movsxd r8, dword [rbx + 0x18]
mov ecx, eax
sub ecx, 1
je 0x1400a5366
cmp ecx, 1
jne 0x1400a53a4
jmp 0x1400a53a0
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]
mov dword [rbx + 0x18], 0xffffffff
mov byte [rbx + 0x1e], 0
mov r11, qword [rdi + 0x3460]
mov rax, qword [rdi + 0x3468]
sub rax, r11
sar rax, 2
test eax, eax
je 0x1400a53cd
dec eax
mov r11d, dword [r11 + rax*4]
add qword [rdi + 0x3468], 0xfffffffffffffffc
jmp 0x1400a5407
mov r11, qword [rdi + 0x3448]
mov rax, qword [rdi + 0x3450]
sub rax, r11
sar rax, 2
test eax, eax
je 0x1400a53f6
dec eax
mov r11d, dword [r11 + rax*4]
add qword [rdi + 0x3450], 0xfffffffffffffffc
jmp 0x1400a5407
mov r11d, dword [rdi + 0x3440]
lea eax, [r11 + 1]
mov dword [rdi + 0x3440], eax
mov r10, qword [rbx + 0x10]
mov r9, qword [rbx + 8]
mov rdx, r10
mov r8, qword [rbx]
neg rdx
mov rax, r9
mov dword [rbx + 0x18], r11d
cmovs rdx, r10
mov rcx, r8
neg rax
cmovs rax, r9
neg rcx
cmovs rcx, r8
cmp rcx, rax
cmovl rcx, rax
cmp rcx, rdx
cmovl rcx, rdx
mov edx, dword [rdi + 0x3094]
lzcnt rax, rcx
dec eax
mov ecx, r13d
cmp eax, r13d
cmova eax, r13d
sub ecx, eax
movzx eax, byte [rbx + 0x20]
sar r8, cl
sar r9, cl
sar r10, cl
shl r8, 7
add r8d, eax
shl r9, 7
movzx eax, byte [rbx + 0x21]
add r9d, eax
shl r10, 7
movzx eax, byte [rbx + 0x22]
add r10d, eax
mov dword [rbp - 0x58], r8d
mov eax, dword [rbx + 0x24]
shl eax, 5
add eax, ecx
mov dword [rbp - 0x54], r9d
mov ecx, dword [rdi + 0x3098]
mov dword [rbp - 0x4c], eax
mov dword [rbp - 0x50], r10d
lea eax, [rdx + rcx]
cmp eax, r11d
jne 0x1400a54ae
inc ecx
jmp 0x1400a552b
mov r8d, dword [rdi + 0x3090]
shl edx, 4
shl ecx, 4
mov eax, edx
mov rdx, qword [rdi + 0x3080]
shl r8d, 4
mov r9d, ecx
lea rcx, [rdi + 0x3078]
mov qword [rbp - 0x20], r8
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x10], r9
cmp rdx, qword [rdi + 0x3088]
je 0x1400a54fc
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], r9
add qword [rdi + 0x3080], 0x18
jmp 0x1400a5505
lea r8, [rbp - 0x20]
call fcn.1400aab50
mov rax, qword [rdi + 0x30a8]
mov ecx, 1
sub rax, qword [rdi + 0x30a0]
sar rax, 4
mov dword [rdi + 0x3090], eax
mov eax, dword [rbx + 0x18]
mov dword [rdi + 0x3094], eax
mov dword [rdi + 0x3098], ecx
lea rcx, [rdi + 0x30a0]
mov rdx, qword [rdi + 0x30a8]
cmp rdx, qword [rdi + 0x30b0]
je 0x1400a5559
movups xmm0, xmmword [rbp - 0x58]
movups xmmword [rdx], xmm0
add qword [rdi + 0x30a8], 0x10
jmp 0x1400a5562
lea r8, [rbp - 0x58]
call fcn.1400aa9f0
add esi, 0xffffffff
mov dword [rsp + 0x54], esi
jne 0x1400a5330
mov edx, dword [rsp + 0x58]
mov r9d, r15d
mov qword [rsp + 0x30], r14
mov r8d, r12d
mov dword [rsp + 0x28], esi
mov rcx, rdi
mov esi, dword [rsp + 0x64]
mov dword [rsp + 0x20], esi
call fcn.1400a92e0
mov edx, dword [rsp + 0x58]
lea rax, [rsp + 0x54]
movss dword [rsp + 0x38], xmm7
mov r9d, r15d
mov qword [rsp + 0x30], rax
mov r8d, r12d
mov qword [rsp + 0x28], r14
mov rcx, rdi
mov dword [rsp + 0x20], esi
call fcn.1400a9850
mov ecx, dword [rsp + 0x54]
movzx r15d, word [r14 + 0x1c]
mov word [r14 + 0x20], cx
cmp cx, word [r14 + 0x1e]
cmovb cx, word [r14 + 0x1e]
movzx esi, cx
cmp esi, r15d
jae 0x1400a57d2
nop dword [rax]
nop word [rax + rax]
lea rbx, [rsi + rsi*2]
shl rbx, 4
add rbx, qword [r14]
movss xmm0, dword [rbx + 0x28]
comiss xmm0, xmm6
jb 0x1400a57d2
mov r11, qword [rdi + 0x3460]
mov rax, qword [rdi + 0x3468]
sub rax, r11
sar rax, 2
test eax, eax
je 0x1400a5632
dec eax
mov r11d, dword [r11 + rax*4]
add qword [rdi + 0x3468], 0xfffffffffffffffc
jmp 0x1400a566c
mov r11, qword [rdi + 0x3448]
mov rax, qword [rdi + 0x3450]
sub rax, r11
sar rax, 2
test eax, eax
je 0x1400a565b
dec eax
mov r11d, dword [r11 + rax*4]
add qword [rdi + 0x3450], 0xfffffffffffffffc
jmp 0x1400a566c
mov r11d, dword [rdi + 0x3440]
lea eax, [r11 + 1]
mov dword [rdi + 0x3440], eax
mov r10, qword [rbx + 0x10]
mov r9, qword [rbx + 8]
mov rdx, r10
mov r8, qword [rbx]
neg rdx
mov rax, r9
mov dword [rbx + 0x18], r11d
cmovs rdx, r10
mov rcx, r8
neg rax
cmovs rax, r9
neg rcx
cmovs rcx, r8
cmp rcx, rax
cmovl rcx, rax
cmp rcx, rdx
cmovl rcx, rdx
mov edx, dword [rdi + 0x3094]
lzcnt rax, rcx
dec eax
mov ecx, r13d
cmp eax, r13d
cmova eax, r13d
sub ecx, eax
movzx eax, byte [rbx + 0x20]
sar r8, cl
sar r9, cl
sar r10, cl
shl r8, 7
add r8d, eax
shl r9, 7
movzx eax, byte [rbx + 0x21]
add r9d, eax
shl r10, 7
movzx eax, byte [rbx + 0x22]
add r10d, eax
mov dword [rbp - 0x68], r8d
mov eax, dword [rbx + 0x24]
shl eax, 5
add eax, ecx
mov dword [rbp - 0x64], r9d
mov ecx, dword [rdi + 0x3098]
mov dword [rbp - 0x5c], eax
mov dword [rbp - 0x60], r10d
lea eax, [rdx + rcx]
cmp eax, r11d
jne 0x1400a5713
inc ecx
jmp 0x1400a5790
mov r8d, dword [rdi + 0x3090]
shl edx, 4
shl ecx, 4
mov eax, edx
mov rdx, qword [rdi + 0x3080]
shl r8d, 4
mov r9d, ecx
lea rcx, [rdi + 0x3078]
mov qword [rbp - 0x20], r8
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x10], r9
cmp rdx, qword [rdi + 0x3088]
je 0x1400a5761
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], r9
add qword [rdi + 0x3080], 0x18
jmp 0x1400a576a
lea r8, [rbp - 0x20]
call fcn.1400aab50
mov rax, qword [rdi + 0x30a8]
mov ecx, 1
sub rax, qword [rdi + 0x30a0]
sar rax, 4
mov dword [rdi + 0x3090], eax
mov eax, dword [rbx + 0x18]
mov dword [rdi + 0x3094], eax
mov dword [rdi + 0x3098], ecx
lea rcx, [rdi + 0x30a0]
mov rdx, qword [rdi + 0x30a8]
cmp rdx, qword [rdi + 0x30b0]
je 0x1400a57be
movups xmm0, xmmword [rbp - 0x68]
movups xmmword [rdx], xmm0
add qword [rdi + 0x30a8], 0x10
jmp 0x1400a57c7
lea r8, [rbp - 0x68]
call fcn.1400aa9f0
inc esi
cmp esi, r15d
jb 0x1400a55f0
mov rbx, qword [rbp - 0x78]
mov word [r14 + 0x1e], si
mov rsi, qword [rbp - 0x70]
jmp 0x1400a5808
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.1400a6b90
test al, al
jne 0x1400a6b48
mov r8d, dword [rbx]
movss xmm1, dword [rsp + 0x70]
movss xmm3, dword [rsp + 0x74]
mov r9, qword [rsp + 0x68]
test r8d, r8d
jne 0x1400a50f0
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 0x1400a585d
imul rcx, qword [rbp + 0x90], 0x3b9aca00
movsxd rax, dword [rbp + 0x98]
add rcx, rax
sub rcx, qword [rbp - 0x28]
cmp rcx, qword [rdi + 0x2f68]
ja 0x1400a588d
dec esi
sub rbx, 4
mov qword [rbp - 0x70], rsi
mov qword [rbp - 0x78], rbx
cmp esi, dword [rdi + 0x343c]
jl 0x1400a6b48
movss xmm1, dword [rsp + 0x70]
movss xmm3, dword [rsp + 0x74]
mov r9, qword [rsp + 0x68]
jmp 0x1400a50e0
lea eax, [rsi - 1]
mov dword [rdi + 0x3438], eax
jmp 0x1400a6b48
lea r15, [rdi + 0x3048]
mov dword [rdi + 0x3440], r14d
mov dword [rdi + 0x3040], r14d
mov dword [rdi + 0x3060], r14d
mov rax, qword [r15]
cmp rax, qword [r15 + 8]
je 0x1400a58c4
mov qword [r15 + 8], rax
movss xmm0, dword [rdi + 0x34e0]
movss xmm5, dword [rdi + 0x34ec]
movdqa xmm2, xmmword [0x14020b9a0]
shufps xmm0, xmm0, 0
movaps xmmword [rbp + 0x50], xmm0
movss xmm0, dword [rdi + 0x34e4]
shufps xmm0, xmm0, 0
movaps xmmword [rbp + 0x60], xmm0
movss xmm0, dword [rdi + 0x34e8]
shufps xmm0, xmm0, 0
movaps xmmword [rbp + 0x70], xmm0
movss xmm0, dword [rdi + 0x34f0]
shufps xmm0, xmm0, 0
movaps xmmword [rbp + 0x30], xmm0
movss xmm0, dword [rdi + 0x34f4]
shufps xmm0, xmm0, 0
movaps xmmword [rbp + 0x40], xmm0
movss xmm0, dword [0x140235ab8]
shufps xmm0, xmm0, 0
shufps xmm5, xmm5, 0
movaps xmmword [rbp + 0x80], xmm0
movaps xmmword [rbp + 0x90], xmm5
cmp dword [rdi + 0x343c], esi
jg 0x1400a6b48
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 - 0x58], rbx
mov r8d, dword [rdi + rbx*4 + 0x60]
test r8d, r8d
je 0x1400a6ae8
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 0x1400a59f2
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 0x1400a6a97
mov rdx, qword [rdi + 0x3500]
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]
cmp qword [rax + rcx*8], 0
lea r12, [rax + rcx*8]
je 0x1400a6ac9
movzx eax, byte [r12 + 0x26]
mov ecx, 0x20
mov r9d, dword [r12 + 0xc]
sub ecx, eax
mov edx, dword [r12 + 0x10]
mov r8d, 1
mov r10d, dword [r12 + 0x14]
shl r8, cl
mov rcx, qword [rdi + 0x2f90]
sar rcx, 0x20
mov dword [rsp + 0x58], eax
mov dword [rbp - 0x78], r9d
lea eax, [r8 + r9]
mov dword [rbp - 0x28], edx
mov dword [rsp + 0x5c], r10d
cmp ecx, r9d
jl 0x1400a5a80
cmp ecx, eax
jg 0x1400a5a7c
mov r9, r14
jmp 0x1400a5a8e
sub ecx, eax
jmp 0x1400a5a87
mov eax, r9d
sub eax, ecx
mov ecx, eax
movsxd r9, ecx
imul r9, r9
mov rcx, qword [rdi + 0x2f98]
lea eax, [r8 + rdx]
sar rcx, 0x20
cmp ecx, edx
jl 0x1400a5aae
cmp ecx, eax
jg 0x1400a5aaa
mov rdx, r14
jmp 0x1400a5abb
sub ecx, eax
jmp 0x1400a5ab4
mov eax, edx
sub eax, ecx
mov ecx, eax
movsxd rdx, ecx
imul rdx, rdx
mov rcx, qword [rdi + 0x2fa0]
lea eax, [r10 + r8]
sar rcx, 0x20
cmp ecx, r10d
jl 0x1400a5adc
cmp ecx, eax
jg 0x1400a5ad8
mov rax, r14
jmp 0x1400a5aea
sub ecx, eax
jmp 0x1400a5ae3
mov eax, r10d
sub eax, ecx
mov ecx, eax
movsxd rax, ecx
imul rax, rax
movzx ebx, word [r12 + 0x1c]
xorps xmm6, xmm6
mov r10, qword [r12]
add rax, rdx
add rax, r9
cvtsi2ss xmm6, rax
movaps xmm11, xmm6
mulss xmm6, xmm3
mulss xmm11, xmm1
movss dword [rbp - 0x80], xmm6
movss dword [rsp + 0x78], xmm11
test ebx, ebx
je 0x1400a5f7a
movaps xmm11, xmmword [0x14020b9e0]
mov r9d, 2
movaps xmm12, xmmword [0x14020ba60]
movaps xmm13, xmmword [0x14020b9f0]
movaps xmm14, xmmword [0x14020ba00]
movaps xmm15, xmmword [0x14020ba50]
lea eax, [r9 - 2]
lea r11, [rax + rax*2]
add r11, r11
lea esi, [r9 - 1]
movzx edx, byte [r10 + r11*8 + 0x23]
movss xmm9, dword [r10 + r11*8 + 0x2c]
imul rcx, rdx, 0x4c0
movd xmm10, edx
shufps xmm9, xmm9, 0
pshufd xmm10, xmm10, 0
mov byte [r10 + r11*8 + 0x1e], 0
mov dword [r10 + r11*8 + 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, ebx
jae 0x1400a5ca2
lea rdx, [rsi + rsi*2]
shl rdx, 4
add rdx, r10
movzx r8d, byte [rdx + 0x23]
insertps xmm9, dword [rdx + 0x2c], 0x10
imul rcx, r8, 0x4c0
pinsrd xmm10, r8d, 1
mov byte [rdx + 0x1e], 0
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 r9d, ebx
jae 0x1400a5ca2
mov eax, r9d
lea rdx, [rax + rax*2]
shl rdx, 4
add rdx, r10
movzx r8d, byte [rdx + 0x23]
insertps xmm9, dword [rdx + 0x2c], 0x20
imul rcx, r8, 0x4c0
pinsrd xmm10, r8d, 2
mov byte [rdx + 0x1e], 0
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, [r9 + 1]
cmp eax, ebx
jae 0x1400a5ca2
lea rdx, [rax + rax*2]
shl rdx, 4
add rdx, r10
movzx r8d, byte [rdx + 0x23]
insertps xmm9, dword [rdx + 0x2c], 0x30
mov byte [rdx + 0x1e], 0
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 [0x14020ba40]
mulps xmm2, xmm0
addps xmm2, xmmword [0x14020bb30]
mulps xmm2, xmm0
addps xmm2, xmmword [0x14020ba90]
mulps xmm2, xmm0
movdqa xmm0, xmm9
psrld xmm0, 0x17
psubd xmm0, xmmword [0x14020b940]
cvtdq2ps xmm0, xmm0
addps xmm2, xmmword [0x14020bb40]
mulps xmm0, xmmword [0x14020ba10]
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 [0x14020ba40]
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 [0x14020bac0]
cmpleps xmm0, xmm6
movaps xmm6, xmmword [rbp + 0x50]
divps xmm6, xmm4
movaps xmm4, xmmword [rbp + 0x60]
addps xmm1, xmm15
blendvps xmm6, xmmword [0x14020b9d0], xmm0
movaps xmm0, xmmword [0x14020bac0]
cmpleps xmm0, xmm7
paddd xmm3, xmm1
pslld xmm10, 8
subps xmm3, xmm2
movaps xmm2, xmmword [0x14020bad0]
movaps xmm1, xmm6
movaps xmm7, xmm9
mulps xmm7, xmm9
divps xmm4, xmm5
movaps xmm5, xmmword [rbp + 0x70]
blendvps xmm4, xmmword [0x14020b9d0], xmm0
movaps xmm0, xmmword [0x14020bac0]
cmpleps xmm0, xmm8
divps xmm5, xmm3
maxps xmm1, xmm4
blendvps xmm5, xmmword [0x14020b9d0], 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 [0x14020b950]
pslld xmm0, 0x10
pslld xmm2, 0x14
paddd xmm3, xmm0
movdqa xmm0, xmm7
andps xmm0, xmmword [0x14020b9a0]
paddd xmm0, xmmword [0x14020bae0]
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 [r10 + r11*8 + 0x20], xmm0
cmp esi, ebx
jae 0x1400a5f3f
lea rcx, [rsi + rsi*2]
punpckhqdq xmm1, xmm4
add rcx, rcx
movdqu xmmword [r10 + rcx*8 + 0x20], xmm1
cmp r9d, ebx
jae 0x1400a5f3f
mov eax, r9d
punpckhdq xmm3, xmm2
punpckhdq xmm7, xmm9
movdqa xmm0, xmm3
punpcklqdq xmm0, xmm7
lea rcx, [rax + rax*2]
add rcx, rcx
lea eax, [r9 + 1]
movdqu xmmword [r10 + rcx*8 + 0x20], xmm0
cmp eax, ebx
jae 0x1400a5f3f
lea rcx, [rax + rax*2]
punpckhqdq xmm3, xmm7
add rcx, rcx
movdqu xmmword [r10 + rcx*8 + 0x20], xmm3
movaps xmm5, xmmword [rbp + 0x90]
add r9d, 4
movdqa xmm2, xmmword [0x14020b9a0]
lea eax, [r9 - 2]
cmp eax, ebx
jb 0x1400a5b51
movss xmm11, dword [rsp + 0x78]
movss xmm6, dword [rbp - 0x80]
movss xmm7, dword [rbp - 0x30]
movaps xmm8, xmmword [rbp - 0x20]
movss xmm9, dword [rbp - 0x2c]
mov rcx, qword [r12]
lea rdx, [rbx + rbx*2]
shl rdx, 4
lea r9, [0x1400a47b0]
mov r8, rdx
movabs rax, 0xaaaaaaaaaaaaaaab
sar r8, 4
add rdx, rcx
imul r8, rax
call fcn.1400aa280
movzx esi, word [r12 + 0x1c]
mov dword [r12 + 0x1e], 0
mov dword [rsp + 0x64], esi
test esi, esi
je 0x1400a6312
nop word [rax + rax]
mov eax, r14d
lea rsi, [rax + rax*2]
shl rsi, 4
add rsi, qword [r12]
movss xmm0, dword [rsi + 0x28]
comiss xmm0, xmm6
jb 0x1400a630e
comiss xmm7, xmm0
jbe 0x1400a6003
movdqa xmm0, xmm8
psrldq xmm0, 8
movq r8, xmm0
jmp 0x1400a6046
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 0x1400a603c
lea ecx, [rdx - 0xd6]
shl r8, cl
jmp 0x1400a6046
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 0x1400a613e
mov rax, r9
imul r9
add rcx, rdx
cmp rcx, r8
ja 0x1400a613e
mov rax, r10
imul r10
add rcx, rdx
cmp rcx, r8
ja 0x1400a613e
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 [rsp + 0x78], r9
cmp rbx, rcx
jae 0x1400a60d5
lea rax, [rdx + rbx*8]
jmp 0x1400a6126
jbe 0x1400a612a
mov rax, qword [r15 + 0x10]
sub rax, rdx
sar rax, 3
cmp rbx, rax
jbe 0x1400a6106
mov rdx, rbx
mov rcx, r15
call fcn.1400aad40
mov rax, qword [r15]
movsxd rcx, dword [rsi + 0x18]
mov qword [rax + rcx*8], rsi
mov byte [rsi + 0x1e], 1
jmp 0x1400a62fc
sub rbx, rcx
xor edx, edx
mov rcx, r9
lea rbx, [rbx*8]
mov r8, rbx
call sub.VCRUNTIME140.dll_memset
mov rax, qword [rsp + 0x78]
add rax, rbx
mov qword [r15 + 8], rax
mov rax, qword [r15]
movsxd rcx, dword [rsi + 0x18]
mov qword [rax + rcx*8], rsi
mov byte [rsi + 0x1e], 1
jmp 0x1400a62fc
mov r11, qword [rdi + 0x3460]
mov rax, qword [rdi + 0x3468]
sub rax, r11
sar rax, 2
test eax, eax
je 0x1400a6167
dec eax
mov r11d, dword [r11 + rax*4]
add qword [rdi + 0x3468], 0xfffffffffffffffc
jmp 0x1400a61a1
mov r11, qword [rdi + 0x3448]
mov rax, qword [rdi + 0x3450]
sub rax, r11
sar rax, 2
test eax, eax
je 0x1400a6190
dec eax
mov r11d, dword [r11 + rax*4]
add qword [rdi + 0x3450], 0xfffffffffffffffc
jmp 0x1400a61a1
mov r11d, dword [rdi + 0x3440]
lea eax, [r11 + 1]
mov dword [rdi + 0x3440], eax
mov r10, qword [rsi + 0x10]
mov r9, qword [rsi + 8]
mov rdx, r10
mov r8, qword [rsi]
neg rdx
mov rax, r9
mov dword [rsi + 0x18], r11d
cmovs rdx, r10
mov rcx, r8
neg rax
cmovs rax, r9
neg rcx
cmovs rcx, r8
cmp rcx, rax
cmovl rcx, rax
cmp rcx, rdx
cmovl rcx, rdx
mov edx, dword [rdi + 0x3094]
lzcnt rax, rcx
dec eax
mov ecx, r13d
cmp eax, r13d
cmova eax, r13d
sub ecx, eax
movzx eax, byte [rsi + 0x20]
sar r8, cl
sar r9, cl
sar r10, cl
shl r8, 7
add r8d, eax
shl r9, 7
movzx eax, byte [rsi + 0x21]
add r9d, eax
shl r10, 7
movzx eax, byte [rsi + 0x22]
add r10d, eax
mov dword [rbp - 0x68], r8d
mov eax, dword [rsi + 0x24]
shl eax, 5
add eax, ecx
mov dword [rbp - 0x64], r9d
mov ecx, dword [rdi + 0x3098]
mov dword [rbp - 0x5c], eax
mov dword [rbp - 0x60], r10d
lea eax, [rdx + rcx]
cmp eax, r11d
jne 0x1400a6248
inc ecx
jmp 0x1400a62c5
mov r8d, dword [rdi + 0x3090]
shl edx, 4
shl ecx, 4
mov eax, edx
mov rdx, qword [rdi + 0x3080]
shl r8d, 4
mov r9d, ecx
lea rcx, [rdi + 0x3078]
mov qword [rbp - 0x48], r8
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], r9
cmp rdx, qword [rdi + 0x3088]
je 0x1400a6296
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], r9
add qword [rdi + 0x3080], 0x18
jmp 0x1400a629f
lea r8, [rbp - 0x48]
call fcn.1400aab50
mov rax, qword [rdi + 0x30a8]
mov ecx, 1
sub rax, qword [rdi + 0x30a0]
sar rax, 4
mov dword [rdi + 0x3090], eax
mov eax, dword [rsi + 0x18]
mov dword [rdi + 0x3094], eax
mov dword [rdi + 0x3098], ecx
lea rcx, [rdi + 0x30a0]
mov rdx, qword [rdi + 0x30a8]
cmp rdx, qword [rdi + 0x30b0]
je 0x1400a62f3
movups xmm0, xmmword [rbp - 0x68]
movups xmmword [rdx], xmm0
add qword [rdi + 0x30a8], 0x10
jmp 0x1400a62fc
lea r8, [rbp - 0x68]
call fcn.1400aa9f0
mov esi, dword [rsp + 0x64]
inc r14d
cmp r14d, esi
jb 0x1400a5fd0
jmp 0x1400a6312
mov esi, dword [rsp + 0x64]
mov word [r12 + 0x20], r14w
cmp r14d, esi
jae 0x1400a6509
mov eax, r14d
lea rbx, [rax + rax*2]
shl rbx, 4
add rbx, qword [r12]
movss xmm0, dword [rbx + 0x28]
comiss xmm0, xmm11
jb 0x1400a6509
mov r11, qword [rdi + 0x3460]
mov rax, qword [rdi + 0x3468]
sub rax, r11
sar rax, 2
test eax, eax
je 0x1400a6368
dec eax
mov r11d, dword [r11 + rax*4]
add qword [rdi + 0x3468], 0xfffffffffffffffc
jmp 0x1400a63a2
mov r11, qword [rdi + 0x3448]
mov rax, qword [rdi + 0x3450]
sub rax, r11
sar rax, 2
test eax, eax
je 0x1400a6391
dec eax
mov r11d, dword [r11 + rax*4]
add qword [rdi + 0x3450], 0xfffffffffffffffc
jmp 0x1400a63a2
mov r11d, dword [rdi + 0x3440]
lea eax, [r11 + 1]
mov dword [rdi + 0x3440], eax
mov r10, qword [rbx + 0x10]
mov r9, qword [rbx + 8]
mov rdx, r10
mov r8, qword [rbx]
neg rdx
mov rax, r9
mov dword [rbx + 0x18], r11d
cmovs rdx, r10
mov rcx, r8
neg rax
cmovs rax, r9
neg rcx
cmovs rcx, r8
cmp rcx, rax
cmovl rcx, rax
cmp rcx, rdx
cmovl rcx, rdx
mov edx, dword [rdi + 0x3094]
lzcnt rax, rcx
dec eax
mov ecx, r13d
cmp eax, r13d
cmova eax, r13d
sub ecx, eax
movzx eax, byte [rbx + 0x20]
sar r8, cl
sar r9, cl
sar r10, cl
shl r8, 7
add r8d, eax
shl r9, 7
movzx eax, byte [rbx + 0x21]
add r9d, eax
shl r10, 7
movzx eax, byte [rbx + 0x22]
add r10d, eax
mov dword [rbp], r8d
mov eax, dword [rbx + 0x24]
shl eax, 5
add eax, ecx
mov dword [rbp + 4], r9d
mov ecx, dword [rdi + 0x3098]
mov dword [rbp + 0xc], eax
mov dword [rbp + 8], r10d
lea eax, [rdx + rcx]
cmp eax, r11d
jne 0x1400a6449
inc ecx
jmp 0x1400a64c6
mov r8d, dword [rdi + 0x3090]
shl edx, 4
shl ecx, 4
mov eax, edx
mov rdx, qword [rdi + 0x3080]
shl r8d, 4
mov r9d, ecx
lea rcx, [rdi + 0x3078]
mov qword [rbp - 0x48], r8
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], r9
cmp rdx, qword [rdi + 0x3088]
je 0x1400a6497
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], r9
add qword [rdi + 0x3080], 0x18
jmp 0x1400a64a0
lea r8, [rbp - 0x48]
call fcn.1400aab50
mov rax, qword [rdi + 0x30a8]
mov ecx, 1
sub rax, qword [rdi + 0x30a0]
sar rax, 4
mov dword [rdi + 0x3090], eax
mov eax, dword [rbx + 0x18]
mov dword [rdi + 0x3094], eax
mov dword [rdi + 0x3098], ecx
lea rcx, [rdi + 0x30a0]
mov rdx, qword [rdi + 0x30a8]
cmp rdx, qword [rdi + 0x30b0]
je 0x1400a64f4
movups xmm0, xmmword [rbp]
movups xmmword [rdx], xmm0
add qword [rdi + 0x30a8], 0x10
jmp 0x1400a64fd
lea r8, [rbp]
call fcn.1400aa9f0
inc r14d
cmp r14d, esi
jb 0x1400a6321
movzx esi, r14w
mov word [r12 + 0x1e], si
mov dword [rsp + 0x54], esi
test esi, esi
je 0x1400a65d3
nop
lea r14d, [rsi - 1]
lea rbx, [r14 + r14*2]
shl rbx, 4
add rbx, qword [r12]
comiss xmm11, dword [rbx + 0x28]
jbe 0x1400a65d3
movzx ecx, byte [rbx + 0x1e]
movsxd r8, dword [rbx + 0x18]
test ecx, ecx
je 0x1400a6588
sub ecx, 1
je 0x1400a6557
cmp ecx, 1
jne 0x1400a65bb
mov byte [rbx + 0x1e], 0
jmp 0x1400a65bb
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]
mov byte [rbx + 0x1e], 0
jmp 0x1400a65bb
mov rdx, qword [rdi + 0x3468]
lea rcx, [rdi + 0x3460]
mov dword [rsp + 0x78], r8d
cmp rdx, qword [rdi + 0x3470]
je 0x1400a65b1
mov dword [rdx], r8d
add qword [rdi + 0x3468], 4
jmp 0x1400a65bb
lea r8, [rsp + 0x78]
call fcn.1400a4270
mov dword [rbx + 0x18], 0xffffffff
mov esi, r14d
mov dword [rsp + 0x54], r14d
test r14d, r14d
jne 0x1400a6520
mov word [r12 + 0x1e], si
test esi, esi
je 0x1400a681c
lea eax, [rsi - 1]
lea rbx, [rax + rax*2]
shl rbx, 4
add rbx, qword [r12]
comiss xmm6, dword [rbx + 0x28]
jbe 0x1400a681c
movzx eax, byte [rbx + 0x1e]
test al, al
je 0x1400a680f
movsxd r8, dword [rbx + 0x18]
mov ecx, eax
sub ecx, 1
je 0x1400a6618
cmp ecx, 1
jne 0x1400a664e
jmp 0x1400a664a
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]
mov dword [rbx + 0x18], 0xffffffff
mov byte [rbx + 0x1e], 0
mov r11, qword [rdi + 0x3460]
mov rax, qword [rdi + 0x3468]
sub rax, r11
sar rax, 2
test eax, eax
je 0x1400a6677
dec eax
mov r11d, dword [r11 + rax*4]
add qword [rdi + 0x3468], 0xfffffffffffffffc
jmp 0x1400a66b1
mov r11, qword [rdi + 0x3448]
mov rax, qword [rdi + 0x3450]
sub rax, r11
sar rax, 2
test eax, eax
je 0x1400a66a0
dec eax
mov r11d, dword [r11 + rax*4]
add qword [rdi + 0x3450], 0xfffffffffffffffc
jmp 0x1400a66b1
mov r11d, dword [rdi + 0x3440]
lea eax, [r11 + 1]
mov dword [rdi + 0x3440], eax
mov r10, qword [rbx + 0x10]
mov r9, qword [rbx + 8]
mov rdx, r10
mov r8, qword [rbx]
neg rdx
mov rax, r9
mov dword [rbx + 0x18], r11d
cmovs rdx, r10
mov rcx, r8
neg rax
cmovs rax, r9
neg rcx
cmovs rcx, r8
cmp rcx, rax
cmovl rcx, rax
cmp rcx, rdx
cmovl rcx, rdx
mov edx, dword [rdi + 0x3094]
lzcnt rax, rcx
dec eax
mov ecx, r13d
cmp eax, r13d
cmova eax, r13d
sub ecx, eax
movzx eax, byte [rbx + 0x20]
sar r8, cl
sar r9, cl
sar r10, cl
shl r8, 7
add r8d, eax
shl r9, 7
movzx eax, byte [rbx + 0x21]
add r9d, eax
shl r10, 7
movzx eax, byte [rbx + 0x22]
add r10d, eax
mov dword [rbp + 0x10], r8d
mov eax, dword [rbx + 0x24]
shl eax, 5
add eax, ecx
mov dword [rbp + 0x14], r9d
mov ecx, dword [rdi + 0x3098]
mov dword [rbp + 0x1c], eax
mov dword [rbp + 0x18], r10d
lea eax, [rdx + rcx]
cmp eax, r11d
jne 0x1400a675b
inc ecx
jmp 0x1400a67d8
mov r8d, dword [rdi + 0x3090]
shl edx, 4
shl ecx, 4
mov eax, edx
mov rdx, qword [rdi + 0x3080]
shl r8d, 4
mov r9d, ecx
lea rcx, [rdi + 0x3078]
mov qword [rbp - 0x48], r8
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], r9
cmp rdx, qword [rdi + 0x3088]
je 0x1400a67a9
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], r9
add qword [rdi + 0x3080], 0x18
jmp 0x1400a67b2
lea r8, [rbp - 0x48]
call fcn.1400aab50
mov rax, qword [rdi + 0x30a8]
mov ecx, 1
sub rax, qword [rdi + 0x30a0]
sar rax, 4
mov dword [rdi + 0x3090], eax
mov eax, dword [rbx + 0x18]
mov dword [rdi + 0x3094], eax
mov dword [rdi + 0x3098], ecx
lea rcx, [rdi + 0x30a0]
mov rdx, qword [rdi + 0x30a8]
cmp rdx, qword [rdi + 0x30b0]
je 0x1400a6806
movups xmm0, xmmword [rbp + 0x10]
movups xmmword [rdx], xmm0
add qword [rdi + 0x30a8], 0x10
jmp 0x1400a680f
lea r8, [rbp + 0x10]
call fcn.1400aa9f0
add esi, 0xffffffff
mov dword [rsp + 0x54], esi
jne 0x1400a65e1
mov eax, dword [rsp + 0x58]
mov rcx, rdi
mov r9d, dword [rsp + 0x5c]
mov r8d, dword [rbp - 0x28]
mov edx, dword [rbp - 0x78]
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], eax
call fcn.1400a92e0
mov r9d, dword [rsp + 0x5c]
lea rax, [rsp + 0x54]
mov r8d, dword [rbp - 0x28]
mov rcx, rdi
mov edx, dword [rbp - 0x78]
movss dword [rsp + 0x38], xmm6
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0x58]
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], eax
call fcn.1400a9850
mov ecx, dword [rsp + 0x54]
movzx r14d, word [r12 + 0x1c]
mov word [r12 + 0x20], cx
cmp cx, word [r12 + 0x1e]
cmovb cx, word [r12 + 0x1e]
movzx esi, cx
cmp esi, r14d
jae 0x1400a6a84
nop dword [rax + rax]
lea rbx, [rsi + rsi*2]
shl rbx, 4
add rbx, qword [r12]
movss xmm0, dword [rbx + 0x28]
comiss xmm0, xmm11
jb 0x1400a6a84
mov r11, qword [rdi + 0x3460]
mov rax, qword [rdi + 0x3468]
sub rax, r11
sar rax, 2
test eax, eax
je 0x1400a68e4
dec eax
mov r11d, dword [r11 + rax*4]
add qword [rdi + 0x3468], 0xfffffffffffffffc
jmp 0x1400a691e
mov r11, qword [rdi + 0x3448]
mov rax, qword [rdi + 0x3450]
sub rax, r11
sar rax, 2
test eax, eax
je 0x1400a690d
dec eax
mov r11d, dword [r11 + rax*4]
add qword [rdi + 0x3450], 0xfffffffffffffffc
jmp 0x1400a691e
mov r11d, dword [rdi + 0x3440]
lea eax, [r11 + 1]
mov dword [rdi + 0x3440], eax
mov r10, qword [rbx + 0x10]
mov r9, qword [rbx + 8]
mov rdx, r10
mov r8, qword [rbx]
neg rdx
mov rax, r9
mov dword [rbx + 0x18], r11d
cmovs rdx, r10
mov rcx, r8
neg rax
cmovs rax, r9
neg rcx
cmovs rcx, r8
cmp rcx, rax
cmovl rcx, rax
cmp rcx, rdx
cmovl rcx, rdx
mov edx, dword [rdi + 0x3094]
lzcnt rax, rcx
dec eax
mov ecx, r13d
cmp eax, r13d
cmova eax, r13d
sub ecx, eax
movzx eax, byte [rbx + 0x20]
sar r8, cl
sar r9, cl
sar r10, cl
shl r8, 7
add r8d, eax
shl r9, 7
movzx eax, byte [rbx + 0x21]
add r9d, eax
shl r10, 7
movzx eax, byte [rbx + 0x22]
add r10d, eax
mov dword [rbp + 0x20], r8d
mov eax, dword [rbx + 0x24]
shl eax, 5
add eax, ecx
mov dword [rbp + 0x24], r9d
mov ecx, dword [rdi + 0x3098]
mov dword [rbp + 0x2c], eax
mov dword [rbp + 0x28], r10d
lea eax, [rdx + rcx]
cmp eax, r11d
jne 0x1400a69c5
inc ecx
jmp 0x1400a6a42
mov r8d, dword [rdi + 0x3090]
shl edx, 4
shl ecx, 4
mov eax, edx
mov rdx, qword [rdi + 0x3080]
shl r8d, 4
mov r9d, ecx
lea rcx, [rdi + 0x3078]
mov qword [rbp - 0x48], r8
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], r9
cmp rdx, qword [rdi + 0x3088]
je 0x1400a6a13
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], r9
add qword [rdi + 0x3080], 0x18
jmp 0x1400a6a1c
lea r8, [rbp - 0x48]
call fcn.1400aab50
mov rax, qword [rdi + 0x30a8]
mov ecx, 1
sub rax, qword [rdi + 0x30a0]
sar rax, 4
mov dword [rdi + 0x3090], eax
mov eax, dword [rbx + 0x18]
mov dword [rdi + 0x3094], eax
mov dword [rdi + 0x3098], ecx
lea rcx, [rdi + 0x30a0]
mov rdx, qword [rdi + 0x30a8]
cmp rdx, qword [rdi + 0x30b0]
je 0x1400a6a70
movups xmm0, xmmword [rbp + 0x20]
movups xmmword [rdx], xmm0
add qword [rdi + 0x30a8], 0x10
jmp 0x1400a6a79
lea r8, [rbp + 0x20]
call fcn.1400aa9f0
inc esi
cmp esi, r14d
jb 0x1400a68a0
mov rbx, qword [rbp - 0x58]
xor r14d, r14d
mov word [r12 + 0x1e], si
mov rsi, qword [rbp - 0x70]
jmp 0x1400a6aba
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.1400a6b90
test al, al
jne 0x1400a6b12
movdqa xmm2, xmmword [0x14020b9a0]
movaps xmm5, xmmword [rbp + 0x90]
mov r8d, dword [rdi + rbx*4 + 0x60]
movss xmm1, dword [rsp + 0x70]
movss xmm3, dword [rsp + 0x74]
mov r9, qword [rsp + 0x68]
test r8d, r8d
jne 0x1400a59a0
movss xmm1, dword [rsp + 0x70]
dec esi
movss xmm3, dword [rsp + 0x74]
dec rbx
mov r9, qword [rsp + 0x68]
mov qword [rbp - 0x70], rsi
mov qword [rbp - 0x58], rbx
cmp esi, dword [rdi + 0x343c]
jge 0x1400a5991
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.1400d9590
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