Function at 0x14005c750
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, 0xd78
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0xce0], xmm6
mov qword [rbp + 0xa98], rdx
mov rdx, qword [0x1400a4058]
test rdx, rdx
je 0x14005e397
mov rax, qword [0x1400a4050]
mov rdi, rdx
shl rdi, 6
add rdi, rax
xor r15d, r15d
mov r8, rax
mov r10, qword [r8 + 0x28]
mov r9, qword [r8 + 0x30]
mov r12, qword [r8 + 0x38]
add r8, 0x40
shl r9, 4
nop word cs:[rax + rax]
test r9, r9
je 0x14005c7f0
mov r11, r10
add r10, 0x10
mov rsi, qword [r11]
add rsi, r12
add r9, 0xfffffffffffffff0
cmp rsi, rcx
ja 0x14005c7c0
add rsi, qword [r11 + 8]
cmp rsi, rcx
jbe 0x14005c7c0
jmp 0x14005c7fd
inc r15
cmp r8, rdi
jne 0x14005c7a0
jmp 0x14005e397
mov r13, rcx
mov rdi, qword [0x1400a4070]
test rdi, rdi
je 0x14005c839
mov r14, qword [0x1400a4068]
imul rsi, rdi, 0x230
xor ecx, ecx
xor ebx, ebx
nop
cmp qword [r14 + rbx], r15
je 0x14005ca98
add rbx, 0x230
dec rcx
cmp rsi, rbx
jne 0x14005c820
cmp rdx, r15
jbe 0x1400606d0
mov rcx, r15
shl rcx, 6
mov rdx, qword [rax + rcx + 8]
mov r8, qword [rax + rcx + 0x10]
lea rcx, [rbp + 0x860]
call fcn.14005bf00
cmp qword [rbp + 0x860], 0
je 0x14005e397
mov rax, qword [rbp + 0x868]
mov qword [rbp + 0xc60], rax
mov r14, qword [rbp + 0x870]
mov rcx, qword [rbp + 0x878]
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 rcx, 0x40
jb 0x14005e377
movzx eax, word [r14]
cmp eax, 0x5a4d
jne 0x14005e377
mov edi, dword [r14 + 0x3c]
mov rax, rcx
sub rax, rdi
jb 0x14005e377
cmp rax, 0x88
jb 0x14005e377
cmp dword [r14 + rdi], 0x4550
jne 0x14005e377
movzx eax, word [r14 + rdi + 0x18]
cmp eax, 0x20b
jne 0x14005e377
movzx esi, word [r14 + rdi + 0x14]
cmp rsi, 0x70
jb 0x14005e377
lea rbx, [rdi + 0x88]
add rsi, 0xffffffffffffff90
mov rax, rcx
sub rax, rbx
cmp rax, rsi
jb 0x14005e377
mov qword [rbp + 0xc38], rcx
lea rdx, [r14 + rbx]
mov r9d, dword [r14 + rdi + 0x84]
lea rcx, [rbp + 0x860]
mov r8, rsi
call fcn.140062d90
cmp qword [rbp + 0x860], 0
mov rcx, qword [rbp + 0xc38]
jne 0x14005e377
add rsi, rbx
movzx r10d, word [r14 + rdi + 6]
lea eax, [r10*8]
lea rax, [rax + rax*4]
sub rcx, rsi
setb dl
cmp rcx, rax
setb al
or al, dl
mov rdx, qword [rbp + 0xc38]
add rsi, r14
xor r11d, r11d
test al, al
cmove r11, rsi
jne 0x14005e377
mov r8d, dword [r14 + rdi + 0xc]
test r8, r8
je 0x14005d807
mov rax, rdx
sub rax, r8
jb 0x14005e377
mov r9d, dword [r14 + rdi + 0x10]
lea rcx, [r9 + r9]
lea rcx, [rcx + rcx*8]
cmp rax, rcx
jb 0x14005e377
add rcx, r8
mov rax, rdx
sub rax, rcx
cmp rax, 4
jb 0x14005e377
mov qword [rbp + 0xca0], r11
mov qword [rbp + 0xca8], r10
mov eax, dword [r14 + rcx]
mov qword [rbp + 0xc88], rcx
add rax, rcx
mov qword [rbp + 0xc78], rax
mov rax, qword [r14 + rdi + 0x30]
mov qword [rbp + 0xc98], rax
mov qword [rbp + 0x860], 0
mov qword [rbp + 0x868], 8
mov qword [rbp + 0x870], 0
mov qword [rbp + 0xc80], r9
test r9, r9
je 0x14005d948
mov r10, r8
add r10, r14
lea rax, [rbp + 0x868]
mov qword [rbp + 0xaa0], rax
mov eax, 8
xor ecx, ecx
mov qword [rbp + 0xcd8], rcx
xor edi, edi
mov r8, qword [rbp + 0xca8]
mov r9, qword [rbp + 0xca0]
mov r11, qword [rbp + 0xc80]
mov qword [rbp + 0xc70], r10
jmp 0x14005d8a8
test rcx, rcx
je 0x14005cb28
mov r15, r14
add r14, rbx
lea rcx, [rbp - 0x58]
mov r8d, 0x230
mov rdx, r14
call sub.msvcrt.dll_memcpy
lea rdx, [r15 + rbx]
add rdx, 0x230
sub rsi, rbx
add rsi, 0xfffffffffffffdd0
mov rcx, r14
mov r8, rsi
call sub.msvcrt.dll_memmove
lea rsi, [rdi - 1]
mov qword [0x1400a4070], rsi
cmp rsi, qword [0x1400a4060]
jne 0x14005caf2
call fcn.14001c430
mov r14, qword [0x1400a4068]
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 [0x1400a4070], rdi
sub r13, r12
mov qword [rbp + 0xcd8], r13
lea rdi, [r13 + 1]
mov rbx, qword [r14 + 0x1b8]
mov rdx, qword [r14 + 0x1c0]
xor ecx, ecx
test rdx, rdx
je 0x14005cb95
mov rax, rdx
mov r8, rdx
nop word cs:[rax + rax]
shr rax, 1
add rax, rcx
mov r9, rax
shl r9, 5
mov r9, qword [rbx + r9]
cmp r9, rdi
je 0x14005cb8f
lea r10, [rax + 1]
cmp r9, rdi
cmova r8, rax
cmovb rcx, r10
mov rax, r8
sub rax, rcx
ja 0x14005cb60
jmp 0x14005cb95
inc rax
mov rcx, rax
cmp rcx, rdx
ja 0x1400607dc
mov r15d, 3
test rcx, rcx
mov qword [rbp + 0xc78], r14
je 0x14005ceb7
lea rsi, [r14 + 0x1b0]
shl rcx, 5
lea r12, [rcx + rbx]
add r12, 0xffffffffffffffe0
neg rcx
xor eax, eax
mov rdx, qword [rbp + 0xcd8]
jmp 0x14005cbee
add r12, 0xffffffffffffffe0
add rcx, 0x20
je 0x14005ceb7
cmp qword [r12 + 0x18], rdx
jbe 0x14005cc39
cmp qword [r12 + 8], rdx
jbe 0x14005cbe0
cmp rdi, qword [r12]
jbe 0x14005cbe0
mov rcx, qword [r12 + 0x10]
mov rdx, qword [r14 + 0x1d0]
cmp rcx, rdx
jae 0x1400607e8
imul rax, rcx, 0x218
add rax, qword [r14 + 0x1c8]
mov qword [rbp + 0x868], rax
mov ecx, 0x10
xor r13d, r13d
mov rax, r12
jmp 0x14005cc41
mov ecx, 8
mov r13b, 1
mov qword [rbp + rcx + 0x860], rax
mov r14, qword [rbp + 0x868]
test r14, r14
je 0x14005ceb7
lea rcx, [rbp + 0x860]
mov rdx, r14
mov r15, qword [rbp + 0xcd8]
mov r8, r15
mov r9, rsi
call fcn.1400267f0
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 + 0x860]
call fcn.140028ab0
cmp byte [rbp + 0x58], 2
je 0x14005ceb3
lea rbx, [rbp - 0x28]
lea r14, [rbp + 0x1f0]
lea rdi, [rbp + 0x871]
lea r13, [rbp + 0x510]
lea r12, [rbp + 0x860]
lea rsi, [rbp + 0x800]
lea r15, [rbp - 0x58]
nop
movups xmm0, xmmword [rbp - 0x58]
movups xmm1, xmmword [rbp - 0x48]
movups xmm2, xmmword [rbp - 0x38]
movaps xmmword [rbp + 0xad0], xmm2
movaps xmmword [rbp + 0xac0], xmm1
movaps xmmword [rbp + 0xab0], xmm0
mov r8d, 0x88
lea rcx, [rbp + 0x1d8]
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0xab0]
lock dec qword [rax]
jne 0x14005cd5f
lea rcx, [rbp + 0xab0]
call fcn.14001bd70
mov rax, qword [rbp + 0x1d8]
mov rcx, qword [rbp + 0x1e8]
movzx edx, byte [rax + 0x200]
cmp edx, 0x4b
je 0x14005cda0
cmp edx, 0x4c
jne 0x14005cdd0
mov byte [rax + 0x200], 0x4b
mov qword [rax + 0x208], 0
jmp 0x14005cdc0
mov r8, qword [rax + 0x208]
test r8, r8
je 0x14005cdc0
mov rcx, qword [r8]
add rcx, 0x10
add r8, 8
mov dl, 2
mov rax, r8
jmp 0x14005cdc9
mov rcx, qword [rcx]
add rcx, 0x10
xor edx, edx
xor r8d, r8d
jmp 0x14005cdfe
mov rcx, qword [rax + 0x200]
movzx edx, byte [rax + 0x208]
mov r8d, dword [rax + 0x20c]
mov dword [rbp + 0x803], r8d
mov eax, dword [rax + 0x209]
mov dword [rbp + 0x800], eax
mov r8d, 1
mov qword [rbp + 0x860], r8
mov qword [rbp + 0x868], rcx
mov byte [rbp + 0x870], dl
mov ecx, dword [rbp + 0x800]
mov edx, dword [rbp + 0x803]
mov dword [rdi + 3], edx
mov dword [rdi], ecx
mov qword [rbp + 0x878], rax
mov rcx, r13
mov rdx, r14
mov r8, r12
call fcn.140026d10
mov qword [rbp + 0x540], 0
mov rax, qword [r14 + 0x68]
mov qword [rbp + 0x850], rax
movups xmm0, xmmword [r14 + 0x58]
movaps xmmword [rbp + 0x840], xmm0
movups xmm0, xmmword [r14 + 0x18]
movups xmm1, xmmword [r14 + 0x28]
movups xmm2, xmmword [r14 + 0x38]
movups xmm3, xmmword [r14 + 0x48]
movaps xmmword [rbp + 0x830], xmm3
movaps xmmword [rbp + 0x820], xmm2
movaps xmmword [rbp + 0x810], xmm1
movaps xmmword [rbp + 0x800], xmm0
mov rcx, r12
mov rdx, r13
mov r8, rsi
call fcn.140028ab0
mov r8d, 0xb8
mov rcx, r15
mov rdx, r12
call sub.msvcrt.dll_memcpy
cmp byte [rbp + 0x58], 2
jne 0x14005cd10
mov r15d, dword [rbp - 0x58]
mov rbx, qword [rbp + 0xc78]
add rbx, 8
cmp r15d, 5
je 0x14005d79b
mov rax, qword [rbp - 0x20]
mov qword [rbp + 0xc90], rax
mov rax, qword [rbp - 0x10]
mov qword [rbp + 0xcb8], rax
lea rax, [rax*8]
mov qword [rbp + 0xc68], rax
lea eax, [r15 - 3]
cmp eax, 2
mov ecx, 2
cmovb ecx, eax
test ecx, ecx
je 0x14005d007
mov qword [rbp + 0xc78], rbx
mov esi, dword [rbp - 0x54]
mov r11d, dword [rbp - 0x50]
mov ebx, dword [rbp - 0x4c]
mov r14, qword [rbp - 0x48]
mov r13, qword [rbp - 0x40]
mov rdx, qword [rbp - 0x38]
mov r8, qword [rbp - 0x30]
mov qword [rbp + 0xc10], r8
mov r8, qword [rbp - 0x28]
mov qword [rbp + 0xc30], r8
mov r8, qword [rbp - 0x18]
mov qword [rbp + 0xc58], r8
mov r8, qword [rbp - 8]
mov qword [rbp + 0xc88], r8
lea r8, [rdx + 0x60]
mov qword [rbp + 0xc40], r8
mov qword [rbp + 0xc98], rdx
add rdx, 0x1b8
mov qword [rbp + 0xc48], rdx
mov rdx, qword [rbp + 0xa98]
mov r8, qword [rdx]
mov qword [rbp + 0xc80], r8
mov rdx, qword [rdx + 8]
cmp ecx, 1
mov qword [rbp + 0xca0], rdx
jne 0x14005d00e
mov qword [rbp + 0xcd0], rsi
mov qword [rbp + 0xca8], rbx
mov rsi, rbx
shl rsi, 0x20
or rsi, r11
cmp eax, 2
jb 0x14005cfd2
cmp qword [rbp + 0xcb8], 0
je 0x14005cfd2
mov r8d, 8
mov rcx, qword [rbp + 0xc90]
mov rdx, qword [rbp + 0xc68]
call fcn.140003340
mov dword [rbp + 0xcc8], 2
mov eax, 3
mov qword [rbp + 0xc38], rax
mov rax, qword [rbp + 0xc98]
mov qword [rbp + 0xc60], rax
mov rbx, r14
mov r15, r14
mov r14, r13
mov r12, r13
jmp 0x14005d2c6
xor esi, esi
jmp 0x14005d76a
mov rax, qword [rbp + 0xc88]
cmp qword [rbp + 0xc58], rax
je 0x14005d088
mov qword [rbp + 0xc70], r11
mov qword [rbp + 0xca8], rbx
mov qword [rbp + 0xcd0], rsi
mov qword [rbp + 0xcc0], r13
mov rsi, qword [rax - 8]
mov r8d, dword [rsi + 0x28]
mov edx, dword [rsi + 0x2c]
xor ecx, ecx
mov qword [rbp + 0xc38], rcx
mov qword [rbp + 0xc60], r8
test r8d, r8d
setne bl
mov dword [rbp + 0xcc8], 0
mov r12, rdx
test edx, edx
setne dil
cmp qword [rsi], 0
je 0x14005d080
mov rcx, qword [rbp + 0xc40]
cmp dword [rcx], 0x2f
jne 0x14005d0b0
xor r10d, r10d
jmp 0x14005d21a
mov rcx, qword [rbp + 0xc30]
mov rax, qword [rcx + 0x28]
test rax, rax
je 0x14005d120
mov rdx, qword [rcx + 0x30]
mov rcx, qword [rbp + 0xc98]
movzx edi, word [rcx + 0x210]
jmp 0x14005d124
mov rax, qword [rsi + 8]
mov qword [rbp + 0xcb0], rax
mov rax, qword [rbp + 0xc98]
cmp qword [rax + 0x1b0], 0
jne 0x14005d1c3
lea rcx, [rbp + 0x860]
mov rdx, qword [rbp + 0xc40]
call fcn.140025660
mov r13, qword [rbp + 0xc98]
lea rcx, [rbp - 0x58]
lea r8, [rbp + 0x860]
mov rdx, r13
mov r9, qword [rbp + 0xc10]
call fcn.140028fe0
cmp qword [r13 + 0x1b0], 0
je 0x14005d1a2
lea rcx, [rbp - 0x58]
call fcn.14000e150
jmp 0x14005d1c3
mov di, 2
mov ecx, 3
mov qword [rbp + 0xc38], rcx
cmp qword [rbp + 0xcb8], 0
je 0x14005d187
mov r8d, 8
mov rcx, qword [rbp + 0xc90]
mov r12, rsi
mov rsi, rdx
mov rdx, qword [rbp + 0xc68]
mov qword [rbp + 0xc70], r11
mov word [rbp + 0xc60], di
mov rdi, rbx
mov rbx, rax
call fcn.140003340
mov rdx, rsi
mov rsi, r12
mov rax, rbx
mov rbx, rdi
movzx edi, word [rbp + 0xc60]
mov r11, qword [rbp + 0xc70]
mov r12, r13
mov r10, r14
mov r8d, ebx
mov ecx, r11d
mov dword [rbp + 0xcc8], r11d
mov r9d, esi
jmp 0x14005d28e
mov qword [r13 + 0x1b0], 1
movups xmm0, xmmword [rbp - 0x58]
movups xmm1, xmmword [rbp - 0x48]
mov rax, qword [rbp + 0xc48]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov rax, qword [rbp + 0xc48]
cmp qword [rax], 0
je 0x14005d1f0
mov rcx, qword [rbp + 0xcb0]
cmp rcx, qword [rax + 8]
jae 0x14005d210
mov rax, qword [rax]
lea rcx, [rcx + rcx*2]
mov r10, qword [rax + rcx*8 + 8]
mov r11, qword [rax + rcx*8 + 0x10]
jmp 0x14005d213
mov rax, qword [rbp + 0xc98]
cmp byte [rax + 0x1c0], 0x4b
jne 0x14005d7ee
mov rax, qword [rax + 0x1c8]
test rax, rax
jne 0x14005d1d0
xor r10d, r10d
mov rax, qword [rbp + 0xc88]
add rax, 0xfffffffffffffff8
mov qword [rbp + 0xc88], rax
mov rax, qword [rbp + 0xc38]
mov al, bl
mov qword [rbp + 0xc38], rax
mov eax, dword [rbp + 0xcc8]
mov al, dil
mov dword [rbp + 0xcc8], eax
mov rax, qword [rsi + 0x18]
test rax, rax
je 0x14005d261
mov rdx, qword [rsi + 0x20]
mov rcx, qword [rbp + 0xc98]
movzx edi, word [rcx + 0x210]
jmp 0x14005d265
mov di, 2
mov r8, r12
mov r9, qword [rbp + 0xc60]
mov r12, r11
mov r13, qword [rbp + 0xcc0]
mov rsi, qword [rbp + 0xcd0]
mov rbx, qword [rbp + 0xca8]
mov r11, qword [rbp + 0xc70]
mov ecx, r15d
shl rsi, 0x20
or rsi, rcx
shl rbx, 0x20
or rbx, r11
mov qword [rbp + 0xc60], r13
mov ecx, r9d
mov qword [rbp + 0xcd0], rcx
mov r13, r8
mov qword [rbp + 0xca8], r8
cmp di, 2
mov rdi, r9
mov r15, r10
jne 0x14005d2e7
mov rcx, qword [rbp + 0xc78]
mov rdx, qword [rbp + 0xcd8]
call fcn.140060e00
mov rdi, qword [rbp + 0xcd0]
mov r13, qword [rbp + 0xca8]
mov qword [rbp + 0x860], rsi
mov qword [rbp + 0x868], rbx
mov qword [rbp + 0x870], r14
mov rcx, qword [rbp + 0xc60]
mov qword [rbp + 0x878], rcx
mov rcx, qword [rbp + 0xcd8]
mov qword [rbp + 0x880], rcx
mov qword [rbp + 0x888], rax
mov qword [rbp + 0x890], rdx
mov rax, qword [rbp + 0xca0]
mov rax, qword [rax + 0x20]
lea rdx, [rbp + 0x860]
mov rcx, qword [rbp + 0xc80]
mov qword [rbp + 0xc70], rax
call rax
nop dword [rax + rax]
mov rax, qword [rbp + 0xc38]
add eax, 0xfffffffd
cmp eax, 2
mov ecx, 2
cmovb ecx, eax
cmp ecx, 1
mov qword [rbp + 0xc60], rdi
je 0x14005d3f0
cmp ecx, 2
jne 0x14005d760
mov rax, qword [rbp + 0xc88]
cmp qword [rbp + 0xc58], rax
je 0x14005d45b
mov qword [rbp + 0xcb0], r12
mov qword [rbp + 0xcc0], r15
mov r15, qword [rax - 8]
mov edx, dword [r15 + 0x28]
mov ecx, dword [r15 + 0x2c]
mov dword [rbp + 0xca0], 0
mov dword [rbp + 0xc50], edx
test edx, edx
setne r14b
xor edi, edi
mov esi, ecx
test ecx, ecx
setne r12b
cmp qword [r15], 0
je 0x14005d3de
mov rcx, qword [rbp + 0xc40]
cmp dword [rcx], 0x2f
jne 0x14005d4e9
xor ecx, ecx
mov qword [rbp + 0xcd0], rcx
jmp 0x14005d633
cmp eax, 2
jb 0x14005d418
cmp qword [rbp + 0xcb8], 0
je 0x14005d418
mov r8d, 8
mov rcx, qword [rbp + 0xc90]
mov rdx, qword [rbp + 0xc68]
call fcn.140003340
mov eax, dword [rbp + 0xcc8]
mov rdi, r13
shl r13, 0x20
or r13, rax
mov dword [rbp + 0xcc8], 2
mov eax, 3
mov qword [rbp + 0xc38], rax
mov rsi, qword [rbp + 0xc98]
mov rbx, r15
mov qword [rbp + 0xcd0], r15
mov qword [rbp + 0xca8], r12
jmp 0x14005d6de
mov rbx, r15
mov rax, qword [rbp + 0xc30]
mov r14, qword [rax + 0x28]
test r14, r14
je 0x14005d546
mov r15, qword [rax + 0x30]
mov rax, qword [rbp + 0xc98]
movzx r11d, word [rax + 0x210]
mov edi, dword [rbp + 0xcc8]
mov dword [rbp + 0xca0], 3
cmp qword [rbp + 0xcb8], 0
je 0x14005d4be
mov r8d, 8
mov rcx, qword [rbp + 0xc90]
mov rdx, qword [rbp + 0xc68]
mov esi, r11d
call fcn.140003340
mov r11d, esi
mov qword [rbp + 0xca8], r12
mov r8, rbx
mov rax, rbx
mov qword [rbp + 0xcd0], rbx
mov rbx, r13
mov r9d, ebx
mov ecx, edi
mov r13, qword [rbp + 0xc60]
mov r10d, r13d
jmp 0x14005d69b
mov rax, qword [r15 + 8]
mov qword [rbp + 0xcd0], rax
mov rax, qword [rbp + 0xc98]
cmp qword [rax + 0x1b0], 0
lea rax, [rbp + 0x860]
je 0x14005d56e
mov rax, qword [rbp + 0xc48]
cmp qword [rax], 0
jne 0x14005d5f5
mov rax, qword [rbp + 0xc98]
cmp byte [rax + 0x1c0], 0x4b
jne 0x14005d7e9
mov rax, qword [rax + 0x1c8]
test rax, rax
jne 0x14005d5f5
jmp 0x14005d623
mov r11w, 2
mov edi, dword [rbp + 0xcc8]
mov dword [rbp + 0xca0], 3
cmp qword [rbp + 0xcb8], 0
jne 0x14005d49f
jmp 0x14005d4be
mov rcx, rax
mov rdx, qword [rbp + 0xc40]
call fcn.140025660
mov rbx, qword [rbp + 0xc98]
lea rcx, [rbp - 0x58]
mov rdx, rbx
lea r8, [rbp + 0x860]
mov r9, qword [rbp + 0xc10]
call fcn.140028fe0
cmp qword [rbx + 0x1b0], 0
je 0x14005d5c3
lea rcx, [rbp - 0x58]
call fcn.14000e150
mov rax, qword [rbp + 0xc48]
cmp qword [rax], 0
jne 0x14005d5f5
jmp 0x14005d51d
mov qword [rbx + 0x1b0], 1
movups xmm0, xmmword [rbp - 0x58]
movups xmm1, xmmword [rbp - 0x48]
mov rax, qword [rbp + 0xc48]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov rax, qword [rbp + 0xc48]
cmp qword [rax], 0
je 0x14005d51d
mov rcx, qword [rbp + 0xcd0]
cmp rcx, qword [rax + 8]
jae 0x14005d623
mov rax, qword [rax]
lea rcx, [rcx + rcx*2]
mov rdx, qword [rax + rcx*8 + 8]
mov qword [rbp + 0xcd0], rdx
mov rax, qword [rax + rcx*8 + 0x10]
mov qword [rbp + 0xca8], rax
jmp 0x14005d62c
xor eax, eax
mov qword [rbp + 0xcd0], rax
mov rax, qword [rbp + 0xc88]
add rax, 0xfffffffffffffff8
mov qword [rbp + 0xc88], rax
mov eax, dword [rbp + 0xca0]
mov al, r14b
mov dword [rbp + 0xca0], eax
mov dil, r12b
mov r14, qword [r15 + 0x18]
test r14, r14
je 0x14005d66e
mov r15, qword [r15 + 0x20]
mov rax, qword [rbp + 0xc98]
movzx r11d, word [rax + 0x210]
jmp 0x14005d673
mov r11w, 2
mov ecx, dword [rbp + 0xcc8]
mov rbx, r13
mov r13, qword [rbp + 0xc60]
mov r8, qword [rbp + 0xcc0]
mov r12, qword [rbp + 0xcb0]
mov r9d, esi
mov r10d, dword [rbp + 0xc50]
mov eax, dword [rbp + 0xc38]
shl r13, 0x20
or r13, rax
mov eax, ecx
shl rbx, 0x20
or rbx, rax
mov rsi, r12
mov r12, r8
mov eax, dword [rbp + 0xca0]
mov qword [rbp + 0xc38], rax
mov eax, r10d
mov qword [rbp + 0xc60], rax
mov dword [rbp + 0xcc8], edi
mov edi, r9d
cmp r11w, 2
jne 0x14005d6f7
mov rcx, qword [rbp + 0xc78]
mov rdx, qword [rbp + 0xcd8]
call fcn.140060e00
mov r14, rax
mov r15, rdx
mov qword [rbp + 0x860], r13
mov qword [rbp + 0x868], rbx
mov qword [rbp + 0x870], r12
mov qword [rbp + 0x878], rsi
mov rax, qword [rbp + 0xcd8]
mov qword [rbp + 0x880], rax
mov qword [rbp + 0x888], r14
mov qword [rbp + 0x890], r15
mov rcx, qword [rbp + 0xc80]
lea rdx, [rbp + 0x860]
call qword [rbp + 0xc70]
mov r12, qword [rbp + 0xca8]
mov r15, qword [rbp + 0xcd0]
mov r13, rdi
mov rdi, qword [rbp + 0xc60]
jmp 0x14005d350
mov sil, 1
mov rbx, qword [rbp + 0xc78]
cmp eax, 2
jb 0x14005d792
cmp qword [rbp + 0xcb8], 0
je 0x14005d792
mov r8d, 8
mov rcx, qword [rbp + 0xc90]
mov rdx, qword [rbp + 0xc68]
call fcn.140003340
test sil, sil
jne 0x14005e397
mov rcx, rbx
mov rdx, qword [rbp + 0xcd8]
call fcn.140060e00
test rax, rax
je 0x14005e397
mov r8, qword [rbp + 0xa98]
mov rcx, qword [r8]
mov r8, qword [r8 + 8]
mov dword [rbp + 0x860], 3
mov qword [rbp + 0x868], rax
mov qword [rbp + 0x870], rdx
lea rdx, [rbp + 0x860]
call qword [r8 + 0x20]
jmp 0x14005e397
mov sil, 1
jmp 0x14005d7f0
xor esi, esi
cmp qword [rbp + 0xcb8], 0
mov rbx, qword [rbp + 0xc78]
jne 0x14005d779
jmp 0x14005d792
mov qword [rbp + 0x860], 0
mov qword [rbp + 0x868], 8
mov qword [rbp + 0x870], 0
xor eax, eax
xor esi, esi
xor edi, edi
jmp 0x14005d967
mov rax, qword [rbp + 0x868]
add rsi, qword [rbp + 0xc98]
add rbx, rsi
mov rdx, qword [rbp + 0xcd8]
mov rcx, rdx
shl rcx, 4
mov qword [rax + rcx], rbx
mov r8, qword [rbp + 0xcd0]
mov qword [rax + rcx + 8], r8
inc rdx
mov rcx, rdx
mov qword [rbp + 0xcd8], rdx
mov qword [rbp + 0x870], rdx
mov r8, qword [rbp + 0xca8]
mov r9, qword [rbp + 0xca0]
mov r10, qword [rbp + 0xc70]
mov r11, qword [rbp + 0xc80]
mov rsi, qword [rbp + 0xcc8]
add rdi, rsi
inc rdi
cmp rdi, r11
jae 0x14005d93a
lea rcx, [rdi + rdi*8]
movzx esi, byte [r10 + rcx*2 + 0x11]
movzx edx, word [r10 + rcx*2 + 0xe]
and edx, 0x30
cmp dx, 0x20
jne 0x14005d899
lea rbx, [r10 + rcx*2]
movzx edx, word [rbx + 0xc]
cmp edx, 0xfeff
movsx ecx, dx
cmovb ecx, edx
test ecx, ecx
jle 0x14005d899
mov qword [rbp + 0xcc8], rsi
mov edx, ecx
dec rdx
lea rcx, [rdx + rdx*4]
lea rcx, [r9 + rcx*8]
cmp rdx, r8
mov edx, 0x1d
cmovae rcx, rdx
jae 0x14005e1d8
test rcx, rcx
je 0x14005e1d8
mov qword [rbp + 0xcd0], rbx
mov esi, dword [rbx + 8]
mov ebx, dword [rcx + 0xc]
mov rcx, qword [rbp + 0xcd8]
cmp rcx, qword [rbp + 0x860]
jne 0x14005d83a
lea rcx, [rbp + 0x860]
call fcn.14001c380
jmp 0x14005d833
cmp qword [rbp + 0xcd8], 2
jae 0x14005e152
mov rax, r14
mov r10, qword [rbp + 0xca8]
mov r11, qword [rbp + 0xca0]
mov rsi, qword [rbp + 0xc88]
mov rdi, qword [rbp + 0xc78]
movabs r9, 0x8000000000000000
mov rcx, qword [rbp + 0x860]
mov rdx, qword [rbp + 0x868]
mov qword [rbp + 0x510], rdx
mov rdx, qword [rbp + 0x870]
mov qword [rbp + 0x518], rdx
cmp rcx, r9
mov rdx, qword [rbp + 0xc38]
je 0x14005e377
mov r8, rdx
lea rdx, [rbp + 0xab8]
mov qword [rbp + 0xaa0], rdx
mov rdx, qword [rbp + 0x510]
mov qword [rbp + 0xab8], rdx
mov rdx, qword [rbp + 0x518]
mov qword [rbp + 0xac0], rdx
mov qword [rbp + 0xab0], rcx
mov qword [rbp + 0xac8], r14
mov qword [rbp + 0xad0], r8
mov qword [rbp + 0xad8], r11
mov qword [rbp + 0xae0], r10
mov qword [rbp + 0xae8], rax
mov qword [rbp + 0xaf0], r8
mov qword [rbp + 0xaf8], rsi
mov qword [rbp + 0xb00], rdi
mov qword [rbp + 0x800], r9
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_types
lea rcx, [rbp + 0xab0]
mov r8d, 0xd
call fcn.140060c80
mov qword [rbp + 0xcd8], rdx
test rax, rax
mov ecx, 1
mov rdx, rax
mov r8d, 1
mov qword [rbp + 0xcd0], r8
cmove rdx, rcx
mov qword [rbp + 0xc68], rdx
mov rcx, qword [rbp + 0xcd8]
cmove rcx, rax
mov qword [rbp + 0xcd8], rcx
lea rdx, [0x14022cafd]
lea rcx, [rbp + 0xab0]
mov r8d, 0xb
call fcn.140060c80
mov qword [rbp + 0xcc8], rdx
test rax, rax
mov rcx, qword [rbp + 0xcd0]
cmovne rcx, rax
mov qword [rbp + 0xcd0], rcx
mov rcx, qword [rbp + 0xcc8]
cmove rcx, rax
mov qword [rbp + 0xcc8], rcx
lea rdx, [0x14022cb08]
lea rcx, [rbp + 0xab0]
mov r8d, 0xe
call fcn.140060c80
mov qword [rbp + 0xca8], rdx
test rax, rax
mov ecx, 1
mov rdx, rax
mov r8d, 1
mov qword [rbp + 0xc80], r8
cmove rdx, rcx
mov qword [rbp + 0xc40], rdx
mov rcx, qword [rbp + 0xca8]
cmove rcx, rax
mov qword [rbp + 0xca8], rcx
lea rdx, [0x14022cb25]
lea rcx, [rbp + 0xab0]
mov r8d, 0xb
call fcn.140060c80
mov qword [rbp + 0xca0], rdx
test rax, rax
mov rcx, qword [rbp + 0xc80]
cmovne rcx, rax
mov qword [rbp + 0xc80], rcx
mov rcx, qword [rbp + 0xca0]
cmove rcx, rax
mov qword [rbp + 0xca0], rcx
lea rdx, [0x14022cb30]
lea rcx, [rbp + 0xab0]
mov r8d, 0xb
call fcn.140060c80
mov qword [rbp + 0xc98], rdx
test rax, rax
mov ecx, 1
mov rdx, rax
mov r8d, 1
mov qword [rbp + 0xc88], r8
cmove rdx, rcx
mov qword [rbp + 0xc30], rdx
mov rcx, qword [rbp + 0xc98]
cmove rcx, rax
mov qword [rbp + 0xc98], rcx
lea rdx, [0x14022cb3b]
lea rcx, [rbp + 0xab0]
mov r8d, 0xf
call fcn.140060c80
mov qword [rbp + 0xc70], rdx
test rax, rax
mov rcx, qword [rbp + 0xc88]
cmovne rcx, rax
mov qword [rbp + 0xc88], rcx
mov rcx, qword [rbp + 0xc70]
cmove rcx, rax
mov qword [rbp + 0xc70], rcx
lea rdx, [0x14022cb7f]
lea rcx, [rbp + 0xab0]
mov r8d, 0xa
call fcn.140060c80
mov qword [rbp + 0xc78], rdx
test rax, rax
mov ecx, 1
mov rdx, rax
mov r8d, 1
mov qword [rbp + 0xcb0], r8
cmove rdx, rcx
mov qword [rbp + 0xc48], rdx
mov rcx, qword [rbp + 0xc78]
cmove rcx, rax
mov qword [rbp + 0xc78], rcx
lea rdx, [0x14022cb89]
lea rcx, [rbp + 0xab0]
mov r8d, 0x12
call fcn.140060c80
mov qword [rbp + 0xcc0], rdx
test rax, rax
mov rcx, qword [rbp + 0xcb0]
cmovne rcx, rax
mov qword [rbp + 0xcb0], rcx
mov rcx, qword [rbp + 0xcc0]
cmove rcx, rax
mov qword [rbp + 0xcc0], rcx
lea rdx, [0x14022cbaa]
lea rcx, [rbp + 0xab0]
mov r8d, 0xc
call fcn.140060c80
mov qword [rbp + 0xc50], rdx
test rax, rax
mov ecx, 1
mov rdx, rax
mov r8d, 1
mov qword [rbp + 0xc58], r8
cmove rdx, rcx
mov qword [rbp + 0xc10], rdx
mov rcx, qword [rbp + 0xc50]
cmove rcx, rax
mov qword [rbp + 0xc50], rcx
lea rdx, [0x14022cb4a]
lea rcx, [rbp + 0xab0]
mov r8d, 0xa
call fcn.140060c80
mov qword [rbp + 0xcb8], rdx
test rax, rax
mov rcx, qword [rbp + 0xc58]
cmovne rcx, rax
mov qword [rbp + 0xc58], rcx
mov rcx, qword [rbp + 0xcb8]
cmove rcx, rax
mov qword [rbp + 0xcb8], rcx
lea rdx, [0x14022cb54]
lea rcx, [rbp + 0xab0]
mov r8d, 0xf
call fcn.140060c80
mov qword [rbp + 0xc90], rdx
test rax, rax
mov edi, 1
cmovne rdi, rax
mov rcx, qword [rbp + 0xc90]
cmove rcx, rax
mov qword [rbp + 0xc90], rcx
lea rdx, [0x14022cb63]
lea rcx, [rbp + 0xab0]
mov r8d, 0xd
call fcn.140060c80
mov rsi, rax
mov rbx, rdx
lea rdx, [0x14022cb70]
lea rcx, [rbp + 0xab0]
mov r8d, 0xf
call fcn.140060c80
test rsi, rsi
cmove rbx, rsi
mov ecx, 1
cmove rsi, rcx
test rax, rax
cmovne rcx, rax
cmove rdx, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x940], xmm0
mov rax, qword [rbp + 0xc68]
mov qword [rbp + 0x870], rax
mov rax, qword [rbp + 0xcd8]
mov qword [rbp + 0x878], rax
mov rax, qword [rbp + 0xcd0]
mov qword [rbp + 0x880], rax
mov rax, qword [rbp + 0xcc8]
mov qword [rbp + 0x888], rax
mov rax, qword [rbp + 0xc40]
mov qword [rbp + 0x890], rax
mov rax, qword [rbp + 0xca8]
mov qword [rbp + 0x898], rax
mov rax, qword [rbp + 0xc80]
mov qword [rbp + 0x8a0], rax
mov rax, qword [rbp + 0xca0]
mov qword [rbp + 0x8a8], rax
mov rax, qword [rbp + 0xc30]
mov qword [rbp + 0x8b0], rax
mov rax, qword [rbp + 0xc98]
mov qword [rbp + 0x8b8], rax
mov rax, qword [rbp + 0xc88]
mov qword [rbp + 0x8c0], rax
mov rax, qword [rbp + 0xc70]
mov qword [rbp + 0x8c8], rax
mov rax, qword [rbp + 0xc48]
mov qword [rbp + 0x8d0], rax
mov rax, qword [rbp + 0xc78]
mov qword [rbp + 0x8d8], rax
mov rax, qword [rbp + 0xcb0]
mov qword [rbp + 0x8e0], rax
mov rax, qword [rbp + 0xcc0]
mov qword [rbp + 0x8e8], rax
mov rax, qword [rbp + 0xc10]
mov qword [rbp + 0x8f0], rax
mov rax, qword [rbp + 0xc50]
mov qword [rbp + 0x8f8], rax
mov rax, qword [rbp + 0xc58]
mov qword [rbp + 0x900], rax
mov rax, qword [rbp + 0xcb8]
mov qword [rbp + 0x908], rax
mov qword [rbp + 0x910], rdi
mov rax, qword [rbp + 0xc90]
mov qword [rbp + 0x918], rax
mov qword [rbp + 0x920], rsi
mov qword [rbp + 0x928], rbx
mov qword [rbp + 0x930], rcx
mov qword [rbp + 0x938], rdx
mov qword [rbp + 0x958], 0
mov byte [rbp + 0x960], 0
mov qword [rbp + 0x860], 1
mov qword [rbp + 0x868], 1
mov rax, qword [0x14024eac8]
movzx eax, byte [rax]
mov ecx, 0x108
mov edx, 8
call fcn.140003330
test rax, rax
je 0x1400607f4
mov rbx, rax
lea rdx, [rbp + 0x860]
mov r8d, 0x108
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov qword [rbp + 0xba8], rbx
mov qword [rbp + 0xb88], 0
mov qword [rbp + 0xb90], 8
mov qword [rbp + 0xb98], 0
mov rax, qword [rbx + 0x30]
mov rcx, qword [rbx + 0x38]
mov qword [rbp + 0xc80], rax
mov qword [rbp + 0x7e8], rax
mov qword [rbp + 0x7f0], rcx
mov qword [rbp + 0x7f8], 0
mov qword [rbp + 0xca0], rcx
test rcx, rcx
mov qword [rbp + 0xca8], rbx
je 0x14005e203
mov eax, 8
mov qword [rbp + 0xcd0], rax
xor eax, eax
mov qword [rbp + 0xcd8], rax
xor esi, esi
xor eax, eax
mov qword [rbp + 0xcc8], rax
mov rdi, qword [rbp + 0xca0]
jmp 0x14005e03f
mov rax, qword [rbp + 0xb90]
mov qword [rbp + 0xcd0], rax
mov rax, qword [rbp + 0xcd8]
mov rcx, qword [rbp + 0xcd0]
mov qword [rcx + rax], rdi
mov qword [rcx + rax + 8], rbx
inc rsi
mov qword [rbp + 0xb98], rsi
mov rdi, qword [rbp + 0x7f0]
add rax, 0x10
mov qword [rbp + 0xcd8], rax
test rdi, rdi
je 0x14005e0b4
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0x7e8]
mov r8, qword [rbp + 0xcc8]
call fcn.140023fc0
cmp byte [rbp + 0x889], 3
je 0x14005e2f0
sub rdi, qword [rbp + 0x7f0]
mov rbx, qword [rbp + 0x870]
mov rax, rdi
add rax, qword [rbp + 0x7f8]
mov rdi, qword [rbp + 0x880]
mov rcx, rax
mov qword [rbp + 0xcc8], rax
mov qword [rbp + 0x7f8], rax
cmp rsi, qword [rbp + 0xb88]
jne 0x14005e007
lea rcx, [rbp + 0xb88]
call fcn.14001c380
jmp 0x14005dff9
cmp rsi, 2
mov rbx, qword [rbp + 0xca8]
jb 0x14005e203
mov rcx, qword [rbp + 0xb90]
cmp rsi, 0x15
jae 0x14005e1f4
add qword [rbp + 0xcd8], rcx
lea r8, [rcx + 0x10]
mov eax, 0x10
mov r9, rcx
mov rbx, qword [rbp + 0xca8]
jmp 0x14005e11b
mov r10, rcx
mov qword [r10], r8
mov qword [r10 + 8], r9
mov rbx, qword [rbp + 0xca8]
lea r8, [rdx + 0x10]
add rax, 0x10
mov r9, rdx
cmp qword [rbp + 0xcd8], r8
je 0x14005e203
mov rdx, r8
mov r8, qword [r9 + 0x10]
cmp r8, qword [r9]
jae 0x14005e103
mov r9, qword [r9 + 0x18]
mov r11, rax
movups xmm0, xmmword [rcx + r11 - 0x10]
movups xmmword [rcx + r11], xmm0
cmp r11, 0x10
je 0x14005e0f2
lea r10, [r11 - 0x10]
cmp r8, qword [rcx + r11 - 0x20]
mov r11, r10
jb 0x14005e12e
add r10, rcx
jmp 0x14005e0f5
mov rcx, qword [rbp + 0x868]
cmp qword [rbp + 0xcd8], 0x15
jae 0x14005f7d9
mov rsi, qword [rbp + 0xcd8]
shl rsi, 4
add rsi, rcx
lea r8, [rcx + 0x10]
mov eax, 0x10
mov r9, rcx
jmp 0x14005e1a1
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 0x14005d948
mov rdx, r8
mov r8, qword [r9 + 0x10]
cmp r8, qword [r9]
jae 0x14005e18d
mov r9, qword [r9 + 0x18]
mov r11, rax
movups xmm0, xmmword [rcx + r11 - 0x10]
movups xmmword [rcx + r11], xmm0
cmp r11, 0x10
je 0x14005e183
lea r10, [r11 - 0x10]
cmp r8, qword [rcx + r11 - 0x20]
mov r11, r10
jb 0x14005e1b4
add r10, rcx
jmp 0x14005e186
mov rdx, qword [rbp + 0x860]
test rdx, rdx
je 0x14005e377
mov rcx, qword [rbp + 0x868]
jmp 0x14005e368
mov rdx, rsi
call fcn.14000f320
mov rbx, qword [rbp + 0xca8]
mov qword [rbp + 0xc18], 0
mov qword [rbp + 0xc20], 8
mov qword [rbp + 0xc28], 0
mov qword [rbp + 0xbe0], 0
mov qword [rbp + 0xbe8], 8
mov qword [rbp + 0xbf0], 0
movups xmm0, xmmword [rbx + 0x40]
movups xmmword [rbp + 0xb10], xmm0
mov qword [rbp + 0xb20], 0
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0xb10]
call fcn.140020410
mov rax, qword [rbp + 0x860]
cmp rax, 3
jne 0x14005e3b2
mov rsi, qword [rbp + 0xbe8]
mov rdi, qword [rbp + 0xbf0]
inc rdi
mov rcx, rsi
cmp rdi, 1
je 0x14005e2ad
lea r15, [rcx + 0x218]
dec rdi
call fcn.14000be60
mov rcx, r15
jmp 0x14005e293
mov rax, qword [rbp + 0xbe0]
test rax, rax
je 0x14005e2ce
imul rdx, rax, 0x218
mov r8d, 8
mov rcx, rsi
call fcn.140003340
mov rdx, qword [rbp + 0xc18]
test rdx, rdx
je 0x14005e2f0
mov rcx, qword [rbp + 0xc20]
shl rdx, 5
mov r8d, 8
call fcn.140003340
mov rdx, qword [rbp + 0xb88]
test rdx, rdx
je 0x14005e312
mov rcx, qword [rbp + 0xb90]
shl rdx, 4
mov r8d, 8
call fcn.140003340
mov rax, qword [rbp + 0xba8]
lock dec qword [rax]
jne 0x14005e32b
lea rcx, [rbp + 0xba8]
call fcn.14001bd70
mov rdx, qword [rbp + 0x800]
lea rax, [rdx*2]
test rax, rax
je 0x14005e355
mov rcx, qword [rbp + 0x808]
shl rdx, 4
mov r8d, 8
call fcn.140003340
mov rdx, qword [rbp + 0xab0]
test rdx, rdx
je 0x14005e377
mov rcx, qword [rbp + 0xab8]
shl rdx, 4
mov r8d, 8
call fcn.140003340
lea rcx, [rbp + 0x738]
call fcn.14000dcb0
mov rcx, r14
call sub.kernel32.dll_UnmapViewOfFile
mov rcx, qword [rbp + 0xc60]
call fcn.1400a1bd4
movaps xmm6, xmmword [rbp + 0xce0]
add rsp, 0xd78
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rcx, rbx
add rcx, 0x10
mov qword [rbp + 0xcd8], rcx
lea rdi, [rbp + 0x878]
lea rcx, [rbp + 0x520]
mov rdx, qword [rbx + 0xd0]
mov qword [rbp + 0xc88], rdx
mov rdx, qword [rbx + 0xd8]
mov qword [rbp + 0xc98], rdx
movzx edx, byte [rbx + 0x100]
mov byte [rbp + 0xc78], dl
mov rdx, qword [rbx + 0x20]
mov qword [rbp + 0xc70], rdx
mov rdx, qword [rbx + 0x28]
mov qword [rbp + 0xcd0], rdx
mov rbx, rcx
jmp 0x14005e444
lea rdi, [rbp + 0x878]
lea rbx, [rbp + 0x520]
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0xb10]
call fcn.140020410
mov rax, qword [rbp + 0x860]
cmp rax, 3
je 0x14005e27f
mov rsi, qword [rbp + 0x868]
mov rcx, qword [rbp + 0x870]
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
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movaps xmmword [rbp + 0x7c0], xmm0
movaps xmmword [rbp + 0x7d0], xmm1
mov rdx, qword [rbx + 0x20]
mov qword [rbp + 0x7e0], rdx
cmp rax, 2
je 0x14005f700
test rax, rax
jne 0x14005e420
mov rax, rcx
or rax, 4
cmp rax, 5
je 0x14005e420
mov rax, qword [rbp + 0xbf0]
mov qword [rbp + 0xcc8], rax
mov qword [rbp + 0xb30], 0
mov qword [rbp + 0xb38], rsi
mov qword [rbp + 0xb40], rcx
movaps xmm0, xmmword [rbp + 0x410]
lea rcx, [rbp + 0xb48]
movups xmmword [rcx], xmm0
mov rax, qword [rbp + 0x7e0]
mov qword [rcx + 0x30], rax
movaps xmm0, xmmword [rbp + 0x7c0]
movaps xmm1, xmmword [rbp + 0x7d0]
movups xmmword [rcx + 0x20], xmm1
movups xmmword [rcx + 0x10], xmm0
lea rcx, [rbp + 0x860]
mov rdx, qword [rbp + 0xcd8]
lea r8, [rbp + 0xb30]
call fcn.140020a10
cmp dword [rbp + 0x860], 2
je 0x14005e412
mov r8d, 0x1a8
lea rdi, [rbp + 0x510]
mov rcx, rdi
lea rdx, [rbp + 0x860]
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 + 0xb30], r8
mov qword [rbp + 0xb38], r9
mov qword [rbp + 0xb40], rdi
mov qword [rbp + 0xb48], rax
mov qword [rbp + 0xb50], 0
test r9, r9
je case.0x14005f48b.3
mov r10d, 1
sub r10, r9
lea r11, [r8 + 1]
xor eax, eax
xor ecx, ecx
movzx ebx, byte [r11 - 1]
cmp ecx, 0x3f
jne 0x14005e5d1
cmp bl, 2
jae 0x14005f809
movzx edi, bl
mov ebx, edi
and ebx, 0x7f
shl rbx, cl
or rax, rbx
test dil, dil
jns 0x14005e5f8
add ecx, 7
inc r10
inc r11
cmp r10, 1
jne 0x14005e5be
jmp 0x14005f81c
mov qword [rbp + 0xb30], r11
neg r10
mov qword [rbp + 0xb38], r10
test rax, rax
jne 0x14005e6c6
lock dec qword [rdx]
jne 0x14005e624
lea rcx, [rbp + 0x668]
call fcn.14001bc60
cmp dword [rbp + 0x570], 0x2f
je 0x14005e412
mov rdx, qword [rbp + 0x5b0]
test rdx, rdx
je 0x14005e653
mov rcx, qword [rbp + 0x5b8]
shl rdx, 2
mov r8d, 2
call fcn.140003340
mov rax, qword [rbp + 0x5c8]
test rax, rax
je 0x14005e679
mov rcx, qword [rbp + 0x5d0]
shl rax, 3
lea rdx, [rax + rax*2]
mov r8d, 8
call fcn.140003340
mov rdx, qword [rbp + 0x5e0]
test rdx, rdx
je 0x14005e69b
mov rcx, qword [rbp + 0x5e8]
shl rdx, 2
mov r8d, 2
call fcn.140003340
mov rdx, qword [rbp + 0x5f8]
test rdx, rdx
je 0x14005e412
mov rcx, qword [rbp + 0x600]
shl rdx, 6
mov r8d, 8
call fcn.140003340
jmp 0x14005e412
lea rcx, [rax - 1]
cmp rcx, qword [rdx + 0x20]
jae 0x14005e6da
imul rcx, rcx, 0x70
add rcx, qword [rdx + 0x18]
jmp 0x14005e755
mov rcx, qword [rdx + 0x28]
test rcx, rcx
je case.0x14005f48b.3
mov rdx, qword [rdx + 0x30]
movzx r10d, word [rcx + 0x532]
imul r11, r10, 0x70
mov r8, 0xffffffffffffffff
xor r9d, r9d
mov rdi, r11
add rdi, r9
je 0x14005e737
xor edi, edi
cmp qword [rcx + r8*8 + 0x4e0], rax
setne dil
mov ebx, 0xff
cmova edi, ebx
inc r8
add r9, 0xffffffffffffff90
cmp dil, 1
je 0x14005e701
movzx r10d, dil
test r10d, r10d
jne 0x14005e73a
jmp 0x14005e74e
mov r8, r10
sub rdx, 1
jb case.0x14005f48b.3
mov rcx, qword [rcx + r8*8 + 0x538]
jmp 0x14005e6eb
sub rcx, r9
add rcx, 0xffffffffffffff90
cmp byte [rcx + 0x6a], 1
jne 0x14005e766
mov qword [rbp + 0xb50], 1
call fcn.14006bec0
mov qword [rbp + 0xcb0], rax
mov qword [rbp + 0xcc0], rdx
cmp qword [rbp + 0xcc0], 0
je 0x14005ed2f
mov ebx, dword [rbp + 0x558]
mov rcx, qword [rbp + 0x6b0]
mov rax, qword [rbp + 0xc98]
sub rax, rcx
mov qword [rbp + 0x7a8], rax
mov eax, ebx
and eax, 0xff00
mov dword [rbp + 0xb0c], eax
mov eax, ebx
shr eax, 0x10
xor edi, edi
mov dword [rbp + 0xba4], eax
cmp ax, 5
mov edx, 0
cmovb rdx, rcx
mov rax, qword [rbp + 0xc88]
mov qword [rbp + 0xc10], rcx
add rax, rcx
mov qword [rbp + 0xaa8], rax
cmp byte [rbp + 0xc78], 0
cmove rdx, rdi
mov qword [rbp + 0x7a0], rdx
movzx eax, bh
mov qword [rbp + 0x7b0], rax
mov rcx, qword [rbp + 0x6a0]
mov rax, qword [rbp + 0xcd0]
sub rax, rcx
mov qword [rbp + 0xc30], rax
mov rax, qword [rbp + 0xc70]
mov qword [rbp + 0xc48], rcx
add rax, rcx
mov qword [rbp + 0xc00], rax
movzx eax, bl
mov qword [rbp + 0xc58], rax
shl qword [rbp + 0xcc0], 4
xor eax, eax
mov qword [rbp + 0xc50], rax
xor eax, eax
mov qword [rbp + 0xc90], rax
xor eax, eax
mov qword [rbp + 0xc68], rax
xor eax, eax
mov qword [rbp + 0xb28], rax
xor eax, eax
mov qword [rbp + 0xcb8], rax
jmp 0x14005e89b
cmp eax, 0x26
mov eax, 1
mov rcx, qword [rbp + 0xc50]
cmove ecx, eax
mov qword [rbp + 0xc50], rcx
add rdi, 0x10
cmp qword [rbp + 0xcc0], rdi
je 0x14005ee18
mov rax, qword [rbp + 0xcb0]
movups xmm0, xmmword [rax + rdi]
movaps xmmword [rbp + 0x400], xmm0
mov rax, qword [rbp + 0xb40]
mov r8d, dword [rax + 0x48]
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0xb30]
lea r9, [rbp + 0x400]
call fcn.14001e1f0
mov rax, qword [rbp + 0x860]
cmp rax, 0x2e
je case.0x14005f48b.3
mov rcx, qword [rbp + 0x878]
movups xmm0, xmmword [rbp + 0x868]
movups xmmword [rbp + 0xbc0], xmm0
mov qword [rbp + 0xbb8], rax
mov qword [rbp + 0xbd0], rcx
movzx eax, cx
cmp eax, 0x12
jg 0x14005e9cb
cmp eax, 0x11
je 0x14005ea90
cmp eax, 0x12
jne 0x14005e88a
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0xbb8]
call fcn.14001fa90
mov rax, qword [rbp + 0x860]
test rax, rax
je 0x14005ebb1
cmp eax, 7
je 0x14005ebd0
cmp eax, 0xc
jne 0x14005e88a
mov rax, qword [rbp + 0xc48]
cmp qword [rbp + 0xcd0], rax
jb case.0x14005f48b.3
mov rax, qword [rbp + 0x868]
imul rax, qword [rbp + 0xc58]
mov rcx, qword [rbp + 0xc30]
sub rcx, rax
jb case.0x14005f48b.3
mov rdx, qword [rbp + 0xc58]
dec edx
cmp edx, 7
ja case.0x14005f48b.3
lea r8, [0x14022bb70]
movsxd rdx, dword [r8 + rdx*4]
add rdx, r8
jmp rdx
cmp qword [rbp + 0xc30], rax
je case.0x14005f48b.3
mov rcx, qword [rbp + 0xc00]
movzx eax, byte [rcx + rax]
jmp 0x14005ed17
cmp eax, 0x13
je 0x14005eb2e
cmp eax, 0x55
jne 0x14005e88a
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0xbb8]
call fcn.14001fa90
mov rcx, qword [rbp + 0x860]
mov rax, qword [rbp + 0x868]
cmp rcx, 0x16
je 0x14005eb65
cmp ecx, 0x18
jne 0x14005eb84
mov rcx, qword [rbp + 0xc10]
cmp qword [rbp + 0xc98], rcx
jb case.0x14005f48b.3
imul rax, qword [rbp + 0x7b0]
mov rcx, qword [rbp + 0x7a8]
sub rcx, rax
jb case.0x14005f48b.3
cmp dword [rbp + 0xb0c], 0x800
jne 0x14005ebef
cmp rcx, 7
jbe case.0x14005f48b.3
mov r9, qword [rbp + 0xaa8]
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 0x14005ec03
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0xbb8]
call fcn.14001fa90
mov rax, qword [rbp + 0x860]
test rax, rax
je 0x14005eb92
cmp eax, 0xc
jne 0x14005e88a
mov rax, qword [rbp + 0xc48]
cmp qword [rbp + 0xcd0], rax
jb case.0x14005f48b.3
mov rax, qword [rbp + 0x868]
imul rax, qword [rbp + 0xc58]
mov rcx, qword [rbp + 0xc30]
sub rcx, rax
jb case.0x14005f48b.3
mov rdx, qword [rbp + 0xc58]
dec edx
cmp edx, 7
ja case.0x14005f48b.3
lea r8, [0x14022bb90]
movsxd rdx, dword [r8 + rdx*4]
add rdx, r8
jmp rdx
cmp qword [rbp + 0xc30], rax
je case.0x14005f48b.3
mov rcx, qword [rbp + 0xc00]
movzx eax, byte [rcx + rax]
jmp 0x14005ec94
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0xbb8]
call fcn.14001fa90
mov rax, qword [rbp + 0x860]
cmp rax, 0x26
jne 0x14005e871
movzx ecx, word [rbp + 0x868]
mov word [rbp + 0xbde], cx
jmp 0x14005e871
add rax, qword [rbp + 0x7a0]
mov ecx, 1
mov qword [rbp + 0xcb8], rcx
mov qword [rbp + 0xc40], rax
jmp 0x14005e88a
xor eax, eax
mov qword [rbp + 0xcb8], rax
jmp 0x14005e88a
mov eax, 1
mov qword [rbp + 0xc90], rax
mov rax, qword [rbp + 0x868]
mov qword [rbp + 0xc08], rax
jmp 0x14005e88a
mov eax, 1
mov qword [rbp + 0xc68], rax
mov rax, qword [rbp + 0x868]
mov qword [rbp + 0xbb0], rax
jmp 0x14005e88a
mov eax, 1
mov qword [rbp + 0xb28], rax
mov rax, qword [rbp + 0x868]
mov qword [rbp + 0x7b8], rax
jmp 0x14005e88a
cmp rcx, 3
jbe case.0x14005f48b.3
mov rcx, qword [rbp + 0xaa8]
mov eax, dword [rcx + rax]
mov qword [rbp + 0xc40], rax
mov rax, qword [rbp + 0xc10]
add qword [rbp + 0xc40], rax
mov eax, 1
mov qword [rbp + 0xcb8], rax
jmp 0x14005e88a
cmp rcx, 1
jbe case.0x14005f48b.3
mov rcx, qword [rbp + 0xc00]
movzx eax, word [rcx + rax]
jmp 0x14005ec94
cmp rcx, 3
jbe case.0x14005f48b.3
mov rcx, qword [rbp + 0xc00]
mov eax, dword [rcx + rax]
jmp 0x14005ec94
cmp rcx, 8
jb case.0x14005f48b.3
mov r9, qword [rbp + 0xc00]
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 + 0xc08], rax
mov eax, 1
mov qword [rbp + 0xc90], rax
jmp 0x14005e88a
cmp rcx, 1
jbe case.0x14005f48b.3
mov rcx, qword [rbp + 0xc00]
movzx eax, word [rcx + rax]
jmp 0x14005ed17
cmp rcx, 3
jbe case.0x14005f48b.3
mov rcx, qword [rbp + 0xc00]
mov eax, dword [rcx + rax]
jmp 0x14005ed17
cmp rcx, 8
jb case.0x14005f48b.3
mov r9, qword [rbp + 0xc00]
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 + 0xbb0], rax
mov eax, 1
mov qword [rbp + 0xc68], rax
jmp 0x14005e88a
xor eax, eax
mov qword [rbp + 0xc50], rax
xor eax, eax
mov qword [rbp + 0xc90], rax
xor eax, eax
mov qword [rbp + 0xc68], rax
xor eax, eax
mov qword [rbp + 0xb28], rax
mov rax, qword [rbp + 0xb98]
test rax, rax
je 0x14005eda2
mov rdx, rax
mov rax, qword [rbp + 0xb90]
mov r10, rdx
mov rdi, rdx
xor ecx, ecx
shr rdi, 1
add rdi, rcx
mov r8, rdi
shl r8, 4
mov r9, qword [rax + r8]
cmp r9, rsi
je 0x14005ef26
lea r8, [rdi + 1]
cmp r9, rsi
cmova r10, rdi
cmovb rcx, r8
mov rdi, r10
sub rdi, rcx
ja 0x14005ed71
cmp qword [rbp + 0xc90], 0
je 0x14005efda
cmp qword [rbp + 0xc68], 0
je 0x14005ef5c
mov rax, qword [rbp + 0xbb0]
cmp qword [rbp + 0xc08], rax
jae 0x14005efda
mov rdi, qword [rbp + 0xc28]
cmp rdi, qword [rbp + 0xc18]
jne 0x14005edee
lea rcx, [rbp + 0xc18]
call fcn.14001c5b0
mov rax, qword [rbp + 0xc20]
mov rcx, rdi
shl rcx, 5
mov rdx, qword [rbp + 0xc08]
mov qword [rax + rcx], rdx
mov rdx, qword [rbp + 0xbb0]
mov qword [rax + rcx + 8], rdx
jmp 0x14005efb7
cmp qword [rbp + 0xcb8], 0
je 0x14005ed53
xor eax, eax
cmp word [rbp + 0xba4], 5
setae al
shl eax, 4
mov rcx, qword [rbp + 0xca8]
mov rax, qword [rcx + rax + 0xc8]
sub rax, qword [rbp + 0xc40]
jb case.0x14005f48b.3
xor ecx, ecx
mov r9d, dword [rbp + 0xba4]
cmp r9w, 5
setae cl
shl ecx, 4
mov rdx, qword [rbp + 0xca8]
mov rcx, qword [rdx + rcx + 0xc0]
add rcx, qword [rbp + 0xc40]
cmp r9w, 5
mov rdx, qword [rbp + 0x690]
setae byte [rbp + 0x894]
mov r8, qword [rbp + 0xc70]
mov qword [rbp + 0x860], r8
mov r8, qword [rbp + 0xcd0]
mov qword [rbp + 0x868], r8
mov qword [rbp + 0x870], rdx
mov rdx, qword [rbp + 0xc48]
mov qword [rbp + 0x878], rdx
mov qword [rbp + 0x880], rcx
mov qword [rbp + 0x888], rax
mov word [rbp + 0x890], bx
mov word [rbp + 0x892], r9w
lea rcx, [rbp + 0xbb8]
lea rdx, [rbp + 0x860]
call fcn.140024270
mov rax, qword [rbp + 0xbb8]
cmp rax, 2
jne 0x14005f638
mov rax, qword [rbp + 0xbc0]
mov qword [rbp + 0xcb0], rax
cmp al, 0x4b
jne case.0x14005f48b.3
mov rax, qword [rbp + 0xcb0]
shr eax, 8
jmp 0x14005efdc
lea rcx, [rdi - 1]
cmp rcx, rdx
jae 0x14005f231
inc rdi
lea rcx, [rax + r8]
add rcx, 0xfffffffffffffff0
cmp rdi, 1
je 0x14005f23a
dec rdi
lea r8, [rcx - 0x10]
cmp qword [rcx], rsi
mov rcx, r8
je 0x14005ef3e
jmp 0x14005f23c
cmp qword [rbp + 0xb28], 0
je 0x14005efda
mov rax, qword [rbp + 0x7b8]
mov rcx, qword [rbp + 0xc08]
lea rbx, [rax + rcx]
cmp rcx, rbx
jae 0x14005efda
mov rdi, qword [rbp + 0xc28]
cmp rdi, qword [rbp + 0xc18]
jne 0x14005ef99
lea rcx, [rbp + 0xc18]
call fcn.14001c5b0
mov rax, qword [rbp + 0xc20]
mov rcx, rdi
shl rcx, 5
mov rdx, qword [rbp + 0xc08]
mov qword [rax + rcx], rdx
mov qword [rax + rcx + 8], rbx
mov rdx, qword [rbp + 0xcc8]
mov qword [rax + rcx + 0x10], rdx
mov qword [rax + rcx + 0x18], 0
inc rdi
mov qword [rbp + 0xc28], rdi
mov al, 1
jmp 0x14005efdc
xor eax, eax
mov qword [rbp + 0xcb0], rax
mov rax, qword [rbp + 0xcb0]
and al, 1
mov qword [rbp + 0xcb0], rax
mov qword [rbp + 0xb30], 0
test byte [rbp + 0xcb0], 1
jne 0x14005f12f
cmp qword [rbp + 0x570], 0x2f
je 0x14005f12f
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0x570]
call fcn.140025660
lea rcx, [rbp + 0xbb8]
lea rdx, [rbp + 0x510]
lea r8, [rbp + 0x860]
mov r9, qword [rbp + 0xcd8]
call fcn.140028fe0
mov qword [rbp + 0xb30], 1
movups xmm0, xmmword [rbp + 0xbb8]
movups xmm1, xmmword [rbp + 0xbc8]
lea rax, [rbp + 0xb38]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
cmp qword [rbp + 0xb38], 0
je 0x14005f12f
mov rax, qword [rbp + 0xb50]
mov qword [rbp + 0xcc0], rax
test rax, rax
je 0x14005f12f
mov rax, qword [rbp + 0xb48]
mov qword [rbp + 0xcb0], rax
mov rax, qword [rbp + 0xc28]
mov rbx, rax
shl rax, 5
mov qword [rbp + 0xcb8], rax
shl qword [rbp + 0xcc0], 5
xor edi, edi
jmp 0x14005f10c
mov rax, qword [rbp + 0xc20]
add rax, qword [rbp + 0xcb8]
movups xmmword [rdi + rax], xmm6
mov rcx, qword [rbp + 0xcc8]
mov qword [rdi + rax + 0x10], rcx
mov qword [rdi + rax + 0x18], 0
mov rax, rbx
inc rax
mov rbx, rax
mov qword [rbp + 0xc28], rax
add rdi, 0x20
cmp qword [rbp + 0xcc0], rdi
je 0x14005f12f
mov rax, qword [rbp + 0xcb0]
movups xmm6, xmmword [rax + rdi + 0x10]
cmp rbx, qword [rbp + 0xc18]
jne 0x14005f0c8
lea rcx, [rbp + 0xc18]
call fcn.14001c5b0
jmp 0x14005f0c8
mov r8d, 0x1a8
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0x510]
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [rbp + 0xb30]
movups xmm1, xmmword [rbp + 0xb40]
lea rcx, [rbp + 0x878]
movups xmmword [rcx + 0x198], xmm0
movups xmmword [rcx + 0x1a8], xmm1
mov rax, qword [rbp + 0xb50]
mov qword [rcx + 0x1b8], rax
mov qword [rbp + 0xa08], rsi
mov rax, qword [rbp + 0xc50]
mov word [rbp + 0xa70], ax
movzx eax, word [rbp + 0xbde]
mov word [rbp + 0xa72], ax
mov qword [rbp + 0xa38], 0
mov byte [rbp + 0xa60], 0x4c
mov rax, qword [rbp + 0xcc8]
cmp rax, qword [rbp + 0xbe0]
jne 0x14005f1ca
lea rcx, [rbp + 0xbe0]
call fcn.14001caa0
mov rdi, qword [rbp + 0xcc8]
imul rcx, rdi, 0x218
add rcx, qword [rbp + 0xbe8]
mov r8d, 0x218
lea rsi, [rbp + 0x860]
mov rdx, rsi
call sub.msvcrt.dll_memcpy
inc rdi
mov qword [rbp + 0xbf0], rdi
mov rcx, rsi
lea rdx, [rbp + 0xb10]
call fcn.140020410
mov rax, qword [rbp + 0x860]
cmp rax, 3
lea rdi, [rbp + 0x878]
lea rbx, [rbp + 0x520]
jne 0x14005e444
jmp 0x14005e27f
test rdi, rdi
jne 0x140060805
xor edi, edi
cmp rdi, rdx
jne 0x14005f248
xor eax, eax
jmp 0x14005efec
shl rdx, 4
add rdx, rax
mov qword [rbp + 0xc48], rdx
shl rdi, 4
add rdi, rax
xor eax, eax
mov qword [rbp + 0xcb0], rax
jmp 0x14005f279
add rdi, 0x10
cmp rdi, qword [rbp + 0xc48]
je 0x14005eff3
cmp qword [rdi], rsi
jne 0x14005eff3
mov r8, qword [rdi + 8]
mov rax, qword [rbp + 0xca0]
sub rax, r8
jb case.0x14005f48b.3
mov rcx, qword [rbp + 0xc80]
add rcx, r8
mov qword [rbp + 0xbb8], rcx
mov qword [rbp + 0xbc0], rax
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0xbb8]
call fcn.140023fc0
cmp byte [rbp + 0x889], 3
je case.0x14005f48b.3
mov rax, qword [rbp + 0x868]
mov qword [rbp + 0xcc0], rax
test rax, rax
je 0x14005f268
mov rax, qword [rbp + 0x860]
mov qword [rbp + 0xcb8], rax
movzx eax, byte [rbp + 0x888]
movzx ecx, byte [rbp + 0x88c]
mov qword [rbp + 0xc30], rax
add eax, eax
mov qword [rbp + 0xc58], rcx
add al, cl
movzx eax, al
mov qword [rbp + 0xc68], rax
jmp 0x14005f361
cmp qword [rbp + 0xcc0], 4
jb case.0x14005f48b.3
mov rcx, qword [rbp + 0xcb8]
movzx edx, word [rcx]
mov qword [rbp + 0xc90], rdx
add qword [rbp + 0xcc0], 0xfffffffffffffffc
movzx ebx, word [rcx + 2]
add rcx, 4
mov qword [rbp + 0xcb8], rcx
or rax, qword [rbp + 0xc90]
or rax, rbx
jne 0x14005f5ad
mov rax, qword [rbp + 0xcc0]
cmp rax, qword [rbp + 0xc68]
jb 0x14005f268
cmp dword [rbp + 0xc58], 8
ja case.0x14005f48b.3
mov eax, dword [rbp + 0xc58]
lea rcx, [0x14022bbb0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov rax, qword [rbp + 0xc58]
jmp 0x14005f46b
cmp qword [rbp + 0xcc0], 0
je case.0x14005f48b.3
dec qword [rbp + 0xcc0]
mov rcx, qword [rbp + 0xcb8]
movzx eax, byte [rcx]
inc rcx
jmp 0x14005f411
cmp qword [rbp + 0xcc0], 1
jbe case.0x14005f48b.3
add qword [rbp + 0xcc0], 0xfffffffffffffffe
mov rcx, qword [rbp + 0xcb8]
movzx eax, word [rcx]
add rcx, 2
jmp 0x14005f411
cmp qword [rbp + 0xcc0], 3
jbe case.0x14005f48b.3
add qword [rbp + 0xcc0], 0xfffffffffffffffc
mov rcx, qword [rbp + 0xcb8]
mov eax, dword [rcx]
add rcx, 4
mov qword [rbp + 0xcb8], rcx
jmp 0x14005f46b
cmp qword [rbp + 0xcc0], 8
jb case.0x14005f48b.3
add qword [rbp + 0xcc0], 0xfffffffffffffff8
mov r9, qword [rbp + 0xcb8]
movzx ecx, byte [r9 + 7]
movzx edx, word [r9 + 4]
movzx r8d, byte [r9 + 6]
mov eax, dword [r9]
add r9, 8
shl r8d, 0x10
or r8d, edx
shl r8, 0x28
shl rax, 8
or rax, r8
shrd rax, rcx, 8
mov qword [rbp + 0xcb8], r9
mov rcx, qword [rbp + 0xc30]
dec ecx
cmp ecx, 7
ja case.0x14005f48b.3
lea rdx, [0x14022bbd4]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
cmp qword [rbp + 0xcc0], 2
jb case.0x14005f48b.3
mov rcx, qword [rbp + 0xcb8]
movzx edx, byte [rcx]
mov qword [rbp + 0xc90], rdx
add qword [rbp + 0xcc0], 0xfffffffffffffffe
movzx ebx, byte [rcx + 1]
add rcx, 2
jmp 0x14005f34a
cmp qword [rbp + 0xcc0], 4
jb case.0x14005f48b.3
mov rcx, qword [rbp + 0xcc0]
and rcx, 0xfffffffffffffffc
cmp rcx, 4
je case.0x14005f48b.3
mov rcx, qword [rbp + 0xcb8]
mov edx, dword [rcx]
mov qword [rbp + 0xc90], rdx
mov ebx, dword [rcx + 4]
add qword [rbp + 0xcc0], 0xfffffffffffffff8
add rcx, 8
jmp 0x14005f34a
cmp qword [rbp + 0xcc0], 8
jb case.0x14005f48b.3
mov rcx, qword [rbp + 0xcc0]
and rcx, 0xfffffffffffffff8
cmp rcx, 8
je case.0x14005f48b.3
mov r9, qword [rbp + 0xcb8]
movzx ecx, word [r9 + 4]
movzx edx, byte [r9 + 6]
shl edx, 0x10
or edx, ecx
mov r8d, dword [r9]
mov ebx, dword [r9 + 8]
movzx ecx, byte [r9 + 7]
shl rdx, 0x28
shl r8, 8
or r8, rdx
shrd r8, rcx, 8
mov qword [rbp + 0xc90], r8
add qword [rbp + 0xcc0], 0xfffffffffffffff0
movzx ecx, byte [r9 + 0xf]
movzx edx, word [r9 + 0xc]
movzx r8d, byte [r9 + 0xe]
add r9, 0x10
shl r8d, 0x10
or r8d, edx
shl r8, 0x28
shl rbx, 8
or rbx, r8
shrd rbx, rcx, 8
mov qword [rbp + 0xcb8], r9
or rax, qword [rbp + 0xc90]
or rax, rbx
je 0x14005f361
test rbx, rbx
je 0x14005f625
mov rax, qword [rbp + 0xc28]
mov qword [rbp + 0xcb0], rax
cmp rax, qword [rbp + 0xc18]
jne 0x14005f5d5
lea rcx, [rbp + 0xc18]
call fcn.14001c5b0
mov rdx, qword [rbp + 0xc90]
add rbx, rdx
mov rax, qword [rbp + 0xc20]
mov r8, qword [rbp + 0xcb0]
mov rcx, r8
shl rcx, 5
mov qword [rax + rcx], rdx
mov qword [rax + rcx + 8], rbx
mov rdx, qword [rbp + 0xcc8]
mov qword [rax + rcx + 0x10], rdx
mov qword [rax + rcx + 0x18], 0
inc r8
mov qword [rbp + 0xc28], r8
mov al, 1
mov qword [rbp + 0xcb0], rax
cmp qword [rbp + 0xcc0], 0
jne 0x14005f361
jmp 0x14005f268
xor ecx, ecx
mov qword [rbp + 0xcb0], rcx
jmp 0x14005f6ad
mov rax, qword [rbp + 0xc20]
mov rcx, rdi
shl rcx, 5
mov rdx, qword [rbp + 0xcc0]
mov qword [rax + rcx], rdx
mov qword [rax + rcx + 8], rbx
mov rdx, qword [rbp + 0xcc8]
mov qword [rax + rcx + 0x10], rdx
mov qword [rax + rcx + 0x18], 0
inc rdi
mov qword [rbp + 0xc28], rdi
mov al, 1
mov qword [rbp + 0xcb0], rax
lea rcx, [rbp + 0xbb8]
lea rdx, [rbp + 0x860]
call fcn.140024270
mov rax, qword [rbp + 0xbb8]
cmp rax, 2
je 0x14005ef01
cmp rax, 1
jne 0x14005f6f2
mov rax, qword [rbp + 0xbc0]
mov rbx, qword [rbp + 0xbc8]
mov qword [rbp + 0xcc0], rax
cmp rax, rbx
jae 0x14005f689
mov rdi, qword [rbp + 0xc28]
cmp rdi, qword [rbp + 0xc18]
jne 0x14005f643
lea rcx, [rbp + 0xc18]
call fcn.14001c5b0
jmp 0x14005f643
mov rax, qword [rbp + 0xcb0]
and al, 1
jmp 0x14005efdc
mov rsi, qword [rbp + 0xc20]
mov rax, qword [rbp + 0xc28]
mov rcx, rax
mov qword [rbp + 0xcd8], rax
cmp rax, 2
jb 0x14005f923
cmp qword [rbp + 0xcd8], 0x15
jae 0x14005f8ec
mov rbx, qword [rbp + 0xcd8]
shl rbx, 5
add rbx, rsi
mov r10, rbx
lea rdx, [rsi + 0x20]
mov eax, 0x20
mov r8, rsi
jmp 0x14005f780
mov r8, rsi
mov qword [r8], rdx
movaps xmm0, xmmword [rbp + 0x860]
movups xmmword [r8 + 8], xmm0
mov rdx, qword [rbp + 0x870]
mov qword [r8 + 0x18], rdx
lea rdx, [rcx + 0x20]
add rax, 0x20
mov r8, rcx
cmp rdx, r10
je 0x14005f90e
mov rcx, rdx
mov rdx, qword [r8 + 0x20]
cmp rdx, qword [r8]
jae 0x14005f76c
mov r9, qword [r8 + 0x38]
mov qword [rbp + 0x870], r9
movups xmm0, xmmword [r8 + 0x28]
movaps xmmword [rbp + 0x860], 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 0x14005f74f
lea r8, [r9 - 0x20]
cmp rdx, qword [rsi + r9 - 0x40]
mov r9, r8
jb 0x14005f7a6
add r8, rsi
jmp 0x14005f752
mov rdx, qword [rbp + 0xcd8]
call fcn.140014d20
mov rax, r14
mov r10, qword [rbp + 0xca8]
mov r11, qword [rbp + 0xca0]
mov rsi, qword [rbp + 0xc88]
mov rdi, qword [rbp + 0xc78]
jmp 0x14005d967
mov qword [rbp + 0xb30], r11
neg r10
mov qword [rbp + 0xb38], r10
jmp case.0x14005f48b.3
add r8, r9
mov qword [rbp + 0xb30], r8
mov qword [rbp + 0xb38], 0
mov rax, qword [rbp + 0x668]
lock dec qword [rax]
jne 0x14005f84a
lea rcx, [rbp + 0x668]
call fcn.14001bc60
cmp dword [rbp + 0x570], 0x2f
je 0x14005e27f
mov rdx, qword [rbp + 0x5b0]
test rdx, rdx
je 0x14005f879
mov rcx, qword [rbp + 0x5b8]
shl rdx, 2
mov r8d, 2
call fcn.140003340
mov rax, qword [rbp + 0x5c8]
test rax, rax
je 0x14005f89f
mov rcx, qword [rbp + 0x5d0]
shl rax, 3
lea rdx, [rax + rax*2]
mov r8d, 8
call fcn.140003340
mov rdx, qword [rbp + 0x5e0]
test rdx, rdx
je 0x14005f8c1
mov rcx, qword [rbp + 0x5e8]
shl rdx, 2
mov r8d, 2
call fcn.140003340
mov rdx, qword [rbp + 0x5f8]
test rdx, rdx
je 0x14005e27f
mov rcx, qword [rbp + 0x600]
shl rdx, 6
mov r8d, 8
call fcn.140003340
jmp 0x14005e27f
mov rcx, rsi
mov rdx, qword [rbp + 0xcd8]
call fcn.14000f0c0
mov rcx, qword [rbp + 0xcd8]
shl rcx, 5
mov rax, rsi
add rax, rcx
jmp 0x14005f93b
mov rsi, qword [rbp + 0xc20]
mov rax, qword [rbp + 0xc28]
mov qword [rbp + 0xcd8], rax
cmp qword [rbp + 0xcd8], 0
je 0x14005f95d
mov rax, qword [rbp + 0xcd8]
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 0x14005f940
jmp 0x14005f966
xor eax, eax
mov qword [rbp + 0xcd8], rax
mov rax, qword [rbp + 0xc18]
mov qword [rbp + 0xcc8], rax
movups xmm0, xmmword [rbp + 0xbe0]
movaps xmmword [rbp + 0x700], xmm0
mov rax, qword [rbp + 0xbf0]
mov qword [rbp + 0x710], rax
mov rdx, qword [rbp + 0xb88]
test rdx, rdx
je 0x14005f9b2
mov rcx, qword [rbp + 0xb90]
shl rdx, 4
mov r8d, 8
call fcn.140003340
movabs rax, 0x8000000000000000
cmp qword [rbp + 0xcc8], rax
je 0x14005e312
mov rax, qword [rbp + 0x710]
mov qword [rbp + 0xbf0], rax
movaps xmm0, xmmword [rbp + 0x700]
movaps xmmword [rbp + 0xbe0], xmm0
mov rax, qword [rbp + 0xba8]
mov qword [rbp + 0xca8], rax
mov rax, qword [rax + 0xe0]
test rax, rax
je 0x14005fae3
mov rbx, rax
mov qword [rbp + 0xbb8], 0
mov qword [rbp + 0xbc0], 8
mov qword [rbp + 0xbc8], 0
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rbp + 0x7c0], xmm0
mov qword [rbp + 0x7d0], 0
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0x7c0]
call fcn.140020410
mov rax, qword [rbp + 0x860]
cmp rax, 3
jne 0x14005fba2
lea rcx, [rbp + 0xbb8]
call fcn.14000c3f0
mov r12, qword [rbp + 0xbe8]
mov rdi, qword [rbp + 0xbf0]
inc rdi
mov rcx, r12
cmp rdi, 1
je 0x14005fa9b
lea r15, [rcx + 0x218]
dec rdi
call fcn.14000be60
mov rcx, r15
jmp 0x14005fa81
mov rax, qword [rbp + 0xbe0]
test rax, rax
je 0x14005fabc
imul rdx, rax, 0x218
mov r8d, 8
mov rcx, r12
call fcn.140003340
cmp qword [rbp + 0xcc8], 0
je 0x14005e312
mov rdx, qword [rbp + 0xcc8]
shl rdx, 5
mov r8d, 8
mov rcx, rsi
jmp 0x14005e30d
mov qword [rbp + 0xb10], 0
mov qword [rbp + 0xb18], 8
mov eax, 8
mov qword [rbp + 0xcd0], rax
xor eax, eax
mov qword [rbp + 0xc80], rax
xor edi, edi
mov qword [rbp + 0xb20], rdi
mov rax, qword [rbp + 0xca8]
mov qword [rbp + 0x860], rax
mov qword [rbp + 0xc98], rsi
mov rax, qword [rbp + 0xcd8]
cmp qword [rbp + 0xcc8], rax
jbe 0x14005fd5d
mov rbx, qword [rbp + 0xcc8]
shl rbx, 5
cmp qword [rbp + 0xcd8], 0
je 0x14005fd40
mov r9, qword [rbp + 0xcd8]
shl r9, 5
mov r8d, 8
mov rcx, rsi
mov rdx, rbx
mov qword [rbp + 0xca0], r9
call fcn.140003350
mov qword [rbp + 0xc98], rax
test rax, rax
jne 0x14005fd5d
mov ecx, 8
mov rdx, qword [rbp + 0xca0]
call fcn.14007f630
jmp 0x140060811
add rbx, 0x10
mov ecx, 8
mov qword [rbp + 0xcd0], rcx
xor edi, edi
jmp 0x14005fbe4
cmp rax, 2
je 0x14005fcfb
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0x7c0]
call fcn.140020410
mov rax, qword [rbp + 0x860]
cmp rax, 3
je 0x14005fa61
movups xmm6, xmmword [rbp + 0x868]
lea rcx, [rbp + 0x878]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [rcx + 0x20]
movaps xmmword [rbp + 0xb30], xmm0
movaps xmmword [rbp + 0xb40], xmm1
movaps xmmword [rbp + 0xb50], xmm2
mov rcx, qword [rcx + 0x30]
mov qword [rbp + 0xb60], rcx
test rax, rax
jne 0x14005fbb6
mov qword [rbp + 0x860], 0
movups xmmword [rbp + 0x868], xmm6
mov rax, qword [rbp + 0xb60]
lea rcx, [rbp + 0x878]
mov qword [rcx + 0x30], rax
movaps xmm0, xmmword [rbp + 0xb30]
movaps xmm1, xmmword [rbp + 0xb40]
movaps xmm2, xmmword [rbp + 0xb50]
movups xmmword [rcx + 0x20], xmm2
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
lea rcx, [rbp + 0x510]
mov rdx, rbx
lea r8, [rbp + 0x860]
call fcn.140020a10
cmp dword [rbp + 0x510], 2
je 0x14005fbc0
mov r8d, 0x1a8
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0x510]
call sub.msvcrt.dll_memcpy
movlps qword [rbp + 0xa08], xmm6
cmp rdi, qword [rbp + 0xbb8]
jne 0x14005fccc
lea rcx, [rbp + 0xbb8]
call fcn.14001c7c0
mov rax, qword [rbp + 0xbc0]
mov qword [rbp + 0xcd0], rax
imul rcx, rdi, 0x1b0
add rcx, qword [rbp + 0xcd0]
mov r8d, 0x1b0
lea rdx, [rbp + 0x860]
call sub.msvcrt.dll_memcpy
inc rdi
mov qword [rbp + 0xbc8], rdi
jmp 0x14005fbc0
mov rdx, qword [rbp + 0xbb8]
movabs rax, 0x8000000000000000
mov rcx, rdx
mov qword [rbp + 0xc80], rdx
cmp rdx, rax
je 0x14005fa6d
mov rax, qword [rbp + 0xc80]
mov qword [rbp + 0xb10], rax
mov rax, qword [rbp + 0xcd0]
mov qword [rbp + 0xb18], rax
jmp 0x14005fb10
mov eax, 8
mov qword [rbp + 0xc98], rax
mov r8d, 8
mov rcx, rsi
mov rdx, rbx
call fcn.140003340
mov rax, qword [rbp + 0xbe0]
mov rbx, qword [rbp + 0xbe8]
mov rcx, qword [rbp + 0xbf0]
mov qword [rbp + 0xca0], rcx
cmp rax, rcx
jbe 0x14005fde0
imul rdx, rax, 0x218
cmp qword [rbp + 0xca0], 0
je 0x14005fdcd
imul r9, qword [rbp + 0xca0], 0x218
mov r8d, 8
mov rcx, rbx
mov qword [rbp + 0xc70], r9
call fcn.140003350
mov rbx, rax
test rax, rax
jne 0x14005fde0
mov ecx, 8
mov rdx, qword [rbp + 0xc70]
call fcn.14007f630
jmp 0x140060811
mov r8d, 8
mov rcx, rbx
call fcn.140003340
mov ebx, 8
cmp qword [rbp + 0xc80], rdi
jbe 0x14005fe59
imul rdx, qword [rbp + 0xc80], 0x1b0
test rdi, rdi
je 0x14005fe3b
imul r9, rdi, 0x1b0
mov r8d, 8
mov rcx, qword [rbp + 0xcd0]
mov qword [rbp + 0xc80], r9
call fcn.140003350
mov qword [rbp + 0xcd0], rax
test rax, rax
jne 0x14005fe59
mov ecx, 8
mov rdx, qword [rbp + 0xc80]
call fcn.14007f630
jmp 0x140060811
mov r8d, 8
mov rcx, qword [rbp + 0xcd0]
call fcn.140003340
mov eax, 8
mov qword [rbp + 0xcd0], rax
mov rax, qword [rbp + 0xca8]
mov qword [rbp + 0x768], rax
mov rax, qword [rbp + 0xc98]
mov qword [rbp + 0x770], rax
mov rax, qword [rbp + 0xcd8]
mov qword [rbp + 0x778], rax
mov qword [rbp + 0x780], rbx
mov rax, qword [rbp + 0xca0]
mov qword [rbp + 0x788], rax
mov rax, qword [rbp + 0xcd0]
mov qword [rbp + 0x790], rax
mov qword [rbp + 0x798], rdi
mov rcx, qword [rbp + 0x800]
movabs rax, 0x8000000000000000
mov qword [rbp + 0xcc8], rcx
cmp rcx, rax
jne 0x1400602ed
mov byte [rbp + 0xcd8], 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 + 0xab0]
lea rcx, [rbp + 0xab8]
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
je 0x14005e377
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
movzx eax, byte [rbp + 0xcd8]
mov byte [rbp + 0x230], al
mov byte [rbp + 0x288], sil
mov qword [rbp + 0x2e0], rbx
mov rax, qword [rbp + 0xcd0]
mov qword [rbp + 0x2e8], rax
mov rax, qword [rbp + 0xca8]
mov qword [rbp + 0x2f0], rax
mov rax, qword [rbp + 0xca0]
mov qword [rbp + 0x2f8], rax
mov rax, qword [rbp + 0xc90]
mov qword [rbp + 0x300], rax
mov rax, qword [rbp + 0xc80]
mov qword [rbp + 0x308], rax
mov rax, qword [rbp + 0xc98]
mov qword [rbp + 0x310], rax
mov rax, qword [rbp + 0xc70]
mov qword [rbp + 0x318], rax
mov rax, qword [rbp + 0xc68]
mov qword [rbp + 0x320], rax
mov rax, qword [rbp + 0xc88]
mov qword [rbp + 0x328], rax
mov rax, qword [rbp + 0xc78]
mov qword [rbp + 0x330], rax
mov rax, qword [rbp + 0xcc0]
mov qword [rbp + 0x338], rax
mov rax, qword [rbp + 0xc40]
mov qword [rbp + 0x340], rax
mov rax, qword [rbp + 0xcb0]
mov qword [rbp + 0x348], rax
mov qword [rbp + 0x350], rdi
mov rax, qword [rbp + 0xc50]
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0xc30]
mov qword [rbp + 0x360], rax
mov rax, qword [rbp + 0xcb8]
mov qword [rbp + 0x368], rax
mov qword [rbp + 0x370], 1
mov qword [rbp + 0x378], 0
mov rax, qword [rbp + 0xc60]
mov qword [rbp + 0x3b8], rax
mov qword [rbp + 0x3c0], r14
mov rax, qword [rbp + 0xc38]
mov qword [rbp + 0x3c8], rax
mov rdi, qword [0x1400a4070]
mov rbx, qword [0x1400a4060]
cmp rdi, 4
jne 0x140060265
mov qword [0x1400a4070], 3
mov edx, 0x690
add rdx, qword [0x1400a4068]
lea rcx, [rbp + 0x860]
mov r8d, 0x230
call sub.msvcrt.dll_memcpy
mov edi, 3
movabs rax, 0x8000000000000000
cmp qword [rbp + 0x868], rax
je 0x140060265
lea rcx, [rbp + 0x868]
call fcn.14000dad0
mov rdi, qword [0x1400a4070]
mov rbx, qword [0x1400a4060]
lea rsi, [rbp + 0x868]
lea rdx, [rbp + 0x1d8]
mov r8d, 0x228
mov rcx, rsi
call sub.msvcrt.dll_memcpy
mov qword [rbp + 0x860], r15
cmp rdi, rbx
jne 0x140060292
call fcn.14001c430
mov r14, qword [0x1400a4068]
test rdi, rdi
je 0x1400607b7
lea rcx, [r14 + 0x230]
imul r8, rdi, 0x230
mov rdx, r14
call sub.msvcrt.dll_memmove
lea rdx, [rbp + 0x860]
mov r8d, 0x230
mov rcx, r14
call sub.msvcrt.dll_memcpy
inc rdi
mov qword [0x1400a4070], rdi
jne 0x14005cb28
lea r8, [0x140231270]
xor ecx, ecx
xor edx, edx
call fcn.14008c5b0
lea rdx, [0x14022cb16]
lea rcx, [rbp + 0x800]
mov r8d, 0xf
call fcn.140060c80
mov qword [rbp + 0xcd8], rdx
test rax, rax
mov rcx, qword [rbp + 0xcd8]
cmove rcx, rax
mov qword [rbp + 0xcd8], rcx
mov ecx, 1
cmovne rcx, rax
mov qword [rbp + 0xc58], rcx
lea rdx, [0x14022cb9b]
lea rcx, [rbp + 0x800]
mov r8d, 0xf
call fcn.140060c80
mov qword [rbp + 0xc10], rax
mov qword [rbp + 0xc48], rdx
lea rdx, [0x140231188]
lea rcx, [rbp + 0x800]
mov r8d, 0x11
call fcn.140060c80
mov qword [rbp + 0xcd0], rdx
mov rbx, rax
test rax, rax
mov rax, qword [rbp + 0xcd0]
cmove rax, rbx
mov qword [rbp + 0xcd0], rax
mov ecx, 1
mov eax, 1
mov qword [rbp + 0xca8], rax
cmove rbx, rcx
lea rdx, [0x140231199]
lea rcx, [rbp + 0x800]
mov r8d, 0xf
call fcn.140060c80
mov qword [rbp + 0xca0], rdx
test rax, rax
mov rcx, qword [rbp + 0xca0]
cmove rcx, rax
mov qword [rbp + 0xca0], rcx
mov rcx, qword [rbp + 0xca8]
cmovne rcx, rax
mov qword [rbp + 0xca8], rcx
lea rdx, [0x1402311a8]
lea rcx, [rbp + 0x800]
mov r8d, 0xf
call fcn.140060c80
mov qword [rbp + 0xc80], rdx
test rax, rax
mov rcx, qword [rbp + 0xc80]
cmove rcx, rax
mov qword [rbp + 0xc80], rcx
mov edx, 1
mov ecx, 1
mov qword [rbp + 0xc98], rcx
cmove rax, rdx
mov qword [rbp + 0xc90], rax
lea rdx, [0x1402311eb]
lea rcx, [rbp + 0x800]
mov r8d, 0xe
call fcn.140060c80
mov qword [rbp + 0xc70], rdx
test rax, rax
mov rcx, qword [rbp + 0xc70]
cmove rcx, rax
mov qword [rbp + 0xc70], rcx
mov rcx, qword [rbp + 0xc98]
cmovne rcx, rax
mov qword [rbp + 0xc98], rcx
lea rdx, [0x1402311f9]
lea rcx, [rbp + 0x800]
mov r8d, 0x16
call fcn.140060c80
mov qword [rbp + 0xc88], rdx
test rax, rax
mov rcx, qword [rbp + 0xc88]
cmove rcx, rax
mov qword [rbp + 0xc88], rcx
mov edx, 1
mov ecx, 1
mov qword [rbp + 0xc78], rcx
cmove rax, rdx
mov qword [rbp + 0xc68], rax
lea rdx, [0x1402311b7]
lea rcx, [rbp + 0x800]
mov r8d, 0xe
call fcn.140060c80
mov qword [rbp + 0xcc0], rdx
test rax, rax
mov rcx, qword [rbp + 0xcc0]
cmove rcx, rax
mov qword [rbp + 0xcc0], rcx
mov rcx, qword [rbp + 0xc78]
cmovne rcx, rax
mov qword [rbp + 0xc78], rcx
lea rdx, [0x1402311c5]
lea rcx, [rbp + 0x800]
mov r8d, 0x13
call fcn.140060c80
mov qword [rbp + 0xcb0], rdx
test rax, rax
mov rcx, qword [rbp + 0xcb0]
cmove rcx, rax
mov qword [rbp + 0xcb0], rcx
mov edi, 1
cmove rax, rdi
mov qword [rbp + 0xc40], rax
lea rdx, [0x1402311d8]
lea rcx, [rbp + 0x800]
mov r8d, 0x13
call fcn.140060c80
mov qword [rbp + 0xc50], rdx
test rax, rax
mov rcx, qword [rbp + 0xc50]
cmove rcx, rax
mov qword [rbp + 0xc50], rcx
cmovne rdi, rax
lea rdx, [0x14023120f]
lea rcx, [rbp + 0x800]
mov r8d, 0x10
call fcn.140060c80
mov qword [rbp + 0xcb8], rdx
test rax, rax
mov rcx, qword [rbp + 0xcb8]
cmove rcx, rax
mov qword [rbp + 0xcb8], rcx
mov esi, 1
cmove rax, rsi
mov qword [rbp + 0xc30], rax
lea rcx, [rbp + 0x860]
mov rdx, qword [rbp + 0xc58]
mov r8, qword [rbp + 0xcd8]
call fcn.140023390
movzx eax, byte [rbp + 0x860]
mov byte [rbp + 0xcd8], al
cmp al, 0x16
je 0x140060698
mov rax, qword [rbp + 0xc10]
test rax, rax
cmovne rsi, rax
mov r8, qword [rbp + 0xc48]
cmove r8, rax
mov rax, qword [rbp + 0x870]
mov qword [rbp + 0xb3f], rax
movups xmm0, xmmword [rbp + 0x861]
movaps xmmword [rbp + 0xb30], xmm0
movups xmm0, xmmword [rbp + 0x878]
movaps xmmword [rbp + 0x510], xmm0
movups xmm0, xmmword [rbp + 0x888]
movaps xmmword [rbp + 0x520], xmm0
movups xmm0, xmmword [rbp + 0x898]
movaps xmmword [rbp + 0x530], xmm0
movups xmm0, xmmword [rbp + 0x8a8]
movaps xmmword [rbp + 0x540], xmm0
lea rcx, [rbp + 0x860]
mov rdx, rsi
call fcn.140023390
movzx esi, byte [rbp + 0x860]
cmp sil, 0x16
jne 0x1400606df
cmp qword [rbp + 0xcc8], 0
je 0x1400606bf
mov rcx, qword [rbp + 0x808]
mov rdx, qword [rbp + 0xcc8]
shl rdx, 4
mov r8d, 8
call fcn.140003340
lea rcx, [rbp + 0x768]
call fcn.14000bd20
jmp 0x14005e355
lea r8, [0x140231258]
mov rcx, r15
call fcn.14008c5b0
mov rax, qword [rbp + 0x870]
mov qword [rbp + 0x72f], rax
movups xmm0, xmmword [rbp + 0x861]
movaps xmmword [rbp + 0x720], xmm0
movups xmm0, xmmword [rbp + 0x878]
movaps xmmword [rbp + 0x420], xmm0
movups xmm0, xmmword [rbp + 0x888]
movaps xmmword [rbp + 0x430], xmm0
movups xmm0, xmmword [rbp + 0x898]
movaps xmmword [rbp + 0x440], xmm0
movups xmm0, xmmword [rbp + 0x8a8]
movaps xmmword [rbp + 0x450], xmm0
movaps xmm0, xmmword [rbp + 0xb30]
movaps xmmword [rbp + 0x4b0], xmm0
mov rax, qword [rbp + 0xb3f]
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
cmp qword [rbp + 0xcc8], 0
je 0x14005fed5
mov rcx, qword [rbp + 0x808]
mov rdx, qword [rbp + 0xcc8]
shl rdx, 4
mov r8d, 8
call fcn.140003340
jmp 0x14005fed5
lea rdx, [rbp + 0x860]
mov r8d, 0x230
mov rcx, r14
call sub.msvcrt.dll_memcpy
mov qword [0x1400a4070], 1
jmp 0x14005cb28
lea r8, str._rust_deps_addr2line_0.22.0_srclib.rs
call fcn.1400926a0
lea r8, str._rust_deps_addr2line_0.22.0_srclib.rs
call fcn.14008c5b0
mov ecx, 8
mov edx, 0x108
call fcn.14007f650
jmp 0x140060811
lea r8, str._rust_deps_addr2line_0.22.0_srclib.rs
call fcn.14008c5b0
ud2