Function at 0x140192a40
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xff8
movaps xmmword [rsp + 0xfe0], xmm13
movaps xmmword [rsp + 0xfd0], xmm12
movdqa xmmword [rsp + 0xfc0], xmm11
movdqa xmmword [rsp + 0xfb0], xmm10
movdqa xmmword [rsp + 0xfa0], xmm9
movdqa xmmword [rsp + 0xf90], xmm8
movdqa xmmword [rsp + 0xf80], xmm7
movaps xmmword [rsp + 0xf70], xmm6
mov rbx, rdx
mov rdi, rcx
mov rax, qword [rcx]
cmp rax, 2
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x60], rdx
je 0x140195686
cmp eax, 3
je 0x140199831
xorps xmm6, xmm6
movdqa xmm7, xmmword [0x1401fd5d0]
movdqa xmm8, xmmword [str.PRI__HTTP_2.0_r_n]
lea r14, [rdi + 0x1b0]
lea rax, [rdi + 0x180]
mov qword [rsp + 0x88], rax
lea rax, [rdi + 0x1d1]
mov qword [rsp + 0x80], rax
lea rax, [rdi + 0xd8]
mov qword [rsp + 0xb0], rax
lea rax, [rdi + 0x10]
mov qword [rsp + 0x78], rax
lea rax, [rdi + 0xa8]
mov qword [rsp + 0x568], rax
lea rax, [rdi + 0x158]
mov qword [rsp + 0x248], rax
lea rax, [rdi + 0x128]
mov qword [rsp + 0xb8], rax
lea rax, [rdi + 0x108]
mov qword [rsp + 0x240], rax
lea rax, [rdi + 0x98]
lea rcx, [rdi + 0xa1]
mov qword [rsp + 0xe8], rcx
xor ecx, ecx
mov qword [rsp + 0x3d0], rax
jmp 0x140192b9b
mov rcx, qword [rsp + 0x68]
inc ecx
cmp byte [rdi + 0xd1], 0
mov byte [rdi + 0xd1], 0
je 0x14019926d
cmp ecx, 0x10
je 0x14019925b
mov qword [rsp + 0x68], rcx
cmp byte [rdi + 0x1e0], 0
jne 0x140193f82
mov rbp, qword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
jmp 0x140192bf7
lea rcx, [rsp + 0x260]
call fcn.140069d90
lea rcx, [rsp + 0x420]
call fcn.1401605c0
cmp byte [rdi + 0x1e0], 0
jne 0x140193f78
mov rax, qword [rdi + 0x70]
test rax, rax
jne 0x140192c0e
cmp qword [rdi + 0x90], 2
jne 0x140192d9a
movzx ecx, byte [rdi + 0x1d0]
mov byte [rdi + 0x1d0], 3
cmp cl, 3
je 0x140193f24
movdqu xmm0, xmmword [r14]
movdqu xmm1, xmmword [r14 + 0x10]
movdqa xmmword [rsp + 0x430], xmm1
movdqa xmmword [rsp + 0x420], xmm0
mov byte [rsp + 0x440], cl
mov rdx, qword [rsp + 0x80]
mov ecx, dword [rdx]
mov edx, dword [rdx + 3]
lea r8, [rsp + 0x441]
mov dword [r8 + 3], edx
mov dword [r8], ecx
dec rax
cmp rax, 1
ja 0x1401932bc
lea rcx, [rsp + 0x420]
mov rdx, rbx
call fcn.140063fc0
test rax, rax
jne 0x140193f3e
test rdx, rdx
je 0x1401930b7
mov qword [rsp + 0x260], rdx
cmp dword [rdi + 0x70], 1
jne 0x140192caa
mov qword [rdi + 0x70], 2
lea rcx, [rsp + 0xf0]
mov rdx, rdi
mov r8, rbx
call fcn.1401a03a0
mov rax, qword [rsp + 0xf0]
cmp rax, 2
je 0x140192d70
test rax, rax
je 0x140192d70
mov rax, qword [rsp + 0xf8]
test rax, rax
je 0x140192d02
mov rdx, qword [rsp + 0x100]
mov r8, qword [rsp + 0x108]
lea rcx, [rsp + 0x110]
call qword [rax + 0x10]
jmp 0x140192d70
mov r15, qword [rsp + 0x100]
mov eax, r15d
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x140192d70
test rax, rax
je 0x140192d70
mov rbx, qword [r15 - 1]
mov rsi, qword [r15 + 7]
mov rcx, rbx
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x140192d4f
cmp qword [rsi + 0x10], 0x11
jb 0x140192d3e
mov rbx, qword [rbx - 8]
mov rcx, qword [0x1402d9150]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
dec r15
mov rcx, qword [0x1402d9150]
xor edx, edx
mov r8, r15
call sub.kernel32.dll_HeapFree
mov rbx, qword [rsp + 0x60]
nop dword [rax + rax]
mov rax, qword [rdi + 0x70]
test rax, rax
je 0x140192bd0
cmp eax, 3
je 0x140192bd0
mov qword [rdi + 0x70], 4
mov byte [rdi + 0xd2], 2
jmp 0x140192bd0
mov rax, qword [rsp + 0x88]
cmp dword [rax], 2
je 0x14019315d
mov rcx, qword [rsp + 0x88]
mov rdx, rbx
call fcn.140191cb0
test al, al
je 0x14019315d
movd xmm9, dword [rdi + 0xc9]
movzx eax, byte [rdi + 0xcd]
mov byte [rsp + 0x48], al
movzx r15d, byte [rdi + 0xce]
movzx r12d, byte [rdi + 0xd0]
nop word [rax + rax]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x5b8], rax
mov rax, qword [rsp + 0x568]
mov qword [rsp + 0x5c0], rax
movd dword [rsp + 0x5c8], xmm9
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x5cc], al
mov byte [rsp + 0x5cd], r15b
mov byte [rsp + 0x5ce], r12b
cmp qword [rdi + 0x160], 0
je 0x140192f5b
mov qword [rsp + 0x260], 2
mov qword [rsp + 0x280], 0
lea rcx, [rsp + 0xf0]
mov rdx, qword [rsp + 0x248]
lea r8, [rsp + 0x5b8]
call fcn.14005c750
mov rdx, qword [rsp + 0x260]
cmp rdx, 2
je 0x140192f40
mov rcx, qword [rsp + 0x268]
mov rax, qword [rsp + 0x270]
test rdx, rdx
je 0x140192eaf
mov rdx, qword [rax + 0x10]
dec rdx
and rdx, 0xfffffffffffffff0
add rcx, rdx
add rcx, 0x10
lea rdx, [rsp + 0x278]
call qword [rax + 0x68]
mov rdx, qword [rsp + 0x260]
cmp rdx, 2
je 0x140192f40
mov rcx, qword [rsp + 0x268]
mov rax, qword [rsp + 0x270]
test rdx, rdx
je 0x140192eef
mov rdx, qword [rax + 0x10]
dec rdx
and rdx, 0xfffffffffffffff0
add rcx, rdx
add rcx, 0x10
mov rdx, qword [rsp + 0x278]
call qword [rax + pe_nt_image_headers64]
mov rax, qword [rsp + 0x260]
cmp rax, 2
je 0x140192f40
test rax, rax
je 0x140192f40
mov rax, qword [rsp + 0x268]
lock dec qword [rax]
jne 0x140192f40
mov rcx, qword [rsp + 0x268]
mov rdx, qword [rsp + 0x270]
call fcn.14014cf70
nop word cs:[rax + rax]
mov rdi, qword [rsp + 0xf0]
movzx ebx, byte [rsp + 0xf8]
cmp rdi, 4
jne 0x140192f74
jmp 0x140193432
mov qword [rsp + 0xf0], 3
mov edi, 3
movzx ebx, byte [rsp + 0xf8]
movzx r8d, byte [rsp + 0xff]
movzx edx, word [rsp + 0xfd]
mov eax, dword [rsp + 0xf9]
lea r10, [rsp + 0x128]
mov rcx, qword [r10 - 8]
mov qword [rsp + 0x440], rcx
movups xmm0, xmmword [r10 - 0x28]
movdqu xmm1, xmmword [r10 - 0x18]
movdqa xmmword [rsp + 0x430], xmm1
movaps xmmword [rsp + 0x420], xmm0
mov rsi, qword [rsp + 0x128]
movups xmm0, xmmword [r10 + 8]
movaps xmmword [rsp + 0x990], xmm0
mov r11, qword [rsp + 0x140]
movdqu xmm0, xmmword [r10 + 0x20]
movdqa xmmword [rsp + 0x6b0], xmm0
movzx ecx, word [r10 + 0x30]
mov word [rsp + 0x6c0], cx
movzx ecx, byte [rsp + 0x15a]
movzx r9d, byte [r10 + 0x37]
mov byte [rsp + 0x574], r9b
mov r9d, dword [r10 + 0x33]
mov dword [rsp + 0x570], r9d
cmp rdi, 3
jne 0x1401932eb
xor eax, eax
mov rdi, qword [rsp + 0x40]
cmp byte [rdi + 0xd8], 0
sete al
mov rcx, qword [rdi + 0x160]
cmp rcx, qword [rdi + rax*8 + 0xe0]
jae 0x1401933d0
lea rcx, [rsp + 0xf0]
mov rdx, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0x60]
mov r8, rbx
call fcn.1401728d0
mov rax, qword [rsp + 0xf0]
cmp rax, 2
je 0x1401933f4
mov rsi, qword [rsp + 0xf8]
test rax, rax
jne 0x14019340a
test rsi, rsi
jne 0x140192df0
movzx eax, byte [0x1402d9160]
mov rax, qword [0x1402d9150]
test rax, rax
je 0x1401936ee
movzx r15d, byte [rsp + 0x3e]
movzx r12d, byte [rsp + 0x70]
jmp 0x14019370f
lea rcx, [rsp + 0x260]
mov rdx, rdi
mov r8, rbx
call fcn.1401a03a0
mov rax, qword [rsp + 0x260]
test rax, rax
je 0x1401932bc
cmp eax, 1
jne 0x140193f3e
cmp qword [rsp + 0x268], 0
je 0x140193183
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x430]
lea r8, [rsp + 0x268]
call fcn.140066200
cmp byte [rsp + 0x110], 2
jne 0x14019324a
cmp byte [rdi + 0x1d0], 3
je 0x14019312f
mov rcx, r14
call fcn.1401605c0
mov rax, qword [rsp + 0x440]
mov qword [r14 + 0x20], rax
movdqa xmm0, xmmword [rsp + 0x420]
movdqa xmm1, xmmword [rsp + 0x430]
movdqu xmmword [r14 + 0x10], xmm1
movdqu xmmword [r14], xmm0
jmp 0x1401932c9
mov byte [rdi + 0x1e0], 1
mov qword [rdi + 0x70], 4
mov qword [rdi + 0x90], 5
mov byte [rdi + 0xd2], 2
jmp 0x1401932c9
mov rsi, qword [rsp + 0x270]
movzx eax, byte [0x1402d9160]
mov rax, qword [0x1402d9150]
test rax, rax
jne 0x1401931b3
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140199831
mov qword [0x1402d9150], rax
mov r8d, 0x38
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov r15, rax
mov qword [rax], 0
mov byte [rax + 0x29], 2
mov byte [rax + 0x30], 8
movzx eax, byte [0x1402d9160]
mov rax, qword [0x1402d9150]
test rax, rax
jne 0x140193206
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140199831
mov qword [0x1402d9150], rax
mov r8d, 8
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov qword [rax], rsi
mov qword [r15], rax
lea rax, [0x1402a0310]
mov qword [r15 + 8], rax
mov rcx, qword [rsp + 0x430]
movzx edx, byte [rsp + 0x440]
mov r8, r15
call fcn.1400640f0
jmp 0x1401932bc
mov rax, qword [rsp + 0xf0]
test rax, rax
je 0x140199831
mov rdx, qword [rsp + 0xf8]
lea rcx, [rsp + 0x128]
movdqu xmm0, xmmword [rcx - 0x28]
lea rcx, [rsp + 0xa28]
movdqu xmmword [rcx - 8], xmm0
mov qword [rsp + 0xa10], rax
mov qword [rsp + 0xa18], rdx
mov rcx, qword [rdi + 0x70]
dec rcx
cmp rcx, 2
jae 0x1401932a9
mov qword [rdi + 0x70], 4
mov byte [rdi + 0xd2], 2
mov r8, qword [rsp + 0xa20]
lea rcx, [rsp + 0xa28]
call qword [rax + 0x10]
lea rcx, [rsp + 0x420]
call fcn.1401605c0
mov rax, rbp
cmp byte [rdi + 0x1e0], 0
mov qword [rsp + 0x50], rax
mov rbp, rax
mov qword [rsp + 0x48], r13
je 0x140192bf7
jmp 0x140193f82
shl r8d, 0x10
or edx, r8d
shl rdx, 0x20
or rax, rdx
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0xa8], rdx
movzx edx, byte [rsp + 0x168]
mov byte [rsp + 0xc0], dl
movzx edx, byte [rsp + 0x169]
mov byte [rsp + 0x98], dl
movzx r15d, byte [rsp + 0x16a]
mov rdx, qword [rsp + 0x440]
mov qword [rsp + 0xa30], rdx
movaps xmm0, xmmword [rsp + 0x420]
movdqa xmm1, xmmword [rsp + 0x430]
movdqa xmmword [rsp + 0xa20], xmm1
movaps xmmword [rsp + 0xa10], xmm0
movaps xmm0, xmmword [rsp + 0x990]
movaps xmmword [rsp + 0x7a0], xmm0
movdqa xmm0, xmmword [rsp + 0x6b0]
movdqa xmmword [rsp + 0xb10], xmm0
movzx edx, word [rsp + 0x6c0]
mov word [rsp + 0xb20], dx
mov edx, dword [rsp + 0x570]
mov dword [rsp + 0x780], edx
movzx edx, byte [rsp + 0x574]
mov byte [rsp + 0x784], dl
shl rax, 8
movzx edx, bl
or rdx, rax
mov qword [rsp + 0x90], rdx
mov r12d, ecx
mov rbx, qword [rsp + 0x60]
jmp 0x140193568
movzx eax, byte [0x1402d9160]
mov rax, qword [0x1402d9150]
test rax, rax
je 0x14019345f
movzx r15d, byte [rsp + 0x3e]
movzx r12d, byte [rsp + 0x70]
jmp 0x140193480
mov edi, 4
movzx r15d, byte [rsp + 0x3e]
movzx r12d, byte [rsp + 0x70]
jmp 0x140193558
movzx eax, byte [0x1402d9160]
mov rax, qword [0x1402d9150]
test rax, rax
je 0x1401934af
movzx r15d, byte [rsp + 0x3e]
movzx r12d, byte [rsp + 0x70]
jmp 0x1401934d0
movzx eax, byte [0x1402d9160]
mov rax, qword [0x1402d9150]
test rax, rax
je 0x140193739
mov rdi, qword [rsp + 0x40]
movzx r15d, byte [rsp + 0x3e]
movzx r12d, byte [rsp + 0x70]
jmp 0x14019375f
call sub.kernel32.dll_GetProcessHeap
test rax, rax
movzx r15d, byte [rsp + 0x3e]
movzx r12d, byte [rsp + 0x70]
je 0x140199831
mov qword [0x1402d9150], rax
mov r8d, 0x38
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov qword [rax], 0
mov byte [rax + 0x29], 2
mov word [rax + 0x30], 0x900
jmp 0x14019378a
call sub.kernel32.dll_GetProcessHeap
test rax, rax
movzx r15d, byte [rsp + 0x3e]
movzx r12d, byte [rsp + 0x70]
je 0x140199831
mov qword [0x1402d9150], rax
mov r8d, 0x38
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov byte [rax + 0x29], 2
mov qword [rsp + 0x90], rax
mov byte [rax + 0x30], 6
movzx eax, byte [0x1402d9160]
mov rax, qword [0x1402d9150]
test rax, rax
jne 0x140193521
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140199831
mov qword [0x1402d9150], rax
mov r8d, 8
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov qword [rax], rsi
mov rcx, qword [rsp + 0x90]
mov qword [rcx], rax
lea rax, [0x140237168]
mov qword [rcx + 8], rax
mov edi, 3
mov r11, qword [rsp + 0x230]
mov rsi, qword [rsp + 0x228]
cmp rdi, 4
je 0x140193596
cmp rdi, 3
jne 0x1401935b5
mov qword [rsp + 0x230], r11
mov qword [rsp + 0x228], rsi
mov rdi, qword [rsp + 0x40]
mov rax, qword [rsp + 0x90]
jmp 0x14019378a
mov byte [rsp + 0x70], r12b
mov edi, 5
mov qword [rsp + 0x230], r11
mov qword [rsp + 0x228], rsi
jmp 0x140193931
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x50], r11
mov rax, qword [rsp + 0xa30]
mov qword [rsp + 0xca0], rax
movaps xmm0, xmmword [rsp + 0xa10]
movaps xmm1, xmmword [rsp + 0xa20]
movaps xmmword [rsp + 0xc90], xmm1
movaps xmmword [rsp + 0xc80], xmm0
movaps xmm0, xmmword [rsp + 0x7a0]
movaps xmmword [rsp + 0x400], xmm0
movaps xmm0, xmmword [rsp + 0xb10]
movaps xmmword [rsp + 0xbe0], xmm0
movzx eax, word [rsp + 0xb20]
mov word [rsp + 0xbf0], ax
mov eax, dword [rsp + 0x780]
mov dword [rsp + 0x590], eax
movzx eax, byte [rsp + 0x784]
mov byte [rsp + 0x594], al
mov rax, qword [rsp + 0x40]
mov byte [rax + 0xd0], 0
cmp byte [rax + 0xd2], 2
movzx ebp, byte [rsp + 0x98]
jne 0x14019365e
test bpl, bpl
jne 0x140193674
cmp bpl, 1
mov eax, 0
adc al, 1
mov rcx, qword [rsp + 0x40]
mov byte [rcx + 0xd2], al
mov rsi, qword [rsp + 0x40]
mov byte [rsp + 0x70], r12b
mov byte [rsi + 0xd3], r12b
test r15b, r15b
setne al
add al, al
mov byte [rsp + 0xa4], al
mov r13, qword [rsp + 0xa8]
test r13, r13
movzx r12d, byte [rsp + 0xc0]
je 0x1401936ce
test r12b, r12b
je 0x140193de4
cmp r13, 0xfffffffffffffffe
je 0x140193df4
cmp r13, 0xffffffffffffffff
jne 0x140193dfa
mov al, 2
jmp 0x140193dff
mov qword [rsi + 0x70], 3
mov rcx, rsi
call fcn.14019e4b0
mov rcx, rsi
mov rdx, rbx
call fcn.14019e580
jmp 0x140193e60
call sub.kernel32.dll_GetProcessHeap
test rax, rax
movzx r15d, byte [rsp + 0x3e]
movzx r12d, byte [rsp + 0x70]
je 0x140199831
mov qword [0x1402d9150], rax
mov r8d, 0x38
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov qword [rax], 0
mov byte [rax + 0x29], 2
mov byte [rax + 0x30], 2
jmp 0x14019378a
call sub.kernel32.dll_GetProcessHeap
test rax, rax
mov rdi, qword [rsp + 0x40]
movzx r15d, byte [rsp + 0x3e]
movzx r12d, byte [rsp + 0x70]
je 0x140199831
mov qword [0x1402d9150], rax
mov r8d, 0x38
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov qword [rax], 0
mov byte [rax + 0x29], 2
mov byte [rax + 0x30], 0
mov byte [rax + 0x31], bl
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x260], rax
movzx ebx, byte [rdi + 0xd2]
mov qword [rdi + 0x70], 4
mov byte [rdi + 0xd2], 2
mov rax, qword [rdi + 0x160]
test rax, rax
je 0x14019381d
mov rcx, qword [rsp + 0x248]
mov rcx, qword [rcx]
xor edx, edx
jmp 0x1401937d8
inc rdx
cmp rax, rdx
je 0x1401937f3
movzx r8d, byte [rcx + rdx]
cmp r8d, 0xd
je 0x1401937d0
cmp r8d, 0xa
je 0x1401937d0
cmp rax, rdx
jae 0x1401937f6
jmp 0x140199831
mov rdx, rax
mov rcx, qword [rsp + 0x248]
call fcn.140038480
mov rax, qword [rdi + 0x160]
mov byte [rsp + 0x70], r12b
test bl, bl
mov rcx, qword [rsp + 0x90]
je 0x140193830
jmp 0x140193869
xor eax, eax
mov byte [rsp + 0x70], r12b
test bl, bl
mov rcx, qword [rsp + 0x90]
jne 0x140193869
cmp byte [rcx + 0x30], 0
je 0x140193869
test rax, rax
jne 0x140193869
mov qword [rdi + 0x90], 5
mov byte [rdi + 0xd2], 2
lea rcx, [rsp + 0x260]
call fcn.14019d540
mov edi, 4
mov rbx, qword [rsp + 0x60]
jmp 0x140193931
mov qword [rsp + 0xf0], rcx
cmp dword [rdi + 0x90], 2
mov rsi, rcx
mov rbx, qword [rsp + 0x60]
jne 0x140193924
mov rsi, rcx
cmp rax, 0x18
jb 0x140193924
mov rax, qword [rsp + 0x248]
mov rax, qword [rax]
movdqu xmm0, xmmword [rax]
pcmpeqb xmm0, xmm8
movq xmm1, qword [rax + 0x10]
pcmpeqb xmm1, xmm7
pand xmm1, xmm0
pmovmskb eax, xmm1
mov rsi, rcx
cmp eax, 0xffff
jne 0x140193924
movzx eax, byte [0x1402d9160]
mov rax, qword [0x1402d9150]
test rax, rax
jne 0x1401938ea
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140199831
mov qword [0x1402d9150], rax
mov r8d, 0x38
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov rsi, rax
mov qword [rax], 0
mov byte [rax + 0x29], 2
mov word [rax + 0x30], 0x500
lea rcx, [rsp + 0xf0]
call fcn.14019d540
mov qword [rsp + 0x238], rsi
mov edi, 3
mov rax, rbp
mov qword [rsp + 0x48], r13
movzx ebp, byte [rsp + 0x98]
movzx r12d, byte [rsp + 0xc0]
mov r13, qword [rsp + 0xa8]
cmp rdi, 3
mov byte [rsp + 0x3e], r15b
mov byte [rsp + 0x98], bpl
mov byte [rsp + 0xc0], r12b
mov qword [rsp + 0xa8], r13
je 0x140193b2f
cmp rdi, 4
je 0x140193b78
mov qword [rsp + 0x50], rax
cmp rdi, 5
je 0x1401953ff
mov qword [rsp + 0x260], rdi
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x268], rax
mov rax, qword [rsp + 0x820]
lea rcx, [rsp + 0x268]
mov qword [rcx + 0x28], rax
movaps xmm0, xmmword [rsp + 0x800]
movdqa xmm1, xmmword [rsp + 0x810]
movdqu xmmword [rcx + 0x18], xmm1
movups xmmword [rcx + 8], xmm0
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x298], rax
movaps xmm0, xmmword [rsp + 0x540]
movups xmmword [rcx + 0x38], xmm0
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x2b0], rax
movzx eax, word [rsp + 0x900]
mov word [rcx + 0x60], ax
movdqa xmm0, xmmword [rsp + 0x8f0]
movdqu xmmword [rcx + 0x50], xmm0
movzx eax, byte [rsp + 0x3f]
mov byte [rsp + 0x2ca], al
movzx eax, byte [rsp + 0x3e4]
mov byte [rcx + 0x67], al
mov eax, dword [rsp + 0x3e0]
mov dword [rcx + 0x63], eax
mov rdx, qword [rsp + 0x3c8]
test rdx, rdx
je 0x140193bb0
movzx r8d, byte [rsp + 0xa4]
and r8b, 1
lea rcx, [rsp + 0xf0]
call fcn.140063650
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x440], rax
movups xmm0, xmmword [rsp + 0xf0]
movups xmm1, xmmword [rsp + 0x100]
movaps xmmword [rsp + 0x430], xmm1
movaps xmmword [rsp + 0x420], xmm0
mov rdi, qword [rsp + 0x118]
mov r12, qword [rsp + 0x120]
lea rax, [rsp + 0x128]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0xa10], xmm0
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xa20], rax
mov r13, qword [rsp + 0x140]
mov rax, qword [rsp + 0x40]
cmp byte [rax + 0x1d0], 3
je 0x140193ae1
mov rcx, r14
call fcn.1401605c0
mov rax, qword [rsp + 0x440]
mov qword [r14 + 0x20], rax
movaps xmm0, xmmword [rsp + 0x420]
movdqa xmm1, xmmword [rsp + 0x430]
movdqu xmmword [r14 + 0x10], xmm1
movups xmmword [r14], xmm0
movdqa xmm0, xmmword [rsp + 0xa10]
movdqa xmmword [rsp + 0x420], xmm0
mov rax, qword [rsp + 0xa20]
mov qword [rsp + 0x430], rax
jmp 0x140193bb8
mov rsi, rax
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0xf8], rax
mov qword [rsp + 0xf0], 3
mov rcx, qword [rsp + 0x88]
lea rdx, [rsp + 0xf0]
call fcn.140160720
mov r15, rax
mov rax, rsi
test r15, r15
mov rdi, qword [rsp + 0x40]
je 0x140193b8a
jmp 0x1401953d8
mov rdi, qword [rsp + 0x40]
cmp dword [rdi + 0x90], 5
jne 0x140193d91
mov byte [rdi + 0x1e0], 1
mov qword [rdi + 0x70], 4
mov qword [rdi + 0x90], 5
mov byte [rdi + 0xd2], 2
jmp 0x140193d91
xor r13d, r13d
xor edi, edi
xor r12d, r12d
test byte [rsp + 0xa4], 2
je 0x140193cb5
movzx eax, byte [0x1402d9160]
mov rax, qword [0x1402d9150]
test rax, rax
jne 0x140193bee
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140199831
mov qword [0x1402d9150], rax
mov r8d, 0x70
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov r15, rax
mov qword [rax], 1
mov qword [rax + 8], 1
movups xmmword [rax + 0x30], xmm6
lock inc qword [rax]
jle 0x140199831
mov rsi, qword [rsp + 0x40]
cmp qword [rsi], 0
je 0x140193c89
mov rdx, qword [rsi + 8]
test rdx, rdx
je 0x140193c89
mov rax, qword [rdx + 0x30]
mov rcx, rax
test cl, 4
jne 0x140193c59
mov r8, rcx
or r8, 2
mov rax, rcx
lock cmpxchg qword [rdx + 0x30], r8
jne 0x140193c3f
and ecx, 5
cmp ecx, 1
jne 0x140193c6c
mov rax, qword [rdx + 0x20]
mov rcx, qword [rdx + 0x28]
call qword [rax + 0x10]
mov rsi, qword [rsp + 0x40]
mov rax, qword [rsi + 8]
test rax, rax
je 0x140193c89
lock dec qword [rax]
jne 0x140193c89
mov rcx, qword [rsi + 8]
call fcn.1400634e0
mov qword [rsi], 1
mov qword [rsi + 8], r15
mov edx, 1
lea rcx, [rsp + 0x2c0]
mov r8, r15
call fcn.1401a28a0
test rax, 0xfffffffffffffffd
jne 0x140193d9b
movups xmm0, xmmword [rsp + 0x2c0]
movaps xmmword [rsp + 0x150], xmm0
movups xmm0, xmmword [rsp + 0x2b0]
movaps xmmword [rsp + 0x140], xmm0
movups xmm0, xmmword [rsp + 0x2a0]
movaps xmmword [rsp + 0x130], xmm0
movups xmm0, xmmword [rsp + 0x260]
movdqu xmm1, xmmword [rsp + 0x270]
movups xmm2, xmmword [rsp + 0x280]
movups xmm3, xmmword [rsp + 0x290]
movaps xmmword [rsp + 0x120], xmm3
movaps xmmword [rsp + 0x110], xmm2
movdqa xmmword [rsp + 0x100], xmm1
movaps xmmword [rsp + 0xf0], xmm0
mov rax, qword [rsp + 0x430]
lea rcx, [rsp + 0x128]
mov qword [rcx + 0x58], rax
movdqa xmm0, xmmword [rsp + 0x420]
movdqu xmmword [rcx + 0x48], xmm0
mov qword [rsp + 0x160], rdi
mov qword [rsp + 0x168], r12
mov qword [rsp + 0x188], r13
mov rcx, qword [rsp + 0x88]
lea rdx, [rsp + 0xf0]
call fcn.140160720
mov r15, rax
test rax, rax
mov rdi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x50]
jne 0x1401953d8
mov r13, qword [rsp + 0x48]
jmp 0x1401932cc
mov rbx, rdx
test rdx, rdx
je 0x140193cb5
mov rax, qword [rbx + 0x30]
mov rcx, rax
or rcx, 4
lock cmpxchg qword [rbx + 0x30], rcx
jne 0x140193dab
and eax, 0xa
cmp eax, 8
jne 0x140193dcd
mov rax, qword [rbx + 0x10]
mov rcx, qword [rbx + 0x18]
call qword [rax + 0x10]
lock dec qword [rbx]
jne 0x140193cb5
mov rcx, rbx
call fcn.14014d940
jmp 0x140193cb5
cmp r13, 0xfffffffffffffffe
je 0x140193e2f
cmp r13, 0xffffffffffffffff
jne 0x140193e35
mov al, 2
jmp 0x140193e3a
mov al, 1
xor ecx, ecx
jmp 0x140193dff
xor eax, eax
mov rcx, r13
mov rdx, qword [rsp + 0x40]
mov qword [rdx + 0x70], 1
mov byte [rdx + 0x78], al
mov byte [rdx + 0x79], 0
mov qword [rdx + 0x80], rcx
mov qword [rdx + 0x88], 0
or byte [rsp + 0xa4], 1
jmp 0x140193e60
mov al, 1
xor ecx, ecx
jmp 0x140193e3a
xor eax, eax
mov rcx, r13
mov rdx, qword [rsp + 0x40]
mov qword [rdx + 0x70], 2
mov byte [rdx + 0x78], al
mov byte [rdx + 0x79], 0
mov qword [rdx + 0x80], rcx
mov qword [rdx + 0x88], 0
mov rax, qword [rsp + 0xca0]
mov qword [rsp + 0x820], rax
movaps xmm0, xmmword [rsp + 0xc80]
movdqa xmm1, xmmword [rsp + 0xc90]
movdqa xmmword [rsp + 0x810], xmm1
movaps xmmword [rsp + 0x800], xmm0
movaps xmm0, xmmword [rsp + 0x400]
movaps xmmword [rsp + 0x540], xmm0
movdqa xmm0, xmmword [rsp + 0xbe0]
movdqa xmmword [rsp + 0x8f0], xmm0
movzx eax, word [rsp + 0xbf0]
mov word [rsp + 0x900], ax
mov eax, dword [rsp + 0x590]
mov dword [rsp + 0x3e0], eax
movzx eax, byte [rsp + 0x594]
mov byte [rsp + 0x3e4], al
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x230], rcx
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x228], rax
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0x3f], al
mov qword [rsp + 0x3c8], r13
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x238], rax
mov rax, rcx
jmp 0x140193952
test rax, rax
je 0x14019507d
cmp eax, 4
je 0x140193f78
mov rax, qword [rdi + 0x160]
jmp 0x1401950ee
cmp byte [rdi + 0x1d0], 3
je 0x140193f4f
mov rcx, r14
call fcn.1401605c0
mov rax, qword [rsp + 0x440]
mov qword [r14 + 0x20], rax
movdqa xmm0, xmmword [rsp + 0x420]
movdqa xmm1, xmmword [rsp + 0x430]
movdqu xmmword [r14 + 0x10], xmm1
movdqu xmmword [r14], xmm0
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x48], r13
cmp byte [rdi + 0x1e0], 0
lea rbp, [rsp + 0xc88]
je 0x140193fc0
mov rcx, rdi
mov rdx, rbx
call fcn.14019d8f0
mov rcx, rax
call fcn.1401611b0
test rax, rax
jne 0x140192b80
mov r15, rdx
test rdx, rdx
je 0x140192b80
jmp 0x14019907f
jmp 0x140194026
mov rcx, qword [r12 + 0x10]
mov rax, qword [r12 + 0x18]
call qword [rax + 0x28]
mov r15, qword [rsp + 0x810]
test r15, r15
sete cl
test al, al
jne 0x140194279
test cl, cl
je 0x1401946f5
mov rax, qword [rsp + 0x800]
mov rdx, qword [rsp + 0x808]
lea rcx, [rsp + 0x818]
mov r8, r15
call qword [rax + 0x10]
cmp byte [rdi + 0x1e0], 0
jne 0x140193f93
mov rax, qword [rdi + 0x1d8]
cmp qword [rax], 0
je 0x1401940a0
cmp byte [rdi + 0x178], 0
jne 0x140194184
cmp byte [rdi + 0x150], 0
je 0x1401940fb
mov r8, qword [rdi + 0x140]
cmp r8, 0xf
ja 0x140194761
test r8, r8
je 0x14019410b
mov rcx, qword [rdi + 0x130]
mov rax, qword [rdi + 0x138]
cmp rax, rcx
mov edx, 0
cmovae rdx, rcx
sub rax, rdx
mov r9, rcx
sub r9, rax
mov rdx, r8
sub rdx, r9
ja 0x140194111
add r8, rax
mov rcx, r8
jmp 0x14019410f
cmp qword [rdi + 0x70], 4
je 0x140194033
cmp qword [rdi + 0x90], 2
jne 0x140194033
mov r8, qword [rdi + 0x140]
test r8, r8
je 0x1401942c5
mov rcx, qword [rdi + 0x130]
mov rax, qword [rdi + 0x138]
cmp rax, rcx
mov edx, 0
cmovae rdx, rcx
sub rax, rdx
mov r9, rcx
sub r9, rax
mov rdx, r8
sub rdx, r9
ja 0x1401942cb
add r8, rax
mov rcx, r8
jmp 0x1401942c9
mov r8, qword [rdi + 0x140]
test r8, r8
jne 0x140194067
xor eax, eax
xor ecx, ecx
xor edx, edx
mov rsi, qword [rdi + 0x118]
sub rsi, qword [rdi + 0x120]
mov r8, qword [rdi + 0x128]
lea rax, [rax + rax*4]
shl rax, 4
add rax, r8
lea rcx, [rcx + rcx*4]
shl rcx, 4
add rcx, r8
lea rdx, [rdx + rdx*4]
shl rdx, 4
add rdx, r8
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], rcx
mov qword [rsp + 0x100], r8
mov qword [rsp + 0x108], rdx
lea rcx, [rsp + 0xf0]
call fcn.1401a6f20
add rax, rsi
cmp rax, qword [rdi + 0x148]
jae 0x140194761
mov rax, qword [rdi + 0x90]
mov r12, qword [rdi + 0x1d8]
cmp qword [r12], 0
je 0x14019467c
lea r13, [r12 + 8]
cmp rax, 3
ja 0x1401946e0
cmp rax, 2
je 0x1401946e0
lea rcx, [rsp + 0xf0]
mov rdx, r13
mov r8, rbx
call fcn.1401ac0d0
cmp dword [rsp + 0xf0], 2
je 0x140193f93
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0xca0], rax
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm1, xmmword [rsp + 0x100]
movdqa xmmword [rsp + 0xc90], xmm1
movdqa xmmword [rsp + 0xc80], xmm0
cmp qword [rsp + 0xc80], 0
je 0x1401946a6
mov rax, qword [rsp + 0xc88]
mov rsi, qword [rsp + 0xc90]
test rax, rax
je 0x140198fc1
movdqu xmm0, xmmword [rbp + 0x10]
lea rcx, [rsp + 0x810]
movdqu xmmword [rcx], xmm0
mov qword [rsp + 0x800], rax
mov qword [rsp + 0x808], rsi
cmp qword [r13], 0
je 0x140193fd0
mov r15, qword [rsp + 0x810]
test r15, r15
sete cl
cmp qword [r12 + 0x18], 0
jne 0x140193ff3
test cl, cl
je 0x14019478e
mov rcx, rdi
call fcn.1401a14a0
test rax, rax
jne 0x14019988b
mov rax, qword [rsp + 0x800]
mov rdx, qword [rsp + 0x808]
mov r8, qword [rsp + 0x810]
lea rcx, [rsp + 0x818]
call qword [rax + 0x10]
cmp qword [r12], 0
jne 0x1401946e0
jmp 0x1401946e8
xor eax, eax
xor ecx, ecx
xor edx, edx
mov r8, qword [rsp + 0xb8]
mov r8, qword [r8]
lea rax, [rax + rax*4]
shl rax, 4
add rax, r8
lea rcx, [rcx + rcx*4]
shl rcx, 4
add rcx, r8
lea rdx, [rdx + rdx*4]
shl rdx, 4
add rdx, r8
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], rcx
mov qword [rsp + 0x100], r8
mov qword [rsp + 0x108], rdx
lea rcx, [rsp + 0xf0]
call fcn.1401a6f20
test rax, rax
jne 0x140194033
mov rax, qword [rsp + 0x88]
cmp qword [rax], 2
jne 0x140194033
mov rdx, qword [rdi + 0x198]
mov r8, qword [rbx]
lea rcx, [rsp + 0xf0]
call fcn.1401aad30
mov rsi, qword [rsp + 0x1f0]
cmp rsi, 4
je 0x140195295
cmp esi, 3
je 0x1401952f7
cmp esi, 2
je 0x140199831
mov r8d, 0x100
lea r13, [rsp + 0x260]
mov rcx, r13
lea r15, [rsp + 0xf0]
mov rdx, r15
call sub.msvcrt.dll_memcpy
lea rdi, [rsp + 0x128]
movups xmm0, xmmword [rdi + 0xd0]
movaps xmmword [rsp + 0x6b0], xmm0
mov r8d, 0x100
lea r12, [rsp + 0x420]
mov rcx, r12
mov rdx, r13
call sub.msvcrt.dll_memcpy
movaps xmm0, xmmword [rsp + 0x6b0]
movaps xmmword [rsp + 0xb10], xmm0
mov r8d, 0x100
mov rcx, r15
mov rdx, r12
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x6b0], rsi
movdqa xmm0, xmmword [rsp + 0xb10]
lea rax, [rsp + 0x6b8]
movdqu xmmword [rax], xmm0
lea rcx, [rsp + 0x6b0]
mov rdx, rbx
call fcn.140191cb0
test al, al
je 0x140195330
mov rax, qword [rdi + 0x90]
lea rcx, [rsp + 0x268]
mov qword [rcx + 0x60], rax
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rcx + 0x50], xmm0
mov rax, qword [rdi + 0x78]
mov qword [rsp + 0x2b0], rax
movups xmm0, xmmword [rdi + 0x68]
movaps xmmword [rsp + 0x2a0], xmm0
movups xmm0, xmmword [rdi + 0x28]
movups xmm1, xmmword [rdi + 0x38]
movups xmm2, xmmword [rdi + 0x48]
movups xmm3, xmmword [rdi + 0x58]
movaps xmmword [rsp + 0x290], xmm3
movaps xmmword [rsp + 0x280], xmm2
movaps xmmword [rsp + 0x270], xmm1
movaps xmmword [rsp + 0x260], xmm0
movzx ebx, byte [rsp + 0x1c8]
mov rsi, qword [rsp + 0xf0]
mov rax, rdi
mov rdi, qword [rsp + 0xf8]
movups xmm0, xmmword [rax - 0x28]
movups xmm1, xmmword [rax - 0x18]
movups xmm2, xmmword [rax - 8]
movups xmm3, xmmword [rax + 8]
movaps xmmword [rsp + 0xc80], xmm0
movaps xmmword [rsp + 0xc90], xmm1
movaps xmmword [rsp + 0xca0], xmm2
movaps xmmword [rsp + 0xcb0], xmm3
movups xmm0, xmmword [rax + 0x18]
movaps xmmword [rsp + 0xcc0], xmm0
mov r15, qword [rsp + 0x1c0]
lea rax, [rsp + 0x1d0]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rsp + 0x5bf]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
movaps xmm0, xmmword [rsp + 0x2c0]
movups xmmword [rbp + 0xa8], xmm0
movaps xmm0, xmmword [rsp + 0x2b0]
movups xmmword [rbp + 0x98], xmm0
movaps xmm0, xmmword [rsp + 0x2a0]
movups xmmword [rbp + 0x88], xmm0
movaps xmm0, xmmword [rsp + 0x260]
movdqa xmm1, xmmword [rsp + 0x270]
movaps xmm2, xmmword [rsp + 0x280]
movaps xmm3, xmmword [rsp + 0x290]
movups xmmword [rbp + 0x78], xmm3
movups xmmword [rbp + 0x68], xmm2
movdqu xmmword [rbp + 0x58], xmm1
movups xmmword [rbp + 0x48], xmm0
mov r12, qword [rsp + 0x88]
mov rcx, r12
call fcn.14014fee0
mov rax, qword [rsp + 0x6c0]
mov qword [r12 + 0x10], rax
movdqu xmm0, xmmword [rsp + 0x6b0]
movdqu xmmword [r12], xmm0
mov r8d, 0xc0
lea rcx, [rsp + 0x800]
lea rdx, [rsp + 0xc80]
call sub.msvcrt.dll_memcpy
cmp rsi, 3
je 0x14019562c
cmp rsi, 4
je 0x1401952ed
mov rax, qword [rsp + 0x5d7]
mov qword [rsp + 0x10f], rax
movups xmm0, xmmword [rsp + 0x5b8]
movups xmm1, xmmword [rsp + 0x5c8]
movaps xmmword [rsp + 0x100], xmm1
movaps xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0xa10], rsi
mov qword [rsp + 0xa18], rdi
mov r8d, 0xc0
lea rcx, [rsp + 0xa20]
lea rdx, [rsp + 0x800]
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0xae0], r15
mov byte [rsp + 0xae8], bl
lea rax, [rsp + 0x128]
movdqu xmm0, xmmword [rax - 0x31]
movdqu xmm1, xmmword [rax - 0x21]
movdqa xmmword [rsp + 0x270], xmm1
movdqa xmmword [rsp + 0x260], xmm0
cmp qword [rsp + 0x260], 0
je 0x140194c59
cmp qword [rsp + 0x270], 0
mov rdi, qword [rsp + 0x40]
mov r15, qword [rsp + 0xc8]
jne 0x140194d19
jmp 0x140194c81
cmp rax, 3
ja 0x140193f93
cmp rax, 2
je 0x140193f93
mov rcx, rdi
call fcn.1401a14a0
test rax, rax
je 0x140194019
jmp 0x140199883
mov rcx, rdi
call fcn.1401a14a0
mov r15, rax
mov rax, qword [rsp + 0xc80]
test r15, r15
jne 0x1401997af
test rax, rax
je 0x1401946cf
mov rcx, rbp
call fcn.140161280
cmp qword [r12], 0
je 0x1401946e8
nop word cs:[rax + rax]
mov rcx, r13
call fcn.14014f700
mov qword [r12], 0
jmp 0x140194019
movups xmm0, xmmword [rsp + 0x800]
movaps xmmword [rsp + 0x6b0], xmm0
mov rsi, qword [rsp + 0x818]
mov rax, qword [rdi + 0x90]
lea rcx, [rax - 2]
cmp rcx, 3
ja 0x140194728
cmp rcx, 1
jne 0x140199831
test rax, rax
je 0x140194911
mov rdx, qword [rsp + 0x3d0]
mov rax, qword [rdx]
mov rcx, rax
sub rcx, r15
jae 0x1401949e7
mov qword [rdx], 0
mov ecx, 1
lea rdx, [rsp + 0x800]
jmp 0x1401949f4
mov rcx, rdi
mov rdx, rbx
call fcn.14019d8f0
mov rcx, rax
call fcn.1401611b0
test rax, rax
jne 0x140193f93
mov r15, rdx
test rdx, rdx
je 0x140194019
jmp 0x14019907f
movups xmm0, xmmword [rsp + 0x800]
movaps xmmword [rsp + 0x6b0], xmm0
mov rax, rdi
mov rdi, qword [rsp + 0x818]
mov rax, qword [rax + 0x90]
lea rcx, [rax - 2]
cmp rcx, 3
ja 0x1401947c4
cmp rcx, 1
jne 0x140199831
test rax, rax
je 0x140194ab8
mov rax, qword [rsp + 0x3d0]
mov rsi, qword [rax]
xor eax, eax
cmp r15, rsi
setne al
mov ecx, 0xff
cmovb eax, ecx
test al, al
je 0x140194bd2
movzx eax, al
cmp eax, 1
jne 0x140194c13
movdqu xmm0, xmmword [rsp + 0x800]
movdqa xmmword [rsp + 0x420], xmm0
mov qword [rsp + 0x430], r15
mov qword [rsp + 0x438], rdi
mov qword [rsp + 0x440], rsi
mov rdi, qword [rsp + 0x40]
cmp byte [rdi + 0x150], 0
je 0x140194dfe
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x280], rax
movaps xmm0, xmmword [rsp + 0x420]
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x270], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x278], rax
movaps xmmword [rsp + 0x260], xmm0
mov rcx, qword [rdi + 0x130]
mov rax, qword [rdi + 0x140]
cmp rax, rcx
jne 0x1401948a6
mov rcx, qword [rsp + 0xb8]
call fcn.140167380
mov rcx, qword [rdi + 0x130]
mov rax, qword [rdi + 0x140]
mov rdx, qword [rdi + 0x138]
add rdx, rax
cmp rdx, rcx
mov r8d, 0
cmovae r8, rcx
sub rdx, r8
mov rcx, qword [rdi + 0x128]
lea rdx, [rdx + rdx*4]
shl rdx, 4
mov qword [rcx + rdx], 1
movdqa xmm0, xmmword [rsp + 0x260]
movdqa xmm1, xmmword [rsp + 0x270]
movdqu xmmword [rcx + rdx + 8], xmm0
movdqu xmmword [rcx + rdx + 0x18], xmm1
mov r8, qword [rsp + 0x280]
mov qword [rcx + rdx + 0x28], r8
inc rax
mov qword [rdi + 0x140], rax
jmp 0x140194f4c
mov qword [rsp + 0xb10], r15
movaps xmmword [rsp + 0x420], xmm6
mov dword [rsp + 0x430], 0
lea rax, [rsp + 0xb10]
mov qword [rsp + 0x5b8], rax
lea rax, [0x140038960]
mov qword [rsp + 0x5c0], rax
lea rax, str.combase.dll
mov qword [rsp + 0x260], rax
mov qword [rsp + 0x268], 2
mov qword [rsp + 0x280], 0
lea rax, [rsp + 0x5b8]
mov qword [rsp + 0x270], rax
mov qword [rsp + 0x278], 1
lea rcx, [rsp + 0x420]
lea rdx, [0x140236ae8]
lea r8, [rsp + 0x260]
call fcn.140038a20
test al, al
jne 0x140199831
mov rax, qword [rsp + 0x420]
lea rdx, [rsp + 0x441]
mov rcx, qword [rdx - 0x19]
mov qword [rsp + 0x5b8], rcx
mov ecx, dword [rdx - 0x11]
mov dword [rsp + 0x5c0], ecx
mov ecx, 2
lea rdx, [rsp + 0x6b0]
jmp 0x1401949f4
mov qword [rdx], rcx
lea rdx, [rsp + 0x800]
xor ecx, ecx
movdqu xmm0, xmmword [rdx]
movdqa xmmword [rsp + 0x260], xmm0
lea r8, [rsp + 0x128]
movdqu xmmword [r8 - 0x30], xmm0
mov qword [rsp + 0x108], r15
mov qword [rsp + 0x110], rsi
mov rdx, qword [rsp + 0x5b8]
mov qword [r8 - 8], rdx
mov edx, dword [rsp + 0x5c0]
mov dword [r8], edx
mov edx, dword [rsp + 0x5c4]
mov dword [r8 + 4], edx
mov qword [rsp + 0xf0], rcx
mov qword [rsp + 0x118], rax
lea rax, [0x1402a07a9]
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x138], 2
mov rcx, qword [rsp + 0x240]
lea rdx, [rsp + 0xf0]
call fcn.140172320
cmp qword [rdi + 0x90], 0
je 0x140194019
cmp qword [rdi + 0x98], 0
jne 0x140194019
cmp byte [rdi + 0xa0], 1
mov eax, 5
sbb rax, 0
mov qword [rdi + 0x90], rax
jmp 0x140194019
mov qword [rsp + 0xb10], r15
movaps xmmword [rsp + 0x420], xmm6
mov dword [rsp + 0x430], 0
lea rax, [rsp + 0xb10]
mov qword [rsp + 0x5b8], rax
lea rax, [0x140038960]
mov qword [rsp + 0x5c0], rax
lea rax, str.combase.dll
mov qword [rsp + 0x260], rax
mov qword [rsp + 0x268], 2
mov qword [rsp + 0x280], 0
lea rax, [rsp + 0x5b8]
mov qword [rsp + 0x270], rax
mov qword [rsp + 0x278], 1
lea rcx, [rsp + 0x420]
lea rdx, [0x140236ae8]
lea r8, [rsp + 0x260]
call fcn.140038a20
test al, al
jne 0x140199831
mov eax, dword [rsp + 0x430]
lea rcx, [rsp + 0x110]
mov dword [rcx + 0x10], eax
movaps xmm0, xmmword [rsp + 0x420]
movups xmmword [rcx], xmm0
movdqa xmm0, xmmword [rsp + 0x6b0]
movdqa xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0x100], r15
mov qword [rsp + 0x108], rdi
lea rax, [0x1402a07a2]
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x130], 7
mov rcx, qword [rsp + 0x240]
lea rdx, [rsp + 0xf0]
call fcn.140172000
mov rdi, qword [rsp + 0x40]
jmp 0x140194f4c
movdqu xmm0, xmmword [rsp + 0x800]
movdqa xmmword [rsp + 0x260], xmm0
mov qword [rsp + 0x270], r15
mov qword [rsp + 0x278], rdi
mov rcx, qword [rsp + 0x240]
lea rdx, [rsp + 0x260]
call fcn.140172750
mov rdi, qword [rsp + 0x40]
jmp 0x140194f4c
movdqu xmm0, xmmword [rsp + 0x800]
movdqa xmmword [rsp + 0x260], xmm0
mov qword [rsp + 0x270], r15
mov qword [rsp + 0x278], rdi
mov rcx, qword [rsp + 0x240]
lea rdx, [rsp + 0x260]
call fcn.140172750
mov eax, 5
mov rdi, qword [rsp + 0x40]
jmp 0x140194f5c
mov rcx, qword [rsp + 0x268]
mov rax, qword [rsp + 0x270]
call qword [rax + 0x28]
test al, al
mov rdi, qword [rsp + 0x40]
mov r15, qword [rsp + 0xc8]
je 0x140194d0a
mov rsi, qword [rdi + 0x1d8]
cmp qword [rsi], 0
mov rbx, qword [rsp + 0x60]
je 0x140194c9c
lea rcx, [rsi + 8]
call fcn.14014f700
mov qword [rsi], 0
mov qword [rsp + 0x20], r15
mov r9d, 2
lea rcx, [rsp + 0xf0]
mov rdx, rdi
lea r8, [rsp + 0xa10]
call fcn.14019e670
mov rax, qword [rsp + 0xf0]
cmp rax, 2
je 0x140195033
mov rcx, qword [rsp + 0xf8]
movzx edx, byte [rsp + 0x100]
cmp eax, 1
jne 0x140194fe4
test rcx, rcx
jne 0x140194fe4
mov eax, edx
and al, 1
movzx eax, al
or rax, 4
jmp 0x140195004
cmp qword [rsp + 0x260], 0
je 0x140195045
mov ecx, 1
mov rax, qword [rsp + 0x270]
mov rdx, rax
test rcx, rcx
sete cl
cmp rdx, rax
setne bl
or bl, cl
cmove r15, rax
movaps xmm0, xmmword [rsp + 0x260]
movaps xmm1, xmmword [rsp + 0x270]
movaps xmmword [rsp + 0x100], xmm1
movaps xmmword [rsp + 0xf0], xmm0
mov rsi, qword [rdi + 0x1d8]
cmp qword [rsi], 0
je 0x140194d71
lea rcx, [rsi + 8]
call fcn.14014f700
movzx r9d, bl
mov qword [rsi], 1
movdqa xmm0, xmmword [rsp + 0xf0]
movdqa xmm1, xmmword [rsp + 0x100]
movdqu xmmword [rsi + 8], xmm0
movdqu xmmword [rsi + 0x18], xmm1
mov qword [rsp + 0x20], r15
lea rcx, [rsp + 0xf0]
mov rdx, rdi
lea r8, [rsp + 0xa10]
call fcn.14019e670
mov rax, qword [rsp + 0xf0]
cmp rax, 2
mov rbx, qword [rsp + 0x60]
je 0x140194fd7
mov rcx, qword [rsp + 0xf8]
movzx edx, byte [rsp + 0x100]
cmp eax, 1
jne 0x140194f88
test rcx, rcx
jne 0x140194f88
mov eax, edx
and al, 1
movzx eax, al
or rax, 4
jmp 0x140194fa8
mov rdx, qword [rdi + 0x120]
test rdx, rdx
je 0x140194e64
cmp r15, rsi
mov rax, rsi
cmovb rax, r15
mov rcx, qword [rdi + 0x110]
mov rbx, qword [rdi + 0x118]
sub rcx, rbx
cmp rcx, rax
jae 0x140194e64
sub rbx, rdx
jb 0x140199831
mov qword [rdi + 0x118], 0
je 0x140194e59
mov rcx, qword [rdi + 0x108]
add rdx, rcx
mov r8, rbx
call sub.msvcrt.dll_memmove
mov qword [rdi + 0x118], rbx
mov qword [rdi + 0x120], 0
mov rbx, qword [rsp + 0x428]
nop dword [rax]
cmp r15, rsi
mov rbp, rsi
cmovb rbp, r15
test rbp, rbp
je 0x140194f21
mov rax, qword [rdi + 0x110]
mov r15, qword [rdi + 0x118]
sub rax, r15
cmp rax, rbp
jb 0x140194f02
mov rcx, qword [rdi + 0x108]
add rcx, r15
mov rdx, rbx
mov r8, rbp
call sub.msvcrt.dll_memcpy
add r15, rbp
mov qword [rdi + 0x118], r15
mov rsi, qword [rsp + 0x440]
sub rsi, rbp
jb 0x140199831
mov r15, qword [rsp + 0x430]
sub r15, rbp
jb 0x140199831
mov qword [rsp + 0x430], r15
add rbp, qword [rsp + 0x428]
mov qword [rsp + 0x428], rbp
mov qword [rsp + 0x440], rsi
mov rbx, rbp
jmp 0x140194e70
mov rcx, qword [rsp + 0x240]
mov rdx, r15
mov r8, rbp
call fcn.140089e50
mov r15, qword [rdi + 0x118]
jmp 0x140194e99
mov rax, qword [rsp + 0x420]
mov r8, qword [rsp + 0x430]
lea rcx, [rsp + 0x438]
mov rdx, rbx
call qword [rax + 0x10]
mov rbx, qword [rsp + 0x60]
lea rbp, [rsp + 0xc88]
cmp byte [rdi + 0xa0], 1
mov eax, 5
sbb rax, 0
movdqu xmm0, xmmword [rsp + 0xf0]
mov rcx, qword [rsp + 0x3d0]
movdqu xmmword [rcx], xmm0
mov qword [rdi + 0x90], rax
cmp qword [r12], 0
jne 0x1401946e0
jmp 0x1401946e8
lea r9, [rsp + 0x128]
mov r8d, dword [r9 - 0x27]
mov r9d, dword [r9 - 0x24]
mov dword [rsp + 0x423], r9d
mov dword [rsp + 0x420], r8d
mov qword [rdi + 0x90], rax
mov qword [rdi + 0x98], rcx
mov byte [rdi + 0xa0], dl
mov eax, dword [rsp + 0x420]
mov ecx, dword [rsp + 0x423]
mov rdx, qword [rsp + 0xe8]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
mov qword [rsp + 0xc8], r15
jmp 0x140194019
lea r9, [rsp + 0x128]
mov r8d, dword [r9 - 0x27]
mov r9d, dword [r9 - 0x24]
mov dword [rsp + 0x423], r9d
mov dword [rsp + 0x420], r8d
mov qword [rdi + 0x90], rax
mov qword [rdi + 0x98], rcx
mov byte [rdi + 0xa0], dl
mov eax, dword [rsp + 0x420]
mov ecx, dword [rsp + 0x423]
mov rdx, qword [rsp + 0xe8]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
lea rcx, [rsp + 0x260]
call fcn.14014f700
jmp 0x140194019
mov rdx, qword [rsp + 0x268]
mov rax, qword [rsp + 0x270]
lea rcx, [rsp + 0xf0]
call qword [rax + 0x30]
mov rdx, qword [rsp + 0x100]
mov rcx, qword [rsp + 0xf0]
mov rax, qword [rsp + 0xf8]
jmp 0x140194d29
cmp dword [rdi + 0x90], 2
mov rax, qword [rdi + 0x160]
jne 0x1401950ee
test rax, rax
je 0x1401951fc
movzx eax, byte [0x1402d9160]
mov rax, qword [0x1402d9150]
test rax, rax
jne 0x1401950be
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140199831
mov qword [0x1402d9150], rax
mov r8d, 0x38
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov r15, rax
mov qword [rax], 0
mov byte [rax + 0x29], 2
mov byte [rax + 0x30], 3
jmp 0x14019566e
cmp byte [rdi + 0xc8], 0
jne 0x140193f78
test rax, rax
jne 0x140193f78
lea rcx, [rsp + 0xf0]
mov rdx, qword [rsp + 0xb0]
mov r8, rbx
call fcn.1401728d0
mov rax, qword [rsp + 0xf0]
cmp rax, 2
je 0x140193f78
mov rsi, qword [rsp + 0xf8]
test rax, rax
je 0x14019525a
mov qword [rdi + 0x70], 4
mov qword [rdi + 0x90], 5
mov byte [rdi + 0xd2], 2
movzx eax, byte [0x1402d9160]
mov rax, qword [0x1402d9150]
test rax, rax
jne 0x140195181
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140199831
mov qword [0x1402d9150], rax
mov r8d, 0x38
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov r15, rax
mov byte [rax + 0x29], 2
mov byte [rax + 0x30], 6
movzx eax, byte [0x1402d9160]
mov rax, qword [0x1402d9150]
test rax, rax
jne 0x1401951cd
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140199831
mov qword [0x1402d9150], rax
mov r8d, 8
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov qword [rax], rsi
mov qword [r15], rax
lea rax, [0x140237168]
mov qword [r15 + 8], rax
jmp 0x14019566e
lea rcx, [rsp + 0xf0]
mov rdx, qword [rsp + 0xb0]
mov r8, rbx
call fcn.1401728d0
mov rax, qword [rsp + 0xf0]
cmp rax, 2
je 0x140193f78
mov rcx, qword [rsp + 0xf8]
test rax, rax
je 0x14019527f
mov qword [rdi + 0x70], 4
mov qword [rdi + 0x90], 5
mov byte [rdi + 0xd2], 2
call fcn.140066980
mov r15, rax
jmp 0x14019566e
test rsi, rsi
jne 0x140193f78
mov qword [rdi + 0x70], 4
mov byte [rdi + 0xd2], 2
call fcn.1400668c0
mov r15, rax
jmp 0x14019566e
test rcx, rcx
je 0x1401953e5
call fcn.140066920
mov r15, rax
jmp 0x14019566e
mov rcx, qword [rdi + 0x1a0]
mov eax, 1
xchg qword [rcx + 0x10], rax
cmp rax, 2
jb 0x1401952ed
cmp rax, 3
je 0x1401952ed
cmp rax, 2
jne 0x140199831
mov rax, qword [rdi + 0x1a0]
mov cl, 1
xchg byte [rax + 0x28], cl
test cl, cl
jne 0x1401952bb
mov rdx, qword [rax + 0x18]
mov rcx, qword [rax + 0x20]
mov qword [rax + 0x18], 0
mov r8d, 0
xchg byte [rax + 0x28], r8b
test rdx, rdx
je 0x1401952ed
call qword [rdx + 8]
mov rdi, qword [rsp + 0x40]
jmp 0x140195652
mov r8d, 0x100
lea rcx, [rsp + 0x420]
lea rdx, [rsp + 0x260]
call sub.msvcrt.dll_memcpy
movdqu xmm0, xmmword [rsp + 0x6b0]
movdqa xmmword [rsp + 0xb10], xmm0
mov byte [rdi + 0x1a8], 1
jmp 0x14019562c
lea rcx, [rsp + 0x6b0]
call fcn.140187440
cmp qword [rsp + 0x6b0], 0
mov rax, qword [rsp + 0x6b8]
je 0x140195409
test rax, rax
je 0x14019546c
mov rdx, qword [rsp + 0x6c0]
test rdx, rdx
je 0x14019546c
mov rax, qword [rdx + 0xd0]
mov rcx, rax
test cl, 4
jne 0x140195392
mov r8, rcx
or r8, 2
mov rax, rcx
lock cmpxchg qword [rdx + 0xd0], r8
jne 0x140195375
and ecx, 5
cmp ecx, 1
jne 0x1401953ab
mov rax, qword [rdx + 0xc0]
mov rcx, qword [rdx + 0xc8]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x6c0]
test rax, rax
je 0x14019546c
lock dec qword [rax]
jne 0x14019546c
mov rcx, qword [rsp + 0x6c0]
call fcn.14014bba0
jmp 0x14019546c
mov rbp, rax
mov r13, qword [rsp + 0x48]
jmp 0x14019566e
cmp byte [rdi + 0xd2], 0
je 0x14019565c
call fcn.1400668c0
mov r15, rax
jmp 0x14019565f
mov rdi, qword [rsp + 0x40]
jmp 0x140193f82
test rax, rax
je 0x14019546c
mov rdx, qword [rsp + 0x6c0]
test rdx, rdx
je 0x14019546c
mov rax, qword [rdx + 0x30]
mov rcx, rax
test cl, 4
jne 0x140195439
mov r8, rcx
or r8, 2
mov rax, rcx
lock cmpxchg qword [rdx + 0x30], r8
jne 0x14019541f
and ecx, 5
cmp ecx, 1
jne 0x14019544c
mov rax, qword [rdx + 0x20]
mov rcx, qword [rdx + 0x28]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x6c0]
test rax, rax
je 0x14019546c
lock dec qword [rax]
jne 0x14019546c
mov rcx, qword [rsp + 0x6c0]
call fcn.14014dc20
cmp byte [rsp + 0x1a8], 0xa
jb 0x140195497
cmp qword [rsp + 0x1b8], 0
je 0x140195497
mov r8, qword [rsp + 0x1b0]
mov rcx, qword [0x1402d9150]
xor edx, edx
call sub.kernel32.dll_HeapFree
cmp byte [rsp + 0x150], 2
jb 0x1401954cc
mov rbx, qword [rsp + 0x158]
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 [0x1402d9150]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
mov rax, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x168]
mov r8, qword [rsp + 0x170]
lea rcx, [rsp + 0x178]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x180]
mov rdx, qword [rsp + 0x188]
mov r8, qword [rsp + 0x190]
lea rcx, [rsp + 0x198]
call qword [rax + 0x10]
cmp qword [rsp + 0x110], 0
je 0x140195533
mov r8, qword [rsp + 0x108]
mov rcx, qword [0x1402d9150]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rsi, qword [rsp + 0x128]
test rsi, rsi
je 0x140195583
mov rbx, qword [rsp + 0x118]
add rbx, 0x30
jmp 0x140195569
mov rax, qword [rbx - 0x18]
mov rdx, qword [rbx - 0x10]
mov r8, qword [rbx - 8]
mov rcx, rbx
call qword [rax + 0x10]
add rbx, 0x68
dec rsi
je 0x140195583
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x14019554e
lea rcx, [rbx + 0x28]
mov rdx, qword [rbx + 0x18]
mov r8, qword [rbx + 0x20]
call qword [rax + 0x10]
jmp 0x14019554e
cmp qword [rsp + 0x120], 0
je 0x1401955a4
mov r8, qword [rsp + 0x118]
mov rcx, qword [0x1402d9150]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rsi, qword [rsp + 0x140]
test rsi, rsi
je 0x1401955d8
mov rbx, qword [rsp + 0x130]
add rbx, 0x38
mov rax, qword [rbx - 0x18]
mov rdx, qword [rbx - 0x10]
mov r8, qword [rbx - 8]
mov rcx, rbx
call qword [rax + 0x10]
add rbx, 0x48
dec rsi
jne 0x1401955bd
cmp qword [rsp + 0x138], 0
je 0x1401955f9
mov r8, qword [rsp + 0x130]
mov rcx, qword [0x1402d9150]
xor edx, edx
call sub.kernel32.dll_HeapFree
mov rbx, qword [rsp + 0x1c0]
test rbx, rbx
je 0x14019561f
mov rcx, rbx
call fcn.140053e30
mov rcx, qword [0x1402d9150]
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
lea rcx, [rsp + 0x1d0]
call fcn.14014f700
mov rdi, qword [rsp + 0x40]
mov byte [rdi + 0x1e0], 1
mov qword [rdi + 0x70], 4
mov qword [rdi + 0x90], 5
mov byte [rdi + 0xd2], 2
mov rbx, qword [rsp + 0x60]
jmp 0x140193f93
xor r15d, r15d
mov qword [rdi + 0x70], 4
mov byte [rdi + 0xd2], 2
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x48], r13
test r15, r15
je 0x140193f82
jmp 0x14019907f
lea r12, [rdi + 8]
lea r14, [rdi + 0x98]
lea r15, [rdi + 0x10]
lea rbp, [rsp + 0x8f8]
xorps xmm6, xmm6
movdqa xmm7, xmmword [0x1401fd5c0]
pcmpeqd xmm8, xmm8
movdqa xmm9, xmmword [0x1401fd5b0]
movdqa xmm10, xmmword [str.uespemosarenegylmodnarodsetybdetCCCCCCCCCCCCCCCC1111111111111111_r_nSM_r_n_r_n]
movdqa xmm11, xmmword [0x1401fd5a0]
lea rax, [rdi + 0xa8]
mov qword [rsp + 0x248], rax
lea r13, [rsp + 0x8f0]
nop
lea rcx, [rsp + 0x420]
mov rdx, r14
mov r8, rbx
call fcn.1401334d0
movzx esi, byte [rsp + 0x420]
cmp rsi, 5
jne 0x140198fae
mov rax, qword [r12]
mov qword [r12], 2
cmp rax, 2
je 0x140195773
mov qword [rsp + 0x8f0], rax
mov rax, qword [r15 + 0x60]
mov qword [rbp + 0x60], rax
movups xmm0, xmmword [r15 + 0x50]
movups xmmword [rbp + 0x50], xmm0
movups xmm0, xmmword [r15 + 0x40]
movups xmmword [rbp + 0x40], xmm0
movdqu xmm0, xmmword [r15]
movdqu xmm1, xmmword [r15 + 0x10]
movups xmm2, xmmword [r15 + 0x20]
movups xmm3, xmmword [r15 + 0x30]
movups xmmword [rbp + 0x30], xmm3
movups xmmword [rbp + 0x20], xmm2
movdqu xmmword [rbp + 0x10], xmm1
movdqu xmmword [rbp], xmm0
mov rcx, r12
mov rdx, r13
mov r8, rbx
call fcn.14019c390
jmp 0x1401956e0
mov rdx, qword [rdi + 0xb8]
mov r8, qword [rbx]
lea rcx, [rsp + 0xf0]
call fcn.1401aad30
mov rsi, qword [rsp + 0x1f0]
cmp rsi, 4
je 0x1401997c5
cmp esi, 3
je 0x140199835
mov qword [rsp + 0x78], r14
cmp esi, 2
je 0x140199831
mov r8d, 0x100
lea r14, [rsp + 0x260]
mov rcx, r14
lea rdx, [rsp + 0xf0]
call sub.msvcrt.dll_memcpy
lea rax, [rsp + 0x108]
movups xmm0, xmmword [rax + 0xf0]
movaps xmmword [rsp + 0x420], xmm0
mov r8d, 0x100
lea r13, [rsp + 0xc80]
mov rcx, r13
mov rdx, r14
call sub.msvcrt.dll_memcpy
movaps xmm0, xmmword [rsp + 0x420]
movaps xmmword [rsp + 0x8e0], xmm0
mov r8d, 0x100
lea rcx, [rsp + 0xa10]
mov rdx, r13
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x3a8], rsi
movdqa xmm0, xmmword [rsp + 0x8e0]
lea rax, [rsp + 0x3b0]
movdqu xmmword [rax], xmm0
mov rax, qword [rsp + 0x3b0]
test rsi, rsi
je 0x140195952
test rax, rax
lea r14, [0x1402a09d0]
je 0x140199831
mov rax, qword [rsp + 0x3b8]
test rax, rax
lea r13, [rsp + 0x8f0]
je 0x140199831
add rax, 0xd0
mov rax, qword [rax]
test al, 4
jne 0x14019598a
mov r8d, 0xe0
lea rcx, [rsp + 0x5b8]
lea rdx, [rsp + 0xa10]
call sub.msvcrt.dll_memcpy
lea rax, [rsp + 0xaf0]
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movdqa xmmword [rsp + 0x3f0], xmm1
movdqa xmmword [rsp + 0x3e0], xmm0
lea rbx, [0x140235ab1]
mov qword [rsp + 0x20], rbx
mov r8d, 0xa
lea rcx, [rsp + 0x800]
lea rdx, str.keep_aliveHTTP_1.1_100_Continue_r_n_r_n0_r_n_r_nunexpected_EOF_during_chunk_size_lineInvalid_chunk_size_line:_missing_size_digitinvalid_chunk_size:_overflowInvalid_chunk_end_LFInvalid_chunk_body_CRInvalid_chunk_body_LFInvalid_chunk_size_LFInvalid_chunk_size_linear_white_spaceinvalid_chunk_extension_contains_newlinechunk_extensions_over_limitInvalid_trailer_end_LFInvalid_chunk_size_line:_Invalid_Size_r_n0_r_n_r_n_r_n
lea r9, [rsp + 0x260]
call fcn.140059e90
movzx eax, byte [rsp + 0x810]
mov rdx, qword [rsp + 0x800]
mov r8, qword [rsp + 0x808]
test eax, eax
je 0x140195acc
cmp eax, 2
lea rsi, [rsp + 0x428]
lea rdi, [rsp + 0xf0]
lea r13, [rsp + 0x6b0]
je 0x140195b0b
cmp eax, 3
je 0x140199831
mov rcx, rsi
call fcn.140037770
jmp 0x140195b1e
test rax, rax
lea r14, [0x1402a09d0]
je 0x140199831
mov rax, qword [rsp + 0x3b8]
test rax, rax
lea r13, [rsp + 0x8f0]
je 0x140199831
add rax, 0x30
mov rax, qword [rax]
test al, 4
je 0x14019588f
lea rcx, [rsp + 0x3a8]
call fcn.140187440
cmp qword [rsp + 0x3a8], 0
mov rax, qword [rsp + 0x3b0]
je 0x140195a40
test rax, rax
mov r14, qword [rsp + 0x78]
je 0x140195aad
mov rdx, qword [rsp + 0x3b8]
test rdx, rdx
je 0x140195aad
mov rax, qword [rdx + 0xd0]
nop word cs:[rax + rax]
mov rcx, rax
test cl, 4
jne 0x1401959fd
mov r8, rcx
or r8, 2
mov rax, rcx
lock cmpxchg qword [rdx + 0xd0], r8
jne 0x1401959e0
and ecx, 5
cmp ecx, 1
jne 0x140195a16
mov rax, qword [rdx + 0xc0]
mov rcx, qword [rdx + 0xc8]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x3b8]
test rax, rax
je 0x140195aad
lock dec qword [rax]
jne 0x140195aad
mov rcx, qword [rsp + 0x3b8]
call fcn.14014bba0
jmp 0x140195aad
test rax, rax
mov r14, qword [rsp + 0x78]
je 0x140195aad
mov rdx, qword [rsp + 0x3b8]
test rdx, rdx
je 0x140195aad
mov rax, qword [rdx + 0x30]
nop dword [rax + rax]
mov rcx, rax
test cl, 4
jne 0x140195a7a
mov r8, rcx
or r8, 2
mov rax, rcx
lock cmpxchg qword [rdx + 0x30], r8
jne 0x140195a60
and ecx, 5
cmp ecx, 1
jne 0x140195a8d
mov rax, qword [rdx + 0x20]
mov rcx, qword [rdx + 0x28]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x3b8]
test rax, rax
je 0x140195aad
lock dec qword [rax]
jne 0x140195aad
mov rcx, qword [rsp + 0x3b8]
call fcn.14014dc20
lea rcx, [rsp + 0xa10]
call fcn.140199b30
lea rcx, [rsp + 0xaf0]
call fcn.14014f700
jmp 0x1401956e0
xor eax, eax
lea rsi, [rsp + 0x428]
lea rdi, [rsp + 0xf0]
lea r13, [rsp + 0x6b0]
nop word cs:[rax + rax]
cmp r8, rax
je 0x140195945
movzx ecx, byte [rdx + rax]
inc rax
cmp cl, byte [rcx + r14]
je 0x140195af0
jmp 0x140199831
mov qword [rsp + 0x428], 0
mov byte [rsp + 0x430], dl
movdqu xmm0, xmmword [rsi]
movdqu xmm1, xmmword [rsi + 0x10]
movdqa xmmword [rsp + 0x800], xmm0
movdqa xmmword [rsp + 0x810], xmm1
mov qword [rsp + 0x20], rbx
mov r8d, 0x10
mov rcx, r13
lea rdx, [0x140236a1b]
lea r9, [rsp + 0x260]
call fcn.140059e90
movzx eax, byte [rsp + 0x6c0]
mov rdx, qword [rsp + 0x6b0]
mov r8, qword [rsp + 0x6b8]
test eax, eax
mov qword [rsp + 0x98], r12
mov qword [rsp + 0xe8], r15
je 0x140195b9f
cmp eax, 2
je 0x140195bc7
cmp eax, 3
je 0x140199831
mov rcx, rsi
call fcn.140037770
jmp 0x140195bda
xor eax, eax
nop word cs:[rax + rax]
cmp r8, rax
je 0x140195b95
movzx ecx, byte [rdx + rax]
inc rax
cmp cl, byte [rcx + r14]
je 0x140195bb0
jmp 0x140199831
mov qword [rsp + 0x428], 0
mov byte [rsp + 0x430], dl
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
lea rax, [rsp + 0x108]
movups xmmword [rax + 0x18], xmm1
movups xmmword [rax + 8], xmm0
movaps xmm0, xmmword [rsp + 0x800]
movdqa xmm1, xmmword [rsp + 0x810]
movaps xmmword [rsp + 0xf0], xmm0
movdqa xmmword [rsp + 0x100], xmm1
movups xmm0, xmmword [0x140236a40]
movups xmmword [rax + 0x38], xmm0
movups xmm0, xmmword [0x140236a30]
movups xmmword [rax + 0x28], xmm0
movups xmm0, xmmword [0x140236b28]
movups xmmword [rax + 0x58], xmm0
movups xmm0, xmmword [0x140236b18]
movups xmmword [rax + 0x48], xmm0
movups xmm0, xmmword [0x140236a60]
movups xmmword [rax + 0x78], xmm0
movdqu xmm0, xmmword [0x140236a50]
movdqu xmmword [rax + 0x68], xmm0
mov rdx, rdi
xor ecx, ecx
jmp 0x140195c87
mov rcx, qword [rsp + 0x80]
inc rcx
mov rax, rcx
shl rax, 5
lea rdx, [rsp + rax]
add rdx, 0xf0
cmp rcx, 5
je 0x140196092
mov qword [rsp + 0x80], rcx
mov rax, qword [rsp + 0x5f0]
test rax, rax
je 0x140195c60
lea rcx, [rsp + 0x5b8]
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x48], rax
call fcn.14004bde0
mov r10, qword [rsp + 0x48]
mov r9, qword [rsp + 0x68]
mov r13d, eax
movzx edi, word [rsp + 0x610]
mov ebx, edi
and ebx, r13d
mov rbp, qword [rsp + 0x5d0]
mov r14, qword [rsp + 0x5d8]
mov r11, qword [rsp + 0x5e0]
xor r15d, r15d
mov qword [rsp + 0x50], r11
jmp 0x140195d06
movzx eax, byte [rax + 8]
cmp al, byte [r9 + 8]
je 0x140195db4
nop dword [rax]
inc r15
inc rbx
mov rax, rbx
nop dword [rax]
mov rbx, rax
mov eax, 0
cmp rbx, r14
jae 0x140195d10
movzx r12d, word [rbp + rbx*4]
cmp r12, 0xffff
je 0x140195c60
movzx eax, word [rbp + rbx*4 + 2]
mov ecx, eax
and ecx, edi
mov edx, ebx
sub edx, ecx
and edx, edi
cmp r15, rdx
ja 0x140195c60
cmp ax, r13w
jne 0x140195d00
cmp r10, r12
jbe 0x140199831
imul rsi, r12, 0x68
mov rcx, qword [r11 + rsi + 0x40]
test rcx, rcx
setne al
cmp qword [r9], 0
sete dl
cmp al, dl
je 0x140195d00
lea rax, [r11 + rsi]
add rax, 0x40
test rcx, rcx
je 0x140195cef
mov r8, qword [rax + 0x10]
cmp r8, qword [r9 + 0x10]
jne 0x140195d00
mov rdx, qword [r9 + 8]
mov rcx, qword [rax + 8]
call sub.msvcrt.dll_memcmp
mov r11, qword [rsp + 0x50]
mov r10, qword [rsp + 0x48]
mov r9, qword [rsp + 0x68]
test eax, eax
jne 0x140195d00
cmp qword [r11 + rsi], 0
je 0x140195dd7
add r11, rsi
mov rdx, qword [r11 + 8]
lea rcx, [rsp + 0x5b8]
call fcn.140061a70
mov r14, qword [rsp + 0x5d8]
cmp r14, rbx
jbe 0x140199831
mov rax, qword [rsp + 0x5d0]
mov dword [rax + rbx*4], 0xffff
mov rcx, qword [rsp + 0x5f0]
cmp rcx, r12
jbe 0x140199831
mov r8, qword [rsp + 0x5e0]
lea rdx, [r8 + rsi]
movups xmm0, xmmword [r8 + rsi]
movups xmm1, xmmword [r8 + rsi + 0x10]
movups xmm2, xmmword [r8 + rsi + 0x20]
movups xmm3, xmmword [r8 + rsi + 0x30]
movaps xmmword [rsp + 0x260], xmm0
movaps xmmword [rsp + 0x270], xmm1
movaps xmmword [rsp + 0x280], xmm2
movaps xmmword [rsp + 0x290], xmm3
movups xmm0, xmmword [r8 + rsi + 0x40]
movaps xmmword [rsp + 0x2a0], xmm0
movups xmm0, xmmword [r8 + rsi + 0x50]
movaps xmmword [rsp + 0x2b0], xmm0
mov r9, qword [r8 + rsi + 0x60]
mov qword [rsp + 0x2c0], r9
dec rcx
imul r9, rcx, 0x68
mov r10, qword [r8 + r9 + 0x60]
movdqu xmm0, xmmword [r8 + r9 + 0x50]
movdqu xmm1, xmmword [r8 + r9 + 0x40]
movups xmm2, xmmword [r8 + r9]
movups xmm3, xmmword [r8 + r9 + 0x10]
movups xmm4, xmmword [r8 + r9 + 0x20]
movups xmm5, xmmword [r8 + r9 + 0x30]
movups xmmword [r8 + rsi], xmm2
movups xmmword [r8 + rsi + 0x10], xmm3
movups xmmword [r8 + rsi + 0x20], xmm4
movups xmmword [r8 + rsi + 0x30], xmm5
movdqu xmmword [r8 + rsi + 0x40], xmm1
movdqu xmmword [r8 + rsi + 0x50], xmm0
mov qword [r8 + rsi + 0x60], r10
mov qword [rsp + 0x5f0], rcx
cmp rcx, r12
mov r9d, 0
cmovbe rdx, r9
jbe 0x140195f93
movzx r8d, word [r8 + rsi + 0x60]
movzx r9d, word [rsp + 0x610]
and r9w, r8w
movzx r11d, r9w
jmp 0x140195f10
inc r10
mov r11, r10
nop word cs:[rax + rax]
mov r10, r11
mov r11d, 0
cmp r10, r14
jae 0x140195f10
movzx r11d, word [rax + r10*4]
cmp r11, 0xffff
cmovne r9, r11
je 0x140195efb
cmp r9, rcx
jb 0x140195efb
mov word [rax + r10*4], r12w
mov word [rax + r10*4 + 2], r8w
cmp qword [rdx], 0
je 0x140195f93
mov r10, qword [rdx + 8]
mov r8, qword [rsp + 0x608]
cmp r10, r8
jae 0x140199831
mov r9, qword [rdx + 0x10]
mov rdx, qword [rsp + 0x5f8]
lea r10, [r10 + r10*8]
mov qword [rdx + r10*8], 0
mov qword [rdx + r10*8 + 8], r12
cmp r9, r8
jae 0x140199831
lea r8, [r9 + r9*8]
mov qword [rdx + r8*8 + 0x10], 0
mov qword [rdx + r8*8 + 0x18], r12
test rcx, rcx
je 0x140196005
lea r8, [rbx + 1]
movzx ecx, word [rsp + 0x610]
nop word cs:[rax + rax]
mov rdx, r8
mov r8d, 0
cmp rdx, r14
jae 0x140195fb0
movzx r8d, word [rax + rdx*4]
cmp r8w, 0xffff
je 0x140196005
movzx r9d, word [rax + rdx*4 + 2]
mov r10d, ecx
and r10d, r9d
mov r11d, edx
sub r11d, r10d
test r11d, ecx
je 0x140196005
cmp rbx, r14
jae 0x140199831
mov word [rax + rbx*4], r8w
mov word [rax + rbx*4 + 2], r9w
mov dword [rax + rdx*4], 0xffff
lea r8, [rdx + 1]
mov rbx, rdx
jmp 0x140195fb0
lea rcx, [rsp + 0x278]
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0x440], rax
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqa xmmword [rsp + 0x430], xmm1
movdqa xmmword [rsp + 0x420], xmm0
mov rax, qword [rsp + 0x2a0]
test rax, rax
je 0x14019605c
mov rdx, qword [rsp + 0x2a8]
mov r8, qword [rsp + 0x2b0]
lea rcx, [rsp + 0x2b8]
call qword [rax + 0x10]
cmp byte [rsp + 0x440], 2
je 0x140195c60
mov rax, qword [rsp + 0x420]
mov rdx, qword [rsp + 0x428]
mov r8, qword [rsp + 0x430]
lea rcx, [rsp + 0x438]
call qword [rax + 0x10]
jmp 0x140195c60
movups xmm12, xmmword [0x140236a80]
movaps xmmword [rsp + 0x270], xmm12
movups xmm13, xmmword [0x140236a70]
movaps xmmword [rsp + 0x260], xmm13
mov rax, qword [rsp + 0x5f0]
test rax, rax
je 0x1401962ec
lea rcx, [rsp + 0x5b8]
lea rdx, [rsp + 0x260]
mov qword [rsp + 0x68], rax
call fcn.14004bde0
mov r10, qword [rsp + 0x68]
mov r12d, eax
movzx esi, word [rsp + 0x610]
mov r14d, esi
and r14d, r12d
mov rbp, qword [rsp + 0x5d0]
mov r13, qword [rsp + 0x5d8]
mov r15, qword [rsp + 0x5e0]
mov r9, qword [rsp + 0x260]
mov rdx, qword [rsp + 0x268]
movzx eax, byte [rsp + 0x268]
mov byte [rsp + 0x48], al
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x80], rax
xor edi, edi
mov qword [rsp + 0x50], r9
mov qword [rsp + 0xb8], rdx
jmp 0x140196166
movzx ecx, byte [rsp + 0x48]
cmp byte [rax + 8], cl
je 0x140196225
nop dword [rax + rax]
inc rdi
inc r14
mov rax, r14
mov rbx, qword [rsp + 0x60]
nop
mov r14, rax
mov eax, 0
cmp r14, r13
jae 0x140196170
movzx eax, word [rbp + r14*4]
cmp rax, 0xffff
je 0x140196234
movzx ecx, word [rbp + r14*4 + 2]
mov r11d, ecx
and r11d, esi
mov r8d, r14d
sub r8d, r11d
and r8d, esi
cmp rdi, r8
ja 0x140196234
cmp cx, r12w
jne 0x140196160
cmp r10, rax
jbe 0x140199831
test r9, r9
sete r8b
imul rbx, rax, 0x68
mov rcx, qword [r15 + rbx + 0x40]
test rcx, rcx
setne al
cmp al, r8b
je 0x140196160
lea rax, [r15 + rbx]
add rax, 0x40
test rcx, rcx
je 0x14019614a
mov rcx, qword [rsp + 0x80]
cmp qword [rax + 0x10], rcx
jne 0x140196160
mov rcx, qword [rax + 8]
mov r8, qword [rsp + 0x80]
call sub.msvcrt.dll_memcmp
mov rdx, qword [rsp + 0xb8]
mov r10, qword [rsp + 0x68]
mov r9, qword [rsp + 0x50]
test eax, eax
jne 0x140196160
lea rsi, [r15 + rbx]
add rsi, 0x18
mov rbx, qword [rsp + 0x60]
jmp 0x140196236
xor esi, esi
test r9, r9
lea rdi, [rsp + 0xbe0]
movabs r13, 0xfefefefefefefeff
movabs rbp, 0x8080808080808080
je 0x14019626b
lea rcx, [rsp + 0x278]
mov r8, qword [rsp + 0x80]
call qword [r9 + 0x10]
test rsi, rsi
je 0x14019630d
cmp qword [rsi + 0x10], 8
jne 0x14019628e
mov rax, qword [rsi + 8]
movabs rcx, 0x7372656c69617274
cmp qword [rax], rcx
je 0x14019630d
movaps xmmword [rsp + 0x430], xmm12
movaps xmmword [rsp + 0x420], xmm13
lea rcx, [rsp + 0x260]
lea rdx, [rsp + 0x5b8]
lea r8, [rsp + 0x420]
call fcn.140061fe0
cmp byte [rsp + 0x280], 2
je 0x14019630d
mov rax, qword [rsp + 0x260]
mov rdx, qword [rsp + 0x268]
mov r8, qword [rsp + 0x270]
lea rcx, [rsp + 0x278]
call qword [rax + 0x10]
jmp 0x14019630d
mov rbx, qword [rsp + 0x60]
lea rdi, [rsp + 0xbe0]
movabs r13, 0xfefefefefefefeff
movabs rbp, 0x8080808080808080
movups xmm0, xmmword [0x1402a0608]
movaps xmmword [rsp + 0x270], xmm0
movdqu xmm0, xmmword [0x1402a05f8]
movdqa xmmword [rsp + 0x260], xmm0
mov rcx, rdi
lea rdx, [rsp + 0x5b8]
lea r8, [rsp + 0x260]
call fcn.140061fe0
cmp byte [rsp + 0xc00], 2
je 0x140197102
movdqu xmm0, xmmword [rsp + 0xbe0]
movdqu xmm1, xmmword [rsp + 0xbf0]
movdqa xmmword [rsp + 0xb10], xmm0
movdqa xmmword [rsp + 0xb20], xmm1
mov rax, qword [rsp + 0xc00]
mov qword [rsp + 0xb30], rax
mov rsi, qword [rsp + 0xb18]
mov r14, qword [rsp + 0xb20]
xor eax, eax
nop dword [rax]
cmp r14, rax
je 0x1401963be
movzx ecx, byte [rsi + rax]
inc rax
cmp cl, 9
je 0x1401963a0
add cl, 0xe0
cmp cl, 0x5f
jb 0x1401963a0
jmp 0x140199831
mov qword [rsp + 0x420], 0
mov qword [rsp + 0x428], r14
mov qword [rsp + 0x430], rsi
mov qword [rsp + 0x438], r14
mov qword [rsp + 0x440], 0
mov qword [rsp + 0x448], r14
mov qword [rsp + 0x450], 1
movabs rax, 0x2c0000002c
mov qword [rsp + 0x458], rax
mov word [rsp + 0x460], 1
lea rax, [rsi + 8]
mov qword [rsp + 0x568], rax
xor edi, edi
xor r12d, r12d
xor r15d, r15d
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0xb0], r14
jmp 0x140196463
mov rdi, qword [rsp + 0x80]
cmp byte [rsp + 0x68], 0
je 0x1401970df
mov rax, r12
cmp r15, r14
ja 0x140196616
movzx ecx, byte [rsp + 0x458]
mov r8, rcx
movabs rdx, 0x101010101010101
imul r8, rdx
jmp 0x14019649c
mov r15, rdi
cmp rdi, r14
ja 0x140196e9a
mov r10, r14
sub r10, r15
lea r9, [rsi + r15]
cmp r10, 0x10
jae 0x1401964e0
cmp r14, r15
je 0x140196600
xor edx, edx
nop word [rax + rax]
cmp byte [r9 + rdx], cl
je 0x1401965b3
inc rdx
cmp r10, rdx
jne 0x1401964c0
jmp 0x140196600
mov r12, rdi
lea r11, [r9 + 7]
and r11, 0xfffffffffffffff8
sub r11, r9
je 0x140196520
cmp r11, r10
cmovae r11, r10
test r11, r11
je 0x140196520
xor edx, edx
nop
cmp byte [r9 + rdx], cl
je 0x1401965b3
inc rdx
cmp r11, rdx
jne 0x140196500
lea rdx, [r10 - 0x10]
cmp r11, rdx
jbe 0x140196527
jmp 0x140196574
lea rdx, [r10 - 0x10]
xor r11d, r11d
mov rsi, qword [rsp + 0x568]
add rsi, r15
nop word cs:[rax + rax]
mov rdi, qword [rsi + r11 - 8]
xor rdi, r8
lea rbx, [rdi + r13]
not rdi
and rdi, rbx
mov rbx, qword [rsi + r11]
xor rbx, r8
lea r14, [rbx + r13]
not rbx
and rbx, r14
or rbx, rdi
test rbx, rbp
jne 0x140196574
add r11, 0x10
cmp r11, rdx
jbe 0x140196540
cmp r11, r10
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x88]
mov r14, qword [rsp + 0xb0]
mov rdi, r12
je 0x140196600
add r9, r11
mov r10, r14
sub r10, r11
sub r10, r15
xor edx, edx
nop
cmp byte [r9 + rdx], cl
je 0x1401965b0
inc rdx
cmp r10, rdx
jne 0x1401965a0
jmp 0x140196600
add rdx, r11
add rdx, r15
mov rdi, rdx
inc rdi
je 0x140196490
cmp rdi, r14
ja 0x140196490
cmp byte [rsi + rdx], cl
jne 0x140196490
mov qword [rsp + 0x440], rdi
mov qword [rsp + 0x420], rdi
mov cl, 1
mov dword [rsp + 0x68], ecx
mov r12, rdi
mov qword [rsp + 0x80], rdi
mov r15, rdi
jmp 0x140196634
mov qword [rsp + 0x440], rdi
mov qword [rsp + 0x440], r14
mov rdi, r14
mov r15, r14
mov qword [rsp + 0x80], rdi
mov byte [rsp + 0x461], 1
mov dword [rsp + 0x68], 0
mov r12, rax
mov rdx, r14
lea rcx, [rsi + rax]
sub rdx, rax
call fcn.1401688e0
mov r8, rdx
lea rcx, [0x1402a09d0]
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x260]
mov rdx, rax
lea r9, [rsp + 0x800]
call fcn.140059e90
movzx edi, byte [rsp + 0x270]
cmp edi, 3
je 0x140196450
mov qword [rsp + 0x50], r12
mov qword [rsp + 0xb8], r15
mov r11, qword [rsp + 0x5f0]
test r11, r11
je 0x140197040
mov rdx, qword [rsp + 0x260]
mov r13, qword [rsp + 0x268]
cmp dword [rsp + 0x5b8], 2
jne 0x140196761
mov r12, rdx
mov rbp, r11
movdqu xmm0, xmmword [rsp + 0x5c0]
pshufd xmm1, xmm0, 0x44
pxor xmm1, xmm10
movdqa xmmword [rsp + 0x260], xmm1
pshufd xmm1, xmm0, 0xee
pxor xmm1, xmm11
movdqa xmmword [rsp + 0x270], xmm1
movdqa xmmword [rsp + 0x280], xmm0
lea rax, [rsp + 0x290]
movaps xmmword [rax], xmm6
mov qword [rax + 0x10], 0
xor eax, eax
cmp edi, 2
setne al
mov qword [rsp + 0x990], rax
mov r8d, 8
lea rbx, [rsp + 0x260]
mov rcx, rbx
lea r15, [rsp + 0x990]
mov rdx, r15
call fcn.14004c0b0
cmp edi, 2
jne 0x1401967c2
movzx eax, r12b
mov qword [rsp + 0x990], rax
mov r8d, 8
mov rcx, rbx
mov rdx, r15
call fcn.14004c0b0
jmp 0x14019687a
xor ecx, ecx
cmp edi, 2
setne cl
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movabs rbx, 0x1efac7090aef4a21
imul rcx, rbx
cmp edi, 2
jne 0x1401967e0
movzx eax, dl
xor ecx, eax
imul ebx, ecx
and ebx, 0x7fff
movzx r12d, word [rsp + 0x610]
mov eax, ebx
and eax, r12d
mov r13, qword [rsp + 0x5d0]
mov r14, qword [rsp + 0x5d8]
mov r15, qword [rsp + 0x5e0]
jmp 0x1401969c2
test edi, edi
lea r14, [0x1402a09d0]
je 0x140196845
mov rcx, rbx
mov rdx, r12
mov r8, r13
call fcn.14004c0b0
jmp 0x14019687a
lea rax, [rdx + r13]
test edi, edi
mov qword [rsp + 0x48], r13
je 0x140196a3c
test r13, r13
movabs r9, 0x100000001b3
je 0x140196a90
mov r8, r13
mov rbp, r11
and r8, 7
je 0x140196eaa
mov r10, rdx
nop word [rax + rax]
movzx ebx, byte [r10]
inc r10
xor rbx, rcx
imul rbx, r9
mov rcx, rbx
dec r8
jne 0x140196820
cmp r13, 8
jae 0x140196ec0
jmp 0x140196982
test r13, r13
je 0x14019687a
xor esi, esi
nop dword [rax]
movzx eax, byte [r12 + rsi]
movzx eax, byte [rax + r14]
mov byte [rsp + 0x990], al
mov r8d, 1
mov rcx, rbx
mov rdx, r15
call fcn.14004c0b0
inc rsi
cmp r13, rsi
jne 0x140196850
mov qword [rsp + 0x48], r13
mov rax, qword [rsp + 0x270]
mov r9, qword [rsp + 0x290]
shl r9, 0x38
or r9, qword [rsp + 0x298]
mov rcx, qword [rsp + 0x278]
mov r8, qword [rsp + 0x260]
add r8, rax
rol rax, 0xd
xor rcx, r9
xor rax, r8
rol r8, 0x20
mov rdx, qword [rsp + 0x268]
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 rbx, rdx
shr rbx, 0x20
xor rbx, rdx
xor rbx, rax
mov rdx, r12
and ebx, 0x7fff
movzx r12d, word [rsp + 0x610]
mov eax, ebx
and eax, r12d
mov r13, qword [rsp + 0x5d0]
mov r14, qword [rsp + 0x5d8]
mov r15, qword [rsp + 0x5e0]
test edi, edi
je 0x140196f5b
cmp edi, 2
mov r11, rbp
jne 0x140196abe
xor ecx, ecx
jmp 0x1401969d0
inc rcx
inc rdi
mov rax, rdi
nop
mov rdi, rax
mov eax, 0
cmp rdi, r14
jae 0x1401969d0
movzx ebp, word [r13 + rdi*4]
cmp rbp, 0xffff
je 0x140197040
movzx eax, word [r13 + rdi*4 + 2]
mov r9d, r12d
and r9d, eax
mov r8d, edi
sub r8d, r9d
mov r9d, r12d
and r9d, r8d
cmp rcx, r9
ja 0x140197040
cmp ax, bx
jne 0x1401969c6
cmp r11, rbp
jbe 0x140199831
imul rax, rbp, 0x68
cmp qword [r15 + rax + 0x40], 0
jne 0x1401969c6
add rax, r15
add rax, 0x40
cmp byte [rax + 8], dl
jne 0x1401969c6
jmp 0x140196b78
mov rbp, r11
test r13, r13
lea r10, [0x1402a09d0]
movabs r11, 0x100000001b3
je 0x140196f2d
mov r8, r13
mov rsi, rdx
and r8, 3
je 0x140197083
nop dword [rax]
movzx r9d, byte [rsi]
movzx ebx, byte [r9 + r10]
xor rbx, rcx
imul rbx, r11
inc rsi
mov rcx, rbx
dec r8
jne 0x140196a70
jmp 0x140197086
and ecx, 0x7fff
movzx r12d, word [rsp + 0x610]
mov eax, ecx
and eax, r12d
mov r13, qword [rsp + 0x5d0]
mov r14, qword [rsp + 0x5d8]
mov r15, qword [rsp + 0x5e0]
mov ebx, ecx
xor esi, esi
mov qword [rsp + 0x240], rdx
mov qword [rsp + 0x3d0], r15
jmp 0x140196ae0
inc rsi
inc rdi
mov rax, rdi
nop dword [rax + rax]
mov rdi, rax
mov eax, 0
cmp rdi, r14
jae 0x140196ae0
movzx ebp, word [r13 + rdi*4]
cmp rbp, 0xffff
je 0x140197040
movzx eax, word [r13 + rdi*4 + 2]
mov ecx, r12d
and ecx, eax
mov r8d, edi
sub r8d, ecx
mov ecx, r12d
and ecx, r8d
cmp rsi, rcx
ja 0x140197040
cmp ax, bx
jne 0x140196ad2
cmp r11, rbp
jbe 0x140199831
imul rax, rbp, 0x68
cmp qword [r15 + rax + 0x40], 0
je 0x140196ad2
add rax, r15
add rax, 0x40
mov rcx, qword [rsp + 0x48]
cmp qword [rax + 0x10], rcx
jne 0x140196ad2
mov rcx, qword [rax + 8]
mov r8, qword [rsp + 0x48]
mov r15, r11
call sub.msvcrt.dll_memcmp
mov r11, r15
mov r15, qword [rsp + 0x3d0]
mov rdx, qword [rsp + 0x240]
test eax, eax
jne 0x140196ad2
cmp rbp, r11
mov rbx, qword [rsp + 0x60]
jae 0x140199831
imul rsi, rbp, 0x68
cmp qword [r15 + rsi], 0
mov r12, qword [rsp + 0x50]
je 0x140196bb2
add r15, rsi
mov rdx, qword [r15 + 8]
lea rcx, [rsp + 0x5b8]
call fcn.140061a70
mov r14, qword [rsp + 0x5d8]
cmp r14, rdi
jbe 0x140199831
mov rax, qword [rsp + 0x5d0]
mov dword [rax + rdi*4], 0xffff
mov rcx, qword [rsp + 0x5f0]
cmp rcx, rbp
jbe 0x140199831
mov r8, qword [rsp + 0x5e0]
lea rdx, [r8 + rsi]
movups xmm0, xmmword [r8 + rsi]
movups xmm1, xmmword [r8 + rsi + 0x10]
movups xmm2, xmmword [r8 + rsi + 0x20]
movups xmm3, xmmword [r8 + rsi + 0x30]
movaps xmmword [rsp + 0x260], xmm0
movaps xmmword [rsp + 0x270], xmm1
movaps xmmword [rsp + 0x280], xmm2
movaps xmmword [rsp + 0x290], xmm3
movups xmm0, xmmword [r8 + rsi + 0x40]
movaps xmmword [rsp + 0x2a0], xmm0
movups xmm0, xmmword [r8 + rsi + 0x50]
movaps xmmword [rsp + 0x2b0], xmm0
mov r9, qword [r8 + rsi + 0x60]
mov qword [rsp + 0x2c0], r9
dec rcx
imul r9, rcx, 0x68
mov r10, qword [r8 + r9 + 0x60]
movdqu xmm0, xmmword [r8 + r9 + 0x50]
movdqu xmm1, xmmword [r8 + r9 + 0x40]
movups xmm2, xmmword [r8 + r9]
movups xmm3, xmmword [r8 + r9 + 0x10]
movups xmm4, xmmword [r8 + r9 + 0x20]
movups xmm5, xmmword [r8 + r9 + 0x30]
movups xmmword [r8 + rsi], xmm2
movups xmmword [r8 + rsi + 0x10], xmm3
movups xmmword [r8 + rsi + 0x20], xmm4
movups xmmword [r8 + rsi + 0x30], xmm5
movdqu xmmword [r8 + rsi + 0x40], xmm1
movdqu xmmword [r8 + rsi + 0x50], xmm0
mov qword [r8 + rsi + 0x60], r10
mov qword [rsp + 0x5f0], rcx
cmp rcx, rbp
mov r9d, 0
cmovbe rdx, r9
mov r15, qword [rsp + 0xb8]
jbe 0x140196d73
movzx r8d, word [r8 + rsi + 0x60]
movzx r9d, word [rsp + 0x610]
and r9w, r8w
movzx r11d, r9w
jmp 0x140196cf0
inc r10
mov r11, r10
nop word cs:[rax + rax]
mov r10, r11
mov r11d, 0
cmp r10, r14
jae 0x140196cf0
movzx r11d, word [rax + r10*4]
cmp r11, 0xffff
cmovne r9, r11
je 0x140196cde
cmp r9, rcx
jb 0x140196cde
mov word [rax + r10*4], bp
mov word [rax + r10*4 + 2], r8w
cmp qword [rdx], 0
je 0x140196d73
mov r10, qword [rdx + 8]
mov r8, qword [rsp + 0x608]
cmp r10, r8
jae 0x140199831
mov r9, qword [rdx + 0x10]
mov rdx, qword [rsp + 0x5f8]
lea r10, [r10 + r10*8]
mov qword [rdx + r10*8], 0
mov qword [rdx + r10*8 + 8], rbp
cmp r9, r8
jae 0x140199831
lea r8, [r9 + r9*8]
mov qword [rdx + r8*8 + 0x10], 0
mov qword [rdx + r8*8 + 0x18], rbp
test rcx, rcx
movabs r13, 0xfefefefefefefeff
movabs rbp, 0x8080808080808080
je 0x140196df5
lea r8, [rdi + 1]
movzx ecx, word [rsp + 0x610]
nop dword [rax + rax]
mov rdx, r8
mov r8d, 0
cmp rdx, r14
jae 0x140196da0
movzx r8d, word [rax + rdx*4]
cmp r8w, 0xffff
je 0x140196df5
movzx r9d, word [rax + rdx*4 + 2]
mov r10d, ecx
and r10d, r9d
mov r11d, edx
sub r11d, r10d
test r11d, ecx
je 0x140196df5
cmp rdi, r14
jae 0x140199831
mov word [rax + rdi*4], r8w
mov word [rax + rdi*4 + 2], r9w
mov dword [rax + rdx*4], 0xffff
lea r8, [rdx + 1]
mov rdi, rdx
jmp 0x140196da0
lea rcx, [rsp + 0x278]
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0x6d0], rax
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqa xmmword [rsp + 0x6c0], xmm1
movdqa xmmword [rsp + 0x6b0], xmm0
mov rax, qword [rsp + 0x2a0]
test rax, rax
je 0x140196e4c
mov rdx, qword [rsp + 0x2a8]
mov r8, qword [rsp + 0x2b0]
lea rcx, [rsp + 0x2b8]
call qword [rax + 0x10]
cmp byte [rsp + 0x6d0], 2
mov rsi, qword [rsp + 0x88]
mov r14, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0x80]
je 0x140196458
mov rax, qword [rsp + 0x6b0]
mov rdx, qword [rsp + 0x6b8]
mov r8, qword [rsp + 0x6c0]
lea rcx, [rsp + 0x6c8]
call qword [rax + 0x10]
jmp 0x140196458
mov qword [rsp + 0x440], rdi
mov r15, rdi
jmp 0x140196616
mov rbx, rcx
mov r10, rdx
cmp r13, 8
jb 0x140196982
nop word [rax + rax]
movzx ecx, byte [r10]
xor rcx, rbx
imul rcx, r9
movzx r8d, byte [r10 + 1]
xor r8, rcx
imul r8, r9
movzx ecx, byte [r10 + 2]
xor rcx, r8
imul rcx, r9
movzx r8d, byte [r10 + 3]
xor r8, rcx
imul r8, r9
movzx ecx, byte [r10 + 4]
xor rcx, r8
imul rcx, r9
movzx r8d, byte [r10 + 5]
xor r8, rcx
imul r8, r9
movzx ecx, byte [r10 + 6]
xor rcx, r8
imul rcx, r9
movzx ebx, byte [r10 + 7]
add r10, 8
xor rbx, rcx
imul rbx, r9
cmp r10, rax
jne 0x140196ec0
jmp 0x140196982
and ecx, 0x7fff
movzx r12d, word [rsp + 0x610]
mov eax, ecx
and eax, r12d
mov r13, qword [rsp + 0x5d0]
mov r14, qword [rsp + 0x5d8]
mov r15, qword [rsp + 0x5e0]
mov ebx, ecx
mov r11, rbp
mov rcx, qword [rsp + 0x48]
neg rcx
xor esi, esi
mov rdi, rax
jmp 0x140196f76
inc rsi
inc rdi
mov rax, rdi
nop dword [rax]
mov rdi, rax
mov eax, 0
cmp rdi, r14
jae 0x140196f80
movzx ebp, word [r13 + rdi*4]
cmp rbp, 0xffff
je 0x140197040
movzx eax, word [r13 + rdi*4 + 2]
mov r8d, r12d
and r8d, eax
mov r9d, edi
sub r9d, r8d
mov r8d, r12d
and r8d, r9d
cmp rsi, r8
ja 0x140197040
cmp ax, bx
jne 0x140196f70
cmp r11, rbp
jbe 0x140199831
imul rax, rbp, 0x68
cmp qword [r15 + rax + 0x40], 0
je 0x140196f70
add rax, r15
add rax, 0x40
mov r8, qword [rsp + 0x48]
cmp qword [rax + 0x10], r8
jne 0x140196f70
mov rax, qword [rax + 8]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
lea r9, [rcx + r8]
cmp r9, 0xffffffffffffffff
je 0x140196b78
movzx r9d, byte [rdx + r8 + 1]
lea r10, [0x1402a09d0]
movzx r10d, byte [r9 + r10]
lea r9, [r8 + 1]
cmp r10b, byte [rax + r8 + 1]
mov r8, r9
je 0x140197000
cmp r9, qword [rsp + 0x48]
jb 0x140196f70
jmp 0x140196b78
mov rbx, qword [rsp + 0x60]
movabs r13, 0xfefefefefefefeff
movabs rbp, 0x8080808080808080
mov rsi, qword [rsp + 0x88]
mov r14, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0x80]
mov r15, qword [rsp + 0xb8]
mov r12, qword [rsp + 0x50]
jmp 0x140196458
mov rbx, rcx
cmp r13, 4
jb 0x140196982
movzx ecx, byte [rsi]
movzx ecx, byte [rcx + r10]
xor rcx, rbx
imul rcx, r11
movzx r8d, byte [rsi + 1]
movzx r8d, byte [r8 + r10]
xor r8, rcx
imul r8, r11
movzx ecx, byte [rsi + 2]
movzx ecx, byte [rcx + r10]
xor rcx, r8
imul rcx, r11
movzx r8d, byte [rsi + 3]
movzx ebx, byte [r8 + r10]
xor rbx, rcx
imul rbx, r11
add rsi, 4
cmp rsi, rax
jne 0x140197090
jmp 0x140196982
mov rax, qword [rsp + 0xb10]
mov rdx, qword [rsp + 0xb18]
mov r8, qword [rsp + 0xb20]
lea rcx, [rsp + 0xb28]
call qword [rax + 0x10]
mov rax, qword [rsp + 0xf0]
test rax, rax
je 0x14019712a
mov rdx, qword [rsp + 0xf8]
mov r8, qword [rsp + 0x100]
lea rcx, [rsp + 0x108]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x110]
test rax, rax
mov rdi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x98]
mov r14, qword [rsp + 0x78]
mov r15, qword [rsp + 0xe8]
lea rbp, [rsp + 0x8f8]
je 0x140197174
mov rdx, qword [rsp + 0x118]
mov r8, qword [rsp + 0x120]
lea rcx, [rsp + 0x128]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x130]
test rax, rax
je 0x14019719c
mov rdx, qword [rsp + 0x138]
mov r8, qword [rsp + 0x140]
lea rcx, [rsp + 0x148]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x150]
test rax, rax
je 0x1401971c4
mov rdx, qword [rsp + 0x158]
mov r8, qword [rsp + 0x160]
lea rcx, [rsp + 0x168]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x170]
test rax, rax
je 0x1401971ec
mov rdx, qword [rsp + 0x178]
mov r8, qword [rsp + 0x180]
lea rcx, [rsp + 0x188]
call qword [rax + 0x10]
cmp qword [rsp + 0x3e0], 0
je 0x14019720e
mov ecx, 1
mov rdx, qword [rsp + 0x3f0]
mov rax, rdx
test rcx, rcx
jne 0x140197246
jmp 0x140197261
mov rdx, qword [rsp + 0x3e8]
mov rax, qword [rsp + 0x3f0]
lea rcx, [rsp + 0xf0]
call qword [rax + 0x30]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0xf8]
test rcx, rcx
je 0x140197261
cmp rax, rdx
jne 0x140197261
test rdx, rdx
je 0x140197479
lea rcx, [rsp + 0x5b8]
call fcn.1400658c0
movzx ecx, byte [rsp + 0x670]
cmp qword [rsp + 0x3e0], 0
je 0x140197293
cmp qword [rsp + 0x3f0], 0
sete sil
mov qword [rsp + 0x80], rcx
cmp cl, 7
je 0x1401972bf
jmp 0x140197361
mov rsi, rcx
mov rcx, qword [rsp + 0x3e8]
mov rax, qword [rsp + 0x3f0]
call qword [rax + 0x28]
mov rcx, rsi
mov esi, eax
mov qword [rsp + 0x80], rcx
cmp cl, 7
jne 0x140197361
lea rcx, [rsp + 0x5b8]
call fcn.1400655f0
test rax, rax
je 0x140197361
test rdx, rdx
je 0x140197361
mov rax, qword [rsp + 0x3b8]
mov qword [rsp + 0x270], rax
movdqu xmm0, xmmword [rsp + 0x3a8]
movdqa xmmword [rsp + 0x260], xmm0
mov byte [rsp + 0xf0], 2
mov dword [rsp + 0xf4], 2
lea rsi, [rsp + 0xf0]
mov rcx, rsi
call fcn.140066ae0
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], 3
lea rcx, [rsp + 0x260]
mov rdx, rsi
call fcn.140191f70
lea rcx, [rsp + 0x5b8]
call fcn.140199b30
lea r13, [rsp + 0x8f0]
jmp 0x140197f3d
mov byte [rsp + 0x50], sil
mov rax, qword [rsp + 0x688]
test rax, rax
movabs r13, 0x2ea1828e5fcb6507
movabs rbp, 0x62e3ae81e1f51755
je 0x14019775a
mov rcx, qword [rax]
mov r9, qword [rax + 8]
lea r10, [rcx - 0x20]
xor r11d, r11d
movabs rsi, 0x876bd01d03ab4fff
mov rbp, r13
and rsi, r9
movdqu xmm0, xmmword [rcx + rsi]
movdqa xmm1, xmm0
pcmpeqb xmm1, xmm9
pmovmskb edi, xmm1
movabs r15, 0xadd524af399e3cc9
nop word cs:[rax + rax]
test di, di
je 0x140197411
lea ebx, [rdi - 1]
and ebx, edi
tzcnt edx, edi
add rdx, rsi
and rdx, r9
mov r8, rdx
shl r8, 5
mov rdi, r10
sub rdi, r8
mov r14, qword [rdi + 8]
xor r14, r15
mov rdi, qword [rdi]
movabs r13, 0x876bd01d03ab4fff
xor rdi, r13
or rdi, r14
mov edi, ebx
jne 0x1401973d0
jmp 0x140197449
pcmpeqb xmm0, xmm8
pmovmskb edx, xmm0
test edx, edx
mov rdi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x78]
mov r13, rbp
movabs rbp, 0x62e3ae81e1f51755
jne 0x14019775a
add rsi, r11
add rsi, 0x10
add r11, 0x10
jmp 0x1401973a3
sar r8, 5
lea r10, [r8 - 0x10]
and r10, r9
movdqu xmm0, xmmword [rcx + r10]
pcmpeqb xmm0, xmm8
psllw xmm0, 7
pmovmskb r9d, xmm0
test r9d, r9d
je 0x1401974a4
bsr r9w, r9w
xor r9d, 0xf
jmp 0x1401974a9
movzx ecx, byte [rsp + 0x670]
cmp rcx, 7
ja 0x1401981c9
mov eax, 0xb2
bt rax, rcx
mov edx, 0
jb 0x140197269
jmp 0x140197254
mov r9w, 0x10
mov rdi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x78]
mov r13, rbp
movdqu xmm0, xmmword [rcx + r8]
pcmpeqb xmm0, xmm8
pmovmskb r11d, xmm0
or r11d, 0x10000
tzcnt r11d, r11d
add r9d, r11d
mov r11b, pe_nt_image_headers64
cmp r9w, 0xf
movabs rbp, 0x62e3ae81e1f51755
ja 0x1401974f0
inc qword [rax + 0x10]
mov r11b, 0xff
neg rdx
mov byte [rcx + r8], r11b
mov byte [r10 + rcx + 0x10], r11b
dec qword [rax + 0x18]
shl rdx, 5
add rdx, rcx
mov r15, qword [rdx - 0x10]
test r15, r15
je 0x14019775a
mov rsi, qword [rdx - 8]
mov rcx, r15
call qword [rsi + 0x18]
movabs rcx, 0xadd524af399e3cc9
xor rdx, rcx
movabs rcx, 0x876bd01d03ab4fff
xor rax, rcx
or rax, rdx
jne 0x140197701
mov rsi, qword [r15]
mov rax, qword [r15 + 0x18]
mov qword [rsp + 0x430], rax
movdqu xmm0, xmmword [r15 + 8]
movdqa xmmword [rsp + 0x420], xmm0
mov rcx, qword [0x1402d9150]
xor edx, edx
mov r8, r15
call sub.kernel32.dll_HeapFree
test rsi, rsi
je 0x14019775a
mov rax, qword [rsp + 0x430]
mov qword [rsp + 0x270], rax
movaps xmm0, xmmword [rsp + 0x420]
movaps xmmword [rsp + 0x260], xmm0
mov r15, qword [rsp + 0x688]
test r15, r15
jne 0x140197607
movzx eax, byte [0x1402d9160]
mov rax, qword [0x1402d9150]
test rax, rax
jne 0x1401975ce
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140199831
mov qword [0x1402d9150], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov r15, rax
movups xmm0, xmmword [0x1402a2e40]
movups xmmword [rax + 0x10], xmm0
movups xmm0, xmmword [str._._]
movups xmmword [rax], xmm0
mov qword [rsp + 0x688], rax
mov rbx, r12
movzx eax, byte [0x1402d9160]
mov rax, qword [0x1402d9150]
test rax, rax
jne 0x140197632
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140199831
mov qword [0x1402d9150], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov qword [rax], rsi
movdqa xmm0, xmmword [rsp + 0x260]
movdqu xmmword [rax + 8], xmm0
mov rcx, qword [rsp + 0x270]
mov qword [rax + 0x18], rcx
lea rcx, [0x1402a09b0]
mov qword [rsp + 0x20], rcx
mov rcx, r15
mov rdx, rbp
mov r8, r13
mov r9, rax
call fcn.1401a8830
test rax, rax
je 0x140197757
mov r15, rax
mov r12, rdx
mov rcx, rax
call qword [rdx + 0x18]
xor rdx, r13
xor rax, rbp
or rax, rdx
jne 0x14019772b
movdqu xmm0, xmmword [r15]
movdqu xmm1, xmmword [r15 + 0x10]
movdqa xmmword [rsp + 0x100], xmm1
movdqa xmmword [rsp + 0xf0], xmm0
mov rcx, qword [0x1402d9150]
xor edx, edx
mov r8, r15
call sub.kernel32.dll_HeapFree
mov rax, qword [rsp + 0xf0]
test rax, rax
je 0x140197757
mov rdx, qword [rsp + 0xf8]
mov r8, qword [rsp + 0x100]
lea rcx, [rsp + 0x108]
call qword [rax + 0x10]
jmp 0x140197757
mov rcx, r15
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x14019775a
cmp qword [rsi + 0x10], 0x11
jb 0x140197718
mov r15, qword [r15 - 8]
mov rcx, qword [0x1402d9150]
xor edx, edx
mov r8, r15
call sub.kernel32.dll_HeapFree
jmp 0x14019775a
mov rcx, r15
call qword [r12]
cmp qword [r12 + 8], 0
je 0x140197757
cmp qword [r12 + 0x10], 0x11
jb 0x140197746
mov r15, qword [r15 - 8]
mov rcx, qword [0x1402d9150]
xor edx, edx
mov r8, r15
call sub.kernel32.dll_HeapFree
mov r12, rbx
cmp byte [rsp + 0x80], 7
setne byte [rsp + 0xb8]
mov r8d, 0xe0
lea rcx, [rsp + 0x800]
lea rdx, [rsp + 0x5b8]
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x248]
mov rcx, qword [rax]
test rcx, rcx
mov qword [rsp + 0x68], rcx
cmove rax, rcx
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x8d0]
test rax, rax
je 0x14019794b
mov rcx, qword [rax]
mov r9, qword [rax + 8]
lea r10, [rcx - 0x20]
xor r11d, r11d
mov rsi, rbp
and rsi, r9
movdqu xmm0, xmmword [rcx + rsi]
movdqa xmm1, xmm0
pcmpeqb xmm1, xmm7
pmovmskb edi, xmm1
nop word [rax + rax]
test di, di
je 0x140197817
lea ebx, [rdi - 1]
and ebx, edi
tzcnt edx, edi
add rdx, rsi
and rdx, r9
mov r8, rdx
shl r8, 5
mov rdi, r10
sub rdi, r8
mov r14, qword [rdi + 8]
xor r14, r13
mov rdi, qword [rdi]
xor rdi, rbp
or rdi, r14
mov edi, ebx
jne 0x1401977e0
jmp 0x14019783f
pcmpeqb xmm0, xmm8
pmovmskb edx, xmm0
test edx, edx
mov rdi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x78]
jne 0x14019794b
add rsi, r11
add rsi, 0x10
add r11, 0x10
jmp 0x1401977c3
sar r8, 5
lea r10, [r8 - 0x10]
and r10, r9
movdqu xmm0, xmmword [rcx + r10]
pcmpeqb xmm0, xmm8
psllw xmm0, 7
pmovmskb r9d, xmm0
test r9d, r9d
je 0x14019786f
bsr r9w, r9w
xor r9d, 0xf
jmp 0x140197874
mov r9w, 0x10
mov rdi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x78]
movdqu xmm0, xmmword [rcx + r8]
pcmpeqb xmm0, xmm8
pmovmskb r11d, xmm0
or r11d, 0x10000
tzcnt r11d, r11d
add r9d, r11d
mov r11b, pe_nt_image_headers64
cmp r9w, 0xf
ja 0x1401978ae
inc qword [rax + 0x10]
mov r11b, 0xff
neg rdx
mov byte [rcx + r8], r11b
mov byte [r10 + rcx + 0x10], r11b
dec qword [rax + 0x18]
shl rdx, 5
add rdx, rcx
mov r15, qword [rdx - 0x10]
test r15, r15
je 0x14019794b
mov rsi, qword [rdx - 8]
mov rcx, r15
call qword [rsi + 0x18]
xor rdx, r13
xor rax, rbp
or rax, rdx
jne 0x140197923
movdqu xmm0, xmmword [r15]
movdqu xmm1, xmmword [r15 + 0x10]
movdqa xmmword [rsp + 0x5a0], xmm1
movdqa xmmword [rsp + 0x590], xmm0
mov rcx, qword [0x1402d9150]
xor edx, edx
mov r8, r15
call sub.kernel32.dll_HeapFree
mov rbx, qword [rsp + 0x8d0]
test rbx, rbx
jne 0x140197968
jmp 0x140197a5f
mov rcx, r15
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x14019794b
cmp qword [rsi + 0x10], 0x11
jb 0x14019793a
mov r15, qword [r15 - 8]
mov rcx, qword [0x1402d9150]
xor edx, edx
mov r8, r15
call sub.kernel32.dll_HeapFree
mov qword [rsp + 0x590], 0
mov rbx, qword [rsp + 0x8d0]
test rbx, rbx
je 0x140197a5f
mov rsi, qword [rbx + 0x18]
test rsi, rsi
je 0x140197a5f
mov r15, qword [rbx]
movdqa xmm0, xmmword [r15]
pmovmskb edi, xmm0
not edi
lea r13, [r15 + 0x10]
mov rbp, r15
jmp 0x1401979ad
mov rcx, qword [0x1402d9150]
xor edx, edx
mov r8, r12
call sub.kernel32.dll_HeapFree
lea eax, [rdi - 1]
and eax, edi
mov edi, eax
dec rsi
je 0x140197a10
test di, di
jne 0x1401979df
nop word cs:[rax + rax]
movdqa xmm0, xmmword [r13]
pmovmskb edi, xmm0
add rbp, 0xfffffffffffffe00
add r13, 0x10
cmp edi, 0xffff
je 0x1401979c0
not edi
tzcnt eax, edi
shl rax, 5
mov rcx, rbp
sub rcx, rax
mov r12, qword [rcx - 0x10]
mov r14, qword [rcx - 8]
mov rcx, r12
call qword [r14]
cmp qword [r14 + 8], 0
je 0x1401979a1
cmp qword [r14 + 0x10], 0x11
jb 0x140197990
mov r12, qword [r12 - 8]
jmp 0x140197990
mov rsi, qword [rbx + 8]
test rsi, rsi
je 0x140197a27
lea r8, [rsi + 0x11]
mov rcx, r15
mov dl, 0xff
call sub.msvcrt.dll_memset
mov qword [rbx + 0x18], 0
lea rax, [rsi + 1]
mov rcx, rax
shr rcx, 3
and rax, 0xfffffffffffffff8
sub rax, rcx
cmp rsi, 8
cmovb rax, rsi
mov qword [rbx + 0x10], rax
mov rdi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x98]
mov r14, qword [rsp + 0x78]
mov r15, qword [r14]
lea rsi, [r15 + 0x10]
mov rcx, rsi
call sub.kernel32.dll_AcquireSRWLockExclusive
movzx eax, byte [r15 + 0x18]
test al, al
jne 0x140199831
mov rbx, qword [rdi + 0xa0]
lea r13, [rbx + 0x10]
mov rcx, r13
call sub.kernel32.dll_AcquireSRWLockExclusive
movzx eax, byte [rbx + 0x18]
test al, al
jne 0x140199831
lea rdx, [r15 + 0x20]
lea rcx, [rsp + 0xf0]
call fcn.14004b920
movzx ebp, byte [rsp + 0xf0]
cmp bpl, 3
jne 0x140197b3f
mov r12, qword [r15 + 0xc0]
test r12b, 1
jne 0x140197bc2
cmp qword [rsp + 0x68], 0
je 0x140197bda
mov rdx, qword [rsp + 0x48]
mov ecx, dword [rdx + 8]
cmp qword [r15 + 0x1c8], rcx
jbe 0x140199831
mov rax, qword [r15 + 0x1b8]
test rax, rax
je 0x140199831
imul rcx, rcx, 0x130
cmp dword [rax + rcx], 2
je 0x140199831
mov edx, dword [rdx + 0xc]
add rax, rcx
cmp dword [rax + 0x114], edx
jne 0x140199831
mov bpl, 3
cmp byte [rax + 0x124], 0
je 0x140197bda
mov byte [rsp + 0xa8], 3
jmp 0x140197bf3
movzx eax, byte [rsp + 0xf1]
mov byte [rsp + 0xa8], al
lea rcx, [rsp + 0x108]
mov eax, dword [rcx - 0x16]
mov dword [rsp + 0x250], eax
movzx eax, word [rcx - 0x12]
mov word [rsp + 0x254], ax
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0xc0], rax
movzx eax, byte [rsp + 0x110]
mov byte [rsp + 0x3e], al
lea rcx, [rsp + 0x111]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0xd8], eax
mov dword [rsp + 0xdb], ecx
jmp 0x140197bfb
shr r12d, 8
or r12b, 5
mov bpl, 3
mov eax, r12d
mov byte [rsp + 0xa8], r12b
jmp 0x140197bf3
cmp byte [r15 + 0x1b0], 0
je 0x140197f4f
mov byte [rsp + 0xa8], 1
mov bpl, 3
mov r12, qword [rsp + 0x98]
mov rcx, r13
call fcn.1401f2d54
mov rcx, rsi
call fcn.1401f2d54
mov rax, qword [rsp + 0x590]
test rax, rax
mov r15, qword [rsp + 0xe8]
je 0x140197c3b
mov rdx, qword [rsp + 0x598]
mov r8, qword [rsp + 0x5a0]
lea rcx, [rsp + 0x5a8]
call qword [rax + 0x10]
lea rcx, [rsp + 0x800]
call fcn.140199b30
lea r13, [rsp + 0x8f0]
mov rdx, qword [rsp + 0xc0]
mov byte [rsp + 0xf0], bpl
movzx r11d, byte [rsp + 0xa8]
mov byte [rsp + 0xf1], r11b
movzx eax, word [rsp + 0x254]
lea rcx, [rsp + 0x108]
mov word [rcx - 0x12], ax
mov eax, dword [rsp + 0x250]
mov dword [rcx - 0x16], eax
mov r10, qword [rsp + 0x70]
mov qword [rsp + 0xf8], r10
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x100], rax
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0x108], rdx
movzx r9d, byte [rsp + 0x3e]
mov byte [rsp + 0x110], r9b
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
lea rdx, [rsp + 0x111]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
cmp bpl, 3
jne 0x140197d1c
mov al, 3
mov rbx, qword [rsp + 0x60]
mov r14, qword [rsp + 0x78]
lea rbp, [rsp + 0x8f8]
movzx esi, byte [rsp + 0x238]
mov r9, qword [rsp + 0x230]
mov r10, qword [rsp + 0x228]
jmp 0x140197e51
test bpl, bpl
mov rbx, qword [rsp + 0x60]
je 0x140197d94
movzx eax, bpl
cmp eax, 1
movzx r8d, byte [rsp + 0x3f]
jne 0x140197dc4
lea rcx, [rsp + 0x111]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0x263], ecx
mov dword [rsp + 0x260], eax
mov al, 1
mov ecx, dword [rsp + 0xf4]
mov dword [rsp + 0xa4], ecx
mov r8d, r9d
mov r9, qword [rsp + 0x90]
mov rcx, r10
mov r10, qword [rsp + 0xc0]
mov qword [rsp + 0xc8], rcx
mov r14, qword [rsp + 0x78]
lea rbp, [rsp + 0x8f8]
jmp 0x140197e1d
mov eax, dword [rsp + 0xf4]
mov dword [rsp + 0xa4], eax
mov eax, r10d
mov qword [rsp + 0xc8], rax
xor eax, eax
mov r14, qword [rsp + 0x78]
lea rbp, [rsp + 0x8f8]
movzx r8d, byte [rsp + 0x3f]
jmp 0x140197e0d
test r10, r10
mov r14, qword [rsp + 0x78]
lea rbp, [rsp + 0x8f8]
je 0x140197df7
mov ecx, r11d
lea rdx, [rsp + 0xf8]
call fcn.14004ac20
movzx r11d, byte [rsp + 0xa8]
movzx r8d, byte [rsp + 0x3f]
jmp 0x140197e03
movzx eax, r11b
shl rax, 0x20
or rax, 3
mov qword [rsp + 0xc8], rax
mov al, 4
mov r9, qword [rsp + 0x3c8]
mov r10, qword [rsp + 0x560]
mov ecx, dword [rsp + 0x260]
mov edx, dword [rsp + 0x263]
mov dword [rsp + 0x39b], edx
mov dword [rsp + 0x398], ecx
mov byte [rsp + 0x3f], r8b
mov esi, r8d
mov qword [rsp + 0x3c8], r9
mov qword [rsp + 0x560], r10
mov ecx, dword [rsp + 0x398]
mov edx, dword [rsp + 0x39b]
mov dword [rsp + 0xd3], edx
mov dword [rsp + 0xd0], ecx
mov ecx, dword [rsp + 0xd0]
mov edx, dword [rsp + 0xd3]
lea r8, [rsp + 0x111]
mov dword [r8 + 3], edx
mov dword [r8], ecx
mov rcx, qword [rsp + 0x3b8]
mov qword [rsp + 0x270], rcx
movdqu xmm0, xmmword [rsp + 0x3a8]
movdqa xmmword [rsp + 0x260], xmm0
mov byte [rsp + 0xf0], al
mov byte [rsp + 0xf1], r11b
mov eax, dword [rsp + 0xa4]
mov dword [rsp + 0xf4], eax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0xf8], rax
mov qword [rsp + 0x230], r9
mov qword [rsp + 0x100], r9
mov qword [rsp + 0x228], r10
mov qword [rsp + 0x108], r10
mov byte [rsp + 0x238], sil
mov byte [rsp + 0x110], sil
lea rsi, [rsp + 0xf0]
mov rcx, rsi
call fcn.140066ae0
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], 3
lea rcx, [rsp + 0x260]
mov rdx, rsi
call fcn.140191f70
lea rcx, [rsp + 0x3e0]
call fcn.14014f700
jmp 0x1401956e0
shr r12, 0x20
lea eax, [r12 + 2]
mov ecx, eax
shr ecx, 0x1f
mov dword [r15 + 0xc0], ecx
mov dword [r15 + 0xc4], eax
mov eax, dword [r15 + 0xac]
mov ecx, dword [r15 + 0x12c]
mov dword [rsp + 0x374], r12d
mov byte [rsp + 0x2b0], 6
mov word [rsp + 0x380], 0
mov qword [rsp + 0x2d8], 0
mov dword [rsp + 0x318], 0
mov dword [rsp + 0x2e0], ecx
mov dword [rsp + 0x378], 0
mov qword [rsp + 0x260], 0
mov dword [rsp + 0x324], 0
mov dword [rsp + 0x330], 0
mov dword [rsp + 0x33c], 0
lea rcx, [rsp + 0x278]
mov byte [rcx + 0x10e], 0
mov dword [rcx + 0x10a], 0
movups xmmword [rcx + 0x6c], xmm6
mov dword [rcx + 0x7c], 0
mov dword [rsp + 0x300], eax
mov dword [rsp + 0x304], eax
mov dword [rsp + 0x37c], 0
mov dword [rsp + 0x348], 0
mov word [rsp + 0x387], 0x100
mov dword [rsp + 0x2a8], 0x3b9aca00
mov dword [rsp + 0x354], 0
mov qword [rsp + 0x278], 0
mov qword [rsp + 0x308], 0
mov dword [rsp + 0x360], 0
xor eax, eax
cmp byte [rsp + 0x8b8], 5
sete al
mov qword [rsp + 0x290], rax
mov r8d, 0xe0
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x800]
call sub.msvcrt.dll_memcpy
movaps xmm0, xmmword [rsp + 0x590]
movaps xmm1, xmmword [rsp + 0x5a0]
movaps xmmword [rsp + 0x790], xmm1
movaps xmmword [rsp + 0x780], xmm0
movzx eax, byte [rsp + 0x1a8]
mov byte [rsp + 0x68], al
mov rdi, qword [rsp + 0x1c0]
movzx eax, byte [rsp + 0x1c8]
mov byte [rsp + 0x88], al
lea rax, [rsp + 0x108]
movups xmm0, xmmword [rax + 0x48]
movups xmm1, xmmword [rax + 0x58]
movups xmm2, xmmword [rax + 0x68]
movups xmm3, xmmword [rax + 0x78]
movaps xmmword [rsp + 0x7a0], xmm0
movaps xmmword [rsp + 0x7b0], xmm1
movaps xmmword [rsp + 0x7c0], xmm2
movaps xmmword [rsp + 0x7d0], xmm3
movups xmm0, xmmword [rax + 0x88]
movaps xmmword [rsp + 0x7e0], xmm0
mov rax, qword [rax + 0x98]
mov qword [rsp + 0x7f0], rax
test rdi, rdi
je 0x14019815b
mov rcx, rdi
call fcn.140053e30
mov rcx, qword [0x1402d9150]
xor edx, edx
mov r8, rdi
call sub.kernel32.dll_HeapFree
cmp qword [rsp + 0x7e0], 0
setne al
movzx r14d, byte [rsp + 0x7a0]
test r14b, r14b
setne dil
or dil, al
je 0x1401981c2
mov rbp, qword [rsp + 0x7d0]
lea rcx, [rsp + 0x7d8]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movaps xmmword [rsp + 0x6b0], xmm0
movaps xmmword [rsp + 0x6c0], xmm1
test r14b, r14b
je 0x1401981d0
mov rax, qword [rcx - 0x37]
mov rcx, qword [rcx - 0x30]
mov qword [rsp + 0x547], rcx
mov qword [rsp + 0x540], rax
jmp 0x1401981d3
mov r14b, 3
xor ebp, ebp
jmp 0x1401981d3
xor edx, edx
jmp 0x140197254
mov r14b, 3
mov rax, qword [rsp + 0x7c0]
test rax, rax
je 0x14019820a
mov r8, qword [rsp + 0x7b0]
lea rcx, [rsp + 0x7d8]
movups xmm0, xmmword [rcx - 0x20]
movaps xmmword [rsp + 0x400], xmm0
mov rcx, qword [rcx - 0x10]
mov qword [rsp + 0x410], rcx
jmp 0x14019820d
xor r8d, r8d
mov rcx, qword [rsp + 0x547]
lea rdx, [rsp + 0x991]
mov qword [rdx + 7], rcx
mov rcx, qword [rsp + 0x540]
mov qword [rdx], rcx
mov rcx, qword [rsp + 0x410]
mov qword [rdx + 0x27], rcx
movaps xmm0, xmmword [rsp + 0x400]
movups xmmword [rdx + 0x17], xmm0
movaps xmm0, xmmword [rsp + 0x6b0]
movaps xmm1, xmmword [rsp + 0x6c0]
movups xmmword [rdx + 0x47], xmm1
movups xmmword [rdx + 0x37], xmm0
mov byte [rsp + 0x990], r14b
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x9a0], r8
mov qword [rsp + 0x9c0], rbp
test rax, rax
je 0x14019828d
test dil, dil
je 0x1401982b0
test rbp, rbp
jne 0x1401982dc
jmp 0x1401983bb
mov rax, qword [rsp + 0x7b0]
mov rdx, qword [rsp + 0x7b8]
lea rcx, [rsp + 0x7c8]
xor r8d, r8d
call qword [rax + 0x10]
test dil, dil
jne 0x140198283
mov rax, qword [rsp + 0x7d0]
mov rdx, qword [rsp + 0x7d8]
mov r8, qword [rsp + 0x7e0]
lea rcx, [rsp + 0x7e8]
call qword [rax + 0x10]
test rbp, rbp
je 0x1401983bb
lea rax, [rsp + 0x991]
movups xmm0, xmmword [rax + 0x37]
movups xmm1, xmmword [rax + 0x47]
lea rax, [rsp + 0x6c8]
movups xmmword [rax], xmm1
movups xmmword [rax - 0x10], xmm0
mov qword [rsp + 0x6b0], rbp
mov rax, qword [rsp + 0x6b8]
mov rdi, qword [rsp + 0x6c0]
cmp rdi, 1
mov r8, rdi
adc r8, 0
test rdi, rdi
mov rdx, rax
mov qword [rsp + 0xb0], rbp
mov ebp, r14d
mov r14, rax
lea rax, [0x14029f9f6]
cmove rdx, rax
lea rcx, [rsp + 0x400]
call fcn.140037770
lea rcx, [rsp + 0x6c8]
mov rdx, r14
mov r14d, ebp
mov r8, rdi
mov rax, qword [rsp + 0xb0]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x400]
lea rcx, [rsp + 0x408]
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x6b0], xmm0
mov rcx, qword [rcx + 0x10]
mov qword [rsp + 0x6c0], rcx
test rax, rax
je 0x1401983bb
mov rcx, qword [rsp + 0x6c0]
lea rdi, [rsp + 0x578]
mov qword [rdi + 0x10], rcx
movaps xmm0, xmmword [rsp + 0x6b0]
movups xmmword [rdi], xmm0
mov qword [rsp + 0x570], rax
jmp 0x1401983e5
lea rax, [0x1402236d8]
mov qword [rsp + 0x570], rax
lea rcx, str.combase.dll
mov qword [rsp + 0x578], rcx
lea rdi, [rsp + 0x578]
movups xmmword [rdi + 8], xmm6
movzx ecx, byte [rsp + 0x68]
test ecx, ecx
lea rbp, [rsp + 0x6b0]
je 0x140198452
cmp ecx, 7
je 0x140198452
cmp qword [rsp + 0x580], 0
jne 0x140198452
mov rdx, qword [rsp + 0x578]
lea rcx, [rsp + 0x588]
xor r8d, r8d
call qword [rax + 0x10]
lea rax, [0x1402236d8]
mov qword [rsp + 0x570], rax
lea rcx, [0x14029f9f6]
mov qword [rsp + 0x578], rcx
mov qword [rsp + 0x580], 1
mov qword [rsp + 0x588], 0
mov qword [rsp + 0x400], rax
mov rcx, qword [rdi + 0x10]
lea rdx, [rsp + 0x408]
mov qword [rdx + 0x10], rcx
movups xmm0, xmmword [rdi]
movups xmmword [rdx], xmm0
cmp qword [rsp + 0x410], 0
je 0x140198494
mov rcx, qword [rdi + 0x10]
mov qword [rsp + 0x550], rcx
movups xmm0, xmmword [rdi]
movaps xmmword [rsp + 0x540], xmm0
jmp 0x1401984ac
mov rdx, qword [rsp + 0x408]
lea rcx, [rsp + 0x418]
xor r8d, r8d
call qword [rax + 0x10]
xor eax, eax
mov rdi, qword [rsp + 0x48]
movzx ecx, byte [rsp + 0x68]
mov byte [rsp + 0x6b0], cl
lea rdx, [rsp + 0x108]
mov rcx, qword [rdx + 0xb0]
lea r8, [rsp + 0x6c8]
mov qword [r8 - 8], rcx
movups xmm0, xmmword [rdx + 0xa1]
movups xmmword [r8 - 0x17], xmm0
mov qword [rsp + 0x6c8], 0
mov qword [rsp + 0x6e8], 0
mov qword [rsp + 0x708], rax
mov rax, qword [rsp + 0x550]
mov qword [r8 + 0x58], rax
movaps xmm0, xmmword [rsp + 0x540]
movups xmmword [r8 + 0x48], xmm0
movdqa xmm0, xmmword [rsp + 0x780]
movdqa xmm1, xmmword [rsp + 0x790]
movdqu xmmword [r8 + 0x70], xmm1
movdqu xmmword [r8 + 0x60], xmm0
mov word [rsp + 0x748], 0
cmp r14b, 3
je 0x14019855b
mov rcx, rbp
lea rdx, [rsp + 0x990]
call fcn.140050eb0
test rdi, rdi
je 0x14019860c
lea rax, [rsp + 0x991]
movups xmm0, xmmword [rax + 0xf]
movups xmm1, xmmword [rax + 0x1f]
movaps xmmword [rsp + 0x550], xmm1
movaps xmmword [rsp + 0x540], xmm0
mov rdi, qword [rsp + 0x548]
mov r14, qword [rsp + 0x550]
lea rcx, [rsp + 0x400]
mov rdx, rdi
mov r8, r14
call fcn.140037770
mov rax, qword [rsp + 0x6e8]
test rax, rax
je 0x1401985cf
mov rdx, qword [rsp + 0x6f0]
mov r8, qword [rsp + 0x6f8]
lea rcx, [rsp + 0x700]
call qword [rax + 0x10]
movdqu xmm0, xmmword [rsp + 0x400]
movdqu xmm1, xmmword [rsp + 0x410]
lea rax, [rsp + 0x6c8]
movdqu xmmword [rax + 0x30], xmm1
movdqu xmmword [rax + 0x20], xmm0
mov rax, qword [rsp + 0x540]
lea rcx, [rsp + 0x558]
mov rdx, rdi
mov r8, r14
call qword [rax + 0x10]
mov r8d, 0xa0
lea r14, [rsp + 0xbe0]
mov rcx, r14
mov rdx, rbp
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0xbf8]
or rax, qword [rsp + 0xc18]
mov rdi, qword [rsp + 0x40]
jne 0x140198681
cmp byte [rsp + 0x88], 3
jne 0x14019866a
lea rcx, [rsp + 0xbe0]
call fcn.140049a80
lea rcx, [rsp + 0xf0]
call fcn.140069e40
mov bl, 7
mov bpl, 3
jmp 0x14019877f
lea r14, [rsp + 0xbe0]
mov rcx, r14
lea rdx, [0x1402a11a8]
call fcn.140050eb0
mov r8d, 0xa0
lea rcx, [rsp + 0x6e0]
mov rdx, r14
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x68], rax
mov rdx, rbp
movzx ebp, byte [rsp + 0xf8]
movzx eax, byte [rsp + 0xf9]
mov byte [rsp + 0x48], al
lea r8, [rsp + 0x108]
mov eax, dword [r8 - 0xe]
mov dword [rsp + 0x258], eax
movzx eax, word [r8 - 0xa]
mov word [rsp + 0x25c], ax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x6a8], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x6a0], rax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x698], rax
movzx eax, byte [rsp + 0x118]
mov byte [rsp + 0x5f], al
mov eax, dword [r8 + 0x11]
mov ecx, dword [r8 + 0x14]
mov dword [rsp + 0x3a3], ecx
mov dword [rsp + 0x3a0], eax
movups xmm0, xmmword [r8 + 0x18]
movdqu xmm1, xmmword [r8 + 0x38]
movaps xmmword [rsp + 0x6b0], xmm0
movdqu xmm0, xmmword [r8 + 0x28]
movdqa xmmword [rsp + 0x6c0], xmm0
movdqa xmmword [rsp + 0x6d0], xmm1
mov r8d, 0xd0
lea r14, [rsp + 0xb10]
mov rcx, r14
call sub.msvcrt.dll_memcpy
cmp qword [rsp + 0x68], 3
jne 0x140198836
movzx ebx, byte [rsp + 0x48]
movzx eax, word [rsp + 0x25c]
mov word [rsp + 0x3c4], ax
mov ecx, dword [rsp + 0x258]
mov edx, dword [rsp + 0x3a0]
mov r8d, dword [rsp + 0x3a3]
mov dword [rsp + 0xe0], edx
mov dword [rsp + 0xe3], r8d
mov dword [rsp + 0x250], ecx
mov word [rsp + 0x254], ax
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe3]
mov dword [rsp + 0xdb], ecx
mov dword [rsp + 0xd8], eax
lea rcx, [rsp + 0x260]
call fcn.14019b9f0
mov byte [rsp + 0xa8], bl
mov rax, qword [rsp + 0x6a8]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x6a0]
mov qword [rsp + 0x90], rax
mov r14, qword [rsp + 0x698]
movzx eax, byte [rsp + 0x5f]
mov byte [rsp + 0x3e], al
mov r12, qword [rsp + 0x98]
mov r15, qword [rsp + 0xe8]
jmp 0x140198b01
movzx edi, byte [rsp + 0xb8]
and dil, byte [rsp + 0x50]
lea rax, [rbx + 0x20]
mov qword [rsp + 0xb8], rax
lea rax, [r15 + 0xc0]
mov qword [rsp + 0x88], rax
lea rax, [r15 + 0x170]
mov qword [rsp + 0xb0], rax
or dil, 4
movzx eax, word [rsp + 0x25c]
mov word [rsp + 0x3c4], ax
mov eax, dword [rsp + 0x258]
mov dword [rsp + 0x3c0], eax
mov eax, dword [rsp + 0x3a0]
mov ecx, dword [rsp + 0x3a3]
mov dword [rsp + 0xe0], eax
mov dword [rsp + 0xe3], ecx
mov r8d, 0xd0
lea rcx, [rsp + 0x450]
mov rdx, r14
call sub.msvcrt.dll_memcpy
mov byte [rsp + 0x520], 0
mov eax, dword [rsp + 0x98c]
lea rdx, [rsp + 0x421]
mov dword [rdx + 0x108], eax
mov rax, qword [rsp + 0x984]
mov qword [rdx + 0x100], rax
mov byte [rsp + 0x52d], 2
mov dword [rsp + 0x530], r12d
mov byte [rsp + 0x534], dil
movzx eax, byte [rsp + 0x3df]
mov byte [rdx + 0x116], al
movzx eax, word [rsp + 0x3dd]
mov word [rdx + 0x114], ax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x420], rax
mov byte [rsp + 0x428], bpl
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x429], al
movzx eax, word [rsp + 0x3c4]
mov word [rdx + 0xd], ax
mov eax, dword [rsp + 0x3c0]
mov dword [rdx + 9], eax
mov rax, qword [rsp + 0x6a8]
mov qword [rsp + 0x430], rax
mov rax, qword [rsp + 0x6a0]
mov qword [rsp + 0x438], rax
mov rax, qword [rsp + 0x698]
mov qword [rsp + 0x440], rax
movzx eax, byte [rsp + 0x5f]
mov byte [rsp + 0x448], al
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe3]
mov dword [rdx + 0x2b], ecx
mov dword [rdx + 0x28], eax
lea r12, [r15 + 0x1b8]
mov edi, dword [rsp + 0x374]
mov r8d, 0x130
lea r14, [rsp + 0xf0]
mov rcx, r14
lea rdx, [rsp + 0x260]
call sub.msvcrt.dll_memcpy
lea rbp, [rsp + 0x6b0]
mov rcx, rbp
mov rdx, r12
mov r8d, edi
mov r9, r14
call fcn.1400528f0
lea rax, [r15 + 0x160]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x88]
lea rdx, [rsp + 0x420]
mov r8, qword [rsp + 0xb8]
mov r9, rbp
call fcn.14019aca0
cmp al, 0xc
jne 0x140198aba
inc qword [r15 + 0x228]
mov r14, qword [r15 + 0x170]
mov rdi, qword [r15 + 0x178]
lock inc qword [r15]
jle 0x140199831
lea rcx, [rsp + 0xf0]
mov rdx, r15
mov r8, rbp
call fcn.14004b170
lock inc qword [rbx]
mov r12, qword [rsp + 0x98]
jle 0x140199831
inc rdi
cmp r14, rdi
setbe byte [rsp + 0x3e]
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x90], rax
mov rcx, r13
call fcn.1401f2d54
mov rcx, rsi
call fcn.1401f2d54
mov rdi, qword [rsp + 0x40]
lea r13, [rsp + 0x8f0]
jmp 0x140198b29
mov r12d, eax
mov rcx, qword [rsp + 0x6b0]
mov edx, dword [rsp + 0x6bc]
call fcn.1400533f0
mov rcx, rbp
call fcn.140053280
mov bpl, 3
mov byte [rsp + 0xa8], r12b
mov rdi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x98]
mov r15, qword [rsp + 0xe8]
mov r14, qword [rsp + 0xc0]
mov rcx, r13
call fcn.1401f2d54
mov rcx, rsi
call fcn.1401f2d54
mov rbx, r14
cmp bpl, 4
lea r13, [rsp + 0x8f0]
mov rdx, r14
jne 0x140197c58
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
mov dword [rsp + 0x39b], ecx
mov dword [rsp + 0x398], eax
mov r14, qword [rsp + 0x70]
mov qword [rsp + 0x260], r14
mov r15, qword [rsp + 0x90]
mov qword [rsp + 0x268], r15
mov qword [rsp + 0x270], rbx
lea rcx, [r14 + 0x10]
mov qword [rsp + 0x68], rcx
call sub.kernel32.dll_AcquireSRWLockExclusive
movzx eax, byte [r14 + 0x18]
test al, al
jne 0x140199831
mov rdx, r14
mov ecx, r15d
cmp qword [r14 + 0x1c8], rcx
mov r14, qword [rsp + 0x78]
lea rbp, [rsp + 0x8f8]
jbe 0x140199831
mov rax, qword [rdx + 0x1b8]
test rax, rax
je 0x140199831
imul rcx, rcx, 0x130
cmp dword [rax + rcx], 2
je 0x140199831
shr r15, 0x20
add rax, rcx
cmp dword [rax + 0x114], r15d
jne 0x140199831
movzx eax, byte [rax + 0x124]
mov byte [rsp + 0x48], al
mov rcx, qword [rsp + 0x68]
call fcn.1401f2d54
cmp byte [rsp + 0x3e], 0
mov r15, qword [rsp + 0xe8]
je 0x140198c4e
cmp byte [rsp + 0x48], 0
je 0x140198c4e
lea rcx, [rsp + 0x420]
lea rdx, [rsp + 0x260]
call fcn.14004b1d0
mov rsi, qword [rsp + 0x248]
cmp qword [rsi], 0
je 0x140198c41
mov rcx, rsi
call fcn.14004b270
mov rax, qword [rsi]
lock dec qword [rax]
jne 0x140198c41
mov rcx, qword [rsi]
call fcn.140062b90
movdqu xmm0, xmmword [rsp + 0x420]
movdqu xmmword [rsi], xmm0
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x260]
call fcn.14004b1d0
cmp byte [rsp + 0x80], 7
mov rax, qword [rsp + 0x270]
lea rcx, [rsp + 0x108]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x260]
movups xmmword [rcx], xmm0
mov byte [rsp + 0x100], 0
movups xmm0, xmmword [rsp + 0xf0]
movzx eax, byte [rsp + 0x100]
mov rcx, qword [rsp + 0x101]
mov edx, dword [rsp + 0x109]
movzx r8d, word [rsp + 0x10d]
movzx r9d, byte [rsp + 0x10f]
movzx r10d, byte [rsp + 0x110]
lea rsi, [rsp + 0x111]
mov r11d, dword [rsi]
mov esi, dword [rsi + 3]
mov dword [rsp + 0xd0], r11d
mov dword [rsp + 0xd3], esi
mov r11, qword [rsp + 0x118]
movups xmmword [rsp + 0x278], xmm0
mov byte [rsp + 0x288], al
mov qword [rsp + 0x289], rcx
mov dword [rsp + 0x291], edx
mov word [rsp + 0x295], r8w
mov byte [rsp + 0x297], r9b
mov byte [rsp + 0x298], r10b
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
lea rdx, [rsp + 0x278]
mov dword [rdx + 0x24], ecx
mov dword [rdx + 0x21], eax
mov qword [rsp + 0x2a0], r11
movaps xmm0, xmmword [rsp + 0x3e0]
movdqa xmm1, xmmword [rsp + 0x3f0]
lea rax, [rsp + 0x2a8]
movdqu xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
movups xmm0, xmmword [rsp + 0x3a8]
movaps xmmword [rsp + 0x260], xmm0
mov rax, qword [rsp + 0x3b8]
mov qword [rsp + 0x270], rax
sete byte [rsp + 0x2c8]
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0x2c9], al
lea rcx, [rsp + 0x420]
mov rdx, r14
mov rsi, qword [rsp + 0x60]
mov r8, rsi
call fcn.1401334d0
movzx eax, byte [rsp + 0x420]
cmp eax, 5
je 0x140198ee6
cmp eax, 6
je 0x1401998b6
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x810], rax
movdqa xmm0, xmmword [rsp + 0x260]
movdqa xmmword [rsp + 0x800], xmm0
lea rcx, [rsp + 0x420]
call fcn.140066ae0
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], 3
lea rcx, [rsp + 0x800]
lea rdx, [rsp + 0xf0]
call fcn.140191f70
lea rcx, [rsp + 0x278]
call fcn.14004b270
mov rax, qword [rsp + 0x278]
lock dec qword [rax]
jne 0x140198e53
mov rcx, qword [rsp + 0x278]
call fcn.140062b90
lea rcx, [rsp + 0x290]
call fcn.14004b270
mov rax, qword [rsp + 0x290]
lock dec qword [rax]
jne 0x140198e7b
mov rcx, qword [rsp + 0x290]
call fcn.140062b90
mov rax, qword [rsp + 0x2a0]
lock dec qword [rax]
jne 0x140198e96
mov rcx, qword [rsp + 0x2a0]
call case.0x14013fc1f.13
lea rcx, [rsp + 0x2a8]
call fcn.14014f700
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0xc8], rax
movzx eax, byte [rsp + 0x3e]
mov byte [rsp + 0x238], al
mov qword [rsp + 0xc0], rbx
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x228], rbx
mov rbx, qword [rsp + 0x60]
jmp 0x1401956e0
movaps xmm0, xmmword [rsp + 0x2c0]
movaps xmmword [rsp + 0x150], xmm0
movaps xmm0, xmmword [rsp + 0x2b0]
movaps xmmword [rsp + 0x140], xmm0
movaps xmm0, xmmword [rsp + 0x2a0]
movaps xmmword [rsp + 0x130], xmm0
movdqa xmm0, xmmword [rsp + 0x260]
movdqa xmm1, xmmword [rsp + 0x270]
movaps xmm2, xmmword [rsp + 0x280]
movaps xmm3, xmmword [rsp + 0x290]
movaps xmmword [rsp + 0x120], xmm3
movaps xmmword [rsp + 0x110], xmm2
movdqa xmmword [rsp + 0x100], xmm1
movdqa xmmword [rsp + 0xf0], xmm0
mov rcx, r12
lea rdx, [rsp + 0xf0]
mov r8, rsi
call fcn.14019c390
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0xc8], rax
movzx eax, byte [rsp + 0x3e]
mov byte [rsp + 0x238], al
mov qword [rsp + 0xc0], rbx
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x228], rbx
mov rbx, rsi
jmp 0x1401956e0
cmp esi, 6
jne 0x14019919b
mov edi, 3
jmp 0x1401993cf
movzx eax, byte [0x1402d9160]
mov rcx, qword [0x1402d9150]
test rcx, rcx
jne 0x140198fec
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140199831
mov rcx, rax
mov qword [0x1402d9150], rax
mov r8d, 0x38
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov r15, rax
mov qword [rax], 0
mov byte [rax + 0x29], 2
mov word [rax + 0x30], 1
movzx eax, byte [0x1402d9160]
mov rcx, qword [0x1402d9150]
test rcx, rcx
jne 0x140199041
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140199831
mov rcx, rax
mov qword [0x1402d9150], rax
mov r8d, 8
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov qword [rax], rsi
mov qword [r15], rax
lea rax, [0x1402a0040]
mov qword [r15 + 8], rax
cmp qword [r12], 0
je 0x140199077
mov rcx, r13
call fcn.14014f700
mov qword [r12], 0
movzx ebx, byte [rdi + 0x1d0]
mov byte [rdi + 0x1d0], 3
cmp bl, 3
je 0x14019915c
movdqu xmm0, xmmword [r14]
movdqu xmm1, xmmword [r14 + 0x10]
movdqa xmmword [rsp + 0x100], xmm1
movdqa xmmword [rsp + 0xf0], xmm0
mov byte [rsp + 0x110], bl
mov rcx, qword [rsp + 0x80]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0x111], eax
mov dword [rsp + 0x114], ecx
movzx eax, byte [0x1402d9160]
mov rcx, qword [0x1402d9150]
test rcx, rcx
jne 0x140199100
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140199831
mov rcx, rax
mov qword [0x1402d9150], rax
mov r8d, 0x38
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov rsi, rax
mov qword [rax], 0
mov byte [rax + 0x29], 2
mov byte [rax + 0x30], 8
lea rdx, str.connection_error
mov r8d, 0x10
mov rcx, rax
call fcn.140176230
mov rcx, qword [rsp + 0x100]
mov edx, ebx
mov r8, rsi
call fcn.1400640f0
lea rcx, [rsp + 0xf0]
call fcn.1401605c0
mov qword [rsp + 0xf8], r15
mov qword [rsp + 0xf0], 3
lea rdx, [rsp + 0xf0]
mov rcx, qword [rsp + 0x88]
call fcn.140160720
xor edi, edi
test rax, rax
je 0x14019922c
mov rbx, rax
xor r15d, r15d
jmp 0x1401993da
mov byte [rsp + 0x260], sil
lea rax, [rsp + 0x421]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x261], xmm0
movups xmmword [rsp + 0x271], xmm1
mov rax, qword [rax + 0x1f]
mov qword [rsp + 0x280], rax
mov rcx, qword [rdi + 0xc8]
call fcn.140068e60
mov rbx, rax
mov edi, 2
test rax, rax
je 0x140199234
lea eax, [rsi - 2]
cmp eax, 2
jb 0x1401993cf
test esi, esi
je 0x1401993cf
cmp esi, 1
jne 0x14019935e
lea rcx, [rsp + 0x280]
mov rax, qword [rsp + 0x268]
mov rdx, qword [rsp + 0x270]
mov r8, qword [rsp + 0x278]
call qword [rax + 0x10]
jmp 0x1401993cf
xor r15d, r15d
jmp 0x1401993e0
cmp esi, 2
je 0x140199308
cmp esi, 1
je 0x140199308
test rsi, rsi
jne 0x140199317
mov eax, dword [rsp + 0x268]
jmp 0x14019930f
mov rax, qword [rbx]
mov rdx, qword [rax]
mov rcx, qword [rax + 8]
call qword [rdx + 0x10]
jmp 0x1401993d4
cmp byte [rdi + 0x1e0], 0
mov r15d, 1
jne 0x140199287
cmp qword [rdi + 0x70], 4
jne 0x1401993da
mov rbx, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x14019976a
mov r15, qword [rdi + 0xc0]
mov qword [rdi + 0xc0], 0
test r15, r15
je 0x140199452
test rbx, rbx
je 0x14019907f
mov rax, qword [rbx + 0x30]
mov rcx, rax
test cl, 4
jne 0x1401992de
mov rdx, rcx
or rdx, 2
mov rax, rcx
lock cmpxchg qword [rbx + 0x30], rdx
jne 0x1401992c4
and ecx, 5
cmp ecx, 1
jne 0x1401992f1
mov rax, qword [rbx + 0x20]
mov rcx, qword [rbx + 0x28]
call qword [rax + 0x10]
lock dec qword [rbx]
jne 0x14019907f
mov rcx, rbx
call fcn.14014d940
jmp 0x14019907f
mov eax, dword [rsp + 0x264]
test eax, eax
je 0x1401993c1
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x110], rax
movups xmm0, xmmword [rsp + 0x260]
movups xmm1, xmmword [rsp + 0x270]
movaps xmmword [rsp + 0x100], xmm1
movaps xmmword [rsp + 0xf0], xmm0
lea rcx, [rsp + 0xf0]
call fcn.140066ae0
mov rbx, rax
mov edi, 2
jmp 0x1401993cf
mov rax, qword [rsp + 0x268]
mov ecx, eax
and ecx, 3
lea rdx, [rcx - 2]
cmp rdx, 2
jb 0x1401993cf
test rcx, rcx
je 0x1401993cf
lea r14, [rax - 1]
mov r15, qword [rax - 1]
mov rsi, qword [rax + 7]
mov rcx, r15
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x1401993ae
cmp qword [rsi + 0x10], 0x11
jb 0x14019939d
mov r15, qword [r15 - 8]
mov rcx, qword [0x1402d9150]
xor edx, edx
mov r8, r15
call sub.kernel32.dll_HeapFree
mov rcx, qword [0x1402d9150]
xor edx, edx
mov r8, r14
call sub.kernel32.dll_HeapFree
jmp 0x1401993cf
xor edi, edi
lea eax, [rsi - 2]
cmp eax, 2
jae 0x1401991f3
cmp edi, 3
jne 0x140199440
mov r15d, 1
mov rdi, r15
mov r15, rbx
mov rax, rdi
mov rdx, r15
movaps xmm6, xmmword [rsp + 0xf70]
movaps xmm7, xmmword [rsp + 0xf80]
movaps xmm8, xmmword [rsp + 0xf90]
movaps xmm9, xmmword [rsp + 0xfa0]
movaps xmm10, xmmword [rsp + 0xfb0]
movaps xmm11, xmmword [rsp + 0xfc0]
movaps xmm12, xmmword [rsp + 0xfd0]
movaps xmm13, xmmword [rsp + 0xfe0]
add rsp, 0xff8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor r15d, r15d
test rdi, rdi
je 0x1401993e0
cmp edi, 2
je 0x1401993da
mov rdi, qword [rsp + 0x40]
mov rax, qword [rdi]
mov qword [rdi], 3
cmp rax, 2
jae 0x140199a98
add rdi, 8
mov qword [rsp + 0xd88], rax
lea rcx, [rsp + 0xd90]
mov r8d, 0x1e0
mov rdx, rdi
call sub.msvcrt.dll_memcpy
lea rdx, [rsp + 0xe60]
lea rcx, [rsp + 0xf0]
mov r8d, 0xa8
call sub.msvcrt.dll_memcpy
mov r15, qword [rsp + 0x170]
mov rdi, qword [rsp + 0x178]
mov rsi, qword [rsp + 0x188]
test sil, 1
jne 0x1401994ca
lea r12, [0x1402a30e8]
jmp 0x140199538
shr rsi, 5
sub r15, rsi
add rdi, rsi
mov rax, qword [rsp + 0x180]
add rax, rsi
mov qword [rsp + 0x420], r15
mov qword [rsp + 0x428], rax
mov qword [rsp + 0x430], rdi
lea rcx, [rsp + 0x260]
lea rdx, [rsp + 0x420]
call fcn.140037a80
mov rdi, qword [rsp + 0x270]
sub rdi, rsi
jb 0x140199831
mov r15, rsi
add r15, qword [rsp + 0x268]
mov r12, qword [rsp + 0x260]
mov rsi, qword [rsp + 0x278]
lea r14, [rsp + 0x108]
movups xmm0, xmmword [r14]
movaps xmmword [rsp + 0x260], xmm0
mov rax, qword [r14 + 0x10]
mov qword [rsp + 0x270], rax
cmp qword [rsp + 0x128], 0
je 0x140199579
mov r8, qword [rsp + 0x120]
mov rcx, qword [0x1402d9150]
xor edx, edx
call sub.kernel32.dll_HeapFree
lea rcx, [rsp + 0x140]
call fcn.140167750
cmp qword [rsp + 0x148], 0
je 0x1401995a7
mov r8, qword [rsp + 0x140]
mov rcx, qword [0x1402d9150]
xor edx, edx
call sub.kernel32.dll_HeapFree
lea rcx, [rsp + 0xd88]
call fcn.140160420
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x100], rax
movaps xmm0, xmmword [rsp + 0x260]
movaps xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0x108], r12
mov qword [rsp + 0x110], r15
mov qword [rsp + 0x118], rdi
mov qword [rsp + 0x120], rsi
movups xmm0, xmmword [rsp + 0xf08]
movups xmm1, xmmword [rsp + 0xf18]
movups xmm2, xmmword [rsp + 0xf28]
movups xmmword [rsp + 0x128], xmm0
movups xmmword [rsp + 0x138], xmm1
movups xmmword [rsp + 0x148], xmm2
cmp byte [rsp + 0xf58], 3
je 0x14019963b
lea rcx, [rsp + 0xf38]
call fcn.1401605c0
lea rsi, [rsp + 0x128]
mov rdi, qword [rsp + 0xf60]
cmp qword [rdi], 0
je 0x14019965a
lea rcx, [rdi + 8]
call fcn.14014f700
mov rcx, qword [0x1402d9150]
xor edx, edx
mov r8, rdi
call sub.kernel32.dll_HeapFree
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x960], xmm0
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x970], rax
movdqu xmm0, xmmword [r14]
movdqu xmm1, xmmword [r14 + 0x10]
movdqa xmmword [rsp + 0x9f0], xmm0
movdqa xmmword [rsp + 0xa00], xmm1
mov rcx, rsi
call fcn.14014fee0
lea rcx, [rsp + 0x140]
call fcn.140133330
movzx eax, byte [0x1402d9160]
mov rcx, qword [0x1402d9150]
test rcx, rcx
jne 0x1401996e8
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140199831
mov rcx, rax
mov qword [0x1402d9150], rax
mov r8d, 0x18
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140199831
mov rcx, qword [rsp + 0x970]
mov qword [rax + 0x10], rcx
movaps xmm0, xmmword [rsp + 0x960]
movups xmmword [rax], xmm0
movdqa xmm0, xmmword [rsp + 0x9f0]
movdqa xmm1, xmmword [rsp + 0xa00]
movdqu xmmword [rsp + 0x100], xmm0
movdqu xmmword [rsp + 0x110], xmm1
mov qword [rsp + 0xf0], rax
lea rax, [0x1402a0f60]
mov qword [rsp + 0xf8], rax
lea rdx, [rsp + 0xf0]
mov rcx, rbx
call fcn.140065200
xor r15d, r15d
xor edi, edi
jmp 0x1401993e0
mov rcx, qword [rdi + 0xf0]
mov rax, qword [rdi + 0xf8]
mov rdx, qword [rsp + 0x60]
call qword [rax + 0x30]
test rax, rax
jne 0x140199869
test rdx, rdx
jne 0x140199869
mov r15, qword [rdi + 0xc0]
mov qword [rdi + 0xc0], 0
test r15, r15
jne 0x14019907f
jmp 0x140199760
test rax, rax
je 0x140199068
mov rcx, rbp
call fcn.140161280
jmp 0x140199068
mov rcx, qword [rdi + 0xc0]
mov eax, 1
xchg qword [rcx + 0x10], rax
cmp rax, 2
jb 0x140199816
cmp rax, 3
je 0x140199816
cmp rax, 2
jne 0x140199831
mov rax, qword [rdi + 0xc0]
mov cl, 1
xchg byte [rax + 0x28], cl
test cl, cl
jne 0x1401997e7
mov rdx, qword [rax + 0x18]
mov rcx, qword [rax + 0x20]
mov qword [rax + 0x18], 0
xor r8d, r8d
xchg byte [rax + 0x28], r8b
test rdx, rdx
je 0x140199816
call qword [rdx + 8]
lea rcx, [rdi + 0x90]
mov rdx, rbx
call fcn.140148c60
movzx eax, al
lea rdi, [rax + rax*2]
jmp 0x140198fbc
ud2
lea rcx, [rsp + 0xc80]
lea rdx, [rsp + 0x260]
mov r8d, 0x100
call sub.msvcrt.dll_memcpy
movdqu xmm0, xmmword [rsp + 0x420]
movdqa xmmword [rsp + 0x8e0], xmm0
xor edi, edi
jmp 0x140198fbc
test rax, rax
jne 0x1401993da
test rdx, rdx
je 0x140199792
mov rcx, rdx
call fcn.140066a30
mov r15, rax
jmp 0x14019907f
mov r15, rax
mov rax, qword [rsp + 0x800]
mov rdx, qword [rsp + 0x808]
mov r8, qword [rsp + 0x810]
lea rcx, [rsp + 0x818]
call qword [rax + 0x10]
jmp 0x140199068
movaps xmm0, xmmword [rsp + 0x2c0]
movaps xmmword [rsp + 0x150], xmm0
movaps xmm0, xmmword [rsp + 0x2b0]
movaps xmmword [rsp + 0x140], xmm0
movaps xmm0, xmmword [rsp + 0x2a0]
movaps xmmword [rsp + 0x130], xmm0
movaps xmm0, xmmword [rsp + 0x260]
movaps xmm1, xmmword [rsp + 0x270]
movaps xmm2, xmmword [rsp + 0x280]
movaps xmm3, xmmword [rsp + 0x290]
movaps xmmword [rsp + 0x120], xmm3
movaps xmmword [rsp + 0x110], xmm2
movaps xmmword [rsp + 0x100], xmm1
movaps xmmword [rsp + 0xf0], xmm0
cmp dword [r12], 2
jne 0x14019998d
movaps xmm0, xmmword [rsp + 0x150]
mov rax, qword [rsp + 0x98]
movups xmmword [rax + 0x60], xmm0
movaps xmm0, xmmword [rsp + 0x140]
movups xmmword [rax + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x130]
movups xmmword [rax + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmm1, xmmword [rsp + 0x100]
movaps xmm2, xmmword [rsp + 0x110]
movaps xmm3, xmmword [rsp + 0x120]
movups xmmword [rax + 0x30], xmm3
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
jmp 0x140198fb7
mov rsi, qword [rsp + 0x40]
lea rdi, [rsi + 0x20]
mov rcx, rdi
call fcn.14004b270
mov rax, qword [rsi + 0x20]
lock dec qword [rax]
jne 0x1401999b0
mov rcx, qword [rdi]
call fcn.140062b90
mov rsi, qword [rsp + 0x40]
lea rdi, [rsi + 0x38]
mov rcx, rdi
call fcn.14004b270
mov rax, qword [rsi + 0x38]
lock dec qword [rax]
jne 0x1401999d3
mov rcx, qword [rdi]
call fcn.140062b90
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x48]
lock dec qword [rax]
jne 0x1401999f0
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 0x48]
call case.0x14013fc1f.13
mov rsi, qword [rsp + 0x40]
lea rcx, [rsi + 0x50]
call fcn.14014f700
mov rcx, qword [rsp + 0x98]
call fcn.140187440
cmp qword [rsi + 8], 0
mov rax, qword [rsi + 0x10]
je 0x140199a57
test rax, rax
je 0x14019992d
mov rsi, qword [rsp + 0x40]
mov rcx, qword [rsi + 0x18]
call fcn.140182470
mov rax, qword [rsi + 0x18]
test rax, rax
je 0x14019992d
lock dec qword [rax]
jne 0x14019992d
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 0x18]
call fcn.14014bba0
jmp 0x14019992d
test rax, rax
je 0x14019992d
mov rsi, qword [rsp + 0x40]
mov rcx, qword [rsi + 0x18]
call fcn.140182430
mov rax, qword [rsi + 0x18]
test rax, rax
je 0x14019992d
lock dec qword [rax]
jne 0x14019992d
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 0x18]
call fcn.14014dc20
jmp 0x14019992d
mov qword [rsp + 0xf0], rbx
lea rcx, [rsp + 0xf0]
call fcn.140199ac0
ud2