Function at 0x14015a150
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xd68
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0xcd0], xmm6
mov r13, rdx
mov qword [rbp + 0xc40], rcx
mov rdx, qword [0x1401a2120]
test rdx, rdx
je 0x14015ba46
mov rax, qword [0x1401a2118]
mov rcx, rdx
shl rcx, 6
add rcx, rax
xor r15d, r15d
mov r8, rax
mov rdi, qword [rbp + 0xc40]
mov r10, qword [r8 + 0x28]
mov r9, qword [r8 + 0x30]
mov r12, qword [r8 + 0x38]
add r8, 0x40
shl r9, 4
nop
test r9, r9
je 0x14015a1f0
mov r11, r10
add r10, 0x10
mov rsi, qword [r11]
add rsi, r12
add r9, 0xfffffffffffffff0
cmp rsi, rdi
ja 0x14015a1c0
add rsi, qword [r11 + 8]
cmp rsi, rdi
jbe 0x14015a1c0
jmp 0x14015a1fd
inc r15
cmp r8, rcx
jne 0x14015a1aa
jmp 0x14015ba46
mov rdi, qword [0x1401a2138]
test rdi, rdi
je 0x14015a239
mov r14, qword [0x1401a2130]
imul rcx, rdi, 0x230
xor r8d, r8d
xor ebx, ebx
nop dword [rax]
cmp qword [r14 + r8], r15
je 0x14015a457
inc rbx
add r8, 0x230
cmp rcx, r8
jne 0x14015a220
cmp rdx, r15
jbe 0x14015dbdc
mov rcx, r15
shl rcx, 6
mov rdx, qword [rax + rcx + 8]
mov r8, qword [rax + rcx + 0x10]
lea rcx, [rbp + 0x8c0]
call fcn.140159c20
test byte [rbp + 0x8c0], 1
je 0x14015ba46
mov rsi, qword [rbp + 0x8c8]
mov r14, qword [rbp + 0x8d0]
mov rbx, qword [rbp + 0x8d8]
mov qword [rbp + 0x738], 0
mov qword [rbp + 0x740], 8
xorps xmm0, xmm0
movups xmmword [rbp + 0x748], xmm0
mov qword [rbp + 0x758], 8
mov qword [rbp + 0x760], 0
cmp rbx, 0x40
jb 0x14015ba2a
cmp word [r14], 0x5a4d
jne 0x14015ba2a
mov eax, dword [r14 + 0x3c]
mov rcx, rbx
sub rcx, rax
setb dl
cmp rcx, 0x88
setb cl
or cl, dl
jne 0x14015ba2a
cmp dword [r14 + rax], 0x4550
jne 0x14015ba2a
cmp word [r14 + rax + 0x18], 0x20b
jne 0x14015ba2a
movzx ecx, word [r14 + rax + 0x14]
cmp rcx, 0x70
jb 0x14015ba2a
lea rdx, [rax + 0x88]
add rcx, 0xffffffffffffff90
mov r8, rbx
sub r8, rdx
cmp r8, rcx
jb 0x14015ba2a
mov r8d, dword [r14 + rax + 0x84]
shl r8, 3
cmp r8, rcx
ja 0x14015ba2a
add rcx, rdx
movzx r10d, word [r14 + rax + 6]
lea edx, [r10*8]
lea rdx, [rdx + rdx*4]
mov r8, rbx
sub r8, rcx
setb r9b
cmp r8, rdx
setb dl
or dl, r9b
add rcx, r14
xor r11d, r11d
test dl, dl
cmove r11, rcx
jne 0x14015ba2a
mov r8d, dword [r14 + rax + 0xc]
test r8, r8
je 0x14015b05c
mov rcx, rbx
sub rcx, r8
jb 0x14015ba2a
mov r9d, dword [r14 + rax + 0x10]
lea rdx, [r9 + r9]
lea rdx, [rdx + rdx*8]
cmp rcx, rdx
jb 0x14015ba2a
add rdx, r8
mov rcx, rbx
sub rcx, rdx
cmp rcx, 4
jb 0x14015ba2a
mov qword [rbp + 0xc18], rsi
mov qword [rbp + 0xb98], r13
mov qword [rbp + 0xc60], rdx
mov ecx, dword [r14 + rdx]
mov qword [rbp + 0xc68], rcx
mov rax, qword [r14 + rax + 0x30]
mov qword [rbp + 0xc70], rax
mov qword [rbp + 0x8c0], 0
mov qword [rbp + 0x8c8], 8
mov qword [rbp + 0x8d0], 0
mov qword [rbp + 0xc88], r9
test r9, r9
je 0x14015cebb
add r8, r14
mov eax, 8
mov qword [rbp + 0xcc8], 0
xor esi, esi
mov qword [rbp + 0xca0], r10
mov qword [rbp + 0xc98], r11
mov r9, qword [rbp + 0xc88]
mov qword [rbp + 0xc58], r8
jmp 0x14015b6dc
test rbx, rbx
mov qword [rbp + 0xb98], r13
je 0x14015a4f6
mov r15, r14
imul r14, rbx, 0x230
lea rsi, [r15 + r14]
lea rcx, [rbp - 0x58]
mov r8d, 0x230
mov rdx, rsi
call sub.msvcrt.dll_memcpy
lea rdx, [r15 + r14]
add rdx, 0x230
not rbx
add rbx, rdi
imul r8, rbx, 0x230
mov rcx, rsi
call sub.msvcrt.dll_memmove
lea rsi, [rdi - 1]
mov qword [0x1401a2138], rsi
cmp rsi, qword [0x1401a2128]
jne 0x14015a4c0
call fcn.1401671f0
mov r14, qword [0x1401a2130]
lea rcx, [r14 + 0x230]
imul r8, rsi, 0x230
mov rdx, r14
call sub.msvcrt.dll_memmove
lea rdx, [rbp - 0x58]
mov r8d, 0x230
mov rcx, r14
call sub.msvcrt.dll_memcpy
mov qword [0x1401a2138], rdi
mov rcx, qword [rbp + 0xc40]
sub rcx, r12
mov rdx, qword [r14 + 0x1c0]
mov eax, 3
test rdx, rdx
mov qword [rbp + 0xc40], rcx
mov qword [rbp + 0xc88], r14
je 0x14015a888
lea rdi, [rcx + 1]
mov rbx, qword [r14 + 0x1b8]
cmp rdx, 1
jne 0x14015a538
xor ecx, ecx
jmp 0x14015a565
xor r9d, r9d
mov r8, rdx
nop
mov r10, r8
shr r10, 1
lea rcx, [r10 + r9]
mov r11, rcx
shl r11, 5
cmp qword [rbx + r11], rdi
cmova rcx, r9
sub r8, r10
mov r9, rcx
cmp r8, 1
ja 0x14015a540
mov r8, rcx
shl r8, 5
cmp qword [rbx + r8], rdi
jne 0x14015a577
inc rcx
jmp 0x14015a57b
adc rcx, 0
cmp rcx, rdx
ja 0x14015dcd7
test rcx, rcx
je 0x14015a888
lea rsi, [r14 + 0x1b0]
shl rcx, 5
lea r12, [rcx + rbx]
add r12, 0xffffffffffffffe0
neg rcx
lea rdx, [rbp + 0x8c0]
xor r8d, r8d
mov r9, qword [rbp + 0xc40]
jmp 0x14015a5ce
add r12, 0xffffffffffffffe0
add rcx, 0x20
je 0x14015a888
cmp qword [r12 + 0x18], r9
jbe 0x14015a618
cmp qword [r12 + 8], r9
jbe 0x14015a5c0
cmp rdi, qword [r12]
jbe 0x14015a5c0
mov rcx, qword [r12 + 0x10]
mov rdx, qword [r14 + 0x1d0]
cmp rcx, rdx
jae 0x14015dce3
imul rcx, rcx, 0x218
add rcx, qword [r14 + 0x1c8]
mov qword [rbp + 0x8c0], rcx
lea rdx, [rbp - 0x58]
xor r13d, r13d
mov r8, r12
jmp 0x14015a61b
mov r13b, 1
mov qword [rdx], r8
mov r14, qword [rbp + 0x8c0]
test r14, r14
je 0x14015a888
lea rcx, [rbp + 0x8c0]
mov rdx, r14
mov r15, qword [rbp + 0xc40]
mov r8, r15
mov r9, rsi
call fcn.140167370
mov qword [rbp + 0x1d8], r15
mov qword [rbp + 0x1e0], r14
mov qword [rbp + 0x1e8], rsi
mov qword [rbp + 0x1f0], rsi
mov qword [rbp + 0x1f8], r15
mov qword [rbp + 0x200], rdi
mov qword [rbp + 0x208], rbx
mov qword [rbp + 0x210], r12
mov qword [rbp + 0x218], rdi
mov qword [rbp + 0x220], r15
mov byte [rbp + 0x228], r13b
lea rcx, [rbp - 0x58]
lea r8, [rbp + 0x1d8]
lea rdx, [rbp + 0x8c0]
call fcn.140167860
cmp byte [rbp + 0x58], 2
je 0x14015a885
lea rbx, [rbp - 0x28]
lea r14, [rbp + 0x1f0]
lea rdi, [rbp + 0x8d1]
lea r13, [rbp + 0x8c0]
lea rsi, [rbp + 0x510]
lea r15, [rbp + 0x7a0]
lea r12, [rbp - 0x58]
nop word cs:[rax + rax]
movups xmm0, xmmword [rbp - 0x58]
movups xmm1, xmmword [rbp - 0x48]
movups xmm2, xmmword [rbp - 0x38]
movaps xmmword [rbp + 0x870], xmm2
movaps xmmword [rbp + 0x860], xmm1
movaps xmmword [rbp + 0x850], xmm0
mov r8d, 0x88
lea rcx, [rbp + 0x1d8]
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x850]
lock dec qword [rax]
jne 0x14015a73f
lea rcx, [rbp + 0x850]
call fcn.140166570
mov rax, qword [rbp + 0x1d8]
mov rcx, qword [rbp + 0x1e8]
movzx edx, byte [rax + 0x200]
cmp edx, 0x4b
je 0x14015a772
cmp edx, 0x4c
jne 0x14015a79e
mov byte [rax + 0x200], 0x4b
mov qword [rax + 0x208], 0
jmp 0x14015a790
mov r8, qword [rax + 0x208]
test r8, r8
je 0x14015a790
mov rcx, qword [r8]
add rcx, 0x10
add r8, 8
mov dl, 2
mov rax, r8
jmp 0x14015a799
mov rcx, qword [rcx]
add rcx, 0x10
xor edx, edx
xor r8d, r8d
jmp 0x14015a7cc
mov rcx, qword [rax + 0x200]
movzx edx, byte [rax + 0x208]
mov r8d, dword [rax + 0x20c]
mov dword [rbp + 0x7a3], r8d
mov eax, dword [rax + 0x209]
mov dword [rbp + 0x7a0], eax
mov r8d, 1
mov qword [rbp + 0x8c0], r8
mov qword [rbp + 0x8c8], rcx
mov byte [rbp + 0x8d0], dl
mov ecx, dword [rbp + 0x7a0]
mov edx, dword [rbp + 0x7a3]
mov dword [rdi + 3], edx
mov dword [rdi], ecx
mov qword [rbp + 0x8d8], rax
lea rcx, [rbp + 0x518]
mov rdx, r14
mov r8, r13
call fcn.140167d50
mov qword [rbp + 0x510], 0
mov rax, qword [r14 + 0x68]
mov qword [rbp + 0x7f0], rax
movups xmm0, xmmword [r14 + 0x58]
movaps xmmword [rbp + 0x7e0], xmm0
movups xmm0, xmmword [r14 + 0x18]
movups xmm1, xmmword [r14 + 0x28]
movups xmm2, xmmword [r14 + 0x38]
movups xmm3, xmmword [r14 + 0x48]
movaps xmmword [rbp + 0x7d0], xmm3
movaps xmmword [rbp + 0x7c0], xmm2
movaps xmmword [rbp + 0x7b0], xmm1
movaps xmmword [rbp + 0x7a0], xmm0
mov rcx, r13
mov rdx, rsi
mov r8, r15
call fcn.140167860
mov r8d, 0xb8
mov rcx, r12
mov rdx, r13
call sub.msvcrt.dll_memcpy
cmp byte [rbp + 0x58], 2
jne 0x14015a6f0
mov eax, dword [rbp - 0x58]
mov rdi, qword [rbp + 0xc88]
add rdi, 8
cmp eax, 5
mov rbx, qword [rbp + 0xb98]
je 0x14015afcc
mov rcx, qword [rbp - 0x20]
mov qword [rbp + 0xc78], rcx
mov rcx, qword [rbp - 0x10]
mov qword [rbp + 0xc60], rcx
lea ecx, [rax - 3]
cmp ecx, 2
mov edx, 2
cmovb edx, ecx
test edx, edx
je 0x14015a9df
mov r8d, dword [rbp - 0x54]
mov r12d, dword [rbp - 0x50]
mov r15d, dword [rbp - 0x4c]
mov r9, qword [rbp - 0x48]
mov qword [rbp + 0xcc0], r9
mov r9, qword [rbp - 0x40]
mov qword [rbp + 0xcb0], r9
mov r14, qword [rbp - 0x38]
mov r9, qword [rbp - 0x30]
mov qword [rbp + 0xc50], r9
mov r9, qword [rbp - 0x28]
mov r10, qword [rbp - 0x18]
mov qword [rbp + 0xcb8], r10
mov r10, qword [rbp - 8]
lea r11, [r14 + 0x60]
mov qword [rbp + 0xc48], r11
lea r11, [r14 + 0x1b8]
mov qword [rbp + 0xca8], r11
mov r11, qword [rbx]
mov qword [rbp + 0xc98], r11
mov rsi, qword [rbx + 8]
cmp edx, 1
mov qword [rbp + 0xc68], r14
mov qword [rbp + 0xc80], r9
mov qword [rbp + 0xb98], rbx
mov qword [rbp + 0xc88], rdi
mov qword [rbp + 0xc70], r10
jne 0x14015a9e6
mov qword [rbp + 0xc58], r8
cmp qword [rbp + 0xc60], 0
sete al
mov qword [rbp + 0xca0], r15
mov rdi, r15
shl rdi, 0x20
or rdi, r12
cmp ecx, 2
setb cl
or cl, al
jne 0x14015a9a4
mov edx, 8
mov rcx, qword [rbp + 0xc78]
call fcn.14003fe40
mov eax, 2
mov qword [rbp + 0xcc8], rax
mov r13d, 3
mov rbx, r14
mov r12, qword [rbp + 0xcb0]
mov r14, qword [rbp + 0xcc0]
mov rcx, qword [rbp + 0xc88]
mov rdx, qword [rbp + 0xc40]
call fcn.140169a60
jmp 0x14015ac02
xor esi, esi
jmp 0x14015af9d
mov eax, eax
mov rdi, r8
shl rdi, 0x20
or rdi, rax
mov r14, r15
shl r14, 0x20
or r14, r12
cmp qword [rbp + 0xcb8], r10
je 0x14015aac2
mov rbx, qword [r10 - 8]
mov eax, dword [rbx + 0x28]
xor r13d, r13d
mov qword [rbp + 0xc58], rax
test eax, eax
setne byte [rbp + 0xc18]
mov eax, dword [rbx + 0x2c]
mov qword [rbp + 0xcc8], 0
mov qword [rbp + 0xca0], rax
test eax, eax
setne r12b
cmp dword [rbx], 1
jne 0x14015abb0
mov rax, qword [rbp + 0xc48]
cmp dword [rax], 0x2f
je 0x14015abb0
mov rax, qword [rbx + 8]
mov qword [rbp + 0xc90], rax
mov rax, qword [rbp + 0xc68]
test byte [rax + 0x1b0], 1
jne 0x14015ab63
lea rcx, [rbp + 0x8c0]
mov rdx, qword [rbp + 0xc48]
call fcn.140163bf0
mov r15, qword [rbp + 0xc68]
lea rcx, [rbp - 0x58]
lea r8, [rbp + 0x8c0]
mov rdx, r15
mov r9, qword [rbp + 0xc50]
call fcn.1401640a0
cmp qword [r15 + 0x1b0], 0
je 0x14015ab2f
lea rcx, [rbp - 0x58]
call fcn.140165900
jmp 0x14015ab63
mov rax, qword [r9 + 0x28]
test rax, rax
je 0x14015aad1
mov rdx, qword [r9 + 0x30]
jmp 0x14015aad1
mov qword [rbp + 0xcc8], r12
mov qword [rbp + 0xca0], r15
mov qword [rbp + 0xc58], r8
cmp qword [rbp + 0xc60], 0
je 0x14015ab0d
mov rbx, rdx
mov edx, 8
mov rcx, qword [rbp + 0xc78]
mov r15, rax
call fcn.14003fe40
mov rdx, rbx
mov rax, r15
mov r13d, 3
mov rbx, qword [rbp + 0xcb0]
mov r12, qword [rbp + 0xcc0]
test rax, rax
jne 0x14015ac02
jmp 0x14015a9c7
mov r15, qword [rbp + 0xca8]
je 0x14015ab40
mov rcx, r15
call fcn.140165900
mov rax, qword [rbp + 0xc68]
mov qword [rax + 0x1b0], 1
movups xmm0, xmmword [rbp - 0x58]
movups xmm1, xmmword [rbp - 0x48]
movups xmmword [r15 + 0x10], xmm1
movups xmmword [r15], xmm0
mov rax, qword [rbp + 0xca8]
cmp qword [rax], 0
je 0x14015ab90
mov rcx, qword [rbp + 0xc90]
cmp rcx, qword [rax + 8]
jae 0x14015abb0
mov rax, qword [rax]
lea rdx, [rcx + rcx*2]
mov rcx, qword [rax + rdx*8 + 8]
mov r8, qword [rax + rdx*8 + 0x10]
jmp 0x14015abb2
mov rax, qword [rbp + 0xc68]
cmp byte [rax + 0x1c0], 0x4b
jne 0x14015b039
mov rax, qword [rax + 0x1c8]
test rax, rax
jne 0x14015ab70
xor ecx, ecx
add qword [rbp + 0xc70], 0xfffffffffffffff8
movzx eax, byte [rbp + 0xc18]
mov r13b, al
mov rax, qword [rbp + 0xcc8]
mov al, r12b
mov qword [rbp + 0xcc8], rax
mov rax, qword [rbx + 0x18]
test rax, rax
je 0x14015b013
mov rdx, qword [rbx + 0x20]
mov rbx, qword [rbp + 0xcb0]
mov r12, qword [rbp + 0xcc0]
mov qword [rbp + 0xcc0], rcx
mov qword [rbp + 0xcb0], r8
mov qword [rbp + 0x8c0], rdi
mov qword [rbp + 0x8c8], r14
mov qword [rbp + 0x8d0], r12
mov qword [rbp + 0x8d8], rbx
mov rcx, qword [rbp + 0xc40]
mov qword [rbp + 0x8e0], rcx
mov qword [rbp + 0x8e8], rax
mov qword [rbp + 0x8f0], rdx
mov rax, qword [rsi + 0x20]
lea rdx, [rbp + 0x8c0]
mov rcx, qword [rbp + 0xc98]
mov qword [rbp + 0xc18], rax
call rax
jmp 0x14015accc
mov r14, qword [r14 + 0x20]
mov rdi, qword [rbp + 0xcb0]
mov r15, qword [rbp + 0xcc0]
mov qword [rbp + 0xcc0], rax
mov qword [rbp + 0xcb0], rcx
nop word [rax + rax]
mov qword [rbp + 0x8c0], r12
mov qword [rbp + 0x8c8], rbx
mov qword [rbp + 0x8d0], r15
mov qword [rbp + 0x8d8], rdi
mov rax, qword [rbp + 0xc40]
mov qword [rbp + 0x8e0], rax
mov qword [rbp + 0x8e8], rsi
mov qword [rbp + 0x8f0], r14
mov rcx, qword [rbp + 0xc98]
lea rdx, [rbp + 0x8c0]
call qword [rbp + 0xc18]
lea ecx, [r13 - 3]
cmp ecx, 2
mov eax, 2
cmovb eax, ecx
cmp eax, 1
je 0x14015adf0
cmp eax, 2
jne 0x14015af8c
mov eax, r13d
mov r12, qword [rbp + 0xc58]
shl r12, 0x20
or r12, rax
mov eax, dword [rbp + 0xcc8]
mov rbx, qword [rbp + 0xca0]
shl rbx, 0x20
or rbx, rax
mov rax, qword [rbp + 0xc70]
cmp qword [rbp + 0xcb8], rax
je 0x14015ae6f
mov r14, qword [rax - 8]
mov eax, dword [r14 + 0x28]
mov ecx, dword [r14 + 0x2c]
xor r13d, r13d
mov qword [rbp + 0xc58], rax
test eax, eax
setne sil
mov qword [rbp + 0xcc8], 0
mov qword [rbp + 0xca0], rcx
test ecx, ecx
setne dil
test byte [r14], 1
je 0x14015af40
mov rax, qword [rbp + 0xc48]
cmp dword [rax], 0x2f
je 0x14015af40
mov rax, qword [r14 + 8]
mov qword [rbp + 0xc90], rax
mov rax, qword [rbp + 0xc68]
test byte [rax + 0x1b0], 1
lea rax, [rbp + 0x8c0]
jne 0x14015aef1
mov rcx, rax
mov rdx, qword [rbp + 0xc48]
call fcn.140163bf0
mov r15, qword [rbp + 0xc68]
lea rcx, [rbp - 0x58]
mov rdx, r15
lea r8, [rbp + 0x8c0]
mov r9, qword [rbp + 0xc50]
call fcn.1401640a0
cmp qword [r15 + 0x1b0], 0
je 0x14015aebd
lea rcx, [rbp - 0x58]
call fcn.140165900
jmp 0x14015aef1
cmp qword [rbp + 0xc60], 0
sete al
cmp ecx, 2
setb cl
or cl, al
jne 0x14015ae16
mov edx, 8
mov rcx, qword [rbp + 0xc78]
call fcn.14003fe40
mov eax, dword [rbp + 0xcc8]
mov r12, qword [rbp + 0xca0]
shl r12, 0x20
or r12, rax
mov eax, 2
mov qword [rbp + 0xcc8], rax
mov r13d, 3
mov rdi, qword [rbp + 0xc68]
mov r15, qword [rbp + 0xcb0]
mov rbx, qword [rbp + 0xcc0]
mov rcx, qword [rbp + 0xc88]
mov rdx, qword [rbp + 0xc40]
call fcn.140169a60
mov rsi, rax
mov r14, rdx
jmp 0x14015ac80
mov rax, qword [rbp + 0xc80]
mov rsi, qword [rax + 0x28]
test rsi, rsi
je 0x14015ae83
mov r14, qword [rax + 0x30]
cmp qword [rbp + 0xc60], 0
je 0x14015ae9e
mov edx, 8
mov rcx, qword [rbp + 0xc78]
call fcn.14003fe40
mov r13d, 3
mov rdi, qword [rbp + 0xcb0]
mov r15, qword [rbp + 0xcc0]
test rsi, rsi
jne 0x14015ac80
jmp 0x14015ae51
mov r15, qword [rbp + 0xca8]
je 0x14015aece
mov rcx, r15
call fcn.140165900
mov rax, qword [rbp + 0xc68]
mov qword [rax + 0x1b0], 1
movups xmm0, xmmword [rbp - 0x58]
movups xmm1, xmmword [rbp - 0x48]
movups xmmword [r15 + 0x10], xmm1
movups xmmword [r15], xmm0
mov rax, qword [rbp + 0xca8]
cmp qword [rax], 0
jne 0x14015af1e
mov rax, qword [rbp + 0xc68]
cmp byte [rax + 0x1c0], 0x4b
jne 0x14015b034
mov rax, qword [rax + 0x1c8]
test rax, rax
je 0x14015af40
mov rdx, qword [rbp + 0xc90]
cmp rdx, qword [rax + 8]
jae 0x14015af40
mov rcx, qword [rax]
lea rdx, [rdx + rdx*2]
mov rax, qword [rcx + rdx*8 + 8]
mov rcx, qword [rcx + rdx*8 + 0x10]
jmp 0x14015af42
xor eax, eax
add qword [rbp + 0xc70], 0xfffffffffffffff8
mov r13b, sil
mov rdx, qword [rbp + 0xcc8]
mov dl, dil
mov qword [rbp + 0xcc8], rdx
mov rsi, qword [r14 + 0x18]
test rsi, rsi
jne 0x14015ac57
mov rdi, qword [rbp + 0xcb0]
mov r15, qword [rbp + 0xcc0]
mov qword [rbp + 0xcc0], rax
mov qword [rbp + 0xcb0], rcx
jmp 0x14015ae51
mov sil, 1
mov rbx, qword [rbp + 0xb98]
mov rdi, qword [rbp + 0xc88]
cmp qword [rbp + 0xc60], 0
sete al
cmp ecx, 2
setb cl
or cl, al
jne 0x14015afc3
mov edx, 8
mov rcx, qword [rbp + 0xc78]
call fcn.14003fe40
test sil, sil
jne 0x14015ba46
mov rcx, rdi
mov rdx, qword [rbp + 0xc40]
call fcn.140169a60
test rax, rax
je 0x14015ba46
mov rcx, qword [rbx]
mov r8, qword [rbx + 8]
mov dword [rbp + 0x8c0], 3
mov qword [rbp + 0x8c8], rax
mov qword [rbp + 0x8d0], rdx
lea rdx, [rbp + 0x8c0]
call qword [r8 + 0x20]
jmp 0x14015ba46
mov rbx, qword [rbp + 0xcb0]
mov r12, qword [rbp + 0xcc0]
mov qword [rbp + 0xcc0], rcx
mov qword [rbp + 0xcb0], r8
jmp 0x14015a9c7
mov sil, 1
jmp 0x14015b03b
xor esi, esi
cmp qword [rbp + 0xc60], 0
mov rbx, qword [rbp + 0xb98]
mov rdi, qword [rbp + 0xc88]
jne 0x14015afb2
jmp 0x14015afc3
mov qword [rbp + 0xc18], rsi
mov qword [rbp + 0xb98], r13
mov qword [rbp + 0x8c8], 8
mov qword [rbp + 0x8d0], 0
mov rax, qword [rbp + 0x8c8]
mov qword [rbp + 0x510], rax
mov rax, qword [rbp + 0x8d0]
mov qword [rbp + 0x518], rax
xor esi, esi
xor edi, edi
xor ecx, ecx
xor eax, eax
lea r9, [rbp + 0x858]
movabs r8, 0x8000000000000000
mov rdx, qword [rbp + 0x510]
mov qword [r9], rdx
mov rdx, qword [rbp + 0x518]
mov qword [r9 + 8], rdx
mov qword [rbp + 0x850], rax
mov qword [rbp + 0x868], r14
mov qword [rbp + 0x870], rbx
mov qword [rbp + 0x878], r11
mov qword [rbp + 0x880], r10
mov qword [rbp + 0x888], rcx
mov qword [rbp + 0x890], rbx
mov qword [rbp + 0x898], rdi
mov qword [rbp + 0x8a0], rsi
mov qword [rbp + 0x7a0], r8
lea rdx, str..debug_abbrev.debug_addr.debug_aranges.debug_cu_index.debug_info.debug_line.debug_line_str.debug_loc.debug_loclists.debug_ranges.debug_rnglists.debug_str.debug_str_offsets.debug_tu_index.debug_typesNulError
lea rsi, [rbp + 0x850]
mov r8d, 0xd
mov rcx, rsi
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xcc8], rdx
mov edi, 1
cmove rax, rdi
mov qword [rbp + 0xcc0], rax
lea rdx, [0x14027d9d5]
mov r8d, 0xb
mov rcx, rsi
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xcb0], rdx
cmove rax, rdi
mov qword [rbp + 0xca0], rax
lea rdx, [0x14027d9e0]
mov r8d, 0xe
mov rcx, rsi
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc98], rdx
cmove rax, rdi
mov qword [rbp + 0xc88], rax
lea rdx, [0x14027d9fd]
mov r8d, 0xb
mov rcx, rsi
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc70], rdx
cmove rax, rdi
mov qword [rbp + 0xc58], rax
lea rdx, [0x14027da08]
mov r8d, 0xb
mov rcx, rsi
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc60], rdx
cmove rax, rdi
mov qword [rbp + 0xc68], rax
lea rdx, [0x14027da13]
mov r8d, 0xf
mov rcx, rsi
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xcb8], rdx
cmove rax, rdi
mov qword [rbp + 0xc78], rax
lea rdx, [0x14027da57]
mov r8d, 0xa
mov rcx, rsi
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc48], rdx
cmove rax, rdi
mov qword [rbp + 0xc80], rax
lea rdx, [0x14027da61]
mov r8d, 0x12
mov rcx, rsi
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc90], rdx
cmove rax, rdi
mov qword [rbp + 0xca8], rax
lea rdx, [0x14027da82]
mov r8d, 0xc
mov rcx, rsi
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc50], rdx
cmove rax, rdi
mov qword [rbp + 0xc08], rax
lea rdx, [0x14027da22]
mov r8d, 0xa
mov rcx, rsi
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc10], rdx
cmove rax, rdi
mov qword [rbp + 0xc00], rax
lea rdx, [0x14027da2c]
mov r8d, 0xf
mov rcx, rsi
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xbc8], rdx
cmove rax, rdi
mov qword [rbp + 0xc38], rax
lea rdx, [0x14027da3b]
mov r8d, 0xd
mov rcx, rsi
call fcn.14015e2f0
mov r13, rax
mov rsi, rdx
lea rdx, [0x14027da48]
mov r8d, 0xf
lea rcx, [rbp + 0x850]
call fcn.14015e2f0
test r13, r13
cmove rsi, r13
cmove r13, rdi
test rax, rax
cmovne rdi, rax
cmove rdx, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x9a0], xmm0
mov rax, qword [rbp + 0xcc0]
mov qword [rbp + 0x8d0], rax
mov rax, qword [rbp + 0xcc8]
mov qword [rbp + 0x8d8], rax
mov rax, qword [rbp + 0xca0]
mov qword [rbp + 0x8e0], rax
mov rax, qword [rbp + 0xcb0]
mov qword [rbp + 0x8e8], rax
mov rax, qword [rbp + 0xc88]
mov qword [rbp + 0x8f0], rax
mov rax, qword [rbp + 0xc98]
mov qword [rbp + 0x8f8], rax
mov rax, qword [rbp + 0xc58]
mov qword [rbp + 0x900], rax
mov rax, qword [rbp + 0xc70]
mov qword [rbp + 0x908], rax
mov rax, qword [rbp + 0xc68]
mov qword [rbp + 0x910], rax
mov rax, qword [rbp + 0xc60]
mov qword [rbp + 0x918], rax
mov rax, qword [rbp + 0xc78]
mov qword [rbp + 0x920], rax
mov rax, qword [rbp + 0xcb8]
mov qword [rbp + 0x928], rax
mov rax, qword [rbp + 0xc80]
mov qword [rbp + 0x930], rax
mov rax, qword [rbp + 0xc48]
mov qword [rbp + 0x938], rax
mov rax, qword [rbp + 0xca8]
mov qword [rbp + 0x940], rax
mov rax, qword [rbp + 0xc90]
mov qword [rbp + 0x948], rax
mov rax, qword [rbp + 0xc08]
mov qword [rbp + 0x950], rax
mov rax, qword [rbp + 0xc50]
mov qword [rbp + 0x958], rax
mov rax, qword [rbp + 0xc00]
mov qword [rbp + 0x960], rax
mov rax, qword [rbp + 0xc10]
mov qword [rbp + 0x968], rax
mov rax, qword [rbp + 0xc38]
mov qword [rbp + 0x970], rax
mov rax, qword [rbp + 0xbc8]
mov qword [rbp + 0x978], rax
mov qword [rbp + 0x980], r13
mov qword [rbp + 0x988], rsi
mov qword [rbp + 0x990], rdi
mov qword [rbp + 0x998], rdx
mov qword [rbp + 0x9b8], 0
mov byte [rbp + 0x9c0], 0
mov qword [rbp + 0x8c0], 1
mov qword [rbp + 0x8c8], 1
movzx eax, byte [0x1402a6198]
mov edx, 0x108
xor ecx, ecx
call fcn.140188040
test rax, rax
je 0x14015dcef
mov r13, rax
lea rdx, [rbp + 0x8c0]
mov r8d, 0x108
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov qword [rbp + 0xb90], r13
mov qword [rbp + 0xb70], 0
mov qword [rbp + 0xb78], 8
mov qword [rbp + 0xb80], 0
mov rax, qword [r13 + 0x30]
mov rcx, qword [r13 + 0x38]
mov qword [rbp + 0xc88], rax
mov qword [rbp + 0x8a8], rax
mov qword [rbp + 0x8b0], rcx
mov qword [rbp + 0x8b8], 0
mov qword [rbp + 0xca0], rcx
test rcx, rcx
mov qword [rbp + 0xc98], r13
je 0x14015b8d6
mov edi, 8
mov qword [rbp + 0xcc8], 0
mov eax, 8
mov qword [rbp + 0xcb0], rax
xor esi, esi
mov r13, qword [rbp + 0xca0]
jmp 0x14015b5f5
mov rax, qword [rbp + 0xb78]
mov qword [rbp + 0xcb0], rax
mov rax, qword [rbp + 0xcb0]
mov qword [rax + rdi - 8], r13
mov rcx, qword [rbp + 0xcc0]
mov qword [rax + rdi], rcx
mov rcx, qword [rbp + 0xcc8]
inc rcx
mov qword [rbp + 0xcc8], rcx
mov qword [rbp + 0xb80], rcx
mov r13, qword [rbp + 0x8b0]
add rdi, 0x10
test r13, r13
je 0x14015b771
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0x8a8]
mov r8, rsi
call fcn.14015e4c0
cmp byte [rbp + 0x8e9], 3
je 0x14015b9b3
sub r13, qword [rbp + 0x8b0]
mov rax, qword [rbp + 0x8d0]
mov qword [rbp + 0xcc0], rax
mov rsi, r13
add rsi, qword [rbp + 0x8b8]
mov r13, qword [rbp + 0x8e0]
mov qword [rbp + 0x8b8], rsi
mov rax, qword [rbp + 0xcc8]
cmp rax, qword [rbp + 0xb70]
jne 0x14015b5b2
lea rcx, [rbp + 0xb70]
call fcn.14015e230
jmp 0x14015b5a4
mov rax, qword [rbp + 0x8c8]
add rdi, qword [rbp + 0xc70]
add r13, rdi
mov rdx, qword [rbp + 0xcc8]
mov rcx, rdx
shl rcx, 4
mov qword [rax + rcx], r13
mov r8, qword [rbp + 0xcb0]
mov qword [rax + rcx + 8], r8
inc rdx
mov qword [rbp + 0xcc8], rdx
mov qword [rbp + 0x8d0], rdx
mov r10, qword [rbp + 0xca0]
mov r11, qword [rbp + 0xc98]
mov r8, qword [rbp + 0xc58]
mov r9, qword [rbp + 0xc88]
mov rdi, qword [rbp + 0xcc0]
add rsi, rdi
inc rsi
cmp rsi, r9
jae 0x14015b813
lea rcx, [rsi + rsi*8]
movzx edi, byte [r8 + rcx*2 + 0x11]
movzx edx, word [r8 + rcx*2 + 0xe]
and edx, 0x30
cmp dx, 0x20
jne 0x14015b6cd
lea r13, [r8 + rcx*2]
movzx edx, word [r13 + 0xc]
cmp edx, 0xfeff
movsx ecx, dx
cmovb ecx, edx
test ecx, ecx
jle 0x14015b6cd
mov qword [rbp + 0xcc0], rdi
mov edx, ecx
dec rdx
lea rcx, [rdx + rdx*4]
lea rcx, [r11 + rcx*8]
cmp rdx, r10
mov edx, 0x1d
cmovae rcx, rdx
jae 0x14015ce7a
test rcx, rcx
je 0x14015ce7a
mov qword [rbp + 0xcb0], r13
mov edi, dword [r13 + 8]
mov r13d, dword [rcx + 0xc]
mov rcx, qword [rbp + 0xcc8]
cmp rcx, qword [rbp + 0x8c0]
jne 0x14015b671
lea rcx, [rbp + 0x8c0]
call fcn.14015e230
jmp 0x14015b66a
cmp qword [rbp + 0xcc8], 2
mov r13, qword [rbp + 0xc98]
jb 0x14015b8d6
mov rcx, qword [rbp + 0xb78]
cmp qword [rbp + 0xcc8], 0x15
jae 0x14015b8c3
mov rsi, qword [rbp + 0xcc8]
shl rsi, 4
add rsi, rcx
lea r8, [rcx + 0x10]
mov eax, 0x10
mov r9, rcx
mov r13, qword [rbp + 0xc98]
jmp 0x14015b7dc
mov r10, rcx
mov qword [r10], r8
mov qword [r10 + 8], r9
lea r8, [rdx + 0x10]
add rax, 0x10
mov r9, rdx
cmp r8, rsi
je 0x14015b8d6
mov rdx, r8
mov r8, qword [r9 + 0x10]
cmp r8, qword [r9]
jae 0x14015b7c8
mov r9, qword [r9 + 0x18]
mov r11, rax
movups xmm0, xmmword [rcx + r11 - 0x10]
movups xmmword [rcx + r11], xmm0
cmp r11, 0x10
je 0x14015b7be
lea r10, [r11 - 0x10]
cmp r8, qword [rcx + r11 - 0x20]
mov r11, r10
jb 0x14015b7ef
add r10, rcx
jmp 0x14015b7c1
cmp qword [rbp + 0xcc8], 2
jb 0x14015cebb
mov rcx, qword [rbp + 0x8c8]
cmp qword [rbp + 0xcc8], 0x15
jae 0x14015cea1
mov rsi, qword [rbp + 0xcc8]
shl rsi, 4
add rsi, rcx
lea r8, [rcx + 0x10]
mov eax, 0x10
mov r9, rcx
mov r10, qword [rbp + 0xca0]
mov r11, qword [rbp + 0xc98]
jmp 0x14015b88c
mov r10, rcx
mov qword [r10], r8
mov qword [r10 + 8], r9
mov r10, qword [rbp + 0xca0]
mov r11, qword [rbp + 0xc98]
lea r8, [rdx + 0x10]
add rax, 0x10
mov r9, rdx
cmp r8, rsi
je 0x14015cebb
mov rdx, r8
mov r8, qword [r9 + 0x10]
cmp r8, qword [r9]
jae 0x14015b878
mov r9, qword [r9 + 0x18]
mov r11, rax
movups xmm0, xmmword [rcx + r11 - 0x10]
movups xmmword [rcx + r11], xmm0
cmp r11, 0x10
je 0x14015b860
lea r10, [r11 - 0x10]
cmp r8, qword [rcx + r11 - 0x20]
mov r11, r10
jb 0x14015b89f
add r10, rcx
jmp 0x14015b863
mov rdx, qword [rbp + 0xcc8]
call fcn.14015e770
mov r13, qword [rbp + 0xc98]
mov qword [rbp + 0xc20], 0
mov qword [rbp + 0xc28], 8
mov qword [rbp + 0xc30], 0
mov qword [rbp + 0xbe0], 0
mov qword [rbp + 0xbe8], 8
mov qword [rbp + 0xbf0], 0
movups xmm0, xmmword [r13 + 0x40]
movups xmmword [rbp + 0xb08], xmm0
mov qword [rbp + 0xb18], 0
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xb08]
call fcn.14015e890
mov rax, qword [rbp + 0x8c0]
cmp rax, 3
jne 0x14015ba61
mov rsi, qword [rbp + 0xbe8]
mov rbx, qword [rbp + 0xbf0]
inc rbx
mov rcx, rsi
cmp rbx, 1
je 0x14015b981
lea r15, [rcx + 0x218]
dec rbx
call fcn.140163b00
mov rcx, r15
jmp 0x14015b967
cmp qword [rbp + 0xbe0], 0
je 0x14015b998
mov edx, 8
mov rcx, rsi
call fcn.14003fe40
cmp qword [rbp + 0xc20], 0
je 0x14015b9b3
mov rcx, qword [rbp + 0xc28]
mov edx, 8
call fcn.14003fe40
cmp qword [rbp + 0xb70], 0
je 0x14015b9ce
mov rcx, qword [rbp + 0xb78]
mov edx, 8
call fcn.14003fe40
mov r13, qword [rbp + 0xb90]
lock dec qword [r13]
jne 0x14015b9e8
lea rcx, [rbp + 0xb90]
call fcn.140166570
mov rsi, qword [rbp + 0x7a0]
shl rsi, 1
test rsi, rsi
je 0x14015ba08
mov rcx, qword [rbp + 0x7a8]
mov edx, 8
call fcn.14003fe40
cmp qword [rbp + 0x850], 0
mov rsi, qword [rbp + 0xc18]
je 0x14015ba2a
mov rcx, qword [rbp + 0x858]
mov edx, 8
call fcn.14003fe40
lea rcx, [rbp + 0x738]
call fcn.14015e0a0
mov rcx, r14
call sub.KERNEL32.dll_UnmapViewOfFile
mov rcx, rsi
call sub.KERNEL32.dll_CloseHandle
movaps xmm6, xmmword [rbp + 0xcd0]
add rsp, 0xd68
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rcx, r13
add rcx, 0x10
mov qword [rbp + 0xcc8], rcx
lea rdi, [rbp + 0x8d8]
mov rcx, qword [r13 + 0xd0]
mov qword [rbp + 0xc60], rcx
mov rcx, qword [r13 + 0xd8]
mov qword [rbp + 0xc70], rcx
movzx ecx, byte [r13 + 0x100]
mov byte [rbp + 0xc68], cl
mov rcx, qword [r13 + 0x20]
mov qword [rbp + 0xc58], rcx
mov rcx, qword [r13 + 0x28]
mov qword [rbp + 0xcb0], rcx
jmp 0x14015bae3
lea rdi, [rbp + 0x8d8]
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xb08]
call fcn.14015e890
mov rax, qword [rbp + 0x8c0]
cmp rax, 3
je 0x14015b953
mov rsi, qword [rbp + 0x8c8]
mov rcx, qword [rbp + 0x8d0]
mov rdx, qword [rdi + 0x30]
mov qword [rbp + 0x540], rdx
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movups xmm2, xmmword [rdi + 0x20]
movaps xmmword [rbp + 0x530], xmm2
movaps xmmword [rbp + 0x520], xmm1
movaps xmmword [rbp + 0x510], xmm0
movaps xmmword [rbp + 0x410], xmm0
lea rdx, [rbp + 0x520]
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movaps xmmword [rbp + 0x820], xmm0
movaps xmmword [rbp + 0x830], xmm1
mov rdx, qword [rdx + 0x20]
mov qword [rbp + 0x840], rdx
cmp rax, 2
je 0x14015ccf9
test rax, rax
jne 0x14015babf
mov rax, rcx
or rax, 4
cmp rax, 5
je 0x14015babf
mov rax, qword [rbp + 0xbf0]
mov qword [rbp + 0xcc0], rax
mov qword [rbp + 0xb20], 0
mov qword [rbp + 0xb28], rsi
mov qword [rbp + 0xb30], rcx
movaps xmm0, xmmword [rbp + 0x410]
lea rcx, [rbp + 0xb38]
movups xmmword [rcx], xmm0
mov rax, qword [rbp + 0x840]
mov qword [rcx + 0x30], rax
movaps xmm0, xmmword [rbp + 0x820]
movaps xmm1, xmmword [rbp + 0x830]
movups xmmword [rcx + 0x20], xmm1
movups xmmword [rcx + 0x10], xmm0
lea rcx, [rbp + 0x8c0]
mov rdx, qword [rbp + 0xcc8]
lea r8, [rbp + 0xb20]
call fcn.14015ee90
cmp dword [rbp + 0x8c0], 2
je 0x14015bab8
mov r8d, 0x1a8
lea rdi, [rbp + 0x510]
mov rcx, rdi
lea rdx, [rbp + 0x8c0]
call sub.msvcrt.dll_memcpy
mov rdx, qword [rbp + 0x668]
lea rax, [rdx + 0x10]
mov r8, qword [rbp + 0x538]
mov r9, qword [rbp + 0x540]
mov qword [rbp + 0xb20], r8
mov qword [rbp + 0xb28], r9
mov qword [rbp + 0xb30], rdi
mov qword [rbp + 0xb38], rax
mov qword [rbp + 0xb40], 0
test r9, r9
je case.0x14015c7f6.3
lea r10, [r9 - 1]
lea r11, [r8 + 1]
xor eax, eax
xor ecx, ecx
movzx edi, byte [r11 - 1]
cmp ecx, 0x3f
jne 0x14015bc73
cmp dil, 2
jae 0x14015cdcc
movzx edi, dil
mov r13d, edi
and r13d, 0x7f
shl r13, cl
or rax, r13
test dil, dil
jns 0x14015bc9a
add ecx, 7
inc r11
add r10, 0xffffffffffffffff
jb 0x14015bc5f
jmp 0x14015cdd5
mov qword [rbp + 0xb20], r11
mov qword [rbp + 0xb28], r10
test rax, rax
jne 0x14015bd45
lock dec qword [rdx]
jne 0x14015bcc3
mov rcx, qword [rbp + 0x668]
call fcn.140161560
cmp dword [rbp + 0x570], 0x2f
je 0x14015bab8
cmp qword [rbp + 0x5b0], 0
je 0x14015bceb
mov rcx, qword [rbp + 0x5b8]
mov edx, 2
call fcn.14003fe40
cmp qword [rbp + 0x5c8], 0
je 0x14015bd06
mov rcx, qword [rbp + 0x5d0]
mov edx, 8
call fcn.14003fe40
cmp qword [rbp + 0x5e0], 0
je 0x14015bd21
mov rcx, qword [rbp + 0x5e8]
mov edx, 2
call fcn.14003fe40
cmp qword [rbp + 0x5f8], 0
je 0x14015bab8
mov rcx, qword [rbp + 0x600]
mov edx, 8
call fcn.14003fe40
jmp 0x14015bab8
lea rcx, [rax - 1]
cmp rcx, qword [rdx + 0x20]
jae 0x14015bd59
imul rcx, rcx, 0x70
add rcx, qword [rdx + 0x18]
jmp 0x14015bdd3
mov rcx, qword [rdx + 0x28]
test rcx, rcx
je case.0x14015c7f6.3
mov rdx, qword [rdx + 0x30]
movzx r9d, word [rcx + 0x532]
mov r10d, r9d
shl r10d, 3
mov r8, 0xffffffffffffffff
test r10, r10
je 0x14015bdb5
xor r11d, r11d
cmp qword [rcx + r8*8 + 0x4e0], rax
setne r11b
mov edi, 0xff
cmova r11d, edi
inc r8
add r10, 0xfffffffffffffff8
cmp r11b, 1
je 0x14015bd80
movzx r9d, r11b
test r9d, r9d
je 0x14015bdcc
jmp 0x14015bdb8
mov r8, r9
sub rdx, 1
jb case.0x14015c7f6.3
mov rcx, qword [rcx + r8*8 + 0x538]
jmp 0x14015bd6a
imul rax, r8, 0x70
add rcx, rax
cmp byte [rcx + 0x6a], 1
jne 0x14015bde4
mov qword [rbp + 0xb40], 1
call fcn.14007d293
mov qword [rbp + 0xc78], rax
mov qword [rbp + 0xcb8], rdx
cmp qword [rbp + 0xcb8], 0
je 0x14015c392
mov ecx, dword [rbp + 0x558]
mov rdx, qword [rbp + 0x6b0]
mov rax, qword [rbp + 0xc70]
sub rax, rdx
mov qword [rbp + 0x808], rax
mov eax, ecx
and eax, 0xff00
mov dword [rbp + 0xb00], eax
mov eax, ecx
shr eax, 0x10
mov dword [rbp + 0xb04], eax
xor r8d, r8d
cmp ecx, 0x50000
mov r9d, 0
cmovb r9, rdx
mov rax, qword [rbp + 0xc60]
mov qword [rbp + 0xc00], rdx
add rax, rdx
mov qword [rbp + 0xaf8], rax
test byte [rbp + 0xc68], 1
mov edi, 0
cmove r9, r8
mov qword [rbp + 0x800], r9
movzx eax, ch
mov qword [rbp + 0x810], rax
mov rdx, qword [rbp + 0x6a0]
mov rax, qword [rbp + 0xcb0]
sub rax, rdx
mov qword [rbp + 0xc50], rax
mov rax, qword [rbp + 0xc58]
mov qword [rbp + 0xc10], rdx
add rax, rdx
mov qword [rbp + 0xc38], rax
mov dword [rbp + 0xb8c], ecx
movzx eax, cl
mov qword [rbp + 0xc80], rax
shl qword [rbp + 0xcb8], 4
mov dword [rbp + 0xc48], 0
mov dword [rbp + 0xc90], 0
mov dword [rbp + 0xca8], 0
mov dword [rbp + 0xbc8], 0
xor r13d, r13d
jmp 0x14015bf2a
cmp eax, 0x26
mov eax, 1
mov ecx, dword [rbp + 0xc48]
cmove ecx, eax
mov dword [rbp + 0xc48], ecx
mov rax, rdi
add rax, 0x10
mov rdi, rax
cmp qword [rbp + 0xcb8], rax
je 0x14015c3bf
mov rax, qword [rbp + 0xc78]
movups xmm0, xmmword [rax + rdi]
movaps xmmword [rbp + 0x400], xmm0
mov rax, qword [rbp + 0xb30]
mov r8d, dword [rax + 0x48]
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xb20]
lea r9, [rbp + 0x400]
call fcn.140161690
mov rax, qword [rbp + 0x8c0]
cmp rax, 0x2e
je case.0x14015c7f6.3
mov rcx, qword [rbp + 0x8d8]
movups xmm0, xmmword [rbp + 0x8c8]
movups xmmword [rbp + 0xba8], xmm0
mov qword [rbp + 0xba0], rax
mov qword [rbp + 0xbb8], rcx
movzx eax, cx
cmp eax, 0x12
jg 0x14015c05a
cmp eax, 0x11
je 0x14015c11f
cmp eax, 0x12
jne 0x14015bf13
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xba0]
call fcn.1401659c0
mov rax, qword [rbp + 0x8c0]
test rax, rax
je 0x14015c22d
cmp eax, 7
je 0x14015c248
cmp eax, 0xc
jne 0x14015bf13
mov rax, qword [rbp + 0xc10]
cmp qword [rbp + 0xcb0], rax
jb case.0x14015c7f6.3
mov rax, qword [rbp + 0x8c8]
imul rax, qword [rbp + 0xc80]
mov rcx, qword [rbp + 0xc50]
sub rcx, rax
jb case.0x14015c7f6.3
mov rdx, qword [rbp + 0xc80]
dec edx
cmp edx, 7
ja case.0x14015c7f6.3
lea r8, [0x1401a6e10]
movsxd rdx, dword [r8 + rdx*4]
add rdx, r8
jmp rdx
cmp qword [rbp + 0xc50], rax
je case.0x14015c7f6.3
mov rcx, qword [rbp + 0xc38]
movzx eax, byte [rcx + rax]
jmp 0x14015c37e
cmp eax, 0x13
je 0x14015c1bd
cmp eax, 0x55
jne 0x14015bf13
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xba0]
call fcn.1401659c0
mov rcx, qword [rbp + 0x8c0]
mov rax, qword [rbp + 0x8c8]
cmp rcx, 0x16
je 0x14015c1f4
cmp ecx, 0x18
jne 0x14015c225
mov rcx, qword [rbp + 0xc00]
cmp qword [rbp + 0xc70], rcx
jb case.0x14015c7f6.3
imul rax, qword [rbp + 0x810]
mov rcx, qword [rbp + 0x808]
sub rcx, rax
jb case.0x14015c7f6.3
cmp dword [rbp + 0xb00], 0x800
jne 0x14015c263
cmp rcx, 7
jbe case.0x14015c7f6.3
mov r9, qword [rbp + 0xaf8]
movzx ecx, byte [r9 + rax + 7]
movzx edx, word [r9 + rax + 4]
movzx r8d, byte [r9 + rax + 6]
shl r8d, 0x10
or r8d, edx
mov eax, dword [r9 + rax]
shl r8, 0x28
shl rax, 8
or rax, r8
shrd rax, rcx, 8
jmp 0x14015c277
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xba0]
call fcn.1401659c0
mov rax, qword [rbp + 0x8c0]
test rax, rax
je 0x14015c20a
cmp eax, 0xc
jne 0x14015bf13
mov rax, qword [rbp + 0xc10]
cmp qword [rbp + 0xcb0], rax
jb case.0x14015c7f6.3
mov rax, qword [rbp + 0x8c8]
imul rax, qword [rbp + 0xc80]
mov rcx, qword [rbp + 0xc50]
sub rcx, rax
jb case.0x14015c7f6.3
mov rdx, qword [rbp + 0xc80]
dec edx
cmp edx, 7
ja case.0x14015c7f6.3
lea r8, [0x1401a6e30]
movsxd rdx, dword [r8 + rdx*4]
add rdx, r8
jmp rdx
cmp qword [rbp + 0xc50], rax
je case.0x14015c7f6.3
mov rcx, qword [rbp + 0xc38]
movzx eax, byte [rcx + rax]
jmp 0x14015c2ff
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xba0]
call fcn.1401659c0
mov rax, qword [rbp + 0x8c0]
cmp rax, 0x26
jne 0x14015befc
movzx ecx, word [rbp + 0x8c8]
mov word [rbp + 0xbc6], cx
jmp 0x14015befc
add rax, qword [rbp + 0x800]
mov r13b, 1
mov qword [rbp + 0xc08], rax
jmp 0x14015bf13
mov al, 1
mov dword [rbp + 0xc90], eax
mov rax, qword [rbp + 0x8c8]
mov qword [rbp + 0xbd0], rax
jmp 0x14015bf13
xor r13d, r13d
jmp 0x14015bf13
mov al, 1
mov dword [rbp + 0xca8], eax
mov rax, qword [rbp + 0x8c8]
mov qword [rbp + 0xbd8], rax
jmp 0x14015bf13
mov al, 1
mov dword [rbp + 0xbc8], eax
mov rax, qword [rbp + 0x8c8]
mov qword [rbp + 0x818], rax
jmp 0x14015bf13
cmp rcx, 3
jbe case.0x14015c7f6.3
mov rcx, qword [rbp + 0xaf8]
mov eax, dword [rcx + rax]
mov qword [rbp + 0xc08], rax
mov rax, qword [rbp + 0xc00]
add qword [rbp + 0xc08], rax
mov r13b, 1
jmp 0x14015bf13
cmp rcx, 1
jbe case.0x14015c7f6.3
mov rcx, qword [rbp + 0xc38]
movzx eax, word [rcx + rax]
jmp 0x14015c2ff
cmp rcx, 3
jbe case.0x14015c7f6.3
mov rcx, qword [rbp + 0xc38]
mov eax, dword [rcx + rax]
jmp 0x14015c2ff
cmp rcx, 8
jb case.0x14015c7f6.3
mov r9, qword [rbp + 0xc38]
movzx ecx, byte [r9 + rax + 7]
movzx edx, word [r9 + rax + 4]
movzx r8d, byte [r9 + rax + 6]
shl r8d, 0x10
or r8d, edx
mov eax, dword [r9 + rax]
shl r8, 0x28
shl rax, 8
or rax, r8
shrd rax, rcx, 8
mov qword [rbp + 0xbd0], rax
mov al, 1
mov dword [rbp + 0xc90], eax
jmp 0x14015bf13
cmp rcx, 1
jbe case.0x14015c7f6.3
mov rcx, qword [rbp + 0xc38]
movzx eax, word [rcx + rax]
jmp 0x14015c37e
cmp rcx, 3
jbe case.0x14015c7f6.3
mov rcx, qword [rbp + 0xc38]
mov eax, dword [rcx + rax]
jmp 0x14015c37e
cmp rcx, 8
jb case.0x14015c7f6.3
mov r9, qword [rbp + 0xc38]
movzx ecx, byte [r9 + rax + 7]
movzx edx, word [r9 + rax + 4]
movzx r8d, byte [r9 + rax + 6]
shl r8d, 0x10
or r8d, edx
mov eax, dword [r9 + rax]
shl r8, 0x28
shl rax, 8
or rax, r8
shrd rax, rcx, 8
mov qword [rbp + 0xbd8], rax
mov al, 1
mov dword [rbp + 0xca8], eax
jmp 0x14015bf13
mov dword [rbp + 0xc48], 0
mov dword [rbp + 0xc90], 0
mov dword [rbp + 0xca8], 0
mov dword [rbp + 0xbc8], 0
jmp 0x14015c4d1
test r13b, 1
je 0x14015c4d1
xor eax, eax
cmp dword [rbp + 0xb8c], 0x50000
setae al
shl eax, 4
mov rcx, qword [rbp + 0xc98]
mov rax, qword [rcx + rax + 0xc8]
sub rax, qword [rbp + 0xc08]
jb case.0x14015c7f6.3
xor ecx, ecx
mov edi, dword [rbp + 0xb8c]
cmp edi, 0x50000
setae cl
shl ecx, 4
mov rdx, qword [rbp + 0xc98]
mov rcx, qword [rdx + rcx + 0xc0]
add rcx, qword [rbp + 0xc08]
cmp edi, 0x50000
mov rdx, qword [rbp + 0x690]
setae byte [rbp + 0x8f4]
mov r8, qword [rbp + 0xc58]
mov qword [rbp + 0x8c0], r8
mov r8, qword [rbp + 0xcb0]
mov qword [rbp + 0x8c8], r8
mov qword [rbp + 0x8d0], rdx
mov rdx, qword [rbp + 0xc10]
mov qword [rbp + 0x8d8], rdx
mov qword [rbp + 0x8e0], rcx
mov qword [rbp + 0x8e8], rax
mov word [rbp + 0x8f0], di
mov eax, dword [rbp + 0xb04]
mov word [rbp + 0x8f2], ax
lea rcx, [rbp + 0xba0]
lea rdx, [rbp + 0x8c0]
call fcn.140162af0
mov rax, qword [rbp + 0xba0]
cmp rax, 2
jne 0x14015caf0
mov rcx, qword [rbp + 0xba8]
cmp cl, 0x4b
jne case.0x14015c7f6.3
mov rax, rcx
shr eax, 8
and eax, 1
mov qword [rbp + 0xca8], rax
jmp 0x14015c9b6
mov rax, qword [rbp + 0xb80]
test rax, rax
je 0x14015c54a
mov r10, rax
mov rax, qword [rbp + 0xb78]
cmp r10, 1
jne 0x14015c4f2
xor r13d, r13d
jmp 0x14015c51c
mov rcx, r10
xor edx, edx
mov r8, rcx
shr r8, 1
lea r13, [r8 + rdx]
mov r9, r13
shl r9, 4
cmp qword [rax + r9], rsi
cmova r13, rdx
sub rcx, r8
mov rdx, r13
cmp rcx, 1
ja 0x14015c4f7
mov rcx, r13
shl rcx, 4
cmp qword [rax + rcx], rsi
jne 0x14015c54a
inc r13
add rcx, rax
add rcx, 0xfffffffffffffff0
cmp r13, 1
je 0x14015c5a4
dec r13
lea rdx, [rcx - 0x10]
cmp qword [rcx], rsi
mov rcx, rdx
je 0x14015c533
jmp 0x14015c5a7
test byte [rbp + 0xc90], 1
je 0x14015c9ab
test byte [rbp + 0xca8], 1
je 0x14015c966
mov rax, qword [rbp + 0xbd8]
cmp qword [rbp + 0xbd0], rax
jae 0x14015c9ab
mov rdi, qword [rbp + 0xc30]
cmp rdi, qword [rbp + 0xc20]
jne 0x14015cbb0
lea rcx, [rbp + 0xc20]
call fcn.140163970
mov r13, qword [rbp + 0xbd8]
jmp 0x14015cbb7
xor r13d, r13d
cmp r13, r10
je 0x14015c9ab
shl r10, 4
add r10, rax
mov qword [rbp + 0xc00], r10
shl r13, 4
add r13, rax
mov qword [rbp + 0xca8], 0
jmp 0x14015c5e3
add r13, 0x10
cmp r13, qword [rbp + 0xc00]
je 0x14015c9b6
cmp qword [r13], rsi
jne 0x14015c9b6
mov r8, qword [r13 + 8]
mov rax, qword [rbp + 0xca0]
sub rax, r8
jb case.0x14015c7f6.3
mov rcx, qword [rbp + 0xc88]
add rcx, r8
mov qword [rbp + 0xba0], rcx
mov qword [rbp + 0xba8], rax
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xba0]
call fcn.14015e4c0
cmp byte [rbp + 0x8e9], 3
je case.0x14015c7f6.3
mov rax, qword [rbp + 0x8c8]
mov qword [rbp + 0xcb8], rax
test rax, rax
je 0x14015c5d2
mov rdi, qword [rbp + 0x8c0]
movzx eax, byte [rbp + 0x8e8]
movzx ecx, byte [rbp + 0x8ec]
mov qword [rbp + 0xc10], rax
add eax, eax
mov qword [rbp + 0xc78], rcx
add al, cl
movzx eax, al
mov qword [rbp + 0xc50], rax
jmp 0x14015c6f9
movzx ecx, word [rdi + 4]
movzx edx, byte [rdi + 6]
shl edx, 0x10
or edx, ecx
mov r8d, dword [rdi]
mov r9d, dword [rdi + 8]
movzx ecx, byte [rdi + 7]
shl rdx, 0x28
shl r8, 8
or r8, rdx
shrd r8, rcx, 8
mov qword [rbp + 0xc90], r8
add qword [rbp + 0xcb8], 0xfffffffffffffff0
movzx ecx, byte [rdi + 0xf]
movzx edx, word [rdi + 0xc]
movzx r8d, byte [rdi + 0xe]
add rdi, 0x10
shl r8d, 0x10
or r8d, edx
shl r8, 0x28
shl r9, 8
or r9, r8
shrd r9, rcx, 8
mov qword [rbp + 0xc80], r9
or rax, qword [rbp + 0xc90]
or rax, qword [rbp + 0xc80]
jne 0x14015c8cf
mov rax, qword [rbp + 0xc50]
cmp qword [rbp + 0xcb8], rax
jb 0x14015c5d2
cmp dword [rbp + 0xc78], 8
ja case.0x14015c7f6.3
mov eax, dword [rbp + 0xc78]
lea rcx, [0x1401a6e50]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov rax, qword [rbp + 0xc78]
jmp 0x14015c7d6
cmp qword [rbp + 0xcb8], 0
je case.0x14015c7f6.3
dec qword [rbp + 0xcb8]
movzx eax, byte [rdi]
inc rdi
jmp 0x14015c7d6
cmp qword [rbp + 0xcb8], 1
jbe case.0x14015c7f6.3
add qword [rbp + 0xcb8], 0xfffffffffffffffe
movzx eax, word [rdi]
add rdi, 2
jmp 0x14015c7d6
cmp qword [rbp + 0xcb8], 3
jbe case.0x14015c7f6.3
add qword [rbp + 0xcb8], 0xfffffffffffffffc
mov eax, dword [rdi]
add rdi, 4
jmp 0x14015c7d6
cmp qword [rbp + 0xcb8], 8
jb case.0x14015c7f6.3
add qword [rbp + 0xcb8], 0xfffffffffffffff8
movzx ecx, byte [rdi + 7]
movzx edx, word [rdi + 4]
movzx r8d, byte [rdi + 6]
mov eax, dword [rdi]
add rdi, 8
shl r8d, 0x10
or r8d, edx
shl r8, 0x28
shl rax, 8
or rax, r8
shrd rax, rcx, 8
mov rcx, qword [rbp + 0xc10]
dec ecx
cmp ecx, 7
ja case.0x14015c7f6.3
lea rdx, [0x1401a6e74]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
cmp qword [rbp + 0xcb8], 2
jb case.0x14015c7f6.3
movzx ecx, byte [rdi]
mov qword [rbp + 0xc90], rcx
add qword [rbp + 0xcb8], 0xfffffffffffffffe
movzx ecx, byte [rdi + 1]
mov qword [rbp + 0xc80], rcx
add rdi, 2
jmp 0x14015c6e5
cmp qword [rbp + 0xcb8], 4
jb case.0x14015c7f6.3
movzx ecx, word [rdi]
mov qword [rbp + 0xc90], rcx
add qword [rbp + 0xcb8], 0xfffffffffffffffc
movzx ecx, word [rdi + 2]
mov qword [rbp + 0xc80], rcx
add rdi, 4
jmp 0x14015c6e5
cmp qword [rbp + 0xcb8], 8
jb case.0x14015c7f6.3
mov rcx, qword [rbp + 0xcb8]
and rcx, 0xfffffffffffffff8
cmp rcx, 8
jne 0x14015c67f
jmp case.0x14015c7f6.3
cmp qword [rbp + 0xcb8], 4
jb case.0x14015c7f6.3
mov rcx, qword [rbp + 0xcb8]
and rcx, 0xfffffffffffffffc
cmp rcx, 4
je case.0x14015c7f6.3
mov ecx, dword [rdi]
mov qword [rbp + 0xc90], rcx
mov ecx, dword [rdi + 4]
mov qword [rbp + 0xc80], rcx
add qword [rbp + 0xcb8], 0xfffffffffffffff8
add rdi, 8
jmp 0x14015c6e5
cmp qword [rbp + 0xc80], 0
je 0x14015c953
mov rax, qword [rbp + 0xc30]
mov qword [rbp + 0xca8], rax
cmp rax, qword [rbp + 0xc20]
jne 0x14015c8fc
lea rcx, [rbp + 0xc20]
call fcn.140163970
mov rdx, qword [rbp + 0xc90]
mov r8, qword [rbp + 0xc80]
add r8, rdx
mov rax, qword [rbp + 0xc28]
mov r9, qword [rbp + 0xca8]
mov rcx, r9
shl rcx, 5
mov qword [rax + rcx], rdx
mov qword [rax + rcx + 8], r8
mov rdx, qword [rbp + 0xcc0]
mov qword [rax + rcx + 0x10], rdx
mov qword [rax + rcx + 0x18], 0
inc r9
mov qword [rbp + 0xc30], r9
mov al, 1
mov qword [rbp + 0xca8], rax
cmp qword [rbp + 0xcb8], 0
jne 0x14015c6f9
jmp 0x14015c5d2
test byte [rbp + 0xbc8], 1
je 0x14015c9ab
mov rax, qword [rbp + 0x818]
mov rcx, qword [rbp + 0xbd0]
lea r13, [rax + rcx]
cmp rcx, r13
jae 0x14015c9ab
mov rdi, qword [rbp + 0xc30]
cmp rdi, qword [rbp + 0xc20]
jne 0x14015cbb7
lea rcx, [rbp + 0xc20]
call fcn.140163970
jmp 0x14015cbb7
mov qword [rbp + 0xca8], 0
mov qword [rbp + 0xb20], 0
test byte [rbp + 0xca8], 1
jne 0x14015cbff
cmp qword [rbp + 0x570], 0x2f
je 0x14015cbff
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0x570]
call fcn.140163bf0
lea rcx, [rbp + 0xba0]
lea rdx, [rbp + 0x510]
lea r8, [rbp + 0x8c0]
mov r9, qword [rbp + 0xcc8]
call fcn.1401640a0
mov qword [rbp + 0xb20], 1
movups xmm0, xmmword [rbp + 0xba0]
movups xmm1, xmmword [rbp + 0xbb0]
lea rax, [rbp + 0xb28]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
cmp qword [rbp + 0xb28], 0
je 0x14015cbff
mov rax, qword [rbp + 0xb40]
mov qword [rbp + 0xcb8], rax
test rax, rax
je 0x14015cbff
mov rax, qword [rbp + 0xb38]
mov qword [rbp + 0xc78], rax
mov r13, qword [rbp + 0xc30]
mov rax, r13
shl rax, 5
mov qword [rbp + 0xc80], rax
shl qword [rbp + 0xcb8], 5
xor edi, edi
jmp 0x14015cacd
mov rax, qword [rbp + 0xc28]
add rax, qword [rbp + 0xc80]
movups xmmword [rdi + rax], xmm6
mov rcx, qword [rbp + 0xcc0]
mov qword [rdi + rax + 0x10], rcx
mov qword [rdi + rax + 0x18], 0
inc r13
mov qword [rbp + 0xc30], r13
add rdi, 0x20
cmp qword [rbp + 0xcb8], rdi
je 0x14015cbff
mov rax, qword [rbp + 0xc78]
movups xmm6, xmmword [rax + rdi + 0x10]
cmp r13, qword [rbp + 0xc20]
jne 0x14015ca8b
lea rcx, [rbp + 0xc20]
call fcn.140163970
jmp 0x14015ca8b
mov qword [rbp + 0xca8], 0
jmp 0x14015cb67
mov rax, qword [rbp + 0xc28]
mov rcx, rdi
shl rcx, 5
mov rdx, qword [rbp + 0xcb8]
mov qword [rax + rcx], rdx
mov qword [rax + rcx + 8], r13
mov rdx, qword [rbp + 0xcc0]
mov qword [rax + rcx + 0x10], rdx
mov qword [rax + rcx + 0x18], 0
inc rdi
mov qword [rbp + 0xc30], rdi
mov al, 1
mov qword [rbp + 0xca8], rax
lea rcx, [rbp + 0xba0]
lea rdx, [rbp + 0x8c0]
call fcn.140162af0
mov rax, qword [rbp + 0xba0]
cmp rax, 2
je 0x14015c4ac
cmp rax, 1
jne 0x14015c9b6
mov rax, qword [rbp + 0xba8]
mov r13, qword [rbp + 0xbb0]
mov qword [rbp + 0xcb8], rax
cmp rax, r13
jae 0x14015cb43
mov rdi, qword [rbp + 0xc30]
cmp rdi, qword [rbp + 0xc20]
jne 0x14015cafd
lea rcx, [rbp + 0xc20]
call fcn.140163970
jmp 0x14015cafd
mov r13, qword [rbp + 0xbd8]
mov rax, qword [rbp + 0xc28]
mov rcx, rdi
shl rcx, 5
mov rdx, qword [rbp + 0xbd0]
mov qword [rax + rcx], rdx
mov qword [rax + rcx + 8], r13
mov rdx, qword [rbp + 0xcc0]
mov qword [rax + rcx + 0x10], rdx
mov qword [rax + rcx + 0x18], 0
inc rdi
mov qword [rbp + 0xc30], rdi
mov qword [rbp + 0xb20], 0
mov r8d, 0x1a8
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0x510]
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [rbp + 0xb20]
movups xmm1, xmmword [rbp + 0xb30]
lea rcx, [rbp + 0x8d8]
movups xmmword [rcx + 0x198], xmm0
movups xmmword [rcx + 0x1a8], xmm1
mov rax, qword [rbp + 0xb40]
mov qword [rcx + 0x1b8], rax
mov qword [rbp + 0xa68], rsi
mov eax, dword [rbp + 0xc48]
mov word [rbp + 0xad0], ax
movzx eax, word [rbp + 0xbc6]
mov word [rbp + 0xad2], ax
mov qword [rbp + 0xa98], 0
mov byte [rbp + 0xac0], 0x4c
mov rax, qword [rbp + 0xcc0]
cmp rax, qword [rbp + 0xbe0]
jne 0x14015cc99
lea rcx, [rbp + 0xbe0]
call fcn.140163a30
mov rdi, qword [rbp + 0xcc0]
imul rcx, rdi, 0x218
add rcx, qword [rbp + 0xbe8]
mov r8d, 0x218
lea rsi, [rbp + 0x8c0]
mov rdx, rsi
call sub.msvcrt.dll_memcpy
inc rdi
mov qword [rbp + 0xbf0], rdi
mov rcx, rsi
lea rdx, [rbp + 0xb08]
call fcn.14015e890
mov rax, qword [rbp + 0x8c0]
cmp rax, 3
lea rdi, [rbp + 0x8d8]
jne 0x14015bae3
jmp 0x14015b953
mov rsi, qword [rbp + 0xc28]
mov rcx, qword [rbp + 0xc30]
mov qword [rbp + 0xcc8], rcx
cmp rcx, 2
jb 0x14015cf36
cmp qword [rbp + 0xcc8], 0x15
jae 0x14015ceff
mov r10, qword [rbp + 0xcc8]
shl r10, 5
add r10, rsi
lea rdx, [rsi + 0x20]
mov eax, 0x20
mov r8, rsi
jmp 0x14015cd73
mov r8, rsi
mov qword [r8], rdx
movaps xmm0, xmmword [rbp + 0x8c0]
movups xmmword [r8 + 8], xmm0
mov rdx, qword [rbp + 0x8d0]
mov qword [r8 + 0x18], rdx
lea rdx, [rcx + 0x20]
add rax, 0x20
mov r8, rcx
cmp rdx, r10
je 0x14015cf21
mov rcx, rdx
mov rdx, qword [r8 + 0x20]
cmp rdx, qword [r8]
jae 0x14015cd5f
mov r9, qword [r8 + 0x38]
mov qword [rbp + 0x8d0], r9
movups xmm0, xmmword [r8 + 0x28]
movaps xmmword [rbp + 0x8c0], xmm0
mov r9, rax
movups xmm0, xmmword [rsi + r9 - 0x20]
movups xmm1, xmmword [rsi + r9 - 0x10]
movups xmmword [rsi + r9 + 0x10], xmm1
movups xmmword [rsi + r9], xmm0
cmp r9, 0x20
je 0x14015cd42
lea r8, [r9 - 0x20]
cmp rdx, qword [rsi + r9 - 0x40]
mov r9, r8
jb 0x14015cd99
add r8, rsi
jmp 0x14015cd45
mov qword [rbp + 0xb20], r11
jmp case.0x14015c7f6.3
add r8, r9
mov qword [rbp + 0xb20], r8
mov rax, qword [rbp + 0x668]
lock dec qword [rax]
jne 0x14015cdf8
mov rcx, qword [rbp + 0x668]
call fcn.140161560
cmp dword [rbp + 0x570], 0x2f
je 0x14015b953
cmp qword [rbp + 0x5b0], 0
je 0x14015ce20
mov rcx, qword [rbp + 0x5b8]
mov edx, 2
call fcn.14003fe40
cmp qword [rbp + 0x5c8], 0
je 0x14015ce3b
mov rcx, qword [rbp + 0x5d0]
mov edx, 8
call fcn.14003fe40
cmp qword [rbp + 0x5e0], 0
je 0x14015ce56
mov rcx, qword [rbp + 0x5e8]
mov edx, 2
call fcn.14003fe40
cmp qword [rbp + 0x5f8], 0
je 0x14015b953
mov rcx, qword [rbp + 0x600]
mov edx, 8
call fcn.14003fe40
jmp 0x14015b953
cmp qword [rbp + 0x8c0], 0
je 0x14015ce95
mov rcx, qword [rbp + 0x8c8]
mov edx, 8
call fcn.14003fe40
mov rsi, qword [rbp + 0xc18]
jmp 0x14015ba2a
mov rdx, qword [rbp + 0xcc8]
call fcn.14015e170
mov r10, qword [rbp + 0xca0]
mov r11, qword [rbp + 0xc98]
lea rcx, [rbp + 0x8c8]
mov rax, qword [rbp + 0x8c0]
movups xmm0, xmmword [rcx]
movaps xmmword [rbp + 0x510], xmm0
mov rcx, rax
neg rcx
mov rsi, qword [rbp + 0xc18]
mov rdi, qword [rbp + 0xc60]
jo 0x14015ba2a
mov rsi, qword [rbp + 0xc68]
add rsi, rdi
mov rcx, r14
jmp 0x14015b0a4
mov rcx, rsi
mov rdx, qword [rbp + 0xcc8]
call fcn.140166180
mov rcx, qword [rbp + 0xcc8]
shl rcx, 5
mov rax, rsi
add rax, rcx
jmp 0x14015cf4e
mov rsi, qword [rbp + 0xc28]
mov rax, qword [rbp + 0xc30]
mov qword [rbp + 0xcc8], rax
cmp qword [rbp + 0xcc8], 0
je 0x14015cf70
mov rax, qword [rbp + 0xcc8]
shl rax, 5
add rax, rsi
xor ecx, ecx
mov rdx, rsi
mov r8, qword [rdx + 8]
cmp rcx, r8
cmovbe rcx, r8
mov qword [rdx + 0x18], rcx
lea r8, [rdx + 0x20]
mov rdx, r8
cmp r8, rax
jne 0x14015cf53
jmp 0x14015cf7b
mov qword [rbp + 0xcc8], 0
mov rax, qword [rbp + 0xc20]
mov qword [rbp + 0xcb0], rax
movups xmm0, xmmword [rbp + 0xbe0]
movaps xmmword [rbp + 0x700], xmm0
mov rax, qword [rbp + 0xbf0]
mov qword [rbp + 0x710], rax
cmp qword [rbp + 0xb70], 0
je 0x14015cfc0
mov rcx, qword [rbp + 0xb78]
mov edx, 8
call fcn.14003fe40
mov r13, qword [rbp + 0xb90]
movabs rax, 0x8000000000000000
cmp qword [rbp + 0xcb0], rax
je 0x14015b9d5
mov rax, qword [rbp + 0x710]
mov qword [rbp + 0xbf0], rax
movaps xmm0, xmmword [rbp + 0x700]
movaps xmmword [rbp + 0xbe0], xmm0
mov rax, qword [r13 + 0xe0]
mov qword [rbp + 0xcc0], rax
test rax, rax
je 0x14015d0e4
mov qword [rbp + 0xba0], 0
mov qword [rbp + 0xba8], 8
mov qword [rbp + 0xbb0], 0
mov rax, qword [rbp + 0xcc0]
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rbp + 0x820], xmm0
mov qword [rbp + 0x830], 0
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0x820]
call fcn.14015e890
mov rax, qword [rbp + 0x8c0]
cmp rax, 3
jne 0x14015d19b
lea rcx, [rbp + 0xba0]
call fcn.140166360
mov r12, qword [rbp + 0xbe8]
mov rbx, qword [rbp + 0xbf0]
inc rbx
mov rcx, r12
cmp rbx, 1
je 0x14015d0ad
lea r15, [rcx + 0x218]
dec rbx
call fcn.140163b00
mov rcx, r15
jmp 0x14015d093
cmp qword [rbp + 0xbe0], 0
je 0x14015d0c4
mov edx, 8
mov rcx, r12
call fcn.14003fe40
cmp qword [rbp + 0xcb0], 0
je 0x14015b9d5
mov edx, 8
mov rcx, rsi
call fcn.14003fe40
jmp 0x14015b9d5
mov qword [rbp + 0xb08], 0
mov qword [rbp + 0xb10], 8
mov eax, 8
mov qword [rbp + 0xca0], rax
mov qword [rbp + 0xc98], 0
xor edi, edi
mov qword [rbp + 0xb18], rdi
mov qword [rbp + 0x8c0], r13
mov qword [rbp + 0xc70], rsi
mov rax, qword [rbp + 0xcc8]
cmp qword [rbp + 0xcb0], rax
jbe 0x14015d357
cmp qword [rbp + 0xcc8], 0
je 0x14015d33e
mov rdx, qword [rbp + 0xcb0]
shl rdx, 5
mov r9, qword [rbp + 0xcc8]
shl r9, 5
mov r8d, 8
mov rcx, rsi
mov qword [rbp + 0xcc0], r9
call fcn.14003fe60
mov qword [rbp + 0xc70], rax
test rax, rax
jne 0x14015d357
mov ecx, 8
mov rdx, qword [rbp + 0xcc0]
call fcn.14003a3fc
jmp 0x14015dcfe
add qword [rbp + 0xcc0], 0x10
mov ecx, 8
mov qword [rbp + 0xca0], rcx
xor edi, edi
jmp 0x14015d1e1
cmp rax, 2
je 0x14015d2fc
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0x820]
call fcn.14015e890
mov rax, qword [rbp + 0x8c0]
cmp rax, 3
je 0x14015d073
movups xmm6, xmmword [rbp + 0x8c8]
lea rcx, [rbp + 0x8d8]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [rcx + 0x20]
movaps xmmword [rbp + 0xb20], xmm0
movaps xmmword [rbp + 0xb30], xmm1
movaps xmmword [rbp + 0xb40], xmm2
mov rcx, qword [rcx + 0x30]
mov qword [rbp + 0xb50], rcx
test rax, rax
jne 0x14015d1b3
mov qword [rbp + 0x8c0], 0
movups xmmword [rbp + 0x8c8], xmm6
mov rax, qword [rbp + 0xb50]
lea rcx, [rbp + 0x8d8]
mov qword [rcx + 0x30], rax
movaps xmm0, xmmword [rbp + 0xb20]
movaps xmm1, xmmword [rbp + 0xb30]
movaps xmm2, xmmword [rbp + 0xb40]
movups xmmword [rcx + 0x20], xmm2
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
lea rcx, [rbp + 0x510]
mov rdx, qword [rbp + 0xcc0]
lea r8, [rbp + 0x8c0]
call fcn.14015ee90
cmp dword [rbp + 0x510], 2
je 0x14015d1bd
mov r8d, 0x1a8
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0x510]
call sub.msvcrt.dll_memcpy
movlps qword [rbp + 0xa68], xmm6
cmp rdi, qword [rbp + 0xba0]
jne 0x14015d2cd
lea rcx, [rbp + 0xba0]
call fcn.140166440
mov rax, qword [rbp + 0xba8]
mov qword [rbp + 0xca0], rax
imul rcx, rdi, 0x1b0
add rcx, qword [rbp + 0xca0]
mov r8d, 0x1b0
lea rdx, [rbp + 0x8c0]
call sub.msvcrt.dll_memcpy
inc rdi
mov qword [rbp + 0xbb0], rdi
jmp 0x14015d1bd
mov rdx, qword [rbp + 0xba0]
movabs rax, 0x8000000000000000
mov qword [rbp + 0xc98], rdx
cmp rdx, rax
je 0x14015d07f
mov rax, qword [rbp + 0xc98]
mov qword [rbp + 0xb08], rax
mov rax, qword [rbp + 0xca0]
mov qword [rbp + 0xb10], rax
jmp 0x14015d113
mov eax, 8
mov qword [rbp + 0xc70], rax
mov edx, 8
mov rcx, rsi
call fcn.14003fe40
mov rax, qword [rbp + 0xbe0]
mov rcx, qword [rbp + 0xbe8]
mov qword [rbp + 0xcc0], rcx
mov rcx, qword [rbp + 0xbf0]
mov qword [rbp + 0xc88], rcx
cmp rax, rcx
jbe 0x14015d3f3
cmp qword [rbp + 0xc88], 0
je 0x14015d3d6
imul rdx, rax, 0x218
imul r9, qword [rbp + 0xc88], 0x218
mov r8d, 8
mov rcx, qword [rbp + 0xcc0]
mov qword [rbp + 0xc58], r9
call fcn.14003fe60
mov qword [rbp + 0xcc0], rax
test rax, rax
jne 0x14015d3f3
mov ecx, 8
mov rdx, qword [rbp + 0xc58]
call fcn.14003a3fc
jmp 0x14015dcfe
mov edx, 8
mov rcx, qword [rbp + 0xcc0]
call fcn.14003fe40
mov eax, 8
mov qword [rbp + 0xcc0], rax
cmp qword [rbp + 0xc98], rdi
jbe 0x14015d46b
test rdi, rdi
je 0x14015d44e
imul rdx, qword [rbp + 0xc98], 0x1b0
imul r9, rdi, 0x1b0
mov r8d, 8
mov rcx, qword [rbp + 0xca0]
mov qword [rbp + 0xc98], r9
call fcn.14003fe60
mov qword [rbp + 0xca0], rax
test rax, rax
jne 0x14015d46b
mov ecx, 8
mov rdx, qword [rbp + 0xc98]
call fcn.14003a3fc
jmp 0x14015dcfe
mov edx, 8
mov rcx, qword [rbp + 0xca0]
call fcn.14003fe40
mov eax, 8
mov qword [rbp + 0xca0], rax
mov rsi, qword [rbp + 0x7a0]
test r13, r13
je 0x14015b9ef
mov qword [rbp + 0x768], r13
mov rax, qword [rbp + 0xc70]
mov qword [rbp + 0x770], rax
mov rax, qword [rbp + 0xcc8]
mov qword [rbp + 0x778], rax
mov rax, qword [rbp + 0xcc0]
mov qword [rbp + 0x780], rax
mov rax, qword [rbp + 0xc88]
mov qword [rbp + 0x788], rax
mov rax, qword [rbp + 0xca0]
mov qword [rbp + 0x790], rax
mov qword [rbp + 0x798], rdi
movabs rax, 0x8000000000000000
cmp rsi, rax
jne 0x14015d905
mov r13b, 0x16
mov rax, qword [rbp + 0x798]
mov qword [rbp + 0x6f0], rax
movups xmm0, xmmword [rbp + 0x768]
movups xmm1, xmmword [rbp + 0x778]
movups xmm2, xmmword [rbp + 0x788]
movaps xmmword [rbp + 0x6e0], xmm2
movaps xmmword [rbp + 0x6d0], xmm1
movaps xmmword [rbp + 0x6c0], xmm0
mov rax, qword [rbp + 0x850]
lea rcx, [rbp + 0x858]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [rcx + 0x20]
movups xmm3, xmmword [rcx + 0x30]
movaps xmmword [rbp + 0x460], xmm0
movaps xmmword [rbp + 0x470], xmm1
movaps xmmword [rbp + 0x480], xmm2
movaps xmmword [rbp + 0x490], xmm3
movups xmm0, xmmword [rcx + 0x40]
movaps xmmword [rbp + 0x4a0], xmm0
movabs rcx, 0x8000000000000000
cmp rax, rcx
mov rsi, qword [rbp + 0xc18]
je 0x14015ba2a
movaps xmm0, xmmword [rbp + 0x4a0]
movups xmmword [rbp + 0x220], xmm0
movaps xmm0, xmmword [rbp + 0x460]
movaps xmm1, xmmword [rbp + 0x470]
movaps xmm2, xmmword [rbp + 0x480]
movaps xmm3, xmmword [rbp + 0x490]
movups xmmword [rbp + 0x210], xmm3
movups xmmword [rbp + 0x200], xmm2
movups xmmword [rbp + 0x1f0], xmm1
movups xmmword [rbp + 0x1e0], xmm0
movaps xmm0, xmmword [rbp + 0x4f0]
movups xmmword [rbp + 0x271], xmm0
mov rcx, qword [rbp + 0x4ff]
mov qword [rbp + 0x280], rcx
movaps xmm0, xmmword [rbp + 0x4b0]
movaps xmm1, xmmword [rbp + 0x4c0]
movaps xmm2, xmmword [rbp + 0x4d0]
movaps xmm3, xmmword [rbp + 0x4e0]
movups xmmword [rbp + 0x231], xmm0
movups xmmword [rbp + 0x241], xmm1
movups xmmword [rbp + 0x251], xmm2
movups xmmword [rbp + 0x261], xmm3
mov rcx, qword [rbp + 0x72f]
mov qword [rbp + 0x298], rcx
movaps xmm0, xmmword [rbp + 0x720]
movups xmmword [rbp + 0x289], xmm0
movaps xmm0, xmmword [rbp + 0x420]
movaps xmm1, xmmword [rbp + 0x430]
movaps xmm2, xmmword [rbp + 0x440]
movaps xmm3, xmmword [rbp + 0x450]
movups xmmword [rbp + 0x2a0], xmm0
movups xmmword [rbp + 0x2b0], xmm1
movups xmmword [rbp + 0x2c0], xmm2
movups xmmword [rbp + 0x2d0], xmm3
mov rcx, qword [rbp + 0x6f0]
mov qword [rbp + 0x3b0], rcx
movaps xmm0, xmmword [rbp + 0x6c0]
movaps xmm1, xmmword [rbp + 0x6d0]
movaps xmm2, xmmword [rbp + 0x6e0]
movups xmmword [rbp + 0x380], xmm0
movups xmmword [rbp + 0x390], xmm1
movups xmmword [rbp + 0x3a0], xmm2
movups xmm0, xmmword [rbp + 0x738]
movups xmm1, xmmword [rbp + 0x748]
movups xmm2, xmmword [rbp + 0x758]
movups xmmword [rbp + 0x3f0], xmm2
movups xmmword [rbp + 0x3e0], xmm1
movups xmmword [rbp + 0x3d0], xmm0
mov qword [rbp + 0x1d8], rax
mov byte [rbp + 0x230], r13b
mov byte [rbp + 0x288], dil
mov rax, qword [rbp + 0xcb0]
mov qword [rbp + 0x2e0], rax
mov rax, qword [rbp + 0xca0]
mov qword [rbp + 0x2e8], rax
mov rax, qword [rbp + 0xc98]
mov qword [rbp + 0x2f0], rax
mov rax, qword [rbp + 0xc88]
mov qword [rbp + 0x2f8], rax
mov rax, qword [rbp + 0xc70]
mov qword [rbp + 0x300], rax
mov rax, qword [rbp + 0xc58]
mov qword [rbp + 0x308], rax
mov rax, qword [rbp + 0xc60]
mov qword [rbp + 0x310], rax
mov rax, qword [rbp + 0xc68]
mov qword [rbp + 0x318], rax
mov rax, qword [rbp + 0xcb8]
mov qword [rbp + 0x320], rax
mov rax, qword [rbp + 0xc78]
mov qword [rbp + 0x328], rax
mov rax, qword [rbp + 0xc48]
mov qword [rbp + 0x330], rax
mov rax, qword [rbp + 0xc80]
mov qword [rbp + 0x338], rax
mov rax, qword [rbp + 0xc90]
mov qword [rbp + 0x340], rax
mov rax, qword [rbp + 0xca8]
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0xc50]
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0xc08]
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0xc10]
mov qword [rbp + 0x360], rax
mov rax, qword [rbp + 0xc00]
mov qword [rbp + 0x368], rax
mov qword [rbp + 0x370], 1
mov qword [rbp + 0x378], 0
mov qword [rbp + 0x3b8], rsi
mov qword [rbp + 0x3c0], r14
mov qword [rbp + 0x3c8], rbx
mov rdi, qword [0x1401a2138]
mov rbx, qword [0x1401a2128]
cmp rdi, 4
jne 0x14015d876
mov qword [0x1401a2138], 3
mov edx, 0x690
add rdx, qword [0x1401a2130]
lea rcx, [rbp + 0x8c0]
mov r8d, 0x230
call sub.msvcrt.dll_memcpy
mov edi, 3
movabs rax, 0x8000000000000000
cmp qword [rbp + 0x8c8], rax
je 0x14015d876
lea rcx, [rbp + 0x8c8]
call fcn.1401672c0
mov rdi, qword [0x1401a2138]
mov rbx, qword [0x1401a2128]
lea rsi, [rbp + 0x8c8]
lea rdx, [rbp + 0x1d8]
mov r8d, 0x228
mov rcx, rsi
call sub.msvcrt.dll_memcpy
mov qword [rbp + 0x8c0], r15
cmp rdi, rbx
jne 0x14015d8a3
call fcn.1401671f0
mov r14, qword [0x1401a2130]
test rdi, rdi
je 0x14015dcb2
lea rcx, [r14 + 0x230]
imul r8, rdi, 0x230
mov rdx, r14
call sub.msvcrt.dll_memmove
lea rdx, [rbp + 0x8c0]
mov r8d, 0x230
mov rcx, r14
call sub.msvcrt.dll_memcpy
inc rdi
mov qword [0x1401a2138], rdi
mov rcx, qword [rbp + 0xc40]
jne 0x14015a4fd
lea r8, [0x140280568]
xor ecx, ecx
xor edx, edx
call fcn.1400683ff
lea rdx, [0x14027d9ee]
lea r13, [rbp + 0x7a0]
mov r8d, 0xf
mov rcx, r13
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xcc8], rdx
mov edi, 1
cmove rax, rdi
mov qword [rbp + 0xcc0], rax
lea rdx, [0x14027da73]
mov r8d, 0xf
mov rcx, r13
call fcn.14015e2f0
mov qword [rbp + 0xc38], rax
mov qword [rbp + 0xbc8], rdx
lea rdx, str..debug_abbrev.dwo.debug_info.dwo.debug_line.dwo.debug_loc.dwo.debug_loclists.dwo.debug_rnglists.dwo.debug_str.dwo.debug_str_offsets.dwo.debug_types.dwostd_src...._backtrace_src_symbolizegimli.rs
mov r8d, 0x11
mov rcx, r13
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xca0], rdx
cmove rax, rdi
mov qword [rbp + 0xcb0], rax
lea rdx, [0x140280499]
mov r8d, 0xf
mov rcx, r13
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc88], rdx
cmove rax, rdi
mov qword [rbp + 0xc98], rax
lea rdx, [0x1402804a8]
mov r8d, 0xf
mov rcx, r13
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc58], rdx
cmove rax, rdi
mov qword [rbp + 0xc70], rax
lea rdx, [0x1402804eb]
mov r8d, 0xe
mov rcx, r13
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc68], rdx
cmove rax, rdi
mov qword [rbp + 0xc60], rax
lea rdx, [0x1402804f9]
mov r8d, 0x16
mov rcx, r13
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc78], rdx
cmove rax, rdi
mov qword [rbp + 0xcb8], rax
lea rdx, [0x1402804b7]
mov r8d, 0xe
mov rcx, r13
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc80], rdx
cmove rax, rdi
mov qword [rbp + 0xc48], rax
lea rdx, [0x1402804c5]
mov r8d, 0x13
mov rcx, r13
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xca8], rdx
cmove rax, rdi
mov qword [rbp + 0xc90], rax
lea rdx, [0x1402804d8]
mov r8d, 0x13
mov rcx, r13
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc08], rdx
cmove rax, rdi
mov qword [rbp + 0xc50], rax
lea rdx, [0x14028050f]
mov r8d, 0x10
mov rcx, r13
call fcn.14015e2f0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc00], rdx
cmove rax, rdi
mov qword [rbp + 0xc10], rax
lea rcx, [rbp + 0x8c0]
mov rdx, qword [rbp + 0xcc0]
mov r8, qword [rbp + 0xcc8]
call fcn.1401666c0
movzx r13d, byte [rbp + 0x8c0]
cmp r13b, 0x16
je 0x14015dbb5
mov rax, qword [rbp + 0xc38]
test rax, rax
cmovne rdi, rax
mov r8, qword [rbp + 0xbc8]
cmove r8, rax
mov rax, qword [rbp + 0x8d0]
mov qword [rbp + 0xb2f], rax
movups xmm0, xmmword [rbp + 0x8c1]
movaps xmmword [rbp + 0xb20], xmm0
movups xmm0, xmmword [rbp + 0x8d8]
movaps xmmword [rbp + 0x510], xmm0
movups xmm0, xmmword [rbp + 0x8e8]
movaps xmmword [rbp + 0x520], xmm0
movups xmm0, xmmword [rbp + 0x8f8]
movaps xmmword [rbp + 0x530], xmm0
movups xmm0, xmmword [rbp + 0x908]
movaps xmmword [rbp + 0x540], xmm0
lea rcx, [rbp + 0x8c0]
mov rdx, rdi
call fcn.1401666c0
movzx edi, byte [rbp + 0x8c0]
cmp dil, 0x16
jne 0x14015dbeb
test rsi, rsi
je 0x14015dbcb
mov rcx, qword [rbp + 0x7a8]
mov edx, 8
call fcn.14003fe40
lea rcx, [rbp + 0x768]
call fcn.1401670d0
jmp 0x14015ba08
lea r8, [0x140280550]
mov rcx, r15
call fcn.1400683ff
mov rax, qword [rbp + 0x8d0]
mov qword [rbp + 0x72f], rax
movups xmm0, xmmword [rbp + 0x8c1]
movaps xmmword [rbp + 0x720], xmm0
movups xmm0, xmmword [rbp + 0x8d8]
movaps xmmword [rbp + 0x420], xmm0
movups xmm0, xmmword [rbp + 0x8e8]
movaps xmmword [rbp + 0x430], xmm0
movups xmm0, xmmword [rbp + 0x8f8]
movaps xmmword [rbp + 0x440], xmm0
movups xmm0, xmmword [rbp + 0x908]
movaps xmmword [rbp + 0x450], xmm0
movaps xmm0, xmmword [rbp + 0xb20]
movaps xmmword [rbp + 0x4b0], xmm0
mov rax, qword [rbp + 0xb2f]
mov qword [rbp + 0x4bf], rax
movaps xmm0, xmmword [rbp + 0x510]
movaps xmm1, xmmword [rbp + 0x520]
movaps xmm2, xmmword [rbp + 0x530]
movaps xmm3, xmmword [rbp + 0x540]
movups xmmword [rbp + 0x4f7], xmm3
movups xmmword [rbp + 0x4e7], xmm2
movups xmmword [rbp + 0x4d7], xmm1
movups xmmword [rbp + 0x4c7], xmm0
test rsi, rsi
je 0x14015d4e5
mov rcx, qword [rbp + 0x7a8]
mov edx, 8
call fcn.14003fe40
jmp 0x14015d4e5
lea rdx, [rbp + 0x8c0]
mov r8d, 0x230
mov rcx, r14
call sub.msvcrt.dll_memcpy
mov qword [0x1401a2138], 1
jmp 0x14015a4f6
lea r8, str._rust_deps_addr2line_0.22.0_srclib.rs
call fcn.140068dd0
lea r8, str._rust_deps_addr2line_0.22.0_srclib.rs
call fcn.1400683ff
mov ecx, 8
mov edx, 0x108
call fcn.14003a45d
ud2