Function at 0x1400c5bd0
Capabilities:
Encode data using xor
Encrypt data using chaskey
Hash data using fnv

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xe38
movdqa xmmword [rsp + 0xe20], xmm10
movdqa xmmword [rsp + 0xe10], xmm9
movdqa xmmword [rsp + 0xe00], xmm8
movaps xmmword [rsp + 0xdf0], xmm7
movdqa xmmword [rsp + 0xde0], xmm6
mov qword [rsp + 0xcf8], rdx
mov rdx, rcx
movabs rsi, 0x8000000000000000
movzx eax, byte [rcx + 0x1d0]
test eax, eax
mov qword [rsp + 0x88], rcx
je 0x1400c5c6e
cmp eax, 3
jne 0x1400cbf52
lea rsi, [rdx + 0x1c8]
movzx eax, byte [rdx + 0x1c8]
test eax, eax
je 0x1400c5e5d
cmp eax, 3
jne 0x1400cbf52
mov rbx, qword [rdx + 0x1c0]
jmp 0x1400c8511
lea rcx, [rsp + 0x210]
mov r8d, 0x198
call sub.msvcrt.dll_memcpy
mov r14, qword [rsp + 0x368]
test r14, r14
je 0x1400c5e69
mov r12b, 1
xor ebp, ebp
mov rbx, r14
cmp qword [rsp + 0x260], 0
je 0x1400c5cbb
mov r8, qword [rsp + 0x258]
mov rcx, qword [0x140206128]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rsi, qword [rsp + 0x238]
test rsi, rsi
je 0x1400c5d15
mov rdi, qword [rsp + 0x230]
add rdi, 0x30
jmp 0x1400c5cfb
mov rax, qword [rdi - 0x18]
mov rdx, qword [rdi - 0x10]
mov r8, qword [rdi - 8]
mov rcx, rdi
call qword [rax + 0x10]
add rdi, 0x68
dec rsi
je 0x1400c5d15
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x1400c5ce0
lea rcx, [rdi + 0x28]
mov rdx, qword [rdi + 0x18]
mov r8, qword [rdi + 0x20]
call qword [rax + 0x10]
jmp 0x1400c5ce0
cmp qword [rsp + 0x228], 0
je 0x1400c5d36
mov r8, qword [rsp + 0x230]
mov rcx, qword [0x140206128]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rsi, qword [rsp + 0x250]
test rsi, rsi
je 0x1400c5d6b
mov rdi, qword [rsp + 0x248]
add rdi, 0x38
nop
mov rax, qword [rdi - 0x18]
mov rdx, qword [rdi - 0x10]
mov r8, qword [rdi - 8]
mov rcx, rdi
call qword [rax + 0x10]
add rdi, 0x48
dec rsi
jne 0x1400c5d50
cmp qword [rsp + 0x240], 0
je 0x1400c5d8c
mov r8, qword [rsp + 0x248]
mov rcx, qword [0x140206128]
xor edx, edx
call sub.kernel32.dll_HeapFree
test r14, r14
je 0x1400c5f29
mov rcx, qword [rsp + 0x290]
mov rdx, qword [rsp + 0x298]
call fcn.14006f980
cmp qword [rsp + 0x288], 0
je 0x1400c5dcb
mov r8, qword [rsp + 0x290]
mov rcx, qword [0x140206128]
xor edx, edx
call sub.kernel32.dll_HeapFree
cmp qword [rsp + 0x270], 0
jne 0x1400c5e0e
mov rdi, qword [rsp + 0x278]
mov rsi, qword [rsp + 0x280]
mov rcx, rdi
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x1400c5e0e
cmp qword [rsi + 0x10], 0x11
jb 0x1400c5dfd
mov rdi, qword [rdi - 8]
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rdi
call sub.kernel32.dll_HeapFree
mov rsi, qword [rsp + 0x2b0]
test rsi, rsi
je 0x1400c5e41
mov rdi, qword [rsp + 0x2a8]
xor r14d, r14d
nop word cs:[rax + rax]
mov rcx, qword [rdi + r14*8]
inc r14
call sub.crypt32.dll_CertFreeCertificateContext
cmp rsi, r14
jne 0x1400c5e30
cmp qword [rsp + 0x2a0], 0
je 0x1400c5fe8
mov rdi, qword [rsp + 0x2a8]
jmp 0x1400c5fd7
mov rbx, qword [rdx + 0x1b8]
jmp 0x1400c850a
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x1a0], rax
movdqu xmm0, xmmword [rsp + 0x288]
movdqa xmmword [rsp + 0x190], xmm0
cmp byte [rsp + 0x383], 0
mov qword [rsp + 0x70], r14
je 0x1400c6b5c
mov rax, qword [section..data]
cmp rax, 2
jne 0x1400c8491
mov rdi, qword [0x140195008]
lock inc qword [rdi]
jle 0x1400cbf52
lea rdx, str.NO_PROXYno_proxyunknown_proxy_scheme
lea rcx, [rsp + 0xa10]
mov r8d, 8
call fcn.1400e64f0
mov r15, qword [rsp + 0xa10]
cmp r15, rsi
jne 0x1400c617a
mov r15, rsi
lea rdx, [0x1401cbe20]
lea rcx, [rsp + 0xa10]
mov r8d, 8
call fcn.1400e64f0
mov rax, qword [rsp + 0xa10]
cmp rax, rsi
jne 0x1400c61b8
mov qword [rsp + 0x630], rsi
mov rax, rsi
jmp 0x1400c6215
cmp qword [rsp + 0x270], 0
jne 0x1400c5f6c
mov rdi, qword [rsp + 0x278]
mov rsi, qword [rsp + 0x280]
mov rcx, rdi
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x1400c5f6c
cmp qword [rsi + 0x10], 0x11
jb 0x1400c5f5b
mov rdi, qword [rdi - 8]
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rdi
call sub.kernel32.dll_HeapFree
mov rdi, qword [rsp + 0x368]
test rdi, rdi
je 0x1400c5fe8
mov r14, qword [rdi + 0x58]
test r14, r14
je 0x1400c5fae
mov rsi, qword [rdi + 0x60]
mov rcx, r14
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x1400c5fae
cmp qword [rsi + 0x10], 0x11
jb 0x1400c5f9d
mov r14, qword [r14 - 8]
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, r14
call sub.kernel32.dll_HeapFree
mov rax, qword [rdi]
movabs rcx, 0x8000000000000000
cmp rax, rcx
je 0x1400c5fd7
test rax, rax
je 0x1400c5fd7
mov r8, qword [rdi + 8]
mov rcx, qword [0x140206128]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rdi
call sub.kernel32.dll_HeapFree
test r12b, r12b
je 0x1400c5ffa
lea rcx, [rsp + 0x330]
call fcn.14005af50
mov rax, qword [rsp + 0x370]
test rax, rax
sete cl
or bpl, cl
jne 0x1400c6028
lock dec qword [rax]
jne 0x1400c6028
mov rcx, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x378]
call fcn.1400a2110
mov rsi, qword [rsp + 0x88]
mov rcx, qword [rsi + 0x1a0]
mov rdx, rbx
call fcn.14009d930
test rax, rax
je 0x1400c60cb
mov rdi, rdx
cmp rax, 1
test rdx, rdx
je 0x1400c60cb
mov rbx, qword [rdi + 0x58]
test rbx, rbx
je 0x1400c6089
mov rsi, qword [rdi + 0x60]
mov rcx, rbx
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x1400c6089
cmp qword [rsi + 0x10], 0x11
jb 0x1400c6078
mov rbx, qword [rbx - 8]
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
mov rax, qword [rdi]
movabs rcx, 0x8000000000000000
cmp rax, rcx
je 0x1400c60b2
test rax, rax
je 0x1400c60b2
mov r8, qword [rdi + 8]
mov rcx, qword [0x140206128]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rdi
call sub.kernel32.dll_HeapFree
mov rsi, qword [rsp + 0x88]
mov rsi, qword [rsi + 0x198]
cmp byte [rsi + 0x198], 0
jne 0x1400c60e2
mov byte [rsi + 0x198], 1
lea rdi, [rsi + 0x80]
lock or qword [rsi + 0x1c8], 1
lea rcx, [rsi + 0x1a0]
call fcn.1400fb470
lea rbx, [rsi + 0x180]
lea r14, [rsp + 0x210]
nop dword [rax]
mov rcx, r14
mov rdx, rbx
mov r8, rdi
call fcn.140061d50
cmp dword [rsp + 0x210], 1
ja 0x1400c6141
lock sub qword [rsi + 0x1c8], 2
jb 0x1400c84e5
mov rcx, r14
call fcn.140089720
jmp 0x1400c6110
lea rcx, [rsp + 0x210]
call fcn.140089720
mov rsi, qword [rsp + 0x88]
mov rax, qword [rsi + 0x198]
lock dec qword [rax]
mov bl, 1
jne 0x1400cac9a
mov rcx, qword [rsi + 0x198]
call fcn.1400a1f60
jmp 0x1400cac9a
cmp byte [rsp + 0xa28], 0
je 0x1400c6949
movdqu xmm0, xmmword [rsp + 0xa18]
movdqu xmmword [rsp + 0x640], xmm0
mov r8, qword [rsp + 0x640]
mov rax, qword [rsp + 0x648]
test rax, rax
jne 0x1400c627d
jmp 0x1400c693b
cmp byte [rsp + 0xa28], 0
je 0x1400c83e8
mov rax, qword [rsp + 0xa20]
mov qword [rsp + 0x810], rax
movdqu xmm0, xmmword [rsp + 0xa10]
movdqa xmmword [rsp + 0x800], xmm0
lea rcx, [rsp + 0x638]
lea rax, [rsi + 1]
mov rdx, qword [rsp + 0x810]
mov qword [rcx + 0x10], rdx
movdqa xmm0, xmmword [rsp + 0x800]
movdqu xmmword [rcx], xmm0
mov qword [rsp + 0x630], rax
shl r15, 1
test r15, r15
je 0x1400c6236
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
mov rax, qword [rsp + 0x630]
movabs rcx, 0x8000000000000000
cmp rax, rcx
je 0x1400c6a12
movabs rcx, 0x8000000000000001
cmp rax, rcx
jne 0x1400c69f7
mov r15, qword [rsp + 0x638]
mov r8, qword [rsp + 0x640]
mov rax, qword [rsp + 0x648]
test rax, rax
je 0x1400c693b
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x30], rdi
movabs rdi, 0xfefefefefefefeff
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xf8], 1
mov qword [rsp + 0x100], 0
mov qword [rsp + 0x980], 0
mov qword [rsp + 0x988], 8
mov qword [rsp + 0x990], 0
mov qword [rsp + 0xa10], 0
mov qword [rsp + 0xa18], rax
mov qword [rsp + 0xa0], r8
mov qword [rsp + 0xa20], r8
mov qword [rsp + 0xa28], rax
mov qword [rsp + 0xa30], 0
mov qword [rsp + 0x50], rax
mov qword [rsp + 0xa38], rax
mov qword [rsp + 0xa40], 1
movabs rax, 0x2c0000002c
mov qword [rsp + 0xa48], rax
mov word [rsp + 0xa50], 1
mov eax, 1
mov qword [rsp + 0x60], rax
xor r13d, r13d
xor r15d, r15d
jmp 0x1400c63a4
mov r8, qword [rsp + 0x60]
lea rax, [rdx + rdx*8]
mov byte [r8 + rax*2], r12b
movdqa xmm0, xmmword [rsp + 0x800]
movdqu xmmword [r8 + rax*2 + 1], xmm0
movzx ecx, byte [rsp + 0x810]
mov qword [rsp + 0x60], r8
mov byte [r8 + rax*2 + 0x11], cl
inc qword [rsp + 0x100]
movzx r14d, byte [rsp + 0xa51]
mov r13, rsi
test r14b, r14b
jne 0x1400c68ec
mov rbp, qword [rsp + 0xa20]
mov rsi, qword [rsp + 0xa38]
cmp r15, rsi
ja 0x1400c65ab
mov rbx, qword [rsp + 0xa28]
cmp rsi, rbx
ja 0x1400c65ab
mov r14, qword [rsp + 0xa40]
lea rax, [rbp + 8]
mov qword [rsp + 0x38], rax
jmp 0x1400c63f9
cmp r15, rsi
ja 0x1400c65ab
mov rdx, rsi
sub rdx, r15
lea rax, [r15 + rbp]
movzx ecx, byte [rsp + r14 + 0xa47]
cmp rdx, 0x10
jae 0x1400c6440
cmp rsi, r15
je 0x1400c65a0
xor r9d, r9d
nop
cmp byte [rax + r9], cl
je 0x1400c6543
inc r9
cmp rdx, r9
jne 0x1400c6420
jmp 0x1400c65a0
lea r8, [rax + 7]
and r8, 0xfffffffffffffff8
sub r8, rax
je 0x1400c6490
cmp r8, rdx
cmovae r8, rdx
test r8, r8
je 0x1400c6490
xor r9d, r9d
nop dword [rax]
cmp byte [rax + r9], cl
je 0x1400c6543
inc r9
cmp r8, r9
jne 0x1400c6460
mov qword [rsp + 0x68], r14
mov qword [rsp + 0xb8], rbx
lea r9, [rdx - 0x10]
cmp r8, r9
jbe 0x1400c64a4
jmp 0x1400c64fe
mov qword [rsp + 0x68], r14
mov qword [rsp + 0xb8], rbx
lea r9, [rdx - 0x10]
xor r8d, r8d
mov r10, rcx
movabs r11, 0x101010101010101
imul r10, r11
mov r11, qword [rsp + 0x38]
add r11, r15
nop dword [rax]
mov r12, qword [r11 + r8 - 8]
xor r12, r10
lea r14, [r12 + rdi]
not r12
and r12, r14
mov r14, qword [r11 + r8]
xor r14, r10
lea rbx, [r14 + rdi]
not r14
and r14, rbx
or r14, r12
movabs rbx, 0x8080808080808080
test r14, rbx
jne 0x1400c64fe
add r8, 0x10
cmp r8, r9
jbe 0x1400c64c0
cmp r8, rdx
mov rbx, qword [rsp + 0xb8]
mov r14, qword [rsp + 0x68]
je 0x1400c65a0
add rax, r8
mov rdx, rsi
sub rdx, r8
sub rdx, r15
xor r9d, r9d
nop word cs:[rax + rax]
cmp byte [rax + r9], cl
je 0x1400c6540
inc r9
cmp rdx, r9
jne 0x1400c6530
jmp 0x1400c65a0
add r9, r8
add r15, r9
inc r15
mov qword [rsp + 0xa30], r15
mov r12, r15
sub r12, r14
jb 0x1400c63f0
cmp r15, rbx
ja 0x1400c63f0
cmp r14, 5
jae 0x1400cbf52
lea rcx, [r12 + rbp]
lea rdx, [rsp + 0xa48]
mov r8, r14
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x1400c63f0
mov qword [rsp + 0xa10], r15
xor r14d, r14d
mov rsi, r15
jmp 0x1400c65be
mov qword [rsp + 0xa30], rsi
mov r15, rsi
mov byte [rsp + 0xa51], 1
mov r14b, 1
mov rsi, r13
mov r12, qword [rsp + 0x50]
add rbp, r13
sub r12, r13
mov rcx, rbp
mov rdx, r12
call fcn.140039e70
test rax, rax
je 0x1400c68ec
mov rbp, rax
mov rbx, rdx
mov qword [rsp + 0x630], rax
mov qword [rsp + 0x638], rdx
mov qword [rsp + 0x640], 0
mov edx, 1
lea r13, [rsp + 0x800]
mov rcx, r13
lea r8, [rsp + 0x630]
call fcn.140045ec0
movzx r12d, byte [rsp + 0x800]
cmp r12b, 2
jne 0x1400c6670
mov qword [rsp + 0x640], 0
mov edx, 1
mov rcx, r13
lea r8, [rsp + 0x630]
call fcn.140045330
movzx r12d, byte [rsp + 0x800]
cmp r12b, 2
jne 0x1400c6670
mov qword [rsp + 0x640], 0
jmp 0x1400c6700
lea rcx, [rsp + 0x801]
movzx eax, byte [rcx + 0x10]
mov byte [rsp + 0x4d0], al
movdqu xmm0, xmmword [rcx]
movdqa xmmword [rsp + 0x4c0], xmm0
mov rax, qword [rsp + 0x640]
cmp rax, qword [rsp + 0x638]
jne 0x1400c6700
movzx eax, byte [rsp + 0x4d0]
movaps xmm0, xmmword [rsp + 0x4c0]
movaps xmmword [rsp + 0x800], xmm0
mov byte [rsp + 0x810], al
mov rdx, qword [rsp + 0x100]
cmp rdx, qword [rsp + 0xf0]
jne 0x1400c6358
lea rcx, [rsp + 0xf0]
call fcn.14004b370
mov r8, qword [rsp + 0xf8]
mov rdx, qword [rsp + 0x100]
jmp 0x1400c635d
mov qword [rsp + 0x800], rbp
mov qword [rsp + 0x808], rbx
mov rcx, r13
call fcn.14001c920
mov r12, rax
test r12b, 1
jne 0x1400c6790
lea rcx, [rsp + 0x630]
mov rdx, r13
call fcn.14001ce80
cmp byte [rsp + 0x630], 0
je 0x1400c679f
mov r12d, dword [rsp + 0x631]
lea rcx, [rsp + 0x635]
mov rax, qword [rcx]
mov qword [rsp + 0x4c0], rax
mov eax, dword [rcx + 8]
mov dword [rsp + 0x4c8], eax
cmp qword [rsp + 0x808], 0
jne 0x1400c679f
mov eax, dword [rsp + 0x4c8]
mov dword [rsp + 0x638], eax
mov rax, qword [rsp + 0x4c0]
mov qword [rsp + 0x630], rax
mov bl, 1
jmp 0x1400c6854
cmp qword [rsp + 0x808], 0
je 0x1400c684e
test rbx, rbx
je 0x1400c67ec
js 0x1400cbf52
movzx eax, byte [0x140206138]
mov rax, qword [0x140206128]
test rax, rax
jne 0x1400c67d2
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov qword [0x140206128], rax
mov rcx, rax
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapAlloc
mov r12, rax
test rax, rax
jne 0x1400c67f2
jmp 0x1400cbf52
mov r12d, 1
mov rcx, r12
mov rdx, rbp
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov rdx, qword [rsp + 0x990]
cmp rdx, qword [rsp + 0x980]
jne 0x1400c6827
lea rcx, [rsp + 0x980]
call fcn.14004b140
mov rdx, qword [rsp + 0x990]
mov rax, qword [rsp + 0x988]
lea rcx, [rdx + rdx*2]
mov qword [rax + rcx*8], rbx
mov qword [rax + rcx*8 + 8], r12
mov qword [rax + rcx*8 + 0x10], rbx
lea rax, [rsp + 0x990]
jmp 0x1400c68da
shr r12, 8
xor ebx, ebx
mov eax, dword [rsp + 0x638]
mov dword [rsp + 0x588], eax
mov rax, qword [rsp + 0x630]
mov qword [rsp + 0x580], rax
mov rdx, qword [rsp + 0x100]
cmp rdx, qword [rsp + 0xf0]
jne 0x1400c6899
lea rcx, [rsp + 0xf0]
call fcn.14004b370
mov rdx, qword [rsp + 0x100]
mov r8, qword [rsp + 0xf8]
lea rax, [rdx + rdx*8]
mov byte [r8 + rax*2], 2
mov byte [r8 + rax*2 + 1], bl
mov dword [r8 + rax*2 + 2], r12d
mov rcx, qword [rsp + 0x580]
mov qword [r8 + rax*2 + 6], rcx
mov ecx, dword [rsp + 0x588]
mov qword [rsp + 0x60], r8
mov dword [r8 + rax*2 + 0xe], ecx
lea rax, [rsp + 0x100]
inc rdx
mov qword [rax], rdx
mov r13, rsi
test r14b, r14b
je 0x1400c63a4
mov rsi, qword [rsp + 0xf0]
lea rax, [rsp + 0xf8]
movdqu xmm0, xmmword [rax]
movups xmm1, xmmword [rsp + 0x980]
mov rax, qword [rsp + 0x990]
movdqa xmmword [rsp + 0x800], xmm0
mov qword [rsp + 0x820], rax
movaps xmmword [rsp + 0x810], xmm1
mov rdi, qword [rsp + 0x30]
mov r15, qword [rsp + 0x58]
mov r8, qword [rsp + 0xa0]
test r15, r15
jne 0x1400c6a04
jmp 0x1400c6a12
mov rax, qword [rsp + 0xa20]
test rax, rax
je 0x1400c6188
mov rbx, qword [rsp + 0xa18]
add rax, rbx
mov rdx, rbx
jmp 0x1400c698c
add rdx, 2
cmp rcx, rax
cmovne rcx, rdx
nop word cs:[rax + rax]
mov rdx, rcx
cmp rcx, rax
je 0x1400c6188
lea rcx, [rdx + 1]
movzx r8d, byte [rdx]
test r8b, r8b
jns 0x1400c6980
cmp r8b, 0xe0
jb 0x1400c696a
cmp r8b, 0xed
jne 0x1400c69ce
cmp rcx, rax
je 0x1400c6188
lea rcx, [rdx + 2]
cmp rcx, rax
je 0x1400c6188
cmp byte [rdx + 1], 0x9f
ja 0x1400c84ac
add rdx, 3
mov rcx, rdx
jmp 0x1400c6980
add rdx, 2
cmp rcx, rax
cmove rdx, rcx
xor ecx, ecx
cmp rdx, rax
setne cl
add rcx, rdx
cmp r8b, 0xf0
jb 0x1400c6980
xor edx, edx
cmp rcx, rax
setne dl
add rcx, rdx
jmp 0x1400c6980
test rax, rax
je 0x1400c6a12
mov r8, qword [rsp + 0x638]
mov rcx, qword [0x140206128]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rax, qword [rsp + 0xa50]
mov qword [rsp + 0x670], rax
movups xmm0, xmmword [rsp + 0xa10]
movups xmm1, xmmword [rsp + 0xa20]
movups xmm2, xmmword [rsp + 0xa30]
movups xmm3, xmmword [rsp + 0xa40]
movaps xmmword [rsp + 0x660], xmm3
movaps xmmword [rsp + 0x650], xmm2
movaps xmmword [rsp + 0x640], xmm1
movaps xmmword [rsp + 0x630], xmm0
movaps xmm0, xmmword [rsp + 0x800]
movaps xmm1, xmmword [rsp + 0x810]
movaps xmmword [rsp + 0x980], xmm0
movaps xmmword [rsp + 0x990], xmm1
mov rax, qword [rsp + 0x820]
mov qword [rsp + 0x9a0], rax
mov rdx, qword [rsp + 0x1a0]
cmp rdx, qword [rsp + 0x190]
jne 0x1400c6ab9
lea rcx, [rsp + 0x190]
call fcn.14004b200
mov rdx, qword [rsp + 0x1a0]
mov rax, qword [rsp + 0x198]
mov rcx, rdx
shl rcx, 7
lea rcx, [rcx + rdx*8]
mov qword [rax + rcx], 3
mov qword [rax + rcx + 8], rdi
movaps xmm0, xmmword [rsp + 0x630]
movaps xmm1, xmmword [rsp + 0x640]
movdqa xmm2, xmmword [rsp + 0x650]
movdqa xmm3, xmmword [rsp + 0x660]
movups xmmword [rax + rcx + 0x10], xmm0
movups xmmword [rax + rcx + 0x20], xmm1
movdqu xmmword [rax + rcx + 0x30], xmm2
movdqu xmmword [rax + rcx + 0x40], xmm3
mov r8, qword [rsp + 0x670]
mov qword [rax + rcx + 0x50], r8
mov qword [rax + rcx + 0x58], rsi
movdqa xmm0, xmmword [rsp + 0x980]
movdqa xmm1, xmmword [rsp + 0x990]
movdqu xmmword [rax + rcx + 0x60], xmm0
movdqu xmmword [rax + rcx + 0x70], xmm1
mov r8, qword [rsp + 0x9a0]
mov qword [rax + rcx + 0x80], r8
inc rdx
mov qword [rsp + 0x1a0], rdx
mov rax, qword [rsp + 0x1a0]
mov qword [rsp + 0xa20], rax
movdqa xmm0, xmmword [rsp + 0x190]
movdqa xmmword [rsp + 0xa10], xmm0
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400c6ba9
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x28
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1400cbf52
mov rdi, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov rax, qword [rsp + 0xa20]
mov qword [rdi + 0x20], rax
movdqa xmm0, xmmword [rsp + 0xa10]
movdqu xmmword [rdi + 0x10], xmm0
cmp byte [rsp + 0x38f], 0
jne 0x1400cbf52
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400c6c24
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x10
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1400cbf52
mov rsi, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov r15, qword [rsp + 0x370]
test r15, r15
setne r12b
je 0x1400c6c84
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0x50], rax
lock dec qword [rsi]
jne 0x1400c6c7f
lea rdx, [0x1401cbf40]
mov rcx, rsi
call fcn.1400a2110
mov rsi, r15
jmp 0x1400c6c90
lea rax, [0x1401cbf40]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x330]
mov r13, qword [rsp + 0x348]
test r13, r13
sete byte [rsp + 0x60]
je 0x1400c6dc4
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movdqu xmm2, xmmword [rax + 0x20]
movdqa xmmword [rsp + 0xa30], xmm2
movdqa xmmword [rsp + 0xa20], xmm1
movdqa xmmword [rsp + 0xa10], xmm0
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400c6d02
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x40
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1400cbf52
mov rbx, rax
mov qword [rax], 1
mov qword [rax + 8], 1
movdqa xmm0, xmmword [rsp + 0xa10]
movdqa xmm1, xmmword [rsp + 0xa20]
movdqa xmm2, xmmword [rsp + 0xa30]
movdqu xmmword [rax + 0x30], xmm2
movdqu xmmword [rax + 0x20], xmm1
movdqu xmmword [rax + 0x10], xmm0
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400c6d7f
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x28
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1400cbf52
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], rsi
mov rcx, qword [rsp + 0x50]
mov qword [rax + 0x18], rcx
mov qword [rax + 0x20], rbx
lea rcx, [0x1401cbf60]
mov qword [rsp + 0x50], rcx
mov rsi, rax
lock inc qword [rsi]
jle 0x1400cbf52
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400c6df9
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, pe_nt_image_headers64
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1400cbf52
mov rbx, rax
mov qword [rsp + 0xb8], rsi
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], 0
mov qword [rax + 0x20], 0
mov dword [rax + 0x38], 0x3b9aca00
mov qword [rax + 0x40], 0
mov dword [rax + 0x48], 0x11e1a300
mov dword [rax + 0x58], 0x3b9aca00
mov word [rax + 0x60], 1
mov byte [rax + 0x66], 0
mov word [rax + 0x77], 0
mov rsi, qword [rsp + 0x2d0]
mov ebp, dword [rsp + 0x2d8]
xor ecx, ecx
mov eax, 1
lock cmpxchg qword [rbx], rcx
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0xa0], r15
mov qword [rsp + 0xd8], r13
mov dword [rsp + 0x30], r12d
jne 0x1400c6ebd
lea rdi, [rbx + 8]
mov rax, qword [rdi]
cmp rax, 1
jne 0x1400c6f53
mov qword [rbx], 1
mov r12, rbx
jmp 0x1400c70a9
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400c6ee8
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, pe_nt_image_headers64
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1400cbf52
mov r12, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov ecx, dword [rbx + 0x38]
mov r11, qword [rbx + 0x30]
movzx eax, byte [rbx + 0x60]
mov edx, dword [rbx + 0x48]
mov rdi, qword [rbx + 0x40]
mov r8d, dword [rbx + 0x58]
mov r14, qword [rbx + 0x50]
movzx r9d, byte [rbx + 0x61]
mov r10d, dword [rbx + 0x62]
cmp byte [rbx + 0x66], 0
je 0x1400c7023
movdqu xmm0, xmmword [rbx + 0x67]
movdqa xmmword [rsp + 0xa10], xmm0
mov r15b, 1
jmp 0x1400c7026
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400c6f7e
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, pe_nt_image_headers64
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1400cbf52
mov r12, rax
lea rax, [rbx + 0x10]
mov qword [r12], 1
mov qword [r12 + 8], 1
movups xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movdqu xmm2, xmmword [rax + 0x20]
movdqu xmm3, xmmword [rax + 0x30]
movups xmmword [r12 + 0x10], xmm0
movdqu xmmword [r12 + 0x20], xmm1
movdqu xmmword [r12 + 0x30], xmm2
movdqu xmmword [r12 + 0x40], xmm3
movups xmm0, xmmword [rax + 0x40]
movups xmmword [r12 + 0x50], xmm0
movups xmm0, xmmword [rax + 0x50]
movups xmmword [r12 + 0x60], xmm0
movdqu xmm0, xmmword [rax + 0x60]
movdqu xmmword [r12 + 0x70], xmm0
cmp rbx, 0xffffffffffffffff
je 0x1400c70a9
lock dec qword [rdi]
jne 0x1400c70a9
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
jmp 0x1400c70a9
xor r15d, r15d
movzx r13d, word [rbx + 0x77]
movups xmm0, xmmword [rbx + 0x10]
movdqu xmm1, xmmword [rbx + 0x20]
movdqa xmm2, xmmword [rsp + 0xa10]
movdqa xmmword [rsp + 0x630], xmm2
movups xmmword [r12 + 0x10], xmm0
movdqu xmmword [r12 + 0x20], xmm1
mov qword [r12 + 0x30], r11
mov dword [r12 + 0x38], ecx
mov qword [r12 + 0x40], rdi
mov dword [r12 + 0x48], edx
mov qword [r12 + 0x50], r14
mov dword [r12 + 0x58], r8d
mov byte [r12 + 0x60], al
mov byte [r12 + 0x61], r9b
mov dword [r12 + 0x62], r10d
mov byte [r12 + 0x66], r15b
movdqa xmm0, xmmword [rsp + 0x630]
movdqu xmmword [r12 + 0x67], xmm0
mov word [r12 + 0x77], r13w
lock dec qword [rbx]
jne 0x1400c70a9
mov rcx, rbx
call fcn.1400391f0
mov qword [r12 + 0x30], rsi
mov dword [r12 + 0x38], ebp
mov qword [rsp + 0xa10], 0
mov word [rsp + 0xa3c], 0x501
mov qword [rsp + 0xa20], 0
mov qword [rsp + 0xa28], 8
mov qword [rsp + 0xa30], 0
mov byte [rsp + 0xa39], 0
movzx eax, byte [rsp + 0x380]
xor al, 1
mov byte [rsp + 0xa38], al
movzx eax, byte [rsp + 0x381]
mov byte [rsp + 0xa3a], al
movzx eax, byte [rsp + 0x385]
xor al, 1
mov byte [rsp + 0xa3b], al
mov rsi, qword [rsp + 0x2a0]
mov rbx, qword [rsp + 0x2a8]
mov rdi, qword [rsp + 0x2b0]
test rdi, rdi
je 0x1400c71a0
lea r15, [rsp + 0xa20]
shl rdi, 3
mov eax, 8
xor r13d, r13d
xor edx, edx
jmp 0x1400c7178
mov qword [rax + rdx*8], r14
inc rdx
mov qword [rsp + 0xa30], rdx
add r13, 8
cmp rdi, r13
je 0x1400c71a0
mov r14, qword [rbx + r13]
cmp rdx, qword [rsp + 0xa20]
jne 0x1400c7160
mov rcx, r15
call fcn.14004a0f0
dec dword [rax - 0x75]
test byte [rax + rbp], ah
or al, byte [rax]
add byte [rax - 0x75], cl
xchg esp, eax
and al, 0x30
or al, byte [rax]
add bl, ch
invalid
test rsi, rsi
je 0x1400c71b6
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
movzx eax, byte [rsp + 0x3a3]
cmp rax, 4
mov rdx, qword [rsp + 0x38]
je case.default.0x1400c71d7
lea rcx, [0x14019a1b0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov al, 1
mov byte [rsp + 0xa3c], al
movzx eax, byte [rsp + 0x3a4]
cmp rax, 4
je case.default.0x1400c71fe
invalid
lea rcx, [0x14019a1c0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov bpl, 1
jmp 0x1400c7253
mov al, 2
mov byte [rsp + 0xa3c], al
movzx eax, byte [rsp + 0x3a4]
cmp rax, 4
jne case.0x1400c71d7.4
movzx ebp, byte [rsp + 0xa3d]
jmp 0x1400c725b
mov al, 3
mov byte [rsp + 0xa3c], al
movzx eax, byte [rsp + 0x3a4]
cmp rax, 4
je case.default.0x1400c71fe
jmp case.0x1400c71d7.4
lea rcx, str.invalid_minimum_TLS_version_for_backendinvalid_maximum_TLS_version_for_backend
jmp 0x1400c7726
mov bpl, 3
jmp 0x1400c7253
mov bpl, 2
mov byte [rsp + 0xa3d], bpl
mov r15, qword [rsp + 0xa10]
mov r14, qword [rsp + 0xa18]
mov rdi, qword [rsp + 0xa20]
mov r13, qword [rsp + 0xa28]
mov rsi, qword [rsp + 0xa30]
movq xmm6, qword [rsp + 0xa38]
movzx eax, byte [rsp + 0xa3c]
mov byte [rsp + 0x80], al
lock inc qword [rdx]
jle 0x1400cbf52
movups xmm0, xmmword [0x1401cbfe0]
movaps xmmword [rsp + 0x640], xmm0
movdqu xmm0, xmmword [0x1401cbfd0]
movdqa xmmword [rsp + 0x630], xmm0
lea rcx, [rsp + 0x210]
lea rdx, [rsp + 0x630]
call fcn.140094070
mov rbx, rax
mov rax, qword [rsp + 0x630]
test rax, rax
je 0x1400c7305
lea rcx, [rsp + 0x648]
mov rdx, qword [rsp + 0x638]
mov r8, qword [rsp + 0x640]
call qword [rax + 0x10]
test rbx, rbx
mov byte [rsp + 0x98], bpl
je 0x1400c736f
mov rdx, rbx
add rdx, 0x18
mov rax, qword [rbx]
mov r8, qword [rbx + 8]
mov r9, qword [rbx + 0x10]
lea rcx, [rsp + 0x630]
call qword [rax]
movzx eax, byte [rbx + 0x20]
mov byte [rsp + 0x650], al
movdqu xmm0, xmmword [rsp + 0x630]
movdqu xmm1, xmmword [rsp + 0x640]
movdqa xmmword [rsp + 0x4c0], xmm0
movdqa xmmword [rsp + 0x4d0], xmm1
mov rax, qword [rsp + 0x650]
mov qword [rsp + 0x4e0], rax
jmp 0x1400c7377
mov byte [rsp + 0x4e0], 2
movzx ebp, byte [rsp + 0x392]
mov eax, dword [rsp + 0x393]
mov dword [rsp + 0xc8], eax
mov rax, qword [rsp + 0x397]
mov qword [rsp + 0x7b0], rax
mov eax, dword [rsp + 0x39f]
mov dword [rsp + 0x7b8], eax
movzx ebx, byte [rsp + 0x386]
movzx eax, byte [rsp + 0x38e]
mov byte [rsp + 0x78], al
test r15, r15
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x168], r14
je 0x1400c73e8
mov rcx, r14
call sub.crypt32.dll_CertDuplicateCertificateContext
mov r14, rax
mov eax, 1
mov qword [rsp + 0x40], rax
jmp 0x1400c73ef
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x20], 0
mov ecx, 2
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call sub.crypt32.dll_CertOpenStore
test rax, rax
je 0x1400c750e
mov r15, rax
mov byte [rsp + 0xb0], bl
mov qword [rsp + 0x90], r14
test rsi, rsi
je 0x1400c7490
lea rdi, [rsi*8]
xor r14d, r14d
lea rbx, [rsp + 0x630]
nop word cs:[rax + rax]
mov qword [rsp + 0x630], 0
mov rdx, qword [r13 + r14]
mov rcx, r15
mov r8d, 3
mov r9, rbx
call sub.crypt32.dll_CertAddCertificateContextToStore
test eax, eax
je 0x1400c76f5
mov rcx, qword [rsp + 0x630]
call sub.crypt32.dll_CertFreeCertificateContext
add r14, 8
cmp rdi, r14
jne 0x1400c7450
mov qword [rsp + 0x580], r12
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x588], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x590], rax
mov rax, qword [rsp + 0x4e0]
mov qword [rsp + 0x110], rax
movaps xmm0, xmmword [rsp + 0x4c0]
movaps xmm1, xmmword [rsp + 0x4d0]
movaps xmmword [rsp + 0x100], xmm1
movaps xmmword [rsp + 0xf0], xmm0
cmp ebp, 2
je 0x1400c77cd
test ebp, ebp
mov r14, qword [rsp + 0x58]
movzx r12d, byte [rsp + 0x80]
jne 0x1400c77e1
mov dil, 1
xor ebp, ebp
jmp 0x1400c7804
call sub.kernel32.dll_GetLastError
mov ebx, eax
cmp qword [rsp + 0x68], 0
je 0x1400c7525
mov rcx, r14
call sub.crypt32.dll_CertFreeCertificateContext
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400c7550
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 8
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1400cbf52
mov r15, rax
shl rbx, 0x20
or rbx, 2
mov qword [rax], rbx
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400c759f
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x70
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1400cbf52
mov rbx, rax
movabs rax, 0x8000000000000000
mov qword [rbx], rax
mov qword [rbx + 0x58], r15
lea rax, [0x1401cc628]
mov qword [rbx + 0x60], rax
mov word [rbx + 0x68], 0
cmp byte [rsp + 0x4e0], 2
jne 0x1400c7606
mov r15, qword [rsp + 0x38]
lock dec qword [r15]
mov r14, qword [rsp + 0x70]
jne 0x1400c7639
mov rcx, r15
call fcn.1400a2400
cmp qword [rsp + 0x68], 0
jne 0x1400c7641
jmp 0x1400c764e
lea rcx, [rsp + 0x4d8]
mov rax, qword [rsp + 0x4c0]
mov rdx, qword [rsp + 0x4c8]
mov r8, qword [rsp + 0x4d0]
call qword [rax + 0x10]
mov r15, qword [rsp + 0x38]
lock dec qword [r15]
mov r14, qword [rsp + 0x70]
je 0x1400c75f4
cmp qword [rsp + 0x68], 0
je 0x1400c764e
mov rcx, qword [rsp + 0x168]
call sub.crypt32.dll_CertFreeCertificateContext
test rsi, rsi
je 0x1400c7672
xor edi, edi
nop word cs:[rax + rax]
mov rcx, qword [r13 + rdi*8]
inc rdi
call sub.crypt32.dll_CertFreeCertificateContext
cmp rsi, rdi
jne 0x1400c7660
cmp qword [rsp + 0x58], 0
je 0x1400c768b
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, r13
call sub.kernel32.dll_HeapFree
lock dec qword [r12]
mov rsi, qword [rsp + 0xb8]
jne 0x1400c76a2
mov rcx, r12
call fcn.1400391f0
lock dec qword [rsi]
jne 0x1400c76b5
mov rcx, rsi
mov rdx, qword [rsp + 0x50]
call fcn.1400a2110
mov ebp, dword [rsp + 0x30]
movzx r12d, byte [rsp + 0x60]
lock dec qword [rsi]
jne 0x1400c76de
mov rcx, rsi
mov rdx, qword [rsp + 0x50]
call fcn.1400a2110
lock dec qword [r15]
jne 0x1400c5c9a
jmp 0x1400c76e8
lock dec qword [r15]
jne 0x1400c5c9a
mov rcx, r15
call fcn.1400a2400
jmp 0x1400c5c9a
call sub.kernel32.dll_GetLastError
mov ebx, eax
mov rcx, r15
xor edx, edx
call sub.crypt32.dll_CertCloseStore
mov r14, qword [rsp + 0x90]
cmp qword [rsp + 0x68], 0
jne 0x1400c751d
jmp 0x1400c7525
lea rcx, [0x1401cbfa7]
mov edx, 0x27
call fcn.1400b01b0
mov rbx, rax
cmp qword [rsp + 0xa10], 0
je 0x1400c774b
mov rcx, qword [rsp + 0xa18]
call sub.crypt32.dll_CertFreeCertificateContext
mov r15, qword [rsp + 0xa28]
mov rsi, qword [rsp + 0xa30]
test rsi, rsi
je 0x1400c7781
xor edi, edi
nop word cs:[rax + rax]
mov rcx, qword [r15 + rdi*8]
inc rdi
call sub.crypt32.dll_CertFreeCertificateContext
cmp rsi, rdi
jne 0x1400c7770
cmp qword [rsp + 0xa20], 0
je 0x1400c779d
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, r15
call sub.kernel32.dll_HeapFree
lock dec qword [r12]
mov rsi, qword [rsp + 0xb8]
jne 0x1400c77b4
mov rcx, r12
call fcn.1400391f0
lock dec qword [rsi]
mov r14, qword [rsp + 0x70]
mov r15, qword [rsp + 0x38]
je 0x1400c76a8
jmp 0x1400c76b5
xor edi, edi
xor ebp, ebp
mov r14, qword [rsp + 0x58]
movzx r12d, byte [rsp + 0x80]
jmp 0x1400c7804
mov eax, dword [rsp + 0x7b8]
mov dword [rsp + 0x638], eax
mov rax, qword [rsp + 0x7b0]
mov qword [rsp + 0x630], rax
mov bpl, 1
xor edi, edi
mov eax, dword [rsp + 0x638]
mov dword [rsp + 0x1c8], eax
mov rax, qword [rsp + 0x630]
mov qword [rsp + 0x1c0], rax
lea rbx, [rsp + 0x580]
mov rcx, rbx
call fcn.140052530
mov byte [rax + 0x51], dil
mov ecx, dword [rsp + 0xc8]
mov dword [rax + 0x52], ecx
mov byte [rax + 0x56], bpl
mov dword [rax + 0x57], ecx
mov rcx, qword [rsp + 0x1c0]
mov qword [rax + 0x5b], rcx
mov ecx, dword [rsp + 0x1c8]
mov dword [rax + 0x63], ecx
mov rcx, rbx
call fcn.140052530
movzx ebp, byte [rsp + 0x78]
mov byte [rax + 0x67], bpl
mov rcx, rbx
call fcn.140052530
mov byte [rax + 0x50], 0
movups xmm0, xmmword [rsp + 0x580]
movaps xmmword [rsp + 0x540], xmm0
mov rax, qword [rsp + 0x590]
mov qword [rsp + 0x550], rax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x654], rax
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmm1, xmmword [rsp + 0x100]
movups xmmword [rsp + 0x644], xmm1
movups xmmword [rsp + 0x634], xmm0
mov rax, qword [rsp + 0x64c]
mov qword [rsp + 0x99c], rax
mov rax, qword [rsp + 0x654]
mov qword [rsp + 0x9a4], rax
movups xmm0, xmmword [rsp + 0x640]
movaps xmmword [rsp + 0x990], xmm0
movdqu xmm0, xmmword [rsp + 0x630]
movdqa xmmword [rsp + 0x980], xmm0
cmp qword [rsp + 0x68], 0
je 0x1400c7921
mov rcx, qword [rsp + 0x168]
call sub.crypt32.dll_CertFreeCertificateContext
test rsi, rsi
movzx ebx, byte [rsp + 0x98]
je 0x1400c7942
xor edi, edi
mov rcx, qword [r13 + rdi*8]
inc rdi
call sub.crypt32.dll_CertFreeCertificateContext
cmp rsi, rdi
jne 0x1400c7930
test r14, r14
je 0x1400c7958
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, r13
call sub.kernel32.dll_HeapFree
mov qword [rsp + 0x810], r15
pxor xmm0, xmm0
punpcklbw xmm6, xmm0
pshuflw xmm0, xmm6, 0xc6
packuswb xmm0, xmm0
movd dword [rsp + 0x818], xmm0
mov byte [rsp + 0x81c], r12b
mov byte [rsp + 0x81d], bl
movaps xmm0, xmmword [rsp + 0x540]
movups xmmword [rsp + 0x820], xmm0
mov rax, qword [rsp + 0x550]
mov qword [rsp + 0x830], rax
mov dword [rsp + 0x840], 0x3b9aca00
movaps xmm0, xmmword [rsp + 0x980]
movdqa xmm1, xmmword [rsp + 0x990]
movups xmmword [rsp + 0x844], xmm0
movdqu xmmword [rsp + 0x854], xmm1
movdqu xmm0, xmmword [rsp + 0x99c]
movdqu xmmword [rsp + 0x860], xmm0
mov rbx, qword [rsp + 0x38]
mov qword [rsp + 0x870], rbx
mov byte [rsp + 0x878], 0
mov byte [rsp + 0x879], bpl
movzx eax, byte [rsp + 0xb0]
mov byte [rsp + 0x87a], al
movzx eax, byte [rsp + 0x614]
mov byte [rsp + 0x87f], al
mov eax, dword [rsp + 0x610]
mov dword [rsp + 0x87b], eax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x800], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x808], rax
mov rcx, qword [rsp + 0xb8]
lock dec qword [rcx]
jne 0x1400c7a66
mov rdx, qword [rsp + 0x50]
call fcn.1400a2110
mov rax, qword [rsp + 0x2d0]
mov ecx, dword [rsp + 0x2d8]
mov qword [rsp + 0x838], rax
mov dword [rsp + 0x840], ecx
movzx eax, byte [rsp + 0x382]
mov byte [rsp + 0x878], al
cmp byte [rsp + 0x391], 1
sete byte [rsp + 0x50]
cmp dword [rsp + 0x2b8], 0
mov ecx, 0x200000
je 0x1400c7ab6
mov ecx, dword [rsp + 0x2bc]
cmp dword [rsp + 0x2c0], 0
mov edx, 0x500000
je 0x1400c7acc
mov edx, dword [rsp + 0x2c4]
movzx eax, byte [rsp + 0x38c]
mov byte [rsp + 0x60], al
test al, al
mov eax, 0xffff
cmovne ecx, eax
mov dword [rsp + 0xb8], ecx
cmovne edx, eax
mov dword [rsp + 0x68], edx
cmp dword [rsp + 0x2c8], 0
mov eax, 0x4000
je 0x1400c7b06
mov eax, dword [rsp + 0x2cc]
mov dword [rsp + 0x70], eax
mov eax, dword [rsp + 0x318]
mov dword [rsp + 0x30], eax
mov ecx, dword [rsp + 0x328]
xor eax, eax
cmp ecx, 0x3b9aca00
cmove ecx, eax
mov dword [rsp + 0x58], ecx
mov eax, 0x14
cmovne rax, qword [rsp + 0x320]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0x40], rax
movzx eax, byte [rsp + 0x38d]
mov byte [rsp + 0x168], al
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0xc0], rax
mov ebp, dword [rsp + 0x2e8]
mov r15, qword [rsp + 0x360]
mov rsi, qword [rsp + 0x2f0]
mov edi, dword [rsp + 0x2f8]
lea rcx, [rsp + 0x820]
call fcn.140052530
mov qword [rax + 0x40], rsi
mov dword [rax + 0x48], edi
movzx eax, byte [rsp + 0x387]
mov byte [rsp + 0xc8], al
movzx eax, byte [rsp + 0x388]
add byte [rax], al
mov byte [rsp + 0x98], al
movzx eax, byte [rsp + 0x389]
and al, 0x89
add eax, dword [rax]
add byte [rax + 0x902484], cl
add byte [rax], al
movzx eax, byte [rsp + 0x38a]
mov byte [rsp + 0x78], al
movzx eax, byte [rsp + 0x38b]
mov byte [rsp + 0xb0], al
test byte [rax + rsi*4], ah
add byte [rax], al
add byte [rax - 0x75], cl
jnp 0x1400c7c03
mov rax, qword [rbx + 0x20]
mov rcx, rax
shl rcx, 7
lea r13, [rcx + rax*8]
add r13, rdi
lea r14, [0x14019a1d0]
lea rbx, str.httphttpswswssftpfile__file:__
pcmpeqd xmm6, xmm6
jmp case.0x1400c7c4b.2
invalid
sbb esp, dword [rsi + 0x66]
nop word cs:[rax + rax]
add byte [rax], al
add byte [rax], al
add byte [rax], al
add byte [rax], al
cmp byte [r12 + 0x50], 2
jne case.0x1400c7c4b.4
mov r12, rdi
cmp rdi, r13
je case.0x1400c7c4b.4
lea rdi, [r12 + 0x88]
mov rax, qword [r12]
add byte [rax], al
add byte [rcx - 0x75], cl
add al, 0x24
movsxd rax, dword [r14 + rax*4]
add rax, r14
jmp rax
mov rsi, qword [r12 + 8]
cmp qword [rsi + 0x28], 0
je case.0x1400c7c4b.2
mov rcx, qword [rsi + 0x30]
mov rdx, qword [rsi + 0x38]
mov r9d, 4
mov r8, rbx
call fcn.140092b10
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
mov r8, rax
shr r8, 0x39
movd xmm0, r8d
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
lea r8, [rcx - 0x68]
xor r9d, r9d
and rax, rdx
movdqu xmm1, xmmword [rcx + rax]
movdqa xmm2, xmm1
pcmpeqb xmm2, xmm0
pmovmskb r10d, xmm2
nop dword [rax]
test r10w, r10w
je 0x1400c7cf0
mov r11d, r10d
lea r10d, [r11 - 1]
and r10d, r11d
tzcnt r11d, r11d
add r11, rax
and r11, rdx
neg r11
imul r11, r11, 0x68
cmp qword [r8 + r11 + 0x10], 4
jne 0x1400c7cb0
lea rsi, [r8 + r11]
mov rsi, qword [rsi + 8]
cmp dword [rsi], 0x70747468
jne 0x1400c7cb0
jmp 0x1400c7d0f
pcmpeqb xmm1, xmm6
pmovmskb r10d, xmm1
test r10d, r10d
jne case.0x1400c7c4b.2
add rax, r9
add rax, 0x10
add r9, 0x10
jmp 0x1400c7c98
lea rax, [rcx + r11]
cmp rax, 0x28
je case.0x1400c7c4b.2
ud0
invalid
invalid
ud0
cmp byte [rcx + r11 - 8], 2
je case.0x1400c7c4b.2
movups xmm0, xmmword [rsp + 0x870]
movaps xmmword [rsp + 0x6a0], xmm0
movups xmm0, xmmword [rsp + 0x860]
movaps xmmword [rsp + 0x690], xmm0
movups xmm0, xmmword [rsp + 0x850]
movaps xmmword [rsp + 0x680], xmm0
movups xmm0, xmmword [rsp + 0x840]
movaps xmmword [rsp + 0x670], xmm0
movdqu xmm0, xmmword [rsp + 0x800]
movdqu xmm1, xmmword [rsp + 0x810]
movdqu xmm2, xmmword [rsp + 0x820]
movdqu xmm3, xmmword [rsp + 0x830]
movdqa xmmword [rsp + 0x660], xmm3
movdqa xmmword [rsp + 0x650], xmm2
movdqa xmmword [rsp + 0x640], xmm1
movdqa xmmword [rsp + 0x630], xmm0
test r15, r15
je 0x1400c7efb
xor ecx, ecx
call fcn.1400ea100
test rax, rax
je 0x1400cbf52
movdqu xmm6, xmmword [rax]
inc qword [rax]
xor ecx, ecx
call fcn.1400ea100
test rax, rax
je 0x1400cbf52
movups xmm7, xmmword [rax]
inc qword [rax]
xor ecx, ecx
call fcn.1400ea100
test rax, rax
je 0x1400cbf52
movdqu xmm8, xmmword [rax]
inc qword [rax]
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400c7e2a
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0xe0
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1400cbf52
mov r14, rax
test ebp, ebp
mov eax, 0x3b9aca00
cmovne eax, ebp
mov rcx, qword [rsp + 0xc0]
test rcx, rcx
cmovne eax, ebp
cmp ebp, 0x3b9aca00
cmove eax, ebp
mov qword [r14], 1
mov qword [r14 + 8], 1
mov qword [r14 + 0x10], 0
mov byte [r14 + 0x18], 0
mov qword [r14 + 0x20], 0
movdqu xmm0, xmmword [0x1401cec00]
movdqu xmmword [r14 + 0x30], xmm0
movdqu xmm1, xmmword [0x1401cec10]
movdqu xmmword [r14 + 0x40], xmm1
movdqu xmmword [r14 + 0x50], xmm6
movdqu xmmword [r14 + 0x60], xmm0
movdqu xmmword [r14 + 0x70], xmm1
movups xmmword [r14 + 0x80], xmm7
movdqu xmmword [r14 + 0x90], xmm0
movdqu xmmword [r14 + 0xa0], xmm1
movdqu xmmword [r14 + 0xb0], xmm8
mov qword [r14 + 0xc0], r15
mov qword [r14 + 0xc8], 0
mov qword [r14 + 0xd0], rcx
mov dword [r14 + 0xd8], eax
jmp 0x1400c7efe
xor r14d, r14d
movaps xmm0, xmmword [rsp + 0x6a0]
movups xmmword [rsp + 0xa86], xmm0
movaps xmm0, xmmword [rsp + 0x690]
movups xmmword [rsp + 0xa76], xmm0
movaps xmm0, xmmword [rsp + 0x680]
movups xmmword [rsp + 0xa66], xmm0
movaps xmm0, xmmword [rsp + 0x670]
movups xmmword [rsp + 0xa56], xmm0
movaps xmm0, xmmword [rsp + 0x630]
movaps xmm1, xmmword [rsp + 0x640]
movaps xmm2, xmmword [rsp + 0x650]
movaps xmm3, xmmword [rsp + 0x660]
movups xmmword [rsp + 0xa46], xmm3
movups xmmword [rsp + 0xa36], xmm2
movups xmmword [rsp + 0xa26], xmm1
movups xmmword [rsp + 0xa16], xmm0
movups xmm0, xmmword [rsp + 0x210]
movdqu xmm1, xmmword [rsp + 0x220]
movdqu xmm2, xmmword [rsp + 0x230]
movdqu xmm3, xmmword [rsp + 0x240]
movups xmmword [rsp + 0x635], xmm0
movdqu xmmword [rsp + 0x645], xmm1
movdqu xmmword [rsp + 0x655], xmm2
movdqu xmmword [rsp + 0x665], xmm3
movups xmm0, xmmword [rsp + 0x250]
movups xmmword [rsp + 0x675], xmm0
movups xmm0, xmmword [rsp + 0x260]
movups xmmword [rsp + 0x685], xmm0
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x990], rax
movdqu xmm0, xmmword [rsp + 0x270]
movdqa xmmword [rsp + 0x980], xmm0
movzx edi, byte [rsp + 0x384]
mov r15, qword [rsp + 0x300]
mov esi, dword [rsp + 0x308]
movzx ebp, byte [rsp + 0x390]
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400c8050
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x1c0
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1400cbf52
mov rbx, rax
mov qword [rax], 1
mov qword [rax + 8], 1
pxor xmm0, xmm0
movdqu xmmword [rax + 0x10], xmm0
movdqu xmmword [rax + 0x20], xmm0
mov qword [rax + 0x30], 0
mov rax, qword [rsp + 0x80]
mov qword [rbx + 0x40], rax
mov eax, dword [rsp + 0x58]
mov dword [rbx + 0x48], eax
mov rax, qword [rsp + 0x40]
mov qword [rbx + 0x50], rax
mov eax, dword [rsp + 0x30]
mov dword [rbx + 0x58], eax
mov qword [rbx + 0x60], 0x100000
mov eax, dword [rsp + 0x68]
mov dword [rbx + 0x68], eax
mov eax, dword [rsp + 0xb8]
mov dword [rbx + 0x6c], eax
mov eax, dword [rsp + 0x70]
mov dword [rbx + 0x70], eax
movzx eax, byte [rsp + 0x60]
mov byte [rbx + 0x74], al
movzx eax, byte [rsp + 0x168]
mov byte [rbx + 0x75], al
mov qword [rbx + 0x78], 0
movzx eax, byte [rsp + 0xc8]
mov byte [rbx + 0x88], al
movzx eax, byte [rsp + 0xb0]
mov byte [rbx + 0x89], al
movzx eax, byte [rsp + 0x90]
mov byte [rbx + 0x8a], al
mov word [rbx + 0x8b], 0
movzx eax, byte [rsp + 0x78]
mov byte [rbx + 0x8d], al
movzx eax, byte [rsp + 0x98]
mov byte [rbx + 0x8e], al
mov word [rbx + 0x8f], 0
mov byte [rbx + 0x91], 2
mov rcx, rbx
add rcx, 0x92
lea rdx, [rsp + 0xa10]
mov r8d, 0x86
call sub.msvcrt.dll_memcpy
cmp r12, r13
mov qword [rbx + 0x118], r14
mov word [rbx + 0x120], 0x101
movzx eax, byte [rsp + 0x50]
mov byte [rbx + 0x122], al
movups xmm0, xmmword [rsp + 0x630]
movdqu xmm1, xmmword [rsp + 0x640]
movdqu xmm2, xmmword [rsp + 0x650]
movdqu xmm3, xmmword [rsp + 0x660]
movups xmmword [rbx + 0x123], xmm0
movdqu xmmword [rbx + 0x133], xmm1
movdqu xmmword [rbx + 0x143], xmm2
movdqu xmmword [rbx + 0x153], xmm3
movups xmm0, xmmword [rsp + 0x670]
movups xmmword [rbx + 0x163], xmm0
movups xmm0, xmmword [rsp + 0x680]
movups xmmword [rbx + 0x173], xmm0
mov rax, qword [rsp + 0x68d]
mov qword [rbx + 0x180], rax
movdqa xmm0, xmmword [rsp + 0x980]
movdqu xmmword [rbx + 0x188], xmm0
mov rax, qword [rsp + 0x990]
mov qword [rbx + 0x198], rax
mov qword [rbx + 0x1a0], r15
mov dword [rbx + 0x1a8], esi
mov rax, qword [rsp + 0x38]
mov qword [rbx + 0x1b0], rax
mov byte [rbx + 0x1b8], dil
setne byte [rbx + 0x1b9]
mov byte [rbx + 0x1ba], bpl
mov rdi, qword [rsp + 0x368]
test rdi, rdi
mov r15, qword [rsp + 0xa0]
mov r12, qword [rsp + 0xd8]
je 0x1400c82cc
mov r14, qword [rdi + 0x58]
test r14, r14
je 0x1400c8292
mov rsi, qword [rdi + 0x60]
mov rcx, r14
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x1400c8292
cmp qword [rsi + 0x10], 0x11
jb 0x1400c8281
mov r14, qword [r14 - 8]
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, r14
call sub.kernel32.dll_HeapFree
mov rax, qword [rdi]
movabs rcx, 0x8000000000000000
cmp rax, rcx
je 0x1400c82bb
test rax, rax
je 0x1400c82bb
mov r8, qword [rdi + 8]
mov rcx, qword [0x140206128]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rdi
call sub.kernel32.dll_HeapFree
test r12, r12
jne 0x1400c82de
lea rcx, [rsp + 0x330]
call fcn.14005af50
test r15, r15
jne 0x1400c830b
mov rax, qword [rsp + 0x370]
test rax, rax
je 0x1400c830b
lock dec qword [rax]
jne 0x1400c830b
mov rcx, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x378]
call fcn.1400a2110
mov rsi, qword [rsp + 0x88]
mov qword [rsi + 0x1a8], rbx
mov rcx, qword [rsi + 0x1a0]
xor edx, edx
call fcn.14009d930
cmp rax, 1
jne 0x1400c83d2
mov rbx, rdx
lea rdi, [rsi + 0x1a8]
test rdx, rdx
je 0x1400c83b0
mov r14, qword [rbx + 0x58]
test r14, r14
je 0x1400c8376
mov rsi, qword [rbx + 0x60]
mov rcx, r14
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x1400c8376
cmp qword [rsi + 0x10], 0x11
jb 0x1400c8365
mov r14, qword [r14 - 8]
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, r14
call sub.kernel32.dll_HeapFree
mov rax, qword [rbx]
movabs rcx, 0x8000000000000000
cmp rax, rcx
je 0x1400c839f
test rax, rax
je 0x1400c839f
mov r8, qword [rbx + 8]
mov rcx, qword [0x140206128]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
mov rax, qword [rdi]
lock dec qword [rax]
mov rsi, qword [rsp + 0x88]
jne 0x1400c60cb
mov rcx, rdi
call fcn.1400a3a70
jmp 0x1400c60cb
mov rax, qword [rsi + 0x198]
mov qword [rsi + 0x1b0], rax
mov rdx, rsi
jmp 0x1400c84ee
mov rcx, qword [rsp + 0xa20]
test rcx, rcx
je 0x1400c61c6
lea rdx, [rsp + 0xa18]
mov r9, qword [rsp + 0xa18]
add rcx, r9
jmp 0x1400c8425
add r9, 2
cmp r8, rcx
cmovne r8, r9
mov r9, r8
cmp r8, rcx
je 0x1400c61c6
lea r8, [r9 + 1]
movzx r10d, byte [r9]
test r10b, r10b
jns 0x1400c8419
cmp r10b, 0xe0
jb 0x1400c840e
cmp r10b, 0xed
jne 0x1400c8464
cmp r8, rcx
je 0x1400c61c6
lea r8, [r9 + 2]
cmp r8, rcx
je 0x1400c61c6
cmp byte [r9 + 1], 0x9f
ja 0x1400c84c1
add r9, 3
mov r8, r9
jmp 0x1400c8419
add r9, 2
cmp r8, rcx
cmove r9, r8
xor r8d, r8d
cmp r9, rcx
setne r8b
add r8, r9
cmp r10b, 0xf0
jb 0x1400c8419
xor r9d, r9d
cmp r8, rcx
setne r9b
add r8, r9
jmp 0x1400c8419
call fcn.1400b1cd0
mov rdi, qword [0x140195008]
lock inc qword [rdi]
jg 0x1400c5ec0
jmp 0x1400cbf52
movups xmm0, xmmword [rsp + 0xa20]
movaps xmmword [rsp + 0x980], xmm0
jmp 0x1400c5eee
mov rcx, qword [rdx + 0x10]
mov qword [rsp + 0x810], rcx
movups xmm0, xmmword [rdx]
movaps xmmword [rsp + 0x800], xmm0
lea rcx, [rsp + 0x638]
jmp 0x1400c61f4
mov ecx, 7
int 0x29
ud2
lea rbx, [rdx + 0x1b0]
mov qword [rdx + 0x1b8], rbx
lea rsi, [rdx + 0x1c8]
mov byte [rdx + 0x1c8], 0
mov qword [rdx + 0x1c0], rbx
mov rax, qword [rsp + 0xcf8]
mov r15, qword [rax]
call fcn.14008dc80
xor edi, edi
mov ebp, 0
test rax, rax
je 0x1400c854a
movzx edi, byte [rax + 0x4c]
movzx ebp, byte [rax + 0x4d]
mov ecx, ebp
test dil, dil
je 0x1400c8547
mov ecx, ebp
sub cl, 1
jb 0x1400cadcf
mov byte [rax + 0x4d], cl
mov r13, qword [rbx]
lea rbx, [r13 + 0x180]
lea r14, [r13 + 0x80]
lea rcx, [rsp + 0x210]
mov rdx, rbx
mov r8, r14
call fcn.140061d50
mov rax, qword [rsp + 0x210]
cmp rax, 2
je 0x1400c85f5
cmp eax, 3
jne 0x1400c8610
mov ecx, 1
xor eax, eax
lock cmpxchg qword [r13 + 0x110], rcx
cmp rax, 2
je 0x1400c9c77
test rax, rax
jne 0x1400ca951
mov rax, qword [r15]
mov rcx, qword [r15 + 8]
call qword [rax]
mov r8, qword [r13 + 0x100]
mov rcx, qword [r13 + 0x108]
mov qword [r13 + 0x100], rax
mov qword [r13 + 0x108], rdx
xor edx, edx
mov eax, 1
lock cmpxchg qword [r13 + 0x110], rdx
jne 0x1400ca919
test r8, r8
je 0x1400ca951
call qword [r8 + 0x18]
jmp 0x1400ca951
mov rcx, qword [r13 + 0x1c8]
mov eax, 2
cmp rcx, 1
jbe 0x1400c87ce
jmp 0x1400cbf52
movups xmm0, xmmword [rsp + 0x288]
movaps xmmword [rsp + 0xa80], xmm0
movups xmm0, xmmword [rsp + 0x278]
movaps xmmword [rsp + 0xa70], xmm0
movups xmm0, xmmword [rsp + 0x268]
movaps xmmword [rsp + 0xa60], xmm0
movups xmm0, xmmword [rsp + 0x258]
movaps xmmword [rsp + 0xa50], xmm0
movups xmm0, xmmword [rsp + 0x218]
movdqu xmm1, xmmword [rsp + 0x228]
movdqu xmm2, xmmword [rsp + 0x238]
movdqu xmm3, xmmword [rsp + 0x248]
movdqa xmmword [rsp + 0xa40], xmm3
movdqa xmmword [rsp + 0xa30], xmm2
movdqa xmmword [rsp + 0xa20], xmm1
movaps xmmword [rsp + 0xa10], xmm0
mov rcx, qword [rsp + 0x298]
mov qword [rsp + 0x1b8], rcx
mov rcx, qword [rsp + 0x2a0]
mov qword [rsp + 0xa8], rcx
mov rcx, qword [rsp + 0x2a8]
mov qword [rsp + 0xc0], rcx
mov ecx, dword [rsp + 0x2c0]
mov dword [rsp + 0x4d0], ecx
movups xmm0, xmmword [rsp + 0x2b0]
movaps xmmword [rsp + 0x4c0], xmm0
mov ecx, dword [rsp + 0x2c4]
mov dword [rsp + 0xa0], ecx
movups xmm0, xmmword [rsp + 0x2c8]
movaps xmmword [rsp + 0x800], xmm0
movdqu xmm0, xmmword [rsp + 0x2d8]
movdqa xmmword [rsp + 0x810], xmm0
mov rcx, qword [rsp + 0x2e8]
mov qword [rsp + 0x820], rcx
mov rcx, qword [rsp + 0x2f0]
mov qword [rsp + 0x978], rcx
mov ecx, dword [rsp + 0x2f8]
mov dword [rsp + 0x18c], ecx
movzx ecx, byte [rsp + 0x300]
mov byte [rsp + 0x2f], cl
movzx ecx, byte [rsp + 0x301]
mov byte [rsp + 0x4f], cl
movzx ecx, byte [rsp + 0x302]
mov byte [rsp + 0x4e], cl
mov ecx, dword [rsp + 0x303]
mov dword [rsp + 0x540], ecx
movzx ecx, byte [rsp + 0x307]
mov byte [rsp + 0x544], cl
mov rcx, qword [rsp + 0x308]
mov qword [rsp + 0x178], rcx
mov rcx, qword [rsp + 0x310]
mov qword [rsp + 0x180], rcx
movzx ecx, byte [rsp + 0x318]
mov byte [rsp + 0x4d], cl
mov rcx, qword [rsp + 0x320]
mov qword [rsp + 0xd8], rcx
lock sub qword [r13 + 0x1c8], 2
jb 0x1400cc195
mov rdx, qword [rsp + 0x88]
mov r15, qword [rsp + 0xb0]
movaps xmm0, xmmword [rsp + 0xa80]
movaps xmmword [rsp + 0x6a0], xmm0
movaps xmm0, xmmword [rsp + 0xa70]
movaps xmmword [rsp + 0x690], xmm0
movaps xmm0, xmmword [rsp + 0xa60]
movaps xmmword [rsp + 0x680], xmm0
movaps xmm0, xmmword [rsp + 0xa50]
movaps xmmword [rsp + 0x670], xmm0
movaps xmm0, xmmword [rsp + 0xa10]
movaps xmm1, xmmword [rsp + 0xa20]
movaps xmm2, xmmword [rsp + 0xa30]
movaps xmm3, xmmword [rsp + 0xa40]
movaps xmmword [rsp + 0x660], xmm3
movaps xmmword [rsp + 0x650], xmm2
movaps xmmword [rsp + 0x640], xmm1
movaps xmmword [rsp + 0x630], xmm0
movaps xmm0, xmmword [rsp + 0x4c0]
movaps xmmword [rsp + 0x580], xmm0
mov ecx, dword [rsp + 0x4d0]
mov dword [rsp + 0x590], ecx
mov rcx, qword [rsp + 0x820]
mov qword [rsp + 0x110], rcx
movaps xmm0, xmmword [rsp + 0x800]
movaps xmm1, xmmword [rsp + 0x810]
movaps xmmword [rsp + 0x100], xmm1
movaps xmmword [rsp + 0xf0], xmm0
mov ecx, dword [rsp + 0x540]
mov dword [rsp + 0x190], ecx
movzx ecx, byte [rsp + 0x544]
mov byte [rsp + 0x194], cl
mov byte [rsi], 1
movaps xmm0, xmmword [rsp + 0x6a0]
movaps xmmword [rsp + 0x9f0], xmm0
movaps xmm0, xmmword [rsp + 0x690]
movaps xmmword [rsp + 0x9e0], xmm0
movaps xmm0, xmmword [rsp + 0x680]
movaps xmmword [rsp + 0x9d0], xmm0
movaps xmm0, xmmword [rsp + 0x670]
movaps xmmword [rsp + 0x9c0], xmm0
movaps xmm0, xmmword [rsp + 0x630]
movaps xmm1, xmmword [rsp + 0x640]
movaps xmm2, xmmword [rsp + 0x650]
movaps xmm3, xmmword [rsp + 0x660]
movaps xmmword [rsp + 0x9b0], xmm3
movaps xmmword [rsp + 0x9a0], xmm2
movaps xmmword [rsp + 0x990], xmm1
movaps xmmword [rsp + 0x980], xmm0
movaps xmm0, xmmword [rsp + 0x580]
movaps xmmword [rsp + 0x7e0], xmm0
mov ecx, dword [rsp + 0x590]
mov dword [rsp + 0x7f0], ecx
mov rcx, qword [rsp + 0x110]
mov qword [rsp + 0x7d0], rcx
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmm1, xmmword [rsp + 0x100]
movaps xmmword [rsp + 0x7c0], xmm1
movaps xmmword [rsp + 0x7b0], xmm0
mov ecx, dword [rsp + 0x190]
mov dword [rsp + 0x170], ecx
movzx ecx, byte [rsp + 0x194]
mov byte [rsp + 0x174], cl
cmp eax, 2
je 0x1400cabda
movaps xmm0, xmmword [rsp + 0x9f0]
movaps xmmword [rsp + 0xda0], xmm0
movaps xmm0, xmmword [rsp + 0x9e0]
movaps xmmword [rsp + 0xd90], xmm0
movaps xmm0, xmmword [rsp + 0x9d0]
movaps xmmword [rsp + 0xd80], xmm0
movaps xmm0, xmmword [rsp + 0x9c0]
movaps xmmword [rsp + 0xd70], xmm0
movaps xmm0, xmmword [rsp + 0x980]
movaps xmm1, xmmword [rsp + 0x990]
movaps xmm2, xmmword [rsp + 0x9a0]
movaps xmm3, xmmword [rsp + 0x9b0]
movaps xmmword [rsp + 0xd60], xmm3
movaps xmmword [rsp + 0xd50], xmm2
movaps xmmword [rsp + 0xd40], xmm1
movaps xmmword [rsp + 0xd30], xmm0
movzx ecx, byte [rsp + 0x174]
mov byte [rsp + 0xd4], cl
mov ecx, dword [rsp + 0x170]
mov dword [rsp + 0xd0], ecx
movaps xmm0, xmmword [rsp + 0x7e0]
movaps xmmword [rsp + 0x5e0], xmm0
mov ecx, dword [rsp + 0x7f0]
mov dword [rsp + 0x5f0], ecx
movaps xmm0, xmmword [rsp + 0x7b0]
movaps xmm1, xmmword [rsp + 0x7c0]
movaps xmmword [rsp + 0x190], xmm0
movaps xmmword [rsp + 0x1a0], xmm1
mov rcx, qword [rsp + 0x7d0]
mov qword [rsp + 0x1b0], rcx
movaps xmm0, xmmword [rsp + 0xda0]
movaps xmmword [rsp + 0x140], xmm0
movaps xmm0, xmmword [rsp + 0xd90]
movaps xmmword [rsp + 0x130], xmm0
movaps xmm0, xmmword [rsp + 0xd50]
movaps xmm1, xmmword [rsp + 0xd60]
movdqa xmm2, xmmword [rsp + 0xd70]
movdqa xmm3, xmmword [rsp + 0xd80]
movdqa xmmword [rsp + 0x120], xmm3
movdqa xmmword [rsp + 0x110], xmm2
movaps xmmword [rsp + 0x100], xmm1
movaps xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0x540], rax
lea rsi, [rsp + 0x548]
movdqa xmm0, xmmword [rsp + 0x980]
movdqa xmm1, xmmword [rsp + 0x990]
movdqu xmmword [rsp + 0x548], xmm0
movdqu xmmword [rsp + 0x558], xmm1
cmp dword [rsp + 0xa0], 0
je 0x1400c8bfa
mov ebx, dword [rsp + 0xa0]
cmp qword [rsp + 0xc0], rbx
jbe 0x1400c8b75
mov rax, qword [rsp + 0xa8]
cmp byte [rax + rbx], 0xbf
jg 0x1400c8b7b
jmp 0x1400cbf52
jne 0x1400cbf52
cmp dword [rsp + 0xa0], 4
jne 0x1400c8ba9
lea rdx, str.httphttpswswssftpfile__file:__
mov rcx, qword [rsp + 0xa8]
mov r8, rbx
call sub.msvcrt.dll_memcmp
mov r10, qword [rsp + 0x50]
test eax, eax
je 0x1400c9b8f
cmp qword [rsp + 0xc0], rbx
jbe 0x1400c8bc6
mov rax, qword [rsp + 0xa8]
cmp byte [rax + rbx], 0xbf
jg 0x1400c8bcc
jmp 0x1400cbf52
jne 0x1400cbf52
cmp dword [rsp + 0xa0], 5
jne 0x1400c8bfa
lea rdx, [0x1401f1ad8]
mov rcx, qword [rsp + 0xa8]
mov r8, rbx
call sub.msvcrt.dll_memcmp
mov r10, qword [rsp + 0x50]
test eax, eax
je 0x1400c9b8f
movaps xmm0, xmmword [rsp + 0x7e0]
movaps xmmword [rsp + 0xa10], xmm0
mov eax, dword [rsp + 0x7f0]
mov dword [rsp + 0xa20], eax
movaps xmm0, xmmword [rsp + 0x7b0]
movaps xmm1, xmmword [rsp + 0x7c0]
movaps xmmword [rsp + 0x210], xmm0
movaps xmmword [rsp + 0x220], xmm1
mov rax, qword [rsp + 0x7d0]
mov qword [rsp + 0x230], rax
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400c8c73
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x70
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1400cbf52
mov r13, rax
mov qword [rax + 0x58], 1
lea rax, [0x1401cc538]
mov qword [r13 + 0x60], rax
mov word [r13 + 0x68], 0
mov rax, qword [rsp + 0x1b8]
mov qword [r13], rax
mov rax, qword [rsp + 0xa8]
mov qword [r13 + 8], rax
mov rax, qword [rsp + 0xc0]
mov qword [r13 + 0x10], rax
movaps xmm0, xmmword [rsp + 0xa10]
movups xmmword [r13 + 0x18], xmm0
mov eax, dword [rsp + 0xa20]
mov dword [r13 + 0x28], eax
mov eax, dword [rsp + 0xa0]
mov dword [r13 + 0x2c], eax
movdqa xmm0, xmmword [rsp + 0x210]
movdqa xmm1, xmmword [rsp + 0x220]
movdqu xmmword [r13 + 0x30], xmm0
movdqu xmmword [r13 + 0x40], xmm1
mov rax, qword [rsp + 0x230]
mov qword [r13 + 0x50], rax
cmp qword [rsp + 0x540], 0
je 0x1400c8d2a
mov rcx, rsi
call fcn.140072240
cmp qword [rsp + 0x140], 0
je 0x1400c8d4b
mov r8, qword [rsp + 0x138]
mov rcx, qword [0x140206128]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rbx, qword [rsp + 0x110]
mov rsi, qword [rsp + 0x118]
test rsi, rsi
je 0x1400c8da5
lea r14, [rbx + 0x30]
jmp 0x1400c8d8b
mov rax, qword [r14 - 0x18]
mov rdx, qword [r14 - 0x10]
mov r8, qword [r14 - 8]
mov rcx, r14
call qword [rax + 0x10]
add r14, 0x68
dec rsi
je 0x1400c8da5
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x1400c8d70
lea rcx, [r14 + 0x28]
mov rdx, qword [r14 + 0x18]
mov r8, qword [r14 + 0x20]
call qword [rax + 0x10]
jmp 0x1400c8d70
cmp qword [rsp + 0x108], 0
je 0x1400c8dc1
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
mov rbx, qword [rsp + 0x128]
mov rsi, qword [rsp + 0x130]
test rsi, rsi
je 0x1400c8dfb
lea r14, [rbx + 0x38]
nop word [rax + rax]
mov rax, qword [r14 - 0x18]
mov rdx, qword [r14 - 0x10]
mov r8, qword [r14 - 8]
mov rcx, r14
call qword [rax + 0x10]
add r14, 0x48
dec rsi
jne 0x1400c8de0
cmp qword [rsp + 0x120], 0
je 0x1400c8e17
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
cmp byte [rsp + 0x2f], 0xa
jb 0x1400c8e3f
cmp qword [rsp + 0x180], 0
je 0x1400c8e3f
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, qword [rsp + 0x178]
call sub.kernel32.dll_HeapFree
mov ebp, 2
mov eax, 1
lock xadd qword [0x140195100], rax
mov qword [rsp + 0x610], rax
movaps xmm0, xmmword [rsp + 0x4c0]
movaps xmm1, xmmword [rsp + 0x4d0]
movaps xmm2, xmmword [rsp + 0x4e0]
movaps xmm3, xmmword [rsp + 0x4f0]
movaps xmmword [rsp + 0xf0], xmm0
movaps xmmword [rsp + 0x100], xmm1
movaps xmmword [rsp + 0x110], xmm2
movaps xmmword [rsp + 0x120], xmm3
movaps xmm0, xmmword [rsp + 0x500]
movaps xmmword [rsp + 0x130], xmm0
movaps xmm0, xmmword [rsp + 0x510]
movaps xmmword [rsp + 0x140], xmm0
movaps xmm0, xmmword [rsp + 0x520]
movaps xmmword [rsp + 0x150], xmm0
mov rax, qword [rsp + 0x530]
mov qword [rsp + 0x160], rax
mov eax, dword [rsp + 0x200]
mov dword [rsp + 0x1a0], eax
movaps xmm0, xmmword [rsp + 0x1f0]
movaps xmmword [rsp + 0x190], xmm0
movaps xmm0, xmmword [rsp + 0x1c0]
movaps xmm1, xmmword [rsp + 0x1d0]
movaps xmmword [rsp + 0x580], xmm0
movaps xmmword [rsp + 0x590], xmm1
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0x5a0], rax
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0x600], eax
movzx eax, byte [rsp + 0xe4]
mov byte [rsp + 0x604], al
lea rcx, [rsp + 0x630]
lea rbx, [rsp + 0x800]
mov r8d, 0x158
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov eax, dword [rsp + 0x5e0]
mov dword [rsp + 0x790], eax
mov eax, dword [rsp + 0x5e3]
mov dword [rsp + 0x793], eax
mov qword [rsp + 0xa10], rbp
mov qword [rsp + 0xa18], r13
movaps xmm0, xmmword [rsp + 0x4c0]
movaps xmm1, xmmword [rsp + 0x4d0]
movaps xmm2, xmmword [rsp + 0x4e0]
movaps xmm3, xmmword [rsp + 0x4f0]
movups xmmword [rsp + 0xa20], xmm0
movups xmmword [rsp + 0xa30], xmm1
movups xmmword [rsp + 0xa40], xmm2
movups xmmword [rsp + 0xa50], xmm3
movaps xmm0, xmmword [rsp + 0x500]
movups xmmword [rsp + 0xa60], xmm0
movaps xmm0, xmmword [rsp + 0x510]
movups xmmword [rsp + 0xa70], xmm0
movaps xmm0, xmmword [rsp + 0x520]
movups xmmword [rsp + 0xa80], xmm0
mov rax, qword [rsp + 0x530]
mov qword [rsp + 0xa90], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0xa98], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0xaa0], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0xaa8], rax
mov eax, dword [rsp + 0x200]
mov dword [rsp + 0xac0], eax
movaps xmm0, xmmword [rsp + 0x1f0]
movups xmmword [rsp + 0xab0], xmm0
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0xac4], eax
movaps xmm0, xmmword [rsp + 0x1c0]
movaps xmm1, xmmword [rsp + 0x1d0]
movups xmmword [rsp + 0xac8], xmm0
movups xmmword [rsp + 0xad8], xmm1
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0xae8], rax
mov qword [rsp + 0xaf0], 0
mov qword [rsp + 0xaf8], 8
mov qword [rsp + 0xb00], 0
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0xb08], al
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0xb09], al
movzx eax, byte [rsp + 0x30]
mov byte [rsp + 0xb0a], al
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0xb0b], eax
movzx eax, byte [rsp + 0xe4]
mov byte [rsp + 0xb0f], al
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0xb10], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xb18], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0xb20], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xb28], rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0xb30], rax
mov qword [rsp + 0xb38], 0
mov qword [rsp + 0xb40], r15
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xb48], rax
lea rcx, [rsp + 0xb50]
mov r8d, 0x158
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov byte [rsp + 0xca8], 0
mov eax, dword [rsp + 0x5e0]
mov ecx, dword [rsp + 0x5e3]
mov dword [rsp + 0xca9], eax
mov dword [rsp + 0xcac], ecx
lea rsi, [rsp + 0x610]
mov qword [rsp + 0xcb0], rsi
call fcn.14008dc80
test rax, rax
je 0x1400cc16e
mov r14, rax
mov rax, qword [rax]
movabs rcx, 0x8000000000000000
dec rcx
cmp rax, rcx
jae 0x1400cbf52
inc rax
mov qword [r14], rax
mov edi, dword [r14 + 8]
mov qword [rsp + 0x210], rbp
mov qword [rsp + 0x218], r13
movaps xmm0, xmmword [rsp + 0x4c0]
movaps xmm1, xmmword [rsp + 0x4d0]
movaps xmm2, xmmword [rsp + 0x4e0]
movaps xmm3, xmmword [rsp + 0x4f0]
movups xmmword [rsp + 0x220], xmm0
movups xmmword [rsp + 0x230], xmm1
movups xmmword [rsp + 0x240], xmm2
movups xmmword [rsp + 0x250], xmm3
movaps xmm0, xmmword [rsp + 0x500]
movups xmmword [rsp + 0x260], xmm0
movaps xmm0, xmmword [rsp + 0x510]
movups xmmword [rsp + 0x270], xmm0
movaps xmm0, xmmword [rsp + 0x520]
movups xmmword [rsp + 0x280], xmm0
mov rax, qword [rsp + 0x530]
mov qword [rsp + 0x290], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x298], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x2a0], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x2a8], rax
mov eax, dword [rsp + 0x200]
mov dword [rsp + 0x2c0], eax
movaps xmm0, xmmword [rsp + 0x1f0]
movups xmmword [rsp + 0x2b0], xmm0
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0x2c4], eax
movaps xmm0, xmmword [rsp + 0x1c0]
movaps xmm1, xmmword [rsp + 0x1d0]
movups xmmword [rsp + 0x2c8], xmm0
movups xmmword [rsp + 0x2d8], xmm1
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0x2e8], rax
mov qword [rsp + 0x2f0], 0
mov qword [rsp + 0x2f8], 8
mov qword [rsp + 0x300], 0
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x308], al
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0x309], al
movzx eax, byte [rsp + 0x30]
mov byte [rsp + 0x30a], al
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0x30b], eax
movzx eax, byte [rsp + 0xe4]
mov byte [rsp + 0x30f], al
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x310], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x318], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x320], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x328], rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x330], rax
mov qword [rsp + 0x338], 0
mov qword [rsp + 0xb0], r15
mov qword [rsp + 0x340], r15
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x348], rax
lea rcx, [rsp + 0x350]
lea rdx, [rsp + 0x800]
mov r8d, 0x158
call sub.msvcrt.dll_memcpy
mov byte [rsp + 0x4a8], 0
mov eax, dword [rsp + 0x5e0]
mov ecx, dword [rsp + 0x5e3]
mov dword [rsp + 0x4a9], eax
mov dword [rsp + 0x4ac], ecx
mov qword [rsp + 0x4b0], rsi
cmp edi, 2
je 0x1400cc15c
mov rsi, qword [rsp + 0x610]
mov r15, r14
add r15, 0x10
cmp qword [r14 + 8], 0
je 0x1400c9761
mov rdi, qword [r15]
lock inc qword [rdi]
jle 0x1400cbf52
lea r12, [rdi + 0x10]
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400c9477
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x380
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1400cbf52
mov r15, rax
and r15, 0xffffffffffffff80
mov qword [r15 + 0x78], rax
mov qword [r15 + 0x80], 0xcc
mov qword [r15 + 0x88], 0
lea rax, [0x1401cb040]
mov qword [r15 + 0x90], rax
mov qword [r15 + 0x98], 0
mov qword [r15 + 0xa0], rdi
mov qword [r15 + 0xa8], rsi
mov qword [r15 + 0xb0], rbp
lea rbx, [r15 + 0x80]
mov qword [r15 + 0xb8], r13
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmm1, xmmword [rsp + 0x100]
movdqa xmm2, xmmword [rsp + 0x110]
movdqa xmm3, xmmword [rsp + 0x120]
movups xmmword [r15 + 0xc0], xmm0
movups xmmword [r15 + 0xd0], xmm1
movdqu xmmword [r15 + 0xe0], xmm2
movdqu xmmword [r15 + 0xf0], xmm3
movaps xmm0, xmmword [rsp + 0x130]
movups xmmword [r15 + 0x100], xmm0
movaps xmm0, xmmword [rsp + 0x140]
movups xmmword [r15 + 0x110], xmm0
movaps xmm0, xmmword [rsp + 0x150]
movups xmmword [r15 + 0x120], xmm0
mov rax, qword [rsp + 0x160]
mov qword [r15 + 0x130], rax
mov rax, qword [rsp + 0x98]
mov qword [r15 + 0x138], rax
mov rax, qword [rsp + 0x78]
mov qword [r15 + 0x140], rax
mov rax, qword [rsp + 0xc8]
mov qword [r15 + 0x148], rax
mov eax, dword [rsp + 0x1a0]
mov dword [r15 + 0x160], eax
movaps xmm0, xmmword [rsp + 0x190]
movups xmmword [r15 + 0x150], xmm0
mov eax, dword [rsp + 0x90]
mov dword [r15 + 0x164], eax
mov rax, qword [rsp + 0x5a0]
mov qword [r15 + 0x188], rax
movdqa xmm0, xmmword [rsp + 0x580]
movdqa xmm1, xmmword [rsp + 0x590]
movdqu xmmword [r15 + 0x178], xmm1
movdqu xmmword [r15 + 0x168], xmm0
mov qword [r15 + 0x190], 0
mov qword [r15 + 0x198], 8
mov qword [r15 + 0x1a0], 0
movzx eax, byte [rsp + 0x60]
mov byte [r15 + 0x1a8], al
movzx eax, byte [rsp + 0x70]
mov byte [r15 + 0x1a9], al
movzx eax, byte [rsp + 0x30]
mov byte [r15 + 0x1aa], al
movzx eax, byte [rsp + 0x604]
mov byte [r15 + 0x1af], al
mov eax, dword [rsp + 0x600]
mov dword [r15 + 0x1ab], eax
mov rax, qword [rsp + 0x80]
mov qword [r15 + 0x1b0], rax
mov rax, qword [rsp + 0x40]
mov qword [r15 + 0x1b8], rax
mov rax, qword [rsp + 0x58]
mov qword [r15 + 0x1c0], rax
mov rax, qword [rsp + 0x68]
mov qword [r15 + 0x1c8], rax
mov rax, qword [rsp + 0x38]
mov qword [r15 + 0x1d0], rax
mov qword [r15 + 0x1d8], 0
mov rax, qword [rsp + 0xb0]
mov qword [r15 + 0x1e0], rax
mov rax, qword [rsp + 0xd8]
mov qword [r15 + 0x1e8], rax
lea rcx, [r15 + 0x1f0]
lea rdx, [rsp + 0x630]
mov r8d, 0x158
call sub.msvcrt.dll_memcpy
mov byte [r15 + 0x348], 0
mov eax, dword [rsp + 0x790]
mov ecx, dword [rsp + 0x793]
mov dword [r15 + 0x349], eax
mov dword [r15 + 0x34c], ecx
pxor xmm0, xmm0
movdqa xmmword [r15 + 0x350], xmm0
mov qword [r15 + 0x360], 0
mov rax, qword [rdi + 0x90]
mov qword [r15 + 0x98], rax
mov r13, qword [rdi + 0x70]
mov rbp, qword [rdi + 0x88]
and rbp, rsi
shl rbp, 5
mov r15, r13
add r15, rbp
mov rcx, r15
call sub.kernel32.dll_AcquireSRWLockExclusive
movzx eax, byte [r13 + rbp + 8]
movzx eax, byte [rdi + 0x98]
test al, al
je 0x1400c9aed
mov rcx, r15
jmp 0x1400c9aab
mov rdi, qword [r15]
lock inc qword [rdi]
jle 0x1400cbf52
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400c9799
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x380
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1400cbf52
mov r12, rax
and r12, 0xffffffffffffff80
mov qword [r12 + 0x78], rax
mov qword [r12 + 0x80], 0xcc
mov qword [r12 + 0x88], 0
lea rax, [0x1401cb450]
mov qword [r12 + 0x90], rax
mov qword [r12 + 0x98], 0
mov qword [r12 + 0xa0], rdi
mov qword [r12 + 0xa8], rsi
mov qword [r12 + 0xb0], rbp
lea rbx, [r12 + 0x80]
mov qword [r12 + 0xb8], r13
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmm1, xmmword [rsp + 0x100]
movdqa xmm2, xmmword [rsp + 0x110]
movdqa xmm3, xmmword [rsp + 0x120]
movups xmmword [r12 + 0xc0], xmm0
movups xmmword [r12 + 0xd0], xmm1
movdqu xmmword [r12 + 0xe0], xmm2
movdqu xmmword [r12 + 0xf0], xmm3
movaps xmm0, xmmword [rsp + 0x130]
movups xmmword [r12 + 0x100], xmm0
movaps xmm0, xmmword [rsp + 0x140]
movups xmmword [r12 + 0x110], xmm0
movaps xmm0, xmmword [rsp + 0x150]
movups xmmword [r12 + 0x120], xmm0
mov rax, qword [rsp + 0x160]
mov qword [r12 + 0x130], rax
mov rax, qword [rsp + 0x98]
mov qword [r12 + 0x138], rax
mov rax, qword [rsp + 0x78]
mov qword [r12 + 0x140], rax
mov rax, qword [rsp + 0xc8]
mov qword [r12 + 0x148], rax
mov eax, dword [rsp + 0x1a0]
mov dword [r12 + 0x160], eax
movaps xmm0, xmmword [rsp + 0x190]
movups xmmword [r12 + 0x150], xmm0
mov eax, dword [rsp + 0x90]
mov dword [r12 + 0x164], eax
mov rax, qword [rsp + 0x5a0]
mov qword [r12 + 0x188], rax
movdqa xmm0, xmmword [rsp + 0x580]
movdqa xmm1, xmmword [rsp + 0x590]
movdqu xmmword [r12 + 0x178], xmm1
movdqu xmmword [r12 + 0x168], xmm0
mov qword [r12 + 0x190], 0
mov qword [r12 + 0x198], 8
mov qword [r12 + 0x1a0], 0
movzx eax, byte [rsp + 0x60]
mov byte [r12 + 0x1a8], al
movzx eax, byte [rsp + 0x70]
mov byte [r12 + 0x1a9], al
movzx eax, byte [rsp + 0x30]
mov byte [r12 + 0x1aa], al
movzx eax, byte [rsp + 0x604]
mov byte [r12 + 0x1af], al
mov eax, dword [rsp + 0x600]
mov dword [r12 + 0x1ab], eax
mov rax, qword [rsp + 0x80]
mov qword [r12 + 0x1b0], rax
mov rax, qword [rsp + 0x40]
mov qword [r12 + 0x1b8], rax
mov rax, qword [rsp + 0x58]
mov qword [r12 + 0x1c0], rax
mov rax, qword [rsp + 0x68]
mov qword [r12 + 0x1c8], rax
mov rax, qword [rsp + 0x38]
mov qword [r12 + 0x1d0], rax
mov qword [r12 + 0x1d8], 0
mov rax, qword [rsp + 0xb0]
mov qword [r12 + 0x1e0], rax
mov rax, qword [rsp + 0xd8]
mov qword [r12 + 0x1e8], rax
lea rcx, [r12 + 0x1f0]
lea rdx, [rsp + 0x630]
mov r8d, 0x158
call sub.msvcrt.dll_memcpy
mov byte [r12 + 0x348], 0
mov eax, dword [rsp + 0x790]
mov ecx, dword [rsp + 0x793]
mov dword [r12 + 0x349], eax
mov dword [r12 + 0x34c], ecx
pxor xmm0, xmm0
movdqa xmmword [r12 + 0x350], xmm0
mov qword [r12 + 0x360], 0
mov rax, qword [rdi + 0x80]
mov qword [r12 + 0x98], rax
mov r12, qword [rdi + 0x60]
mov rbp, qword [rdi + 0x78]
and rbp, rsi
shl rbp, 5
lea r13, [r12 + rbp]
mov rcx, r13
call sub.kernel32.dll_AcquireSRWLockExclusive
movzx eax, byte [r12 + rbp + 8]
movzx eax, byte [rdi + 0x88]
test al, al
je 0x1400c9bdc
mov rcx, r13
call fcn.1401168fc
mov rax, qword [rbx + 0x10]
mov rcx, rbx
call qword [rax + 0x30]
mov rax, 0xffffffffffffffc0
lock xadd qword [rbx], rax
cmp rax, 0x3f
jbe 0x1400cbf52
and rax, 0xffffffffffffffc0
cmp rax, 0x40
jne 0x1400c9c4c
mov rax, qword [rbx + 0x10]
mov rcx, rbx
call qword [rax + 0x10]
jmp 0x1400c9c4c
mov rcx, qword [rbx + 0x10]
mov rax, qword [rcx + 0x48]
cmp qword [rbx + rax], rsi
jne 0x1400cbf52
mov rax, qword [r15 + 0x10]
cmp rax, rbx
je 0x1400cbf52
mov rcx, qword [rcx + 0x38]
mov qword [rbx + rcx + 8], rax
mov rcx, qword [rbx + 0x10]
mov rcx, qword [rcx + 0x38]
mov qword [rbx + rcx], 0
test rax, rax
je 0x1400c9b36
mov rcx, qword [rax + 0x10]
mov rcx, qword [rcx + 0x38]
mov qword [rax + rcx], rbx
mov qword [r15 + 0x10], rbx
cmp qword [r15 + 0x18], 0
jne 0x1400c9b45
mov qword [r15 + 0x18], rbx
lock inc qword [rdi + 0x80]
mov rcx, r15
call fcn.1401168fc
mov byte [rsp + 0xcc0], 0
mov qword [rsp + 0x540], r12
mov qword [rsp + 0x548], rbx
lea rax, [rsp + 0xcc0]
mov qword [rsp + 0x550], rax
lea rcx, [rsp + 0x540]
call fcn.1400fab10
jmp 0x1400c9c4c
mov rax, qword [rsp + 0x88]
mov rsi, qword [rax + 0x1a8]
lea rax, [rsi + 0x10]
mov qword [rsp + 0xb0], rax
cmp byte [rsi + 0x1ba], 0
je 0x1400c9d2a
cmp qword [rsp + 0xc0], rbx
jbe 0x1400c9c88
mov rax, qword [rsp + 0xa8]
cmp byte [rax + rbx], 0xbf
jg 0x1400c9c8e
jmp 0x1400cbf52
mov rcx, qword [rbx + 0x10]
mov rax, qword [rcx + 0x48]
cmp qword [rbx + rax], rsi
jne 0x1400cbf52
mov rax, qword [r13 + 0x10]
cmp rax, rbx
je 0x1400cbf52
mov rcx, qword [rcx + 0x38]
mov qword [rbx + rcx + 8], rax
mov rcx, qword [rbx + 0x10]
mov rcx, qword [rcx + 0x38]
mov qword [rbx + rcx], 0
test rax, rax
je 0x1400c9c25
mov rcx, qword [rax + 0x10]
mov rcx, qword [rcx + 0x38]
mov qword [rax + rcx], rbx
mov qword [r13 + 0x10], rbx
cmp qword [r13 + 0x18], 0
jne 0x1400c9c34
mov qword [r13 + 0x18], rbx
lock inc qword [rdi + 0x70]
mov rcx, r13
call fcn.1401168fc
mov rcx, r15
mov rdx, rbx
call fcn.140100450
dec qword [r14]
mov ecx, 0x84
mov eax, 0xcc
lock cmpxchg qword [rbx], rcx
je 0x1400c9c6a
mov rax, qword [rbx + 0x10]
mov rcx, rbx
call qword [rax + 0x20]
mov rdx, qword [rsp + 0x88]
jmp 0x1400c84ee
mov rax, qword [r15]
mov rcx, qword [r15 + 8]
call qword [rax + 0x10]
pause
jmp 0x1400ca951
jne 0x1400cbf52
cmp dword [rsp + 0xa0], 5
jne 0x1400c9cb8
lea rdx, [0x1401f1ad8]
mov rcx, qword [rsp + 0xa8]
mov r8, rbx
call sub.msvcrt.dll_memcmp
mov r10, qword [rsp + 0x50]
test eax, eax
je 0x1400c9d2a
movaps xmm0, xmmword [rsp + 0x7e0]
movaps xmmword [rsp + 0xa10], xmm0
mov eax, dword [rsp + 0x7f0]
mov dword [rsp + 0xa20], eax
movaps xmm0, xmmword [rsp + 0x7b0]
movaps xmm1, xmmword [rsp + 0x7c0]
movaps xmmword [rsp + 0x210], xmm0
movaps xmmword [rsp + 0x220], xmm1
mov rax, qword [rsp + 0x7d0]
mov qword [rsp + 0x230], rax
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
je 0x1400cabbf
lea rsi, [rsp + 0x548]
jmp 0x1400c8c73
xor ecx, ecx
cmp qword [rsi + 0x150], 0
movabs rbx, 0x100000001b3
sete cl
add rcx, rcx
xor edi, edi
pxor xmm6, xmm6
mov qword [rsp + 0x58], rsi
jmp 0x1400c9d89
movdqu xmm0, xmmword [rsp + 0x630]
movdqa xmmword [rsp + 0x800], xmm0
nop word cs:[rax + rax]
mov rsi, qword [rsp + 0x58]
movabs rbx, 0x100000001b3
mov rdi, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x50], r10
cmp rcx, 2
mov rdx, qword [rsp + 0xb8]
jne 0x1400c9dc0
inc rdi
cmp rdi, qword [rsi + 0x150]
jae 0x1400ca64d
mov rax, qword [rsi + 0x148]
jmp 0x1400c9e10
cmp rdi, qword [rsi + 0x150]
jae 0x1400cbf52
mov rax, qword [rsi + 0x148]
test rcx, rcx
je 0x1400c9e10
cmp rdx, qword [rsi + 0x168]
jae 0x1400cbf52
mov rcx, qword [rsi + 0x160]
lea rdx, [rdx + rdx*8]
cmp qword [rcx + rdx*8 + 0x10], 0
je 0x1400c9e32
mov rsi, qword [rcx + rdx*8 + 0x18]
mov r14d, 1
jmp 0x1400c9e38
imul rcx, rdi, 0x68
mov rsi, qword [rax + rcx + 8]
cmp qword [rax + rcx], 1
mov r14d, 0
adc r14, 1
lea r15, [rax + rcx]
add r15, 0x18
jmp 0x1400c9e40
mov r14d, 2
lea r15, [rcx + rdx*8]
add r15, 0x20
imul rcx, rdi, 0x68
lea r12, [rax + rcx]
add r12, 0x40
lea rcx, [rsp + 0xf0]
call fcn.1400935b0
mov r13, qword [rsp + 0xf0]
cmp r13, 2
mov qword [rsp + 0x38], r12
mov qword [rsp + 0xb8], rsi
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x30], r13
jne 0x1400c9fc0
mov r8, qword [rsp + 0xf8]
mov r9, qword [rsp + 0x100]
mov r10, r8
movabs rax, 0x736f6d6570736575
xor r10, rax
mov rax, r9
movabs rcx, 0x646f72616e646f6d
xor rax, rcx
mov rdx, r8
movabs rcx, 0x6c7967656e657261
xor rdx, rcx
mov rcx, r9
movabs r11, 0x7465646279746573
xor rcx, r11
mov qword [rsp + 0x210], r10
mov qword [rsp + 0x218], rdx
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], rcx
mov qword [rsp + 0x230], r8
mov qword [rsp + 0x238], r9
lea r8, [rsp + 0x240]
movdqu xmmword [r8], xmm6
mov qword [r8 + 0x10], 0
mov r8, qword [r12]
xor r9d, r9d
test r8, r8
setne r9b
xor rcx, r9
add rdx, rcx
rol rcx, 0x10
add r10, rax
rol rax, 0xd
xor rax, r10
rol r10, 0x20
xor rcx, rdx
add r10, rcx
xor r9, r10
add rdx, rax
rol rax, 0x11
xor rax, rdx
rol rdx, 0x20
rol rcx, 0x15
xor rcx, r10
mov qword [rsp + 0x240], 8
mov qword [rsp + 0x228], rcx
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x218], rdx
mov qword [rsp + 0x210], r9
movdqu xmmword [rsp + 0x248], xmm6
test r8, r8
je 0x1400ca044
mov rdx, qword [r12 + 8]
mov r8, qword [r12 + 0x10]
lea rcx, [rsp + 0x210]
jmp 0x1400ca068
mov rax, qword [r12]
xor edx, edx
test rax, rax
setne dl
movabs rcx, 0xcbf29ce484222325
xor rdx, rcx
movabs rcx, 0x1efac7090aef4a21
imul rdx, rcx
test rax, rax
mov r11, r12
je 0x1400ca17c
mov r8, qword [r11 + 0x10]
test r8, r8
mov r10, qword [rsp + 0x50]
je 0x1400ca195
mov rax, qword [r11 + 8]
mov r9, r8
and r9, 7
je 0x1400ca19d
mov rcx, rax
nop dword [rax]
movzx edi, byte [rcx]
inc rcx
xor rdi, rdx
imul rdi, rbx
mov rdx, rdi
dec r9
jne 0x1400ca020
cmp r8, 8
jae 0x1400ca1a9
jmp 0x1400ca220
movzx eax, byte [r12 + 8]
mov qword [rsp + 0xa10], rax
mov r8d, 8
lea rcx, [rsp + 0x210]
lea rdx, [rsp + 0xa10]
call fcn.140092ca0
mov rax, qword [rsp + 0x220]
mov r9, qword [rsp + 0x240]
shl r9, 0x38
or r9, qword [rsp + 0x248]
mov rcx, qword [rsp + 0x228]
mov r8, qword [rsp + 0x210]
add r8, rax
rol rax, 0xd
xor rcx, r9
xor rax, r8
rol r8, 0x20
mov rdx, qword [rsp + 0x218]
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rcx, r8
xor rax, rdx
rol rdx, 0x20
xor r8, r9
add r8, rax
rol rax, 0xd
xor rax, r8
rol r8, 0x20
xor rdx, 0xff
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rax, rdx
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
xor rax, r8
rol r8, 0x20
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rax, rdx
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
xor rax, r8
add rdx, rcx
shl rcx, 0x10
xor rcx, rdx
shr rcx, 0x2b
add rdx, rax
shr rax, 0x2f
xor rax, rcx
mov rdi, rdx
shr rdi, 0x20
xor rdi, rdx
xor rdi, rax
mov r10, qword [rsp + 0x50]
mov r11, qword [rsp + 0x38]
jmp 0x1400ca220
movzx eax, byte [r11 + 8]
xor rdx, rax
imul rdx, rcx
mov rdi, rdx
mov r10, qword [rsp + 0x50]
jmp 0x1400ca220
mov rdi, rdx
jmp 0x1400ca220
mov rdi, rdx
mov rcx, rax
cmp r8, 8
jb 0x1400ca220
add rax, r8
nop dword [rax]
movzx edx, byte [rcx]
xor rdx, rdi
imul rdx, rbx
movzx r8d, byte [rcx + 1]
xor r8, rdx
imul r8, rbx
movzx edx, byte [rcx + 2]
xor rdx, r8
imul rdx, rbx
movzx r8d, byte [rcx + 3]
xor r8, rdx
imul r8, rbx
movzx edx, byte [rcx + 4]
xor rdx, r8
imul rdx, rbx
movzx r8d, byte [rcx + 5]
xor r8, rdx
imul r8, rbx
movzx edx, byte [rcx + 6]
xor rdx, r8
imul rdx, rbx
movzx edi, byte [rcx + 7]
add rcx, 8
xor rdi, rdx
imul rdi, rbx
cmp rcx, rax
jne 0x1400ca1b0
nop word cs:[rax + rax]
and edi, 0x7fff
movzx r14d, word [rsp + 0x148]
mov esi, edi
and esi, r14d
mov rbp, qword [rsp + 0x140]
mov rbx, qword [rsp + 0x138]
mov r12, qword [rsp + 0x110]
mov r13, qword [rsp + 0x118]
xor r15d, r15d
jmp 0x1400ca276
movzx eax, byte [rax + 8]
cmp al, byte [r11 + 8]
je 0x1400c9d51
nop word [rax + rax]
inc r15
inc rsi
mov rax, rsi
nop dword [rax]
mov rsi, rax
mov eax, 0
cmp rsi, rbp
jae 0x1400ca280
movzx eax, word [rbx + rsi*4]
cmp rax, 0xffff
je 0x1400ca330
movzx ecx, word [rbx + rsi*4 + 2]
mov edx, r14d
and edx, ecx
mov r8d, esi
sub r8d, edx
and r8d, r14d
cmp r8, r15
jb 0x1400ca3c0
cmp cx, di
jne 0x1400ca270
cmp r13, rax
jbe 0x1400cbf52
imul rax, rax, 0x68
mov rcx, qword [r12 + rax + 0x40]
test rcx, rcx
setne dl
cmp qword [r11], 0
sete r8b
cmp dl, r8b
je 0x1400ca270
add rax, r12
add rax, 0x40
test rcx, rcx
je 0x1400ca259
mov r8, qword [rax + 0x10]
cmp r8, qword [r11 + 0x10]
jne 0x1400ca270
mov rdx, qword [r11 + 8]
mov rcx, qword [rax + 8]
call sub.msvcrt.dll_memcmp
mov r11, qword [rsp + 0x38]
mov r10, qword [rsp + 0x50]
test eax, eax
jne 0x1400ca270
jmp 0x1400c9d51
cmp r15, 0x200
setae r15b
cmp dword [rsp + 0x30], 2
setne r14b
mov rax, qword [r11]
test rax, rax
je 0x1400ca446
lea rdx, [r11 + 0x18]
mov r8, qword [r11 + 8]
mov r9, qword [r11 + 0x10]
lea rcx, [rsp + 0x210]
call qword [rax]
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x30], rax
movzx eax, byte [rsp + 0x218]
movzx ecx, byte [rsp + 0x21f]
shl ecx, 0x10
movzx edx, word [rsp + 0x21d]
or edx, ecx
shl rdx, 0x20
mov r10d, dword [rsp + 0x219]
or r10, rdx
lea rcx, [rsp + 0x240]
movdqu xmm0, xmmword [rcx - 0x20]
movdqa xmmword [rsp + 0xa10], xmm0
jmp 0x1400ca452
cmp r15, 0x200
setae r15b
cmp dword [rsp + 0x30], 2
setne r14b
mov rax, qword [r11]
test rax, rax
je 0x1400ca474
lea rdx, [r11 + 0x18]
mov r8, qword [r11 + 8]
mov r9, qword [r11 + 0x10]
lea rcx, [rsp + 0x210]
call qword [rax]
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x30], rax
movzx eax, byte [rsp + 0x218]
movzx ecx, byte [rsp + 0x21f]
shl ecx, 0x10
movzx edx, word [rsp + 0x21d]
or edx, ecx
shl rdx, 0x20
mov ecx, dword [rsp + 0x219]
or rcx, rdx
lea rdx, [rsp + 0x240]
movdqu xmm0, xmmword [rdx - 0x20]
movdqa xmmword [rsp + 0xa10], xmm0
jmp 0x1400ca488
movzx eax, byte [r11 + 8]
xor ecx, ecx
mov qword [rsp + 0x30], rcx
and r15b, r14b
mov byte [rsp + 0x38], r15b
movaps xmm0, xmmword [rsp + 0xa10]
movaps xmmword [rsp + 0x630], xmm0
mov qword [rsp + 0x50], r10
mov rcx, r10
jmp 0x1400ca4a8
movzx eax, byte [r11 + 8]
xor ecx, ecx
mov qword [rsp + 0x30], rcx
mov rcx, qword [rsp + 0x168]
and r15b, r14b
mov byte [rsp + 0x38], r15b
movaps xmm0, xmmword [rsp + 0xa10]
movaps xmmword [rsp + 0x630], xmm0
mov qword [rsp + 0x168], rcx
shl rcx, 8
movzx r14d, al
or r14, rcx
movaps xmm0, xmmword [rsp + 0x630]
movaps xmmword [rsp + 0x800], xmm0
movaps xmmword [rsp + 0xd20], xmm0
mov r15, qword [rsp + 0x70]
lea rdx, [r15 + 0x18]
mov rax, qword [r15]
mov r8, qword [r15 + 8]
mov r9, qword [r15 + 0x10]
lea rcx, [rsp + 0x210]
call qword [rax]
movzx eax, byte [r15 + 0x20]
mov byte [rsp + 0x230], al
cmp r13, 0x8000
jae 0x1400cbf52
mov rax, r13
cmp r13, qword [rsp + 0x108]
jne 0x1400ca53f
lea rcx, [rsp + 0x108]
mov rdx, r13
call fcn.14002d060
mov r12, qword [rsp + 0x110]
mov rax, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x138]
mov rbp, qword [rsp + 0x140]
imul rcx, rax, 0x68
mov qword [r12 + rcx], 0
movups xmm0, xmmword [rsp + 0x210]
movdqu xmm1, xmmword [rsp + 0x220]
movups xmmword [r12 + rcx + 0x18], xmm0
movdqu xmmword [r12 + rcx + 0x28], xmm1
mov rdx, qword [rsp + 0x230]
mov qword [r12 + rcx + 0x38], rdx
mov rdx, qword [rsp + 0x30]
mov qword [r12 + rcx + 0x40], rdx
mov qword [r12 + rcx + 0x48], r14
movdqa xmm0, xmmword [rsp + 0xd20]
movdqu xmmword [r12 + rcx + 0x50], xmm0
mov word [r12 + rcx + 0x60], di
inc rax
mov qword [rsp + 0x118], rax
xor ecx, ecx
mov edx, r13d
movzx r11d, byte [rsp + 0x38]
nop word cs:[rax + rax]
mov r8, rsi
mov esi, 0
cmp r8, rbp
jae 0x1400ca5c0
movzx r9d, word [rbx + r8*4]
cmp r9w, 0xffff
je 0x1400ca600
inc rcx
movzx r10d, word [rbx + r8*4 + 2]
mov word [rbx + r8*4], dx
mov word [rbx + r8*4 + 2], di
inc r8
mov edi, r10d
mov edx, r9d
mov rsi, r8
jmp 0x1400ca5c0
mov word [rbx + r8*4], dx
mov word [rbx + r8*4 + 2], di
mov rdx, qword [rsp + 0xf0]
test rdx, rdx
mov r8, rdx
mov r9d, 1
cmove r8, r9
cmp rcx, 0x7f
cmova rdx, r8
test r11b, r11b
cmovne rdx, r8
mov qword [rsp + 0xf0], rdx
cmp r13, rax
jae 0x1400cbf52
mov r10, qword [rsp + 0x50]
jmp 0x1400c9d70
lea rdi, [rsp + 0xa10]
mov rcx, rdi
mov rdx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xc0]
call fcn.14000a190
lea rcx, [rsp + 0x210]
mov rdx, rdi
call fcn.14002f530
cmp byte [rsp + 0x210], 3
je 0x1400cbf52
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x5d0], rax
movups xmm0, xmmword [rsp + 0x250]
movaps xmmword [rsp + 0x5c0], xmm0
movups xmm0, xmmword [rsp + 0x210]
movdqu xmm1, xmmword [rsp + 0x220]
movdqu xmm2, xmmword [rsp + 0x230]
movdqu xmm3, xmmword [rsp + 0x240]
movdqa xmmword [rsp + 0x5b0], xmm3
movdqa xmmword [rsp + 0x5a0], xmm2
movdqa xmmword [rsp + 0x590], xmm1
movaps xmmword [rsp + 0x580], xmm0
lea rdi, str.corrupt_deflate_stream
lea rbx, [0x1401cbf20]
xor ebp, ebp
cmp qword [rsp + 0x540], 0
mov eax, 0
mov ecx, 0
je 0x1400ca7e6
lea rax, [rsp + 0x548]
movups xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movdqa xmmword [rsp + 0x620], xmm1
movaps xmmword [rsp + 0x610], xmm0
mov rax, qword [rsp + 0x610]
xor ebx, ebx
mov ecx, 0
test rax, rax
je 0x1400ca7a1
lea rdx, [rsp + 0x628]
mov r8, qword [rsp + 0x618]
mov r9, qword [rsp + 0x620]
lea rcx, [rsp + 0x210]
call qword [rax]
mov rcx, qword [rsp + 0x210]
movups xmm0, xmmword [rsp + 0x218]
movaps xmmword [rsp + 0xa10], xmm0
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0xa20], rax
mov rbx, qword [rsp + 0x610]
mov qword [rsp + 0xce8], rcx
mov rax, qword [rsp + 0xa20]
mov qword [rsp + 0x220], rax
movaps xmm0, xmmword [rsp + 0xa10]
movaps xmmword [rsp + 0x210], xmm0
mov rdi, qword [rsp + 0x618]
mov rax, qword [rsp + 0x620]
mov rcx, qword [rsp + 0x628]
mov ebp, 1
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0x7a0], rax
movdqa xmm0, xmmword [rsp + 0x210]
movdqa xmmword [rsp + 0x790], xmm0
cmp byte [rsi + 0x1b9], 0
je case.default.0x1400cae91
movzx r12d, byte [rsp + 0x580]
test r12b, r12b
je case.default.0x1400cae91
lea rdx, [0x1401cbff0]
lea rcx, [rsp + 0x580]
call fcn.140031750
test al, al
je case.default.0x1400cae91
movdqu xmm6, xmmword [0x1401cc010]
movdqa xmmword [rsp + 0x220], xmm6
movups xmm7, xmmword [0x1401cc000]
movaps xmmword [rsp + 0x210], xmm7
mov rax, qword [rsp + 0x118]
test rax, rax
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x78], rbx
mov byte [rsp + 0x90], r12b
je 0x1400cae1d
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x210]
mov qword [rsp + 0x38], rax
call fcn.1400932e0
mov r9, qword [rsp + 0x38]
mov r14d, eax
movzx r12d, word [rsp + 0x148]
mov r13d, r12d
and r13d, r14d
mov rbx, qword [rsp + 0x110]
mov rdi, qword [rsp + 0x138]
mov r15, qword [rsp + 0x140]
mov r10, qword [rsp + 0x210]
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0x70], rax
movzx eax, byte [rsp + 0x218]
mov byte [rsp + 0x30], al
mov r8, qword [rsp + 0x220]
xor esi, esi
mov qword [rsp + 0x80], r10
mov qword [rsp + 0x98], r8
jmp 0x1400cacf6
mov r12, qword [r13 + 0x100]
mov r15, qword [r13 + 0x108]
mov qword [r13 + 0x100], 0
xor eax, eax
xchg qword [r13 + 0x110], rax
test r8, r8
je 0x1400ca944
call qword [r8 + 8]
test r12, r12
je 0x1400ca951
mov rcx, r15
call qword [r12 + 8]
lea rcx, [rsp + 0x210]
mov rdx, rbx
mov r8, r14
call fcn.140061d50
mov rax, qword [rsp + 0x210]
cmp rax, 2
je 0x1400ca9cd
cmp eax, 3
mov rdx, qword [rsp + 0x88]
mov r15, qword [rsp + 0xb0]
jne 0x1400ca9f8
cmp byte [r13 + 0x198], 0
je 0x1400ca9a7
mov rcx, qword [r13 + 0x1c8]
mov eax, 2
cmp rcx, 2
jb 0x1400c87de
test dil, dil
je 0x1400cadd9
xor ecx, ecx
call fcn.140102a40
test rax, rax
je 0x1400cadd9
mov byte [rax + 0x4c], 1
mov byte [rax + 0x4d], bpl
jmp 0x1400cadd9
mov rcx, qword [r13 + 0x1c8]
mov eax, 2
cmp rcx, 1
mov rdx, qword [rsp + 0x88]
mov r15, qword [rsp + 0xb0]
jbe 0x1400c87de
jmp 0x1400cbf52
movups xmm0, xmmword [rsp + 0x288]
movaps xmmword [rsp + 0xa80], xmm0
movups xmm0, xmmword [rsp + 0x278]
movaps xmmword [rsp + 0xa70], xmm0
movups xmm0, xmmword [rsp + 0x268]
movaps xmmword [rsp + 0xa60], xmm0
movups xmm0, xmmword [rsp + 0x258]
movaps xmmword [rsp + 0xa50], xmm0
movups xmm0, xmmword [rsp + 0x218]
movdqu xmm1, xmmword [rsp + 0x228]
movdqu xmm2, xmmword [rsp + 0x238]
movdqu xmm3, xmmword [rsp + 0x248]
movdqa xmmword [rsp + 0xa40], xmm3
movdqa xmmword [rsp + 0xa30], xmm2
movdqa xmmword [rsp + 0xa20], xmm1
movaps xmmword [rsp + 0xa10], xmm0
mov rcx, qword [rsp + 0x298]
mov qword [rsp + 0x1b8], rcx
mov rcx, qword [rsp + 0x2a0]
mov qword [rsp + 0xa8], rcx
mov rcx, qword [rsp + 0x2a8]
mov qword [rsp + 0xc0], rcx
mov ecx, dword [rsp + 0x2c0]
mov dword [rsp + 0x4d0], ecx
movups xmm0, xmmword [rsp + 0x2b0]
movaps xmmword [rsp + 0x4c0], xmm0
mov ecx, dword [rsp + 0x2c4]
mov dword [rsp + 0xa0], ecx
movups xmm0, xmmword [rsp + 0x2c8]
movaps xmmword [rsp + 0x800], xmm0
movdqu xmm0, xmmword [rsp + 0x2d8]
movdqa xmmword [rsp + 0x810], xmm0
mov rcx, qword [rsp + 0x2e8]
mov qword [rsp + 0x820], rcx
mov rcx, qword [rsp + 0x2f0]
mov qword [rsp + 0x978], rcx
mov ecx, dword [rsp + 0x2f8]
mov dword [rsp + 0x18c], ecx
movzx ecx, byte [rsp + 0x300]
mov byte [rsp + 0x2f], cl
movzx ecx, byte [rsp + 0x301]
mov byte [rsp + 0x4f], cl
movzx ecx, byte [rsp + 0x302]
mov byte [rsp + 0x4e], cl
mov ecx, dword [rsp + 0x303]
mov dword [rsp + 0x540], ecx
movzx ecx, byte [rsp + 0x307]
mov byte [rsp + 0x544], cl
mov rcx, qword [rsp + 0x308]
mov qword [rsp + 0x178], rcx
mov rcx, qword [rsp + 0x310]
mov qword [rsp + 0x180], rcx
movzx ecx, byte [rsp + 0x318]
mov byte [rsp + 0x4d], cl
mov rcx, qword [rsp + 0x320]
mov qword [rsp + 0xd8], rcx
lock sub qword [r13 + 0x1c8], 2
jae 0x1400c87de
mov ecx, 7
int 0x29
ud2
call sub.kernel32.dll_GetProcessHeap
test rax, rax
lea rsi, [rsp + 0x548]
jne 0x1400c8c69
jmp 0x1400cbf52
mov rsi, qword [rdx + 0x1b0]
cmp byte [rsi + 0x198], 0
jne 0x1400cabf1
mov byte [rsi + 0x198], 1
lea rdi, [rsi + 0x80]
lock or qword [rsi + 0x1c8], 1
lea rcx, [rsi + 0x1a0]
call fcn.1400fb470
lea rbx, [rsi + 0x180]
lea r14, [rsp + 0x210]
nop dword [rax]
mov rcx, r14
mov rdx, rbx
mov r8, rdi
call fcn.140061d50
cmp dword [rsp + 0x210], 1
ja 0x1400cac51
lock sub qword [rsi + 0x1c8], 2
jb 0x1400cc18c
mov rcx, r14
call fcn.140089720
jmp 0x1400cac20
lea rcx, [rsp + 0x210]
call fcn.140089720
mov rsi, qword [rsp + 0x88]
mov rax, qword [rsi + 0x1b0]
lock dec qword [rax]
jne 0x1400cac7f
mov rcx, qword [rsi + 0x1b0]
call fcn.1400a1f60
mov rax, qword [rsi + 0x1a8]
lock dec qword [rax]
mov bl, 1
jne 0x1400cac9a
lea rcx, [rsi + 0x1a8]
call fcn.1400a3a70
xor eax, eax
mov byte [rsi + 0x1d0], bl
movaps xmm6, xmmword [rsp + 0xde0]
movaps xmm7, xmmword [rsp + 0xdf0]
movaps xmm8, xmmword [rsp + 0xe00]
movaps xmm9, xmmword [rsp + 0xe10]
movaps xmm10, xmmword [rsp + 0xe20]
add rsp, 0xe38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movzx ecx, byte [rsp + 0x30]
cmp byte [rax + 8], cl
je 0x1400cadc0
nop
inc rsi
inc r13
mov rax, r13
nop dword [rax]
mov r13, rax
mov eax, 0
cmp r13, r15
jae 0x1400cad00
movzx eax, word [rdi + r13*4]
cmp rax, 0xffff
je 0x1400caded
movzx ecx, word [rdi + r13*4 + 2]
mov edx, ecx
and edx, r12d
mov r11d, r13d
sub r11d, edx
and r11d, r12d
cmp rsi, r11
ja 0x1400caded
cmp cx, r14w
jne 0x1400cacf0
cmp r9, rax
jbe 0x1400cbf52
test r10, r10
sete dl
imul rax, rax, 0x68
mov rcx, qword [rbx + rax + 0x40]
test rcx, rcx
setne r11b
cmp r11b, dl
je 0x1400cacf0
add rax, rbx
add rax, 0x40
test rcx, rcx
je 0x1400cace1
cmp qword [rax + 0x10], r8
jne 0x1400cacf0
mov rcx, qword [rax + 8]
mov rdx, qword [rsp + 0x70]
call sub.msvcrt.dll_memcmp
mov r8, qword [rsp + 0x98]
mov r10, qword [rsp + 0x80]
mov r9, qword [rsp + 0x38]
test eax, eax
jne 0x1400cacf0
test r10, r10
je 0x1400cadc0
lea rcx, [rsp + 0x228]
mov rdx, qword [rsp + 0x70]
call qword [r10 + 0x10]
mov rbx, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x40]
jmp case.default.0x1400cae91
mov rax, qword [r15]
mov rcx, qword [r15 + 8]
call qword [rax + 0x10]
mov byte [rsi], 3
mov al, 1
mov bl, 3
mov rsi, qword [rsp + 0x88]
jmp 0x1400cac9c
test r10, r10
mov rsi, qword [rsp + 0x58]
je 0x1400cae08
lea rcx, [rsp + 0x228]
mov rdx, qword [rsp + 0x70]
call qword [r10 + 0x10]
mov rbx, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x40]
movzx r12d, byte [rsp + 0x90]
movzx esp, byte [rsp + 0x90]
jmp 0x1400cae22
mov rsi, qword [rsp + 0x58]
mov rax, qword [rsi + 0x1b0]
mov rdx, qword [rax + 0x18]
mov rax, qword [rax + 0x20]
mov rcx, rax
shl rcx, 7
lea rax, [rcx + rax*8]
mov qword [rsp + 0x38], rdx
add rax, rdx
mov qword [rsp + 0x70], rax
pcmpeqd xmm8, xmm8
mov eax, r12d
mov byte [rsp + 0x30], r12b
nop word cs:[rax + rax]
mov r13, qword [rsp + 0x38]
cmp r13, qword [rsp + 0x70]
je case.default.0x1400cae91
invalid
add byte [rcx - 0x77], al
invalid
mov r15d, eax
lea rsi, [r13 + 0x88]
mov rax, qword [r13]
lea rcx, [0x14019a1e4]
lea ecx, [0x14019a1e4]
lea ecx, [0x14019a1e4]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
mov qword [rsp + 0x38], rsi
jmp rax
cmp r12b, 2
jne 0x1400caf70
test ebx, edx
add byte [rax], al
invalid
test ebx, edx
add byte [rax], al
add byte [rax - 0x75], cl
mov word [rax + rcx*4], fs
add eax, 0x2b00000
mov rcx, qword [rsp + 0x588]
mov al, 2
cmp qword [rcx + 0x10], 4
cmp dword [rcx + 0x10], 4
mov byte [rsp + 0x30], 2
jne 0x1400cae60
mov rcx, qword [rcx + 8]
jmp 0x1400caf98
movzx eax, byte [rsp + 0x30]
test al, al
je 0x1400cbf52
mov byte [rsp + 0x98], r15b
cmp al, 2
jne 0x1400cafb1
mov rax, qword [rsp + 0x588]
mov r15, qword [rax + 8]
mov r14, qword [rax + 0x10]
mov rsi, qword [r13 + 8]
cmp qword [rsi + 0x28], 0
add byte [rdi], cl
mov dh, 0x84
and al, 0x98
add byte [rax], al
add byte [rdi], cl
test ebp, ebp
add byte [rax], al
invalid
add byte [rdi], cl
mov dh, 0x84
and al, 0x98
add byte [rax], al
add byte [rdi], cl
test ebp, ebp
add byte [rax], al
add cl, ch
pop rbx
invalid
jmp 0x1400cae60
lea r14, [r13 + 8]
lea rcx, [rsp + 0x210]
mov rdx, r14
lea r8, [rsp + 0x580]
lea r8, [rsp + 0x580]
call fcn.1400b5650
cmp dword [rsp + 0x210], 2
and al, 0x10
add al, byte [rax]
add byte [rdx], al
and al, 0x10
add al, byte [rax]
add byte [rdx], al
jne 0x1400cb28f
mov eax, r15d
jmp 0x1400cae60
test r15b, r15b
je 0x1400cbf52
cmp r15b, 2
jne 0x1400cb0d6
mov rcx, qword [rsp + 0x588]
mov al, 2
cmp qword [rcx + 0x10], 5
mov byte [rsp + 0x30], 2
jne 0x1400cae60
mov r8d, r15d
mov rcx, qword [rcx + 8]
jmp 0x1400cb101
cmp byte [rsp + 0x581], 0
lea rcx, [0x1401f1ad8]
lea rax, str.httphttpswswssftpfile__file:__
cmove rcx, rax
mov eax, r12d
mov byte [rsp + 0x30], r12b
jne 0x1400cae60
cmp dword [rcx], 0x70747468
mov eax, r12d
mov byte [rsp + 0x30], r12b
jne 0x1400cae60
jmp 0x1400cb2f3
xor r14d, r14d
cmp byte [rsp + 0x581], 0
sete r14b
lea r15, [0x1401f1ad8]
lea rax, str.httphttpswswssftpfile__file:__
cmove r15, rax
xor r14, 5
mov rsi, qword [r13 + 8]
cmp qword [rsi + 0x28], 0
movzx eax, byte [rsp + 0x98]
je 0x1400cae60
mov rcx, qword [rsi + 0x30]
mov rdx, qword [rsi + 0x38]
mov r8, r15
mov r9, r14
call fcn.140092b10
mov r12, rax
mov rcx, qword [rsi + 0x10]
mov rdi, qword [rsi + 0x18]
shr rax, 0x39
movd xmm0, eax
mov rax, rcx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm9, xmm0, 0
lea rbx, [rcx - 0x68]
xor ecx, ecx
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0xc8], rax
and r12, rdi
movdqu xmm10, xmmword [rax + r12]
movdqa xmm0, xmm10
pcmpeqb xmm0, xmm9
pmovmskb esi, xmm0
nop word cs:[rax + rax]
test si, si
je 0x1400cb0a0
mov eax, esi
lea esi, [rax - 1]
and esi, eax
tzcnt eax, eax
add rax, r12
and rax, rdi
neg rax
imul rax, rax, 0x68
cmp r14, qword [rbx + rax + 0x10]
jne 0x1400cb060
add rax, rbx
mov rdx, qword [rax + 8]
mov rcx, r15
mov r8, r14
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x1400cb060
jmp 0x1400cb149
pcmpeqb xmm10, xmm8
pmovmskb eax, xmm10
test eax, eax
jne 0x1400cb129
mov rax, qword [rsp + 0x80]
add r12, rax
add r12, 0x10
add esp, 0x10
add rax, 0x10
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0xc8]
jmp 0x1400cb03b
cmp byte [rsp + 0x581], 0
lea rcx, [0x1401f1ad8]
lea rax, str.httphttpswswssftpfile__file:__
cmove rcx, rax
mov eax, r15d
mov r8d, r15d
mov byte [rsp + 0x30], r15b
je 0x1400cae60
mov eax, dword [rcx]
mov edx, 0x70747468
xor eax, edx
movzx ecx, byte [rcx + 4]
xor ecx, 0x73
or ecx, eax
mov ecx, r8d
mov eax, r8d
mov byte [rsp + 0x30], r8b
jne 0x1400cae60
jmp 0x1400cb2fe
add dword [rax], eax
add byte [rdi], cl
mov dh, 0x84
and al, 0x98
add byte [rax], al
add byte [rax - 0x75], cl
pop rsp
and al, 0x78
movzx eax, byte [rsp + 0x98]
mov rbx, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x40]
movzx r12d, byte [rsp + 0x90]
movzx r12d, byte [rsp + 0x90]
jmp 0x1400cae60
mov rbx, qword [rsp + 0x78]
mov rdi, qword [r13 + 8]
cmp qword [rdi + 0x28], 0
je 0x1400cb2fe
mov rcx, qword [rdi + 0x30]
mov rdx, qword [rdi + 0x38]
lea r8, str.httphttpswswssftpfile__file:__
mov r9d, 4
call fcn.140092b10
mov rsi, qword [rdi + 0x10]
mov rcx, qword [rdi + 0x18]
mov rdx, rax
shr rdx, 0x39
movd xmm0, edx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
lea rdx, [rsi - 0x68]
xor r8d, r8d
pcmpeqd xmm1, xmm1
mov rdi, qword [rsp + 0x40]
and rax, rcx
movdqu xmm2, xmmword [rsi + rax]
movdqa xmm3, xmm2
pcmpeqb xmm3, xmm0
pmovmskb r9d, xmm3
nop dword [rax]
test r9w, r9w
je 0x1400cb1fd
mov r10d, r9d
lea r9d, [r10 - 1]
and r9d, r10d
tzcnt r10d, r10d
add r10, rax
and r10, rcx
neg r10
imul r10, r10, 0x68
cmp qword [rdx + r10 + 0x10], 4
jne 0x1400cb1c0
lea r11, [rdx + r10]
mov r11, qword [r11 + 8]
cmp dword [r11], 0x70747468
jne 0x1400cb1c0
jmp 0x1400cb21c
pcmpeqb xmm2, xmm1
pmovmskb r9d, xmm2
test r9d, r9d
jne 0x1400cb2fe
add rax, r8
add rax, 0x10
add r8, 0x10
jmp 0x1400cb1a8
cmp byte [rsi + r10 - 8], 2
jne 0x1400cb231
mov byte [rsp + 0x820], 2
jmp 0x1400cb30b
add rsi, r10
lea rdx, [rsi - 0x10]
mov rax, qword [rsi - 0x28]
mov r8, qword [rsi - 0x20]
mov r9, qword [rsi - 0x18]
lea rcx, [rsp + 0x210]
call qword [rax]
movzx eax, byte [rsi - 8]
mov byte [rsp + 0x230], al
movdqu xmm0, xmmword [rsp + 0x210]
add al, byte [rax]
add bl, dh
movq mm1, qword [rsp + 0x220]
invalid
movdqa xmmword [rsp + 0x800], xmm0
movdqa xmmword [rsp + 0x810], xmm1
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x820], rax
jmp 0x1400cb30b
cmp byte [rsp + 0x258], 2
je case.default.0x1400cb2f1
lea rcx, [rsp + 0x250]
mov rax, qword [rsp + 0x238]
mov rdx, qword [rsp + 0x240]
mov r8, qword [rsp + 0x248]
call qword [rax + 0x10]
invalid
adc byte [rax - 0x73], cl
mov word [rax + rsi], fs
add al, byte [rax]
add byte [rax - 0x75], cl
lea rcx, [rsp + 0x230]
mov rax, qword [rsp + 0x218]
test byte [rax + rbx], ah
add al, byte [rax]
add byte [rax - 0x75], cl
xchg esp, eax
and al, 0x20
add al, byte [rax]
add byte [rbx + rcx*4 - 0x7c], cl
test byte [rax + rbp], ah
add al, byte [rax]
add bh, bh
push rax
invalid
test byte [rax + rbx], ah
add al, byte [rax]
add byte [rax - 0x75], cl
xchg esp, eax
and al, 0x20
add al, byte [rax]
add byte [rbx + rcx*4 - 0x7c], cl
test byte [rax + rbp], ah
test byte [rax + rbp], ah
add al, byte [rax]
add bh, bh
push rax
adc byte [rcx - 0x75], cl
mov rax, qword [r13]
lea rcx, [0x14019a1f8]
mov rax, qword [r13]
lea rcx, [0x14019a1f8]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
cmp byte [r13 + 0x50], 2
jne 0x1400cbfa9
mov byte [rsp + 0x820], 2
mov rdi, qword [rsp + 0x40]
cmp byte [rsp + 0x820], 2
je case.default.0x1400cae91
movdqa xmmword [rsp + 0xa20], xmm6
movaps xmmword [rsp + 0xa10], xmm7
lea rcx, [rsp + 0x210]
lea rdx, [rsp + 0xf0]
lea r8, [rsp + 0xa10]
lea r9, [rsp + 0x800]
call fcn.1400b5e40
cmp byte [rsp + 0x230], 2
je case.default.0x1400cae91
lea rcx, [rsp + 0x228]
mov rax, qword [rsp + 0x210]
mov rdx, qword [rsp + 0x218]
mov r8, qword [rsp + 0x220]
call qword [rax + 0x10]
pxor xmm0, xmm0
movdqa xmmword [rsp + 0xcc0], xmm0
movdqa xmmword [rsp + 0x600], xmm0
movzx r14d, byte [rsp + 0x2f]
cmp r14b, 9
movzx r15d, byte [rsp + 0x4f]
movzx r12d, byte [rsp + 0x4e]
mov r13, qword [rsp + 0xcf0]
jae 0x1400cbf54
movzx ecx, byte [rsp + 0xa14]
mov byte [rsp + 0x214], cl
mov ecx, dword [rsp + 0xa10]
mov dword [rsp + 0x210], ecx
mov qword [rsp + 0x630], 0
mov rcx, qword [rsp + 0xd02]
mov r8, qword [rsp + 0xd08]
mov qword [rsp + 0x63a], rcx
mov qword [rsp + 0x640], r8
mov qword [rsp + 0x648], 0
mov qword [rsp + 0x650], 8
movaps xmm0, xmmword [rsp + 0x600]
movups xmmword [rsp + 0x658], xmm0
mov qword [rsp + 0x668], 8
mov qword [rsp + 0x670], 0
mov qword [rsp + 0x678], 2
mov qword [rsp + 0x680], 0
mov word [rsp + 0x688], 0
movzx ecx, word [rsp + 0xa0e]
mov word [rsp + 0x68e], cx
mov ecx, dword [rsp + 0xa0a]
mov dword [rsp + 0x68a], ecx
mov byte [rsp + 0x690], 0
mov rcx, qword [rsp + 0xd11]
mov r8, qword [rsp + 0xd18]
mov qword [rsp + 0x698], r8
mov qword [rsp + 0x691], rcx
lea rcx, [0x1401b8638]
mov qword [rsp + 0x6a0], rcx
lea r8, str.corrupt_deflate_stream
mov qword [rsp + 0x6a8], r8
movaps xmm0, xmmword [rsp + 0xcc0]
movups xmmword [rsp + 0x6b0], xmm0
mov qword [rsp + 0x6c0], rcx
lea rcx, [0x1401c9ef4]
mov qword [rsp + 0x6c8], rcx
mov qword [rsp + 0x6d0], 1
mov qword [rsp + 0x6d8], 0
mov word [rsp + 0x6e0], 0xffff
movzx ecx, word [rsp + 0xa08]
mov word [rsp + 0x6e6], cx
mov ecx, dword [rsp + 0xa04]
mov dword [rsp + 0x6e2], ecx
mov byte [rsp + 0x6e8], r14b
mov byte [rsp + 0x6e9], r15b
mov byte [rsp + 0x6ea], r12b
movzx ecx, byte [rsp + 0x214]
mov byte [rsp + 0x6ef], cl
mov ecx, dword [rsp + 0x210]
mov dword [rsp + 0x6eb], ecx
mov qword [rsp + 0x6f0], rax
mov qword [rsp + 0x6f8], rdx
mov qword [rsp + 0x700], 0
mov byte [rsp + 0x708], 2
mov eax, dword [rsp + 0xcb9]
mov ecx, dword [rsp + 0xcbc]
mov dword [rsp + 0x70c], ecx
mov dword [rsp + 0x709], eax
mov rax, qword [rsp + 0x5d0]
mov qword [rsp + 0x260], rax
movaps xmm0, xmmword [rsp + 0x5c0]
movaps xmmword [rsp + 0x250], xmm0
movaps xmm0, xmmword [rsp + 0x580]
movaps xmm1, xmmword [rsp + 0x590]
movaps xmm2, xmmword [rsp + 0x5a0]
movaps xmm3, xmmword [rsp + 0x5b0]
movaps xmmword [rsp + 0x240], xmm3
movaps xmmword [rsp + 0x230], xmm2
movaps xmmword [rsp + 0x220], xmm1
movaps xmmword [rsp + 0x210], xmm0
lea rcx, [rsp + 0xa10]
lea rdx, [rsp + 0x630]
lea r8, [rsp + 0x210]
call fcn.1400b6710
mov rax, qword [rsp + 0xa10]
cmp rax, 3
je 0x1400cb760
mov rcx, qword [rsp + 0xa1a]
mov rdx, qword [rsp + 0xa20]
mov qword [rsp + 0x4c6], rdx
mov qword [rsp + 0x4c0], rcx
mov r13, qword [rsp + 0xa28]
mov rcx, qword [rsp + 0xa30]
mov qword [rsp + 0x960], rcx
mov rcx, qword [rsp + 0xa38]
mov qword [rsp + 0x970], rcx
mov rcx, qword [rsp + 0xa40]
mov qword [rsp + 0xce0], rcx
mov rcx, qword [rsp + 0xa48]
mov qword [rsp + 0x958], rcx
mov rcx, qword [rsp + 0xa50]
mov qword [rsp + 0x968], rcx
mov rcx, qword [rsp + 0xa58]
mov qword [rsp + 0xcd0], rcx
mov rcx, qword [rsp + 0xa60]
mov qword [rsp + 0xcd8], rcx
movups xmm0, xmmword [rsp + 0xa68]
movaps xmmword [rsp + 0x800], xmm0
movups xmm0, xmmword [rsp + 0xa78]
movaps xmmword [rsp + 0x810], xmm0
movups xmm0, xmmword [rsp + 0xa88]
movaps xmmword [rsp + 0x820], xmm0
movups xmm0, xmmword [rsp + 0xa98]
movaps xmmword [rsp + 0x830], xmm0
movups xmm0, xmmword [rsp + 0xaa8]
movaps xmmword [rsp + 0x840], xmm0
movups xmm0, xmmword [rsp + 0xab8]
movaps xmmword [rsp + 0x850], xmm0
movups xmm0, xmmword [rsp + 0xac8]
movaps xmmword [rsp + 0x860], xmm0
movups xmm0, xmmword [rsp + 0xad8]
movaps xmmword [rsp + 0x870], xmm0
mov ecx, dword [rsp + 0xae9]
mov edx, dword [rsp + 0xaec]
mov dword [rsp + 0x1c3], edx
mov dword [rsp + 0x1c0], ecx
mov rcx, qword [rsp + 0x4c0]
mov qword [rsp + 0x1f0], rcx
mov rcx, qword [rsp + 0x4c6]
mov qword [rsp + 0x1f6], rcx
movaps xmm0, xmmword [rsp + 0x800]
movaps xmm1, xmmword [rsp + 0x810]
movaps xmm2, xmmword [rsp + 0x820]
movaps xmm3, xmmword [rsp + 0x830]
movaps xmmword [rsp + 0x210], xmm0
movaps xmmword [rsp + 0x220], xmm1
movaps xmmword [rsp + 0x230], xmm2
movaps xmmword [rsp + 0x240], xmm3
movaps xmm0, xmmword [rsp + 0x840]
movaps xmmword [rsp + 0x250], xmm0
movaps xmm0, xmmword [rsp + 0x850]
movaps xmmword [rsp + 0x260], xmm0
movaps xmm0, xmmword [rsp + 0x860]
movaps xmmword [rsp + 0x270], xmm0
movaps xmm0, xmmword [rsp + 0x870]
movaps xmmword [rsp + 0x280], xmm0
mov ecx, dword [rsp + 0x1c3]
mov dword [rsp + 0x57b], ecx
mov ecx, dword [rsp + 0x1c0]
mov dword [rsp + 0x578], ecx
mov qword [rsp + 0x4c0], rbx
mov qword [rsp + 0x4c8], rdi
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x4d0], rcx
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x4d8], rcx
cmp eax, 3
je 0x1400cc17d
mov rax, qword [rsp + 0x1f0]
mov rcx, qword [rsp + 0x1f6]
mov qword [rsp + 0xe6], rcx
mov qword [rsp + 0xe0], rax
movaps xmm0, xmmword [rsp + 0x210]
movaps xmm1, xmmword [rsp + 0x220]
movdqa xmm2, xmmword [rsp + 0x230]
movdqa xmm3, xmmword [rsp + 0x240]
movaps xmmword [rsp + 0x800], xmm0
movaps xmmword [rsp + 0x810], xmm1
movdqa xmmword [rsp + 0x820], xmm2
movdqa xmmword [rsp + 0x830], xmm3
movaps xmm0, xmmword [rsp + 0x250]
movaps xmmword [rsp + 0x840], xmm0
movaps xmm0, xmmword [rsp + 0x260]
movaps xmmword [rsp + 0x850], xmm0
movaps xmm0, xmmword [rsp + 0x270]
movaps xmmword [rsp + 0x860], xmm0
movaps xmm0, xmmword [rsp + 0x280]
movaps xmmword [rsp + 0x870], xmm0
mov eax, dword [rsp + 0x578]
mov ecx, dword [rsp + 0x57b]
mov dword [rsp + 0x573], ecx
mov dword [rsp + 0x570], eax
movups xmm0, xmmword [rsp + 0x4c0]
movdqu xmm1, xmmword [rsp + 0x4d0]
movaps xmmword [rsp + 0x1c0], xmm0
movdqa xmmword [rsp + 0x1d0], xmm1
movzx esi, word [rsp + 0x148]
mov rcx, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x140]
call fcn.1400d5ab0
mov rdi, rax
mov rbx, rdx
lea rcx, [rsp + 0x228]
mov rdx, qword [rsp + 0x110]
mov r8, qword [rsp + 0x118]
call fcn.14006f250
lea rcx, [rsp + 0x240]
mov rdx, qword [rsp + 0x128]
mov r8, qword [rsp + 0x130]
call fcn.14006f4c0
movdqa xmm0, xmmword [rsp + 0xf0]
mov rax, qword [rsp + 0x100]
mov word [rsp + 0x268], si
mov qword [rsp + 0x258], rdi
mov qword [rsp + 0x260], rbx
movdqu xmmword [rsp + 0x210], xmm0
mov qword [rsp + 0x220], rax
cmp qword [rsp + 0xcd8], 0
je 0x1400cb9e9
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, qword [rsp + 0xcd0]
call sub.kernel32.dll_HeapFree
cmp qword [rsp + 0x970], 0
je 0x1400cba45
mov rax, qword [rsp + 0x960]
lea rdi, [rax + 0x30]
mov rsi, qword [rsp + 0x970]
jmp 0x1400cba2b
mov rax, qword [rdi - 0x18]
mov rdx, qword [rdi - 0x10]
mov r8, qword [rdi - 8]
mov rcx, rdi
call qword [rax + 0x10]
add rdi, 0x68
dec rsi
je 0x1400cba45
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x1400cba10
lea rcx, [rdi + 0x28]
mov rdx, qword [rdi + 0x18]
mov r8, qword [rdi + 0x20]
call qword [rax + 0x10]
jmp 0x1400cba10
test r13, r13
je 0x1400cba60
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, qword [rsp + 0x960]
call sub.kernel32.dll_HeapFree
cmp qword [rsp + 0x968], 0
je 0x1400cba9b
mov rax, qword [rsp + 0x958]
lea rdi, [rax + 0x38]
mov rsi, qword [rsp + 0x968]
nop
mov rax, qword [rdi - 0x18]
mov rdx, qword [rdi - 0x10]
mov r8, qword [rdi - 8]
mov rcx, rdi
call qword [rax + 0x10]
add rdi, 0x48
dec rsi
jne 0x1400cba80
cmp qword [rsp + 0xce0], 0
je 0x1400cbabc
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, qword [rsp + 0x958]
call sub.kernel32.dll_HeapFree
mov rax, qword [rsp + 0x210]
movzx ecx, word [rsp + 0x218]
mov rdx, qword [rsp + 0x21a]
mov qword [rsp + 0xe0], rdx
mov rdx, qword [rsp + 0x220]
mov qword [rsp + 0xe6], rdx
movups xmm0, xmmword [rsp + 0x228]
movups xmm1, xmmword [rsp + 0x248]
movups xmm2, xmmword [rsp + 0x258]
mov rdx, qword [rsp + 0x268]
mov qword [rsp + 0x800], rdx
movups xmm3, xmmword [rsp + 0x238]
mov qword [rsp + 0x210], rax
mov word [rsp + 0x218], cx
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xe6]
mov qword [rsp + 0x21a], rax
mov qword [rsp + 0x220], rcx
movups xmmword [rsp + 0x228], xmm0
movups xmmword [rsp + 0x238], xmm3
movups xmmword [rsp + 0x248], xmm1
movups xmmword [rsp + 0x258], xmm2
mov rax, qword [rsp + 0x800]
mov qword [rsp + 0x268], rax
mov rax, qword [rsp + 0x808]
mov qword [rsp + 0x270], rax
movaps xmm0, xmmword [rsp + 0x810]
movaps xmm1, xmmword [rsp + 0x820]
movaps xmm2, xmmword [rsp + 0x830]
movaps xmm3, xmmword [rsp + 0x840]
movups xmmword [rsp + 0x278], xmm0
movups xmmword [rsp + 0x288], xmm1
movups xmmword [rsp + 0x298], xmm2
movups xmmword [rsp + 0x2a8], xmm3
movaps xmm0, xmmword [rsp + 0x850]
movups xmmword [rsp + 0x2b8], xmm0
movaps xmm0, xmmword [rsp + 0x860]
movups xmmword [rsp + 0x2c8], xmm0
movaps xmm0, xmmword [rsp + 0x870]
movups xmmword [rsp + 0x2d8], xmm0
movzx eax, byte [rsp + 0x4d]
mov byte [rsp + 0x2e8], al
mov eax, dword [rsp + 0x570]
mov ecx, dword [rsp + 0x573]
mov dword [rsp + 0x2ec], ecx
mov dword [rsp + 0x2e9], eax
movaps xmm0, xmmword [rsp + 0x1c0]
movaps xmm1, xmmword [rsp + 0x1d0]
movups xmmword [rsp + 0x300], xmm1
movups xmmword [rsp + 0x2f0], xmm0
lea rdx, [rsp + 0x210]
mov rcx, qword [rsp + 0xb0]
call fcn.140080c20
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x38], rdx
mov eax, dword [rsp + 0x18c]
mov r8d, eax
mov rdx, qword [rsp + 0x978]
cmp eax, 0x3b9aca00
jne 0x1400cbc9f
mov rax, qword [rsp + 0x58]
mov r8d, dword [rax + 0x1a8]
mov rdx, qword [rax + 0x1a0]
xor r9d, r9d
cmp r8d, 0x3b9aca00
je 0x1400cbdcc
lea rcx, [rsp + 0x210]
call fcn.1401011a0
mov rsi, qword [rsp + 0x210]
movups xmm0, xmmword [rsp + 0x218]
movaps xmmword [rsp + 0x800], xmm0
movups xmm0, xmmword [rsp + 0x228]
movaps xmmword [rsp + 0x810], xmm0
movups xmm0, xmmword [rsp + 0x238]
movaps xmmword [rsp + 0x820], xmm0
movups xmm0, xmmword [rsp + 0x248]
movaps xmmword [rsp + 0x830], xmm0
movups xmm0, xmmword [rsp + 0x258]
movaps xmmword [rsp + 0x840], xmm0
movups xmm0, xmmword [rsp + 0x268]
movaps xmmword [rsp + 0x850], xmm0
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x860], rax
xor r9d, r9d
cmp rsi, 2
je 0x1400cbdcc
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400cbd5c
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400cbf52
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x70
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x1400cbf52
mov qword [rax], rsi
movaps xmm0, xmmword [rsp + 0x800]
movaps xmm1, xmmword [rsp + 0x810]
movaps xmm2, xmmword [rsp + 0x820]
movaps xmm3, xmmword [rsp + 0x830]
movups xmmword [rax + 8], xmm0
movups xmmword [rax + 0x18], xmm1
movups xmmword [rax + 0x28], xmm2
movups xmmword [rax + 0x38], xmm3
movaps xmm0, xmmword [rsp + 0x840]
movups xmmword [rax + 0x48], xmm0
movaps xmm0, xmmword [rsp + 0x850]
movups xmmword [rax + 0x58], xmm0
mov rcx, qword [rsp + 0x860]
mov r9, rax
mov qword [rax + 0x68], rcx
mov qword [rsp + 0xcf0], r13
mov rcx, qword [rsp + 0x58]
lock inc qword [rcx]
jle 0x1400cbf52
movzx eax, byte [rsp + 0xd4]
mov byte [rsp + 0xe4], al
mov eax, dword [rsp + 0xd0]
mov dword [rsp + 0xe0], eax
movaps xmm0, xmmword [rsp + 0x5e0]
movaps xmmword [rsp + 0x1f0], xmm0
mov eax, dword [rsp + 0x5f0]
mov dword [rsp + 0x200], eax
movaps xmm0, xmmword [rsp + 0x190]
movaps xmm1, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x1c0], xmm0
movaps xmmword [rsp + 0x1d0], xmm1
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x1e0], rax
movaps xmm0, xmmword [rsp + 0xf0]
movdqa xmm1, xmmword [rsp + 0x100]
movdqa xmm2, xmmword [rsp + 0x110]
movdqa xmm3, xmmword [rsp + 0x120]
movups xmmword [rsp + 0x4d8], xmm0
movdqu xmmword [rsp + 0x4e8], xmm1
movdqu xmmword [rsp + 0x4f8], xmm2
movdqu xmmword [rsp + 0x508], xmm3
movaps xmm0, xmmword [rsp + 0x130]
movups xmmword [rsp + 0x518], xmm0
movaps xmm0, xmmword [rsp + 0x140]
movups xmmword [rsp + 0x528], xmm0
mov rax, qword [rsp + 0x7a0]
mov qword [rsp + 0x4d0], rax
movdqa xmm0, xmmword [rsp + 0x790]
movdqa xmmword [rsp + 0x4c0], xmm0
mov byte [rsp + 0x60], r14b
mov byte [rsp + 0x70], r15b
mov byte [rsp + 0x30], r12b
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0xc8], rax
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x90], eax
mov qword [rsp + 0x58], rcx
mov r13, qword [rsp + 0xce8]
mov r15, r9
jmp 0x1400c8e44
ud2
movzx eax, r14b
cmp eax, 9
jne 0x1400cbf8f
movzx eax, byte [rsp + 0xd4]
mov byte [rsp + 0xa14], al
mov eax, dword [rsp + 0xd0]
or al, byte [rax]
add byte [rbx + 0xd02484], cl
add byte [rax], al
mov dword [rsp + 0xa10], eax
movzx edx, byte [rsp + 0x180]
mov rax, qword [rsp + 0x178]
jmp 0x1400cb3b2
mov rcx, qword [rsp + 0x178]
mov rdx, qword [rsp + 0x180]
call fcn.1400d5b40
jmp 0x1400cb3b2
lea rdx, [r13 + 0x48]
mov rax, qword [r13 + 0x30]
mov r8, qword [r13 + 0x38]
mov r9, qword [r13 + 0x40]
lea rcx, [rsp + 0x210]
call qword [rax]
movzx eax, byte [r13 + 0x50]
mov byte [rsp + 0x230], al
movdqu xmm0, xmmword [rsp + 0x210]
movq mm0, qword [rsp + 0x210]
movq mm0, qword [rsp + 0x210]
movdqu xmm1, xmmword [rsp + 0x220]
movdqa xmmword [rsp + 0x800], xmm0
movdqa xmmword [rsp + 0x810], xmm1
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x820], rax
jmp 0x1400cb306
add byte [rsi + 0xf], ah
jg 0x1400cbf69
and al, 0
or byte [rax], al
add byte [rsi + 0xf], ah
jg 0x1400cbf7a
and al, 0x10
or byte [rax], al
add byte [rax - 0x75], cl
test byte [rax + rsi], ah
add al, byte [rax]
add byte [rax - 0x77], cl
test byte [rax + riz], ah
or byte [rax], al
add cl, ch
invalid
lea rcx, [rsp + 0x210]
call fcn.14009e6f0
dec qword [r14]
ud2
lea rcx, [rsp + 0xa10]
call fcn.14009e6f0
ud2
lea rcx, [rsp + 0x4c0]
call fcn.140072240
ud2
mov ecx, 7
int 0x29
ud2
mov ecx, 7
int 0x29
ud2
mov ecx, 7
int 0x29
ud2
push rbp
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x33d8
call fcn.1400116e0
sub rsp, rax
movaps xmmword [rsp + 0x33c0], xmm6
mov r12, r8
mov rsi, rdx
mov r15, rcx
movzx eax, byte [rdx + 0x111]
lea rcx, [0x14019a20c]
fmul qword [rax + rax]
fmul qword [rax + rax]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov rax, qword [rsi + 0x98]
mov qword [rsp + 0xa50], rax
movdqu xmm0, xmmword [rsi + 0x88]
add byte [rax], al
add byte [rax - 0x77], cl
test byte [rax + rdx*2], ah
or al, byte [rax]
add bl, dh
movq mm0, qword [rsi + 0x88]
movdqa xmmword [rsp + 0xa40], xmm0
mov rax, qword [rsi + 0x68]
test rax, rax
je 0x1400cc72c
mov rcx, qword [rsi + 0x70]
lock inc qword [rax]
jg 0x1400cc72c
jmp case.0x1400cc60f.1
lea r14, [rsi + 0x118]
lea rax, [rsi + 0x408]
lea eax, [rsi + 0x408]
mov qword [rsp + 0xf8], rax
movzx eax, byte [rsi + 0x408]
test eax, eax
je 0x1400cc828
cmp eax, 3
jne case.0x1400cc60f.1
lea rax, [rsi + 0x400]
mov qword [rsp + 0x58], rax
movzx eax, byte [rsi + 0x400]
lea r11, [rsi + 0x1d0]
test eax, eax
je 0x1400ccc4a
cmp eax, 3
jne case.0x1400cc60f.1
lea r13, [rsi + 0x348]
movzx eax, byte [rsi + 0x348]
add eax, dword [rax]
add byte [rbp - 0x747bf040], al
invalid
add byte [rax], al
add eax, dword [rax]
add byte [rbp - 0x747bf040], al
invalid
cmp eax, 3
jne case.0x1400cc60f.1
xchg edx, eax
xchg ebx, eax
add byte [rax], al
xchg edx, eax
xchg ebx, eax
add byte [rax], al
lea rdi, [rsi + 0x340]
movzx eax, byte [rsi + 0x340]
test eax, eax
je 0x1400cf356
cmp eax, 3
jne case.0x1400cc60f.1
mov qword [rsp + 0x40], r11
mov qword [rsp + 0x4e8], r14
mov rax, qword [rsi + 0x338]
jmp 0x1400ccf29
lea rdi, [rsi + 0x148]
lea r14, [rsi + 0x118]
movzx eax, byte [rsi + 0x148]
test eax, eax
je 0x1400d4de6
cmp eax, 3
je 0x1400d4dfe
jmp case.0x1400cc60f.1
movzx edx, word [rsi + 0x64]
mov r8d, dword [rsi + 0x60]
mov r9d, dword [rsi + 0x48]
mov r10, qword [rsi + 0x40]
mov r11, qword [rsi + 0x30]
mov edi, dword [rsi + 0x38]
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movups xmm2, xmmword [rsi + 0x20]
mov rbx, qword [rsi + 0x50]
movzx ebp, word [rsi + 0x80]
movaps xmm3, xmmword [rsp + 0xa40]
movups xmmword [rsp + 0xa26], xmm3
mov r14, qword [rsp + 0xa50]
mov qword [rsp + 0xa36], r14
lea r14, [rsi + 0x118]
movups xmmword [rsi + 0x118], xmm0
movups xmmword [rsi + 0x128], xmm1
movups xmmword [rsi + 0x138], xmm2
mov qword [rsi + 0x148], r11
mov dword [rsi + 0x150], edi
mov qword [rsi + 0x158], r10
mov dword [rsi + 0x160], r9d
mov qword [rsi + 0x168], rbx
mov r9, qword [rsi + 0x58]
mov r10, qword [rsi + 0x78]
mov qword [rsi + 0x170], r9
mov dword [rsi + 0x178], r8d
mov word [rsi + 0x17c], dx
mov qword [rsi + 0x180], rax
mov qword [rsi + 0x188], rcx
mov qword [rsi + 0x190], r10
mov word [rsi + 0x198], bp
movdqu xmm0, xmmword [rsp + 0xa20]
movdqu xmm1, xmmword [rsp + 0xa2e]
movdqu xmmword [rsi + 0x1a8], xmm1
movdqu xmmword [rsi + 0x19a], xmm0
lea rax, [rsi + 0x408]
mov qword [rsp + 0xf8], rax
mov byte [rsi + 0x408], 0
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400cc853
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x2320
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov rbx, rax
pxor xmm0, xmm0
movdqu xmmword [rax + 0x2310], xmm0
movdqu xmmword [rax + 0x2300], xmm0
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400cc8ab
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x280
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov rbp, rax
and rbp, 0xffffffffffffff80
mov qword [rbp + 0x78], rax
mov qword [rbp + 0x80], 1
mov qword [rbp + 0x88], 1
movaps xmm0, xmmword [rsp + 0xa40]
movaps xmm1, xmmword [rsp + 0xa50]
movaps xmm2, xmmword [rsp + 0xa60]
movaps xmm3, xmmword [rsp + 0xa70]
movaps xmmword [rbp + 0x90], xmm0
movaps xmmword [rbp + 0xa0], xmm1
movaps xmmword [rbp + 0xb0], xmm2
movaps xmmword [rbp + 0xc0], xmm3
movaps xmm0, xmmword [rsp + 0xa80]
movaps xmmword [rbp + 0xd0], xmm0
movaps xmm0, xmmword [rsp + 0xa90]
movaps xmmword [rbp + 0xe0], xmm0
movaps xmm0, xmmword [rsp + 0xaa0]
movaps xmmword [rbp + 0xf0], xmm0
mov qword [rbp + 0x100], rbx
mov qword [rbp + 0x108], 0
movaps xmm0, xmmword [rsp + 0x19d0]
movdqa xmm1, xmmword [rsp + 0x19e0]
movaps xmm2, xmmword [rsp + 0x19f0]
movaps xmm3, xmmword [rsp + 0x1a00]
movaps xmmword [rbp + 0x110], xmm0
movdqa xmmword [rbp + 0x120], xmm1
movaps xmmword [rbp + 0x130], xmm2
movaps xmmword [rbp + 0x140], xmm3
movaps xmm0, xmmword [rsp + 0x1a10]
movaps xmmword [rbp + 0x150], xmm0
movaps xmm0, xmmword [rsp + 0x1a20]
movaps xmmword [rbp + 0x160], xmm0
movdqa xmm0, xmmword [rsp + 0x1a30]
movdqa xmmword [rbp + 0x170], xmm0
mov qword [rbp + 0x180], 0
mov qword [rbp + 0x190], 0
mov qword [rbp + 0x200], rbx
mov qword [rbp + 0x208], rbx
mov qword [rbp + 0x210], 0
mov byte [rbp + 0x218], 0
mov qword [rbp + 0x220], 0
mov byte [rbp + 0x228], 0
pxor xmm0, xmm0
movdqa xmmword [rbp + 0x240], xmm0
movdqa xmmword [rbp + 0x230], xmm0
mov qword [rbp + 0x250], 1
lock inc qword [rbp + 0x80]
jle case.0x1400cc60f.1
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400cca6a
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x30
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov r13, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov byte [rax + 0x28], 0
pxor xmm0, xmm0
movdqu xmmword [rax + 0x10], xmm0
lock inc qword [rax]
jle case.0x1400cc60f.1
sub rbp, 0xffffffffffffff80
mov qword [rsi + 0x1b8], r13
mov qword [rsi + 0x1c0], rbp
mov byte [rsi + 0x1c8], 0
mov eax, dword [rsp + 0xa40]
mov ecx, dword [rsp + 0xa43]
mov dword [rsi + 0x1c9], eax
mov dword [rsi + 0x1cc], ecx
cmp byte [rsi + 0x198], 0
je 0x1400ccbbb
lea rax, [rsi + 0x1a0]
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0xa50], rcx
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0xa40], xmm0
mov rcx, qword [rsi + 0x180]
mov rdx, qword [rsi + 0x188]
test rcx, rcx
je 0x1400ccb26
lock inc qword [rcx]
jle case.0x1400cc60f.1
lea rax, [rsi + 0x138]
mov r8, qword [rsp + 0xa50]
mov qword [rsp + 0x7d0], r8
movaps xmm0, xmmword [rsp + 0xa40]
movaps xmmword [rsp + 0x7c0], xmm0
lea r11, [rsi + 0x1d0]
mov qword [rsi + 0x1d0], rcx
mov qword [rsi + 0x1d8], rdx
mov qword [rsi + 0x350], rbp
mov qword [rsi + 0x358], r13
mov qword [rsi + 0x3e0], rax
movaps xmm0, xmmword [rsp + 0x7c0]
movups xmmword [rsi + 0x3e8], xmm0
mov r8, qword [rsp + 0x7d0]
mov qword [rsi + 0x3f8], r8
lea r8, [rsi + 0x400]
mov qword [rsp + 0x58], r8
mov byte [rsi + 0x400], 0
movq xmm1, r13
movq xmm0, rbp
punpcklqdq xmm0, xmm1
jmp 0x1400ccc67
mov rcx, qword [rsi + 0x1a0]
mov rdx, qword [rsi + 0x1a8]
mov rax, qword [rsi + 0x1b0]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xb0], rdx
call qword [rdx + 0x40]
mov ebx, eax
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400ccc15
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x2000
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
movzx ecx, byte [rsi + 0x199]
test ecx, ecx
je 0x1400cee37
cmp ecx, 2
jne 0x1400cee35
mov ecx, ebx
jmp 0x1400cee37
movdqu xmm0, xmmword [rsi + 0x350]
mov rax, qword [rsi + 0x3e0]
mov rcx, qword [rsi + 0x1d0]
mov rdx, qword [rsi + 0x1d8]
movdqu xmmword [rsi + 0x1e0], xmm0
mov qword [rsi + 0x360], rax
mov qword [rsi + 0x1f0], rcx
mov qword [rsi + 0x1f8], rdx
mov ecx, dword [rax + 0x40]
lea edx, [rcx - 0x4000]
cmp edx, 0xffc000
jae case.0x1400cc60f.1
mov r8, qword [rax + 0x30]
mov rdx, r8
shr rdx, 0x20
jne case.0x1400cc60f.1
lea rdx, [rsi + 0x3e8]
mov r10d, dword [rax + 0x38]
mov r9d, dword [rax + 0x3c]
cmp qword [rax], 0
je 0x1400cccc5
mov rax, qword [rax + 8]
jmp 0x1400cccca
mov eax, 0xa
mov dword [rsi + 0x368], 1
mov dword [rsi + 0x36c], r10d
mov qword [rsi + 0x370], 0x1e
mov dword [rsi + 0x378], 0
mov qword [rsi + 0x380], 0xffffffffffffffff
mov qword [rsi + 0x388], r8
mov qword [rsi + 0x390], rax
mov qword [rsi + 0x398], 0x14
mov dword [rsi + 0x3a0], 0
mov qword [rsi + 0x3a8], 1
mov dword [rsi + 0x3b0], 0
mov dword [rsi + 0x3b8], 1
mov dword [rsi + 0x3bc], r9d
mov dword [rsi + 0x3c0], 1
mov dword [rsi + 0x3c4], ecx
mov dword [rsi + 0x3c8], 0
mov dword [rsi + 0x3d0], 0
mov byte [rsi + 0x3d8], 0
mov dword [rsi + 0x3dc], 1
mov dword [rsi + 0x200], 1
mov dword [rsi + 0x204], r10d
mov qword [rsi + 0x208], 0x1e
mov dword [rsi + 0x210], 0
mov qword [rsi + 0x218], 0xffffffffffffffff
mov qword [rsi + 0x220], r8
mov qword [rsi + 0x228], rax
mov qword [rsi + 0x230], 0x14
mov dword [rsi + 0x238], 0
mov qword [rsi + 0x240], 1
mov dword [rsi + 0x248], 0
mov dword [rsi + 0x250], 1
mov dword [rsi + 0x254], r9d
mov dword [rsi + 0x258], 1
mov dword [rsi + 0x25c], ecx
mov dword [rsi + 0x260], 0
mov dword [rsi + 0x268], 0
mov byte [rsi + 0x270], 0
mov dword [rsi + 0x274], 1
mov rax, qword [rdx + 0x10]
mov qword [rsi + 0x288], rax
movups xmm0, xmmword [rdx]
movups xmmword [rsi + 0x278], xmm0
lea r13, [rsi + 0x348]
mov byte [rsi + 0x348], 0
lea rax, [rsi + 0x290]
mov rcx, qword [rsi + 0x288]
mov qword [rsi + 0x2a0], rcx
movups xmm0, xmmword [rsi + 0x278]
movups xmmword [rsi + 0x290], xmm0
movups xmm0, xmmword [rsi + 0x200]
movdqu xmm1, xmmword [rsi + 0x210]
movups xmm2, xmmword [rsi + 0x220]
movups xmm3, xmmword [rsi + 0x230]
movups xmmword [rsi + 0x2a8], xmm0
movdqu xmmword [rsi + 0x2b8], xmm1
movups xmmword [rsi + 0x2c8], xmm2
movups xmmword [rsi + 0x2d8], xmm3
movups xmm0, xmmword [rsi + 0x240]
movups xmmword [rsi + 0x2e8], xmm0
movups xmm0, xmmword [rsi + 0x250]
movups xmmword [rsi + 0x2f8], xmm0
movdqu xmm0, xmmword [rsi + 0x260]
movdqu xmmword [rsi + 0x308], xmm0
mov rcx, qword [rsi + 0x270]
mov qword [rsi + 0x318], rcx
mov qword [rsi + 0x320], rax
lea rdi, [rsi + 0x340]
mov byte [rsi + 0x340], 0
mov qword [rsp + 0x40], r11
mov qword [rsp + 0x4e8], r14
mov qword [rsi + 0x328], rax
lea rax, str.PRI__HTTP_2.0_r_n_r_nSM_r_n_r_nInvalidUri
mov qword [rsi + 0x330], rax
mov qword [rsi + 0x338], 0x18
mov eax, 0x18
lea rbx, [rsp + 0xa40]
lea r14, str.corrupt_deflate_stream
movabs rbp, 0x1700000003
nop word cs:[rax + rax]
test rax, rax
je 0x1400cd08d
mov rcx, qword [rsi + 0x328]
mov r9, qword [rsi + 0x330]
mov rdx, qword [rcx]
mov r10, qword [rcx + 8]
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov r8, r12
call qword [r10 + 0x20]
mov rax, qword [rsp + 0xa40]
cmp rax, 2
je 0x1400ccfdd
mov rcx, qword [rsp + 0xa48]
test rax, rax
jne 0x1400ccfea
mov rdx, qword [rsi + 0x330]
mov rax, qword [rsi + 0x338]
mov qword [rsi + 0x330], r14
mov qword [rsi + 0x338], 0
sub rax, rcx
jb case.0x1400cc60f.1
add rdx, rcx
mov qword [rsi + 0x330], rdx
mov qword [rsi + 0x338], rax
test rcx, rcx
jne 0x1400ccf50
jmp 0x1400ccff6
mov byte [rdi], 3
mov byte [r13], 3
jmp 0x1400cd06e
mov rbp, rcx
test rcx, rcx
je 0x1400cd08d
mov qword [rsp + 0xe8], r13
mov byte [rsi + 0x340], 1
mov rbx, qword [rsi + 0x290]
mov rdi, qword [rsi + 0x298]
mov rcx, rbx
call qword [rdi]
mov byte [rsp + 0xb0], 4
mov r13d, 2
cmp qword [rdi + 8], 0
mov qword [rsp + 0xa8], rbp
je 0x1400cd051
cmp qword [rdi + 0x10], 0x11
jb 0x1400cd040
mov rbx, qword [rbx - 8]
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
mov qword [rsp + 0x90], rdx
mov rdx, qword [rsp + 0xe8]
mov byte [rdx], 1
cmp r13, 3
jne 0x1400ce347
mov rax, qword [rsp + 0x58]
mov byte [rax], 3
mov rax, qword [rsp + 0xf8]
mov byte [rax], 3
mov byte [r15 + 0x70], 3
mov al, 3
jmp 0x1400d5a16
mov qword [rsp + 0xe8], r13
mov qword [rsp + 0x78], r12
mov byte [rsi + 0x340], 1
mov rbx, qword [rsi + 0x290]
mov rdi, qword [rsi + 0x298]
mov r12, qword [rsi + 0x2a0]
mov rcx, rbx
call qword [rdi + 0x40]
test al, al
mov eax, 0x100
mov r13d, 0x400
cmovne r13, rax
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x670], xmm0
movdqa xmmword [rsp + 0x1a0], xmm0
movdqa xmmword [rsp + 0x4f0], xmm0
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400cd117
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x4000
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov r14, rax
mov qword [rsp + 0xf0], r15
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400cd163
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x2000
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov r15, rax
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400cd1a7
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x1000
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov rcx, r13
or rcx, 9
mov qword [rsp + 0xa40], 1
mov qword [rsp + 0xa48], 0
mov qword [rsp + 0xa58], 3
mov qword [rsp + 0xa60], 0
mov qword [rsp + 0xa68], 9
mov byte [rsp + 0xa70], 1
mov edx, dword [rsp + 0x550]
mov r8d, dword [rsp + 0x553]
mov dword [rsp + 0xa71], edx
mov dword [rsp + 0xa74], r8d
mov qword [rsp + 0xa88], 2
movups xmm0, xmmword [rsp + 0x2ea0]
movups xmmword [rsp + 0xa90], xmm0
mov qword [rsp + 0xaa0], 0
mov qword [rsp + 0xaa8], 8
movaps xmm0, xmmword [rsp + 0x670]
movups xmmword [rsp + 0xab0], xmm0
mov qword [rsp + 0xac0], 8
movaps xmm0, xmmword [rsp + 0x1a0]
movups xmmword [rsp + 0xac8], xmm0
mov qword [rsp + 0xad8], 0
movaps xmm0, xmmword [rsp + 0x4f0]
movups xmmword [rsp + 0xae0], xmm0
mov qword [rsp + 0xaf0], 0x1000
mov qword [rsp + 0xaf8], 3
movups xmm0, xmmword [rsp + 0x19d0]
movups xmm1, xmmword [rsp + 0x19e0]
movups xmm2, xmmword [rsp + 0x19f0]
movups xmm3, xmmword [rsp + 0x1a00]
movups xmmword [rsp + 0xb00], xmm0
movups xmmword [rsp + 0xb10], xmm1
movups xmmword [rsp + 0xb20], xmm2
movups xmmword [rsp + 0xb30], xmm3
mov qword [rsp + 0xb40], 4
movdqu xmm0, xmmword [rsp + 0x2960]
movdqu xmm1, xmmword [rsp + 0x2970]
movups xmm2, xmmword [rsp + 0x2980]
movups xmm3, xmmword [rsp + 0x2990]
movups xmmword [rsp + 0xb78], xmm3
movups xmmword [rsp + 0xb68], xmm2
movdqu xmmword [rsp + 0xb58], xmm1
movdqu xmmword [rsp + 0xb48], xmm0
mov qword [rsp + 0xb88], r14
mov qword [rsp + 0xb90], 0
mov qword [rsp + 0xb98], 0x4000
mov qword [rsp + 0xba0], 0x15
mov qword [rsp + 0xba8], 0
mov qword [rsp + 0xbb0], r13
mov qword [rsp + 0xbb8], rcx
mov dword [rsp + 0xbc0], 0x4000
mov qword [rsp + 0xbc8], rbx
mov qword [rsp + 0xbd0], rdi
mov qword [rsp + 0xbd8], r12
mov qword [rsp + 0xbe0], r15
mov qword [rsp + 0xbe8], 0
mov qword [rsp + 0xbf0], 0x2000
mov qword [rsp + 0xbf8], 0x11
mov word [rsp + 0xc00], 0
mov byte [rsp + 0xc02], 0
movzx ecx, byte [rsp + 0x13c]
mov byte [rsp + 0xc07], cl
mov ecx, dword [rsp + 0x138]
mov dword [rsp + 0xc03], ecx
pxor xmm0, xmm0
movdqu xmmword [rsp + 0xc08], xmm0
mov qword [rsp + 0xc18], 0
mov qword [rsp + 0xc20], 8
movdqu xmmword [rsp + 0xc28], xmm0
mov qword [rsp + 0xc38], 0
mov qword [rsp + 0xc40], 0x1000
mov qword [rsp + 0xc48], rax
mov qword [rsp + 0xc50], 0
mov qword [rsp + 0xc58], 0x1000
mov qword [rsp + 0xc60], 0xd
mov qword [rsp + 0xc68], 0x1000
mov qword [rsp + 0xa50], 0x4000
mov qword [rsp + 0xa78], 0
mov qword [rsp + 0xc70], 2
mov qword [rsp + 0xdb0], 0x1000000
mov eax, dword [rsi + 0x300]
test eax, eax
je 0x1400cd4ea
mov ecx, dword [rsi + 0x304]
lea rdx, [rcx - 0x4000]
cmp rdx, 0xffc000
jae case.0x1400cc60f.1
mov qword [rsp + 0xa50], rcx
mov ecx, dword [rsi + 0x308]
test ecx, ecx
je 0x1400cd504
mov edx, dword [rsi + 0x30c]
mov qword [rsp + 0xdb0], rdx
jmp 0x1400cd504
movzx r8d, byte [rsi + 0x318]
movdqu xmm0, xmmword [rsi + 0x2e0]
movdqu xmm1, xmmword [rsi + 0x2f0]
mov r9d, dword [rsi + 0x304]
mov r10, qword [rsi + 0x310]
movdqu xmmword [rsp + 0x19d4], xmm0
movdqu xmmword [rsp + 0x19e4], xmm1
mov dword [rsp + 0x19f4], eax
mov dword [rsp + 0x19f8], r9d
mov dword [rsp + 0x19fc], ecx
mov dword [rsp + 0x1a00], edx
mov qword [rsp + 0x1a04], r10
mov byte [rsp + 0x1a0c], r8b
mov byte [rsp + 0x19d0], 4
lea rcx, [rsp + 0xa88]
lea rdx, [rsp + 0x19d0]
call fcn.140096e50
cmp al, 0xc
jne case.0x1400cc60f.1
mov rax, qword [rsp + 0xa40]
mov qword [rsp + 0x98], rax
movzx eax, byte [rsp + 0xa48]
mov byte [rsp + 0xb0], al
movzx eax, byte [rsp + 0xa4f]
mov dword [rsp + 0x178], eax
movzx eax, word [rsp + 0xa4d]
mov qword [rsp + 0x68], rax
mov eax, dword [rsp + 0xa49]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0xa50]
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0xa58]
mov qword [rsp + 0x198], rax
mov eax, dword [rsi + 0x2e8]
mov qword [rsp + 0x80], rax
test rax, rax
sete bl
mov edx, dword [rsi + 0x2ec]
mov ecx, dword [rsi + 0x2f8]
mov eax, dword [rsi + 0x310]
mov qword [rsp + 0x60], rax
test rax, rax
setne r12b
mov qword [rsp + 0xa0], rcx
test rcx, rcx
mov eax, dword [rsi + 0x2fc]
mov r13d, 0xffff
mov dword [rsp + 0x1c0], eax
cmovne r13d, eax
mov eax, dword [rsi + 0x314]
mov dword [rsp + 0xc4], edx
test edx, edx
setne byte [rsp + 0x48]
mov dword [rsp + 0xc0], eax
test eax, eax
setne byte [rsp + 0x540]
mov rax, qword [rsp + 0xa60]
mov qword [rsp + 0x190], rax
mov rax, qword [rsp + 0xa68]
mov qword [rsp + 0x148], rax
mov rax, qword [rsp + 0xa70]
mov qword [rsp + 0x1d8], rax
mov rax, qword [rsp + 0xa78]
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0xa80]
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0xa88]
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0xa90]
mov qword [rsp + 0x1e8], rax
mov rax, qword [rsp + 0xa98]
mov qword [rsp + 0x1f0], rax
mov rax, qword [rsp + 0xaa0]
mov qword [rsp + 0x1f8], rax
mov rax, qword [rsp + 0xaa8]
mov qword [rsp + 0x200], rax
mov rax, qword [rsp + 0xab0]
mov qword [rsp + 0x208], rax
mov rax, qword [rsp + 0xab8]
mov qword [rsp + 0x210], rax
mov rax, qword [rsp + 0xac0]
mov qword [rsp + 0x218], rax
mov rax, qword [rsp + 0xac8]
mov qword [rsp + 0x220], rax
mov rax, qword [rsp + 0xad0]
mov qword [rsp + 0x228], rax
mov rax, qword [rsp + 0xad8]
mov qword [rsp + 0x230], rax
mov rax, qword [rsp + 0xae0]
mov qword [rsp + 0x238], rax
mov rax, qword [rsp + 0xae8]
mov qword [rsp + 0x240], rax
mov rax, qword [rsp + 0xaf0]
mov qword [rsp + 0x248], rax
mov rax, qword [rsp + 0xaf8]
mov qword [rsp + 0x250], rax
mov rax, qword [rsp + 0xb00]
mov qword [rsp + 0x258], rax
mov rax, qword [rsp + 0xb08]
mov qword [rsp + 0x260], rax
mov rax, qword [rsp + 0xb10]
mov qword [rsp + 0x268], rax
mov rax, qword [rsp + 0xb18]
mov qword [rsp + 0x270], rax
mov rax, qword [rsp + 0xb20]
mov qword [rsp + 0x278], rax
mov rax, qword [rsp + 0xb28]
mov qword [rsp + 0x280], rax
mov rax, qword [rsp + 0xb30]
mov qword [rsp + 0x288], rax
mov rax, qword [rsp + 0xb38]
mov qword [rsp + 0x290], rax
mov rax, qword [rsp + 0xb40]
mov qword [rsp + 0x298], rax
mov rax, qword [rsp + 0xb48]
mov qword [rsp + 0x2a0], rax
mov rax, qword [rsp + 0xb50]
mov qword [rsp + 0x2a8], rax
mov rax, qword [rsp + 0xb58]
mov qword [rsp + 0x2b0], rax
mov rax, qword [rsp + 0xb60]
mov qword [rsp + 0x2b8], rax
mov rax, qword [rsp + 0xb68]
mov qword [rsp + 0x2c0], rax
mov rax, qword [rsp + 0xb70]
mov qword [rsp + 0x2c8], rax
mov rax, qword [rsp + 0xb78]
mov qword [rsp + 0x2d0], rax
mov rax, qword [rsp + 0xb80]
mov qword [rsp + 0x2d8], rax
mov rax, qword [rsp + 0xb88]
mov qword [rsp + 0x2e0], rax
mov rax, qword [rsp + 0xb90]
mov qword [rsp + 0x2e8], rax
mov rax, qword [rsp + 0xb98]
mov qword [rsp + 0x2f0], rax
mov rax, qword [rsp + 0xba0]
mov qword [rsp + 0x2f8], rax
mov rax, qword [rsp + 0xba8]
mov qword [rsp + 0x300], rax
mov rax, qword [rsp + 0xbb0]
mov qword [rsp + 0x308], rax
mov rax, qword [rsp + 0xbb8]
mov qword [rsp + 0x310], rax
mov rax, qword [rsp + 0xbc0]
mov qword [rsp + 0x318], rax
mov rax, qword [rsp + 0xbc8]
mov qword [rsp + 0x320], rax
mov rax, qword [rsp + 0xbd0]
mov qword [rsp + 0x328], rax
mov rax, qword [rsp + 0xbd8]
mov qword [rsp + 0x330], rax
mov rax, qword [rsp + 0xbe0]
mov qword [rsp + 0x338], rax
mov rax, qword [rsp + 0xbe8]
mov qword [rsp + 0x340], rax
mov rax, qword [rsp + 0xbf0]
mov qword [rsp + 0x348], rax
mov rax, qword [rsp + 0xbf8]
mov qword [rsp + 0x350], rax
mov rax, qword [rsp + 0xc00]
mov qword [rsp + 0x358], rax
mov rax, qword [rsp + 0xc08]
mov qword [rsp + 0x360], rax
mov rax, qword [rsp + 0xc10]
mov qword [rsp + 0x368], rax
mov rax, qword [rsp + 0xc18]
mov qword [rsp + 0x370], rax
mov rax, qword [rsp + 0xc20]
mov qword [rsp + 0x378], rax
mov rax, qword [rsp + 0xc28]
mov qword [rsp + 0x380], rax
mov rax, qword [rsp + 0xc30]
mov qword [rsp + 0x388], rax
mov rax, qword [rsp + 0xc38]
mov qword [rsp + 0x390], rax
mov rax, qword [rsp + 0xc40]
mov qword [rsp + 0x398], rax
mov rax, qword [rsp + 0xc48]
mov qword [rsp + 0x3a0], rax
mov rax, qword [rsp + 0xc50]
mov qword [rsp + 0x3a8], rax
mov rax, qword [rsp + 0xc58]
mov qword [rsp + 0x3b0], rax
mov rax, qword [rsp + 0xc60]
mov qword [rsp + 0x3b8], rax
mov rax, qword [rsp + 0xc68]
mov qword [rsp + 0x3c0], rax
mov rax, qword [rsp + 0xc70]
mov qword [rsp + 0x3c8], rax
mov rax, qword [rsp + 0xc78]
mov qword [rsp + 0x3d0], rax
mov rax, qword [rsp + 0xc80]
mov qword [rsp + 0x3d8], rax
mov rax, qword [rsp + 0xc88]
mov qword [rsp + 0x3e0], rax
mov rax, qword [rsp + 0xc90]
mov qword [rsp + 0x3e8], rax
mov rax, qword [rsp + 0xc98]
mov qword [rsp + 0x3f0], rax
mov rax, qword [rsp + 0xca0]
mov qword [rsp + 0x3f8], rax
mov rax, qword [rsp + 0xca8]
mov qword [rsp + 0x400], rax
mov rax, qword [rsp + 0xcb0]
mov qword [rsp + 0x408], rax
mov rax, qword [rsp + 0xcb8]
mov qword [rsp + 0x410], rax
mov rax, qword [rsp + 0xcc0]
mov qword [rsp + 0x418], rax
mov rax, qword [rsp + 0xcc8]
mov qword [rsp + 0x420], rax
mov rax, qword [rsp + 0xcd0]
mov qword [rsp + 0x428], rax
mov rax, qword [rsp + 0xcd8]
mov qword [rsp + 0x430], rax
mov rax, qword [rsp + 0xce0]
mov qword [rsp + 0x438], rax
mov rax, qword [rsp + 0xce8]
mov qword [rsp + 0x440], rax
mov rax, qword [rsp + 0xcf0]
mov qword [rsp + 0x448], rax
mov rax, qword [rsp + 0xcf8]
mov qword [rsp + 0x450], rax
mov rax, qword [rsp + 0xd00]
mov qword [rsp + 0x458], rax
mov rax, qword [rsp + 0xd08]
mov qword [rsp + 0x460], rax
mov rax, qword [rsp + 0xd10]
mov qword [rsp + 0x468], rax
mov rax, qword [rsp + 0xd18]
mov qword [rsp + 0x470], rax
mov rax, qword [rsp + 0xd20]
mov qword [rsp + 0x478], rax
mov rax, qword [rsp + 0xd28]
mov qword [rsp + 0x480], rax
mov rax, qword [rsp + 0xd30]
mov qword [rsp + 0x488], rax
mov rax, qword [rsp + 0xd38]
mov qword [rsp + 0x490], rax
mov rax, qword [rsp + 0xd40]
mov qword [rsp + 0x498], rax
mov rax, qword [rsp + 0xd48]
mov qword [rsp + 0x4a0], rax
mov rax, qword [rsp + 0xd50]
mov qword [rsp + 0x4a8], rax
mov rax, qword [rsp + 0xd58]
mov qword [rsp + 0x4b0], rax
mov rax, qword [rsp + 0xd60]
mov qword [rsp + 0x4b8], rax
mov rax, qword [rsp + 0xd68]
mov qword [rsp + 0x4c0], rax
mov rax, qword [rsp + 0xd70]
mov qword [rsp + 0x4c8], rax
mov rax, qword [rsp + 0xd78]
mov qword [rsp + 0x4d0], rax
mov rax, qword [rsp + 0xd80]
mov qword [rsp + 0x548], rax
mov rax, qword [rsp + 0xd88]
mov qword [rsp + 0x4d8], rax
mov rax, qword [rsp + 0xd90]
mov qword [rsp + 0x4e0], rax
mov rax, qword [rsp + 0xd98]
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0xda0]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0xda8]
mov qword [rsp + 0x100], rax
mov rax, qword [rsp + 0xdb0]
mov qword [rsp + 0x600], rax
mov ebp, dword [rsi + 0x31c]
mov rax, qword [rsi + 0x2c0]
mov qword [rsp + 0x180], rax
mov r14, qword [rsi + 0x2c8]
mov r15, qword [rsi + 0x2b0]
mov edi, dword [rsi + 0x2b8]
mov rax, qword [rsi + 0x2d0]
mov qword [rsp + 0x188], rax
mov rax, qword [rsi + 0x2d8]
mov qword [rsp + 0x150], rax
movzx eax, byte [rsi + 0x318]
mov qword [rsp + 0x70], rax
mov eax, dword [rsi + 0x2e0]
mov qword [rsp + 0x90], rax
mov eax, dword [rsi + 0x2e4]
mov dword [rsp + 0x168], eax
mov eax, dword [rsi + 0x2f0]
mov qword [rsp + 0x30], rax
mov eax, dword [rsi + 0x2f4]
mov qword [rsp + 0xe0], rax
mov eax, dword [rsi + 0x300]
mov qword [rsp + 0x38], rax
mov eax, dword [rsi + 0x304]
mov dword [rsp + 0x170], eax
mov eax, dword [rsi + 0x308]
mov qword [rsp + 0x28], rax
mov eax, dword [rsi + 0x30c]
mov dword [rsp + 0xbc], eax
xor ecx, ecx
call fcn.1400ea100
test rax, rax
je case.0x1400cc60f.1
movups xmm6, xmmword [rax]
inc qword [rax]
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x19e0], xmm0
movdqa xmmword [rsp + 0x19d0], xmm0
movdqa xmmword [rsp + 0x2960], xmm0
mov qword [rsp + 0x2970], 0
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400cde44
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x230
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
or bl, byte [rsp + 0x48]
and r12b, byte [rsp + 0x540]
xor r8d, r8d
cmp qword [rsp + 0x30], 1
sbb r8, r8
or r8, qword [rsp + 0xe0]
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], 0
mov byte [rax + 0x18], 0
mov ecx, dword [rsp + 0x50]
mov edx, dword [rsp + 0x53]
mov dword [rax + 0x19], ecx
mov dword [rax + 0x1c], edx
mov qword [rax + 0x20], 0
mov qword [rax + 0x28], 8
movaps xmm0, xmmword [rsp + 0x2960]
movups xmmword [rax + 0x30], xmm0
mov rcx, qword [rsp + 0x2970]
mov qword [rax + 0x40], rcx
movabs rcx, 0x200000000
mov qword [rax + 0x48], rcx
mov dword [rax + 0x50], 0
mov qword [rax + 0x58], r15
mov dword [rax + 0x60], edi
movabs rcx, 0xffff0000ffff
mov qword [rax + 0x68], rcx
mov dword [rax + 0x70], 0
movups xmm0, xmmword [rsp + 0x2ea0]
movups xmmword [rax + 0x74], xmm0
mov dword [rax + 0x84], 0
movups xmm0, xmmword [rsp + 0x670]
movups xmmword [rax + 0x88], xmm0
mov dword [rax + 0x98], 0
movups xmm0, xmmword [rsp + 0x1a0]
movups xmmword [rax + 0x9c], xmm0
mov dword [rax + 0xac], r13d
mov qword [rax + 0xb0], 0
mov dword [rax + 0xb8], 0x7fffffff
mov byte [rax + 0xbc], bl
mov byte [rax + 0xbd], r12b
mov dword [rax + 0xc0], 0
mov dword [rax + 0xc4], ebp
mov qword [rax + 0xc8], rcx
mov qword [rax + 0xd0], r14
mov dword [rax + 0xd8], 0
movups xmm0, xmmword [rsp + 0x4f0]
movups xmmword [rax + 0xdc], xmm0
mov dword [rax + 0xec], 0
movups xmm0, xmmword [rsp + 0x550]
movups xmmword [rax + 0xf0], xmm0
mov dword [rax + 0x100], 0
movups xmm0, xmmword [rsp + 0x138]
movups xmmword [rax + 0x104], xmm0
mov dword [rax + 0x114], 0
mov dword [rax + 0x120], 0
movabs rcx, 0xffff7fffffff
mov qword [rax + 0x128], rcx
mov word [rax + 0x130], 1
movzx ecx, word [rsp + 0x5ce]
mov word [rax + 0x136], cx
mov ecx, dword [rsp + 0x5ca]
mov dword [rax + 0x132], ecx
mov byte [rax + 0x138], 3
mov qword [rax + 0x160], 0
mov qword [rax + 0x170], 0
mov qword [rax + 0x178], 8
movaps xmm0, xmmword [rsp + 0x19d0]
movdqa xmm1, xmmword [rsp + 0x19e0]
movdqu xmmword [rax + 0x190], xmm1
movups xmmword [rax + 0x180], xmm0
mov qword [rax + 0x1a0], 8
mov qword [rax + 0x1a8], 0
movups xmm0, xmmword [0x1401cec10]
movups xmmword [rax + 0x1c0], xmm0
movdqu xmm0, xmmword [0x1401cec00]
movdqu xmmword [rax + 0x1b0], xmm0
movups xmmword [rax + 0x1d0], xmm6
mov rcx, qword [rsp + 0x180]
mov qword [rax + 0x1e0], rcx
mov qword [rax + 0x1e8], 0
mov qword [rax + 0x1f0], r8
mov qword [rax + 0x1f8], 0
mov rcx, qword [rsp + 0x188]
mov qword [rax + 0x200], rcx
mov qword [rax + 0x208], 0
mov rcx, qword [rsp + 0x150]
mov qword [rax + 0x210], rcx
mov qword [rax + 0x218], 0
mov byte [rax + 0x220], 0
mov qword [rax + 0x228], 1
movzx ecx, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
mov r14, rax
je 0x1400ce12b
mov rbp, qword [rsp + 0xa0]
jmp 0x1400ce14b
call sub.kernel32.dll_GetProcessHeap
test rax, rax
mov rbp, qword [rsp + 0xa0]
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x48
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov rdi, rax
mov rbx, r14
add rbx, 0x10
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], 0
mov byte [rax + 0x18], 0
mov qword [rax + 0x20], 0
mov qword [rax + 0x28], 8
pxor xmm0, xmm0
movdqu xmmword [rax + 0x30], xmm0
mov qword [rax + 0x40], 0
mov rcx, rbx
call sub.kernel32.dll_AcquireSRWLockExclusive
movzx eax, byte [r14 + 0x18]
test al, al
jne case.0x1400cc60f.1
inc qword [r14 + 0x228]
mov rcx, rbx
call fcn.1401168fc
lock inc qword [r14]
jle case.0x1400cc60f.1
mov qword [rsp + 0x150], rdi
lock inc qword [rdi]
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x80]
mov r8, qword [rsp + 0x38]
mov r9, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x68]
jle case.0x1400cc60f.1
mov r10d, dword [rsp + 0x178]
shl r10d, 0x10
or edx, r10d
shl rdx, 0x20
mov r10d, dword [rsp + 0x168]
shl rcx, 0x20
mov r11d, dword [rsp + 0xc4]
shl qword [rsp + 0x30], 0x20
shl rbp, 0x20
mov ebx, dword [rsp + 0x1c0]
shl r8, 0x20
mov r15d, dword [rsp + 0x170]
shl r9, 0x20
mov r12d, dword [rsp + 0xbc]
shl rax, 0x20
mov r13d, dword [rsp + 0xc0]
mov rdi, qword [rsp + 0x70]
shl rdi, 0x20
cmp dword [rsi + 0x2a8], 0
je 0x1400ce2f9
mov qword [rsp + 0x68], rdx
mov edx, dword [rsi + 0x2ac]
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x60], rbx
mov rbx, rcx
mov rcx, r14
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x70], rdi
mov rdi, rbp
mov rbp, rax
mov qword [rsp + 0x80], r13
mov r13, r10
mov r14, r12
mov r12, r15
mov r15, r11
call fcn.14009d2d0
mov r11, r15
mov r15, r12
mov r12, r14
mov r10, r13
mov r13, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x68]
mov rcx, rbx
mov rbx, qword [rsp + 0x60]
mov r9, qword [rsp + 0x28]
mov r8, qword [rsp + 0x38]
mov rax, rbp
mov rbp, rdi
mov rdi, qword [rsp + 0x70]
mov r14, qword [rsp + 0x48]
add qword [rsp + 0x88], rdx
or rcx, r10
add qword [rsp + 0x30], r11
add rbp, qword [rsp + 0xe0]
or r8, rbx
or r9, r15
or rax, r12
or rdi, r13
mov r15, qword [rsp + 0xf0]
mov r12, qword [rsp + 0x78]
mov r13, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xe8]
mov byte [rdx], 1
cmp r13, 3
je 0x1400cd06e
cmp r13, 2
jne 0x1400ce414
movzx eax, byte [rsp + 0xb0]
mov byte [rsp + 0xa40], al
mov rcx, qword [rsp + 0x88]
mov dword [rsp + 0xa41], ecx
mov rax, rcx
shr rax, 0x30
mov byte [rsp + 0xa47], al
shr rcx, 0x20
mov word [rsp + 0xa45], cx
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0xa48], rax
mov rax, qword [rsp + 0x198]
mov qword [rsp + 0xa50], rax
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0xa58], rax
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0xa60], rax
lea rcx, [rsp + 0xa40]
call fcn.14003e950
mov r14, rax
mov rax, qword [rsi + 0x1f0]
test rax, rax
je 0x1400ce3fe
lock dec qword [rax]
jne 0x1400ce3fe
mov rcx, qword [rsi + 0x1f0]
mov rdx, qword [rsi + 0x1f8]
call fcn.1400a2110
lea rcx, [rsi + 0x1e0]
call fcn.14005f350
mov rdx, qword [rsp + 0x40]
jmp 0x1400d2c78
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x60], rax
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400ce456
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 8
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov rbx, rax
mov qword [rsp + 0x48], r14
mov qword [rax], 0
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400ce4a6
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x10
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov r14, rax
pxor xmm0, xmm0
movdqu xmmword [rax], xmm0
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400ce4f2
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x60
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov qword [rsp + 0x98], r13
mov qword [rsp + 0x70], rdi
movabs rcx, 0x8000000000000001
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], r14
mov qword [rax + 0x28], r14
mov qword [rax + 0x30], 1
dec rcx
mov qword [rax + 0x38], rcx
mov qword [rax + 0x40], 1
mov qword [rax + 0x48], 0
mov qword [rax + 0x58], 0
mov qword [rsp + 0xe0], rax
lock inc qword [rax]
jle case.0x1400cc60f.1
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
mov r13, qword [rsp + 0x150]
mov r14, qword [rsp + 0x90]
jne 0x1400ce5b2
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x38
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov rbx, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], 0
mov byte [rax + 0x18], 0
mov qword [rax + 0x20], 0
mov byte [rax + 0x30], 0
mov eax, dword [rsp + 0xa40]
mov ecx, dword [rsp + 0xa43]
mov dword [rsp + 0x12b], ecx
mov dword [rsp + 0x128], eax
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400ce639
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x48
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov qword [rsp + 0x540], rbx
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], 0
mov byte [rax + 0x20], 0
mov qword [rax + 0x28], 0
mov byte [rax + 0x38], 0
mov word [rax + 0x40], 0
lock inc qword [rax]
jle case.0x1400cc60f.1
mov qword [rsp + 0xe8], rax
shl r14, 0x20
or r14, 1
mov rax, qword [rsi + 0x360]
movzx ebx, byte [rax + 0x44]
mov ecx, dword [rax + 0x3c]
mov dword [rsp + 0xbc], ecx
mov rcx, qword [rax + 0x20]
mov qword [rsp + 0x178], rcx
mov edi, dword [rax + 0x28]
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x1c0], rcx
mov ecx, dword [rax + 0x18]
mov dword [rsp + 0xc0], ecx
movzx eax, byte [rax + 0x45]
mov byte [rsp + 0xc4], al
test bl, bl
mov rax, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x130]
mov r8, qword [rsp + 0xd8]
mov r9, qword [rsp + 0x4e0]
mov r10, qword [rsp + 0x4d8]
mov rcx, qword [rsp + 0x548]
mov r11, qword [rsp + 0x4d0]
mov dword [rsp + 0x180], edi
mov qword [rsp + 0x90], r14
jne 0x1400cf235
cmp edi, 0x3b9aca00
jne 0x1400cf235
mov rdi, qword [rsp + 0x600]
mov qword [rsp + 0x518], rdi
mov qword [rsp + 0x600], rax
mov qword [rsp + 0x4d8], rcx
mov rax, qword [rsp + 0x4c8]
mov qword [rsp + 0x4d0], rax
mov rax, qword [rsp + 0x4c0]
mov qword [rsp + 0x4c8], rax
mov rax, qword [rsp + 0x4b8]
mov qword [rsp + 0x4c0], rax
mov rax, qword [rsp + 0x4b0]
mov qword [rsp + 0x4b8], rax
mov rax, qword [rsp + 0x4a8]
mov qword [rsp + 0x4b0], rax
mov rax, qword [rsp + 0x4a0]
mov qword [rsp + 0x4a8], rax
mov rax, qword [rsp + 0x498]
mov qword [rsp + 0x4a0], rax
mov rax, qword [rsp + 0x490]
mov qword [rsp + 0x498], rax
mov rax, qword [rsp + 0x488]
mov qword [rsp + 0x490], rax
mov rax, qword [rsp + 0x480]
mov qword [rsp + 0x488], rax
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0x480], rax
mov rax, qword [rsp + 0x470]
mov qword [rsp + 0x478], rax
mov rax, qword [rsp + 0x468]
mov qword [rsp + 0x470], rax
mov rax, qword [rsp + 0x460]
mov qword [rsp + 0x468], rax
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0x460], rax
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x458], rax
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x450], rax
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x448], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x440], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x438], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x430], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x428], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x420], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x418], rax
mov rax, qword [rsp + 0x408]
mov qword [rsp + 0x410], rax
mov rax, qword [rsp + 0x400]
mov qword [rsp + 0x408], rax
mov rax, qword [rsp + 0x3f8]
mov qword [rsp + 0x400], rax
mov rax, qword [rsp + 0x3f0]
mov qword [rsp + 0x3f8], rax
mov rax, qword [rsp + 0x3e8]
mov qword [rsp + 0x3f0], rax
mov rax, qword [rsp + 0x3e0]
mov qword [rsp + 0x3e8], rax
mov rax, qword [rsp + 0x3d8]
mov qword [rsp + 0x3e0], rax
mov rax, qword [rsp + 0x3d0]
mov qword [rsp + 0x3d8], rax
mov rax, qword [rsp + 0x3c8]
mov qword [rsp + 0x3d0], rax
mov rax, qword [rsp + 0x3c0]
mov qword [rsp + 0x3c8], rax
mov rax, qword [rsp + 0x3b8]
mov qword [rsp + 0x3c0], rax
mov rax, qword [rsp + 0x3b0]
mov qword [rsp + 0x3b8], rax
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0x3b0], rax
mov rax, qword [rsp + 0x3a0]
mov qword [rsp + 0x3a8], rax
mov rax, qword [rsp + 0x398]
mov qword [rsp + 0x3a0], rax
mov rax, qword [rsp + 0x390]
mov qword [rsp + 0x398], rax
mov rax, qword [rsp + 0x388]
mov qword [rsp + 0x390], rax
mov rax, qword [rsp + 0x380]
mov qword [rsp + 0x388], rax
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0x380], rax
mov rax, qword [rsp + 0x370]
mov qword [rsp + 0x378], rax
mov rax, qword [rsp + 0x368]
mov qword [rsp + 0x370], rax
mov rax, qword [rsp + 0x360]
mov qword [rsp + 0x368], rax
mov rax, qword [rsp + 0x358]
mov qword [rsp + 0x360], rax
mov rax, qword [rsp + 0x350]
mov qword [rsp + 0x358], rax
mov rax, qword [rsp + 0x348]
mov qword [rsp + 0x350], rax
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x348], rax
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x340], rax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x338], rax
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x330], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x328], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x320], rax
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0x318], rax
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0x310], rax
mov rax, qword [rsp + 0x300]
mov qword [rsp + 0x308], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x300], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x2f8], rax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x2f0], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x2e8], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x2e0], rax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x2d8], rax
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x2d0], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x2c8], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x2c0], rax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x2b8], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x2b0], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x2a8], rax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x2a0], rax
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0x298], rax
mov rax, qword [rsp + 0x288]
mov qword [rsp + 0x290], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x288], rax
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x280], rax
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x278], rax
mov rax, qword [rsp + 0x268]
mov qword [rsp + 0x270], rax
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x268], rax
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x260], rax
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0x258], rax
mov rax, qword [rsp + 0x248]
mov qword [rsp + 0x250], rax
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x248], rax
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x240], rax
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x238], rax
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0x230], rax
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0x228], rax
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0x220], rax
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x218], rax
mov rax, qword [rsp + 0x208]
mov qword [rsp + 0x210], rax
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0x208], rax
mov rax, qword [rsp + 0x1f8]
mov qword [rsp + 0x200], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x1f8], rax
mov rax, qword [rsp + 0x1e8]
mov qword [rsp + 0x1f0], rax
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0x1e8], rax
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0x1c8]
mov rcx, qword [rsp + 0x70]
mov qword [rsp + 0x170], rcx
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x70], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0x60], rcx
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x28], rcx
mov rbx, rbp
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0xa0], rcx
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x1d8], rax
mov eax, 2
mov qword [rsp + 0x148], rax
mov ecx, 0x200
mov qword [rsp + 0x528], rcx
xor ecx, ecx
mov qword [rsp + 0x520], rcx
xor ecx, ecx
mov qword [rsp + 0x530], rcx
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x538], rax
mov qword [rsp + 0x168], r13
mov r13, qword [rsp + 0x98]
mov rbp, r13
mov qword [rsp + 0x80], r14
mov edi, 0
xor eax, eax
mov qword [rsp + 0x68], rax
mov rcx, qword [rsp + 0xe0]
jmp 0x1400cf774
mov cl, 1
mov qword [rsp + 0x80], rax
mov dword [rsp + 0x38], ecx
mov qword [rsp + 0x78], r12
cmp qword [rsi + 0x118], 0
mov qword [rsp + 0x4e8], r14
mov r12, r15
je 0x1400cee6c
mov rcx, qword [rsi + 0x120]
mov al, 1
mov dword [rsp + 0x58], eax
jmp 0x1400cee79
mov ecx, 0x2000
mov dword [rsp + 0x58], 0
movzx ebx, byte [rsi + 0x195]
mov r15d, dword [rsi + 0x191]
movzx r14d, byte [rsi + 0x196]
movzx edi, byte [rsi + 0x197]
movzx eax, byte [rsi + 0x190]
cmp qword [rsi + 0x128], 0
je 0x1400ceed7
mov rcx, qword [rsi + 0x130]
mov qword [rsp + 0x60], rcx
cmp rcx, 0x1fff
jbe case.0x1400cc60f.1
mov ecx, 0x2000
mov qword [rsp + 0x88], rcx
mov dword [rsp + 0x58], 0
jmp 0x1400ceee9
mov qword [rsp + 0x88], rcx
mov ecx, 0x66000
mov qword [rsp + 0x60], rcx
movups xmm0, xmmword [rsp + 0x19d0]
movdqu xmm1, xmmword [rsp + 0x19e0]
movups xmm2, xmmword [rsp + 0x19f0]
movups xmm3, xmmword [rsp + 0x1a00]
movaps xmmword [rsp + 0xa40], xmm0
movdqa xmmword [rsp + 0xa50], xmm1
movaps xmmword [rsp + 0xa60], xmm2
movaps xmmword [rsp + 0xa70], xmm3
movdqu xmm0, xmmword [rsp + 0x1a10]
movdqa xmmword [rsp + 0xa80], xmm0
mov rcx, qword [rsp + 0x1a20]
mov qword [rsp + 0xa90], rcx
mov ecx, dword [rsp + 0x670]
mov edx, dword [rsp + 0x673]
mov dword [rsp + 0x690], ecx
cmp al, 1
mov eax, 0x2010001
sbb rax, 0
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x693], edx
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x2960], xmm0
mov qword [rsp + 0x2970], 0
movdqa xmmword [rsp + 0x2ea0], xmm0
mov eax, dword [rsp + 0x7c0]
mov ecx, dword [rsp + 0x7c3]
mov dword [rsp + 0x923], ecx
mov dword [rsp + 0x920], eax
movzx eax, word [rsp + 0x554]
mov word [rsp + 0x1a4], ax
mov eax, dword [rsp + 0x550]
mov dword [rsp + 0x1a0], eax
movzx eax, word [rsp + 0x13c]
mov word [rsp + 0x4f4], ax
mov eax, dword [rsp + 0x138]
mov dword [rsp + 0x4f0], eax
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400cf01e
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x28
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
shl rbx, 0x20
or rbx, r15
shl r14, 0x38
shl rdi, 0x30
or rdi, r14
movabs rcx, 0xffffffffff
and rcx, rbx
shl rcx, 8
or rcx, rdi
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0xa0], rax
mov qword [rax], 0
mov rax, qword [rsp + 0xa90]
mov qword [rsp + 0x830], rax
movaps xmm0, xmmword [rsp + 0xa80]
movaps xmmword [rsp + 0x820], xmm0
movaps xmm0, xmmword [rsp + 0xa40]
movaps xmm1, xmmword [rsp + 0xa50]
movaps xmm2, xmmword [rsp + 0xa60]
movaps xmm3, xmmword [rsp + 0xa70]
movaps xmmword [rsp + 0x810], xmm3
movaps xmmword [rsp + 0x800], xmm2
movaps xmmword [rsp + 0x7f0], xmm1
movaps xmmword [rsp + 0x7e0], xmm0
mov eax, dword [rsp + 0x690]
mov ecx, dword [rsp + 0x693]
mov dword [rsp + 0x560], eax
mov dword [rsp + 0x563], ecx
movaps xmm0, xmmword [rsp + 0x2960]
movaps xmmword [rsp + 0x760], xmm0
mov rax, qword [rsp + 0x2970]
mov qword [rsp + 0x770], rax
movaps xmm0, xmmword [rsp + 0x2ea0]
movaps xmmword [rsp + 0x750], xmm0
mov eax, dword [rsp + 0x920]
mov ecx, dword [rsp + 0x923]
mov dword [rsp + 0x64b], ecx
mov dword [rsp + 0x648], eax
movzx eax, word [rsp + 0x1a4]
mov word [rsp + 0x5b8], ax
mov eax, dword [rsp + 0x1a0]
mov dword [rsp + 0x5b4], eax
movzx eax, word [rsp + 0x4f4]
mov word [rsp + 0x5b0], ax
mov eax, dword [rsp + 0x4f0]
mov dword [rsp + 0x5ac], eax
movups xmm0, xmmword [rsp + 0x8f8]
movaps xmmword [rsp + 0x740], xmm0
mov eax, dword [rsp + 0x90b]
mov ecx, dword [rsp + 0x90e]
mov dword [rsp + 0x643], ecx
mov dword [rsp + 0x640], eax
movups xmm0, xmmword [rsp + 0x780]
movups xmm1, xmmword [rsp + 0x790]
movaps xmmword [rsp + 0x700], xmm1
movaps xmmword [rsp + 0x6f0], xmm0
mov eax, dword [rsp + 0x919]
mov ecx, dword [rsp + 0x91c]
mov dword [rsp + 0x63b], ecx
mov dword [rsp + 0x638], eax
mov eax, dword [rsp + 0x912]
mov ecx, dword [rsp + 0x915]
mov dword [rsp + 0x633], ecx
mov dword [rsp + 0x630], eax
mov eax, 0x2000
mov qword [rsp + 0x70], rax
mov edi, 0xb
mov eax, 2
mov qword [rsp + 0xe8], rax
mov eax, 3
mov qword [rsp + 0x30], rax
xor eax, eax
mov qword [rsp + 0x90], rax
xor ebx, ebx
mov r15, r12
mov r12, qword [rsp + 0x78]
jmp 0x1400d300b
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400cf260
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x48
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov rdi, rax
mov qword [rsp + 0xa0], rbp
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x40], 0
pxor xmm0, xmm0
movdqu xmmword [rax + 0x10], xmm0
movdqu xmmword [rax + 0x28], xmm0
lock inc qword [rax]
jle case.0x1400cc60f.1
mov r13, r12
mov ebp, 0x3b9aca00
movabs r12, 0x44b82fa09b5a53
test bl, bl
mov qword [rsp + 0x188], rdi
je 0x1400cf362
mov qword [rsp + 0xa40], 0
lea rcx, [rsp + 0xa40]
call sub.kernel32.dll_QueryPerformanceCounter
test eax, eax
je 0x1400d5a38
mov rbx, qword [rsp + 0xa40]
mov rcx, qword [0x140206100]
test rcx, rcx
jne 0x1400cf340
mov qword [rsp + 0xa40], 0
lea rcx, [rsp + 0xa40]
call sub.kernel32.dll_QueryPerformanceFrequency
test eax, eax
je 0x1400d5a38
mov rcx, qword [rsp + 0xa40]
mov qword [0x140206100], rcx
test rcx, rcx
je case.0x1400cc60f.1
mov rax, rbx
or rax, rcx
shr rax, 0x20
je 0x1400cf376
mov rax, rbx
xor edx, edx
div rcx
jmp 0x1400cf37c
mov rax, qword [rsi + 0x320]
jmp 0x1400ccef7
xor edi, edi
mov dword [rsp + 0x10c], 0x3b9aca00
mov ebx, 0x3b9aca00
jmp 0x1400cf3d4
mov eax, ebx
xor edx, edx
div ecx
imul r8, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
mov rdx, rax
or rdx, rcx
shr rdx, 0x20
je 0x1400cf3a0
xor edx, edx
div rcx
mov rbx, rax
jmp 0x1400cf3a6
xor edx, edx
div ecx
mov ebx, eax
add rbx, r8
mov rax, rbx
shr rax, 9
mul r12
shr rdx, 0xb
mov qword [rsp + 0x68], rdx
imul eax, edx, 0x3b9aca00
sub ebx, eax
mov edi, 1
mov dword [rsp + 0x10c], 0x5f5e100
mov r8d, dword [rsp + 0x180]
cmp r8d, 0x3b9aca00
jne 0x1400cf3ea
jmp 0x1400cf574
lea rcx, [rsp + 0xa40]
mov rdx, qword [rsp + 0x178]
call fcn.1401011a0
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400cf42a
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x70
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov rbp, rax
movups xmm0, xmmword [rsp + 0xaa0]
movups xmmword [rax + 0x60], xmm0
movups xmm0, xmmword [rsp + 0xa90]
movups xmmword [rax + 0x50], xmm0
movups xmm0, xmmword [rsp + 0xa80]
movups xmmword [rax + 0x40], xmm0
movdqu xmm0, xmmword [rsp + 0xa40]
movdqu xmm1, xmmword [rsp + 0xa50]
movups xmm2, xmmword [rsp + 0xa60]
movups xmm3, xmmword [rsp + 0xa70]
movups xmmword [rax + 0x30], xmm3
movups xmmword [rax + 0x20], xmm2
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
mov qword [rsp + 0xa40], 0
lea rcx, [rsp + 0xa40]
call sub.kernel32.dll_QueryPerformanceCounter
test eax, eax
je 0x1400d5a38
mov r14, qword [rsp + 0xa40]
mov rcx, qword [0x140206100]
test rcx, rcx
jne 0x1400cf508
mov qword [rsp + 0xa40], 0
lea rcx, [rsp + 0xa40]
call sub.kernel32.dll_QueryPerformanceFrequency
test eax, eax
je 0x1400d5a38
mov rcx, qword [rsp + 0xa40]
mov qword [0x140206100], rcx
test rcx, rcx
je case.0x1400cc60f.1
mov rax, r14
or rax, rcx
shr rax, 0x20
je 0x1400cf51e
mov rax, r14
xor edx, edx
div rcx
jmp 0x1400cf525
mov eax, r14d
xor edx, edx
div ecx
mov qword [rsp + 0x590], rbp
imul r8, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
mov rdx, rax
or rdx, rcx
shr rdx, 0x20
je 0x1400cf551
xor edx, edx
div rcx
mov rbp, rax
jmp 0x1400cf557
xor edx, edx
div ecx
mov ebp, eax
add rbp, r8
mov rax, rbp
shr rax, 9
mul r12
mov r14, rdx
shr r14, 0xb
imul eax, r14d, 0x3b9aca00
sub ebp, eax
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
mov r12, r13
je 0x1400cf594
mov r13, qword [rsp + 0x98]
jmp 0x1400cf5b4
call sub.kernel32.dll_GetProcessHeap
test rax, rax
mov r13, qword [rsp + 0x98]
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x70
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], 0
mov byte [rax + 0x18], 0
mov qword [rax + 0x20], rdi
mov qword [rax + 0x28], 0
mov dword [rax + 0x38], 0x3b9aca00
mov rcx, qword [rsp + 0x68]
mov qword [rax + 0x40], rcx
mov dword [rax + 0x48], ebx
mov qword [rax + 0x50], r14
mov dword [rax + 0x58], ebp
mov rdi, qword [rsp + 0x188]
mov qword [rax + 0x60], rdi
mov byte [rax + 0x68], 0
mov rcx, rax
mov qword [rsp + 0x68], rax
lock inc qword [rax]
jle case.0x1400cc60f.1
pxor xmm0, xmm0
movdqu xmmword [rsp + 0xa44], xmm0
movdqu xmm0, xmmword [rsp + 0xa40]
movdqa xmmword [rsp + 0x19d0], xmm0
mov eax, dword [rsp + 0xa50]
mov dword [rsp + 0x19e0], eax
mov eax, dword [rsp + 0x2960]
mov dword [rsp + 0x2ea0], eax
movzx eax, word [rsp + 0x2964]
mov word [rsp + 0x2ea4], ax
movzx eax, byte [rsp + 0xb0]
mov rbp, qword [rsp + 0x88]
shl rbp, 8
or rbp, rax
mov rcx, qword [rsp + 0xa8]
mov eax, ecx
mov byte [rsp + 0xb0], cl
mov rax, rcx
shr rax, 8
mov ecx, 2
mov qword [rsp + 0x170], rcx
mov ecx, 0x200
mov qword [rsp + 0x520], rcx
xor ecx, ecx
mov qword [rsp + 0x528], rcx
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x530], rcx
mov rcx, qword [rsp + 0x150]
mov qword [rsp + 0x538], rcx
xor ecx, ecx
mov qword [rsp + 0x168], rcx
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x198]
mov qword [rsp + 0xa8], rax
mov eax, 2
mov qword [rsp + 0x518], rax
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0x198], rax
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x190], rax
mov qword [rsp + 0x148], r13
mov rcx, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x100]
mov r8, qword [rsp + 0x130]
mov r9, qword [rsp + 0xd8]
mov r10, qword [rsp + 0x4e0]
mov r11, qword [rsp + 0x548]
mov qword [rsp + 0x78], r12
movdqa xmm0, xmmword [rsp + 0x19d0]
movdqa xmmword [rsp + 0x4f0], xmm0
mov eax, dword [rsp + 0x19e0]
mov dword [rsp + 0x500], eax
mov eax, dword [rsp + 0x2ea0]
mov dword [rsp + 0x50], eax
movzx eax, word [rsp + 0x2ea4]
mov word [rsp + 0x54], ax
mov r14, qword [rsi + 0x1f0]
test r14, r14
mov qword [rsp + 0xf0], r15
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x100], rdx
mov qword [rsp + 0x130], r8
mov qword [rsp + 0xd8], r9
mov qword [rsp + 0x4e0], r10
mov qword [rsp + 0x188], rdi
je 0x1400d0162
mov r12, r11
mov rdi, qword [rsi + 0x1f8]
mov r15, qword [rdi + 0x10]
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400cf82f
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0xf80
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov rbx, rax
dec r15
and r15, 0xfffffffffffffff0
add r14, r15
add r14, 0x10
mov qword [rax], 1
mov rax, qword [rsp + 0xe0]
mov qword [rbx + 8], rax
mov rax, qword [rsp + 0x148]
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], rbp
movzx eax, byte [rsp + 0xb0]
mov byte [rbx + 0x20], al
mov rcx, qword [rsp + 0x88]
mov rax, rcx
shr rax, 0x30
mov byte [rbx + 0x27], al
mov dword [rbx + 0x21], ecx
shr rcx, 0x20
mov word [rbx + 0x25], cx
mov rax, qword [rsp + 0xa8]
mov qword [rbx + 0x28], rax
mov rax, qword [rsp + 0x198]
mov qword [rbx + 0x30], rax
mov rax, qword [rsp + 0x190]
mov qword [rbx + 0x38], rax
mov rax, qword [rsp + 0x1d8]
mov qword [rbx + 0x40], rax
mov rax, qword [rsp + 0x1c8]
mov qword [rbx + 0x48], rax
mov rax, qword [rsp + 0x1d0]
mov qword [rbx + 0x50], rax
mov rax, qword [rsp + 0x1e0]
mov qword [rbx + 0x58], rax
mov rax, qword [rsp + 0x1e8]
mov qword [rbx + 0x60], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rbx + 0x68], rax
mov rax, qword [rsp + 0x1f8]
mov qword [rbx + 0x70], rax
mov rax, qword [rsp + 0x200]
mov qword [rbx + 0x78], rax
mov rax, qword [rsp + 0x208]
mov qword [rbx + 0x80], rax
mov rax, qword [rsp + 0x210]
mov qword [rbx + 0x88], rax
mov rax, qword [rsp + 0x218]
mov qword [rbx + 0x90], rax
mov rax, qword [rsp + 0x220]
mov qword [rbx + 0x98], rax
mov rax, qword [rsp + 0x228]
mov qword [rbx + 0xa0], rax
mov rax, qword [rsp + 0x230]
mov qword [rbx + 0xa8], rax
mov rax, qword [rsp + 0x238]
mov qword [rbx + 0xb0], rax
mov rax, qword [rsp + 0x240]
mov qword [rbx + 0xb8], rax
mov rax, qword [rsp + 0x248]
mov qword [rbx + 0xc0], rax
mov rax, qword [rsp + 0x250]
mov qword [rbx + 0xc8], rax
mov rax, qword [rsp + 0x258]
mov qword [rbx + 0xd0], rax
mov rax, qword [rsp + 0x260]
mov qword [rbx + 0xd8], rax
mov rax, qword [rsp + 0x268]
mov qword [rbx + 0xe0], rax
mov rax, qword [rsp + 0x270]
mov qword [rbx + 0xe8], rax
mov rax, qword [rsp + 0x278]
mov qword [rbx + 0xf0], rax
mov rax, qword [rsp + 0x280]
mov qword [rbx + 0xf8], rax
mov rax, qword [rsp + 0x288]
mov qword [rbx + 0x100], rax
mov rax, qword [rsp + 0x290]
mov qword [rbx + 0x108], rax
mov rax, qword [rsp + 0x298]
mov qword [rbx + 0x110], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rbx + 0x118], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rbx + 0x120], rax
mov rax, qword [rsp + 0x2b0]
mov qword [rbx + 0x128], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rbx + 0x130], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rbx + 0x138], rax
mov rax, qword [rsp + 0x2c8]
mov qword [rbx + 0x140], rax
mov rax, qword [rsp + 0x2d0]
mov qword [rbx + 0x148], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rbx + 0x150], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rbx + 0x158], rax
mov rax, qword [rsp + 0x2e8]
mov qword [rbx + 0x160], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rbx + 0x168], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rbx + 0x170], rax
mov rax, qword [rsp + 0x300]
mov qword [rbx + 0x178], rax
mov rax, qword [rsp + 0x308]
mov qword [rbx + 0x180], rax
mov rax, qword [rsp + 0x310]
mov qword [rbx + 0x188], rax
mov rax, qword [rsp + 0x318]
mov qword [rbx + 0x190], rax
mov rax, qword [rsp + 0x320]
mov qword [rbx + 0x198], rax
mov rax, qword [rsp + 0x328]
mov qword [rbx + 0x1a0], rax
mov rax, qword [rsp + 0x330]
mov qword [rbx + 0x1a8], rax
mov rax, qword [rsp + 0x338]
mov qword [rbx + 0x1b0], rax
mov rax, qword [rsp + 0x340]
mov qword [rbx + 0x1b8], rax
mov rax, qword [rsp + 0x348]
mov qword [rbx + 0x1c0], rax
mov rax, qword [rsp + 0x350]
mov qword [rbx + 0x1c8], rax
mov rax, qword [rsp + 0x358]
mov qword [rbx + 0x1d0], rax
mov rax, qword [rsp + 0x360]
mov qword [rbx + 0x1d8], rax
mov rax, qword [rsp + 0x368]
mov qword [rbx + 0x1e0], rax
mov rax, qword [rsp + 0x370]
mov qword [rbx + 0x1e8], rax
mov rax, qword [rsp + 0x378]
mov qword [rbx + 0x1f0], rax
mov rax, qword [rsp + 0x380]
mov qword [rbx + 0x1f8], rax
mov rax, qword [rsp + 0x388]
mov qword [rbx + 0x200], rax
mov rax, qword [rsp + 0x390]
mov qword [rbx + 0x208], rax
mov rax, qword [rsp + 0x398]
mov qword [rbx + 0x210], rax
mov rax, qword [rsp + 0x3a0]
mov qword [rbx + 0x218], rax
mov rax, qword [rsp + 0x3a8]
mov qword [rbx + 0x220], rax
mov rax, qword [rsp + 0x3b0]
mov qword [rbx + 0x228], rax
mov rax, qword [rsp + 0x3b8]
mov qword [rbx + 0x230], rax
mov rax, qword [rsp + 0x3c0]
mov qword [rbx + 0x238], rax
mov rax, qword [rsp + 0x3c8]
mov qword [rbx + 0x240], rax
mov rax, qword [rsp + 0x3d0]
mov qword [rbx + 0x248], rax
mov rax, qword [rsp + 0x3d8]
mov qword [rbx + 0x250], rax
mov rax, qword [rsp + 0x3e0]
mov qword [rbx + 0x258], rax
mov rax, qword [rsp + 0x3e8]
mov qword [rbx + 0x260], rax
mov rax, qword [rsp + 0x3f0]
mov qword [rbx + 0x268], rax
mov rax, qword [rsp + 0x3f8]
mov qword [rbx + 0x270], rax
mov rax, qword [rsp + 0x400]
mov qword [rbx + 0x278], rax
mov rax, qword [rsp + 0x408]
mov qword [rbx + 0x280], rax
mov rax, qword [rsp + 0x410]
mov qword [rbx + 0x288], rax
mov rax, qword [rsp + 0x418]
mov qword [rbx + 0x290], rax
mov rax, qword [rsp + 0x420]
mov qword [rbx + 0x298], rax
mov rax, qword [rsp + 0x428]
mov qword [rbx + 0x2a0], rax
mov rax, qword [rsp + 0x430]
mov qword [rbx + 0x2a8], rax
mov rax, qword [rsp + 0x438]
mov qword [rbx + 0x2b0], rax
mov rax, qword [rsp + 0x440]
mov qword [rbx + 0x2b8], rax
mov rax, qword [rsp + 0x448]
mov qword [rbx + 0x2c0], rax
mov rax, qword [rsp + 0x450]
mov qword [rbx + 0x2c8], rax
mov rax, qword [rsp + 0x458]
mov qword [rbx + 0x2d0], rax
mov rax, qword [rsp + 0x460]
mov qword [rbx + 0x2d8], rax
mov rax, qword [rsp + 0x468]
mov qword [rbx + 0x2e0], rax
mov rax, qword [rsp + 0x470]
mov qword [rbx + 0x2e8], rax
mov rax, qword [rsp + 0x478]
mov qword [rbx + 0x2f0], rax
mov rax, qword [rsp + 0x480]
mov qword [rbx + 0x2f8], rax
mov rax, qword [rsp + 0x488]
mov qword [rbx + 0x300], rax
mov rax, qword [rsp + 0x490]
mov qword [rbx + 0x308], rax
mov rax, qword [rsp + 0x498]
mov qword [rbx + 0x310], rax
mov rax, qword [rsp + 0x4a0]
mov qword [rbx + 0x318], rax
mov rax, qword [rsp + 0x4a8]
mov qword [rbx + 0x320], rax
mov rax, qword [rsp + 0x4b0]
mov qword [rbx + 0x328], rax
mov rax, qword [rsp + 0x4b8]
mov qword [rbx + 0x330], rax
mov rax, qword [rsp + 0x4c0]
mov qword [rbx + 0x338], rax
mov rax, qword [rsp + 0x4c8]
mov qword [rbx + 0x340], rax
mov rax, qword [rsp + 0x4d0]
mov qword [rbx + 0x348], rax
mov qword [rbx + 0x350], r12
mov rax, qword [rsp + 0x4d8]
mov qword [rbx + 0x358], rax
mov rax, qword [rsp + 0x4e0]
mov qword [rbx + 0x360], rax
mov rax, qword [rsp + 0xd8]
mov qword [rbx + 0x368], rax
mov rax, qword [rsp + 0x130]
mov qword [rbx + 0x370], rax
mov rax, qword [rsp + 0x100]
mov qword [rbx + 0x378], rax
mov rax, qword [rsp + 0x600]
mov qword [rbx + 0x380], rax
mov rax, qword [rsp + 0x518]
mov qword [rbx + 0x388], rax
mov qword [rbx + 0x390], 2
pxor xmm0, xmm0
movdqu xmmword [rbx + 0x3d8], xmm0
movdqu xmmword [rbx + 0x3c8], xmm0
movdqu xmmword [rbx + 0x3b8], xmm0
movdqu xmmword [rbx + 0x3a8], xmm0
movdqu xmmword [rbx + 0x398], xmm0
mov rax, qword [rsp + 0x188]
mov qword [rbx + 0x3e8], rax
mov qword [rbx + 0x3f0], 0
mov rax, qword [rsp + 0x520]
mov qword [rbx + 0x3f8], rax
mov rax, qword [rsp + 0x528]
mov qword [rbx + 0x400], rax
mov qword [rbx + 0x408], 0
mov rax, qword [rsp + 0x530]
mov qword [rbx + 0x410], rax
mov rax, qword [rsp + 0x538]
mov qword [rbx + 0x418], rax
mov rax, qword [rsp + 0x168]
mov qword [rbx + 0x420], rax
mov qword [rbx + 0x428], 0
mov rax, qword [rsp + 0x90]
mov qword [rbx + 0x448], rax
mov rax, qword [rsp + 0x80]
mov qword [rbx + 0x450], rax
mov rax, qword [rsp + 0x30]
mov qword [rbx + 0x458], rax
mov rax, qword [rsp + 0xa0]
mov qword [rbx + 0x460], rax
mov rax, qword [rsp + 0x38]
mov qword [rbx + 0x468], rax
mov rax, qword [rsp + 0x28]
mov qword [rbx + 0x470], rax
mov rax, qword [rsp + 0x60]
mov qword [rbx + 0x478], rax
mov rax, qword [rsp + 0x70]
mov qword [rbx + 0x480], rax
mov rax, qword [rsp + 0x170]
mov qword [rbx + 0x488], rax
mov qword [rbx + 0x490], 2
movdqu xmmword [rbx + 0x4b8], xmm0
movdqu xmmword [rbx + 0x4a8], xmm0
movdqu xmmword [rbx + 0x498], xmm0
mov qword [rbx + 0x4c8], 0
mov eax, dword [rsp + 0x10c]
mov dword [rbx + 0x4d0], eax
movdqa xmm0, xmmword [rsp + 0x4f0]
movdqu xmmword [rbx + 0x4d4], xmm0
mov eax, dword [rsp + 0x500]
mov dword [rbx + 0x4e4], eax
mov eax, dword [rsp + 0xbc]
mov dword [rbx + 0x4e8], eax
mov dword [rbx + 0x4ec], 0
mov rax, qword [rsp + 0x178]
mov qword [rbx + 0x4f0], rax
mov eax, dword [rsp + 0x180]
mov dword [rbx + 0x4f8], eax
mov rax, qword [rsp + 0x1c0]
mov qword [rbx + 0x500], rax
mov eax, dword [rsp + 0xc0]
mov dword [rbx + 0x508], eax
mov rax, qword [rsp + 0x590]
mov qword [rbx + 0x510], rax
movzx eax, byte [rsp + 0xc4]
mov byte [rbx + 0x518], al
mov byte [rbx + 0x519], 0
mov eax, dword [rsp + 0x50]
mov dword [rbx + 0x51a], eax
movzx eax, word [rsp + 0x54]
mov word [rbx + 0x51e], ax
mov rax, qword [rsp + 0x68]
mov qword [rbx + 0x520], rax
mov rax, qword [rsp + 0xe8]
mov qword [rbx + 0x528], rax
lea rcx, [rbx + 0x530]
lea rdx, [rsp + 0x19d0]
mov r8d, 0x518
call sub.msvcrt.dll_memcpy
mov byte [rbx + 0xa48], 0
mov rcx, rbx
add rcx, 0xa49
lea rdx, [rsp + 0xa40]
mov r8d, 0x537
call sub.msvcrt.dll_memcpy
lea r8, [0x1401caa40]
mov rcx, r14
mov rdx, rbx
call qword [rdi + 0x18]
mov r15, qword [rsp + 0xf0]
mov r12, qword [rsp + 0x78]
jmp 0x1400d2c1c
mov eax, 1
lock xadd qword [0x140195100], rax
mov qword [rsp + 0x550], rax
movaps xmm0, xmmword [rsp + 0x4f0]
movaps xmmword [rsp + 0x1a0], xmm0
mov eax, dword [rsp + 0x500]
mov dword [rsp + 0x1b0], eax
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x138], eax
movzx eax, word [rsp + 0x54]
mov word [rsp + 0x13c], ax
mov qword [rsp + 0x19d0], 1
mov qword [rsp + 0x19d8], rcx
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x19e0], rax
mov qword [rsp + 0x668], rbp
mov qword [rsp + 0x19e8], rbp
movzx eax, byte [rsp + 0xb0]
mov byte [rsp + 0x19f0], al
mov rax, qword [rsp + 0x88]
mov r14, rax
shr r14, 0x30
mov byte [rsp + 0x19f7], r14b
mov r12, rax
shr r12, 0x20
mov word [rsp + 0x19f5], r12w
mov dword [rsp + 0x19f1], eax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x19f8], rax
mov rax, qword [rsp + 0x198]
mov qword [rsp + 0x1a00], rax
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0x1a08], rax
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0x1a10], rax
mov rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x1a18], rax
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0x1a20], rax
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0x1a28], rax
mov rax, qword [rsp + 0x1e8]
mov qword [rsp + 0x1a30], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x1a38], rax
mov rax, qword [rsp + 0x1f8]
mov qword [rsp + 0x1a40], rax
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0x1a48], rax
mov rax, qword [rsp + 0x208]
mov qword [rsp + 0x1a50], rax
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x1a58], rax
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0x1a60], rax
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0x1a68], rax
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0x1a70], rax
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x1a78], rax
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x1a80], rax
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x1a88], rax
mov rax, qword [rsp + 0x248]
mov qword [rsp + 0x1a90], rax
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0x1a98], rax
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x1aa0], rax
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x1aa8], rax
mov rax, qword [rsp + 0x268]
mov qword [rsp + 0x1ab0], rax
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x1ab8], rax
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x1ac0], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x1ac8], rax
mov rax, qword [rsp + 0x288]
mov qword [rsp + 0x1ad0], rax
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0x1ad8], rax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x1ae0], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x1ae8], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x1af0], rax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x1af8], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x1b00], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x1b08], rax
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x1b10], rax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x1b18], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x1b20], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x1b28], rax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x1b30], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x1b38], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x1b40], rax
mov rax, qword [rsp + 0x300]
mov qword [rsp + 0x1b48], rax
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0x1b50], rax
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0x1b58], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x1b60], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x1b68], rax
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x1b70], rax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x1b78], rax
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x1b80], rax
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x1b88], rax
mov rax, qword [rsp + 0x348]
mov qword [rsp + 0x1b90], rax
mov rax, qword [rsp + 0x350]
mov qword [rsp + 0x1b98], rax
mov rax, qword [rsp + 0x358]
mov qword [rsp + 0x1ba0], rax
mov rax, qword [rsp + 0x360]
mov qword [rsp + 0x1ba8], rax
mov rax, qword [rsp + 0x368]
mov qword [rsp + 0x1bb0], rax
mov rax, qword [rsp + 0x370]
mov qword [rsp + 0x1bb8], rax
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0x1bc0], rax
mov rax, qword [rsp + 0x380]
mov qword [rsp + 0x1bc8], rax
mov rax, qword [rsp + 0x388]
mov qword [rsp + 0x1bd0], rax
mov rax, qword [rsp + 0x390]
mov qword [rsp + 0x1bd8], rax
mov rax, qword [rsp + 0x398]
mov qword [rsp + 0x1be0], rax
mov rax, qword [rsp + 0x3a0]
mov qword [rsp + 0x1be8], rax
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0x1bf0], rax
mov rax, qword [rsp + 0x3b0]
mov qword [rsp + 0x1bf8], rax
mov rax, qword [rsp + 0x3b8]
mov qword [rsp + 0x1c00], rax
mov rax, qword [rsp + 0x3c0]
mov qword [rsp + 0x1c08], rax
mov rax, qword [rsp + 0x3c8]
mov qword [rsp + 0x1c10], rax
mov rax, qword [rsp + 0x3d0]
mov qword [rsp + 0x1c18], rax
mov rax, qword [rsp + 0x3d8]
mov qword [rsp + 0x1c20], rax
mov rax, qword [rsp + 0x3e0]
mov qword [rsp + 0x1c28], rax
mov rax, qword [rsp + 0x3e8]
mov qword [rsp + 0x1c30], rax
mov rax, qword [rsp + 0x3f0]
mov qword [rsp + 0x1c38], rax
mov rax, qword [rsp + 0x3f8]
mov qword [rsp + 0x1c40], rax
mov rax, qword [rsp + 0x400]
mov qword [rsp + 0x1c48], rax
mov rax, qword [rsp + 0x408]
mov qword [rsp + 0x1c50], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x1c58], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x1c60], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x1c68], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x1c70], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x1c78], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x1c80], rax
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x1c88], rax
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x1c90], rax
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x1c98], rax
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0x1ca0], rax
mov rax, qword [rsp + 0x460]
mov qword [rsp + 0x1ca8], rax
mov rax, qword [rsp + 0x468]
mov qword [rsp + 0x1cb0], rax
mov rax, qword [rsp + 0x470]
mov qword [rsp + 0x1cb8], rax
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0x1cc0], rax
mov rax, qword [rsp + 0x480]
mov qword [rsp + 0x1cc8], rax
mov rax, qword [rsp + 0x488]
mov qword [rsp + 0x1cd0], rax
mov rax, qword [rsp + 0x490]
mov qword [rsp + 0x1cd8], rax
mov rax, qword [rsp + 0x498]
mov qword [rsp + 0x1ce0], rax
mov rax, qword [rsp + 0x4a0]
mov qword [rsp + 0x1ce8], rax
mov rax, qword [rsp + 0x4a8]
mov qword [rsp + 0x1cf0], rax
mov rax, qword [rsp + 0x4b0]
mov qword [rsp + 0x1cf8], rax
mov rax, qword [rsp + 0x4b8]
mov qword [rsp + 0x1d00], rax
mov rax, qword [rsp + 0x4c0]
mov qword [rsp + 0x1d08], rax
mov rax, qword [rsp + 0x4c8]
mov qword [rsp + 0x1d10], rax
mov rax, qword [rsp + 0x4d0]
mov qword [rsp + 0x1d18], rax
mov qword [rsp + 0x548], r11
mov qword [rsp + 0x1d20], r11
mov rax, qword [rsp + 0x4d8]
mov qword [rsp + 0x1d28], rax
mov qword [rsp + 0x1d30], r10
mov qword [rsp + 0x1d38], r9
mov qword [rsp + 0x1d40], r8
mov qword [rsp + 0x1d48], rdx
mov rbp, qword [rsp + 0x600]
mov qword [rsp + 0x1d50], rbp
mov rax, qword [rsp + 0x518]
mov qword [rsp + 0x1d58], rax
mov qword [rsp + 0x1d60], 2
xorps xmm0, xmm0
movups xmmword [rsp + 0x1da8], xmm0
movups xmmword [rsp + 0x1d98], xmm0
movups xmmword [rsp + 0x1d88], xmm0
movups xmmword [rsp + 0x1d78], xmm0
movups xmmword [rsp + 0x1d68], xmm0
mov qword [rsp + 0x1db8], rdi
mov qword [rsp + 0x1dc0], 0
mov rax, qword [rsp + 0x520]
mov qword [rsp + 0x1dc8], rax
mov rax, qword [rsp + 0x528]
mov qword [rsp + 0x1dd0], rax
mov qword [rsp + 0x1dd8], 0
mov rax, qword [rsp + 0x530]
mov qword [rsp + 0x1de0], rax
mov rax, qword [rsp + 0x538]
mov qword [rsp + 0x1de8], rax
mov rax, qword [rsp + 0x168]
mov qword [rsp + 0x1df0], rax
mov qword [rsp + 0x1df8], 0
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x1e18], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x1e20], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x1e28], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x1e30], rax
mov qword [rsp + 0x1e38], rbx
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x1e40], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x1e48], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x1e50], rax
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x1e58], rax
mov qword [rsp + 0x1e60], 2
movups xmmword [rsp + 0x1e88], xmm0
movups xmmword [rsp + 0x1e78], xmm0
movups xmmword [rsp + 0x1e68], xmm0
mov qword [rsp + 0x1e98], 0
mov eax, dword [rsp + 0x10c]
mov dword [rsp + 0x1ea0], eax
movdqa xmm0, xmmword [rsp + 0x1a0]
movdqu xmmword [rsp + 0x1ea4], xmm0
mov eax, dword [rsp + 0x1b0]
mov dword [rsp + 0x1eb4], eax
mov eax, dword [rsp + 0xbc]
mov dword [rsp + 0x1eb8], eax
mov dword [rsp + 0x1ebc], 0
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0x1ec0], rax
mov eax, dword [rsp + 0x180]
mov dword [rsp + 0x1ec8], eax
mov rax, qword [rsp + 0x1c0]
mov qword [rsp + 0x1ed0], rax
mov eax, dword [rsp + 0xc0]
mov dword [rsp + 0x1ed8], eax
mov rax, qword [rsp + 0x590]
mov qword [rsp + 0x1ee0], rax
movzx eax, byte [rsp + 0xc4]
mov byte [rsp + 0x1ee8], al
mov byte [rsp + 0x1ee9], 0
movzx eax, word [rsp + 0x13c]
mov word [rsp + 0x1eee], ax
mov eax, dword [rsp + 0x138]
mov dword [rsp + 0x1eea], eax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x1ef0], rax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x1ef8], rax
lea rcx, [rsp + 0x1f00]
lea rdx, [rsp + 0x2ea0]
mov r8d, 0x518
call sub.msvcrt.dll_memcpy
mov byte [rsp + 0x2418], 0
lea rcx, [rsp + 0x2419]
lea rdx, [rsp + 0x2960]
mov r8d, 0x537
call sub.msvcrt.dll_memcpy
lea rdi, [rsp + 0x550]
mov qword [rsp + 0x2950], rdi
call fcn.14008dc80
test rax, rax
je 0x1400d5a81
mov r8, rax
mov rax, qword [rax]
movabs rcx, 0x8000000000000001
add rcx, 0xfffffffffffffffe
cmp rax, rcx
jae case.0x1400cc60f.1
inc rax
mov qword [r8], rax
mov r13d, dword [r8 + 8]
mov qword [rsp + 0xa40], 1
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0xa48], rax
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0xa50], rax
mov rax, qword [rsp + 0x668]
mov qword [rsp + 0xa58], rax
movzx eax, byte [rsp + 0xb0]
mov byte [rsp + 0xa60], al
mov byte [rsp + 0xa67], r14b
mov word [rsp + 0xa65], r12w
mov rax, qword [rsp + 0x88]
mov dword [rsp + 0xa61], eax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0xa68], rax
mov rax, qword [rsp + 0x198]
mov qword [rsp + 0xa70], rax
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0xa78], rax
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0xa80], rax
mov rax, qword [rsp + 0x1c8]
mov qword [rsp + 0xa88], rax
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0xa90], rax
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0xa98], rax
mov rax, qword [rsp + 0x1e8]
mov qword [rsp + 0xaa0], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0xaa8], rax
mov rax, qword [rsp + 0x1f8]
mov qword [rsp + 0xab0], rax
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0xab8], rax
mov rax, qword [rsp + 0x208]
mov qword [rsp + 0xac0], rax
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0xac8], rax
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0xad0], rax
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0xad8], rax
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0xae0], rax
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0xae8], rax
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0xaf0], rax
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0xaf8], rax
mov rax, qword [rsp + 0x248]
mov qword [rsp + 0xb00], rax
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0xb08], rax
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0xb10], rax
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0xb18], rax
mov rax, qword [rsp + 0x268]
mov qword [rsp + 0xb20], rax
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0xb28], rax
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0xb30], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0xb38], rax
mov rax, qword [rsp + 0x288]
mov qword [rsp + 0xb40], rax
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0xb48], rax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0xb50], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0xb58], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0xb60], rax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0xb68], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0xb70], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0xb78], rax
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0xb80], rax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0xb88], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0xb90], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0xb98], rax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0xba0], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0xba8], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0xbb0], rax
mov rax, qword [rsp + 0x300]
mov qword [rsp + 0xbb8], rax
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0xbc0], rax
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0xbc8], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0xbd0], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0xbd8], rax
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0xbe0], rax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0xbe8], rax
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0xbf0], rax
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0xbf8], rax
mov rax, qword [rsp + 0x348]
mov qword [rsp + 0xc00], rax
mov rax, qword [rsp + 0x350]
mov qword [rsp + 0xc08], rax
mov rax, qword [rsp + 0x358]
mov qword [rsp + 0xc10], rax
mov rax, qword [rsp + 0x360]
mov qword [rsp + 0xc18], rax
mov rax, qword [rsp + 0x368]
mov qword [rsp + 0xc20], rax
mov rax, qword [rsp + 0x370]
mov qword [rsp + 0xc28], rax
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0xc30], rax
mov rax, qword [rsp + 0x380]
mov qword [rsp + 0xc38], rax
mov rax, qword [rsp + 0x388]
mov qword [rsp + 0xc40], rax
mov rax, qword [rsp + 0x390]
mov qword [rsp + 0xc48], rax
mov rax, qword [rsp + 0x398]
mov qword [rsp + 0xc50], rax
mov rax, qword [rsp + 0x3a0]
mov qword [rsp + 0xc58], rax
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0xc60], rax
mov rax, qword [rsp + 0x3b0]
mov qword [rsp + 0xc68], rax
mov rax, qword [rsp + 0x3b8]
mov qword [rsp + 0xc70], rax
mov rax, qword [rsp + 0x3c0]
mov qword [rsp + 0xc78], rax
mov rax, qword [rsp + 0x3c8]
mov qword [rsp + 0xc80], rax
mov rax, qword [rsp + 0x3d0]
mov qword [rsp + 0xc88], rax
mov rax, qword [rsp + 0x3d8]
mov qword [rsp + 0xc90], rax
mov rax, qword [rsp + 0x3e0]
mov qword [rsp + 0xc98], rax
mov rax, qword [rsp + 0x3e8]
mov qword [rsp + 0xca0], rax
mov rax, qword [rsp + 0x3f0]
mov qword [rsp + 0xca8], rax
mov rax, qword [rsp + 0x3f8]
mov qword [rsp + 0xcb0], rax
mov rax, qword [rsp + 0x400]
mov qword [rsp + 0xcb8], rax
mov rax, qword [rsp + 0x408]
mov qword [rsp + 0xcc0], rax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0xcc8], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0xcd0], rax
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0xcd8], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0xce0], rax
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0xce8], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0xcf0], rax
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0xcf8], rax
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0xd00], rax
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0xd08], rax
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0xd10], rax
mov rax, qword [rsp + 0x460]
mov qword [rsp + 0xd18], rax
mov rax, qword [rsp + 0x468]
mov qword [rsp + 0xd20], rax
mov rax, qword [rsp + 0x470]
mov qword [rsp + 0xd28], rax
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0xd30], rax
mov rax, qword [rsp + 0x480]
mov qword [rsp + 0xd38], rax
mov rax, qword [rsp + 0x488]
mov qword [rsp + 0xd40], rax
mov rax, qword [rsp + 0x490]
mov qword [rsp + 0xd48], rax
mov rax, qword [rsp + 0x498]
mov qword [rsp + 0xd50], rax
mov rax, qword [rsp + 0x4a0]
mov qword [rsp + 0xd58], rax
mov rax, qword [rsp + 0x4a8]
mov qword [rsp + 0xd60], rax
mov rax, qword [rsp + 0x4b0]
mov qword [rsp + 0xd68], rax
mov rax, qword [rsp + 0x4b8]
mov qword [rsp + 0xd70], rax
mov rax, qword [rsp + 0x4c0]
mov qword [rsp + 0xd78], rax
mov rax, qword [rsp + 0x4c8]
mov qword [rsp + 0xd80], rax
mov rax, qword [rsp + 0x4d0]
mov qword [rsp + 0xd88], rax
mov rax, qword [rsp + 0x548]
mov qword [rsp + 0xd90], rax
mov rax, qword [rsp + 0x4d8]
mov qword [rsp + 0xd98], rax
mov rax, qword [rsp + 0x4e0]
mov qword [rsp + 0xda0], rax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xda8], rax
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0xdb0], rax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0xdb8], rax
mov qword [rsp + 0xdc0], rbp
mov rax, qword [rsp + 0x518]
mov qword [rsp + 0xdc8], rax
mov qword [rsp + 0xdd0], 2
pxor xmm0, xmm0
movdqu xmmword [rsp + 0xe18], xmm0
movdqu xmmword [rsp + 0xe08], xmm0
movdqu xmmword [rsp + 0xdf8], xmm0
movdqu xmmword [rsp + 0xde8], xmm0
movdqu xmmword [rsp + 0xdd8], xmm0
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0xe28], rax
mov qword [rsp + 0xe30], 0
mov rax, qword [rsp + 0x520]
mov qword [rsp + 0xe38], rax
mov rax, qword [rsp + 0x528]
mov qword [rsp + 0xe40], rax
mov qword [rsp + 0xe48], 0
mov rax, qword [rsp + 0x530]
mov qword [rsp + 0xe50], rax
mov rax, qword [rsp + 0x538]
mov qword [rsp + 0xe58], rax
mov rax, qword [rsp + 0x168]
mov qword [rsp + 0xe60], rax
mov qword [rsp + 0xe68], 0
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0xe88], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0xe90], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0xe98], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0xea0], rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0xea8], rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0xeb0], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0xeb8], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0xec0], rax
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0xec8], rax
mov qword [rsp + 0xed0], 2
movdqu xmmword [rsp + 0xef8], xmm0
movdqu xmmword [rsp + 0xee8], xmm0
movdqu xmmword [rsp + 0xed8], xmm0
mov qword [rsp + 0xf08], 0
mov eax, dword [rsp + 0x10c]
mov dword [rsp + 0xf10], eax
movdqa xmm0, xmmword [rsp + 0x1a0]
movdqu xmmword [rsp + 0xf14], xmm0
mov eax, dword [rsp + 0x1b0]
mov dword [rsp + 0xf24], eax
mov eax, dword [rsp + 0xbc]
mov dword [rsp + 0xf28], eax
mov dword [rsp + 0xf2c], 0
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0xf30], rax
mov eax, dword [rsp + 0x180]
mov dword [rsp + 0xf38], eax
mov rax, qword [rsp + 0x1c0]
mov qword [rsp + 0xf40], rax
mov eax, dword [rsp + 0xc0]
mov dword [rsp + 0xf48], eax
mov rax, qword [rsp + 0x590]
mov qword [rsp + 0xf50], rax
movzx eax, byte [rsp + 0xc4]
mov byte [rsp + 0xf58], al
mov byte [rsp + 0xf59], 0
movzx eax, word [rsp + 0x13c]
mov word [rsp + 0xf5e], ax
mov eax, dword [rsp + 0x138]
mov dword [rsp + 0xf5a], eax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xf60], rax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0xf68], rax
lea rcx, [rsp + 0xf70]
lea rdx, [rsp + 0x2ea0]
mov rbx, r8
mov r8d, 0x518
call sub.msvcrt.dll_memcpy
mov byte [rsp + 0x1488], 0
lea rcx, [rsp + 0x1489]
lea rdx, [rsp + 0x2960]
mov r8d, 0x537
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x19c0], rdi
cmp r13d, 2
je 0x1400d5a90
mov r13, qword [rsp + 0x550]
mov rdi, rbx
add rdi, 0x10
cmp qword [rbx + 8], 0
mov rax, rbx
mov qword [rsp + 0x510], rbx
je 0x1400d200c
mov rbx, qword [rdi]
lock inc qword [rbx]
jle case.0x1400cc60f.1
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400d15d3
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x1080
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov rdi, rax
and rdi, 0xffffffffffffff80
mov qword [rdi + 0x78], rax
mov qword [rdi + 0x80], 0xcc
mov qword [rdi + 0x88], 0
lea rax, [0x1401cafa0]
mov qword [rdi + 0x90], rax
mov qword [rdi + 0x98], 0
mov qword [rdi + 0xa0], rbx
mov qword [rdi + 0xa8], r13
mov qword [rdi + 0xb0], 1
mov rax, qword [rsp + 0xe0]
mov qword [rdi + 0xb8], rax
mov rax, qword [rsp + 0x148]
mov qword [rdi + 0xc0], rax
mov rax, qword [rsp + 0x668]
mov qword [rdi + 0xc8], rax
movzx eax, byte [rsp + 0xb0]
mov byte [rdi + 0xd0], al
mov rax, qword [rsp + 0x88]
mov dword [rdi + 0xd1], eax
mov byte [rdi + 0xd7], r14b
mov word [rdi + 0xd5], r12w
mov rax, qword [rsp + 0xa8]
mov qword [rdi + 0xd8], rax
mov rax, qword [rsp + 0x198]
mov qword [rdi + 0xe0], rax
mov rax, qword [rsp + 0x190]
mov qword [rdi + 0xe8], rax
mov rax, qword [rsp + 0x1d8]
mov qword [rdi + 0xf0], rax
mov rax, qword [rsp + 0x1c8]
mov qword [rdi + 0xf8], rax
mov rax, qword [rsp + 0x1d0]
mov qword [rdi + 0x100], rax
mov rax, qword [rsp + 0x1e0]
mov qword [rdi + 0x108], rax
mov rax, qword [rsp + 0x1e8]
mov qword [rdi + 0x110], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rdi + 0x118], rax
mov rax, qword [rsp + 0x1f8]
mov qword [rdi + 0x120], rax
mov rax, qword [rsp + 0x200]
mov qword [rdi + 0x128], rax
mov rax, qword [rsp + 0x208]
mov qword [rdi + 0x130], rax
mov rax, qword [rsp + 0x210]
mov qword [rdi + 0x138], rax
mov rax, qword [rsp + 0x218]
mov qword [rdi + 0x140], rax
mov rax, qword [rsp + 0x220]
mov qword [rdi + 0x148], rax
mov rax, qword [rsp + 0x228]
mov qword [rdi + 0x150], rax
mov rax, qword [rsp + 0x230]
mov qword [rdi + 0x158], rax
mov rax, qword [rsp + 0x238]
mov qword [rdi + 0x160], rax
mov rax, qword [rsp + 0x240]
mov qword [rdi + 0x168], rax
mov rax, qword [rsp + 0x248]
mov qword [rdi + 0x170], rax
mov rax, qword [rsp + 0x250]
mov qword [rdi + 0x178], rax
mov rax, qword [rsp + 0x258]
mov qword [rdi + 0x180], rax
mov rax, qword [rsp + 0x260]
mov qword [rdi + 0x188], rax
mov rax, qword [rsp + 0x268]
mov qword [rdi + 0x190], rax
mov rax, qword [rsp + 0x270]
mov qword [rdi + 0x198], rax
mov rax, qword [rsp + 0x278]
mov qword [rdi + 0x1a0], rax
mov rax, qword [rsp + 0x280]
mov qword [rdi + 0x1a8], rax
mov rax, qword [rsp + 0x288]
mov qword [rdi + 0x1b0], rax
mov rax, qword [rsp + 0x290]
mov qword [rdi + 0x1b8], rax
mov rax, qword [rsp + 0x298]
mov qword [rdi + 0x1c0], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rdi + 0x1c8], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rdi + 0x1d0], rax
mov rax, qword [rsp + 0x2b0]
mov qword [rdi + 0x1d8], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rdi + 0x1e0], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rdi + 0x1e8], rax
mov rax, qword [rsp + 0x2c8]
mov qword [rdi + 0x1f0], rax
mov rax, qword [rsp + 0x2d0]
mov qword [rdi + 0x1f8], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rdi + 0x200], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rdi + 0x208], rax
mov rax, qword [rsp + 0x2e8]
mov qword [rdi + 0x210], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rdi + 0x218], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rdi + 0x220], rax
mov rax, qword [rsp + 0x300]
mov qword [rdi + 0x228], rax
mov rax, qword [rsp + 0x308]
mov qword [rdi + 0x230], rax
mov rax, qword [rsp + 0x310]
mov qword [rdi + 0x238], rax
mov rax, qword [rsp + 0x318]
mov qword [rdi + 0x240], rax
mov rax, qword [rsp + 0x320]
mov qword [rdi + 0x248], rax
mov rax, qword [rsp + 0x328]
mov qword [rdi + 0x250], rax
mov rax, qword [rsp + 0x330]
mov qword [rdi + 0x258], rax
mov rax, qword [rsp + 0x338]
mov qword [rdi + 0x260], rax
mov rax, qword [rsp + 0x340]
mov qword [rdi + 0x268], rax
mov rax, qword [rsp + 0x348]
mov qword [rdi + 0x270], rax
mov rax, qword [rsp + 0x350]
mov qword [rdi + 0x278], rax
mov rax, qword [rsp + 0x358]
mov qword [rdi + 0x280], rax
mov rax, qword [rsp + 0x360]
mov qword [rdi + 0x288], rax
mov rax, qword [rsp + 0x368]
mov qword [rdi + 0x290], rax
mov rax, qword [rsp + 0x370]
mov qword [rdi + 0x298], rax
mov rax, qword [rsp + 0x378]
mov qword [rdi + 0x2a0], rax
mov rax, qword [rsp + 0x380]
mov qword [rdi + 0x2a8], rax
mov rax, qword [rsp + 0x388]
mov qword [rdi + 0x2b0], rax
mov rax, qword [rsp + 0x390]
mov qword [rdi + 0x2b8], rax
mov rax, qword [rsp + 0x398]
mov qword [rdi + 0x2c0], rax
mov rax, qword [rsp + 0x3a0]
mov qword [rdi + 0x2c8], rax
mov rax, qword [rsp + 0x3a8]
mov qword [rdi + 0x2d0], rax
mov rax, qword [rsp + 0x3b0]
mov qword [rdi + 0x2d8], rax
mov rax, qword [rsp + 0x3b8]
mov qword [rdi + 0x2e0], rax
mov rax, qword [rsp + 0x3c0]
mov qword [rdi + 0x2e8], rax
mov rax, qword [rsp + 0x3c8]
mov qword [rdi + 0x2f0], rax
mov rax, qword [rsp + 0x3d0]
mov qword [rdi + 0x2f8], rax
mov rax, qword [rsp + 0x3d8]
mov qword [rdi + 0x300], rax
mov rax, qword [rsp + 0x3e0]
mov qword [rdi + 0x308], rax
mov rax, qword [rsp + 0x3e8]
mov qword [rdi + 0x310], rax
mov rax, qword [rsp + 0x3f0]
mov qword [rdi + 0x318], rax
mov rax, qword [rsp + 0x3f8]
mov qword [rdi + 0x320], rax
mov rax, qword [rsp + 0x400]
mov qword [rdi + 0x328], rax
mov rax, qword [rsp + 0x408]
mov qword [rdi + 0x330], rax
mov rax, qword [rsp + 0x410]
mov qword [rdi + 0x338], rax
mov rax, qword [rsp + 0x418]
mov qword [rdi + 0x340], rax
mov rax, qword [rsp + 0x420]
mov qword [rdi + 0x348], rax
mov rax, qword [rsp + 0x428]
mov qword [rdi + 0x350], rax
mov rax, qword [rsp + 0x430]
mov qword [rdi + 0x358], rax
mov rax, qword [rsp + 0x438]
mov qword [rdi + 0x360], rax
mov rax, qword [rsp + 0x440]
mov qword [rdi + 0x368], rax
mov rax, qword [rsp + 0x448]
mov qword [rdi + 0x370], rax
mov rax, qword [rsp + 0x450]
mov qword [rdi + 0x378], rax
mov rax, qword [rsp + 0x458]
mov qword [rdi + 0x380], rax
mov rax, qword [rsp + 0x460]
mov qword [rdi + 0x388], rax
mov rax, qword [rsp + 0x468]
mov qword [rdi + 0x390], rax
mov rax, qword [rsp + 0x470]
mov qword [rdi + 0x398], rax
mov rax, qword [rsp + 0x478]
mov qword [rdi + 0x3a0], rax
mov rax, qword [rsp + 0x480]
mov qword [rdi + 0x3a8], rax
mov rax, qword [rsp + 0x488]
mov qword [rdi + 0x3b0], rax
mov rax, qword [rsp + 0x490]
mov qword [rdi + 0x3b8], rax
mov rax, qword [rsp + 0x498]
mov qword [rdi + 0x3c0], rax
mov rax, qword [rsp + 0x4a0]
mov qword [rdi + 0x3c8], rax
mov rax, qword [rsp + 0x4a8]
mov qword [rdi + 0x3d0], rax
mov rax, qword [rsp + 0x4b0]
mov qword [rdi + 0x3d8], rax
mov rax, qword [rsp + 0x4b8]
mov qword [rdi + 0x3e0], rax
mov rax, qword [rsp + 0x4c0]
mov qword [rdi + 0x3e8], rax
mov rax, qword [rsp + 0x4c8]
mov qword [rdi + 0x3f0], rax
mov rax, qword [rsp + 0x4d0]
mov qword [rdi + 0x3f8], rax
mov rax, qword [rsp + 0x548]
mov qword [rdi + 0x400], rax
mov rax, qword [rsp + 0x4d8]
mov qword [rdi + 0x408], rax
mov rax, qword [rsp + 0x4e0]
mov qword [rdi + 0x410], rax
mov rax, qword [rsp + 0xd8]
mov qword [rdi + 0x418], rax
mov rax, qword [rsp + 0x130]
mov qword [rdi + 0x420], rax
mov rax, qword [rsp + 0x100]
mov qword [rdi + 0x428], rax
mov qword [rdi + 0x430], rbp
mov rax, qword [rsp + 0x518]
mov qword [rdi + 0x438], rax
mov qword [rdi + 0x440], 2
xorps xmm6, xmm6
movups xmmword [rdi + 0x488], xmm6
movups xmmword [rdi + 0x478], xmm6
movups xmmword [rdi + 0x468], xmm6
movups xmmword [rdi + 0x458], xmm6
movups xmmword [rdi + 0x448], xmm6
mov rax, qword [rsp + 0x188]
mov qword [rdi + 0x498], rax
mov qword [rdi + 0x4a0], 0
mov rax, qword [rsp + 0x520]
mov qword [rdi + 0x4a8], rax
mov rax, qword [rsp + 0x528]
mov qword [rdi + 0x4b0], rax
mov qword [rdi + 0x4b8], 0
mov rax, qword [rsp + 0x530]
mov qword [rdi + 0x4c0], rax
mov rax, qword [rsp + 0x538]
mov qword [rdi + 0x4c8], rax
mov rax, qword [rsp + 0x168]
mov qword [rdi + 0x4d0], rax
mov qword [rdi + 0x4d8], 0
mov rax, qword [rsp + 0x90]
mov qword [rdi + 0x4f8], rax
mov rax, qword [rsp + 0x80]
mov qword [rdi + 0x500], rax
mov rax, qword [rsp + 0x30]
mov qword [rdi + 0x508], rax
mov rax, qword [rsp + 0xa0]
mov qword [rdi + 0x510], rax
mov rax, qword [rsp + 0x38]
mov qword [rdi + 0x518], rax
mov rax, qword [rsp + 0x28]
mov qword [rdi + 0x520], rax
mov rax, qword [rsp + 0x60]
mov qword [rdi + 0x528], rax
mov rax, qword [rsp + 0x70]
mov qword [rdi + 0x530], rax
mov rax, qword [rsp + 0x170]
mov qword [rdi + 0x538], rax
mov qword [rdi + 0x540], 2
movups xmmword [rdi + 0x568], xmm6
movups xmmword [rdi + 0x558], xmm6
movups xmmword [rdi + 0x548], xmm6
mov qword [rdi + 0x578], 0
mov eax, dword [rsp + 0x10c]
mov dword [rdi + 0x580], eax
movdqa xmm0, xmmword [rsp + 0x1a0]
movdqu xmmword [rdi + 0x584], xmm0
mov eax, dword [rsp + 0x1b0]
mov dword [rdi + 0x594], eax
mov eax, dword [rsp + 0xbc]
mov dword [rdi + 0x598], eax
mov dword [rdi + 0x59c], 0
mov rax, qword [rsp + 0x178]
mov qword [rdi + 0x5a0], rax
mov eax, dword [rsp + 0x180]
mov dword [rdi + 0x5a8], eax
mov rax, qword [rsp + 0x1c0]
mov qword [rdi + 0x5b0], rax
mov eax, dword [rsp + 0xc0]
mov dword [rdi + 0x5b8], eax
mov rax, qword [rsp + 0x590]
mov qword [rdi + 0x5c0], rax
lea rbp, [rdi + 0x80]
movzx eax, byte [rsp + 0xc4]
mov byte [rdi + 0x5c8], al
mov byte [rdi + 0x5c9], 0
movzx eax, word [rsp + 0x13c]
mov word [rdi + 0x5ce], ax
mov eax, dword [rsp + 0x138]
mov dword [rdi + 0x5ca], eax
mov rax, qword [rsp + 0x68]
mov qword [rdi + 0x5d0], rax
mov rax, qword [rsp + 0xe8]
mov qword [rdi + 0x5d8], rax
lea rcx, [rdi + 0x5e0]
lea rdx, [rsp + 0x2ea0]
mov r8d, 0x518
call sub.msvcrt.dll_memcpy
mov byte [rdi + 0xaf8], 0
lea rcx, [rdi + 0xaf9]
lea rdx, [rsp + 0x2960]
mov r8d, 0x537
call sub.msvcrt.dll_memcpy
movaps xmmword [rdi + 0x1030], xmm6
mov qword [rdi + 0x1040], 0
mov rax, qword [rbx + 0x90]
mov qword [rdi + 0x98], rax
mov rax, qword [rdi + 0x90]
mov rax, qword [rax + 0x48]
mov rdi, qword [rdi + rax + 0x80]
mov r15, qword [rbx + 0x70]
mov r12, qword [rbx + 0x88]
and r12, rdi
shl r12, 5
lea r14, [r15 + r12]
mov rcx, r14
call sub.kernel32.dll_AcquireSRWLockExclusive
movzx eax, byte [r15 + r12 + 8]
movzx eax, byte [rbx + 0x98]
test al, al
je 0x1400d2a9c
mov rcx, r14
call fcn.1401168fc
mov rax, qword [rbp + 0x10]
mov rcx, rbp
call qword [rax + 0x30]
mov rax, 0xffffffffffffffc0
lock xadd qword [rbp], rax
cmp rax, 0x3f
mov r13, qword [rsp + 0x98]
jbe case.0x1400cc60f.1
and rax, 0xffffffffffffffc0
cmp rax, 0x40
mov r15, qword [rsp + 0xf0]
mov r12, qword [rsp + 0x78]
je 0x1400d2a8d
jmp 0x1400d2bf0
mov rcx, qword [rdi]
lock inc qword [rcx]
jle case.0x1400cc60f.1
mov qword [rsp + 0x7b8], rcx
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400d204c
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x1080
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov qword [rsp + 0xa18], rdi
mov rdi, rax
and rdi, 0xffffffffffffff80
mov qword [rdi + 0x78], rax
mov qword [rdi + 0x80], 0xcc
mov qword [rdi + 0x88], 0
lea rax, [0x1401cb180]
mov qword [rdi + 0x90], rax
mov qword [rdi + 0x98], 0
mov rbx, qword [rsp + 0x7b8]
mov qword [rdi + 0xa0], rbx
mov qword [rdi + 0xa8], r13
mov qword [rdi + 0xb0], 1
mov rax, qword [rsp + 0xe0]
mov qword [rdi + 0xb8], rax
mov rax, qword [rsp + 0x148]
mov qword [rdi + 0xc0], rax
mov rax, qword [rsp + 0x668]
mov qword [rdi + 0xc8], rax
movzx eax, byte [rsp + 0xb0]
mov byte [rdi + 0xd0], al
mov rax, qword [rsp + 0x88]
mov dword [rdi + 0xd1], eax
mov byte [rdi + 0xd7], r14b
mov word [rdi + 0xd5], r12w
mov rax, qword [rsp + 0xa8]
mov qword [rdi + 0xd8], rax
mov rax, qword [rsp + 0x198]
mov qword [rdi + 0xe0], rax
mov rax, qword [rsp + 0x190]
mov qword [rdi + 0xe8], rax
mov rax, qword [rsp + 0x1d8]
mov qword [rdi + 0xf0], rax
mov rax, qword [rsp + 0x1c8]
mov qword [rdi + 0xf8], rax
mov rax, qword [rsp + 0x1d0]
mov qword [rdi + 0x100], rax
mov rax, qword [rsp + 0x1e0]
mov qword [rdi + 0x108], rax
mov rax, qword [rsp + 0x1e8]
mov qword [rdi + 0x110], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rdi + 0x118], rax
mov rax, qword [rsp + 0x1f8]
mov qword [rdi + 0x120], rax
mov rax, qword [rsp + 0x200]
mov qword [rdi + 0x128], rax
mov rax, qword [rsp + 0x208]
mov qword [rdi + 0x130], rax
mov rax, qword [rsp + 0x210]
mov qword [rdi + 0x138], rax
mov rax, qword [rsp + 0x218]
mov qword [rdi + 0x140], rax
mov rax, qword [rsp + 0x220]
mov qword [rdi + 0x148], rax
mov rax, qword [rsp + 0x228]
mov qword [rdi + 0x150], rax
mov rax, qword [rsp + 0x230]
mov qword [rdi + 0x158], rax
mov rax, qword [rsp + 0x238]
mov qword [rdi + 0x160], rax
mov rax, qword [rsp + 0x240]
mov qword [rdi + 0x168], rax
mov rax, qword [rsp + 0x248]
mov qword [rdi + 0x170], rax
mov rax, qword [rsp + 0x250]
mov qword [rdi + 0x178], rax
mov rax, qword [rsp + 0x258]
mov qword [rdi + 0x180], rax
mov rax, qword [rsp + 0x260]
mov qword [rdi + 0x188], rax
mov rax, qword [rsp + 0x268]
mov qword [rdi + 0x190], rax
mov rax, qword [rsp + 0x270]
mov qword [rdi + 0x198], rax
mov rax, qword [rsp + 0x278]
mov qword [rdi + 0x1a0], rax
mov rax, qword [rsp + 0x280]
mov qword [rdi + 0x1a8], rax
mov rax, qword [rsp + 0x288]
mov qword [rdi + 0x1b0], rax
mov rax, qword [rsp + 0x290]
mov qword [rdi + 0x1b8], rax
mov rax, qword [rsp + 0x298]
mov qword [rdi + 0x1c0], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rdi + 0x1c8], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rdi + 0x1d0], rax
mov rax, qword [rsp + 0x2b0]
mov qword [rdi + 0x1d8], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rdi + 0x1e0], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rdi + 0x1e8], rax
mov rax, qword [rsp + 0x2c8]
mov qword [rdi + 0x1f0], rax
mov rax, qword [rsp + 0x2d0]
mov qword [rdi + 0x1f8], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rdi + 0x200], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rdi + 0x208], rax
mov rax, qword [rsp + 0x2e8]
mov qword [rdi + 0x210], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rdi + 0x218], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rdi + 0x220], rax
mov rax, qword [rsp + 0x300]
mov qword [rdi + 0x228], rax
mov rax, qword [rsp + 0x308]
mov qword [rdi + 0x230], rax
mov rax, qword [rsp + 0x310]
mov qword [rdi + 0x238], rax
mov rax, qword [rsp + 0x318]
mov qword [rdi + 0x240], rax
mov rax, qword [rsp + 0x320]
mov qword [rdi + 0x248], rax
mov rax, qword [rsp + 0x328]
mov qword [rdi + 0x250], rax
mov rax, qword [rsp + 0x330]
mov qword [rdi + 0x258], rax
mov rax, qword [rsp + 0x338]
mov qword [rdi + 0x260], rax
mov rax, qword [rsp + 0x340]
mov qword [rdi + 0x268], rax
mov rax, qword [rsp + 0x348]
mov qword [rdi + 0x270], rax
mov rax, qword [rsp + 0x350]
mov qword [rdi + 0x278], rax
mov rax, qword [rsp + 0x358]
mov qword [rdi + 0x280], rax
mov rax, qword [rsp + 0x360]
mov qword [rdi + 0x288], rax
mov rax, qword [rsp + 0x368]
mov qword [rdi + 0x290], rax
mov rax, qword [rsp + 0x370]
mov qword [rdi + 0x298], rax
mov rax, qword [rsp + 0x378]
mov qword [rdi + 0x2a0], rax
mov rax, qword [rsp + 0x380]
mov qword [rdi + 0x2a8], rax
mov rax, qword [rsp + 0x388]
mov qword [rdi + 0x2b0], rax
mov rax, qword [rsp + 0x390]
mov qword [rdi + 0x2b8], rax
mov rax, qword [rsp + 0x398]
mov qword [rdi + 0x2c0], rax
mov rax, qword [rsp + 0x3a0]
mov qword [rdi + 0x2c8], rax
mov rax, qword [rsp + 0x3a8]
mov qword [rdi + 0x2d0], rax
mov rax, qword [rsp + 0x3b0]
mov qword [rdi + 0x2d8], rax
mov rax, qword [rsp + 0x3b8]
mov qword [rdi + 0x2e0], rax
mov rax, qword [rsp + 0x3c0]
mov qword [rdi + 0x2e8], rax
mov rax, qword [rsp + 0x3c8]
mov qword [rdi + 0x2f0], rax
mov rax, qword [rsp + 0x3d0]
mov qword [rdi + 0x2f8], rax
mov rax, qword [rsp + 0x3d8]
mov qword [rdi + 0x300], rax
mov rax, qword [rsp + 0x3e0]
mov qword [rdi + 0x308], rax
mov rax, qword [rsp + 0x3e8]
mov qword [rdi + 0x310], rax
mov rax, qword [rsp + 0x3f0]
mov qword [rdi + 0x318], rax
mov rax, qword [rsp + 0x3f8]
mov qword [rdi + 0x320], rax
mov rax, qword [rsp + 0x400]
mov qword [rdi + 0x328], rax
mov rax, qword [rsp + 0x408]
mov qword [rdi + 0x330], rax
mov rax, qword [rsp + 0x410]
mov qword [rdi + 0x338], rax
mov rax, qword [rsp + 0x418]
mov qword [rdi + 0x340], rax
mov rax, qword [rsp + 0x420]
mov qword [rdi + 0x348], rax
mov rax, qword [rsp + 0x428]
mov qword [rdi + 0x350], rax
mov rax, qword [rsp + 0x430]
mov qword [rdi + 0x358], rax
mov rax, qword [rsp + 0x438]
mov qword [rdi + 0x360], rax
mov rax, qword [rsp + 0x440]
mov qword [rdi + 0x368], rax
mov rax, qword [rsp + 0x448]
mov qword [rdi + 0x370], rax
mov rax, qword [rsp + 0x450]
mov qword [rdi + 0x378], rax
mov rax, qword [rsp + 0x458]
mov qword [rdi + 0x380], rax
mov rax, qword [rsp + 0x460]
mov qword [rdi + 0x388], rax
mov rax, qword [rsp + 0x468]
mov qword [rdi + 0x390], rax
mov rax, qword [rsp + 0x470]
mov qword [rdi + 0x398], rax
mov rax, qword [rsp + 0x478]
mov qword [rdi + 0x3a0], rax
mov rax, qword [rsp + 0x480]
mov qword [rdi + 0x3a8], rax
mov rax, qword [rsp + 0x488]
mov qword [rdi + 0x3b0], rax
mov rax, qword [rsp + 0x490]
mov qword [rdi + 0x3b8], rax
mov rax, qword [rsp + 0x498]
mov qword [rdi + 0x3c0], rax
mov rax, qword [rsp + 0x4a0]
mov qword [rdi + 0x3c8], rax
mov rax, qword [rsp + 0x4a8]
mov qword [rdi + 0x3d0], rax
mov rax, qword [rsp + 0x4b0]
mov qword [rdi + 0x3d8], rax
mov rax, qword [rsp + 0x4b8]
mov qword [rdi + 0x3e0], rax
mov rax, qword [rsp + 0x4c0]
mov qword [rdi + 0x3e8], rax
mov rax, qword [rsp + 0x4c8]
mov qword [rdi + 0x3f0], rax
mov rax, qword [rsp + 0x4d0]
mov qword [rdi + 0x3f8], rax
mov rax, qword [rsp + 0x548]
mov qword [rdi + 0x400], rax
mov rax, qword [rsp + 0x4d8]
mov qword [rdi + 0x408], rax
mov rax, qword [rsp + 0x4e0]
mov qword [rdi + 0x410], rax
mov rax, qword [rsp + 0xd8]
mov qword [rdi + 0x418], rax
mov rax, qword [rsp + 0x130]
mov qword [rdi + 0x420], rax
mov rax, qword [rsp + 0x100]
mov qword [rdi + 0x428], rax
mov qword [rdi + 0x430], rbp
mov rax, qword [rsp + 0x518]
mov qword [rdi + 0x438], rax
mov qword [rdi + 0x440], 2
xorps xmm6, xmm6
movups xmmword [rdi + 0x488], xmm6
movups xmmword [rdi + 0x478], xmm6
movups xmmword [rdi + 0x468], xmm6
movups xmmword [rdi + 0x458], xmm6
movups xmmword [rdi + 0x448], xmm6
mov rax, qword [rsp + 0x188]
mov qword [rdi + 0x498], rax
mov qword [rdi + 0x4a0], 0
mov rax, qword [rsp + 0x520]
mov qword [rdi + 0x4a8], rax
mov rax, qword [rsp + 0x528]
mov qword [rdi + 0x4b0], rax
mov qword [rdi + 0x4b8], 0
mov rax, qword [rsp + 0x530]
mov qword [rdi + 0x4c0], rax
mov rax, qword [rsp + 0x538]
mov qword [rdi + 0x4c8], rax
mov rax, qword [rsp + 0x168]
mov qword [rdi + 0x4d0], rax
mov qword [rdi + 0x4d8], 0
mov rax, qword [rsp + 0x90]
mov qword [rdi + 0x4f8], rax
mov rax, qword [rsp + 0x80]
mov qword [rdi + 0x500], rax
mov rax, qword [rsp + 0x30]
mov qword [rdi + 0x508], rax
mov rax, qword [rsp + 0xa0]
mov qword [rdi + 0x510], rax
mov rax, qword [rsp + 0x38]
mov qword [rdi + 0x518], rax
mov rax, qword [rsp + 0x28]
mov qword [rdi + 0x520], rax
mov rax, qword [rsp + 0x60]
mov qword [rdi + 0x528], rax
mov rax, qword [rsp + 0x70]
mov qword [rdi + 0x530], rax
mov rax, qword [rsp + 0x170]
mov qword [rdi + 0x538], rax
mov qword [rdi + 0x540], 2
movups xmmword [rdi + 0x568], xmm6
movups xmmword [rdi + 0x558], xmm6
movups xmmword [rdi + 0x548], xmm6
mov qword [rdi + 0x578], 0
mov eax, dword [rsp + 0x10c]
mov dword [rdi + 0x580], eax
movdqa xmm0, xmmword [rsp + 0x1a0]
movdqu xmmword [rdi + 0x584], xmm0
mov eax, dword [rsp + 0x1b0]
mov dword [rdi + 0x594], eax
mov eax, dword [rsp + 0xbc]
mov dword [rdi + 0x598], eax
mov dword [rdi + 0x59c], 0
mov rax, qword [rsp + 0x178]
mov qword [rdi + 0x5a0], rax
mov eax, dword [rsp + 0x180]
mov dword [rdi + 0x5a8], eax
mov rax, qword [rsp + 0x1c0]
mov qword [rdi + 0x5b0], rax
mov eax, dword [rsp + 0xc0]
mov dword [rdi + 0x5b8], eax
mov rax, qword [rsp + 0x590]
mov qword [rdi + 0x5c0], rax
lea rbp, [rdi + 0x80]
movzx eax, byte [rsp + 0xc4]
mov byte [rdi + 0x5c8], al
mov byte [rdi + 0x5c9], 0
movzx eax, word [rsp + 0x13c]
mov word [rdi + 0x5ce], ax
mov eax, dword [rsp + 0x138]
mov dword [rdi + 0x5ca], eax
mov rax, qword [rsp + 0x68]
mov qword [rdi + 0x5d0], rax
mov rax, qword [rsp + 0xe8]
mov qword [rdi + 0x5d8], rax
lea rcx, [rdi + 0x5e0]
lea rdx, [rsp + 0x2ea0]
mov r8d, 0x518
call sub.msvcrt.dll_memcpy
mov byte [rdi + 0xaf8], 0
lea rcx, [rdi + 0xaf9]
lea rdx, [rsp + 0x2960]
mov r8d, 0x537
call sub.msvcrt.dll_memcpy
movaps xmmword [rdi + 0x1030], xmm6
mov qword [rdi + 0x1040], 0
mov rax, qword [rbx + 0x80]
mov qword [rdi + 0x98], rax
mov rax, qword [rdi + 0x90]
mov rax, qword [rax + 0x48]
mov rdi, qword [rdi + rax + 0x80]
mov r15, qword [rbx + 0x60]
mov r12, qword [rbx + 0x78]
and r12, rdi
shl r12, 5
lea r14, [r15 + r12]
mov rcx, r14
call sub.kernel32.dll_AcquireSRWLockExclusive
movzx eax, byte [r15 + r12 + 8]
movzx eax, byte [rbx + 0x88]
test al, al
je 0x1400d2b59
mov rcx, r14
call fcn.1401168fc
mov rax, qword [rbp + 0x10]
mov rcx, rbp
call qword [rax + 0x30]
mov rax, 0xffffffffffffffc0
lock xadd qword [rbp], rax
cmp rax, 0x3f
mov r12, qword [rsp + 0x78]
mov r13, qword [rsp + 0x98]
jbe case.0x1400cc60f.1
and rax, 0xffffffffffffffc0
cmp rax, 0x40
mov r15, qword [rsp + 0xf0]
jne 0x1400d2bf0
mov rax, qword [rbp + 0x10]
mov rcx, rbp
call qword [rax + 0x10]
jmp 0x1400d2bf0
mov rcx, qword [rbp + 0x10]
mov rax, qword [rcx + 0x48]
cmp qword [rbp + rax], rdi
mov r13, qword [rsp + 0x98]
jne case.0x1400cc60f.1
mov rax, qword [r14 + 0x10]
cmp rax, rbp
mov r15, qword [rsp + 0xf0]
mov r12, qword [rsp + 0x78]
je case.0x1400cc60f.1
mov rcx, qword [rcx + 0x38]
mov qword [rbp + rcx + 8], rax
mov rcx, qword [rbp + 0x10]
mov rcx, qword [rcx + 0x38]
mov qword [rbp + rcx], 0
test rax, rax
je 0x1400d2afc
mov rcx, qword [rax + 0x10]
mov rcx, qword [rcx + 0x38]
mov qword [rax + rcx], rbp
lea rdi, [rbx + 0x10]
mov qword [r14 + 0x10], rbp
cmp qword [r14 + 0x18], 0
jne 0x1400d2b0f
mov qword [r14 + 0x18], rbp
lock inc qword [rbx + 0x80]
mov rcx, r14
call fcn.1401168fc
mov byte [rsp + 0x5ca], 0
mov qword [rsp + 0x670], rdi
mov qword [rsp + 0x678], rbp
lea rax, [rsp + 0x5ca]
mov qword [rsp + 0x680], rax
lea rcx, [rsp + 0x670]
call fcn.1400fab10
jmp 0x1400d2bf0
mov rcx, qword [rbp + 0x10]
mov rax, qword [rcx + 0x48]
cmp qword [rbp + rax], rdi
mov r12, qword [rsp + 0x78]
mov r13, qword [rsp + 0x98]
jne case.0x1400cc60f.1
mov rax, qword [r14 + 0x10]
cmp rax, rbp
mov r15, qword [rsp + 0xf0]
mov rdi, qword [rsp + 0xa18]
je case.0x1400cc60f.1
mov rcx, qword [rcx + 0x38]
mov qword [rbp + rcx + 8], rax
mov rcx, qword [rbp + 0x10]
mov rcx, qword [rcx + 0x38]
mov qword [rbp + rcx], 0
test rax, rax
mov rdx, qword [rsp + 0x7b8]
je 0x1400d2bc9
mov rcx, qword [rax + 0x10]
mov rcx, qword [rcx + 0x38]
mov qword [rax + rcx], rbp
mov qword [r14 + 0x10], rbp
cmp qword [r14 + 0x18], 0
jne 0x1400d2bd8
mov qword [r14 + 0x18], rbp
lock inc qword [rdx + 0x70]
mov rcx, r14
call fcn.1401168fc
mov rcx, rdi
mov rdx, rbp
call fcn.140100450
mov rdx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x510]
dec qword [rax]
mov ecx, 0x84
mov eax, 0xcc
lock cmpxchg qword [rbp], rcx
je 0x1400d2c21
mov rdx, qword [rsp + 0x40]
mov rax, qword [rsi + 0x1f0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsi + 0x1f8]
mov qword [rsp + 0x70], rax
mov rax, qword [rsi + 0x1e0]
mov qword [rsp + 0x100], rax
mov rax, qword [rsi + 0x1e8]
mov qword [rsp + 0x90], rax
mov eax, dword [rsp + 0x128]
mov ecx, dword [rsp + 0x12b]
mov dword [rsp + 0xd3], ecx
mov dword [rsp + 0xd0], eax
mov r14, qword [rsp + 0x48]
mov rax, qword [rsp + 0x6e0]
mov qword [rsp + 0x970], rax
movups xmm0, xmmword [rsp + 0x6d0]
movaps xmmword [rsp + 0x960], xmm0
movups xmm0, xmmword [rsp + 0x690]
movups xmm1, xmmword [rsp + 0x6a0]
movups xmm2, xmmword [rsp + 0x6b0]
movups xmm3, xmmword [rsp + 0x6c0]
movaps xmmword [rsp + 0x950], xmm3
movaps xmmword [rsp + 0x940], xmm2
movaps xmmword [rsp + 0x930], xmm1
movaps xmmword [rsp + 0x920], xmm0
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0x568], eax
mov dword [rsp + 0x56b], ecx
mov rax, qword [rsp + 0x58]
mov byte [rax], 1
movaps xmm0, xmmword [rsp + 0x920]
movaps xmm1, xmmword [rsp + 0x930]
movaps xmm2, xmmword [rsp + 0x940]
movaps xmm3, xmmword [rsp + 0x950]
movaps xmmword [rsp + 0x840], xmm0
movaps xmmword [rsp + 0x850], xmm1
movaps xmmword [rsp + 0x860], xmm2
movaps xmmword [rsp + 0x870], xmm3
movaps xmm0, xmmword [rsp + 0x960]
movaps xmmword [rsp + 0x880], xmm0
mov rax, qword [rsp + 0x970]
mov qword [rsp + 0x890], rax
mov eax, dword [rsp + 0x568]
mov ecx, dword [rsp + 0x56b]
mov dword [rsp + 0x110], eax
mov dword [rsp + 0x113], ecx
movzx eax, byte [rdx + 0x230]
cmp eax, 3
je 0x1400d2dfa
test eax, eax
jne 0x1400d2e87
mov rbx, qword [rdx + 0x218]
mov rdi, qword [rdx + 0x220]
mov rcx, rbx
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x1400d2dc2
cmp qword [rdi + 0x10], 0x11
jb 0x1400d2db1
mov rbx, qword [rbx - 8]
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
mov rdi, qword [rsp + 0x40]
lea rcx, [rdi + 0x180]
call fcn.14005f350
mov rax, qword [rdi]
test rax, rax
je 0x1400d2e87
lock dec qword [rax]
jne 0x1400d2e87
mov rcx, qword [rdi]
mov rdx, qword [rdi + 8]
call fcn.1400a2110
jmp 0x1400d2e87
movzx eax, byte [rdx + 0x178]
cmp eax, 3
je 0x1400d2e1a
test eax, eax
jne 0x1400d2e5a
mov rbx, qword [rdx + 0xa8]
mov rdi, qword [rdx + 0xb0]
jmp 0x1400d2e28
mov rbx, qword [rdx + 0xc0]
mov rdi, qword [rdx + 0xc8]
mov rcx, rbx
call qword [rdi]
mov rdx, qword [rsp + 0x40]
cmp qword [rdi + 8], 0
je 0x1400d2e5a
cmp qword [rdi + 0x10], 0x11
jb 0x1400d2e44
mov rbx, qword [rbx - 8]
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
mov rdx, qword [rsp + 0x40]
mov rax, qword [rdx + 0x20]
test rax, rax
je 0x1400d2e7b
lock dec qword [rax]
jne 0x1400d2e7b
mov rcx, qword [rdx + 0x20]
mov rdx, qword [rdx + 0x28]
call fcn.1400a2110
mov rdx, qword [rsp + 0x40]
add rdx, 0x10
mov rcx, rdx
call fcn.14005f350
cmp r13, 2
jne 0x1400d2f6b
mov rax, qword [rsi + 0x1b8]
lock dec qword [rax]
jne 0x1400d2eaa
mov rcx, qword [rsi + 0x1b8]
call fcn.1400a2ed0
mov rax, qword [rsi + 0x1c0]
lock dec qword [rax + 0x1d0]
jne 0x1400d2f21
mov rdi, qword [rsi + 0x1c0]
lea rcx, [rdi + 0x80]
call fcn.140062180
mov rax, qword [rdi + 0x110]
nop word cs:[rax + rax]
mov rcx, rax
or rcx, 2
lock cmpxchg qword [rdi + 0x110], rcx
jne 0x1400d2ee0
test rax, rax
jne 0x1400d2f21
mov rax, qword [rdi + 0x100]
mov rcx, qword [rdi + 0x108]
mov qword [rdi + 0x100], 0
lock and qword [rdi + 0x110], 0xfffffffffffffffd
test rax, rax
je 0x1400d2f21
mov rax, qword [rsi + 0x1c0]
lock dec qword [rax]
jne 0x1400d2f3a
mov rcx, qword [rsi + 0x1c0]
call fcn.1400a29e0
mov qword [rsp + 0x48], r14
mov rax, qword [rsi + 0x180]
test rax, rax
je 0x1400d31d5
lock dec qword [rax]
mov ebx, 4
mov dword [rsp + 0x58], eax
mov dword [rsp + 0x38], eax
je 0x1400d31c0
mov rax, qword [rsp + 0x890]
mov qword [rsp + 0x830], rax
movaps xmm0, xmmword [rsp + 0x880]
movaps xmmword [rsp + 0x820], xmm0
movaps xmm0, xmmword [rsp + 0x840]
movaps xmm1, xmmword [rsp + 0x850]
movaps xmm2, xmmword [rsp + 0x860]
movaps xmm3, xmmword [rsp + 0x870]
movaps xmmword [rsp + 0x810], xmm3
movaps xmmword [rsp + 0x800], xmm2
movaps xmmword [rsp + 0x7f0], xmm1
movaps xmmword [rsp + 0x7e0], xmm0
mov eax, dword [rsp + 0x110]
mov ecx, dword [rsp + 0x113]
mov dword [rsp + 0x560], eax
mov dword [rsp + 0x563], ecx
mov ebx, 2
xor edi, edi
mov dword [rsp + 0x58], eax
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x98], r14
mov r14, qword [rsp + 0x150]
mov rax, qword [rsi + 0x1b8]
mov qword [rsp + 0x48], rax
movups xmm0, xmmword [rsi + 0x1c0]
movaps xmmword [rsp + 0x5f0], xmm0
movaps xmm0, xmmword [rsp + 0x7e0]
movaps xmm1, xmmword [rsp + 0x7f0]
movaps xmm2, xmmword [rsp + 0x800]
movaps xmm3, xmmword [rsp + 0x810]
movaps xmmword [rsp + 0x8a0], xmm0
movaps xmmword [rsp + 0x8b0], xmm1
movaps xmmword [rsp + 0x8c0], xmm2
movaps xmmword [rsp + 0x8d0], xmm3
movaps xmm0, xmmword [rsp + 0x820]
movaps xmmword [rsp + 0x8e0], xmm0
mov rax, qword [rsp + 0x830]
mov qword [rsp + 0x8f0], rax
mov eax, dword [rsp + 0x560]
mov ecx, dword [rsp + 0x563]
mov dword [rsp + 0x120], eax
mov dword [rsp + 0x123], ecx
mov rax, qword [rsp + 0x770]
mov qword [rsp + 0xa10], rax
movaps xmm0, xmmword [rsp + 0x760]
movaps xmmword [rsp + 0xa00], xmm0
movaps xmm0, xmmword [rsp + 0x750]
movaps xmmword [rsp + 0x5e0], xmm0
mov eax, dword [rsp + 0x648]
mov ecx, dword [rsp + 0x64b]
mov dword [rsp + 0x118], eax
mov dword [rsp + 0x11b], ecx
mov eax, dword [rsp + 0x5b4]
mov dword [rsp + 0x5c4], eax
movzx eax, word [rsp + 0x5b8]
mov word [rsp + 0x5c8], ax
mov eax, dword [rsp + 0x5ac]
mov dword [rsp + 0x5bc], eax
movzx eax, word [rsp + 0x5b0]
mov word [rsp + 0x5c0], ax
movaps xmm0, xmmword [rsp + 0x740]
movaps xmmword [rsp + 0x7a0], xmm0
mov eax, dword [rsp + 0x640]
mov ecx, dword [rsp + 0x643]
mov dword [rsp + 0x163], ecx
mov dword [rsp + 0x160], eax
movaps xmm0, xmmword [rsp + 0x6f0]
movaps xmm1, xmmword [rsp + 0x700]
movaps xmmword [rsp + 0x580], xmm1
movaps xmmword [rsp + 0x570], xmm0
mov eax, dword [rsp + 0x638]
mov ecx, dword [rsp + 0x63b]
mov dword [rsp + 0x15b], ecx
mov dword [rsp + 0x158], eax
mov eax, dword [rsp + 0x630]
mov ecx, dword [rsp + 0x633]
mov dword [rsp + 0xcb], ecx
mov dword [rsp + 0xc8], eax
mov rax, qword [rsi + 0x180]
test rax, rax
je 0x1400d31e2
lock dec qword [rax]
jne 0x1400d31e2
mov rcx, qword [rsi + 0x180]
mov rdx, qword [rsi + 0x188]
call fcn.1400a2110
jmp 0x1400d31e2
mov ebx, 4
mov dword [rsp + 0x58], eax
mov dword [rsp + 0x38], eax
movaps xmm0, xmmword [rsp + 0x5f0]
movaps xmmword [rsp + 0x730], xmm0
movaps xmm0, xmmword [rsp + 0x8a0]
movaps xmm1, xmmword [rsp + 0x8b0]
movaps xmm2, xmmword [rsp + 0x8c0]
movaps xmm3, xmmword [rsp + 0x8d0]
movaps xmmword [rsp + 0x9a0], xmm0
movaps xmmword [rsp + 0x9b0], xmm1
movaps xmmword [rsp + 0x9c0], xmm2
movaps xmmword [rsp + 0x9d0], xmm3
movaps xmm0, xmmword [rsp + 0x8e0]
movaps xmmword [rsp + 0x9e0], xmm0
mov rax, qword [rsp + 0x8f0]
mov qword [rsp + 0x9f0], rax
mov eax, dword [rsp + 0x120]
mov ecx, dword [rsp + 0x123]
mov dword [rsp + 0x628], eax
mov dword [rsp + 0x62b], ecx
mov rax, qword [rsp + 0xa10]
mov qword [rsp + 0x990], rax
movaps xmm0, xmmword [rsp + 0xa00]
movaps xmmword [rsp + 0x980], xmm0
movaps xmm0, xmmword [rsp + 0x5e0]
movaps xmmword [rsp + 0x650], xmm0
mov eax, dword [rsp + 0x118]
mov ecx, dword [rsp + 0x11b]
mov dword [rsp + 0x620], eax
mov dword [rsp + 0x623], ecx
mov eax, dword [rsp + 0x5c4]
mov dword [rsp + 0x5a4], eax
movzx eax, word [rsp + 0x5c8]
mov word [rsp + 0x5a8], ax
mov eax, dword [rsp + 0x5bc]
mov dword [rsp + 0x59c], eax
movzx eax, word [rsp + 0x5c0]
mov word [rsp + 0x5a0], ax
movaps xmm0, xmmword [rsp + 0x7a0]
movaps xmmword [rsp + 0x5d0], xmm0
mov eax, dword [rsp + 0x160]
mov ecx, dword [rsp + 0x163]
mov dword [rsp + 0x61b], ecx
mov dword [rsp + 0x618], eax
movaps xmm0, xmmword [rsp + 0x570]
movaps xmm1, xmmword [rsp + 0x580]
movaps xmmword [rsp + 0x720], xmm1
movaps xmmword [rsp + 0x710], xmm0
mov eax, dword [rsp + 0x158]
mov ecx, dword [rsp + 0x15b]
mov dword [rsp + 0x613], ecx
mov dword [rsp + 0x610], eax
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0xcb]
mov dword [rsp + 0x60b], ecx
mov dword [rsp + 0x608], eax
mov rax, qword [rsp + 0xf8]
mov byte [rax], 1
movaps xmm0, xmmword [rsp + 0x730]
movaps xmmword [rsp + 0x7c0], xmm0
mov rax, qword [rsp + 0x9f0]
mov qword [rsp + 0x6e0], rax
movaps xmm0, xmmword [rsp + 0x9e0]
movaps xmmword [rsp + 0x6d0], xmm0
movaps xmm0, xmmword [rsp + 0x9a0]
movaps xmm1, xmmword [rsp + 0x9b0]
movaps xmm2, xmmword [rsp + 0x9c0]
movaps xmm3, xmmword [rsp + 0x9d0]
movaps xmmword [rsp + 0x6c0], xmm3
movaps xmmword [rsp + 0x6b0], xmm2
movaps xmmword [rsp + 0x6a0], xmm1
movaps xmmword [rsp + 0x690], xmm0
mov eax, dword [rsp + 0x628]
mov ecx, dword [rsp + 0x62b]
mov dword [rsp + 0x53], ecx
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x990]
mov qword [rsp + 0x790], rax
movaps xmm0, xmmword [rsp + 0x980]
movaps xmmword [rsp + 0x780], xmm0
movaps xmm0, xmmword [rsp + 0x650]
movaps xmmword [rsp + 0x760], xmm0
mov eax, dword [rsp + 0x620]
mov ecx, dword [rsp + 0x623]
mov dword [rsp + 0xd3], ecx
mov dword [rsp + 0xd0], eax
movzx eax, word [rsp + 0x5a8]
mov word [rsp + 0xcc], ax
mov eax, dword [rsp + 0x5a4]
mov dword [rsp + 0xc8], eax
movzx eax, word [rsp + 0x5a0]
mov word [rsp + 0x114], ax
mov eax, dword [rsp + 0x59c]
mov dword [rsp + 0x110], eax
movaps xmm0, xmmword [rsp + 0x5d0]
movaps xmmword [rsp + 0x1a0], xmm0
mov eax, dword [rsp + 0x618]
mov ecx, dword [rsp + 0x61b]
mov dword [rsp + 0x12b], ecx
mov dword [rsp + 0x128], eax
movdqa xmm0, xmmword [rsp + 0x710]
movdqa xmm1, xmmword [rsp + 0x720]
movdqa xmmword [rsp + 0x930], xmm1
movdqa xmmword [rsp + 0x920], xmm0
mov eax, dword [rsp + 0x610]
mov ecx, dword [rsp + 0x613]
mov dword [rsp + 0x123], ecx
mov dword [rsp + 0x120], eax
mov eax, dword [rsp + 0x608]
mov ecx, dword [rsp + 0x60b]
mov dword [rsp + 0x11b], ecx
mov dword [rsp + 0x118], eax
cmp ebx, 4
jne 0x1400d3537
mov rbp, qword [rsp + 0x48]
mov rax, qword [rsi + 0x68]
test rax, rax
jne 0x1400d4fdb
jmp 0x1400d4fee
mov qword [rsp + 0xf8], rbx
movaps xmm0, xmmword [rsp + 0x7c0]
movaps xmmword [rsp + 0x980], xmm0
mov rax, qword [rsp + 0x6e0]
mov qword [rsp + 0x2ef0], rax
movaps xmm0, xmmword [rsp + 0x6d0]
movaps xmmword [rsp + 0x2ee0], xmm0
movaps xmm0, xmmword [rsp + 0x690]
movaps xmm1, xmmword [rsp + 0x6a0]
movaps xmm2, xmmword [rsp + 0x6b0]
movaps xmm3, xmmword [rsp + 0x6c0]
movaps xmmword [rsp + 0x2ed0], xmm3
movaps xmmword [rsp + 0x2ec0], xmm2
movaps xmmword [rsp + 0x2eb0], xmm1
movaps xmmword [rsp + 0x2ea0], xmm0
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x53]
mov dword [rsp + 0x7a3], ecx
mov dword [rsp + 0x7a0], eax
mov rax, qword [rsp + 0x790]
mov qword [rsp + 0x580], rax
movaps xmm0, xmmword [rsp + 0x780]
movaps xmmword [rsp + 0x570], xmm0
movaps xmm0, xmmword [rsp + 0x760]
movaps xmmword [rsp + 0x670], xmm0
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0x8fb], ecx
mov dword [rsp + 0x8f8], eax
movzx eax, word [rsp + 0xcc]
mov word [rsp + 0x164], ax
mov eax, dword [rsp + 0xc8]
mov dword [rsp + 0x160], eax
movzx eax, word [rsp + 0x114]
mov word [rsp + 0x15c], ax
mov eax, dword [rsp + 0x110]
mov dword [rsp + 0x158], eax
movaps xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0xa00], xmm0
mov eax, dword [rsp + 0x128]
mov ecx, dword [rsp + 0x12b]
mov dword [rsp + 0x753], ecx
mov dword [rsp + 0x750], eax
movdqa xmm0, xmmword [rsp + 0x920]
movdqa xmm1, xmmword [rsp + 0x930]
movdqa xmmword [rsp + 0x850], xmm1
movdqa xmmword [rsp + 0x840], xmm0
mov eax, dword [rsp + 0x120]
mov ecx, dword [rsp + 0x123]
mov dword [rsp + 0x743], ecx
mov dword [rsp + 0x740], eax
mov eax, dword [rsp + 0x118]
mov ecx, dword [rsp + 0x11b]
mov dword [rsp + 0x733], ecx
mov dword [rsp + 0x730], eax
mov rbx, qword [rsi + 0xf8]
test rbx, rbx
mov qword [rsp + 0x78], r12
je 0x1400d3a7f
mov r12, rdi
mov rdi, r14
mov rax, qword [rsi + 0x100]
mov qword [rsp + 0x150], rax
mov r14, qword [rax + 0x10]
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400d372e
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x1e8
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
dec r14
and r14, 0xfffffffffffffff0
lea rcx, [r14 + rbx]
add rcx, 0x10
mov rdx, qword [rsp + 0xf8]
mov qword [rax], rdx
mov qword [rax + 8], 2
mov rdx, qword [rsp + 0x30]
mov qword [rax + 0x10], rdx
movaps xmm0, xmmword [rsp + 0x2ea0]
movaps xmm1, xmmword [rsp + 0x2eb0]
movaps xmm2, xmmword [rsp + 0x2ec0]
movaps xmm3, xmmword [rsp + 0x2ed0]
movups xmmword [rax + 0x18], xmm0
movups xmmword [rax + 0x28], xmm1
movups xmmword [rax + 0x38], xmm2
movups xmmword [rax + 0x48], xmm3
movaps xmm0, xmmword [rsp + 0x2ee0]
movups xmmword [rax + 0x58], xmm0
mov rdx, qword [rsp + 0x2ef0]
mov qword [rax + 0x68], rdx
mov qword [rax + 0x70], 0
mov rdx, qword [rsp + 0xe0]
mov qword [rax + 0x78], rdx
mov rdx, qword [rsp + 0x540]
mov qword [rax + 0x80], rdx
mov byte [rax + 0x88], 0
mov edx, dword [rsp + 0x7a0]
mov r8d, dword [rsp + 0x7a3]
mov dword [rax + 0x89], edx
mov dword [rax + 0x8c], r8d
mov rdx, qword [rsp + 0xe8]
mov qword [rax + 0x90], rdx
mov rdx, qword [rsp + 0x98]
mov qword [rax + 0x98], rdx
mov qword [rax + 0xa0], rdi
mov qword [rax + 0xa8], r12
mov rdx, qword [rsp + 0x100]
mov qword [rax + 0xb8], rdx
mov rdx, qword [rsp + 0x90]
mov qword [rax + 0xc0], rdx
mov rdx, qword [rsp + 0x68]
mov qword [rax + 0xc8], rdx
mov rdx, qword [rsp + 0x28]
mov qword [rax + 0xd0], rdx
mov rdx, qword [rsp + 0x70]
mov qword [rax + 0xd8], rdx
mov rdx, qword [rsp + 0x80]
mov qword [rax + 0xe0], rdx
mov rdx, qword [rsp + 0x580]
mov qword [rax + 0xf8], rdx
movaps xmm0, xmmword [rsp + 0x570]
movups xmmword [rax + 0xe8], xmm0
mov qword [rax + 0x100], 8
movaps xmm0, xmmword [rsp + 0x670]
movups xmmword [rax + 0x108], xmm0
mov r9, qword [rsp + 0x60]
mov qword [rax + 0x118], r9
mov edx, dword [rsp + 0x38]
mov byte [rax + 0x120], dl
mov edx, dword [rsp + 0x8f8]
mov r8d, dword [rsp + 0x8fb]
mov dword [rax + 0x124], r8d
mov dword [rax + 0x121], edx
mov edx, dword [rsp + 0x58]
mov byte [rax + 0x128], dl
mov byte [rax + 0x129], 0
movzx edx, word [rsp + 0x164]
mov word [rax + 0x12e], dx
mov edx, dword [rsp + 0x160]
mov dword [rax + 0x12a], edx
mov rdx, qword [rsp + 0x88]
mov qword [rax + 0x130], rdx
mov qword [rax + 0x138], r9
mov rdx, qword [rsp + 0xa8]
mov qword [rax + 0x140], rdx
mov rdx, qword [rsp + 0xb0]
mov qword [rax + 0x148], rdx
mov rdx, qword [rsp + 0x40]
mov qword [rax + 0x150], rdx
mov qword [rax + 0x158], 1
xorps xmm0, xmm0
movups xmmword [rax + 0x160], xmm0
mov qword [rax + 0x170], 1
mov word [rax + 0x178], 0
movzx edx, word [rsp + 0x15c]
mov word [rax + 0x17e], dx
mov edx, dword [rsp + 0x158]
mov dword [rax + 0x17a], edx
mov qword [rax + 0x180], 2
movaps xmm0, xmmword [rsp + 0xa00]
movups xmmword [rax + 0x188], xmm0
mov qword [rax + 0x198], rbp
mov qword [rax + 0x1a0], r13
mov byte [rax + 0x1a8], 0
mov edx, dword [rsp + 0x750]
mov r8d, dword [rsp + 0x753]
mov dword [rax + 0x1ac], r8d
mov dword [rax + 0x1a9], edx
movdqa xmm0, xmmword [rsp + 0x840]
movdqa xmm1, xmmword [rsp + 0x850]
movdqu xmmword [rax + 0x1b0], xmm0
movdqu xmmword [rax + 0x1c0], xmm1
mov byte [rax + 0x1d0], 3
mov edx, dword [rsp + 0x740]
mov r8d, dword [rsp + 0x743]
mov dword [rax + 0x1d4], r8d
mov dword [rax + 0x1d1], edx
mov rdx, qword [rsp + 0xa0]
mov qword [rax + 0x1d8], rdx
mov byte [rax + 0x1e0], 0
mov edx, dword [rsp + 0x730]
mov r8d, dword [rsp + 0x733]
mov dword [rax + 0x1e1], edx
mov dword [rax + 0x1e4], r8d
lea r8, [0x1401ca9e0]
mov rdx, rax
mov rax, qword [rsp + 0x150]
call qword [rax + 0x18]
mov r14, qword [rsp + 0x4e8]
mov rbp, qword [rsp + 0x48]
jmp 0x1400d4dbd
mov eax, 1
lock xadd qword [0x140195100], rax
mov qword [rsp + 0xa20], rax
movaps xmm0, xmmword [rsp + 0x690]
movaps xmm1, xmmword [rsp + 0x6a0]
movaps xmm2, xmmword [rsp + 0x6b0]
movaps xmm3, xmmword [rsp + 0x6c0]
movaps xmmword [rsp + 0x2960], xmm0
movaps xmmword [rsp + 0x2970], xmm1
movaps xmmword [rsp + 0x2980], xmm2
movaps xmmword [rsp + 0x2990], xmm3
movaps xmm0, xmmword [rsp + 0x6d0]
movaps xmmword [rsp + 0x29a0], xmm0
mov rax, qword [rsp + 0x6e0]
mov qword [rsp + 0x29b0], rax
mov eax, dword [rsp + 0x53]
mov dword [rsp + 0x4f3], eax
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x4f0], eax
mov rax, qword [rsp + 0x790]
mov qword [rsp + 0x9b0], rax
movaps xmm0, xmmword [rsp + 0x780]
movaps xmmword [rsp + 0x9a0], xmm0
movaps xmm0, xmmword [rsp + 0x760]
movaps xmmword [rsp + 0x6f0], xmm0
mov eax, dword [rsp + 0xd3]
mov dword [rsp + 0x553], eax
mov eax, dword [rsp + 0xd0]
mov dword [rsp + 0x550], eax
movzx eax, word [rsp + 0xcc]
mov word [rsp + 0x654], ax
mov eax, dword [rsp + 0xc8]
mov dword [rsp + 0x650], eax
movzx eax, word [rsp + 0x114]
mov word [rsp + 0x5d4], ax
mov eax, dword [rsp + 0x110]
mov dword [rsp + 0x5d0], eax
movaps xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x710], xmm0
mov eax, dword [rsp + 0x12b]
mov dword [rsp + 0x13b], eax
mov eax, dword [rsp + 0x128]
mov dword [rsp + 0x138], eax
movaps xmm0, xmmword [rsp + 0x920]
movaps xmm1, xmmword [rsp + 0x930]
movaps xmmword [rsp + 0x8b0], xmm1
movaps xmmword [rsp + 0x8a0], xmm0
mov eax, dword [rsp + 0x123]
mov dword [rsp + 0x5f3], eax
mov eax, dword [rsp + 0x120]
mov dword [rsp + 0x5f0], eax
mov eax, dword [rsp + 0x11b]
mov dword [rsp + 0x5e3], eax
mov eax, dword [rsp + 0x118]
mov dword [rsp + 0x5e0], eax
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x19d0], rax
mov qword [rsp + 0x19d8], 2
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x19e0], rax
movaps xmm0, xmmword [rsp + 0x690]
movaps xmm1, xmmword [rsp + 0x6a0]
movaps xmm2, xmmword [rsp + 0x6b0]
movaps xmm3, xmmword [rsp + 0x6c0]
movups xmmword [rsp + 0x19e8], xmm0
movups xmmword [rsp + 0x19f8], xmm1
movups xmmword [rsp + 0x1a08], xmm2
movups xmmword [rsp + 0x1a18], xmm3
movaps xmm0, xmmword [rsp + 0x6d0]
movups xmmword [rsp + 0x1a28], xmm0
mov rax, qword [rsp + 0x6e0]
mov qword [rsp + 0x1a38], rax
mov qword [rsp + 0x1a40], 0
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x1a48], rax
mov rbx, qword [rsp + 0x540]
mov qword [rsp + 0x1a50], rbx
mov byte [rsp + 0x1a58], 0
mov eax, dword [rsp + 0x53]
mov dword [rsp + 0x1a5c], eax
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x1a59], eax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x1a60], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x1a68], rax
mov qword [rsp + 0x1a70], r14
mov qword [rsp + 0x130], rdi
mov qword [rsp + 0x1a78], rdi
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x1a88], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x1a90], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x1a98], rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x1aa0], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x1aa8], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x1ab0], rax
mov rax, qword [rsp + 0x790]
mov qword [rsp + 0x1ac8], rax
movaps xmm0, xmmword [rsp + 0x780]
movups xmmword [rsp + 0x1ab8], xmm0
mov qword [rsp + 0x1ad0], 8
movaps xmm0, xmmword [rsp + 0x760]
movups xmmword [rsp + 0x1ad8], xmm0
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x1ae8], rcx
mov eax, dword [rsp + 0x38]
mov byte [rsp + 0x1af0], al
mov eax, dword [rsp + 0xd3]
mov dword [rsp + 0x1af4], eax
mov eax, dword [rsp + 0xd0]
mov dword [rsp + 0x1af1], eax
mov eax, dword [rsp + 0x58]
mov byte [rsp + 0x1af8], al
mov byte [rsp + 0x1af9], 0
movzx eax, word [rsp + 0xcc]
mov word [rsp + 0x1afe], ax
mov eax, dword [rsp + 0xc8]
mov dword [rsp + 0x1afa], eax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x1b00], rax
mov qword [rsp + 0x1b08], rcx
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x1b10], rax
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x1b18], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x1b20], rax
mov qword [rsp + 0x1b28], 1
xorps xmm0, xmm0
movups xmmword [rsp + 0x1b30], xmm0
mov qword [rsp + 0x1b40], 1
mov word [rsp + 0x1b48], 0
movzx eax, word [rsp + 0x114]
mov word [rsp + 0x1b4e], ax
mov eax, dword [rsp + 0x110]
mov dword [rsp + 0x1b4a], eax
mov qword [rsp + 0x1b50], 2
movaps xmm0, xmmword [rsp + 0x1a0]
movups xmmword [rsp + 0x1b58], xmm0
mov qword [rsp + 0x1b68], rbp
mov qword [rsp + 0x1b70], r13
mov byte [rsp + 0x1b78], 0
mov eax, dword [rsp + 0x12b]
mov dword [rsp + 0x1b7c], eax
mov eax, dword [rsp + 0x128]
mov dword [rsp + 0x1b79], eax
movdqa xmm0, xmmword [rsp + 0x920]
movdqa xmm1, xmmword [rsp + 0x930]
movdqu xmmword [rsp + 0x1b90], xmm1
movdqu xmmword [rsp + 0x1b80], xmm0
mov byte [rsp + 0x1ba0], 3
mov eax, dword [rsp + 0x123]
mov dword [rsp + 0x1ba4], eax
mov eax, dword [rsp + 0x120]
mov dword [rsp + 0x1ba1], eax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x1ba8], rax
mov byte [rsp + 0x1bb0], 0
mov eax, dword [rsp + 0x11b]
mov dword [rsp + 0x1bb4], eax
mov eax, dword [rsp + 0x118]
mov dword [rsp + 0x1bb1], eax
lea rdi, [rsp + 0xa20]
mov qword [rsp + 0x1bb8], rdi
call fcn.14008dc80
test rax, rax
je 0x1400d5a3f
mov rdx, rax
mov rax, qword [rax]
movabs rcx, 0x8000000000000001
add rcx, 0xfffffffffffffffe
cmp rax, rcx
jae case.0x1400cc60f.1
inc rax
mov qword [rdx], rax
cmp dword [rdx + 8], 2
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0xa40], rax
mov qword [rsp + 0xa48], 2
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0xa50], rax
movaps xmm0, xmmword [rsp + 0x690]
movaps xmm1, xmmword [rsp + 0x6a0]
movaps xmm2, xmmword [rsp + 0x6b0]
movaps xmm3, xmmword [rsp + 0x6c0]
movups xmmword [rsp + 0xa58], xmm0
movups xmmword [rsp + 0xa68], xmm1
movups xmmword [rsp + 0xa78], xmm2
movups xmmword [rsp + 0xa88], xmm3
movaps xmm0, xmmword [rsp + 0x6d0]
movups xmmword [rsp + 0xa98], xmm0
mov rax, qword [rsp + 0x6e0]
mov qword [rsp + 0xaa8], rax
mov qword [rsp + 0xab0], 0
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0xab8], rax
mov qword [rsp + 0xac0], rbx
mov byte [rsp + 0xac8], 0
mov eax, dword [rsp + 0x53]
mov dword [rsp + 0xacc], eax
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0xac9], eax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0xad0], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0xad8], rax
mov qword [rsp + 0x150], r14
mov qword [rsp + 0xae0], r14
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0xae8], rax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0xaf8], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0xb00], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xb08], rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0xb10], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0xb18], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0xb20], rax
movaps xmm0, xmmword [rsp + 0x780]
movups xmmword [rsp + 0xb28], xmm0
mov rax, qword [rsp + 0x790]
mov qword [rsp + 0xb38], rax
mov qword [rsp + 0xb40], 8
movaps xmm0, xmmword [rsp + 0x760]
movups xmmword [rsp + 0xb48], xmm0
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0xb58], rcx
mov eax, dword [rsp + 0x38]
mov byte [rsp + 0xb60], al
mov eax, dword [rsp + 0xd0]
mov dword [rsp + 0xb61], eax
mov eax, dword [rsp + 0xd3]
mov dword [rsp + 0xb64], eax
mov eax, dword [rsp + 0x58]
mov byte [rsp + 0xb68], al
mov byte [rsp + 0xb69], 0
mov eax, dword [rsp + 0xc8]
mov dword [rsp + 0xb6a], eax
movzx eax, word [rsp + 0xcc]
mov word [rsp + 0xb6e], ax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0xb70], rax
mov qword [rsp + 0xb78], rcx
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0xb80], rax
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0xb88], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xb90], rax
mov qword [rsp + 0xb98], 1
xorps xmm0, xmm0
movups xmmword [rsp + 0xba0], xmm0
mov qword [rsp + 0xbb0], 1
mov word [rsp + 0xbb8], 0
movzx eax, word [rsp + 0x5d4]
mov word [rsp + 0xbbe], ax
mov eax, dword [rsp + 0x5d0]
mov dword [rsp + 0xbba], eax
mov qword [rsp + 0xbc0], 2
movaps xmm0, xmmword [rsp + 0x710]
movups xmmword [rsp + 0xbc8], xmm0
mov qword [rsp + 0xbd8], rbp
mov qword [rsp + 0xbe0], r13
mov byte [rsp + 0xbe8], 0
mov eax, dword [rsp + 0x13b]
mov dword [rsp + 0xbec], eax
mov eax, dword [rsp + 0x138]
mov dword [rsp + 0xbe9], eax
movdqa xmm0, xmmword [rsp + 0x8a0]
movdqa xmm1, xmmword [rsp + 0x8b0]
movdqu xmmword [rsp + 0xc00], xmm1
movdqu xmmword [rsp + 0xbf0], xmm0
mov byte [rsp + 0xc10], 3
mov eax, dword [rsp + 0x5f3]
mov dword [rsp + 0xc14], eax
mov eax, dword [rsp + 0x5f0]
mov dword [rsp + 0xc11], eax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0xc18], rax
mov byte [rsp + 0xc20], 0
mov eax, dword [rsp + 0x5e3]
mov dword [rsp + 0xc24], eax
mov eax, dword [rsp + 0x5e0]
mov dword [rsp + 0xc21], eax
mov qword [rsp + 0xc28], rdi
je 0x1400d5a5d
mov r14, qword [rsp + 0xa20]
mov rbx, rdx
add rbx, 0x10
cmp qword [rdx + 8], 0
mov qword [rsp + 0xf0], r15
mov qword [rsp + 0xd8], rdx
je 0x1400d47c4
mov rdi, qword [rbx]
lock inc qword [rdi]
jle case.0x1400cc60f.1
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
mov rbx, qword [rsp + 0x540]
jne 0x1400d4392
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x300
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
and rcx, 0xffffffffffffff80
mov qword [rcx + 0x78], rax
mov qword [rcx + 0x80], 0xcc
mov qword [rcx + 0x88], 0
lea rax, [0x1401cb090]
mov qword [rcx + 0x90], rax
mov qword [rcx + 0x98], 0
mov qword [rcx + 0xa0], rdi
mov qword [rcx + 0xa8], r14
mov rax, qword [rsp + 0xf8]
mov qword [rcx + 0xb0], rax
mov qword [rcx + 0xb8], 2
mov rax, qword [rsp + 0x30]
mov qword [rcx + 0xc0], rax
movaps xmm0, xmmword [rsp + 0x2960]
movaps xmm1, xmmword [rsp + 0x2970]
movaps xmm2, xmmword [rsp + 0x2980]
movaps xmm3, xmmword [rsp + 0x2990]
movups xmmword [rcx + 0xc8], xmm0
movups xmmword [rcx + 0xd8], xmm1
movups xmmword [rcx + 0xe8], xmm2
movups xmmword [rcx + 0xf8], xmm3
movaps xmm0, xmmword [rsp + 0x29a0]
movups xmmword [rcx + 0x108], xmm0
mov rax, qword [rsp + 0x29b0]
mov qword [rcx + 0x118], rax
mov qword [rcx + 0x120], 0
mov rax, qword [rsp + 0xe0]
mov qword [rcx + 0x128], rax
mov qword [rcx + 0x130], rbx
mov byte [rcx + 0x138], 0
mov eax, dword [rsp + 0x4f0]
mov edx, dword [rsp + 0x4f3]
mov dword [rcx + 0x13c], edx
mov dword [rcx + 0x139], eax
mov rax, qword [rsp + 0xe8]
mov qword [rcx + 0x140], rax
mov rax, qword [rsp + 0x98]
mov qword [rcx + 0x148], rax
mov rax, qword [rsp + 0x150]
mov qword [rcx + 0x150], rax
mov rax, qword [rsp + 0x130]
mov qword [rcx + 0x158], rax
mov rax, qword [rsp + 0x100]
mov qword [rcx + 0x168], rax
mov rax, qword [rsp + 0x90]
mov qword [rcx + 0x170], rax
mov rax, qword [rsp + 0x68]
mov qword [rcx + 0x178], rax
mov rax, qword [rsp + 0x28]
mov qword [rcx + 0x180], rax
mov rax, qword [rsp + 0x70]
mov qword [rcx + 0x188], rax
mov rax, qword [rsp + 0x80]
mov qword [rcx + 0x190], rax
mov rax, qword [rsp + 0x9b0]
mov qword [rcx + 0x1a8], rax
movaps xmm0, xmmword [rsp + 0x9a0]
movups xmmword [rcx + 0x198], xmm0
mov qword [rcx + 0x1b0], 8
movdqa xmm0, xmmword [rsp + 0x6f0]
movdqu xmmword [rcx + 0x1b8], xmm0
mov r8, qword [rsp + 0x60]
mov qword [rcx + 0x1c8], r8
mov eax, dword [rsp + 0x38]
mov byte [rcx + 0x1d0], al
mov eax, dword [rsp + 0x550]
mov edx, dword [rsp + 0x553]
mov dword [rcx + 0x1d4], edx
mov dword [rcx + 0x1d1], eax
mov eax, dword [rsp + 0x58]
mov byte [rcx + 0x1d8], al
mov byte [rcx + 0x1d9], 0
movzx eax, word [rsp + 0x654]
mov word [rcx + 0x1de], ax
mov eax, dword [rsp + 0x650]
mov dword [rcx + 0x1da], eax
mov rax, qword [rsp + 0x88]
mov qword [rcx + 0x1e0], rax
mov qword [rcx + 0x1e8], r8
mov rax, qword [rsp + 0xa8]
mov qword [rcx + 0x1f0], rax
mov rax, qword [rsp + 0xb0]
mov qword [rcx + 0x1f8], rax
mov rax, qword [rsp + 0x40]
mov qword [rcx + 0x200], rax
mov qword [rcx + 0x208], 1
pxor xmm0, xmm0
movdqa xmmword [rcx + 0x210], xmm0
mov qword [rcx + 0x220], 1
mov word [rcx + 0x228], 0
movzx eax, word [rsp + 0x5d4]
mov word [rcx + 0x22e], ax
mov eax, dword [rsp + 0x5d0]
mov dword [rcx + 0x22a], eax
lea r12, [rcx + 0x80]
mov qword [rcx + 0x230], 2
movaps xmm1, xmmword [rsp + 0x710]
movups xmmword [rcx + 0x238], xmm1
mov qword [rcx + 0x248], rbp
mov qword [rcx + 0x250], r13
mov byte [rcx + 0x258], 0
mov eax, dword [rsp + 0x138]
mov edx, dword [rsp + 0x13b]
mov dword [rcx + 0x25c], edx
mov dword [rcx + 0x259], eax
movdqa xmm1, xmmword [rsp + 0x8a0]
movaps xmm2, xmmword [rsp + 0x8b0]
movdqu xmmword [rcx + 0x260], xmm1
movups xmmword [rcx + 0x270], xmm2
mov byte [rcx + 0x280], 3
mov eax, dword [rsp + 0x5f0]
mov edx, dword [rsp + 0x5f3]
mov dword [rcx + 0x284], edx
mov dword [rcx + 0x281], eax
mov rax, qword [rsp + 0xa0]
mov qword [rcx + 0x288], rax
mov byte [rcx + 0x290], 0
mov eax, dword [rsp + 0x5e0]
mov edx, dword [rsp + 0x5e3]
mov dword [rcx + 0x294], edx
mov dword [rcx + 0x291], eax
movdqu xmmword [rcx + 0x298], xmm0
mov qword [rcx + 0x2a8], 0
mov rax, qword [rdi + 0x90]
mov qword [rcx + 0x98], rax
mov rax, qword [rcx + 0x90]
mov rax, qword [rax + 0x48]
mov r14, qword [rcx + rax + 0x80]
mov r15, qword [rdi + 0x70]
mov r13, qword [rdi + 0x88]
and r13, r14
shl r13, 5
lea rbx, [r15 + r13]
mov rcx, rbx
call sub.kernel32.dll_AcquireSRWLockExclusive
movzx eax, byte [r15 + r13 + 8]
movzx eax, byte [rdi + 0x98]
test al, al
je 0x1400d4c51
mov rcx, rbx
call fcn.1401168fc
mov rax, qword [r12 + 0x10]
mov rcx, r12
call qword [rax + 0x30]
mov rax, 0xffffffffffffffc0
lock xadd qword [r12], rax
cmp rax, 0x3f
jbe case.0x1400cc60f.1
and rax, 0xffffffffffffffc0
cmp rax, 0x40
mov r15, qword [rsp + 0xf0]
jmp 0x1400d4c2e
mov rdi, qword [rbx]
lock inc qword [rdi]
jle case.0x1400cc60f.1
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400d47fc
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x300
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
and rcx, 0xffffffffffffff80
mov qword [rcx + 0x78], rax
mov qword [rcx + 0x80], 0xcc
mov qword [rcx + 0x88], 0
lea rax, [0x1401cb400]
mov qword [rcx + 0x90], rax
mov qword [rcx + 0x98], 0
mov qword [rcx + 0xa0], rdi
mov qword [rcx + 0xa8], r14
mov rax, qword [rsp + 0xf8]
mov qword [rcx + 0xb0], rax
mov qword [rcx + 0xb8], 2
mov rax, qword [rsp + 0x30]
mov qword [rcx + 0xc0], rax
movaps xmm0, xmmword [rsp + 0x2960]
movaps xmm1, xmmword [rsp + 0x2970]
movaps xmm2, xmmword [rsp + 0x2980]
movaps xmm3, xmmword [rsp + 0x2990]
movups xmmword [rcx + 0xc8], xmm0
movups xmmword [rcx + 0xd8], xmm1
movups xmmword [rcx + 0xe8], xmm2
movups xmmword [rcx + 0xf8], xmm3
movaps xmm0, xmmword [rsp + 0x29a0]
movups xmmword [rcx + 0x108], xmm0
mov rax, qword [rsp + 0x29b0]
mov qword [rcx + 0x118], rax
mov qword [rcx + 0x120], 0
mov rax, qword [rsp + 0xe0]
mov qword [rcx + 0x128], rax
mov rax, qword [rsp + 0x540]
mov qword [rcx + 0x130], rax
mov byte [rcx + 0x138], 0
mov eax, dword [rsp + 0x4f0]
mov edx, dword [rsp + 0x4f3]
mov dword [rcx + 0x13c], edx
mov dword [rcx + 0x139], eax
mov rax, qword [rsp + 0xe8]
mov qword [rcx + 0x140], rax
mov rax, qword [rsp + 0x98]
mov qword [rcx + 0x148], rax
mov rax, qword [rsp + 0x150]
mov qword [rcx + 0x150], rax
mov rax, qword [rsp + 0x130]
mov qword [rcx + 0x158], rax
mov rax, qword [rsp + 0x100]
mov qword [rcx + 0x168], rax
mov rax, qword [rsp + 0x90]
mov qword [rcx + 0x170], rax
mov rax, qword [rsp + 0x68]
mov qword [rcx + 0x178], rax
mov rax, qword [rsp + 0x28]
mov qword [rcx + 0x180], rax
mov rax, qword [rsp + 0x70]
mov qword [rcx + 0x188], rax
mov rax, qword [rsp + 0x80]
mov qword [rcx + 0x190], rax
mov rax, qword [rsp + 0x9b0]
mov qword [rcx + 0x1a8], rax
movaps xmm0, xmmword [rsp + 0x9a0]
movups xmmword [rcx + 0x198], xmm0
mov qword [rcx + 0x1b0], 8
movdqa xmm0, xmmword [rsp + 0x6f0]
movdqu xmmword [rcx + 0x1b8], xmm0
mov r8, qword [rsp + 0x60]
mov qword [rcx + 0x1c8], r8
mov eax, dword [rsp + 0x38]
mov byte [rcx + 0x1d0], al
mov eax, dword [rsp + 0x550]
mov edx, dword [rsp + 0x553]
mov dword [rcx + 0x1d4], edx
mov dword [rcx + 0x1d1], eax
mov eax, dword [rsp + 0x58]
mov byte [rcx + 0x1d8], al
mov byte [rcx + 0x1d9], 0
movzx eax, word [rsp + 0x654]
mov word [rcx + 0x1de], ax
mov eax, dword [rsp + 0x650]
mov dword [rcx + 0x1da], eax
mov rax, qword [rsp + 0x88]
mov qword [rcx + 0x1e0], rax
mov qword [rcx + 0x1e8], r8
mov rax, qword [rsp + 0xa8]
mov qword [rcx + 0x1f0], rax
mov rax, qword [rsp + 0xb0]
mov qword [rcx + 0x1f8], rax
mov rax, qword [rsp + 0x40]
mov qword [rcx + 0x200], rax
mov qword [rcx + 0x208], 1
pxor xmm0, xmm0
movdqa xmmword [rcx + 0x210], xmm0
mov qword [rcx + 0x220], 1
mov word [rcx + 0x228], 0
movzx eax, word [rsp + 0x5d4]
mov word [rcx + 0x22e], ax
mov eax, dword [rsp + 0x5d0]
mov dword [rcx + 0x22a], eax
lea r12, [rcx + 0x80]
mov qword [rcx + 0x230], 2
movaps xmm1, xmmword [rsp + 0x710]
movups xmmword [rcx + 0x238], xmm1
mov qword [rcx + 0x248], rbp
mov qword [rcx + 0x250], r13
mov byte [rcx + 0x258], 0
mov eax, dword [rsp + 0x138]
mov edx, dword [rsp + 0x13b]
mov dword [rcx + 0x25c], edx
mov dword [rcx + 0x259], eax
movdqa xmm1, xmmword [rsp + 0x8a0]
movaps xmm2, xmmword [rsp + 0x8b0]
movdqu xmmword [rcx + 0x260], xmm1
movups xmmword [rcx + 0x270], xmm2
mov byte [rcx + 0x280], 3
mov eax, dword [rsp + 0x5f0]
mov edx, dword [rsp + 0x5f3]
mov dword [rcx + 0x284], edx
mov dword [rcx + 0x281], eax
mov rax, qword [rsp + 0xa0]
mov qword [rcx + 0x288], rax
mov byte [rcx + 0x290], 0
mov eax, dword [rsp + 0x5e0]
mov edx, dword [rsp + 0x5e3]
mov dword [rcx + 0x294], edx
mov dword [rcx + 0x291], eax
movdqu xmmword [rcx + 0x298], xmm0
mov qword [rcx + 0x2a8], 0
mov rax, qword [rdi + 0x80]
mov qword [rcx + 0x98], rax
mov rax, qword [rcx + 0x90]
mov rax, qword [rax + 0x48]
mov r14, qword [rcx + rax + 0x80]
mov r15, qword [rdi + 0x60]
mov rbp, qword [rdi + 0x78]
and rbp, r14
shl rbp, 5
lea r13, [r15 + rbp]
mov rcx, r13
call sub.kernel32.dll_AcquireSRWLockExclusive
movzx eax, byte [r15 + rbp + 8]
movzx eax, byte [rdi + 0x88]
test al, al
je 0x1400d4d0e
mov rcx, r13
call fcn.1401168fc
mov rax, qword [r12 + 0x10]
mov rcx, r12
call qword [rax + 0x30]
mov rax, 0xffffffffffffffc0
lock xadd qword [r12], rax
cmp rax, 0x3f
mov r15, qword [rsp + 0xf0]
jbe case.0x1400cc60f.1
and rax, 0xffffffffffffffc0
cmp rax, 0x40
mov r14, qword [rsp + 0x4e8]
mov rbp, qword [rsp + 0x48]
jne 0x1400d4d95
mov rax, qword [r12 + 0x10]
mov rcx, r12
call qword [rax + 0x10]
jmp 0x1400d4d95
mov rcx, qword [r12 + 0x10]
mov rax, qword [rcx + 0x48]
cmp qword [r12 + rax], r14
jne case.0x1400cc60f.1
mov rax, qword [rbx + 0x10]
cmp rax, r12
mov r15, qword [rsp + 0xf0]
mov rbp, qword [rsp + 0x48]
je case.0x1400cc60f.1
mov rcx, qword [rcx + 0x38]
mov qword [r12 + rcx + 8], rax
mov rcx, qword [r12 + 0x10]
mov rcx, qword [rcx + 0x38]
mov qword [r12 + rcx], 0
test rax, rax
je 0x1400d4ca9
mov rcx, qword [rax + 0x10]
mov rcx, qword [rcx + 0x38]
mov qword [rax + rcx], r12
lea r14, [rdi + 0x10]
mov qword [rbx + 0x10], r12
cmp qword [rbx + 0x18], 0
jne 0x1400d4cbc
mov qword [rbx + 0x18], r12
lock inc qword [rdi + 0x80]
mov rcx, rbx
call fcn.1401168fc
mov byte [rsp + 0x568], 0
mov qword [rsp + 0x7e0], r14
mov qword [rsp + 0x7e8], r12
lea rax, [rsp + 0x568]
mov qword [rsp + 0x7f0], rax
lea rcx, [rsp + 0x7e0]
call fcn.1400fab10
mov r14, qword [rsp + 0x4e8]
jmp 0x1400d4d95
mov rcx, qword [r12 + 0x10]
mov rax, qword [rcx + 0x48]
cmp qword [r12 + rax], r14
mov r15, qword [rsp + 0xf0]
jne case.0x1400cc60f.1
mov rax, qword [r13 + 0x10]
cmp rax, r12
mov r14, qword [rsp + 0x4e8]
mov rbp, qword [rsp + 0x48]
je case.0x1400cc60f.1
mov rcx, qword [rcx + 0x38]
mov qword [r12 + rcx + 8], rax
mov rcx, qword [r12 + 0x10]
mov rcx, qword [rcx + 0x38]
mov qword [r12 + rcx], 0
test rax, rax
je 0x1400d4d6e
mov rcx, qword [rax + 0x10]
mov rcx, qword [rcx + 0x38]
mov qword [rax + rcx], r12
mov qword [r13 + 0x10], r12
cmp qword [r13 + 0x18], 0
jne 0x1400d4d7d
mov qword [r13 + 0x18], r12
lock inc qword [rdi + 0x70]
mov rcx, r13
call fcn.1401168fc
mov rcx, rbx
mov rdx, r12
call fcn.140100450
mov rax, qword [rsp + 0xd8]
dec qword [rax]
mov ecx, 0x84
mov eax, 0xcc
lock cmpxchg qword [r12], rcx
je 0x1400d4dbd
mov rax, qword [r12 + 0x10]
mov rcx, r12
call qword [rax + 0x20]
mov qword [rsi + 0x130], rbp
movaps xmm0, xmmword [rsp + 0x980]
movups xmmword [rsi + 0x138], xmm0
lea rdi, [rsi + 0x148]
mov byte [rsi + 0x148], 0
mov r12, qword [rsp + 0x78]
mov rax, qword [rsi + 0x140]
mov qword [r14 + 0x10], rax
movdqu xmm0, xmmword [rsi + 0x130]
movdqu xmmword [r14], xmm0
cmp byte [r14 + 0x10], 2
je case.0x1400cc60f.1
mov rcx, r14
mov rdx, r12
call fcn.140110810
test al, al
je 0x1400d4e7c
movzx eax, al
cmp eax, 2
je 0x1400d4eb8
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400d4e4f
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x38
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov rbx, rax
mov qword [rax], 0
mov byte [rax + 0x29], 2
mov byte [rax + 0x30], 5
mov bpl, 2
jmp 0x1400d4ec7
movzx ebp, byte [r14 + 0x10]
mov byte [r14 + 0x10], 2
cmp bpl, 2
je case.0x1400cc60f.1
mov rbx, qword [r14]
mov rax, qword [r14 + 8]
mov qword [rsp + 0x78], rax
mov eax, dword [r14 + 0x14]
mov dword [rsp + 0x19d3], eax
mov eax, dword [r14 + 0x11]
mov dword [rsp + 0x19d0], eax
cmp bpl, 3
jne 0x1400d4ec7
mov byte [rdi], 3
mov byte [r15 + 0x70], 3
mov al, 4
jmp 0x1400d5a16
mov eax, dword [rsp + 0x19d0]
mov ecx, dword [rsp + 0x19d3]
mov dword [rsp + 0xa43], ecx
mov dword [rsp + 0xa40], eax
cmp byte [rsi + 0x128], 2
je 0x1400d4f8a
mov rax, qword [r14]
lock dec qword [rax]
jne 0x1400d4f01
mov rcx, qword [r14]
call fcn.1400a2ed0
mov rax, qword [rsi + 0x120]
lock dec qword [rax + 0x1d0]
jne 0x1400d4f71
mov r14, qword [rsi + 0x120]
lea rcx, [r14 + 0x80]
call fcn.140062180
mov rax, qword [r14 + 0x110]
nop dword [rax]
mov rcx, rax
or rcx, 2
lock cmpxchg qword [r14 + 0x110], rcx
jne 0x1400d4f30
test rax, rax
jne 0x1400d4f71
mov rax, qword [r14 + 0x100]
mov rcx, qword [r14 + 0x108]
mov qword [r14 + 0x100], 0
lock and qword [r14 + 0x110], 0xfffffffffffffffd
test rax, rax
je 0x1400d4f71
call qword [rax + 8]
mov rax, qword [rsi + 0x120]
lock dec qword [rax]
jne 0x1400d4f8a
mov rcx, qword [rsi + 0x120]
call fcn.1400a29e0
mov eax, dword [rsp + 0xa40]
mov ecx, dword [rsp + 0xa43]
mov dword [rsp + 0x2963], ecx
mov dword [rsp + 0x2960], eax
mov byte [rdi], 1
mov eax, dword [rsp + 0x2960]
mov ecx, dword [rsp + 0x2963]
mov dword [rsp + 0x9a0], eax
mov dword [rsp + 0x9a3], ecx
cmp bpl, 2
jne 0x1400d5119
mov rbp, rbx
mov rax, qword [rsi + 0x68]
test rax, rax
je 0x1400d4fee
lock dec qword [rax]
jne 0x1400d4fee
mov rcx, qword [rsi + 0x68]
mov rdx, qword [rsi + 0x70]
call fcn.1400a2110
mov rax, qword [rsi + 0xf8]
test rax, rax
je 0x1400d5013
lock dec qword [rax]
jne 0x1400d5013
mov rcx, qword [rsi + 0xf8]
mov rdx, qword [rsi + 0x100]
call fcn.1400a2110
mov rax, qword [rsi + 0x108]
test rax, rax
je 0x1400d5031
lock dec qword [rax]
jne 0x1400d5031
lea rcx, [rsi + 0x108]
call fcn.1400a16e0
lea rcx, [rsi + 0xc0]
call fcn.14006ed20
cmp byte [rsi + 0xc0], 2
jb 0x1400d5070
mov rbx, qword [rsi + 0xc8]
lea rcx, [rbx + 0x18]
mov rax, qword [rbx]
mov rdx, qword [rbx + 8]
mov r8, qword [rbx + 0x10]
call qword [rax + 0x10]
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
lea rcx, [rsi + 0xe8]
mov rax, qword [rsi + 0xd0]
mov rdx, qword [rsi + 0xd8]
mov r8, qword [rsi + 0xe0]
call qword [rax + 0x10]
mov rax, qword [rsi + 0xf0]
test rax, rax
je 0x1400d50bd
cmp rax, 0xffffffffffffffff
je 0x1400d50bd
lock dec qword [rax + 8]
jne 0x1400d50bd
mov r8, qword [rsi + 0xf0]
mov rcx, qword [0x140206128]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rbx, qword [rsi + 0xa0]
test rbx, rbx
je 0x1400d50f8
mov rdi, qword [rsi + 0xa8]
mov rcx, rbx
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x1400d50f8
cmp qword [rdi + 0x10], 0x11
jb 0x1400d50e7
mov rbx, qword [rbx - 8]
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
mov rax, qword [rsi + 0xb0]
lock dec qword [rax]
mov dil, 2
jne 0x1400d5114
mov rcx, qword [rsi + 0xb0]
call fcn.1400391f0
jmp 0x1400d597b
mov r14b, 2
cmp byte [rsi + 0x110], 0
jne 0x1400d5144
mov eax, dword [rsp + 0x9a0]
mov ecx, dword [rsp + 0x9a3]
mov dword [rsp + 0x7e3], ecx
mov dword [rsp + 0x7e0], eax
mov r14d, ebp
lea rax, [rsi + 0x108]
mov qword [rsp + 0xf8], rax
mov rax, qword [rsi + 0xf0]
mov qword [rsp + 0x1a00], rax
movdqu xmm0, xmmword [rsi + 0xc0]
movdqu xmm1, xmmword [rsi + 0xd0]
movups xmm2, xmmword [rsi + 0xe0]
movaps xmmword [rsp + 0x19f0], xmm2
movdqa xmmword [rsp + 0x19e0], xmm1
movdqa xmmword [rsp + 0x19d0], xmm0
mov r9, qword [rsi + 0xa0]
mov r10, qword [rsi + 0xa8]
mov rdi, qword [rsi + 0xb0]
movzx eax, byte [rsi + 0xb8]
mov byte [rsp + 0x48], al
movzx r8d, byte [rsi + 0xb9]
lea rax, [rsi + 0xba]
movzx ecx, word [rsi + 0xbe]
mov word [rsp + 0x714], cx
mov ecx, dword [rsi + 0xba]
mov dword [rsp + 0x710], ecx
mov rbp, qword [rsi + 0x108]
test rbp, rbp
mov qword [rsp + 0x38], rdi
mov byte [rsp + 0x58], r8b
je 0x1400d521b
cmp r14b, 2
jne 0x1400d5254
test r9, r9
je 0x1400d5287
mov r14, r9
mov rcx, r9
mov r12, r10
call qword [r10 + 0x18]
movzx r8d, byte [rsp + 0x58]
mov r13, rax
jmp 0x1400d5290
mov ecx, dword [rsp + 0x7e0]
mov edx, dword [rsp + 0x7e3]
mov dword [rsp + 0x2963], edx
mov dword [rsp + 0x2960], ecx
mov ecx, dword [rax]
mov dword [rsp + 0x840], ecx
movzx eax, word [rax + 4]
mov word [rsp + 0x844], ax
xor r12d, r12d
jmp 0x1400d5620
movzx ecx, word [rax + 4]
mov word [rsp + 0x574], cx
mov eax, dword [rax]
mov dword [rsp + 0x570], eax
mov eax, dword [rsp + 0x7e0]
mov ecx, dword [rsp + 0x7e3]
mov dword [rsp + 0x2ea0], eax
mov dword [rsp + 0x2ea3], ecx
jmp 0x1400d52ee
mov r12, r10
mov r14, r9
xor r13d, r13d
mov rax, qword [rsp + 0x78]
lock inc qword [rdi]
jle case.0x1400cc60f.1
lock inc qword [rbx]
movzx r11d, byte [rsp + 0x48]
jle case.0x1400cc60f.1
lock inc qword [rax + 0x1d0]
lock inc qword [rax]
jle case.0x1400cc60f.1
mov r9, r14
mov r10, r12
movzx eax, word [rsp + 0x714]
mov word [rsp + 0x574], ax
mov eax, dword [rsp + 0x710]
mov dword [rsp + 0x570], eax
mov r14b, 2
cmp r8b, 2
jne 0x1400d5361
mov eax, dword [rsp + 0x2ea0]
mov ecx, dword [rsp + 0x2ea3]
mov dword [rsp + 0x2963], ecx
mov dword [rsp + 0x2960], eax
movzx eax, word [rsp + 0x574]
mov word [rsp + 0x844], ax
mov eax, dword [rsp + 0x570]
mov dword [rsp + 0x840], eax
mov rax, qword [rsp + 0xf8]
mov r12, qword [rax]
jmp 0x1400d5337
pause
mov rax, qword [r12 + 8]
nop dword [rax]
cmp rax, 0xffffffffffffffff
je 0x1400d5335
test rax, rax
js case.0x1400cc60f.1
lea rcx, [rax + 1]
lock cmpxchg qword [r12 + 8], rcx
jne 0x1400d5340
jmp 0x1400d5620
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0xa40], rbx
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0xa48], rax
mov byte [rsp + 0xa50], 2
mov eax, dword [rsp + 0x2ea0]
mov ecx, dword [rsp + 0x2ea3]
mov dword [rsp + 0xa51], eax
mov dword [rsp + 0xa54], ecx
mov qword [rsp + 0xa58], r9
mov qword [rsp + 0xa60], r10
mov qword [rsp + 0xa68], rdi
mov byte [rsp + 0xa70], r11b
mov byte [rsp + 0xa71], r8b
mov eax, dword [rsp + 0x570]
mov dword [rsp + 0xa72], eax
movzx eax, word [rsp + 0x574]
mov word [rsp + 0xa76], ax
lea r12, [rbp + 0x10]
mov rcx, r12
call sub.kernel32.dll_AcquireSRWLockExclusive
movzx eax, byte [rbp + 0x18]
test al, al
jne case.0x1400cc60f.1
movzx eax, byte [rsp + 0x19d0]
test rax, rax
mov qword [rsp + 0x28], r13
je 0x1400d5426
cmp eax, 1
jne 0x1400d5430
mov r14, r15
mov al, 1
movzx ecx, byte [rsp + 0x19d1]
jmp 0x1400d54b8
mov r14, r15
xor eax, eax
jmp 0x1400d54b8
mov rdi, qword [rsp + 0x19d8]
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400d5463
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x20
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov r13, rax
mov r14, r15
lea rdx, [rdi + 0x18]
mov rax, qword [rdi]
mov r8, qword [rdi + 8]
mov r9, qword [rdi + 0x10]
lea rcx, [rsp + 0x2960]
call qword [rax]
movdqu xmm0, xmmword [rsp + 0x2960]
movdqu xmm1, xmmword [rsp + 0x2970]
movdqu xmmword [r13 + 0x10], xmm1
movdqu xmmword [r13], xmm0
mov al, 2
lea r15, [rbp + 0x20]
mov byte [rsp + 0x2960], al
mov byte [rsp + 0x2961], cl
mov qword [rsp + 0x2968], r13
lea rcx, [rsp + 0x2970]
lea rdx, [rsp + 0x19f8]
mov rax, qword [rsp + 0x19e0]
mov r8, qword [rsp + 0x19e8]
mov r9, qword [rsp + 0x19f0]
call qword [rax]
lea rdx, [rsp + 0x2960]
lea r8, [rsp + 0xa40]
mov rcx, r15
mov r9, qword [rsp + 0xf8]
call fcn.14006cf80
lea rcx, [rbp + 0x30]
lea r15, [rsp + 0x19d0]
mov rdx, r15
call fcn.14005d030
add rbp, 0x90
lea rcx, [rsp + 0x2960]
mov rdx, rbp
mov r8, r15
call fcn.14005d290
mov rdi, qword [rsp + 0x2960]
movabs rax, 0x8000000000000001
dec rax
cmp rdi, rax
je 0x1400d558c
lea rcx, [rsp + 0x2960]
call fcn.140094c70
test rdi, rdi
je 0x1400d558c
mov r8, qword [rsp + 0x2968]
mov rcx, qword [0x140206128]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rax, qword [rsp + 0x1a00]
test rax, rax
mov r15, r14
mov rdi, qword [rsp + 0x28]
je 0x1400d55c4
cmp rax, 0xffffffffffffffff
je 0x1400d55c4
lock dec qword [rax + 8]
jne 0x1400d55c4
mov r8, qword [rsp + 0x1a00]
mov rcx, qword [0x140206128]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov qword [rsp + 0x1a00], 0
mov eax, dword [rsp + 0x8a0]
mov ecx, dword [rsp + 0x8a3]
mov dword [rsp + 0x2960], eax
mov dword [rsp + 0x2963], ecx
mov eax, dword [rsp + 0x6f0]
mov dword [rsp + 0x840], eax
movzx eax, word [rsp + 0x6f4]
mov word [rsp + 0x844], ax
mov rcx, r12
call fcn.1401168fc
mov r14b, 2
xor r12d, r12d
mov r9, rdi
mov r10, qword [rsp + 0x30]
mov eax, dword [rsp + 0x2960]
mov ecx, dword [rsp + 0x2963]
mov dword [rsp + 0x8a3], ecx
mov dword [rsp + 0x8a0], eax
mov eax, dword [rsp + 0x840]
mov dword [rsp + 0x570], eax
movzx eax, word [rsp + 0x844]
mov word [rsp + 0x574], ax
movzx eax, byte [rsp + 0x19d0]
test rax, rax
mov qword [rsp + 0xf0], r15
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x28], r10
je 0x1400d568d
cmp eax, 1
jne 0x1400d5694
mov al, 1
movzx ecx, byte [rsp + 0x19d1]
jmp 0x1400d5718
xor eax, eax
jmp 0x1400d5718
mov rdi, qword [rsp + 0x19d8]
movzx eax, byte [0x140206138]
mov rcx, qword [0x140206128]
test rcx, rcx
jne 0x1400d56c7
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je case.0x1400cc60f.1
mov rcx, rax
mov qword [0x140206128], rax
mov r8d, 0x20
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je case.0x1400cc60f.1
mov r15, rax
lea rdx, [rdi + 0x18]
mov rax, qword [rdi]
mov r8, qword [rdi + 8]
mov r9, qword [rdi + 0x10]
lea rcx, [rsp + 0x2960]
call qword [rax]
movdqu xmm0, xmmword [rsp + 0x2960]
movdqu xmm1, xmmword [rsp + 0x2970]
movdqu xmmword [r15 + 0x10], xmm1
movdqu xmmword [r15], xmm0
mov al, 2
mov byte [rsp + 0x2960], al
mov byte [rsp + 0x2961], cl
mov qword [rsp + 0x2968], r15
lea rcx, [rsp + 0x2970]
lea r13, [rsp + 0x19f8]
mov rax, qword [rsp + 0x19e0]
mov r8, qword [rsp + 0x19e8]
mov r9, qword [rsp + 0x19f0]
mov rdx, r13
call qword [rax]
mov eax, dword [rsp + 0x8a0]
mov ecx, dword [rsp + 0x8a3]
mov dword [rsp + 0x843], ecx
mov dword [rsp + 0x840], eax
mov eax, dword [rsp + 0x570]
mov dword [rsp + 0x6f0], eax
movzx eax, word [rsp + 0x574]
mov word [rsp + 0x6f4], ax
mov rbp, qword [rsp + 0x2960]
movups xmm0, xmmword [rsp + 0x2968]
movaps xmmword [rsp + 0x2ea0], xmm0
movups xmm0, xmmword [rsp + 0x2978]
movaps xmmword [rsp + 0x2eb0], xmm0
mov rax, qword [rsp + 0x2988]
mov qword [rsp + 0x2ec0], rax
lea rcx, [rsp + 0x19d0]
call fcn.14006ed20
cmp byte [rsp + 0x19d0], 2
jb 0x1400d5816
mov rdi, rbp
mov rbp, qword [rsp + 0x19d8]
lea rcx, [rbp + 0x18]
mov rax, qword [rbp]
mov rdx, qword [rbp + 8]
mov r8, qword [rbp + 0x10]
call qword [rax + 0x10]
mov rcx, qword [0x140206128]
xor edx, edx
mov r8, rbp
mov rbp, rdi
call sub.kernel32.dll_HeapFree
mov rax, qword [rsp + 0x19e0]
mov rdx, qword [rsp + 0x19e8]
mov r8, qword [rsp + 0x19f0]
mov rcx, r13
call qword [rax + 0x10]
mov rax, qword [rsp + 0x1a00]
test rax, rax
mov r15, qword [rsp + 0xf0]
je 0x1400d586c
cmp rax, 0xffffffffffffffff
je 0x1400d586c
lock dec qword [rax + 8]
jne 0x1400d586c
mov r8, qword [rsp + 0x1a00]
mov rcx, qword [0x140206128]
xor edx, edx
call sub.kernel32.dll_HeapFree
movdqa xmm0, xmmword [rsp + 0x2ea0]
movdqa xmm1, xmmword [rsp + 0x2eb0]
movdqa xmmword [rsp + 0xa40], xmm0
movdqa xmmword [rsp + 0xa50], xmm1
mov rax, qword [rsp + 0x2ec0]
mov qword [rsp + 0xa60], rax
mov eax, dword [rsp + 0x840]
mov ecx, dword [rsp + 0x843]
mov dword [rsp + 0x19d0], eax
mov dword [rsp + 0x19d3], ecx
mov eax, dword [rsp + 0x6f0]
mov dword [rsp + 0x570], eax
movzx eax, word [rsp + 0x6f4]
mov word [rsp + 0x574], ax
mov eax, dword [rsp + 0x8a0]
mov ecx, dword [rsp + 0x8a3]
mov dword [rsp + 0x2963], ecx
mov dword [rsp + 0x2960], eax
mov rax, qword [rsi + 0x68]
test rax, rax
mov r13, qword [rsp + 0x38]
je 0x1400d5917
lock dec qword [rax]
jne 0x1400d5917
mov rcx, qword [rsi + 0x68]
mov rdx, qword [rsi + 0x70]
call fcn.1400a2110
mov rax, qword [rsi + 0xf8]
test rax, rax
je 0x1400d593c
lock dec qword [rax]
jne 0x1400d593c
mov rcx, qword [rsi + 0xf8]
mov rdx, qword [rsi + 0x100]
call fcn.1400a2110
mov rax, qword [rsp + 0xf8]
mov rax, qword [rax]
test rax, rax
je 0x1400d595f
lock dec qword [rax]
jne 0x1400d595f
mov rcx, qword [rsp + 0xf8]
call fcn.1400a16e0
xor edi, edi
mov rcx, qword [rsp + 0x78]
movzx edx, byte [rsp + 0x48]
movzx r8d, byte [rsp + 0x58]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x28]
mov qword [r15], rbp
movdqa xmm0, xmmword [rsp + 0xa40]
movdqa xmm1, xmmword [rsp + 0xa50]
movdqu xmmword [r15 + 8], xmm0
movdqu xmmword [r15 + 0x18], xmm1
mov rax, qword [rsp + 0xa60]
mov qword [r15 + 0x28], rax
mov qword [r15 + 0x30], rbx
mov qword [r15 + 0x38], rcx
mov byte [r15 + 0x40], r14b
mov eax, dword [rsp + 0x19d0]
mov ecx, dword [rsp + 0x19d3]
mov dword [r15 + 0x41], eax
mov dword [r15 + 0x44], ecx
mov qword [r15 + 0x48], r9
mov qword [r15 + 0x50], r10
mov qword [r15 + 0x58], r13
mov byte [r15 + 0x60], dl
mov byte [r15 + 0x61], r8b
mov eax, dword [rsp + 0x570]
mov dword [r15 + 0x62], eax
movzx eax, word [rsp + 0x574]
mov word [r15 + 0x66], ax
mov qword [r15 + 0x68], r12
mov byte [r15 + 0x70], dil
mov eax, dword [rsp + 0x2960]
mov ecx, dword [rsp + 0x2963]
mov dword [r15 + 0x74], ecx
je 0x1400d5a52
mov dword [rdi + 0x71], eax
je 0x1400d5a52
mov dword [rdi + 0x71], eax
mov al, 1
mov byte [rsi + 0x111], al
movaps xmm6, xmmword [rsp + 0x33c0]
and al, 0xc0
xor eax, dword [rax]
add byte [rax - 0x7f], cl
invalid
fdiv dword [rbx]
add byte [rax], al
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
and al, 0xc0
xor eax, dword [rax]
add byte [rax - 0x7f], cl
invalid
call sub.kernel32.dll_GetLastError
ud2
mov eax, dword [rsp + 0x19d0]
and eax, 6
cmp eax, 4
je case.0x1400cc60f.1
lea rcx, [rsp + 0x19d0]
rcr byte [rcx], 1
add byte [rax], al
call fcn.14009bf70
ud2
mov rsi, rdx
mov eax, dword [rsp + 0xa40]
and eax, 6
cmp eax, 4
je 0x1400d5a7c
lea rcx, [rsp + 0xa40]
call fcn.14009bf70
dec qword [rsi]
ud2
lea rcx, [rsp + 0x19d0]
call fcn.14009ee30
ud2
lea rcx, [rsp + 0xa40]
call fcn.14009ee30
dec qword [rbx]
ud2