Function at 0x1400063f0
Capabilities:
Encode data using xor
Execute anti-debugging instructions

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x368]
sub rsp, 0x468
mov rax, qword [0x1400a5768]
xor rax, rsp
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0x3d0]
xor r14d, r14d
mov qword [rbp + 0x2d8], rax
mov esi, r9d
mov rax, qword [rbp + 0x3e0]
mov edi, r8d
mov qword [rbp + 0x2d0], rax
mov r13, rcx
mov dword [rbp + 0xb4], r9d
mov dword [rbp + 0xb0], r8d
mov qword [rbp + 0x2e0], rdx
mov qword [rbp + 0x1a0], rcx
mov dword [rbp + 0xc8], r14d
mov rcx, qword [0x1400a52b8]
lea rax, [0x1400a52b8]
mov r12d, dword [rbp + 0x3d8]
cmp rcx, rax
je 0x140015e19
test byte [rcx + 0x1c], 0x80
jne 0x140015dfe
jmp 0x140015e19
test r15d, r15d
js 0x14001b33c
cmp ebx, 4
jne 0x14001b346
mov rax, qword [rbp + 0x150]
mov ebx, dword [rbp + 0x178]
mov ecx, dword [rax]
mov dword [rbp + 0xc8], ecx
lea rcx, [rbp + 0x150]
call fcn.140003480
lea r15, [0x14009a240]
test ebx, ebx
js 0x14001b38e
cmp dword [rbp + 0xc8], 1
jne 0x14001b38e
mov rcx, qword [0x1400a52b8]
lea rax, [0x1400a52b8]
cmp rcx, rax
je 0x140006501
test byte [rcx + 0x1c], 0x80
jne 0x14001b350
mov rax, qword [rbp + 0x2d0]
mov r9d, esi
mov rdx, qword [rbp + 0x2e0]
mov r8d, edi
mov qword [rsp + 0x30], rax
mov rcx, r13
mov rax, qword [rbp + 0x2d8]
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], rax
call fcn.140006640
mov r14d, eax
mov rax, qword [0x1400a52b8]
lea rsi, [0x1400a52b8]
cmp rax, rsi
je 0x140006562
test byte [rax + 0x1c], 0x80
jne 0x14001b367
cmp rax, rsi
je 0x140006562
test byte [rax + 0x1c], 0x80
jne 0x14001b3de
mov eax, r14d
mov rcx, qword [rbp + 0x358]
xor rcx, rsp
call fcn.1400106e0
add rsp, 0x468
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
lea rcx, [rbp + 0x40]
call fcn.140003480
test r15d, r15d
jns 0x14000649e
jmp 0x14001b2f3
mov rcx, qword [rcx + 0x10]
mov edx, 0x2f
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], r9d
mov r9d, r8d
call fcn.140056614
mov qword [rbp + 0x150], r14
mov dword [rbp + 0x178], r14d
mov dword [rbp + 0xac], r14d
mov qword [rbp + 0x40], r14
mov dword [rbp + 0x7c], r14d
mov edx, 4
mov dword [rbp + 0xa8], r14d
lea ecx, [rdx + 0x3c]
call qword [sym.imp.KERNELBASE.dll_LocalAlloc]
mov rdx, rax
lea rcx, [rbp + 0x40]
call fcn.140003454
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0x198], rax
test rax, rax
jne 0x140015e72
mov r15d, 0x8007000e
jmp 0x14001b2eb
xor eax, eax
mov qword [rbp - 0x78], r14
mov qword [rbp + 0x20], rax
mov ebx, 0xa0
mov qword [rbp + 0x28], rax
mov r13, r14
lea rax, [0x1400a5850]
mov dword [rbp + 0xd8], r14d
mov qword [rbp + 0x1e8], rax
mov r12, r14
mov dword [rbp + 0x18], r14d
mov qword [rbp + 0x1b8], rbx
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r15d, 8
mov r8d, ebx
mov rcx, rax
mov edx, r15d
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
or dword [rbp - 0x50], 0xffffffff
movabs rbx, 0xc81ecb17b1b54a58
mov qword [rbp - 0x18], rax
mov rsi, rax
movabs rdi, 0x7f1137fab69605e
test rax, rax
jne 0x140015efa
mov r15d, 0xc0000017
mov dword [rsp + 0x40], r15d
jmp 0x140018d8f
mov r8, qword [rbp + 0x1b8]
mov rcx, rsi
mov rdx, qword [rbp + 0x1e8]
call sub.msvcrt.dll_memcpy
mov r12d, dword [rbp + 0x1b8]
mov r13, rsi
mov qword [rsp + 0x60], rsi
lea rax, [0x1400a5790]
mov qword [rbp + 0x190], r15
mov qword [rbp + 0x1d8], rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r15
mov edx, r15d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp - 0x30], rax
mov rsi, rax
test rax, rax
jne 0x140015f68
mov r15d, 0xc0000017
mov r12, r14
mov dword [rsp + 0x40], r15d
jmp 0x140018d8f
mov r8, qword [rbp + 0x190]
mov rcx, rsi
mov rdx, qword [rbp + 0x1d8]
call sub.msvcrt.dll_memcpy
mov r13, qword [rbp + 0x190]
mov qword [rsp + 0x50], rsi
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x1c0], rax
mov esi, 4
mov dword [rsp + 0x44], r14d
mov edx, esi
lea r8, [rsp + 0x48]
mov ecx, esi
call fcn.1400065a8
mov r11d, dword [rbp + 8]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x40], eax
cmovns r11d, dword [rsp + 0x48]
mov dword [rbp + 8], r11d
js 0x140018d85
lea r8, [rsp + 0x44]
mov edx, r11d
xor ecx, ecx
call fcn.1400065a8
mov r15d, eax
mov r9d, 0x10000000
or r15d, r9d
mov dword [rsp + 0x40], r15d
jl 0x140018d85
lea r8, [rsp + 0x48]
mov edx, r12d
mov ecx, esi
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r11d, dword [rsp + 0x48]
mov dword [rbp + 8], r11d
js 0x140018d85
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r11d
call fcn.1400065a8
mov r15d, eax
or r15d, r9d
mov dword [rsp + 0x40], r15d
jl 0x140018d85
lea r8, [rsp + 0x48]
mov edx, r13d
mov ecx, esi
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r11d, dword [rsp + 0x48]
mov dword [rbp + 8], r11d
js 0x140018d85
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r11d
call fcn.1400065a8
mov r15d, eax
or r15d, r9d
mov dword [rsp + 0x40], r15d
jl 0x140018d85
lea r8, [rsp + 0x48]
mov ecx, esi
lea edx, [rsi + 4]
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r11d, dword [rsp + 0x48]
mov dword [rbp + 8], r11d
js 0x140018d85
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r11d
call fcn.1400065a8
mov r15d, eax
or r15d, r9d
mov dword [rsp + 0x40], r15d
jl 0x140018d85
lea r8, [rbp + 0x30]
lea rcx, str.Printing_Spooler_Core_Spoolss_Licensing_Enabled
call fcn.1400065e4
test eax, eax
js 0x140016207
mov rax, qword [rbp + 0x30]
lea r8, [rsp + 0x48]
inc rax
mov ecx, esi
lea edx, [rax + rax]
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r11d, dword [rsp + 0x48]
mov dword [rbp + 8], r11d
js 0x140018d85
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r11d
call fcn.1400065a8
mov r15d, eax
mov r9d, 0x10000000
or r15d, r9d
mov dword [rsp + 0x40], r15d
jl 0x140018d85
lea r8, [rsp + 0x48]
mov edx, esi
mov ecx, esi
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r11d, dword [rsp + 0x48]
mov dword [rbp + 8], r11d
js 0x140018d85
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r11d
call fcn.1400065a8
mov r15d, eax
or r15d, r9d
mov dword [rsp + 0x40], r15d
jl 0x140018d85
lea r8, [rsp + 0x48]
mov edx, esi
mov ecx, esi
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r11d, dword [rsp + 0x48]
mov dword [rbp + 8], r11d
js 0x140018d85
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r11d
call fcn.1400065a8
mov r15d, eax
or r15d, r9d
mov dword [rsp + 0x40], r15d
jl 0x140018d85
mov eax, dword [rsp + 0x44]
mov dword [rbp - 0x7c], eax
mov esi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, esi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r9, rax
test rax, rax
jne 0x140016212
mov r15d, 0xc0000017
jmp 0x140018d80
mov r15d, 0xc000003e
jmp 0x140018d80
mov qword [rbp - 0x78], r9
mov dword [rbp - 0x80], r14d
mov dword [rbp + 0x108], r14d
mov esi, 4
lea r8, [rbp - 0x20]
mov edx, esi
mov rcx, r9
call fcn.1400065c4
mov r15d, eax
mov dword [rsp + 0x40], eax
mov eax, r14d
test r15d, r15d
js 0x140018d85
mov ecx, dword [rbp - 0x7c]
lea rax, [r9 + 8]
add rcx, r9
cmp rax, rcx
ja 0x1400162d1
mov rcx, qword [rbp - 0x20]
mov dword [r9], esi
mov eax, dword [rbp + 0x108]
mov dword [rcx], eax
mov eax, dword [rbp - 0x80]
inc eax
mov dword [rbp - 0x80], eax
test r15d, r15d
js 0x140018d85
test r12d, r12d
je 0x140016387
cmp qword [rbp - 0x78], r14
jne 0x1400162dc
lea r8, [rsp + 0x48]
mov edx, r12d
mov ecx, esi
call fcn.1400065a8
mov edx, dword [rbp + 0x74]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x40], eax
cmovns edx, dword [rsp + 0x48]
mov dword [rbp + 0x74], edx
js 0x140016392
mov ecx, dword [rbp - 0x7c]
lea r8, [rbp - 0x7c]
call fcn.1400065a8
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140016392
inc dword [rbp - 0x80]
jmp 0x14001639b
mov r15d, 0xc0000023
jmp 0x140018d80
mov r9, qword [rbp - 0x78]
mov r11d, r14d
mov qword [rsp + 0x78], r9
test eax, eax
je 0x14001633d
mov r10d, dword [rbp + 0x74]
mov edx, dword [r9]
lea r8, [rsp + 0x48]
mov ecx, esi
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r10d, dword [rsp + 0x48]
mov dword [rbp + 0x74], r10d
js 0x140016392
mov edx, r10d
lea r8, [rsp + 0x78]
mov rcx, r9
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140016392
mov r9, qword [rsp + 0x78]
inc r11d
cmp r11d, dword [rbp - 0x80]
jb 0x1400162f0
lea r8, [rbp - 0x20]
mov rdx, rsi
mov rcx, r9
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140016392
mov ecx, dword [rbp - 0x7c]
lea rax, [r12 + 4]
add rcx, qword [rbp - 0x78]
add rax, r9
mov r8, r12
cmp rax, rcx
ja 0x1400162d1
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x20]
mov dword [r9], r12d
call sub.msvcrt.dll_memcpy
inc dword [rbp - 0x80]
jmp 0x140016392
mov r15d, 0xc000000d
mov dword [rsp + 0x40], r15d
test r15d, r15d
js 0x140018d85
test r13d, r13d
je 0x1400164a2
cmp qword [rbp - 0x78], r14
jne 0x1400163f6
lea r8, [rsp + 0x48]
mov edx, r13d
mov ecx, esi
call fcn.1400065a8
mov edx, dword [rbp + 0x70]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x40], eax
cmovns edx, dword [rsp + 0x48]
mov dword [rbp + 0x70], edx
js 0x1400164ad
mov ecx, dword [rbp - 0x7c]
lea r8, [rbp - 0x7c]
call fcn.1400065a8
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x1400164ad
inc dword [rbp - 0x80]
jmp 0x1400164b6
mov r11d, r14d
mov r9, qword [rbp - 0x78]
mov qword [rsp + 0x78], r9
cmp dword [rbp - 0x80], r14d
jbe 0x140016459
mov r10d, dword [rbp + 0x70]
mov edx, dword [r9]
lea r8, [rsp + 0x48]
mov ecx, esi
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r10d, dword [rsp + 0x48]
mov dword [rbp + 0x70], r10d
js 0x1400164ad
mov edx, r10d
lea r8, [rsp + 0x78]
mov rcx, r9
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x1400164ad
mov r9, qword [rsp + 0x78]
inc r11d
cmp r11d, dword [rbp - 0x80]
jb 0x14001640c
lea r8, [rbp - 0x20]
mov rdx, rsi
mov rcx, r9
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x1400164ad
mov ecx, dword [rbp - 0x7c]
add rcx, qword [rbp - 0x78]
mov r8d, r13d
lea rax, [r8 + 4]
add rax, r9
cmp rax, rcx
ja 0x1400162d1
mov rdx, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x20]
mov dword [r9], r13d
call sub.msvcrt.dll_memcpy
inc dword [rbp - 0x80]
jmp 0x1400164ad
mov r15d, 0xc000000d
mov dword [rsp + 0x40], r15d
test r15d, r15d
js 0x140018d85
mov rax, qword [rbp + 0x1c0]
mov qword [rbp + 0x1e0], rax
cmp qword [rbp - 0x78], r14
jne 0x140016518
lea r8, [rsp + 0x48]
mov edx, 8
mov ecx, esi
call fcn.1400065a8
mov edx, dword [rbp + 0x6c]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x40], eax
cmovns edx, dword [rsp + 0x48]
mov dword [rbp + 0x6c], edx
js 0x1400165c3
mov ecx, dword [rbp - 0x7c]
lea r8, [rbp - 0x7c]
call fcn.1400065a8
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x1400165c3
inc dword [rbp - 0x80]
jmp 0x1400165cc
mov r11d, r14d
mov r9, qword [rbp - 0x78]
mov qword [rsp + 0x78], r9
cmp dword [rbp - 0x80], r14d
jbe 0x14001657b
mov r10d, dword [rbp + 0x6c]
mov edx, dword [r9]
lea r8, [rsp + 0x48]
mov ecx, esi
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r10d, dword [rsp + 0x48]
mov dword [rbp + 0x6c], r10d
js 0x1400165c3
mov edx, r10d
lea r8, [rsp + 0x78]
mov rcx, r9
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x1400165c3
mov r9, qword [rsp + 0x78]
inc r11d
cmp r11d, dword [rbp - 0x80]
jb 0x14001652e
lea r8, [rbp - 0x20]
mov rdx, rsi
mov rcx, r9
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x1400165c3
mov ecx, dword [rbp - 0x7c]
lea rax, [r9 + 0xc]
add rcx, qword [rbp - 0x78]
cmp rax, rcx
ja 0x1400162d1
mov rax, qword [rbp - 0x20]
mov dword [r9], 8
movsd xmm0, qword [rbp + 0x1e0]
movsd qword [rax], xmm0
inc dword [rbp - 0x80]
test r15d, r15d
js 0x140018d85
lea r8, [rsp + 0x78]
lea rcx, str.Printing_Spooler_Core_Spoolss_Licensing_Enabled
call fcn.1400065e4
test eax, eax
js 0x140016207
mov rcx, qword [rsp + 0x78]
lea r8, [rsp + 0x78]
mov edx, 1
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
mov r12d, 0xc0000023
test eax, eax
js 0x14001674e
mov eax, dword [rsp + 0x78]
lea r11d, [rax + rax]
test r11d, r11d
je 0x140016743
cmp qword [rbp - 0x78], r14
jne 0x140016679
lea r8, [rsp + 0x48]
mov edx, r11d
mov ecx, esi
call fcn.1400065a8
mov edx, dword [rbp + 0x68]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x40], eax
cmovns edx, dword [rsp + 0x48]
mov dword [rbp + 0x68], edx
js 0x14001674e
mov ecx, dword [rbp - 0x7c]
lea r8, [rbp - 0x7c]
call fcn.1400065a8
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x14001674e
inc dword [rbp - 0x80]
mov r15d, r14d
mov dword [rsp + 0x40], r14d
jmp 0x14001674e
mov esi, r14d
mov r9, qword [rbp - 0x78]
mov qword [rsp + 0x78], r9
cmp dword [rbp - 0x80], r14d
jbe 0x1400166e1
mov r10d, dword [rbp + 0x68]
mov edx, dword [r9]
lea r8, [rsp + 0x48]
mov ecx, 4
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r10d, dword [rsp + 0x48]
mov dword [rbp + 0x68], r10d
js 0x14001673e
mov edx, r10d
lea r8, [rsp + 0x78]
mov rcx, r9
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140016737
mov r9, qword [rsp + 0x78]
inc esi
cmp esi, dword [rbp - 0x80]
jb 0x14001668f
mov esi, 4
lea r8, [rbp - 0x20]
mov edx, esi
mov rcx, r9
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x14001674e
mov ecx, dword [rbp - 0x7c]
lea rax, [r11 + 4]
add rcx, qword [rbp - 0x78]
add rax, r9
mov r8d, r11d
cmp rax, rcx
jbe 0x14001671f
mov r15d, r12d
mov dword [rsp + 0x40], r12d
jmp 0x14001674e
mov rcx, qword [rbp - 0x20]
lea rdx, str.Printing_Spooler_Core_Spoolss_Licensing_Enabled
mov dword [r9], r11d
call sub.msvcrt.dll_memcpy
inc dword [rbp - 0x80]
jmp 0x14001674e
mov esi, 4
jmp 0x14001674e
mov rsi, rcx
jmp 0x14001674e
mov r15d, 0xc000000d
mov dword [rsp + 0x40], r15d
test r15d, r15d
js 0x140018d85
mov eax, dword [rbp + 0x7c]
mov dword [rbp + 0x118], eax
cmp qword [rbp - 0x78], r14
jne 0x1400167b1
lea r8, [rsp + 0x48]
mov edx, esi
mov ecx, esi
call fcn.1400065a8
mov edx, dword [rbp + 0x58]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x40], eax
cmovns edx, dword [rsp + 0x48]
mov dword [rbp + 0x58], edx
js 0x140016850
mov ecx, dword [rbp - 0x7c]
lea r8, [rbp - 0x7c]
call fcn.1400065a8
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140016850
inc dword [rbp - 0x80]
jmp 0x140016859
mov r11d, r14d
mov r9, qword [rbp - 0x78]
mov qword [rsp + 0x78], r9
cmp dword [rbp - 0x80], r14d
jbe 0x140016814
mov r10d, dword [rbp + 0x58]
mov edx, dword [r9]
lea r8, [rsp + 0x48]
mov ecx, esi
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r10d, dword [rsp + 0x48]
mov dword [rbp + 0x58], r10d
js 0x140016850
mov edx, r10d
lea r8, [rsp + 0x78]
mov rcx, r9
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140016850
mov r9, qword [rsp + 0x78]
inc r11d
cmp r11d, dword [rbp - 0x80]
jb 0x1400167c7
lea r8, [rbp - 0x20]
mov rdx, rsi
mov rcx, r9
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140016850
mov ecx, dword [rbp - 0x7c]
lea rax, [r9 + 8]
add rcx, qword [rbp - 0x78]
cmp rax, rcx
ja 0x1400168ad
mov rcx, qword [rbp - 0x20]
mov dword [r9], esi
mov eax, dword [rbp + 0x118]
mov dword [rcx], eax
inc dword [rbp - 0x80]
test r15d, r15d
js 0x140018d85
mov dword [rbp + 0x50], esi
cmp qword [rbp - 0x78], r14
jne 0x1400168ba
lea r8, [rsp + 0x48]
mov edx, esi
mov ecx, esi
call fcn.1400065a8
mov edx, dword [rbp + 0x4c]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x40], eax
cmovns edx, dword [rsp + 0x48]
mov dword [rbp + 0x4c], edx
js 0x14001695a
mov ecx, dword [rbp - 0x7c]
lea r8, [rbp - 0x7c]
call fcn.1400065a8
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x14001695a
inc dword [rbp - 0x80]
jmp 0x140016963
mov r15d, r12d
mov dword [rsp + 0x40], r12d
jmp 0x140018d85
mov r11d, r14d
mov r9, qword [rbp - 0x78]
mov qword [rsp + 0x78], r9
cmp dword [rbp - 0x80], r14d
jbe 0x14001691d
mov r10d, dword [rbp + 0x4c]
mov edx, dword [r9]
lea r8, [rsp + 0x48]
mov ecx, esi
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r10d, dword [rsp + 0x48]
mov dword [rbp + 0x4c], r10d
js 0x14001695a
mov edx, r10d
lea r8, [rsp + 0x78]
mov rcx, r9
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x14001695a
mov r9, qword [rsp + 0x78]
inc r11d
cmp r11d, dword [rbp - 0x80]
jb 0x1400168d0
lea r8, [rbp - 0x20]
mov rdx, rsi
mov rcx, r9
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x14001695a
mov ecx, dword [rbp - 0x7c]
lea rax, [r9 + 8]
add rcx, qword [rbp - 0x78]
cmp rax, rcx
ja 0x1400168ad
mov rcx, qword [rbp - 0x20]
mov dword [r9], esi
mov eax, dword [rbp + 0x50]
mov dword [rcx], eax
inc dword [rbp - 0x80]
test r15d, r15d
js 0x140018d85
lea r8, [rsp + 0x48]
mov edx, esi
mov ecx, esi
call fcn.1400065a8
mov r10d, dword [rbp + 0x10]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x40], eax
cmovns r10d, dword [rsp + 0x48]
mov dword [rbp + 0x10], r10d
js 0x140016af2
lea r8, [rsp + 0x48]
mov dword [rsp + 0x44], r10d
mov edx, 8
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r9d, r10d
mov r15d, eax
cmovns r9d, dword [rsp + 0x48]
mov dword [rbp + 0x10], r9d
js 0x140016af2
lea r8, [rsp + 0x44]
mov edx, r9d
mov ecx, r10d
call fcn.1400065a8
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140016af2
lea r8, [rsp + 0x48]
mov edx, esi
mov ecx, esi
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r9d, dword [rsp + 0x48]
mov dword [rbp + 0x10], r9d
js 0x140016af2
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r9d
call fcn.1400065a8
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140016af2
lea r8, [rsp + 0x48]
mov edx, esi
mov ecx, esi
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r9d, dword [rsp + 0x48]
mov dword [rbp + 0x10], r9d
js 0x140016af2
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r9d
call fcn.1400065a8
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140016af2
lea r8, [rsp + 0x48]
mov edx, esi
mov ecx, esi
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r9d, dword [rsp + 0x48]
mov dword [rbp + 0x10], r9d
js 0x140016af2
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r9d
call fcn.1400065a8
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140016af2
lea r8, [rsp + 0x48]
mov edx, esi
mov ecx, esi
call fcn.1400065a8
test eax, eax
mov dword [rsp + 0x40], eax
mov r15d, eax
cmovns r9d, dword [rsp + 0x48]
mov dword [rbp + 0x10], r9d
js 0x140016af2
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r9d
call fcn.1400065a8
mov r15d, eax
mov dword [rsp + 0x40], eax
mov eax, dword [rbp + 0x50]
test r15d, r15d
cmovns eax, dword [rsp + 0x44]
jmp 0x140016af5
mov eax, dword [rbp + 0x50]
mov dword [rbp - 8], eax
test r15d, r15d
js 0x140018d85
mov rsi, r14
mov qword [rsp + 0x78], r14
mov r12d, r14d
mov qword [rbp + 0xe8], r14
mov qword [rbp + 0x60], r14
mov r13, r14
mov dword [rsp + 0x48], r14d
mov qword [rbp - 0x18], r14
mov dword [rbp - 0xc], r14d
mov qword [rsp + 0x68], r14
mov qword [rbp - 0x30], r14
mov dword [rbp + 0x78], r14d
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x1a8], rax
mov dword [rbp + 0xc], 8
mov edx, dword [rbp - 0x7c]
lea r8, [rbp + 0xc]
mov ecx, 8
call fcn.1400065a8
mov r15d, eax
test eax, eax
js 0x140016c3e
mov eax, dword [rbp + 0xc]
add rax, 7
and eax, 0xfffffff8
cmp eax, dword [rbp + 0xc]
jae 0x140016b81
mov r15d, 0xc0000095
jmp 0x140016c3e
mov dword [rbp + 0xc], eax
mov esi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, esi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rsi, rax
test rax, rax
jne 0x140016bb3
mov r15d, 0xc0000017
mov rsi, r14
jmp 0x140016c3e
mov eax, dword [rbp - 0x80]
lea r8, [rbp - 0x48]
mov r9d, 4
mov qword [rbp - 0x48], rsi
mov edx, r9d
mov dword [rsi], eax
mov rcx, rsi
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x140016c20
mov rcx, qword [rbp - 0x48]
lea r8, [rbp - 0x48]
mov eax, dword [rbp - 0x7c]
mov edx, r9d
mov dword [rcx], eax
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x140016c20
mov ecx, dword [rbp + 0xc]
mov rax, qword [rbp + 0x1a8]
mov qword [rcx + rsi - 8], rax
mov r8d, dword [rbp - 0x7c]
mov rdx, qword [rbp - 0x78]
mov rcx, qword [rbp - 0x48]
call sub.msvcrt.dll_memcpy
mov r12d, dword [rbp + 0xc]
mov qword [rsp + 0x78], rsi
mov rsi, r14
test rsi, rsi
je 0x140016c39
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [rsp + 0x78]
or r15d, 0x10000000
mov dword [rsp + 0x40], r15d
jl 0x140017f18
mov qword [rbp + 0x1f8], r14
mov qword [rbp + 0x200], r14
mov qword [rbp + 0x208], r14
mov qword [rbp + 0x210], r14
mov qword [rbp + 0x138], r14
mov qword [rbp + 0x1f0], r14
test rsi, rsi
jne 0x140016c8a
mov r15d, 0xc000000d
jmp 0x140017409
mov r15d, r12d
mov qword [rbp - 0x48], r15
test r12d, r12d
je 0x140017360
lea rax, [r15 + 8]
mov rcx, rax
mov qword [rbp], rax
call fcn.1400034ac
mov qword [rbp + 0x348], rax
test rax, rax
je 0x140017360
mov dl, r14b
mov rcx, r14
mov byte [rsp + 0x58], dl
test r12d, r12d
je 0x140016cd8
xor dl, byte [rcx + rsi]
inc rcx
cmp rcx, r15
jb 0x140016cc9
mov byte [rsp + 0x58], dl
mov r12, rax
mov qword [rbp + 0x350], rbx
or r11d, 0xffffffff
mov dword [rbp - 0x58], r14d
mov rax, r15
mov dword [rbp - 0x68], r11d
mov dword [rsp + 0x70], r14d
mov r9, rsi
mov dword [rsp + 0x44], r14d
mov esi, r14d
and eax, 7
je 0x140016de5
mov dword [rsp + 0x70], r14d
mov ecx, r14d
mov dword [rsp + 0x44], ecx
mov r11d, r14d
test eax, eax
je 0x140016d61
mov r10d, 0x38
movzx r8d, byte [r9]
inc r9
cmp r11d, 4
jge 0x140016d44
lea ecx, [r10 - 0x20]
shl r8d, cl
mov ecx, dword [rsp + 0x44]
or ecx, r8d
mov dword [rsp + 0x44], ecx
jmp 0x140016d51
mov ecx, r10d
shl r8d, cl
mov ecx, dword [rsp + 0x44]
or esi, r8d
inc r11d
sub r10d, 8
cmp r11d, eax
jl 0x140016d23
mov dword [rsp + 0x70], esi
mov r11d, dword [rsp + 0x70]
mov esi, ecx
xor esi, 0xb17a307a
xor r11d, 0x42f6b18d
mov dword [rbp - 0x58], esi
mov ecx, r14d
mov dword [rbp - 0x68], r11d
test eax, eax
je 0x140016db0
lea r10, [r12 + 1]
cmp ecx, 4
jge 0x140016d95
rol esi, 8
mov r8d, esi
jmp 0x140016d9c
rol r11d, 8
mov r8d, r11d
inc ecx
mov byte [r12], r8b
mov r12, r10
cmp ecx, eax
jl 0x140016d83
mov esi, dword [rbp - 0x58]
mov r11d, dword [rbp - 0x68]
cmp eax, 4
jbe 0x140016dcb
mov ecx, 8
sub ecx, eax
shl ecx, 3
shr r11d, cl
shl r11d, cl
mov dword [rbp - 0x68], r11d
jmp 0x140016de5
mov r11d, r14d
mov dword [rbp - 0x68], r14d
jae 0x140016de5
mov ecx, 4
sub ecx, eax
shl ecx, 3
shr esi, cl
shl esi, cl
mov dword [rbp - 0x58], esi
mov rax, r15
shr rax, 3
mov qword [rbp + 0x30], rax
test rax, rax
je 0x14001714e
movzx eax, word [rbp + 0x352]
lea rdx, [r12 + 7]
mov r12, qword [rbp + 0x30]
lea rcx, [r9 + 2]
mov edi, dword [rsp + 0x70]
mov r13d, dword [rsp + 0x44]
movzx r14d, word [rbp + 0x354]
mov dword [rsp + 0x40], eax
movzx r15d, bx
movzx eax, byte [rcx - 1]
movzx r10d, byte [rcx - 2]
movzx r9d, byte [rcx + 2]
shl r10d, 8
or r10d, eax
shl r9d, 8
movzx eax, byte [rcx]
shl r10d, 8
or r10d, eax
movzx eax, byte [rcx + 1]
shl r10d, 8
or r10d, eax
movzx eax, byte [rcx + 3]
or r9d, eax
movzx eax, byte [rcx + 4]
shl r9d, 8
or r9d, eax
movzx eax, byte [rcx + 5]
add rcx, 8
shl r9d, 8
or r9d, eax
mov qword [rbp + 0x30], rcx
movzx eax, word [rbp + 0x352]
xor r11d, r9d
mov r8d, r11d
sub r8d, r15d
xor r8d, r10d
xor r8d, esi
mov esi, dword [rbp + 0x354]
xor r8d, esi
mov ecx, r8d
xor ecx, esi
ror ecx, 0xf
imul ecx, eax
mov eax, r8d
ror eax, 7
add ecx, eax
xor r11d, ecx
mov eax, r11d
ror eax, 0xa
lea ecx, [rbx + r11]
ror ecx, 9
imul ecx, r14d
sub ecx, eax
movzx eax, word [rbp + 0x356]
xor r8d, ecx
mov ecx, r14d
xor ecx, r8d
rol ecx, 4
imul ecx, eax
mov eax, r8d
rol eax, 5
add ecx, eax
mov eax, esi
xor r11d, ecx
mov ecx, ebx
xor ecx, r11d
sub eax, ecx
xor r8d, eax
movzx eax, word [rbp + 0x352]
mov ecx, r8d
sub ecx, r15d
imul ecx, eax
mov eax, r8d
shr eax, 6
sub ecx, eax
xor r11d, ecx
movzx ecx, word [rbp + 0x356]
mov eax, r11d
ror eax, 0xf
xor eax, r14d
imul eax, r15d
xor r8d, eax
mov eax, r8d
not eax
ror eax, 3
add eax, ecx
imul eax, r14d
xor r11d, eax
mov eax, r11d
sub eax, r15d
sub eax, esi
xor r8d, eax
movzx eax, word [rbp + 0x356]
xor eax, r8d
mov ecx, r8d
imul eax, dword [rsp + 0x40]
ror ecx, 0xa
xor ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
xor ecx, r15d
ror eax, 3
rol ecx, 6
imul ecx, r14d
xor ecx, eax
xor r8d, ecx
movzx ecx, word [rbp + 0x356]
mov eax, r8d
ror eax, 0xf
sub eax, ecx
imul eax, r15d
xor r11d, eax
xor ecx, r11d
mov eax, r11d
imul ecx, r15d
shr eax, 1
xor ecx, eax
mov eax, r11d
xor r8d, ecx
shr eax, 0xf
mov ecx, r11d
sub ecx, r14d
rol ecx, 3
imul ecx, r15d
xor ecx, eax
movzx eax, word [rbp + 0x352]
xor r8d, ecx
mov ecx, r8d
sub ecx, r14d
imul ecx, eax
mov eax, r8d
shr eax, 0xd
sub ecx, eax
xor r11d, ecx
mov ecx, ebx
sub ecx, r11d
mov eax, r11d
ror ecx, 9
imul ecx, r14d
ror eax, 0xb
xor ecx, eax
xor r8d, ecx
movzx ecx, word [rbp + 0x356]
mov eax, r8d
sub eax, ebx
sub eax, ecx
xor r11d, eax
movzx eax, word [rbp + 0x352]
xor eax, r11d
mov ecx, r11d
ror ecx, 7
imul eax, r15d
sub eax, ecx
movzx ecx, word [rbp + 0x356]
xor r8d, eax
movzx eax, word [rbp + 0x352]
xor ecx, r8d
rol ecx, 4
imul ecx, eax
mov eax, r8d
ror eax, 0x10
sub ecx, eax
xor r11d, ecx
mov ecx, ebx
sub ecx, r11d
mov eax, r11d
ror ecx, 0xa
imul ecx, r14d
ror eax, 4
add ecx, eax
movzx eax, word [rbp + 0x356]
xor r8d, ecx
mov ecx, r8d
sub ecx, ebx
ror ecx, 4
imul ecx, eax
mov eax, r8d
ror eax, 9
xor ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
rol eax, 2
xor ecx, esi
rol ecx, 8
imul ecx, r15d
sub ecx, eax
movzx eax, word [rbp + 0x352]
xor r8d, ecx
mov ecx, esi
sub ecx, r8d
ror ecx, 0xb
imul ecx, eax
mov eax, r8d
ror eax, 0xc
sub ecx, eax
movzx eax, word [rbp + 0x352]
xor r11d, ecx
mov ecx, r11d
xor ecx, eax
mov eax, r11d
shr eax, 8
imul ecx, r14d
xor ecx, eax
mov eax, ebx
xor eax, r11d
xor r8d, ecx
mov rcx, qword [rbp + 0x30]
xor eax, r8d
xor eax, esi
xor r8d, r13d
xor eax, edi
mov dword [rbp - 0x58], r8d
mov dword [rbp - 0x68], eax
mov r13d, r10d
mov byte [rdx - 4], r8b
mov edi, r9d
mov al, byte [rbp - 0x68]
ror dword [rbp - 0x58], 8
mov byte [rdx], al
ror dword [rbp - 0x68], 8
mov al, byte [rbp - 0x58]
mov byte [rdx - 5], al
mov al, byte [rbp - 0x68]
ror dword [rbp - 0x58], 8
mov byte [rdx - 1], al
ror dword [rbp - 0x68], 8
mov al, byte [rbp - 0x58]
mov byte [rdx - 6], al
ror dword [rbp - 0x58], 8
mov al, byte [rbp - 0x68]
mov byte [rdx - 2], al
ror dword [rbp - 0x68], 8
mov al, byte [rbp - 0x58]
mov byte [rdx - 7], al
mov al, byte [rbp - 0x68]
mov byte [rdx - 3], al
add rdx, 8
mov esi, dword [rbp - 0x58]
mov r11d, dword [rbp - 0x68]
ror esi, 8
ror r11d, 8
mov dword [rbp - 0x58], esi
mov dword [rbp - 0x68], r11d
sub r12, 1
jne 0x140016e26
mov dl, byte [rsp + 0x58]
xor r14d, r14d
mov r15, qword [rbp - 0x48]
mov r13d, r14d
movabs rdi, 0x7f1137fab69605e
mov r12, qword [rbp + 0x348]
movzx eax, dl
mov qword [r12 + r15], rax
mov r15, qword [rbp]
mov qword [rbp + 0x1f0], r15
mov qword [rbp + 0x138], r12
lea rax, [0x1400a5840]
mov qword [rbp + 0x200], 8
mov qword [rbp + 0x1f8], rax
lea rax, [0x1400a57a0]
mov qword [rbp + 0x210], 0xa0
mov qword [rbp + 0x208], rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 0x28]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rsi, rax
test rax, rax
jne 0x1400171cb
mov r15d, 0xc0000017
jmp 0x14001734f
mov dword [rax], r15d
mov r15d, r15d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, r15d
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1400172cd
mov qword [rsi + 8], rax
mov r8d, r15d
mov rdx, r12
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov r15d, 0xa0
mov dword [rsi + 0x10], r15d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, r15d
mov r15d, 8
mov edx, r15d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rcx, rax
test rax, rax
je 0x1400172cd
mov qword [rsi + 0x18], rax
lea rax, [0x1400a57a0]
movups xmm0, xmmword [rax]
lea edx, [r15 + 0x78]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx + rdx - 0x10], xmm1
movups xmm0, xmmword [rax + rdx]
movups xmmword [rcx + rdx], xmm0
movups xmm1, xmmword [rax + rdx + 0x10]
movups xmmword [rcx + rdx + 0x10], xmm1
mov dword [rsi + 0x20], r15d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, r15d
mov edx, r15d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1400172cd
mov qword [rsi + 0x28], rax
movsd xmm0, qword [0x1400a5840]
mov r13, rsi
movsd qword [rax], xmm0
mov r15d, r14d
mov rsi, r14
jmp 0x1400172d3
mov r15d, 0xc0000017
test rsi, rsi
je 0x14001734f
mov r12, qword [rsi + 8]
test r12, r12
je 0x1400172f9
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 8], r14
mov r12, qword [rsi + 0x18]
test r12, r12
je 0x14001731a
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 0x18], r14
mov r12, qword [rsi + 0x28]
test r12, r12
je 0x14001733b
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r15d, r15d
js 0x140017366
mov qword [rbp + 0xe8], r13
mov r13, r14
jmp 0x140017366
mov r15d, 0xc0000001
mov rsi, qword [rbp + 0x138]
test rsi, rsi
je 0x14001738d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0x138], r14
test r13, r13
je 0x140017409
mov rsi, qword [r13 + 8]
test rsi, rsi
je 0x1400173b3
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 8], r14
mov rsi, qword [r13 + 0x18]
test rsi, rsi
je 0x1400173d4
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x18], r14
mov rsi, qword [r13 + 0x28]
test rsi, rsi
je 0x1400173f5
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
or r15d, 0x10000000
mov dword [rsp + 0x40], r15d
jl 0x140017a76
mov r12, qword [rbp + 0xe8]
lea r8, [rsp + 0x44]
mov r13d, 4
mov ecx, r13d
mov dword [rsp + 0x44], r13d
mov edx, dword [r12]
call fcn.1400065a8
mov r15d, eax
test eax, eax
js 0x1400174b5
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r13d
call fcn.1400065a8
mov r15d, eax
test eax, eax
js 0x1400174b5
mov edx, dword [r12 + 0x10]
lea r8, [rsp + 0x44]
mov ecx, dword [rsp + 0x44]
call fcn.1400065a8
mov r15d, eax
test eax, eax
js 0x1400174b5
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r13d
call fcn.1400065a8
mov r15d, eax
test eax, eax
js 0x1400174b5
mov edx, dword [r12 + 0x20]
lea r8, [rsp + 0x44]
mov ecx, dword [rsp + 0x44]
call fcn.1400065a8
mov r15d, eax
mov eax, dword [rbp + 0x48]
test r15d, r15d
cmovns eax, dword [rsp + 0x44]
mov dword [rbp + 0x48], eax
jmp 0x1400174b8
mov eax, dword [rbp + 0x48]
test r15d, r15d
js 0x14001762b
mov esi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, esi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rsi, rax
test rax, rax
jne 0x1400174ed
mov r15d, 0xc0000017
jmp 0x14001762b
mov eax, dword [r12]
lea r8, [rbp + 0x348]
mov rdx, r13
mov dword [rsi], eax
mov rcx, rsi
mov qword [rbp + 0x348], rsi
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x140017612
mov r8d, dword [r12]
mov rdx, qword [r12 + 8]
mov rcx, qword [rbp + 0x348]
call sub.msvcrt.dll_memcpy
mov edx, dword [r12]
lea r8, [rbp + 0x348]
mov rcx, qword [rbp + 0x348]
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x140017612
mov rcx, qword [rbp + 0x348]
lea r8, [rbp + 0x348]
mov eax, dword [r12 + 0x10]
mov rdx, r13
mov dword [rcx], eax
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x140017612
mov r8d, dword [r12 + 0x10]
mov rdx, qword [r12 + 0x18]
mov rcx, qword [rbp + 0x348]
call sub.msvcrt.dll_memcpy
mov edx, dword [r12 + 0x10]
lea r8, [rbp + 0x348]
mov rcx, qword [rbp + 0x348]
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x140017612
mov rcx, qword [rbp + 0x348]
lea r8, [rbp + 0x348]
mov eax, dword [r12 + 0x20]
mov rdx, r13
mov dword [rcx], eax
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x140017612
mov r8d, dword [r12 + 0x20]
mov rdx, qword [r12 + 0x28]
mov rcx, qword [rbp + 0x348]
call sub.msvcrt.dll_memcpy
mov edx, dword [r12 + 0x20]
lea r8, [rbp + 0x348]
mov rcx, qword [rbp + 0x348]
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x140017612
mov eax, dword [rbp + 0x48]
mov qword [rbp + 0x60], rsi
mov rsi, r14
mov dword [rsp + 0x48], eax
test rsi, rsi
je 0x14001762b
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
or r15d, 0x10000000
mov dword [rsp + 0x40], r15d
jl 0x140017a76
mov qword [rbp + 0x218], r14
mov r11d, r14d
mov dword [rbp + 0x110], r14d
mov esi, r14d
mov qword [rbp + 0x220], r14
mov dword [rbp + 0x114], r14d
mov dword [rbp + 0x80], 8
mov edx, dword [rbp - 8]
lea r8, [rbp + 0x80]
mov ecx, 8
call fcn.1400065a8
mov r15d, eax
or r15d, 0x10000000
mov dword [rsp + 0x40], r15d
jl 0x14001792f
mov eax, dword [rbp + 0x80]
add rax, 7
and eax, 0xfffffff8
cmp eax, dword [rbp + 0x80]
jae 0x1400176bb
mov r9d, dword [rbp + 0xd0]
mov r15d, 0xc0000095
mov dword [rsp + 0x40], r15d
jmp 0x1400176f0
mov dword [rbp + 0xcc], eax
mov edx, ecx
lea r8, [rbp + 0xcc]
mov ecx, eax
call fcn.1400065a8
mov r9d, dword [rbp + 0xd0]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x40], eax
cmovns r9d, dword [rbp + 0xcc]
mov dword [rbp + 0xd0], r9d
test r15d, r15d
js 0x140017a76
cmp qword [rbp - 0x78], r14
je 0x1400178fe
cmp dword [rbp - 0x80], 1
jbe 0x1400178fe
mov rcx, qword [rbp - 0x78]
mov r10d, r14d
mov qword [rbp + 0x348], rcx
mov r12d, dword [rcx]
lea r8, [rbp + 0x348]
mov rdx, r13
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x1400177a5
mov rcx, qword [rbp + 0x348]
lea r8, [rbp + 0x348]
mov edx, r12d
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x1400177a5
mov rcx, qword [rbp + 0x348]
inc r10d
cmp r10d, 1
jb 0x14001771b
mov r10d, dword [rcx]
lea r8, [rbp + 0x348]
mov rdx, r13
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x1400177a5
mov rax, qword [rbp + 0x348]
test r10d, r10d
mov r11d, r10d
mov dword [rbp + 0x110], r10d
cmove rax, r14
mov qword [rbp + 0x218], rax
test r15d, r15d
js 0x140017a76
cmp dword [rbp - 0x80], 2
jbe 0x1400178fe
mov rcx, qword [rbp - 0x78]
mov r10d, r14d
mov qword [rbp + 0x348], rcx
mov r12d, dword [rcx]
lea r8, [rbp + 0x348]
mov rdx, r13
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140017850
mov rcx, qword [rbp + 0x348]
lea r8, [rbp + 0x348]
mov edx, r12d
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140017850
mov rcx, qword [rbp + 0x348]
inc r10d
cmp r10d, 2
jb 0x1400177c6
mov r10d, dword [rcx]
lea r8, [rbp + 0x348]
mov rdx, r13
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140017850
mov rax, qword [rbp + 0x348]
test r10d, r10d
mov esi, r10d
mov dword [rbp + 0x114], r10d
cmove rax, r14
mov qword [rbp + 0x220], rax
test r15d, r15d
js 0x140017a76
lea r8, [rsp + 0x44]
mov dword [rsp + 0x44], r13d
mov edx, r9d
mov ecx, r13d
call fcn.1400065a8
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x14001790b
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r13d
call fcn.1400065a8
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x14001790b
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r11d
call fcn.1400065a8
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x14001790b
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r13d
call fcn.1400065a8
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x14001790b
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, esi
call fcn.1400065a8
mov r15d, eax
mov dword [rsp + 0x40], eax
mov eax, dword [rbp + 0xd4]
test r15d, r15d
cmovns eax, dword [rsp + 0x44]
mov dword [rbp + 0xd4], eax
jmp 0x140017911
mov r15d, 0xc000000d
mov dword [rsp + 0x40], r15d
jmp 0x14001792f
mov eax, dword [rbp + 0xd4]
test r15d, r15d
js 0x140017a76
cmp eax, 0x400000
jbe 0x14001792c
mov r15d, 0x8000ffff
jmp 0x140017a71
mov dword [rbp - 0xc], eax
test r15d, r15d
js 0x140017a76
mov esi, dword [rbp - 0xc]
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, esi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x140017962
mov r15d, 0xd0000017
mov rsi, r14
jmp 0x14001796f
mov rsi, rax
mov qword [rbp - 0x18], rax
mov r15d, 0x10000000
mov dword [rsp + 0x40], r15d
test r15d, r15d
js 0x140017a76
mov rax, qword [rbp + 0x60]
test rax, rax
je 0x140017a25
test rsi, rsi
je 0x140017a25
mov qword [rbp + 0x2f0], rax
lea r8, [rbp + 0x228]
mov eax, dword [rsp + 0x48]
lea rdx, [0x140089aa0]
mov dword [rbp + 0x300], eax
mov ecx, 1
mov eax, dword [rbp - 0xc]
mov dword [rbp + 0x304], eax
mov qword [rbp + 0x2f8], rsi
mov dword [rbp + 0x308], r14d
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
je 0x140017a2d
mov rcx, qword [rbp + 0x228]
lea rdx, [0x14008ba90]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140017a2d
xor r9d, r9d
lea rdx, [rbp + 0x2f0]
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call qword [0x140088740]
mov r9d, dword [rbp - 0xc]
mov r15d, eax
or r15d, 0x10000000
cmovge r9d, dword [rbp + 0x304]
mov dword [rbp - 0xc], r9d
jmp 0x140017a5d
mov r15d, 0x80070057
jmp 0x140017a71
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
jle 0x140017a4e
movzx r15d, ax
or r15d, 0x80070000
mov dword [rsp + 0x40], r15d
mov r9d, dword [rbp - 0xc]
test r15d, r15d
js 0x140017a62
mov r15d, 0x80004005
mov dword [rsp + 0x40], r15d
cmp r15d, 0xd0000023
jne 0x140017a7e
mov r15d, 0x8007007a
mov dword [rsp + 0x40], r15d
mov r13, r14
jmp 0x140017f18
test r15d, r15d
js 0x140017a76
mov qword [rbp + 0x350], r14
mov dword [rsp + 0x40], r14d
mov qword [rbp + 0x348], rsi
cmp r9d, r13d
jb 0x140017c93
mov r10d, dword [rsi]
lea r8, [rbp + 0x348]
mov rdx, r13
mov dword [rsp + 0x48], r10d
mov rcx, rsi
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x140017c99
lea r8, [rsp + 0x40]
mov edx, r13d
xor ecx, ecx
call fcn.1400065a8
mov r15d, eax
test eax, eax
js 0x140017c99
mov eax, r9d
sub eax, dword [rsp + 0x40]
cmp eax, r10d
jb 0x140017c93
mov rax, qword [rbp + 0x348]
lea r8, [rbp + 0x348]
mov rcx, rax
mov qword [rbp], rax
mov edx, r10d
mov qword [rbp - 0x48], r10
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x140017c99
mov ecx, dword [rsp + 0x40]
lea r8, [rsp + 0x40]
mov edx, r10d
call fcn.1400065a8
mov r15d, eax
test eax, eax
js 0x140017c99
mov eax, r9d
sub eax, dword [rsp + 0x40]
cmp eax, r13d
jb 0x140017c93
mov rcx, qword [rbp + 0x348]
lea r8, [rbp + 0x348]
mov rdx, r13
mov r12d, dword [rcx]
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x140017c99
mov ecx, dword [rsp + 0x40]
lea r8, [rsp + 0x40]
mov edx, r13d
call fcn.1400065a8
mov r15d, eax
test eax, eax
js 0x140017c99
mov eax, r9d
sub eax, dword [rsp + 0x40]
cmp eax, r12d
jb 0x140017c93
mov rax, qword [rbp + 0x348]
lea r8, [rbp + 0x348]
mov rcx, rax
mov qword [rbp + 0x30], rax
mov edx, r12d
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x140017c99
mov ecx, dword [rsp + 0x40]
lea r8, [rsp + 0x40]
mov edx, r12d
call fcn.1400065a8
mov r15d, eax
test eax, eax
js 0x140017c99
mov eax, r9d
sub eax, dword [rsp + 0x40]
cmp eax, r13d
jb 0x140017c93
mov rcx, qword [rbp + 0x348]
lea r8, [rbp + 0x348]
mov r11d, 4
mov edx, r11d
mov r13d, dword [rcx]
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x140017c99
mov ecx, dword [rsp + 0x40]
lea r8, [rsp + 0x40]
mov edx, r11d
call fcn.1400065a8
mov r15d, eax
test eax, eax
js 0x140017c99
mov ecx, dword [rsp + 0x40]
mov eax, r9d
sub eax, ecx
cmp eax, r13d
jb 0x140017c93
lea r8, [rsp + 0x40]
mov edx, r13d
call fcn.1400065a8
mov r15d, eax
test eax, eax
js 0x140017c99
cmp r9d, dword [rsp + 0x40]
jne 0x140017c93
lea ecx, [r12 + r13]
mov eax, r9d
add ecx, r10d
add rcx, 0xc
cmp rcx, rax
jne 0x140017c93
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 0x28]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rsi, rax
test rax, rax
jne 0x140017cd8
mov r15d, 0xc0000017
jmp 0x140017e42
mov r15d, 0xc000003e
mov r13, r14
or r15d, 0x10000000
mov dword [rsp + 0x40], r15d
jl 0x140017f18
mov qword [rbp + 0xa0], r14
mov rsi, r14
mov qword [rbp + 0x1b0], r14
test r13, r13
jne 0x140017eea
mov r15d, 0xd000000d
mov dword [rsp + 0x40], r15d
jmp 0x140017f18
mov r15, qword [rbp]
test r15, r15
je 0x140017d24
mov eax, dword [rsp + 0x48]
mov dword [rsi], eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, qword [rbp - 0x48]
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140017d19
mov qword [rsi + 8], rax
mov r8, qword [rbp - 0x48]
mov rdx, r15
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x140017d2b
mov r15d, 0xc0000017
jmp 0x140017dc6
mov dword [rax], r14d
mov qword [rax + 8], r14
mov r15, qword [rbp + 0x30]
test r15, r15
je 0x140017d68
mov dword [rsi + 0x10], r12d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140017d19
mov qword [rsi + 0x18], rax
mov r8, r12
mov rdx, r15
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x140017d70
mov dword [rsi + 0x10], r14d
mov qword [rsi + 0x18], r14
cmp qword [rbp + 0x348], r14
je 0x140017db1
mov dword [rsi + 0x20], r13d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r13
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140017d19
mov qword [rsi + 0x28], rax
mov rdx, qword [rbp + 0x348]
mov r8, r13
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x140017db9
mov dword [rsi + 0x20], r14d
mov qword [rsi + 0x28], r14
mov qword [rbp + 0x350], rsi
mov r15d, r14d
mov rsi, r14
test rsi, rsi
je 0x140017e42
mov r12, qword [rsi + 8]
test r12, r12
je 0x140017dec
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 8], r14
mov r12, qword [rsi + 0x18]
test r12, r12
je 0x140017e0d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 0x18], r14
mov r12, qword [rsi + 0x28]
test r12, r12
je 0x140017e2e
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r13, qword [rbp + 0x350]
test r15d, r15d
mov rsi, r14
cmovs rsi, qword [rbp + 0x350]
cmovs r13, r14
mov qword [rsp + 0x68], r13
test rsi, rsi
je 0x140017c9c
mov r12, qword [rsi + 8]
test r12, r12
je 0x140017e8a
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 8], r14
mov r12, qword [rsi + 0x18]
test r12, r12
je 0x140017eab
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 0x18], r14
mov r12, qword [rsi + 0x28]
test r12, r12
je 0x140017ecc
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsp + 0x68], r13
jmp 0x140017c9c
mov r13, qword [r13 + 8]
mov qword [rbp - 0x28], r13
test r13, r13
jne 0x140018111
mov r15d, 0xd000000d
jmp 0x140017f0e
mov r15d, 0xc000003e
bts r15d, 0x1c
mov dword [rsp + 0x40], r15d
mov r13, qword [rsp + 0x68]
mov r12, qword [rsp + 0x78]
test r12, r12
je 0x140017f36
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r12, qword [rbp + 0xe8]
test r12, r12
je 0x140017fca
mov rsi, qword [r12 + 8]
test rsi, rsi
je 0x140017f69
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r12 + 8], r14
mov rsi, qword [r12 + 0x18]
test rsi, rsi
je 0x140017f8c
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r12 + 0x18], r14
mov rsi, qword [r12 + 0x28]
test rsi, rsi
je 0x140017faf
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r12 + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0xe8], r14
mov rsi, qword [rbp + 0x60]
test rsi, rsi
je 0x140017fe7
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [rbp - 0x18]
test rsi, rsi
je 0x140018004
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r13, r13
je 0x140018080
mov rsi, qword [r13 + 8]
test rsi, rsi
je 0x14001802a
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 8], r14
mov rsi, qword [r13 + 0x18]
test rsi, rsi
je 0x14001804b
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x18], r14
mov rsi, qword [r13 + 0x28]
test rsi, rsi
je 0x14001806c
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [rbp - 0x30]
test rsi, rsi
je 0x14001809d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r15d, r15d
js 0x140018d85
cmp dword [rbp + 0x20], 1
jb 0x1400188ea
mov r13d, 4
cmp qword [rbp + 0x28], r14
je 0x1400188f5
cmp dword [rbp + 0x20], r14d
jbe 0x1400188f5
mov rsi, qword [rbp + 0x28]
lea r8, [rbp - 0x18]
mov edx, r13d
mov qword [rbp - 0x18], rsi
mov rcx, rsi
mov r9d, dword [rsi]
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018902
mov rax, qword [rbp - 0x18]
test r9d, r9d
mov dword [rbp + 0x124], r9d
cmove rax, r14
mov qword [rbp + 0x238], rax
jmp 0x140018910
mov rax, qword [rsp + 0x68]
cmp dword [rax], r14d
jne 0x14001812e
mov r15d, 0xd000000d
mov r13, rax
mov dword [rsp + 0x40], r15d
jmp 0x140017f18
mov r15d, dword [rax]
mov dword [rbp + 0x350], r14d
test r15, r15
je 0x14001866f
add r15, 0xfffffffffffffff8
mov rcx, r15
mov qword [rbp + 0x30], r15
call fcn.1400034ac
mov qword [rbp - 0x48], rax
mov r12, rax
test rax, rax
je 0x140018668
mov r9, r15
mov qword [rbp + 0x348], rdi
mov dword [rbp - 0x60], r14d
mov dl, r14b
mov byte [rsp + 0x58], dl
mov r10, r13
mov r13, rax
and r9d, 7
je 0x140018262
or dword [rbp - 0x70], 0xffffffff
mov ecx, r14d
mov dword [rsp + 0x40], ecx
mov r11d, r14d
mov dword [rsp + 0x70], esi
test r9d, r9d
je 0x1400181dd
mov r8d, 0x38
movzx eax, byte [r10]
inc r10
cmp r11d, 4
jge 0x1400181be
lea ecx, [r8 - 0x20]
shl eax, cl
mov ecx, dword [rsp + 0x40]
or esi, eax
jmp 0x1400181cd
mov ecx, r8d
shl eax, cl
mov ecx, dword [rsp + 0x40]
or ecx, eax
mov dword [rsp + 0x40], ecx
inc r11d
sub r8d, 8
cmp r11d, r9d
jl 0x1400181a3
mov dword [rsp + 0x70], esi
xor esi, 0x92f65a5
mov r8d, ecx
xor r8d, 0x699a899c
mov dword [rbp - 0x60], esi
mov dword [rbp - 0x70], r8d
mov eax, r14d
test r9d, r9d
je 0x140018228
lea r11, [r13 + 1]
cmp eax, 4
jge 0x14001820c
rol esi, 8
mov ecx, esi
jmp 0x140018213
rol r8d, 8
mov ecx, r8d
inc eax
mov byte [r13], cl
mov r13, r11
cmp eax, r9d
jl 0x1400181fc
mov esi, dword [rbp - 0x60]
mov r8d, dword [rbp - 0x70]
cmp r9d, 4
jbe 0x140018245
mov ecx, 8
sub ecx, r9d
shl ecx, 3
shr r8d, cl
shl r8d, cl
mov dword [rbp - 0x70], r8d
jmp 0x140018273
mov r8d, r14d
mov dword [rbp - 0x70], r14d
jae 0x140018273
mov ecx, 4
sub ecx, r9d
shl ecx, 3
shr esi, cl
shl esi, cl
mov dword [rbp - 0x60], esi
jmp 0x140018273
or dword [rsp + 0x40], 0xffffffff
mov r8d, r14d
mov dword [rsp + 0x70], r14d
mov dword [rbp - 0x70], r14d
mov rax, r15
shr rax, 3
mov qword [rbp], rax
test rax, rax
je 0x1400185e3
mov r12d, dword [rbp + 0x34c]
lea r15, [r13 + 7]
mov r13, qword [rbp]
lea r14, [r10 + 2]
mov ebx, dword [rsp + 0x40]
mov edx, dword [rsp + 0x70]
movzx eax, r12w
mov dword [rsp + 0x48], eax
movzx eax, word [rbp + 0x34a]
mov dword [rbp - 8], eax
movzx eax, di
mov dword [rsp + 0x44], eax
movzx eax, byte [r14 - 1]
mov r9d, edi
movzx r11d, byte [r14 - 2]
movzx r10d, byte [r14 + 2]
shl r11d, 8
or r11d, eax
shl r10d, 8
movzx eax, byte [r14]
lea r14, [r14 + 8]
shl r11d, 8
or r11d, eax
movzx eax, byte [r14 - 7]
shl r11d, 8
or r11d, eax
movzx eax, byte [r14 - 5]
or r10d, eax
xor esi, r11d
movzx eax, byte [r14 - 4]
shl r10d, 8
or r10d, eax
movzx eax, byte [r14 - 3]
shl r10d, 8
or r10d, eax
xor r8d, r10d
xor r9d, r8d
mov r8d, dword [rsp + 0x48]
xor r9d, esi
xor r9d, r12d
mov ecx, r9d
mov eax, r9d
sub ecx, edi
rol eax, 0xa
rol ecx, 5
imul ecx, r8d
add ecx, eax
movzx eax, word [rbp + 0x34a]
xor esi, ecx
lea ecx, [rsi + r12]
ror ecx, 9
imul ecx, eax
mov eax, esi
rol eax, 2
sub ecx, eax
xor r9d, ecx
mov ecx, r9d
mov eax, r9d
sub ecx, r8d
shr eax, 0xd
imul ecx, dword [rsp + 0x44]
sub ecx, eax
movzx eax, word [rbp + 0x34a]
xor esi, ecx
mov ecx, esi
xor ecx, eax
movzx eax, word [rbp + 0x34e]
rol ecx, 6
imul ecx, eax
mov eax, esi
rol eax, 2
sub ecx, eax
mov eax, r12d
xor r9d, ecx
mov ecx, edi
xor ecx, r9d
sub eax, ecx
xor esi, eax
mov eax, esi
mov ecx, esi
ror ecx, 6
xor eax, r8d
imul eax, dword [rbp - 8]
xor ecx, eax
xor r9d, ecx
mov eax, r9d
rol eax, 2
lea ecx, [r9 + r12]
ror ecx, 0xf
imul ecx, dword [rsp + 0x44]
add ecx, eax
xor esi, ecx
mov ecx, esi
movzx eax, word [rbp + 0x34e]
sub ecx, edi
ror ecx, 0xe
imul ecx, eax
mov eax, esi
rol eax, 8
sub ecx, eax
xor r9d, ecx
mov ecx, edi
xor ecx, r9d
mov eax, r9d
ror eax, 0xa
ror ecx, 0xc
imul ecx, r8d
xor ecx, eax
movzx eax, word [rbp + 0x34e]
xor esi, ecx
mov ecx, esi
xor ecx, eax
movzx eax, word [rbp + 0x34a]
imul ecx, eax
mov eax, esi
shr eax, 0xa
xor ecx, eax
xor r9d, ecx
movzx ecx, word [rbp + 0x34e]
mov eax, r9d
not eax
ror eax, 5
add eax, dword [rsp + 0x44]
imul eax, ecx
xor esi, eax
mov eax, esi
sub eax, ecx
xor eax, edi
xor r9d, eax
movzx eax, word [rbp + 0x34e]
mov ecx, r9d
xor ecx, eax
mov eax, r9d
rol ecx, 2
imul ecx, r8d
shr eax, 2
add ecx, eax
movzx eax, word [rbp + 0x34a]
xor esi, ecx
mov ecx, esi
sub ecx, r12d
ror ecx, 6
imul ecx, eax
mov eax, esi
rol eax, 7
add ecx, eax
xor r9d, ecx
mov eax, r9d
mov ecx, r9d
xor eax, r8d
ror ecx, 9
imul eax, dword [rsp + 0x44]
mov r8d, edi
add ecx, eax
movzx eax, word [rbp + 0x34a]
xor esi, ecx
mov ecx, esi
xor ecx, eax
movzx eax, word [rbp + 0x34e]
rol ecx, 5
imul ecx, eax
mov eax, esi
rol eax, 7
add ecx, eax
xor r9d, ecx
movzx ecx, word [rbp + 0x34a]
xor r8d, r9d
xor r8d, esi
xor r8d, r12d
mov eax, r8d
ror eax, 3
sub eax, ecx
imul eax, dword [rsp + 0x48]
xor r9d, eax
mov ecx, r9d
mov eax, r9d
sub ecx, r12d
ror eax, 6
ror ecx, 1
imul ecx, dword [rsp + 0x44]
sub ecx, eax
movzx eax, word [rbp + 0x34e]
xor r8d, ecx
lea ecx, [rdi + r8]
rol ecx, 3
imul ecx, eax
mov eax, r8d
rol eax, 0xe
add ecx, eax
xor r9d, ecx
mov eax, r9d
ror eax, 0xe
lea ecx, [rdi + r9]
rol ecx, 0xf
imul ecx, dword [rsp + 0x48]
sub ecx, eax
movzx eax, word [rbp + 0x34a]
xor r8d, ecx
mov ecx, r8d
xor ecx, dword [rsp + 0x44]
imul ecx, eax
mov eax, r8d
shr eax, 3
xor ecx, eax
xor r9d, ecx
mov ecx, r9d
mov eax, r9d
rol eax, 2
xor ecx, r12d
rol ecx, 4
xor r9d, ebx
imul ecx, dword [rsp + 0x44]
mov ebx, r10d
mov dword [rbp - 0x70], r9d
xor ecx, eax
xor ecx, edx
mov edx, r11d
xor r8d, ecx
mov dword [rbp - 0x60], r8d
mov byte [r15 - 4], r8b
mov al, byte [rbp - 0x70]
ror dword [rbp - 0x60], 8
mov byte [r15], al
lea r15, [r15 + 8]
ror dword [rbp - 0x70], 8
mov al, byte [rbp - 0x60]
mov byte [r15 - 0xd], al
mov al, byte [rbp - 0x70]
ror dword [rbp - 0x60], 8
mov byte [r15 - 9], al
ror dword [rbp - 0x70], 8
mov al, byte [rbp - 0x60]
mov byte [r15 - 0xe], al
ror dword [rbp - 0x60], 8
mov al, byte [rbp - 0x70]
mov byte [r15 - 0xa], al
ror dword [rbp - 0x70], 8
mov al, byte [rbp - 0x60]
mov byte [r15 - 0xf], al
mov al, byte [rbp - 0x70]
mov byte [r15 - 0xb], al
mov esi, dword [rbp - 0x60]
mov r8d, dword [rbp - 0x70]
ror esi, 8
ror r8d, 8
mov dword [rbp - 0x60], esi
mov dword [rbp - 0x70], r8d
sub r13, 1
jne 0x1400182bb
mov dl, byte [rsp + 0x58]
movabs rbx, 0xc81ecb17b1b54a58
mov r15, qword [rbp + 0x30]
xor r14d, r14d
mov r12, qword [rbp - 0x48]
mov rax, r14
test r15, r15
je 0x1400185f7
xor dl, byte [rax + r12]
inc rax
cmp rax, r15
jb 0x1400185eb
mov rcx, qword [rbp - 0x28]
movzx eax, dl
cmp rax, qword [r15 + rcx]
je 0x140018613
mov rsi, qword [rbp + 0xa0]
mov r15d, 0xc004d501
jmp 0x14001862e
mov rsi, r12
mov qword [rbp + 0xa0], r12
mov qword [rbp + 0x1b0], r15
mov r12, r14
mov r15d, dword [rbp + 0x350]
test r12, r12
je 0x140018642
mov rcx, r12
call fcn.140044550
mov rsi, qword [rbp + 0xa0]
test r15d, r15d
js 0x14001866f
mov r9d, dword [rbp + 0x1b0]
mov r15d, 0x10000000
mov qword [rbp - 0x30], rsi
mov rsi, r14
mov dword [rbp + 0x78], r9d
mov qword [rbp + 0xa0], r14
jmp 0x140018679
mov rsi, qword [rbp + 0xa0]
mov r9d, dword [rbp + 0x78]
mov r15d, 0xd0000001
mov dword [rsp + 0x40], r15d
test rsi, rsi
je 0x1400186a2
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r9d, dword [rbp + 0x78]
mov qword [rbp + 0xa0], r14
test r15d, r15d
js 0x140017f13
mov r10, qword [rbp - 0x30]
mov r11d, 4
mov dword [rsp + 0x44], r14d
mov qword [rbp - 0x48], r10
cmp r9d, r11d
jb 0x140017f03
mov eax, dword [r10]
lea r8, [rbp - 0x48]
mov edx, r11d
mov dword [rsp + 0x48], eax
mov rcx, r10
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x140017f09
lea r8, [rsp + 0x44]
mov edx, r11d
xor ecx, ecx
call fcn.1400065a8
mov r15d, eax
test eax, eax
js 0x140017f09
mov eax, r9d
sub eax, dword [rsp + 0x44]
cmp eax, r11d
jb 0x140017f03
mov rcx, qword [rbp - 0x48]
lea r8, [rbp - 0x48]
mov edx, r11d
mov r13d, dword [rcx]
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x140017f09
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r11d
call fcn.1400065a8
mov r15d, eax
test eax, eax
js 0x140017f09
mov ecx, dword [rsp + 0x44]
mov eax, r9d
sub eax, ecx
cmp eax, r13d
jb 0x140017f03
lea r8, [rsp + 0x44]
mov edx, r13d
call fcn.1400065a8
mov r15d, eax
test eax, eax
js 0x140017f09
mov rsi, qword [rbp - 0x48]
mov edx, r9d
lea rax, [rsi + r13]
lea rcx, [rdx + r10]
cmp rcx, rax
jb 0x140017f03
sub rdx, rsi
sub rdx, r13
add rdx, r10
cmp rdx, 8
jae 0x140017f03
mov dword [rsp + 0x70], r14d
mov rax, r14
mov qword [rbp - 0x48], rax
mov r15d, r14d
test rsi, rsi
je 0x14001886e
lea r8, [rbp - 0x28]
mov edx, r13d
mov rcx, rsi
mov r9, rsi
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x1400188cf
mov r11, qword [rbp - 0x28]
cmp rsi, r11
jae 0x140018866
mov r10d, dword [rbp + 0x120]
lea r8, [rbp - 0x28]
mov edx, 4
mov rcx, r9
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x1400188cf
cmp qword [rbp - 0x28], r11
ja 0x14001889b
mov edx, dword [r9]
lea r8, [rbp + 0x350]
mov ecx, 4
call fcn.1400065a8
test eax, eax
mov r15d, eax
cmovns r10d, dword [rbp + 0x350]
mov dword [rbp + 0x120], r10d
js 0x1400188cf
mov edx, r10d
lea r8, [rbp]
mov rcx, r9
call fcn.1400065c4
mov r15d, eax
test eax, eax
js 0x1400188cf
mov r9, qword [rbp]
cmp r9, r11
ja 0x14001889b
inc dword [rsp + 0x70]
cmp r9, r11
jb 0x1400187ea
cmp r9, r11
jne 0x14001889b
mov rax, r14
test r13d, r13d
je 0x1400188a9
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r13
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp - 0x48], rax
test rax, rax
jne 0x1400188a6
mov r15d, 0xc0000017
jmp 0x1400188cf
mov r15d, 0xc000000d
jmp 0x140017f09
mov r15d, r14d
test rsi, rsi
je 0x1400188c0
mov r8, r13
mov rdx, rsi
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp - 0x48]
mov qword [rbp + 0x28], rax
mov eax, dword [rsp + 0x70]
mov dword [rbp + 0x20], eax
mov dword [rbp + 0x24], r13d
test r15d, r15d
js 0x140017f09
mov eax, dword [rsp + 0x48]
cmp eax, dword [rbp + 0x20]
je 0x140017f09
jmp 0x140017f03
mov r15d, 0xc004d501
jmp 0x140018d80
mov r15d, 0xc000000d
mov dword [rsp + 0x40], r15d
jmp 0x140018927
mov r9d, dword [rbp + 0x124]
mov rax, qword [rbp + 0x238]
test r15d, r15d
js 0x140018d85
cmp r9d, r13d
jne 0x1400162d1
mov eax, dword [rax]
mov dword [rbp + 0x18], eax
test r15d, r15d
js 0x140018d85
mov r15d, dword [rbp + 0x18]
mov eax, 0x8007007a
cmp r15d, 0xd0000023
cmove r15d, eax
mov dword [rsp + 0x40], r15d
mov dword [rbp + 0x18], r15d
cmp r15d, eax
je 0x14001895b
test r15d, r15d
js 0x140018d85
cmp dword [rbp + 0x20], 6
jne 0x1400188ea
cmp qword [rbp + 0x28], r14
jne 0x140018977
mov r15d, 0xc000000d
mov dword [rsp + 0x40], r15d
jmp 0x140018a2b
mov rcx, qword [rbp + 0x28]
mov r9d, r14d
mov qword [rsp + 0x68], rcx
mov r10d, dword [rcx]
lea r8, [rsp + 0x68]
mov rdx, r13
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018a00
mov rcx, qword [rsp + 0x68]
lea r8, [rsp + 0x68]
mov edx, r10d
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018a00
mov rcx, qword [rsp + 0x68]
inc r9d
cmp r9d, 1
jb 0x140018983
mov r9d, dword [rcx]
lea r8, [rsp + 0x68]
mov rdx, r13
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018a00
mov rax, qword [rsp + 0x68]
test r9d, r9d
mov dword [rbp + 0x128], r9d
cmove rax, r14
mov qword [rbp + 0x240], rax
jmp 0x140018a0e
mov r9d, dword [rbp + 0x128]
mov rax, qword [rbp + 0x240]
test r15d, r15d
js 0x140018d85
cmp r9d, 8
jne 0x1400162d1
mov rax, qword [rax]
mov qword [rbp + 0x268], rax
test r15d, r15d
js 0x140018d85
cmp qword [rbp + 0x28], r14
jne 0x140018a4a
mov r15d, 0xc000000d
mov dword [rsp + 0x40], r15d
jmp 0x140018afb
mov rcx, qword [rbp + 0x28]
mov r9d, r14d
mov qword [rsp + 0x68], rcx
mov r10d, dword [rcx]
lea r8, [rsp + 0x68]
mov rdx, r13
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018ad3
mov rcx, qword [rsp + 0x68]
lea r8, [rsp + 0x68]
mov edx, r10d
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018ad3
mov rcx, qword [rsp + 0x68]
inc r9d
cmp r9d, 2
jb 0x140018a56
mov r9d, dword [rcx]
lea r8, [rsp + 0x68]
mov rdx, r13
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018ad3
mov rax, qword [rsp + 0x68]
test r9d, r9d
mov dword [rbp + 0x12c], r9d
cmove rax, r14
mov qword [rbp + 0x248], rax
jmp 0x140018ae1
mov r9d, dword [rbp + 0x12c]
mov rax, qword [rbp + 0x248]
test r15d, r15d
js 0x140018d85
cmp r9d, r13d
jne 0x1400162d1
mov eax, dword [rax]
mov dword [rbp + 0x15c], eax
test r15d, r15d
js 0x140018d85
cmp qword [rbp + 0x28], r14
jne 0x140018b15
mov r15d, 0xc000000d
jmp 0x140018d80
mov rcx, qword [rbp + 0x28]
mov r9d, r14d
mov qword [rsp + 0x68], rcx
mov r10d, dword [rcx]
lea r8, [rsp + 0x68]
mov rdx, r13
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018b9e
mov rcx, qword [rsp + 0x68]
lea r8, [rsp + 0x68]
mov edx, r10d
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018b9e
mov rcx, qword [rsp + 0x68]
inc r9d
cmp r9d, 3
jb 0x140018b21
mov r10d, dword [rcx]
lea r8, [rsp + 0x68]
mov rdx, r13
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018b9e
mov r11, qword [rsp + 0x68]
test r10d, r10d
mov dword [rbp + 0x130], r10d
cmove r11, r14
mov qword [rbp + 0x250], r11
jmp 0x140018bac
mov r10d, dword [rbp + 0x130]
mov r11, qword [rbp + 0x250]
test r15d, r15d
js 0x140018d85
mov rcx, qword [rbp + 0x28]
mov r9d, r14d
mov qword [rsp + 0x68], rcx
mov esi, dword [rcx]
lea r8, [rsp + 0x68]
mov rdx, r13
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018c3b
mov rcx, qword [rsp + 0x68]
lea r8, [rsp + 0x68]
mov edx, esi
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018c3b
mov rcx, qword [rsp + 0x68]
inc r9d
cmp r9d, r13d
jb 0x140018bc1
mov r9d, dword [rcx]
lea r8, [rsp + 0x68]
mov rdx, r13
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018c3b
mov rax, qword [rsp + 0x68]
test r9d, r9d
mov dword [rbp + 0x140], r9d
cmove rax, r14
mov qword [rbp + 0x258], rax
jmp 0x140018c49
mov r9d, dword [rbp + 0x140]
mov rax, qword [rbp + 0x258]
test r15d, r15d
js 0x140018c61
cmp r9d, r13d
jne 0x1400162d1
mov esi, dword [rax]
mov dword [rbp + 0x144], esi
jmp 0x140018c67
mov esi, dword [rbp + 0x144]
test r15d, r15d
js 0x140018d85
mov rcx, qword [rbp + 0x28]
mov r9d, r14d
mov qword [rsp + 0x68], rcx
mov r12d, dword [rcx]
lea r8, [rsp + 0x68]
mov rdx, r13
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018cf9
mov rcx, qword [rsp + 0x68]
lea r8, [rsp + 0x68]
mov edx, r12d
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018cf9
mov rcx, qword [rsp + 0x68]
inc r9d
cmp r9d, 5
jb 0x140018c7c
mov r9d, dword [rcx]
lea r8, [rsp + 0x68]
mov rdx, r13
call fcn.1400065c4
mov dword [rsp + 0x40], eax
mov r15d, eax
test eax, eax
js 0x140018cf9
mov rax, qword [rsp + 0x68]
test r9d, r9d
mov dword [rbp + 0x158], r9d
cmove rax, r14
mov qword [rbp + 0x260], rax
jmp 0x140018d07
mov r9d, dword [rbp + 0x158]
mov rax, qword [rbp + 0x260]
test r15d, r15d
js 0x140018d1f
cmp r9d, r13d
jne 0x1400162d1
mov ecx, dword [rax]
mov dword [rbp + 0xd8], ecx
jmp 0x140018d25
mov ecx, dword [rbp + 0xd8]
test r15d, r15d
js 0x140018d85
mov rax, qword [rbp + 0x268]
cmp qword [rbp + 0x1c0], rax
jne 0x1400188ea
mov eax, dword [rbp + 0x15c]
mov dword [rbp + 0xac], eax
mov dword [rbp + 0xa8], esi
mov dword [rbp + 0x7c], ecx
cmp esi, r13d
ja 0x140018d7a
cmp r10d, r13d
ja 0x140018d7a
mov rcx, qword [rbp + 0x198]
mov rdx, r11
mov r8d, r10d
call sub.msvcrt.dll_memcpy
cmp dword [rbp + 0x18], r14d
cmovne r15d, dword [rbp + 0x18]
jmp 0x140018d80
mov r15d, 0x8007007a
mov dword [rsp + 0x40], r15d
mov r13, qword [rsp + 0x60]
mov r12, qword [rsp + 0x50]
and qword [rbp - 0x80], 0
mov rsi, qword [rbp - 0x78]
test rsi, rsi
je 0x140018db5
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp - 0x78], r14
and qword [rbp + 0x20], 0
mov rsi, qword [rbp + 0x28]
test rsi, rsi
je 0x140018ddb
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0x28], r14
test r13, r13
je 0x140018df4
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r12, r12
je 0x140018e0d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r15d, r15d
js 0x14001b2d1
cmp dword [rbp + 0x7c], r14d
je 0x14001b28e
xor eax, eax
mov qword [rbp - 0x38], r14
mov qword [rbp + 0xb8], rax
mov esi, 0xa0
mov qword [rbp + 0xc0], rax
mov r13, r14
lea rax, [0x1400a5850]
mov dword [rbp + 0x5c], r14d
mov qword [rbp + 0x270], rax
mov qword [rbp + 0x1c8], rsi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, esi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp - 0x28], rax
mov rsi, rax
test rax, rax
je 0x14001b204
mov r8, qword [rbp + 0x1c8]
mov rcx, rax
mov rdx, qword [rbp + 0x270]
call sub.msvcrt.dll_memcpy
mov r12d, dword [rbp + 0x1c8]
mov r13, rsi
mov qword [rsp + 0x50], rsi
lea rax, [0x1400a5790]
mov esi, 8
mov qword [rbp + 0x278], rax
mov qword [rbp + 0x1d0], rsi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, esi
mov edx, esi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp], rax
mov rsi, rax
test rax, rax
je 0x14001b204
mov r8, qword [rbp + 0x1d0]
mov rcx, rax
mov rdx, qword [rbp + 0x278]
call sub.msvcrt.dll_memcpy
mov r13, qword [rbp + 0x1d0]
mov qword [rsp + 0x60], rsi
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x280], rax
mov r11d, 4
mov dword [rsp + 0x44], r14d
mov edx, r11d
lea r8, [rbp + 0x350]
mov ecx, r11d
call fcn.1400065a8
test eax, eax
js 0x14001b1fd
mov edx, dword [rbp + 0x350]
mov dword [rbp + 0x84], edx
lea r8, [rsp + 0x44]
xor ecx, ecx
call fcn.1400065a8
mov r9d, 0x10000000
or eax, r9d
jl 0x14001b1fd
lea r8, [rbp + 0x350]
mov edx, r12d
mov ecx, r11d
call fcn.1400065a8
test eax, eax
js 0x14001b1fd
mov edx, dword [rbp + 0x350]
mov dword [rbp + 0x84], edx
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
call fcn.1400065a8
or eax, r9d
jl 0x14001b1fd
lea r8, [rbp + 0x350]
mov edx, r13d
mov ecx, r11d
call fcn.1400065a8
test eax, eax
js 0x14001b1fd
mov edx, dword [rbp + 0x350]
mov dword [rbp + 0x84], edx
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
call fcn.1400065a8
or eax, r9d
jl 0x14001b1fd
lea r8, [rbp + 0x350]
mov ecx, r11d
lea edx, [r11 + 4]
call fcn.1400065a8
test eax, eax
js 0x14001b1fd
mov edx, dword [rbp + 0x350]
mov dword [rbp + 0x84], edx
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
call fcn.1400065a8
or eax, r9d
jl 0x14001b1fd
mov eax, dword [rsp + 0x44]
mov dword [rbp - 0x3c], eax
mov esi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, esi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r9, rax
test rax, rax
je 0x14001931e
mov qword [rbp - 0x38], rax
mov dword [rbp - 0x40], r14d
mov r11d, 4
mov dword [rbp + 0x160], r11d
lea r8, [rbp + 0x38]
mov edx, r11d
mov rcx, rax
call fcn.1400065c4
test eax, eax
js 0x14001931e
mov ecx, dword [rbp - 0x3c]
lea rax, [r9 + 8]
add rcx, r9
cmp rax, rcx
ja 0x14001931e
mov rcx, qword [rbp + 0x38]
mov dword [r9], r11d
mov eax, dword [rbp + 0x160]
mov dword [rcx], eax
mov r9d, dword [rbp - 0x40]
inc r9d
mov dword [rbp - 0x40], r9d
test r12d, r12d
je 0x1400191a6
cmp qword [rbp - 0x38], r14
jne 0x1400190f3
lea r8, [rbp + 0x350]
mov edx, r12d
mov ecx, r11d
call fcn.1400065a8
test eax, eax
js 0x14001931e
mov edx, dword [rbp + 0x350]
mov dword [rbp + 0x168], edx
mov ecx, dword [rbp - 0x3c]
lea r8, [rbp - 0x3c]
call fcn.1400065a8
test eax, eax
js 0x14001931e
mov r9d, dword [rbp - 0x40]
inc r9d
mov dword [rbp - 0x40], r9d
jmp 0x1400191b3
mov r10, qword [rbp - 0x38]
mov r11d, r14d
mov qword [rbp - 0x30], r10
test r9d, r9d
je 0x14001914d
mov edx, dword [r10]
lea r8, [rbp + 0x350]
mov ecx, 4
call fcn.1400065a8
test eax, eax
js 0x14001931e
mov eax, dword [rbp + 0x350]
mov dword [rbp + 0x168], eax
mov edx, eax
lea r8, [rbp - 0x30]
mov rcx, r10
call fcn.1400065c4
test eax, eax
js 0x14001931e
mov r10, qword [rbp - 0x30]
inc r11d
cmp r11d, r9d
jb 0x140019103
lea r8, [rbp + 0x38]
mov edx, 4
mov rcx, r10
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001931e
mov edx, dword [rbp - 0x3c]
lea rcx, [r12 + 4]
add rdx, qword [rbp - 0x38]
add rcx, r10
mov r8, r12
cmp rcx, rdx
ja 0x14001931e
mov rdx, qword [rbp - 0x28]
mov rcx, qword [rbp + 0x38]
mov dword [r10], r12d
call sub.msvcrt.dll_memcpy
mov r9d, dword [rbp - 0x40]
mov r11d, 4
inc r9d
mov dword [rbp - 0x40], r9d
jmp 0x1400191ab
mov esi, 0xc000000d
test esi, esi
js 0x14001931e
test r13d, r13d
je 0x1400192b8
cmp qword [rbp - 0x38], r14
jne 0x14001920c
lea r8, [rbp + 0x350]
mov edx, r13d
mov ecx, r11d
call fcn.1400065a8
test eax, eax
js 0x14001931e
mov edx, dword [rbp + 0x350]
mov dword [rbp + 0x16c], edx
mov ecx, dword [rbp - 0x3c]
lea r8, [rbp - 0x3c]
call fcn.1400065a8
test eax, eax
js 0x14001931e
mov r9d, dword [rbp - 0x40]
inc r9d
mov dword [rbp - 0x40], r9d
jmp 0x1400192c7
mov r10, qword [rbp - 0x38]
mov r11d, r14d
mov qword [rbp - 0x30], r10
test r9d, r9d
je 0x140019266
mov edx, dword [r10]
lea r8, [rbp + 0x350]
mov ecx, 4
call fcn.1400065a8
test eax, eax
js 0x14001931e
mov eax, dword [rbp + 0x350]
mov dword [rbp + 0x16c], eax
mov edx, eax
lea r8, [rbp - 0x30]
mov rcx, r10
call fcn.1400065c4
test eax, eax
js 0x14001931e
mov r10, qword [rbp - 0x30]
inc r11d
cmp r11d, r9d
jb 0x14001921c
lea r8, [rbp - 0x20]
mov edx, 4
mov rcx, r10
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001931e
mov edx, dword [rbp - 0x3c]
add rdx, qword [rbp - 0x38]
mov r8d, r13d
lea rcx, [r8 + 4]
add rcx, r10
cmp rcx, rdx
ja 0x14001931e
mov rdx, qword [rbp]
mov rcx, qword [rbp - 0x20]
mov dword [r10], r13d
call sub.msvcrt.dll_memcpy
mov r9d, dword [rbp - 0x40]
inc r9d
mov dword [rbp - 0x40], r9d
jmp 0x1400192bd
mov esi, 0xc000000d
test esi, esi
js 0x14001931e
mov r11d, 4
mov rax, qword [rbp + 0x280]
mov qword [rbp + 0x288], rax
cmp qword [rbp - 0x38], r14
jne 0x14001932d
lea r8, [rbp + 0x350]
mov edx, 8
mov ecx, r11d
call fcn.1400065a8
test eax, eax
js 0x14001931e
mov edx, dword [rbp + 0x350]
mov dword [rbp + 0x170], edx
mov ecx, dword [rbp - 0x3c]
lea r8, [rbp - 0x3c]
call fcn.1400065a8
test eax, eax
js 0x14001931e
jmp 0x1400193c3
mov rax, qword [rax]
mov qword [rbp + 0x340], rax
mov r13, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x60]
jmp 0x14001b207
mov r10, qword [rbp - 0x38]
mov r11d, r14d
mov qword [rbp - 0x30], r10
test r9d, r9d
je 0x14001937f
mov edx, dword [r10]
lea r8, [rbp + 0x350]
mov ecx, 4
call fcn.1400065a8
test eax, eax
js 0x14001931e
mov eax, dword [rbp + 0x350]
mov dword [rbp + 0x170], eax
mov edx, eax
lea r8, [rbp - 0x30]
mov rcx, r10
call fcn.1400065c4
test eax, eax
js 0x14001931e
mov r10, qword [rbp - 0x30]
inc r11d
cmp r11d, r9d
jb 0x14001933d
mov r11d, 4
lea r8, [rbp - 0x20]
mov edx, r11d
mov rcx, r10
call fcn.1400065c4
test eax, eax
js 0x14001931e
mov ecx, dword [rbp - 0x3c]
lea rax, [r10 + 0xc]
add rcx, qword [rbp - 0x38]
cmp rax, rcx
ja 0x14001931e
mov rax, qword [rbp - 0x20]
mov dword [r10], 8
movsd xmm0, qword [rbp + 0x288]
movsd qword [rax], xmm0
inc dword [rbp - 0x40]
lea r8, [rbp + 0x350]
mov edx, r11d
mov ecx, r11d
call fcn.1400065a8
test eax, eax
js 0x14001931e
mov r9d, dword [rbp + 0x350]
mov dword [rbp + 0x174], r9d
lea r8, [rbp + 0x350]
mov dword [rsp + 0x48], r9d
mov edx, 8
call fcn.1400065a8
test eax, eax
js 0x14001931e
mov edx, dword [rbp + 0x350]
mov dword [rbp + 0x174], edx
lea r8, [rsp + 0x48]
mov ecx, r9d
call fcn.1400065a8
test eax, eax
js 0x14001931e
mov eax, dword [rsp + 0x48]
mov r10, r14
mov dword [rbp - 8], eax
mov r9d, r14d
mov dword [rsp + 0x48], r14d
mov r13, r14
mov qword [rbp - 0x48], r14
mov dword [rsp + 0x44], r14d
mov qword [rbp + 0xf0], r14
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x30], r14
mov dword [rbp - 0x10], r14d
mov qword [rbp - 0x30], r14
mov qword [rbp + 0x40], r14
mov dword [rbp + 0x90], r14d
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x180], rax
mov dword [rbp + 0x14], 8
mov edx, dword [rbp - 0x3c]
lea r8, [rbp + 0x14]
mov ecx, 8
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x14001958f
mov eax, dword [rbp + 0x14]
add rax, 7
and eax, 0xfffffff8
cmp eax, dword [rbp + 0x14]
jae 0x1400194b8
mov esi, 0xc0000095
jmp 0x14001958f
mov dword [rbp + 0x14], eax
mov esi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, esi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r12, rax
test rax, rax
jne 0x1400194ec
mov esi, 0xc0000017
mov r9d, r14d
mov r10, r14
jmp 0x14001958f
mov eax, dword [rbp - 0x40]
lea r8, [rsp + 0x78]
mov r11d, 4
mov qword [rsp + 0x78], r12
mov edx, r11d
mov dword [r12], eax
mov rcx, r12
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x140019567
mov rcx, qword [rsp + 0x78]
lea r8, [rsp + 0x78]
mov eax, dword [rbp - 0x3c]
mov edx, r11d
mov dword [rcx], eax
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x140019567
mov ecx, dword [rbp + 0x14]
mov rax, qword [rbp + 0x180]
mov qword [rcx + r12 - 8], rax
mov r8d, dword [rbp - 0x3c]
mov rdx, qword [rbp - 0x38]
mov rcx, qword [rsp + 0x78]
call sub.msvcrt.dll_memcpy
mov r9d, dword [rbp + 0x14]
mov r10, r12
mov qword [rbp - 0x48], r12
mov r12, r14
mov dword [rsp + 0x44], r9d
jmp 0x14001956d
mov r10, r14
mov r9d, r14d
test r12, r12
je 0x14001958f
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r9d, dword [rsp + 0x44]
mov r10, qword [rbp - 0x48]
or esi, 0x10000000
jl 0x14001a1fe
mov qword [rbp + 0x298], r14
mov qword [rbp + 0x2a0], r14
mov qword [rbp + 0x2a8], r14
mov qword [rbp + 0x2b0], r14
mov qword [rbp + 0x148], r14
mov qword [rbp + 0x290], r14
test r10, r10
jne 0x1400195d4
mov esi, 0xc000000d
jmp 0x140019d5f
mov r12d, r9d
mov qword [rbp], r12
test r9d, r9d
je 0x140019cb7
lea rax, [r12 + 8]
mov rcx, rax
mov qword [rsp + 0x78], rax
call fcn.1400034ac
mov qword [rbp - 0x18], rax
test rax, rax
je 0x140019cb7
mov r9, qword [rbp - 0x48]
mov dl, r14b
mov byte [rsp + 0x58], dl
mov rcx, r14
test r12, r12
je 0x140019626
xor dl, byte [rcx + r9]
inc rcx
cmp rcx, r12
jb 0x140019616
mov byte [rsp + 0x58], dl
mov r10, rax
mov qword [rbp + 0x348], rbx
or r11d, 0xffffffff
mov dword [rbp - 0x54], r14d
mov rax, r12
mov dword [rbp - 0x64], r11d
mov dword [rsp + 0x44], r14d
mov esi, r14d
mov dword [rsp + 0x70], r14d
and eax, 7
je 0x140019743
mov dword [rsp + 0x70], r14d
mov ecx, r14d
mov dword [rsp + 0x44], ecx
mov r8d, r14d
test eax, eax
je 0x1400196ba
mov r11d, 0x38
mov edi, ecx
movzx r8d, byte [r9]
inc r9
cmp esi, 4
jge 0x14001968c
lea ecx, [r11 - 0x20]
shl r8d, cl
mov ecx, dword [rsp + 0x44]
or edi, r8d
jmp 0x14001969d
mov ecx, r11d
shl r8d, cl
mov ecx, dword [rsp + 0x44]
or ecx, r8d
mov dword [rsp + 0x44], ecx
inc esi
sub r11d, 8
cmp esi, eax
jl 0x140019670
mov dword [rsp + 0x70], edi
movabs rdi, 0x7f1137fab69605e
mov r8d, dword [rsp + 0x70]
mov r11d, ecx
mov esi, r8d
xor esi, 0xb17a307a
xor r11d, 0x42f6b18d
mov dword [rbp - 0x54], esi
mov ecx, r14d
mov dword [rbp - 0x64], r11d
test eax, eax
je 0x14001970e
lea r8, [r10 + 1]
mov qword [rbp - 0x28], r8
cmp ecx, 4
jge 0x1400196f0
rol esi, 8
mov r8d, esi
jmp 0x1400196f7
rol r11d, 8
mov r8d, r11d
mov byte [r10], r8b
inc ecx
mov r8, qword [rbp - 0x28]
mov r10, r8
cmp ecx, eax
jl 0x1400196db
mov esi, dword [rbp - 0x54]
mov r11d, dword [rbp - 0x64]
cmp eax, 4
jbe 0x140019729
mov ecx, 8
sub ecx, eax
shl ecx, 3
shr r11d, cl
shl r11d, cl
mov dword [rbp - 0x64], r11d
jmp 0x140019743
mov r11d, r14d
mov dword [rbp - 0x64], r14d
jae 0x140019743
mov ecx, 4
sub ecx, eax
shl ecx, 3
shr esi, cl
shl esi, cl
mov dword [rbp - 0x54], esi
mov rax, r12
shr rax, 3
mov qword [rbp - 0x28], rax
test rax, rax
je 0x140019ab4
movzx eax, word [rbp + 0x34a]
lea rdx, [r10 + 7]
mov rdi, qword [rbp - 0x28]
lea rcx, [r9 + 2]
mov r13d, dword [rsp + 0x44]
mov r12d, dword [rsp + 0x70]
movzx r14d, word [rbp + 0x34c]
mov dword [rbp + 0x350], eax
movzx r15d, bx
movzx eax, byte [rcx - 1]
movzx r10d, byte [rcx - 2]
movzx r9d, byte [rcx + 2]
shl r10d, 8
or r10d, eax
shl r9d, 8
movzx eax, byte [rcx]
shl r10d, 8
or r10d, eax
movzx eax, byte [rcx + 1]
shl r10d, 8
or r10d, eax
movzx eax, byte [rcx + 3]
or r9d, eax
movzx eax, byte [rcx + 4]
shl r9d, 8
or r9d, eax
movzx eax, byte [rcx + 5]
add rcx, 8
shl r9d, 8
or r9d, eax
mov qword [rbp - 0x28], rcx
movzx eax, word [rbp + 0x34a]
xor r11d, r9d
mov r8d, r11d
sub r8d, r15d
xor r8d, r10d
xor r8d, esi
mov esi, dword [rbp + 0x34c]
xor r8d, esi
mov ecx, r8d
xor ecx, esi
ror ecx, 0xf
imul ecx, eax
mov eax, r8d
ror eax, 7
add ecx, eax
xor r11d, ecx
mov eax, r11d
ror eax, 0xa
lea ecx, [rbx + r11]
ror ecx, 9
imul ecx, r14d
sub ecx, eax
movzx eax, word [rbp + 0x34e]
xor r8d, ecx
mov ecx, r14d
xor ecx, r8d
rol ecx, 4
imul ecx, eax
mov eax, r8d
rol eax, 5
add ecx, eax
mov eax, esi
xor r11d, ecx
mov ecx, ebx
xor ecx, r11d
sub eax, ecx
xor r8d, eax
movzx eax, word [rbp + 0x34a]
mov ecx, r8d
sub ecx, r15d
imul ecx, eax
mov eax, r8d
shr eax, 6
sub ecx, eax
xor r11d, ecx
movzx ecx, word [rbp + 0x34e]
mov eax, r11d
ror eax, 0xf
xor eax, r14d
imul eax, r15d
xor r8d, eax
mov eax, r8d
not eax
ror eax, 3
add eax, ecx
imul eax, r14d
xor r11d, eax
mov eax, r11d
sub eax, r15d
sub eax, esi
xor r8d, eax
movzx eax, word [rbp + 0x34e]
xor eax, r8d
mov ecx, r8d
imul eax, dword [rbp + 0x350]
ror ecx, 0xa
xor ecx, eax
xor r11d, ecx
mov ecx, r15d
xor ecx, r11d
mov eax, r11d
rol ecx, 6
imul ecx, r14d
ror eax, 3
xor ecx, eax
xor r8d, ecx
movzx ecx, word [rbp + 0x34e]
mov eax, r8d
ror eax, 0xf
sub eax, ecx
imul eax, r15d
xor r11d, eax
xor ecx, r11d
mov eax, r11d
imul ecx, r15d
shr eax, 1
xor ecx, eax
mov eax, r11d
xor r8d, ecx
shr eax, 0xf
mov ecx, r11d
sub ecx, r14d
rol ecx, 3
imul ecx, r15d
xor ecx, eax
movzx eax, word [rbp + 0x34a]
xor r8d, ecx
mov ecx, r8d
sub ecx, r14d
imul ecx, eax
mov eax, r8d
shr eax, 0xd
sub ecx, eax
xor r11d, ecx
mov ecx, ebx
sub ecx, r11d
mov eax, r11d
ror ecx, 9
imul ecx, r14d
ror eax, 0xb
xor ecx, eax
xor r8d, ecx
movzx ecx, word [rbp + 0x34e]
mov eax, r8d
sub eax, ecx
sub eax, ebx
xor r11d, eax
movzx eax, word [rbp + 0x34a]
xor eax, r11d
mov ecx, r11d
ror ecx, 7
imul eax, r15d
sub eax, ecx
movzx ecx, word [rbp + 0x34e]
xor r8d, eax
movzx eax, word [rbp + 0x34a]
xor ecx, r8d
rol ecx, 4
imul ecx, eax
mov eax, r8d
ror eax, 0x10
sub ecx, eax
xor r11d, ecx
mov ecx, ebx
sub ecx, r11d
mov eax, r11d
ror ecx, 0xa
imul ecx, r14d
ror eax, 4
add ecx, eax
movzx eax, word [rbp + 0x34e]
xor r8d, ecx
mov ecx, r8d
sub ecx, ebx
ror ecx, 4
imul ecx, eax
mov eax, r8d
ror eax, 9
xor ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
rol eax, 2
xor ecx, esi
rol ecx, 8
imul ecx, r15d
sub ecx, eax
movzx eax, word [rbp + 0x34a]
xor r8d, ecx
mov ecx, esi
sub ecx, r8d
ror ecx, 0xb
imul ecx, eax
mov eax, r8d
ror eax, 0xc
sub ecx, eax
xor r11d, ecx
movzx ecx, word [rbp + 0x34a]
xor ecx, r11d
mov eax, r11d
shr eax, 8
imul ecx, r14d
xor ecx, eax
mov eax, ebx
xor eax, r11d
xor r8d, ecx
mov rcx, qword [rbp - 0x28]
xor eax, r8d
xor eax, esi
xor r8d, r12d
xor eax, r13d
mov dword [rbp - 0x54], r8d
mov dword [rbp - 0x64], eax
mov r12d, r10d
mov byte [rdx - 4], r8b
mov r13d, r9d
mov al, byte [rbp - 0x64]
ror dword [rbp - 0x54], 8
mov byte [rdx], al
ror dword [rbp - 0x64], 8
mov al, byte [rbp - 0x54]
mov byte [rdx - 5], al
mov al, byte [rbp - 0x64]
ror dword [rbp - 0x54], 8
mov byte [rdx - 1], al
ror dword [rbp - 0x64], 8
mov al, byte [rbp - 0x54]
mov byte [rdx - 6], al
ror dword [rbp - 0x54], 8
mov al, byte [rbp - 0x64]
mov byte [rdx - 2], al
ror dword [rbp - 0x64], 8
mov al, byte [rbp - 0x54]
mov byte [rdx - 7], al
mov al, byte [rbp - 0x64]
mov byte [rdx - 3], al
add rdx, 8
mov esi, dword [rbp - 0x54]
mov r11d, dword [rbp - 0x64]
ror esi, 8
ror r11d, 8
mov dword [rbp - 0x54], esi
mov dword [rbp - 0x64], r11d
sub rdi, 1
jne 0x140019786
mov dl, byte [rsp + 0x58]
xor r14d, r14d
mov r15d, dword [rsp + 0x40]
mov r13d, r14d
mov r12, qword [rbp]
movabs rdi, 0x7f1137fab69605e
mov rsi, qword [rbp - 0x18]
movzx eax, dl
mov qword [rsi + r12], rax
mov r12, qword [rsp + 0x78]
mov qword [rbp + 0x290], r12
mov qword [rbp + 0x148], rsi
lea rax, [0x1400a5840]
mov qword [rbp + 0x2a0], 8
mov qword [rbp + 0x298], rax
lea rax, [0x1400a57a0]
mov qword [rbp + 0x2b0], 0xa0
mov qword [rbp + 0x2a8], rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 0x28]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
test rax, rax
jne 0x140019b2e
mov esi, 0xc0000017
jmp 0x140019ca7
mov dword [rax], r12d
mov r12d, r12d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, r12d
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140019c26
mov qword [rbx + 8], rax
mov r8d, r12d
mov rdx, rsi
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov esi, 0xa0
mov dword [rbx + 0x10], esi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, esi
mov esi, 8
mov edx, esi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140019c26
mov qword [rbx + 0x18], rax
lea rcx, [0x1400a57a0]
movups xmm0, xmmword [rcx]
lea edx, [rsi + 0x78]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rax + 0x30], xmm1
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [rax + 0x40], xmm0
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [rax + 0x50], xmm1
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [rax + 0x60], xmm0
movups xmm1, xmmword [rcx + 0x70]
movups xmmword [rax + rdx - 0x10], xmm1
movups xmm0, xmmword [rcx + rdx]
movups xmmword [rax + rdx], xmm0
movups xmm1, xmmword [rcx + rdx + 0x10]
movups xmmword [rax + rdx + 0x10], xmm1
mov dword [rbx + 0x20], esi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, esi
mov edx, esi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140019c26
mov qword [rbx + 0x28], rax
movsd xmm0, qword [0x1400a5840]
mov r13, rbx
movsd qword [rax], xmm0
mov esi, r14d
mov rbx, r14
jmp 0x140019c2b
mov esi, 0xc0000017
test rbx, rbx
je 0x140019ca7
mov r12, qword [rbx + 8]
test r12, r12
je 0x140019c51
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 8], r14
mov r12, qword [rbx + 0x18]
test r12, r12
je 0x140019c72
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 0x18], r14
mov r12, qword [rbx + 0x28]
test r12, r12
je 0x140019c93
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test esi, esi
js 0x140019cbc
mov qword [rbp + 0xf0], r13
mov r13, r14
jmp 0x140019cbc
mov esi, 0xc0000001
mov rbx, qword [rbp + 0x148]
test rbx, rbx
je 0x140019ce3
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0x148], r14
test r13, r13
je 0x140019d5f
mov rbx, qword [r13 + 8]
test rbx, rbx
je 0x140019d09
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 8], r14
mov rbx, qword [r13 + 0x18]
test rbx, rbx
je 0x140019d2a
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x18], r14
mov rbx, qword [r13 + 0x28]
test rbx, rbx
je 0x140019d4b
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
or esi, 0x10000000
jl 0x14001a1fb
mov r12, qword [rbp + 0xf0]
lea r8, [rsp + 0x44]
mov r13d, 4
mov ecx, r13d
mov dword [rsp + 0x44], r13d
mov edx, dword [r12]
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x140019e05
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r13d
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x140019e05
mov edx, dword [r12 + 0x10]
lea r8, [rsp + 0x44]
mov ecx, dword [rsp + 0x44]
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x140019e05
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r13d
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x140019e05
mov edx, dword [r12 + 0x20]
lea r8, [rsp + 0x44]
mov ecx, dword [rsp + 0x44]
call fcn.1400065a8
mov esi, eax
mov eax, dword [rbp + 0x88]
test esi, esi
cmovns eax, dword [rsp + 0x44]
mov dword [rbp + 0x88], eax
jmp 0x140019e0b
mov eax, dword [rbp + 0x88]
test esi, esi
js 0x140019f79
mov ebx, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, ebx
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
test rax, rax
jne 0x140019e3e
mov esi, 0xc0000017
jmp 0x140019f79
mov eax, dword [r12]
lea r8, [rbp + 0x348]
mov rdx, r13
mov dword [rbx], eax
mov rcx, rbx
mov qword [rbp + 0x348], rbx
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x140019f60
mov r8d, dword [r12]
mov rdx, qword [r12 + 8]
mov rcx, qword [rbp + 0x348]
call sub.msvcrt.dll_memcpy
mov edx, dword [r12]
lea r8, [rbp + 0x348]
mov rcx, qword [rbp + 0x348]
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x140019f60
mov rcx, qword [rbp + 0x348]
lea r8, [rbp + 0x348]
mov eax, dword [r12 + 0x10]
mov rdx, r13
mov dword [rcx], eax
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x140019f60
mov r8d, dword [r12 + 0x10]
mov rdx, qword [r12 + 0x18]
mov rcx, qword [rbp + 0x348]
call sub.msvcrt.dll_memcpy
mov edx, dword [r12 + 0x10]
lea r8, [rbp + 0x348]
mov rcx, qword [rbp + 0x348]
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x140019f60
mov rcx, qword [rbp + 0x348]
lea r8, [rbp + 0x348]
mov eax, dword [r12 + 0x20]
mov rdx, r13
mov dword [rcx], eax
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x140019f60
mov r8d, dword [r12 + 0x20]
mov rdx, qword [r12 + 0x28]
mov rcx, qword [rbp + 0x348]
call sub.msvcrt.dll_memcpy
mov edx, dword [r12 + 0x20]
lea r8, [rbp + 0x348]
mov rcx, qword [rbp + 0x348]
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x140019f60
mov eax, dword [rbp + 0x88]
mov qword [rbp + 0x60], rbx
mov rbx, r14
mov dword [rsp + 0x48], eax
test rbx, rbx
je 0x140019f79
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
or esi, 0x10000000
jl 0x14001a1fb
mov ebx, r14d
mov qword [rbp + 0x2b8], r14
mov dword [rbp + 0xfc], ebx
mov r10d, r14d
mov dword [rbp + 0xf8], r14d
mov qword [rbp + 0x2c0], r14
mov dword [rbp + 0x8c], 8
mov edx, dword [rbp - 8]
lea r8, [rbp + 0x8c]
mov ecx, 8
call fcn.1400065a8
mov esi, eax
or esi, 0x10000000
jl 0x14001a461
mov eax, dword [rbp + 0x8c]
add rax, 7
and eax, 0xfffffff8
cmp eax, dword [rbp + 0x8c]
jae 0x140019ff5
mov r9d, dword [rbp + 0xe0]
mov esi, 0xc0000095
jmp 0x14001a025
mov dword [rbp + 0xdc], eax
mov edx, ecx
lea r8, [rbp + 0xdc]
mov ecx, eax
call fcn.1400065a8
mov r9d, dword [rbp + 0xe0]
test eax, eax
mov esi, eax
cmovns r9d, dword [rbp + 0xdc]
mov dword [rbp + 0xe0], r9d
test esi, esi
js 0x14001a1fb
cmp qword [rbp - 0x38], r14
je 0x14001a1d7
cmp dword [rbp - 0x40], 1
jbe 0x14001a1d7
mov rcx, qword [rbp - 0x38]
mov r11d, r14d
mov qword [rsp + 0x68], rcx
mov r12d, dword [rcx]
lea r8, [rsp + 0x68]
mov rdx, r13
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001a0bc
mov rcx, qword [rsp + 0x68]
lea r8, [rsp + 0x68]
mov edx, r12d
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001a0bc
mov rcx, qword [rsp + 0x68]
inc r11d
cmp r11d, 1
jb 0x14001a04d
mov r11d, dword [rcx]
lea r8, [rsp + 0x68]
mov rdx, r13
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001a0bc
mov rax, qword [rsp + 0x68]
test r11d, r11d
mov r10d, r11d
mov dword [rbp + 0xf8], r11d
cmove rax, r14
mov qword [rbp + 0x2b8], rax
test esi, esi
js 0x14001a1fb
cmp dword [rbp - 0x40], 2
jbe 0x14001a1d7
mov rcx, qword [rbp - 0x38]
mov r11d, r14d
mov qword [rsp + 0x68], rcx
mov r12d, dword [rcx]
lea r8, [rsp + 0x68]
mov rdx, r13
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001a148
mov rcx, qword [rsp + 0x68]
lea r8, [rsp + 0x68]
mov edx, r12d
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001a148
mov rcx, qword [rsp + 0x68]
inc r11d
cmp r11d, 2
jb 0x14001a0da
mov r11d, dword [rcx]
lea r8, [rsp + 0x68]
mov rdx, r13
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001a148
mov rax, qword [rsp + 0x68]
test r11d, r11d
mov ebx, r11d
cmove rax, r14
mov dword [rbp + 0xfc], ebx
mov qword [rbp + 0x2c0], rax
test esi, esi
js 0x14001a1fb
lea r8, [rsp + 0x44]
mov dword [rsp + 0x44], r13d
mov edx, r9d
mov ecx, r13d
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x14001a1e1
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r13d
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x14001a1e1
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r10d
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x14001a1e1
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r13d
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x14001a1e1
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, ebx
call fcn.1400065a8
mov esi, eax
mov eax, dword [rbp + 0xe4]
test esi, esi
cmovns eax, dword [rsp + 0x44]
mov dword [rbp + 0xe4], eax
jmp 0x14001a1e7
mov esi, 0xc000000d
jmp 0x14001a461
mov eax, dword [rbp + 0xe4]
test esi, esi
js 0x14001a1fb
cmp eax, 0x400000
jbe 0x14001a45e
mov esi, 0x8000ffff
mov r13, r14
mov rbx, qword [rbp - 0x48]
test rbx, rbx
je 0x14001a21b
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r12, qword [rbp + 0xf0]
test r12, r12
je 0x14001a2af
mov rbx, qword [r12 + 8]
test rbx, rbx
je 0x14001a24e
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r12 + 8], r14
mov rbx, qword [r12 + 0x18]
test rbx, rbx
je 0x14001a271
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r12 + 0x18], r14
mov rbx, qword [r12 + 0x28]
test rbx, rbx
je 0x14001a294
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r12 + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0xf0], r14
mov rbx, qword [rbp + 0x60]
test rbx, rbx
je 0x14001a2cc
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [rbp + 0x30]
test rbx, rbx
je 0x14001a2e9
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r13, r13
je 0x14001a365
mov rbx, qword [r13 + 8]
test rbx, rbx
je 0x14001a30f
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 8], r14
mov rbx, qword [r13 + 0x18]
test rbx, rbx
je 0x14001a330
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x18], r14
mov rbx, qword [r13 + 0x28]
test rbx, rbx
je 0x14001a351
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [rbp + 0x40]
test rbx, rbx
je 0x14001a382
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test esi, esi
js 0x14001931e
mov r9d, dword [rbp + 0xb8]
cmp r9d, 1
jb 0x14001931e
mov rbx, qword [rbp + 0xc0]
test rbx, rbx
je 0x14001931e
test r9d, r9d
je 0x14001931e
mov r10d, dword [rbx]
lea r8, [rbp + 0x30]
mov r11d, 4
mov qword [rbp + 0x30], rbx
mov edx, r11d
mov rcx, rbx
call fcn.1400065c4
test eax, eax
js 0x14001931e
mov rax, qword [rbp + 0x30]
test r10d, r10d
mov dword [rbp + 0x2ec], r10d
cmove rax, r14
mov qword [rbp + 0x330], rax
cmp r10d, r11d
jne 0x14001931e
mov eax, dword [rax]
mov dword [rbp + 0x5c], eax
test eax, eax
js 0x14001931e
cmp r9d, 1
jbe 0x14001931e
mov qword [rsp + 0x68], rbx
mov r9d, r14d
lea r8, [rsp + 0x68]
mov rdx, r11
mov rcx, rbx
call fcn.1400065c4
test eax, eax
js 0x14001931e
mov edx, dword [rbx]
lea r8, [rsp + 0x68]
mov rcx, qword [rsp + 0x68]
call fcn.1400065c4
test eax, eax
js 0x14001931e
inc r9d
cmp r9d, 1
jae 0x14001b1b7
mov rbx, qword [rsp + 0x68]
jmp 0x14001a419
mov dword [rbp - 0x10], eax
test esi, esi
js 0x14001a1fb
mov ebx, dword [rbp - 0x10]
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8d, ebx
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x14001a492
mov esi, 0xd0000017
mov rbx, r14
jmp 0x14001a49e
mov rbx, rax
mov qword [rbp + 0x30], rax
mov esi, 0x10000000
test esi, esi
js 0x14001a1fb
mov rax, qword [rbp + 0x60]
test rax, rax
je 0x14001a54c
test rbx, rbx
je 0x14001a54c
mov qword [rbp + 0x310], rax
lea r8, [rbp + 0x2c8]
mov eax, dword [rsp + 0x48]
lea rdx, [0x140089aa0]
mov dword [rbp + 0x320], eax
mov ecx, 1
mov eax, dword [rbp - 0x10]
mov dword [rbp + 0x324], eax
mov qword [rbp + 0x318], rbx
mov dword [rbp + 0x328], r14d
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
je 0x14001a556
mov rcx, qword [rbp + 0x2c8]
lea rdx, [0x14008ba90]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14001a556
xor r9d, r9d
lea rdx, [rbp + 0x310]
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call qword [0x140088740]
mov r9d, dword [rbp - 0x10]
mov esi, eax
or esi, 0x10000000
cmovge r9d, dword [rbp + 0x324]
mov dword [rbp - 0x10], r9d
jmp 0x14001a578
mov esi, 0x80070057
jmp 0x14001a1fb
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov esi, eax
test eax, eax
jle 0x14001a56b
movzx esi, ax
or esi, 0x80070000
test esi, esi
js 0x14001a574
mov esi, 0x80004005
mov r9d, dword [rbp - 0x10]
cmp esi, 0xd0000023
jne 0x14001a58a
mov esi, 0x8007007a
jmp 0x14001a1fb
test esi, esi
js 0x14001a1fb
mov qword [rsp + 0x78], r14
mov dword [rsp + 0x44], r14d
mov qword [rbp + 0x348], rbx
cmp r9d, r13d
jb 0x14001a79a
mov r10d, dword [rbx]
lea r8, [rbp + 0x348]
mov rdx, r13
mov dword [rbp + 0x350], r10d
mov rcx, rbx
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001a79f
lea r8, [rsp + 0x44]
mov edx, r13d
xor ecx, ecx
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x14001a79f
mov eax, r9d
sub eax, dword [rsp + 0x44]
cmp eax, r10d
jb 0x14001a79a
mov rax, qword [rbp + 0x348]
lea r8, [rbp + 0x348]
mov rcx, rax
mov qword [rbp - 0x28], rax
mov edx, r10d
mov qword [rbp - 0x18], r10
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001a79f
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r10d
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x14001a79f
mov eax, r9d
sub eax, dword [rsp + 0x44]
cmp eax, r13d
jb 0x14001a79a
mov rcx, qword [rbp + 0x348]
lea r8, [rbp + 0x348]
mov rdx, r13
mov r12d, dword [rcx]
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001a79f
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r13d
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x14001a79f
mov eax, r9d
sub eax, dword [rsp + 0x44]
cmp eax, r12d
jb 0x14001a79a
mov rax, qword [rbp + 0x348]
lea r8, [rbp + 0x348]
mov rcx, rax
mov qword [rbp], rax
mov edx, r12d
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001a79f
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r12d
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x14001a79f
mov eax, r9d
sub eax, dword [rsp + 0x44]
cmp eax, r13d
jb 0x14001a79a
mov rcx, qword [rbp + 0x348]
lea r8, [rbp + 0x348]
mov r11d, 4
mov edx, r11d
mov r13d, dword [rcx]
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001a79f
mov ecx, dword [rsp + 0x44]
lea r8, [rsp + 0x44]
mov edx, r11d
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x14001a79f
mov ecx, dword [rsp + 0x44]
mov eax, r9d
sub eax, ecx
cmp eax, r13d
jb 0x14001a79a
lea r8, [rsp + 0x44]
mov edx, r13d
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x14001a79f
cmp r9d, dword [rsp + 0x44]
jne 0x14001a79a
lea ecx, [r12 + r10]
mov eax, r9d
add ecx, r13d
add rcx, 0xc
cmp rcx, rax
jne 0x14001a79a
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 0x28]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
test rax, rax
jne 0x14001a87c
mov esi, 0xc0000017
jmp 0x14001a9e5
mov esi, 0xc000003e
mov r13, r14
or esi, 0x10000000
jl 0x14001a1fe
mov qword [rbp + 0x188], r14
mov rbx, r14
mov qword [rbp + 0x98], rbx
test r13, r13
je 0x14001aa86
mov rax, qword [r13 + 8]
mov qword [rbp - 0x18], rax
test rax, rax
je 0x14001aa86
cmp dword [r13], r14d
je 0x14001aa86
mov esi, dword [r13]
mov dword [rbp - 8], r14d
test rsi, rsi
je 0x14001af3e
add rsi, 0xfffffffffffffff8
mov rcx, rsi
mov qword [rbp], rsi
call fcn.1400034ac
mov qword [rsp + 0x78], rax
mov r12, rax
test rax, rax
je 0x14001af37
mov r9, qword [rbp - 0x18]
mov r8, rsi
mov qword [rbp + 0x348], rdi
mov dl, r14b
mov byte [rsp + 0x58], dl
mov r10, rax
mov dword [rbp - 0x5c], r14d
mov r11d, r14d
and r8d, 7
je 0x14001ab43
or ecx, 0xffffffff
mov dword [rsp + 0x70], ebx
mov dword [rbp - 0x6c], ecx
mov ecx, r14d
mov dword [rbp - 0x50], ecx
test r8d, r8d
je 0x14001aab9
mov edi, 0x38
movzx eax, byte [r9]
inc r9
cmp r11d, 4
jge 0x14001aa90
lea ecx, [rdi - 0x20]
shl eax, cl
mov ecx, dword [rbp - 0x50]
or ebx, eax
jmp 0x14001aa9c
mov rsi, qword [rbp - 0x28]
test rsi, rsi
je 0x14001a8c9
mov eax, dword [rbp + 0x350]
mov dword [rbx], eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, qword [rbp - 0x18]
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x14001a8bf
mov qword [rbx + 8], rax
mov r8, qword [rbp - 0x18]
mov rdx, rsi
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x14001a8d0
mov esi, 0xc0000017
jmp 0x14001a969
mov dword [rax], r14d
mov qword [rax + 8], r14
mov rsi, qword [rbp]
test rsi, rsi
je 0x14001a90d
mov dword [rbx + 0x10], r12d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x14001a8bf
mov qword [rbx + 0x18], rax
mov r8, r12
mov rdx, rsi
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x14001a915
mov dword [rbx + 0x10], r14d
mov qword [rbx + 0x18], r14
cmp qword [rbp + 0x348], r14
je 0x14001a956
mov dword [rbx + 0x20], r13d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r13
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x14001a8bf
mov qword [rbx + 0x28], rax
mov rdx, qword [rbp + 0x348]
mov r8, r13
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x14001a95e
mov dword [rbx + 0x20], r14d
mov qword [rbx + 0x28], r14
mov qword [rsp + 0x78], rbx
mov esi, r14d
mov rbx, r14
test rbx, rbx
je 0x14001a9e5
mov r12, qword [rbx + 8]
test r12, r12
je 0x14001a98f
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 8], r14
mov r12, qword [rbx + 0x18]
test r12, r12
je 0x14001a9b0
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 0x18], r14
mov r12, qword [rbx + 0x28]
test r12, r12
je 0x14001a9d1
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r13, qword [rsp + 0x78]
test esi, esi
mov rbx, r14
cmovs rbx, qword [rsp + 0x78]
cmovs r13, r14
mov qword [rbp - 0x30], r13
test rbx, rbx
je 0x14001a7a2
mov r12, qword [rbx + 8]
test r12, r12
je 0x14001aa27
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 8], r14
mov r12, qword [rbx + 0x18]
test r12, r12
je 0x14001aa48
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 0x18], r14
mov r12, qword [rbx + 0x28]
test r12, r12
je 0x14001aa69
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp - 0x30], r13
jmp 0x14001a7a2
mov esi, 0xd000000d
jmp 0x14001a1fe
mov ecx, edi
shl eax, cl
mov ecx, dword [rbp - 0x50]
or ecx, eax
mov dword [rbp - 0x50], ecx
inc r11d
sub edi, 8
cmp r11d, r8d
jl 0x14001a85c
mov dword [rsp + 0x70], ebx
movabs rdi, 0x7f1137fab69605e
mov r11d, ebx
mov eax, r14d
xor r11d, 0x92f65a5
mov ebx, ecx
xor ebx, 0x699a899c
mov dword [rbp - 0x5c], r11d
mov dword [rbp - 0x6c], ebx
test r8d, r8d
je 0x14001ab0d
lea rcx, [r10 + 1]
mov qword [rbp - 0x28], rcx
cmp eax, 4
jge 0x14001aaf0
rol r11d, 8
mov ecx, r11d
jmp 0x14001aaf5
rol ebx, 8
mov ecx, ebx
mov byte [r10], cl
inc eax
mov rcx, qword [rbp - 0x28]
mov r10, rcx
cmp eax, r8d
jl 0x14001aada
mov r11d, dword [rbp - 0x5c]
mov ebx, dword [rbp - 0x6c]
cmp r8d, 4
jbe 0x14001ab24
mov ecx, 8
sub ecx, r8d
shl ecx, 3
shr ebx, cl
shl ebx, cl
jmp 0x14001ab48
mov ebx, r14d
mov dword [rbp - 0x6c], ebx
jae 0x14001ab4b
mov ecx, 4
sub ecx, r8d
shl ecx, 3
shr r11d, cl
shl r11d, cl
mov dword [rbp - 0x5c], r11d
jmp 0x14001ab4b
mov dword [rsp + 0x70], r14d
mov dword [rbp - 0x6c], ebx
mov rax, rsi
shr rax, 3
mov qword [rbp - 0x28], rax
test rax, rax
je 0x14001aeb6
mov esi, dword [rbp + 0x34c]
lea r13, [r10 + 7]
mov edx, dword [rsp + 0x70]
lea r15, [r9 + 2]
mov r12, qword [rbp - 0x28]
mov r14d, edi
movzx eax, si
xor r14d, esi
mov dword [rbp + 0x350], eax
movzx eax, word [rbp + 0x34a]
mov dword [rsp + 0x48], eax
movzx eax, di
mov dword [rsp + 0x44], eax
movzx eax, byte [r15 - 1]
mov r8d, r14d
movzx r10d, byte [r15 - 2]
movzx r9d, byte [r15 + 2]
shl r10d, 8
or r10d, eax
shl r9d, 8
movzx eax, byte [r15]
lea r15, [r15 + 8]
shl r10d, 8
or r10d, eax
movzx eax, byte [r15 - 7]
shl r10d, 8
or r10d, eax
movzx eax, byte [r15 - 5]
or r9d, eax
xor r11d, r10d
movzx eax, byte [r15 - 4]
shl r9d, 8
or r9d, eax
movzx eax, byte [r15 - 3]
shl r9d, 8
or r9d, eax
xor ebx, r9d
xor r8d, ebx
mov ebx, dword [rbp + 0x350]
xor r8d, r11d
mov ecx, r8d
mov eax, r8d
sub ecx, edi
rol eax, 0xa
rol ecx, 5
imul ecx, ebx
add ecx, eax
movzx eax, word [rbp + 0x34a]
xor r11d, ecx
lea ecx, [rsi + r11]
ror ecx, 9
imul ecx, eax
mov eax, r11d
rol eax, 2
sub ecx, eax
xor r8d, ecx
mov ecx, r8d
mov eax, r8d
sub ecx, ebx
shr eax, 0xd
imul ecx, dword [rsp + 0x44]
sub ecx, eax
movzx eax, word [rbp + 0x34e]
xor r11d, ecx
movzx ecx, word [rbp + 0x34a]
xor ecx, r11d
rol ecx, 6
imul ecx, eax
mov eax, r11d
rol eax, 2
sub ecx, eax
mov eax, esi
xor r8d, ecx
mov ecx, r8d
xor ecx, edi
sub eax, ecx
xor r11d, eax
mov eax, ebx
xor eax, r11d
mov ecx, r11d
imul eax, dword [rsp + 0x48]
ror ecx, 6
xor ecx, eax
xor r8d, ecx
mov eax, r8d
rol eax, 2
lea ecx, [rsi + r8]
ror ecx, 0xf
imul ecx, dword [rsp + 0x44]
add ecx, eax
xor r11d, ecx
mov ecx, r11d
sub ecx, edi
ror ecx, 0xe
movzx eax, word [rbp + 0x34e]
imul ecx, eax
mov eax, r11d
rol eax, 8
sub ecx, eax
xor r8d, ecx
mov ecx, edi
xor ecx, r8d
mov eax, r8d
ror eax, 0xa
ror ecx, 0xc
imul ecx, ebx
xor ecx, eax
movzx eax, word [rbp + 0x34a]
xor r11d, ecx
movzx ecx, word [rbp + 0x34e]
xor ecx, r11d
imul ecx, eax
mov eax, r11d
shr eax, 0xa
xor ecx, eax
xor r8d, ecx
movzx ecx, word [rbp + 0x34e]
mov eax, r8d
not eax
ror eax, 5
add eax, dword [rsp + 0x44]
imul eax, ecx
xor r11d, eax
mov eax, r11d
sub eax, ecx
xor eax, edi
xor r8d, eax
xor ecx, r8d
mov eax, r8d
rol ecx, 2
imul ecx, ebx
shr eax, 2
add ecx, eax
movzx eax, word [rbp + 0x34a]
xor r11d, ecx
mov ecx, r11d
sub ecx, esi
ror ecx, 6
imul ecx, eax
mov eax, r11d
rol eax, 7
add ecx, eax
mov eax, ebx
xor r8d, ecx
xor eax, r8d
mov ecx, r8d
imul eax, dword [rsp + 0x44]
ror ecx, 9
add ecx, eax
movzx eax, word [rbp + 0x34e]
xor r11d, ecx
movzx ecx, word [rbp + 0x34a]
xor ecx, r11d
rol ecx, 5
imul ecx, eax
mov eax, r11d
rol eax, 7
add ecx, eax
mov eax, r14d
xor r8d, ecx
movzx ecx, word [rbp + 0x34a]
xor eax, r8d
xor r11d, eax
mov eax, r11d
ror eax, 3
sub eax, ecx
imul eax, ebx
xor r8d, eax
mov ecx, r8d
mov eax, r8d
sub ecx, esi
ror eax, 6
ror ecx, 1
imul ecx, dword [rsp + 0x44]
sub ecx, eax
movzx eax, word [rbp + 0x34e]
xor r11d, ecx
lea ecx, [rdi + r11]
rol ecx, 3
imul ecx, eax
mov eax, r11d
rol eax, 0xe
add ecx, eax
xor r8d, ecx
mov eax, r8d
ror eax, 0xe
lea ecx, [rdi + r8]
rol ecx, 0xf
imul ecx, ebx
sub ecx, eax
movzx eax, word [rbp + 0x34a]
xor r11d, ecx
mov ecx, dword [rsp + 0x44]
xor ecx, r11d
imul ecx, eax
mov eax, r11d
shr eax, 3
xor ecx, eax
xor r8d, ecx
mov ecx, esi
xor ecx, r8d
mov eax, r8d
xor r8d, dword [rbp - 0x50]
mov dword [rbp - 0x6c], r8d
rol eax, 2
rol ecx, 4
imul ecx, dword [rsp + 0x44]
mov dword [rbp - 0x50], r9d
xor ecx, eax
xor ecx, edx
mov edx, r10d
xor r11d, ecx
mov dword [rbp - 0x5c], r11d
mov byte [r13 - 4], r11b
mov al, byte [rbp - 0x6c]
ror dword [rbp - 0x5c], 8
mov byte [r13], al
lea r13, [r13 + 8]
ror dword [rbp - 0x6c], 8
mov al, byte [rbp - 0x5c]
mov byte [r13 - 0xd], al
mov al, byte [rbp - 0x6c]
ror dword [rbp - 0x5c], 8
mov byte [r13 - 9], al
ror dword [rbp - 0x6c], 8
mov al, byte [rbp - 0x5c]
mov byte [r13 - 0xe], al
ror dword [rbp - 0x5c], 8
mov al, byte [rbp - 0x6c]
mov byte [r13 - 0xa], al
ror dword [rbp - 0x6c], 8
mov al, byte [rbp - 0x5c]
mov byte [r13 - 0xf], al
mov al, byte [rbp - 0x6c]
mov byte [r13 - 0xb], al
mov r11d, dword [rbp - 0x5c]
mov ebx, dword [rbp - 0x6c]
ror r11d, 8
ror ebx, 8
mov dword [rbp - 0x5c], r11d
mov dword [rbp - 0x6c], ebx
sub r12, 1
jne 0x14001ab96
mov dl, byte [rsp + 0x58]
xor r14d, r14d
mov r15d, dword [rsp + 0x40]
mov r13, qword [rbp - 0x30]
mov rsi, qword [rbp]
mov r12, qword [rsp + 0x78]
mov rax, r14
test rsi, rsi
je 0x14001aeca
xor dl, byte [rax + r12]
inc rax
cmp rax, rsi
jb 0x14001aebe
mov rcx, qword [rbp - 0x18]
movzx eax, dl
cmp rax, qword [rsi + rcx]
je 0x14001aee5
mov rbx, qword [rbp + 0x98]
mov edi, 0xc004d501
jmp 0x14001aefc
mov edi, dword [rbp - 8]
mov rbx, r12
mov qword [rbp + 0x98], rbx
mov r12, r14
mov qword [rbp + 0x188], rsi
test r12, r12
je 0x14001af10
mov rcx, r12
call fcn.140044550
mov rbx, qword [rbp + 0x98]
test edi, edi
js 0x14001af3e
mov r9d, dword [rbp + 0x188]
mov esi, 0x10000000
mov qword [rbp + 0x40], rbx
mov rbx, r14
mov qword [rbp + 0x98], rbx
mov dword [rbp + 0x90], r9d
jmp 0x14001af4a
mov rbx, qword [rbp + 0x98]
mov r9d, dword [rbp + 0x90]
mov esi, 0xd0000001
test rbx, rbx
je 0x14001af71
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r9d, dword [rbp + 0x90]
mov qword [rbp + 0x98], r14
test esi, esi
js 0x14001a1fe
mov r10, qword [rbp + 0x40]
mov r11d, 4
mov dword [rbp - 0x50], r14d
mov qword [rsp + 0x78], r10
cmp r9d, r11d
jb 0x14001b1a9
mov eax, dword [r10]
lea r8, [rsp + 0x78]
mov edx, r11d
mov dword [rsp + 0x48], eax
mov rcx, r10
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001b1ae
lea r8, [rbp - 0x50]
mov edx, r11d
xor ecx, ecx
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x14001b1ae
mov eax, r9d
sub eax, dword [rbp - 0x50]
cmp eax, r11d
jb 0x14001b1a9
mov rcx, qword [rsp + 0x78]
lea r8, [rsp + 0x78]
mov edx, r11d
mov r12d, dword [rcx]
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001b1ae
mov ecx, dword [rbp - 0x50]
lea r8, [rbp - 0x50]
mov edx, r11d
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x14001b1ae
mov ecx, dword [rbp - 0x50]
mov eax, r9d
sub eax, ecx
cmp eax, r12d
jb 0x14001b1a9
lea r8, [rbp - 0x50]
mov edx, r12d
call fcn.1400065a8
mov esi, eax
test eax, eax
js 0x14001b1ae
mov rbx, qword [rsp + 0x78]
mov edx, r9d
lea rcx, [r12 + rbx]
lea rax, [r10 + rdx]
cmp rax, rcx
jb 0x14001b1a9
mov rax, r10
sub rax, r12
sub rax, rbx
add rax, rdx
cmp rax, 8
jae 0x14001b1a9
mov dword [rsp + 0x70], r14d
mov rax, r14
mov qword [rbp - 0x18], rax
mov esi, r14d
test rbx, rbx
je 0x14001b134
lea r8, [rbp - 0x28]
mov edx, r12d
mov rcx, rbx
mov r9, rbx
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001b199
mov r11, qword [rbp - 0x28]
cmp rbx, r11
jae 0x14001b12c
mov r10d, dword [rbp + 0x100]
lea r8, [rbp - 0x28]
mov edx, 4
mov rcx, r9
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001b199
cmp qword [rbp - 0x28], r11
ja 0x14001b160
mov edx, dword [r9]
lea r8, [rbp + 0x350]
mov ecx, 4
call fcn.1400065a8
test eax, eax
mov esi, eax
cmovns r10d, dword [rbp + 0x350]
mov dword [rbp + 0x100], r10d
js 0x14001b199
mov edx, r10d
lea r8, [rbp]
mov rcx, r9
call fcn.1400065c4
mov esi, eax
test eax, eax
js 0x14001b199
mov r9, qword [rbp]
cmp r9, r11
ja 0x14001b160
inc dword [rsp + 0x70]
cmp r9, r11
jb 0x14001b0b3
cmp r9, r11
jne 0x14001b160
mov rax, r14
test r12d, r12d
je 0x14001b16a
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r12
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp - 0x18], rax
test rax, rax
jne 0x14001b167
mov esi, 0xc0000017
jmp 0x14001b199
mov esi, 0xc000000d
jmp 0x14001b1ae
mov esi, r14d
test rbx, rbx
je 0x14001b181
mov r8, r12
mov rdx, rbx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp - 0x18]
mov qword [rbp + 0xc0], rax
mov eax, dword [rsp + 0x70]
mov dword [rbp + 0xb8], eax
mov dword [rbp + 0xbc], r12d
test esi, esi
js 0x14001b1ae
mov eax, dword [rsp + 0x48]
cmp eax, dword [rbp + 0xb8]
je 0x14001b1ae
mov esi, 0xc000003e
bts esi, 0x1c
jmp 0x14001a1fe
mov rcx, qword [rsp + 0x68]
lea r8, [rsp + 0x68]
mov rdx, r11
mov r9d, dword [rcx]
call fcn.1400065c4
test eax, eax
js 0x14001931e
mov rax, qword [rsp + 0x68]
test r9d, r9d
mov dword [rbp + 0x2e8], r9d
cmove rax, r14
mov qword [rbp + 0x338], rax
cmp r9d, 8
jne 0x14001931e
jmp 0x140019314
mov r13, qword [rsp + 0x50]
jmp 0x14001b207
mov rsi, r14
and qword [rbp - 0x40], 0
mov rbx, qword [rbp - 0x38]
test rbx, rbx
je 0x14001b22d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp - 0x38], r14
and qword [rbp + 0xb8], 0
mov rbx, qword [rbp + 0xc0]
test rbx, rbx
je 0x14001b25c
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0xc0], r14
test r13, r13
je 0x14001b275
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test rsi, rsi
je 0x14001b28e
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [rbp + 0xa8]
mov ebx, dword [rbp + 0xac]
mov edi, dword [rbp + 0xb0]
mov esi, dword [rbp + 0xb4]
mov r12d, dword [rbp + 0x3d8]
mov r13, qword [rbp + 0x1a0]
mov dword [rbp + 0x230], eax
mov rax, qword [rbp + 0x198]
mov qword [rbp + 0x150], rax
mov qword [rbp + 0x40], r14
jmp 0x140006588
mov edi, dword [rbp + 0xb0]
mov esi, dword [rbp + 0xb4]
mov r12d, dword [rbp + 0x3d8]
mov r13, qword [rbp + 0x1a0]
mov ebx, dword [rbp + 0x5c]
jmp 0x140006588
cmp r15d, 0xd0000034
jne 0x14001b30a
mov r15d, 0xc004f012
mov ebx, r15d
jmp 0x1400064bc
cmp r15d, 0xd00000e5
je 0x14001b331
cmp r15d, 0xc004d501
je 0x14001b331
cmp r15d, 0xd000003e
jne 0x140006495
mov r15d, 0xc004f028
jmp 0x14001b302
mov r15d, 0xc004f027
jmp 0x140006495
mov eax, 0x8007007a
cmp r15d, eax
jne 0x14001b302
mov ebx, 0xc004f01e
jmp 0x1400064bc
mov rcx, qword [rcx + 0x10]
mov edx, 0x30
mov r8, r15
call fcn.1400248e4
nop
jmp 0x140006501
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov rcx, qword [0x1400a52b8]
mov edx, 0x31
mov r9d, r14d
mov dword [rsp + 0x20], eax
mov r8, r15
mov rcx, qword [rcx + 0x10]
call fcn.14002b208
jmp 0x14001b3d2
mov edi, 0xd
mov ecx, edi
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
mov rax, qword [0x1400a52b8]
lea rsi, [0x1400a52b8]
cmp rax, rsi
je 0x140006562
test byte [rax + 0x1c], 0x20
je 0x140006553
mov rcx, qword [rax + 0x10]
lea edx, [rdi + 0x25]
mov r9d, ebx
mov dword [rsp + 0x20], edi
mov r8, r15
call fcn.14002b208
mov rax, qword [0x1400a52b8]
jmp 0x140006553
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov rcx, qword [0x1400a52b8]
mov edx, 0x33
mov dword [rsp + 0x28], eax
mov r9d, r14d
mov r8, r15
mov dword [rsp + 0x20], ebx
mov rcx, qword [rcx + 0x10]
call fcn.140044d2c
nop
jmp 0x140006562