Function at 0x140054ca0
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 [0x14009c038]
test rdx, rdx
je 0x1400568e7
mov rax, qword [0x14009c030]
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 0x140054d40
mov r11, r10
add r10, 0x10
mov rsi, qword [r11]
add rsi, r12
add r9, 0xfffffffffffffff0
cmp rsi, rcx
ja 0x140054d10
add rsi, qword [r11 + 8]
cmp rsi, rcx
jbe 0x140054d10
jmp 0x140054d4d
inc r15
cmp r8, rdi
jne 0x140054cf0
jmp 0x1400568e7
mov r13, rcx
mov rdi, qword [0x14009c050]
test rdi, rdi
je 0x140054d89
mov r14, qword [0x14009c048]
imul rsi, rdi, 0x230
xor ecx, ecx
xor ebx, ebx
nop
cmp qword [r14 + rbx], r15
je 0x140054fe8
add rbx, 0x230
dec rcx
cmp rsi, rbx
jne 0x140054d70
cmp rdx, r15
jbe 0x140058c20
mov rcx, r15
shl rcx, 6
mov rdx, qword [rax + rcx + 8]
mov r8, qword [rax + rcx + 0x10]
lea rcx, [rbp + 0x860]
call fcn.140054450
cmp qword [rbp + 0x860], 0
je 0x1400568e7
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 0x1400568c7
movzx eax, word [r14]
cmp eax, 0x5a4d
jne 0x1400568c7
mov edi, dword [r14 + 0x3c]
mov rax, rcx
sub rax, rdi
jb 0x1400568c7
cmp rax, 0x88
jb 0x1400568c7
cmp dword [r14 + rdi], 0x4550
jne 0x1400568c7
movzx eax, word [r14 + rdi + 0x18]
cmp eax, 0x20b
jne 0x1400568c7
movzx esi, word [r14 + rdi + 0x14]
cmp rsi, 0x70
jb 0x1400568c7
lea rbx, [rdi + 0x88]
add rsi, 0xffffffffffffff90
mov rax, rcx
sub rax, rbx
cmp rax, rsi
jb 0x1400568c7
mov qword [rbp + 0xc38], rcx
lea rdx, [r14 + rbx]
mov r9d, dword [r14 + rdi + 0x84]
lea rcx, [rbp + 0x860]
mov r8, rsi
call fcn.14005b2e0
cmp qword [rbp + 0x860], 0
mov rcx, qword [rbp + 0xc38]
jne 0x1400568c7
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 0x1400568c7
mov r8d, dword [r14 + rdi + 0xc]
test r8, r8
je 0x140055d57
mov rax, rdx
sub rax, r8
jb 0x1400568c7
mov r9d, dword [r14 + rdi + 0x10]
lea rcx, [r9 + r9]
lea rcx, [rcx + rcx*8]
cmp rax, rcx
jb 0x1400568c7
add rcx, r8
mov rax, rdx
sub rax, rcx
cmp rax, 4
jb 0x1400568c7
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 0x140055e98
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 0x140055df8
test rcx, rcx
je 0x140055078
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 [0x14009c050], rsi
cmp rsi, qword [0x14009c040]
jne 0x140055042
call fcn.140014750
mov r14, qword [0x14009c048]
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 [0x14009c050], 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 0x1400550e5
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 0x1400550df
lea r10, [rax + 1]
cmp r9, rdi
cmova r8, rax
cmovb rcx, r10
mov rax, r8
sub rax, rcx
ja 0x1400550b0
jmp 0x1400550e5
inc rax
mov rcx, rax
cmp rcx, rdx
ja 0x140058d2c
mov r15d, 3
test rcx, rcx
mov qword [rbp + 0xc78], r14
je 0x140055407
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 0x14005513e
add r12, 0xffffffffffffffe0
add rcx, 0x20
je 0x140055407
cmp qword [r12 + 0x18], rdx
jbe 0x140055189
cmp qword [r12 + 8], rdx
jbe 0x140055130
cmp rdi, qword [r12]
jbe 0x140055130
mov rcx, qword [r12 + 0x10]
mov rdx, qword [r14 + 0x1d0]
cmp rcx, rdx
jae 0x140058d38
imul rax, rcx, 0x218
add rax, qword [r14 + 0x1c8]
mov qword [rbp + 0x868], rax
mov ecx, 0x10
xor r13d, r13d
mov rax, r12
jmp 0x140055191
mov ecx, 8
mov r13b, 1
mov qword [rbp + rcx + 0x860], rax
mov r14, qword [rbp + 0x868]
test r14, r14
je 0x140055407
lea rcx, [rbp + 0x860]
mov rdx, r14
mov r15, qword [rbp + 0xcd8]
mov r8, r15
mov r9, rsi
call fcn.14001eb10
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.140020dd0
cmp byte [rbp + 0x58], 2
je 0x140055403
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 0x1400552af
lea rcx, [rbp + 0xab0]
call fcn.140013fe0
mov rax, qword [rbp + 0x1d8]
mov rcx, qword [rbp + 0x1e8]
movzx edx, byte [rax + 0x200]
cmp edx, 0x4b
je 0x1400552f0
cmp edx, 0x4c
jne 0x140055320
mov byte [rax + 0x200], 0x4b
mov qword [rax + 0x208], 0
jmp 0x140055310
mov r8, qword [rax + 0x208]
test r8, r8
je 0x140055310
mov rcx, qword [r8]
add rcx, 0x10
add r8, 8
mov dl, 2
mov rax, r8
jmp 0x140055319
mov rcx, qword [rcx]
add rcx, 0x10
xor edx, edx
xor r8d, r8d
jmp 0x14005534e
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.14001f030
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.140020dd0
mov r8d, 0xb8
mov rcx, r15
mov rdx, r12
call sub.msvcrt.dll_memcpy
cmp byte [rbp + 0x58], 2
jne 0x140055260
mov r15d, dword [rbp - 0x58]
mov rbx, qword [rbp + 0xc78]
add rbx, 8
cmp r15d, 5
je 0x140055ceb
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 0x140055557
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 0x14005555e
mov qword [rbp + 0xcd0], rsi
mov qword [rbp + 0xca8], rbx
mov rsi, rbx
shl rsi, 0x20
or rsi, r11
cmp eax, 2
jb 0x140055522
cmp qword [rbp + 0xcb8], 0
je 0x140055522
mov r8d, 8
mov rcx, qword [rbp + 0xc90]
mov rdx, qword [rbp + 0xc68]
call fcn.140002660
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 0x140055816
xor esi, esi
jmp 0x140055cba
mov rax, qword [rbp + 0xc88]
cmp qword [rbp + 0xc58], rax
je 0x1400555d8
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 0x1400555d0
mov rcx, qword [rbp + 0xc40]
cmp dword [rcx], 0x2f
jne 0x140055600
xor r10d, r10d
jmp 0x14005576a
mov rcx, qword [rbp + 0xc30]
mov rax, qword [rcx + 0x28]
test rax, rax
je 0x140055670
mov rdx, qword [rcx + 0x30]
mov rcx, qword [rbp + 0xc98]
movzx edi, word [rcx + 0x210]
jmp 0x140055674
mov rax, qword [rsi + 8]
mov qword [rbp + 0xcb0], rax
mov rax, qword [rbp + 0xc98]
cmp qword [rax + 0x1b0], 0
jne 0x140055713
lea rcx, [rbp + 0x860]
mov rdx, qword [rbp + 0xc40]
call fcn.14001d980
mov r13, qword [rbp + 0xc98]
lea rcx, [rbp - 0x58]
lea r8, [rbp + 0x860]
mov rdx, r13
mov r9, qword [rbp + 0xc10]
call fcn.140021300
cmp qword [r13 + 0x1b0], 0
je 0x1400556f2
lea rcx, [rbp - 0x58]
call fcn.140006470
jmp 0x140055713
mov di, 2
mov ecx, 3
mov qword [rbp + 0xc38], rcx
cmp qword [rbp + 0xcb8], 0
je 0x1400556d7
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.140002660
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 0x1400557de
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 0x140055740
mov rcx, qword [rbp + 0xcb0]
cmp rcx, qword [rax + 8]
jae 0x140055760
mov rax, qword [rax]
lea rcx, [rcx + rcx*2]
mov r10, qword [rax + rcx*8 + 8]
mov r11, qword [rax + rcx*8 + 0x10]
jmp 0x140055763
mov rax, qword [rbp + 0xc98]
cmp byte [rax + 0x1c0], 0x4b
jne 0x140055d3e
mov rax, qword [rax + 0x1c8]
test rax, rax
jne 0x140055720
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 0x1400557b1
mov rdx, qword [rsi + 0x20]
mov rcx, qword [rbp + 0xc98]
movzx edi, word [rcx + 0x210]
jmp 0x1400557b5
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 0x140055837
mov rcx, qword [rbp + 0xc78]
mov rdx, qword [rbp + 0xcd8]
call fcn.140059350
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 0x140055940
cmp ecx, 2
jne 0x140055cb0
mov rax, qword [rbp + 0xc88]
cmp qword [rbp + 0xc58], rax
je 0x1400559ab
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 0x14005592e
mov rcx, qword [rbp + 0xc40]
cmp dword [rcx], 0x2f
jne 0x140055a39
xor ecx, ecx
mov qword [rbp + 0xcd0], rcx
jmp 0x140055b83
cmp eax, 2
jb 0x140055968
cmp qword [rbp + 0xcb8], 0
je 0x140055968
mov r8d, 8
mov rcx, qword [rbp + 0xc90]
mov rdx, qword [rbp + 0xc68]
call fcn.140002660
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 0x140055c2e
mov rbx, r15
mov rax, qword [rbp + 0xc30]
mov r14, qword [rax + 0x28]
test r14, r14
je 0x140055a96
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 0x140055a0e
mov r8d, 8
mov rcx, qword [rbp + 0xc90]
mov rdx, qword [rbp + 0xc68]
mov esi, r11d
call fcn.140002660
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 0x140055beb
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 0x140055abe
mov rax, qword [rbp + 0xc48]
cmp qword [rax], 0
jne 0x140055b45
mov rax, qword [rbp + 0xc98]
cmp byte [rax + 0x1c0], 0x4b
jne 0x140055d39
mov rax, qword [rax + 0x1c8]
test rax, rax
jne 0x140055b45
jmp 0x140055b73
mov r11w, 2
mov edi, dword [rbp + 0xcc8]
mov dword [rbp + 0xca0], 3
cmp qword [rbp + 0xcb8], 0
jne 0x1400559ef
jmp 0x140055a0e
mov rcx, rax
mov rdx, qword [rbp + 0xc40]
call fcn.14001d980
mov rbx, qword [rbp + 0xc98]
lea rcx, [rbp - 0x58]
mov rdx, rbx
lea r8, [rbp + 0x860]
mov r9, qword [rbp + 0xc10]
call fcn.140021300
cmp qword [rbx + 0x1b0], 0
je 0x140055b13
lea rcx, [rbp - 0x58]
call fcn.140006470
mov rax, qword [rbp + 0xc48]
cmp qword [rax], 0
jne 0x140055b45
jmp 0x140055a6d
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 0x140055a6d
mov rcx, qword [rbp + 0xcd0]
cmp rcx, qword [rax + 8]
jae 0x140055b73
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 0x140055b7c
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 0x140055bbe
mov r15, qword [r15 + 0x20]
mov rax, qword [rbp + 0xc98]
movzx r11d, word [rax + 0x210]
jmp 0x140055bc3
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 0x140055c47
mov rcx, qword [rbp + 0xc78]
mov rdx, qword [rbp + 0xcd8]
call fcn.140059350
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 0x1400558a0
mov sil, 1
mov rbx, qword [rbp + 0xc78]
cmp eax, 2
jb 0x140055ce2
cmp qword [rbp + 0xcb8], 0
je 0x140055ce2
mov r8d, 8
mov rcx, qword [rbp + 0xc90]
mov rdx, qword [rbp + 0xc68]
call fcn.140002660
test sil, sil
jne 0x1400568e7
mov rcx, rbx
mov rdx, qword [rbp + 0xcd8]
call fcn.140059350
test rax, rax
je 0x1400568e7
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 0x1400568e7
mov sil, 1
jmp 0x140055d40
xor esi, esi
cmp qword [rbp + 0xcb8], 0
mov rbx, qword [rbp + 0xc78]
jne 0x140055cc9
jmp 0x140055ce2
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 0x140055eb7
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 0x140055e8a
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 0x140055de9
lea rbx, [r10 + rcx*2]
movzx edx, word [rbx + 0xc]
cmp edx, 0xfeff
movsx ecx, dx
cmovb ecx, edx
test ecx, ecx
jle 0x140055de9
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 0x140056728
test rcx, rcx
je 0x140056728
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 0x140055d8a
lea rcx, [rbp + 0x860]
call fcn.140014ae0
jmp 0x140055d83
cmp qword [rbp + 0xcd8], 2
jae 0x1400566a2
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 0x1400568c7
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.1400591d0
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, [0x1400a33cd]
lea rcx, [rbp + 0xab0]
mov r8d, 0xb
call fcn.1400591d0
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, [0x1400a33d8]
lea rcx, [rbp + 0xab0]
mov r8d, 0xe
call fcn.1400591d0
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, [0x1400a33f5]
lea rcx, [rbp + 0xab0]
mov r8d, 0xb
call fcn.1400591d0
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, [0x1400a3400]
lea rcx, [rbp + 0xab0]
mov r8d, 0xb
call fcn.1400591d0
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, [0x1400a340b]
lea rcx, [rbp + 0xab0]
mov r8d, 0xf
call fcn.1400591d0
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, [0x1400a344f]
lea rcx, [rbp + 0xab0]
mov r8d, 0xa
call fcn.1400591d0
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, [0x1400a3459]
lea rcx, [rbp + 0xab0]
mov r8d, 0x12
call fcn.1400591d0
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, [0x1400a347a]
lea rcx, [rbp + 0xab0]
mov r8d, 0xc
call fcn.1400591d0
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, [0x1400a341a]
lea rcx, [rbp + 0xab0]
mov r8d, 0xa
call fcn.1400591d0
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, [0x1400a3424]
lea rcx, [rbp + 0xab0]
mov r8d, 0xf
call fcn.1400591d0
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, [0x1400a3433]
lea rcx, [rbp + 0xab0]
mov r8d, 0xd
call fcn.1400591d0
mov rsi, rax
mov rbx, rdx
lea rdx, [0x1400a3440]
lea rcx, [rbp + 0xab0]
mov r8d, 0xf
call fcn.1400591d0
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 [str.1p_r_]
movzx eax, byte [rax]
mov ecx, 0x108
mov edx, 8
call fcn.140002650
test rax, rax
je 0x140058d44
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 0x140056753
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 0x14005658f
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 0x140056604
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0x7e8]
mov r8, qword [rbp + 0xcc8]
call fcn.14001c2e0
cmp byte [rbp + 0x889], 3
je 0x140056840
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 0x140056557
lea rcx, [rbp + 0xb88]
call fcn.140014ae0
jmp 0x140056549
cmp rsi, 2
mov rbx, qword [rbp + 0xca8]
jb 0x140056753
mov rcx, qword [rbp + 0xb90]
cmp rsi, 0x15
jae 0x140056744
add qword [rbp + 0xcd8], rcx
lea r8, [rcx + 0x10]
mov eax, 0x10
mov r9, rcx
mov rbx, qword [rbp + 0xca8]
jmp 0x14005666b
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 0x140056753
mov rdx, r8
mov r8, qword [r9 + 0x10]
cmp r8, qword [r9]
jae 0x140056653
mov r9, qword [r9 + 0x18]
mov r11, rax
movups xmm0, xmmword [rcx + r11 - 0x10]
movups xmmword [rcx + r11], xmm0
cmp r11, 0x10
je 0x140056642
lea r10, [r11 - 0x10]
cmp r8, qword [rcx + r11 - 0x20]
mov r11, r10
jb 0x14005667e
add r10, rcx
jmp 0x140056645
mov rcx, qword [rbp + 0x868]
cmp qword [rbp + 0xcd8], 0x15
jae 0x140057d29
mov rsi, qword [rbp + 0xcd8]
shl rsi, 4
add rsi, rcx
lea r8, [rcx + 0x10]
mov eax, 0x10
mov r9, rcx
jmp 0x1400566f1
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 0x140055e98
mov rdx, r8
mov r8, qword [r9 + 0x10]
cmp r8, qword [r9]
jae 0x1400566dd
mov r9, qword [r9 + 0x18]
mov r11, rax
movups xmm0, xmmword [rcx + r11 - 0x10]
movups xmmword [rcx + r11], xmm0
cmp r11, 0x10
je 0x1400566d3
lea r10, [r11 - 0x10]
cmp r8, qword [rcx + r11 - 0x20]
mov r11, r10
jb 0x140056704
add r10, rcx
jmp 0x1400566d6
mov rdx, qword [rbp + 0x860]
test rdx, rdx
je 0x1400568c7
mov rcx, qword [rbp + 0x868]
jmp 0x1400568b8
mov rdx, rsi
call fcn.1400078a0
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.140018730
mov rax, qword [rbp + 0x860]
cmp rax, 3
jne 0x140056902
mov rsi, qword [rbp + 0xbe8]
mov rdi, qword [rbp + 0xbf0]
inc rdi
mov rcx, rsi
cmp rdi, 1
je 0x1400567fd
lea r15, [rcx + 0x218]
dec rdi
call fcn.140004180
mov rcx, r15
jmp 0x1400567e3
mov rax, qword [rbp + 0xbe0]
test rax, rax
je 0x14005681e
imul rdx, rax, 0x218
mov r8d, 8
mov rcx, rsi
call fcn.140002660
mov rdx, qword [rbp + 0xc18]
test rdx, rdx
je 0x140056840
mov rcx, qword [rbp + 0xc20]
shl rdx, 5
mov r8d, 8
call fcn.140002660
mov rdx, qword [rbp + 0xb88]
test rdx, rdx
je 0x140056862
mov rcx, qword [rbp + 0xb90]
shl rdx, 4
mov r8d, 8
call fcn.140002660
mov rax, qword [rbp + 0xba8]
lock dec qword [rax]
jne 0x14005687b
lea rcx, [rbp + 0xba8]
call fcn.140013fe0
mov rdx, qword [rbp + 0x800]
lea rax, [rdx*2]
test rax, rax
je 0x1400568a5
mov rcx, qword [rbp + 0x808]
shl rdx, 4
mov r8d, 8
call fcn.140002660
mov rdx, qword [rbp + 0xab0]
test rdx, rdx
je 0x1400568c7
mov rcx, qword [rbp + 0xab8]
shl rdx, 4
mov r8d, 8
call fcn.140002660
lea rcx, [rbp + 0x738]
call fcn.140005fd0
mov rcx, r14
call sub.KERNEL32.dll_UnmapViewOfFile
mov rcx, qword [rbp + 0xc60]
call sub.KERNEL32.dll_CloseHandle
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 0x140056994
lea rdi, [rbp + 0x878]
lea rbx, [rbp + 0x520]
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0xb10]
call fcn.140018730
mov rax, qword [rbp + 0x860]
cmp rax, 3
je 0x1400567cf
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 0x140057c50
test rax, rax
jne 0x140056970
mov rax, rcx
or rax, 4
cmp rax, 5
je 0x140056970
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.140018d30
cmp dword [rbp + 0x860], 2
je 0x140056962
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.0x1400579db.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 0x140056b21
cmp bl, 2
jae 0x140057d59
movzx edi, bl
mov ebx, edi
and ebx, 0x7f
shl rbx, cl
or rax, rbx
test dil, dil
jns 0x140056b48
add ecx, 7
inc r10
inc r11
cmp r10, 1
jne 0x140056b0e
jmp 0x140057d6c
mov qword [rbp + 0xb30], r11
neg r10
mov qword [rbp + 0xb38], r10
test rax, rax
jne 0x140056c16
lock dec qword [rdx]
jne 0x140056b74
lea rcx, [rbp + 0x668]
call fcn.140014080
cmp dword [rbp + 0x570], 0x2f
je 0x140056962
mov rdx, qword [rbp + 0x5b0]
test rdx, rdx
je 0x140056ba3
mov rcx, qword [rbp + 0x5b8]
shl rdx, 2
mov r8d, 2
call fcn.140002660
mov rax, qword [rbp + 0x5c8]
test rax, rax
je 0x140056bc9
mov rcx, qword [rbp + 0x5d0]
shl rax, 3
lea rdx, [rax + rax*2]
mov r8d, 8
call fcn.140002660
mov rdx, qword [rbp + 0x5e0]
test rdx, rdx
je 0x140056beb
mov rcx, qword [rbp + 0x5e8]
shl rdx, 2
mov r8d, 2
call fcn.140002660
mov rdx, qword [rbp + 0x5f8]
test rdx, rdx
je 0x140056962
mov rcx, qword [rbp + 0x600]
shl rdx, 6
mov r8d, 8
call fcn.140002660
jmp 0x140056962
lea rcx, [rax - 1]
cmp rcx, qword [rdx + 0x20]
jae 0x140056c2a
imul rcx, rcx, 0x70
add rcx, qword [rdx + 0x18]
jmp 0x140056ca5
mov rcx, qword [rdx + 0x28]
test rcx, rcx
je case.0x1400579db.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 0x140056c87
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 0x140056c51
movzx r10d, dil
test r10d, r10d
jne 0x140056c8a
jmp 0x140056c9e
mov r8, r10
sub rdx, 1
jb case.0x1400579db.3
mov rcx, qword [rcx + r8*8 + 0x538]
jmp 0x140056c3b
sub rcx, r9
add rcx, 0xffffffffffffff90
cmp byte [rcx + 0x6a], 1
jne 0x140056cb6
mov qword [rbp + 0xb50], 1
call fcn.140064410
mov qword [rbp + 0xcb0], rax
mov qword [rbp + 0xcc0], rdx
cmp qword [rbp + 0xcc0], 0
je 0x14005727f
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 0x140056deb
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 0x140057368
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.140016510
mov rax, qword [rbp + 0x860]
cmp rax, 0x2e
je case.0x1400579db.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 0x140056f1b
cmp eax, 0x11
je 0x140056fe0
cmp eax, 0x12
jne 0x140056dda
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0xbb8]
call fcn.140017db0
mov rax, qword [rbp + 0x860]
test rax, rax
je 0x140057101
cmp eax, 7
je 0x140057120
cmp eax, 0xc
jne 0x140056dda
mov rax, qword [rbp + 0xc48]
cmp qword [rbp + 0xcd0], rax
jb case.0x1400579db.3
mov rax, qword [rbp + 0x868]
imul rax, qword [rbp + 0xc58]
mov rcx, qword [rbp + 0xc30]
sub rcx, rax
jb case.0x1400579db.3
mov rdx, qword [rbp + 0xc58]
dec edx
cmp edx, 7
ja case.0x1400579db.3
lea r8, [0x1400a2440]
movsxd rdx, dword [r8 + rdx*4]
add rdx, r8
jmp rdx
cmp qword [rbp + 0xc30], rax
je case.0x1400579db.3
mov rcx, qword [rbp + 0xc00]
movzx eax, byte [rcx + rax]
jmp 0x140057267
cmp eax, 0x13
je 0x14005707e
cmp eax, 0x55
jne 0x140056dda
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0xbb8]
call fcn.140017db0
mov rcx, qword [rbp + 0x860]
mov rax, qword [rbp + 0x868]
cmp rcx, 0x16
je 0x1400570b5
cmp ecx, 0x18
jne 0x1400570d4
mov rcx, qword [rbp + 0xc10]
cmp qword [rbp + 0xc98], rcx
jb case.0x1400579db.3
imul rax, qword [rbp + 0x7b0]
mov rcx, qword [rbp + 0x7a8]
sub rcx, rax
jb case.0x1400579db.3
cmp dword [rbp + 0xb0c], 0x800
jne 0x14005713f
cmp rcx, 7
jbe case.0x1400579db.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 0x140057153
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0xbb8]
call fcn.140017db0
mov rax, qword [rbp + 0x860]
test rax, rax
je 0x1400570e2
cmp eax, 0xc
jne 0x140056dda
mov rax, qword [rbp + 0xc48]
cmp qword [rbp + 0xcd0], rax
jb case.0x1400579db.3
mov rax, qword [rbp + 0x868]
imul rax, qword [rbp + 0xc58]
mov rcx, qword [rbp + 0xc30]
sub rcx, rax
jb case.0x1400579db.3
mov rdx, qword [rbp + 0xc58]
dec edx
cmp edx, 7
ja case.0x1400579db.3
lea r8, [0x1400a2460]
movsxd rdx, dword [r8 + rdx*4]
add rdx, r8
jmp rdx
cmp qword [rbp + 0xc30], rax
je case.0x1400579db.3
mov rcx, qword [rbp + 0xc00]
movzx eax, byte [rcx + rax]
jmp 0x1400571e4
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0xbb8]
call fcn.140017db0
mov rax, qword [rbp + 0x860]
cmp rax, 0x26
jne 0x140056dc1
movzx ecx, word [rbp + 0x868]
mov word [rbp + 0xbde], cx
jmp 0x140056dc1
add rax, qword [rbp + 0x7a0]
mov ecx, 1
mov qword [rbp + 0xcb8], rcx
mov qword [rbp + 0xc40], rax
jmp 0x140056dda
xor eax, eax
mov qword [rbp + 0xcb8], rax
jmp 0x140056dda
mov eax, 1
mov qword [rbp + 0xc90], rax
mov rax, qword [rbp + 0x868]
mov qword [rbp + 0xc08], rax
jmp 0x140056dda
mov eax, 1
mov qword [rbp + 0xc68], rax
mov rax, qword [rbp + 0x868]
mov qword [rbp + 0xbb0], rax
jmp 0x140056dda
mov eax, 1
mov qword [rbp + 0xb28], rax
mov rax, qword [rbp + 0x868]
mov qword [rbp + 0x7b8], rax
jmp 0x140056dda
cmp rcx, 3
jbe case.0x1400579db.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 0x140056dda
cmp rcx, 1
jbe case.0x1400579db.3
mov rcx, qword [rbp + 0xc00]
movzx eax, word [rcx + rax]
jmp 0x1400571e4
cmp rcx, 3
jbe case.0x1400579db.3
mov rcx, qword [rbp + 0xc00]
mov eax, dword [rcx + rax]
jmp 0x1400571e4
cmp rcx, 8
jb case.0x1400579db.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 0x140056dda
cmp rcx, 1
jbe case.0x1400579db.3
mov rcx, qword [rbp + 0xc00]
movzx eax, word [rcx + rax]
jmp 0x140057267
cmp rcx, 3
jbe case.0x1400579db.3
mov rcx, qword [rbp + 0xc00]
mov eax, dword [rcx + rax]
jmp 0x140057267
cmp rcx, 8
jb case.0x1400579db.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 0x140056dda
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 0x1400572f2
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 0x140057476
lea r8, [rdi + 1]
cmp r9, rsi
cmova r10, rdi
cmovb rcx, r8
mov rdi, r10
sub rdi, rcx
ja 0x1400572c1
cmp qword [rbp + 0xc90], 0
je 0x14005752a
cmp qword [rbp + 0xc68], 0
je 0x1400574ac
mov rax, qword [rbp + 0xbb0]
cmp qword [rbp + 0xc08], rax
jae 0x14005752a
mov rdi, qword [rbp + 0xc28]
cmp rdi, qword [rbp + 0xc18]
jne 0x14005733e
lea rcx, [rbp + 0xc18]
call fcn.140014a30
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 0x140057507
cmp qword [rbp + 0xcb8], 0
je 0x1400572a3
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.0x1400579db.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.14001c590
mov rax, qword [rbp + 0xbb8]
cmp rax, 2
jne 0x140057b88
mov rax, qword [rbp + 0xbc0]
mov qword [rbp + 0xcb0], rax
cmp al, 0x4b
jne case.0x1400579db.3
mov rax, qword [rbp + 0xcb0]
shr eax, 8
jmp 0x14005752c
lea rcx, [rdi - 1]
cmp rcx, rdx
jae 0x140057781
inc rdi
lea rcx, [rax + r8]
add rcx, 0xfffffffffffffff0
cmp rdi, 1
je 0x14005778a
dec rdi
lea r8, [rcx - 0x10]
cmp qword [rcx], rsi
mov rcx, r8
je 0x14005748e
jmp 0x14005778c
cmp qword [rbp + 0xb28], 0
je 0x14005752a
mov rax, qword [rbp + 0x7b8]
mov rcx, qword [rbp + 0xc08]
lea rbx, [rax + rcx]
cmp rcx, rbx
jae 0x14005752a
mov rdi, qword [rbp + 0xc28]
cmp rdi, qword [rbp + 0xc18]
jne 0x1400574e9
lea rcx, [rbp + 0xc18]
call fcn.140014a30
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 0x14005752c
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 0x14005767f
cmp qword [rbp + 0x570], 0x2f
je 0x14005767f
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0x570]
call fcn.14001d980
lea rcx, [rbp + 0xbb8]
lea rdx, [rbp + 0x510]
lea r8, [rbp + 0x860]
mov r9, qword [rbp + 0xcd8]
call fcn.140021300
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 0x14005767f
mov rax, qword [rbp + 0xb50]
mov qword [rbp + 0xcc0], rax
test rax, rax
je 0x14005767f
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 0x14005765c
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 0x14005767f
mov rax, qword [rbp + 0xcb0]
movups xmm6, xmmword [rax + rdi + 0x10]
cmp rbx, qword [rbp + 0xc18]
jne 0x140057618
lea rcx, [rbp + 0xc18]
call fcn.140014a30
jmp 0x140057618
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 0x14005771a
lea rcx, [rbp + 0xbe0]
call fcn.140014dc0
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.140018730
mov rax, qword [rbp + 0x860]
cmp rax, 3
lea rdi, [rbp + 0x878]
lea rbx, [rbp + 0x520]
jne 0x140056994
jmp 0x1400567cf
test rdi, rdi
jne 0x140058d55
xor edi, edi
cmp rdi, rdx
jne 0x140057798
xor eax, eax
jmp 0x14005753c
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 0x1400577c9
add rdi, 0x10
cmp rdi, qword [rbp + 0xc48]
je 0x140057543
cmp qword [rdi], rsi
jne 0x140057543
mov r8, qword [rdi + 8]
mov rax, qword [rbp + 0xca0]
sub rax, r8
jb case.0x1400579db.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.14001c2e0
cmp byte [rbp + 0x889], 3
je case.0x1400579db.3
mov rax, qword [rbp + 0x868]
mov qword [rbp + 0xcc0], rax
test rax, rax
je 0x1400577b8
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 0x1400578b1
cmp qword [rbp + 0xcc0], 4
jb case.0x1400579db.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 0x140057afd
mov rax, qword [rbp + 0xcc0]
cmp rax, qword [rbp + 0xc68]
jb 0x1400577b8
cmp dword [rbp + 0xc58], 8
ja case.0x1400579db.3
mov eax, dword [rbp + 0xc58]
lea rcx, [0x1400a2480]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov rax, qword [rbp + 0xc58]
jmp 0x1400579bb
cmp qword [rbp + 0xcc0], 0
je case.0x1400579db.3
dec qword [rbp + 0xcc0]
mov rcx, qword [rbp + 0xcb8]
movzx eax, byte [rcx]
inc rcx
jmp 0x140057961
cmp qword [rbp + 0xcc0], 1
jbe case.0x1400579db.3
add qword [rbp + 0xcc0], 0xfffffffffffffffe
mov rcx, qword [rbp + 0xcb8]
movzx eax, word [rcx]
add rcx, 2
jmp 0x140057961
cmp qword [rbp + 0xcc0], 3
jbe case.0x1400579db.3
add qword [rbp + 0xcc0], 0xfffffffffffffffc
mov rcx, qword [rbp + 0xcb8]
mov eax, dword [rcx]
add rcx, 4
mov qword [rbp + 0xcb8], rcx
jmp 0x1400579bb
cmp qword [rbp + 0xcc0], 8
jb case.0x1400579db.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.0x1400579db.3
lea rdx, [0x1400a24a4]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
cmp qword [rbp + 0xcc0], 2
jb case.0x1400579db.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 0x14005789a
cmp qword [rbp + 0xcc0], 4
jb case.0x1400579db.3
mov rcx, qword [rbp + 0xcc0]
and rcx, 0xfffffffffffffffc
cmp rcx, 4
je case.0x1400579db.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 0x14005789a
cmp qword [rbp + 0xcc0], 8
jb case.0x1400579db.3
mov rcx, qword [rbp + 0xcc0]
and rcx, 0xfffffffffffffff8
cmp rcx, 8
je case.0x1400579db.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 0x1400578b1
test rbx, rbx
je 0x140057b75
mov rax, qword [rbp + 0xc28]
mov qword [rbp + 0xcb0], rax
cmp rax, qword [rbp + 0xc18]
jne 0x140057b25
lea rcx, [rbp + 0xc18]
call fcn.140014a30
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 0x1400578b1
jmp 0x1400577b8
xor ecx, ecx
mov qword [rbp + 0xcb0], rcx
jmp 0x140057bfd
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.14001c590
mov rax, qword [rbp + 0xbb8]
cmp rax, 2
je 0x140057451
cmp rax, 1
jne 0x140057c42
mov rax, qword [rbp + 0xbc0]
mov rbx, qword [rbp + 0xbc8]
mov qword [rbp + 0xcc0], rax
cmp rax, rbx
jae 0x140057bd9
mov rdi, qword [rbp + 0xc28]
cmp rdi, qword [rbp + 0xc18]
jne 0x140057b93
lea rcx, [rbp + 0xc18]
call fcn.140014a30
jmp 0x140057b93
mov rax, qword [rbp + 0xcb0]
and al, 1
jmp 0x14005752c
mov rsi, qword [rbp + 0xc20]
mov rax, qword [rbp + 0xc28]
mov rcx, rax
mov qword [rbp + 0xcd8], rax
cmp rax, 2
jb 0x140057e73
cmp qword [rbp + 0xcd8], 0x15
jae 0x140057e3c
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 0x140057cd0
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 0x140057e5e
mov rcx, rdx
mov rdx, qword [r8 + 0x20]
cmp rdx, qword [r8]
jae 0x140057cbc
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 0x140057c9f
lea r8, [r9 - 0x20]
cmp rdx, qword [rsi + r9 - 0x40]
mov r9, r8
jb 0x140057cf6
add r8, rsi
jmp 0x140057ca2
mov rdx, qword [rbp + 0xcd8]
call fcn.14000d040
mov rax, r14
mov r10, qword [rbp + 0xca8]
mov r11, qword [rbp + 0xca0]
mov rsi, qword [rbp + 0xc88]
mov rdi, qword [rbp + 0xc78]
jmp 0x140055eb7
mov qword [rbp + 0xb30], r11
neg r10
mov qword [rbp + 0xb38], r10
jmp case.0x1400579db.3
add r8, r9
mov qword [rbp + 0xb30], r8
mov qword [rbp + 0xb38], 0
mov rax, qword [rbp + 0x668]
lock dec qword [rax]
jne 0x140057d9a
lea rcx, [rbp + 0x668]
call fcn.140014080
cmp dword [rbp + 0x570], 0x2f
je 0x1400567cf
mov rdx, qword [rbp + 0x5b0]
test rdx, rdx
je 0x140057dc9
mov rcx, qword [rbp + 0x5b8]
shl rdx, 2
mov r8d, 2
call fcn.140002660
mov rax, qword [rbp + 0x5c8]
test rax, rax
je 0x140057def
mov rcx, qword [rbp + 0x5d0]
shl rax, 3
lea rdx, [rax + rax*2]
mov r8d, 8
call fcn.140002660
mov rdx, qword [rbp + 0x5e0]
test rdx, rdx
je 0x140057e11
mov rcx, qword [rbp + 0x5e8]
shl rdx, 2
mov r8d, 2
call fcn.140002660
mov rdx, qword [rbp + 0x5f8]
test rdx, rdx
je 0x1400567cf
mov rcx, qword [rbp + 0x600]
shl rdx, 6
mov r8d, 8
call fcn.140002660
jmp 0x1400567cf
mov rcx, rsi
mov rdx, qword [rbp + 0xcd8]
call fcn.140007640
mov rcx, qword [rbp + 0xcd8]
shl rcx, 5
mov rax, rsi
add rax, rcx
jmp 0x140057e8b
mov rsi, qword [rbp + 0xc20]
mov rax, qword [rbp + 0xc28]
mov qword [rbp + 0xcd8], rax
cmp qword [rbp + 0xcd8], 0
je 0x140057ead
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 0x140057e90
jmp 0x140057eb6
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 0x140057f02
mov rcx, qword [rbp + 0xb90]
shl rdx, 4
mov r8d, 8
call fcn.140002660
movabs rax, 0x8000000000000000
cmp qword [rbp + 0xcc8], rax
je 0x140056862
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 0x140058033
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.140018730
mov rax, qword [rbp + 0x860]
cmp rax, 3
jne 0x1400580f2
lea rcx, [rbp + 0xbb8]
call fcn.140004710
mov r12, qword [rbp + 0xbe8]
mov rdi, qword [rbp + 0xbf0]
inc rdi
mov rcx, r12
cmp rdi, 1
je 0x140057feb
lea r15, [rcx + 0x218]
dec rdi
call fcn.140004180
mov rcx, r15
jmp 0x140057fd1
mov rax, qword [rbp + 0xbe0]
test rax, rax
je 0x14005800c
imul rdx, rax, 0x218
mov r8d, 8
mov rcx, r12
call fcn.140002660
cmp qword [rbp + 0xcc8], 0
je 0x140056862
mov rdx, qword [rbp + 0xcc8]
shl rdx, 5
mov r8d, 8
mov rcx, rsi
jmp 0x14005685d
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 0x1400582ad
mov rbx, qword [rbp + 0xcc8]
shl rbx, 5
cmp qword [rbp + 0xcd8], 0
je 0x140058290
mov r9, qword [rbp + 0xcd8]
shl r9, 5
mov r8d, 8
mov rcx, rsi
mov rdx, rbx
mov qword [rbp + 0xca0], r9
call fcn.140002670
mov qword [rbp + 0xc98], rax
test rax, rax
jne 0x1400582ad
mov ecx, 8
mov rdx, qword [rbp + 0xca0]
call fcn.140077350
jmp 0x140058d61
add rbx, 0x10
mov ecx, 8
mov qword [rbp + 0xcd0], rcx
xor edi, edi
jmp 0x140058134
cmp rax, 2
je 0x14005824b
lea rcx, [rbp + 0x860]
lea rdx, [rbp + 0x7c0]
call fcn.140018730
mov rax, qword [rbp + 0x860]
cmp rax, 3
je 0x140057fb1
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 0x140058106
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.140018d30
cmp dword [rbp + 0x510], 2
je 0x140058110
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 0x14005821c
lea rcx, [rbp + 0xbb8]
call fcn.140014b90
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 0x140058110
mov rdx, qword [rbp + 0xbb8]
movabs rax, 0x8000000000000000
mov rcx, rdx
mov qword [rbp + 0xc80], rdx
cmp rdx, rax
je 0x140057fbd
mov rax, qword [rbp + 0xc80]
mov qword [rbp + 0xb10], rax
mov rax, qword [rbp + 0xcd0]
mov qword [rbp + 0xb18], rax
jmp 0x140058060
mov eax, 8
mov qword [rbp + 0xc98], rax
mov r8d, 8
mov rcx, rsi
mov rdx, rbx
call fcn.140002660
mov rax, qword [rbp + 0xbe0]
mov rbx, qword [rbp + 0xbe8]
mov rcx, qword [rbp + 0xbf0]
mov qword [rbp + 0xca0], rcx
cmp rax, rcx
jbe 0x140058330
imul rdx, rax, 0x218
cmp qword [rbp + 0xca0], 0
je 0x14005831d
imul r9, qword [rbp + 0xca0], 0x218
mov r8d, 8
mov rcx, rbx
mov qword [rbp + 0xc70], r9
call fcn.140002670
mov rbx, rax
test rax, rax
jne 0x140058330
mov ecx, 8
mov rdx, qword [rbp + 0xc70]
call fcn.140077350
jmp 0x140058d61
mov r8d, 8
mov rcx, rbx
call fcn.140002660
mov ebx, 8
cmp qword [rbp + 0xc80], rdi
jbe 0x1400583a9
imul rdx, qword [rbp + 0xc80], 0x1b0
test rdi, rdi
je 0x14005838b
imul r9, rdi, 0x1b0
mov r8d, 8
mov rcx, qword [rbp + 0xcd0]
mov qword [rbp + 0xc80], r9
call fcn.140002670
mov qword [rbp + 0xcd0], rax
test rax, rax
jne 0x1400583a9
mov ecx, 8
mov rdx, qword [rbp + 0xc80]
call fcn.140077350
jmp 0x140058d61
mov r8d, 8
mov rcx, qword [rbp + 0xcd0]
call fcn.140002660
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 0x14005883d
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 0x1400568c7
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 [0x14009c050]
mov rbx, qword [0x14009c040]
cmp rdi, 4
jne 0x1400587b5
mov qword [0x14009c050], 3
mov edx, 0x690
add rdx, qword [0x14009c048]
lea rcx, [rbp + 0x860]
mov r8d, 0x230
call sub.msvcrt.dll_memcpy
mov edi, 3
movabs rax, 0x8000000000000000
cmp qword [rbp + 0x868], rax
je 0x1400587b5
lea rcx, [rbp + 0x868]
call fcn.140005df0
mov rdi, qword [0x14009c050]
mov rbx, qword [0x14009c040]
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 0x1400587e2
call fcn.140014750
mov r14, qword [0x14009c048]
test rdi, rdi
je 0x140058d07
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 [0x14009c050], rdi
jne 0x140055078
lea r8, [0x1400a7b48]
xor ecx, ecx
xor edx, edx
call fcn.1400842d0
lea rdx, [0x1400a33e6]
lea rcx, [rbp + 0x800]
mov r8d, 0xf
call fcn.1400591d0
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, [0x1400a346b]
lea rcx, [rbp + 0x800]
mov r8d, 0xf
call fcn.1400591d0
mov qword [rbp + 0xc10], rax
mov qword [rbp + 0xc48], rdx
lea rdx, [0x1400a7a60]
lea rcx, [rbp + 0x800]
mov r8d, 0x11
call fcn.1400591d0
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, [0x1400a7a71]
lea rcx, [rbp + 0x800]
mov r8d, 0xf
call fcn.1400591d0
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, [0x1400a7a80]
lea rcx, [rbp + 0x800]
mov r8d, 0xf
call fcn.1400591d0
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, [0x1400a7ac3]
lea rcx, [rbp + 0x800]
mov r8d, 0xe
call fcn.1400591d0
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, [0x1400a7ad1]
lea rcx, [rbp + 0x800]
mov r8d, 0x16
call fcn.1400591d0
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, [0x1400a7a8f]
lea rcx, [rbp + 0x800]
mov r8d, 0xe
call fcn.1400591d0
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, [0x1400a7a9d]
lea rcx, [rbp + 0x800]
mov r8d, 0x13
call fcn.1400591d0
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, [0x1400a7ab0]
lea rcx, [rbp + 0x800]
mov r8d, 0x13
call fcn.1400591d0
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, [0x1400a7ae7]
lea rcx, [rbp + 0x800]
mov r8d, 0x10
call fcn.1400591d0
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.14001b6b0
movzx eax, byte [rbp + 0x860]
mov byte [rbp + 0xcd8], al
cmp al, 0x16
je 0x140058be8
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.14001b6b0
movzx esi, byte [rbp + 0x860]
cmp sil, 0x16
jne 0x140058c2f
cmp qword [rbp + 0xcc8], 0
je 0x140058c0f
mov rcx, qword [rbp + 0x808]
mov rdx, qword [rbp + 0xcc8]
shl rdx, 4
mov r8d, 8
call fcn.140002660
lea rcx, [rbp + 0x768]
call fcn.140004040
jmp 0x1400568a5
lea r8, [0x1400a7b30]
mov rcx, r15
call fcn.1400842d0
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 0x140058425
mov rcx, qword [rbp + 0x808]
mov rdx, qword [rbp + 0xcc8]
shl rdx, 4
mov r8d, 8
call fcn.140002660
jmp 0x140058425
lea rdx, [rbp + 0x860]
mov r8d, 0x230
mov rcx, r14
call sub.msvcrt.dll_memcpy
mov qword [0x14009c050], 1
jmp 0x140055078
lea r8, str._rust_deps_addr2line_0.22.0_srclib.rs
call fcn.14008a3c0
lea r8, str._rust_deps_addr2line_0.22.0_srclib.rs
call fcn.1400842d0
mov ecx, 8
mov edx, 0x108
call fcn.140077370
jmp 0x140058d61
lea r8, str._rust_deps_addr2line_0.22.0_srclib.rs
call fcn.1400842d0
ud2