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

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1b8]
sub rsp, 0x290
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x14002c168]
xor rax, rsp
mov qword [rbp + 0x170], rax
xor edi, edi
lea rax, [0x14002c240]
xorps xmm0, xmm0
mov qword [rbp + 0x60], rdi
mov r14d, edi
mov qword [rbp + 0x68], rdi
mov r15d, edi
mov dword [rsp + 0x54], edi
mov qword [rsp + 0x38], rdi
movaps xmm6, xmm2
movups xmmword [rbp - 0x70], xmm0
mov dword [rsp + 0x70], edi
mov r12, rcx
mov qword [rbp + 0xb0], rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov esi, 0xa0
lea r13d, [rdi + 8]
mov rcx, rax
mov r8d, esi
mov edx, r13d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov ebx, 0xc0000017
lea r8d, [rsi - 0x20]
mov rdx, rax
test rax, rax
je 0x14000843d
mov rax, qword [rbp + 0xb0]
mov r14d, esi
mov qword [rbp + 0x60], rdx
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rdx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rdx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rdx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rdx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rdx + 0x60], xmm0
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rdx + r8 - 0x10], xmm1
movups xmm0, xmmword [rax + r8]
movups xmmword [rdx + r8], xmm0
movups xmm1, xmmword [rax + r8 + 0x10]
movups xmmword [rdx + r8 + 0x10], xmm1
lea rax, [0x14002c188]
mov qword [rbp + 0xb8], rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, r13d
mov edx, r13d
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rdx, rax
test rax, rax
je 0x14000843d
mov rax, qword [rbp + 0xb8]
mov r15d, r13d
mov qword [rbp + 0x68], rdx
mov rcx, qword [rax]
mov qword [rdx], rcx
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x58], rax
mov dword [rbp + 0x88], 0xc
mov ebx, 0x10000000
mov dword [rsp + 0x54], 0xc4
mov esi, 1
test ebx, ebx
js 0x140008619
mov r8d, r13d
mov dword [rsp + 0x58], r13d
mov ecx, dword [rsp + 0x54]
or r13d, 0xffffffff
mov edx, r13d
mov dword [rbp - 0x78], r13d
mov r9d, 0xc0000095
lea eax, [rcx + 8]
cmp eax, ecx
cmovae edx, eax
sbb ebx, ebx
and ebx, r9d
mov dword [rsp + 0x54], edx
add ebx, 0x10000000
cmp eax, ecx
jb 0x14000ab62
test r12, r12
lea rdi, [0x14002805c]
cmovne rdi, r12
xor r12d, r12d
test rdi, rdi
je 0x1400084be
lea r8, [rbp + 0x70]
mov edx, 0x7fffffff
mov rcx, rdi
call fcn.140025640
mov edx, dword [rsp + 0x54]
mov r9d, 0xc0000095
mov r8d, dword [rsp + 0x58]
jmp 0x1400084c3
mov eax, 0x80070057
test eax, eax
jns 0x1400084d8
xor r14d, r14d
mov qword [rbp + 0x70], r14
mov ebx, 0xc000003e
jmp 0x14000861c
mov rax, qword [rbp + 0x70]
add rax, rsi
mov qword [rbp + 0x70], rax
lea ecx, [rax*2 + 4]
cmp ecx, 4
jb 0x1400084fb
mov r8d, ecx
mov dword [rsp + 0x58], ecx
mov ebx, r12d
jmp 0x1400084fe
mov ebx, r9d
test ebx, ebx
js 0x140008619
lea ecx, [rdx + r8]
mov eax, r13d
cmp ecx, edx
cmovae eax, ecx
sbb ebx, ebx
and ebx, r9d
mov dword [rsp + 0x54], eax
add ebx, 0x10000000
cmp ecx, edx
jb 0x14000ab62
lea r8, [rbp + 0x78]
mov edx, 0x7fffffff
lea rcx, [0x14002805c]
call fcn.140025640
test eax, eax
jns 0x14000854b
xor r14d, r14d
mov qword [rbp + 0x78], r14
jmp 0x1400084ce
mov rax, qword [rbp + 0x78]
mov r8d, 0xc0000095
add rax, rsi
mov qword [rbp + 0x78], rax
lea edx, [rax*2 + 4]
cmp edx, 4
jb 0x140008571
mov ebx, r12d
mov dword [rsp + 0x58], edx
jmp 0x140008578
mov edx, dword [rsp + 0x58]
mov ebx, r8d
test ebx, ebx
js 0x140008619
mov ecx, dword [rsp + 0x54]
mov r9d, 0x10000000
lea eax, [rcx + rdx]
mov edx, r13d
cmp eax, ecx
cmovae edx, eax
sbb ebx, ebx
and ebx, r8d
add ebx, r9d
cmp eax, ecx
jb 0x14000ab62
lea eax, [rdx + 4]
mov ecx, r13d
cmp eax, edx
cmovae ecx, eax
sbb ebx, ebx
and ebx, r8d
add ebx, r9d
cmp eax, edx
jb 0x14000ab62
lea eax, [rcx + 8]
mov edx, r13d
cmp eax, ecx
cmovae edx, eax
sbb ebx, ebx
and ebx, r8d
mov dword [rsp + 0x54], edx
add ebx, r9d
cmp eax, ecx
jb 0x14000ab62
mov dword [rsp + 0x34], edx
mov ebx, edx
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, ebx
mov edx, 8
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rdx, rax
test rax, rax
jne 0x140008753
mov ebx, 0xc0000017
xor r14d, r14d
and qword [rsp + 0x30], 0
mov rdi, qword [rsp + 0x38]
test rdi, rdi
je 0x140008651
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rsp + 0x38], r14
and qword [rbp - 0x70], 0
mov rdi, qword [rbp - 0x68]
test rdi, rdi
je 0x140008683
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp - 0x68], r14
mov rdi, qword [rbp + 0x60]
test rdi, rdi
je 0x1400086ac
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov rdi, qword [rbp + 0x68]
test rdi, rdi
je 0x1400086d5
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
test ebx, ebx
js 0x14000871b
xor ecx, ecx
call qword [sym.imp.msvcrt.dll_time]
nop dword [rax + rax]
mulsd xmm6, qword [0x140028fe0]
mov r8, rax
mov edx, dword [rbp + 0x168]
cvttsd2si ecx, xmm6
test edx, edx
je 0x140008707
sub edx, r8d
cmp edx, ecx
jle 0x14000871b
mov eax, dword [rbp + 0x16c]
test eax, eax
je 0x140008718
sub eax, r8d
cmp eax, ecx
jle 0x14000871b
mov esi, r14d
mov eax, esi
mov rcx, qword [rbp + 0x170]
xor rcx, rsp
call fcn.140025bf0
lea r11, [rsp + 0x290]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov qword [rsp + 0x38], rdx
mov dword [rsp + 0x30], r12d
mov dword [rbp + 8], 0x6d
lea r8, [rax + 4]
cmp r8, rdx
jb 0x14000885b
mov ecx, dword [rsp + 0x34]
add rax, 8
add rcx, rdx
cmp rax, rcx
jbe 0x14000878b
mov ebx, 0xc0000023
jmp 0x140008619
mov dword [rdx], 4
mov eax, dword [rbp + 8]
mov dword [r8], eax
mov edx, dword [rsp + 0x30]
inc edx
mov dword [rsp + 0x30], edx
mov r10, qword [rbp + 0x60]
test r10, r10
jne 0x140008828
test r14d, r14d
je 0x14000882d
mov ebx, 0xc000000d
xor r14d, r14d
test ebx, ebx
js 0x14000861c
mov r8d, dword [rsp + 0x34]
mov r11, qword [rbp + 0x68]
test r11, r11
jne 0x1400088ed
test r15d, r15d
je 0x1400088f6
mov ebx, 0xc000000d
mov r11d, 0xc0000095
test ebx, ebx
js 0x14000861c
mov rax, qword [rbp + 0x58]
mov qword [rbp + 0x80], rax
cmp qword [rsp + 0x38], r14
jne 0x1400089c1
mov dword [rbp + 0x18], 0xc
lea eax, [r8 + 0xc]
cmp eax, r8d
jb 0x14000ab58
mov r8d, eax
mov dword [rbp - 0x30], 3
add edx, esi
jmp 0x140008a54
test r14d, r14d
je 0x1400087af
cmp qword [rsp + 0x38], r12
jne 0x140008865
lea ecx, [r14 + 4]
mov dword [rbp + 0x10], ecx
mov eax, dword [rsp + 0x34]
lea r8d, [rcx + rax]
cmp r8d, eax
jb 0x14000885b
add edx, esi
mov dword [rsp + 0x34], r8d
mov dword [rsp + 0x30], edx
xor r14d, r14d
jmp 0x1400087c4
mov ebx, 0xc0000095
jmp 0x140008619
mov r8, qword [rsp + 0x38]
mov ecx, r12d
test edx, edx
je 0x140008893
mov eax, dword [r8]
add eax, 4
cmp eax, 4
jb 0x1400088e3
mov dword [rbp + 0x10], eax
mov r9d, eax
add r9, r8
cmp r9, r8
jb 0x14000885b
add ecx, esi
mov r8, r9
cmp ecx, edx
jb 0x140008871
lea r9, [r8 + 4]
cmp r9, r8
jb 0x14000885b
mov ecx, dword [rsp + 0x34]
lea rax, [r8 + 4]
add rcx, qword [rsp + 0x38]
mov ebx, r12d
mov edx, r14d
add rax, rdx
cmp rax, rcx
ja 0x140008781
mov dword [r8], r14d
xor r14d, r14d
test r10, r10
je 0x1400088d4
mov r8d, edx
mov rcx, r9
mov rdx, r10
call sub.msvcrt.dll_memcpy
mov edx, dword [rsp + 0x30]
add edx, esi
mov dword [rsp + 0x30], edx
jmp 0x1400087b7
mov ebx, 0xc0000095
jmp 0x1400087b4
test r15d, r15d
je 0x1400087da
cmp qword [rsp + 0x38], r14
jne 0x140008926
lea eax, [r15 + 4]
mov dword [rbp + 0x14], eax
lea ecx, [rax + r8]
cmp ecx, r8d
jb 0x14000ab58
mov rax, qword [rbp + 0x58]
mov r8d, ecx
mov qword [rbp + 0x80], rax
add edx, esi
jmp 0x140008803
mov r9, qword [rsp + 0x38]
mov ecx, r14d
test edx, edx
je 0x140008958
mov eax, dword [r9]
add eax, 4
cmp eax, 4
jb 0x140008989
mov dword [rbp + 0x14], eax
mov r10d, eax
add r10, r9
cmp r10, r9
jb 0x14000ab58
add ecx, esi
mov r9, r10
cmp ecx, edx
jb 0x140008932
lea r10, [r9 + 4]
cmp r10, r9
jb 0x14000ab58
mov edx, r15d
mov ebx, r14d
mov ecx, r8d
add rcx, qword [rsp + 0x38]
lea rax, [rdx + 4]
add rax, r9
cmp rax, rcx
jbe 0x140008997
mov ebx, 0xc0000023
jmp 0x14000861c
mov r11d, 0xc0000095
mov ebx, r11d
jmp 0x1400087e5
mov dword [r9], r15d
test r11, r11
je 0x1400089ad
mov r8, rdx
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memcpy
mov edx, dword [rsp + 0x30]
mov r8d, dword [rsp + 0x34]
add edx, esi
mov dword [rsp + 0x30], edx
jmp 0x1400087df
mov r9, qword [rsp + 0x38]
mov ecx, r14d
mov r15d, 4
test edx, edx
je 0x1400089fd
mov eax, dword [r9]
add eax, r15d
cmp eax, r15d
jb 0x140008a85
mov dword [rbp + 0x18], eax
mov r10d, eax
add r10, r9
cmp r10, r9
jb 0x140008a7d
add ecx, esi
mov r9, r10
cmp ecx, edx
jb 0x1400089d3
lea rdx, [r9 + 4]
cmp rdx, r9
jb 0x140008a7d
mov ecx, r8d
lea rax, [r9 + 0xc]
add rcx, qword [rsp + 0x38]
mov ebx, r14d
cmp rax, rcx
ja 0x14000897f
mov dword [r9], 8
mov rax, qword [rbp + 0x80]
mov qword [rdx], rax
mov edx, dword [rsp + 0x30]
mov r8d, dword [rsp + 0x34]
add edx, esi
mov dword [rsp + 0x30], edx
test ebx, ebx
js 0x14000861c
mov dword [rbp - 0x30], 3
cmp qword [rsp + 0x38], r14
jne 0x140008a8a
mov dword [rbp + 0x1c], 8
lea eax, [r8 + 8]
cmp eax, r8d
jb 0x14000ab58
add edx, esi
mov dword [rsp + 0x34], eax
mov dword [rsp + 0x30], edx
mov r8d, eax
mov r15d, 4
jmp 0x140008af8
mov ebx, r11d
jmp 0x14000861c
mov ebx, r11d
jmp 0x140008a3e
mov r9, qword [rsp + 0x38]
mov ecx, r14d
test edx, edx
je 0x140008ab8
mov eax, dword [r9]
add eax, 4
cmp eax, r15d
jb 0x140008b19
mov dword [rbp + 0x1c], eax
mov r10d, eax
add r10, r9
cmp r10, r9
jb 0x140008a7d
add ecx, esi
mov r9, r10
cmp ecx, edx
jb 0x140008a96
lea rdx, [r9 + 4]
cmp rdx, r9
jb 0x140008a7d
mov ecx, r8d
lea rax, [r9 + 8]
add rcx, qword [rsp + 0x38]
mov ebx, r14d
cmp rax, rcx
ja 0x14000897f
mov dword [r9], r15d
mov eax, dword [rbp - 0x30]
mov dword [rdx], eax
mov edx, dword [rsp + 0x30]
mov r8d, dword [rsp + 0x34]
add edx, esi
mov dword [rsp + 0x30], edx
test ebx, ebx
js 0x14000861c
test rdi, rdi
je 0x140008b1e
lea r8, [rbp - 0x18]
mov edx, 0x7fffffff
mov rcx, rdi
call fcn.140025640
mov r8d, dword [rsp + 0x34]
mov edx, dword [rsp + 0x30]
jmp 0x140008b23
mov ebx, r11d
jmp 0x140008af0
mov eax, 0x80070057
test eax, eax
jns 0x140008b30
mov qword [rbp - 0x18], r14
jmp 0x1400084ce
mov rax, qword [rbp - 0x18]
lea rcx, [rax + 1]
cmp rcx, rax
jb 0x14000ab53
mov qword [rbp - 0x18], rcx
lea r10d, [rcx + rcx]
mov r12d, 0xc0000023
test rdi, rdi
jne 0x140008b91
test r10d, r10d
je 0x140008b96
mov ebx, 0xc000000d
mov edi, 0xc0000095
test ebx, ebx
js 0x14000861c
lea r8, [rbp - 0x20]
mov edx, 0x7fffffff
lea rcx, [0x14002805c]
call fcn.140025640
test eax, eax
jns 0x140008c52
mov qword [rbp - 0x20], r14
jmp 0x1400084ce
test r10d, r10d
je 0x140008b59
cmp qword [rsp + 0x38], r14
jne 0x140008bd0
add r10d, 4
mov edi, 0xc0000095
cmp r10d, r15d
jb 0x140008bcc
mov dword [rbp + 0x20], r10d
lea eax, [r10 + r8]
cmp eax, r8d
jb 0x140008bc7
add edx, esi
mov dword [rsp + 0x34], eax
mov dword [rsp + 0x30], edx
mov ebx, r14d
jmp 0x140008b63
mov dword [rsp + 0x34], r13d
mov ebx, edi
jmp 0x140008b63
mov r9, qword [rsp + 0x38]
mov ecx, r14d
test edx, edx
je 0x140008bfe
mov eax, dword [r9]
add eax, 4
cmp eax, r15d
jb 0x140008c48
mov dword [rbp + 0x20], eax
mov r11d, eax
add r11, r9
cmp r11, r9
jb 0x140008c48
add ecx, esi
mov r9, r11
cmp ecx, edx
jb 0x140008bdc
lea r11, [r9 + 4]
cmp r11, r9
jb 0x140008c48
mov ecx, r8d
lea rax, [r10 + 4]
add rcx, qword [rsp + 0x38]
add rax, r9
mov edx, r10d
mov ebx, r14d
cmp rax, rcx
jbe 0x140008c29
mov ebx, r12d
jmp 0x140008b5e
mov dword [r9], r10d
test rdi, rdi
je 0x140008c3f
mov r8, rdx
mov rcx, r11
mov rdx, rdi
call sub.msvcrt.dll_memcpy
add dword [rsp + 0x30], esi
jmp 0x140008b5e
mov edi, 0xc0000095
jmp 0x140008bcc
mov rax, qword [rbp - 0x20]
lea rcx, [rax + 1]
cmp rcx, rax
jb 0x14000ab47
lea r9d, [rcx + rcx]
mov qword [rbp - 0x20], rcx
test r9d, r9d
je 0x140008d33
cmp qword [rsp + 0x38], r14
jne 0x140008cb9
add r9d, 4
cmp r9d, r15d
jb 0x140008cb5
mov dword [rbp + 0x24], r9d
mov eax, dword [rsp + 0x34]
lea r8d, [r9 + rax]
cmp r8d, eax
jb 0x140008ca6
add dword [rsp + 0x30], esi
mov ebx, r14d
mov dword [rsp + 0x34], r8d
jmp 0x140008d3d
mov r8d, r13d
mov dword [rsp + 0x34], r13d
mov ebx, edi
jmp 0x140008d3d
mov ebx, edi
jmp 0x140008d38
mov ecx, r14d
mov rdx, qword [rsp + 0x38]
cmp dword [rsp + 0x30], r14d
jbe 0x140008ceb
mov eax, dword [rdx]
add eax, 4
cmp eax, r15d
jb 0x140008cb5
mov dword [rbp + 0x24], eax
mov r8d, eax
add r8, rdx
cmp r8, rdx
jb 0x140008cb5
add ecx, esi
mov rdx, r8
cmp ecx, dword [rsp + 0x30]
jb 0x140008cc8
lea r10, [rdx + 4]
cmp r10, rdx
jb 0x140008cb5
mov r8d, dword [rsp + 0x34]
lea rax, [r9 + 4]
mov ecx, r8d
mov r11d, r9d
add rcx, qword [rsp + 0x38]
add rax, rdx
mov ebx, r14d
cmp rax, rcx
jbe 0x140008d18
mov ebx, r12d
jmp 0x140008d3d
mov dword [rdx], r9d
mov r8, r11
lea rdx, [0x14002805c]
mov rcx, r10
call sub.msvcrt.dll_memcpy
add dword [rsp + 0x30], esi
jmp 0x140008d38
mov ebx, 0xc000000d
mov r8d, dword [rsp + 0x34]
test ebx, ebx
js 0x14000861c
cmp qword [rsp + 0x38], r14
jne 0x140008d70
mov dword [rbp + 0x28], r15d
lea eax, [r8 + 4]
cmp eax, r8d
jb 0x14000ab4c
add dword [rsp + 0x30], esi
mov r8d, eax
mov dword [rbp - 0x48], 2
jmp 0x140008df1
mov edx, r14d
mov rcx, qword [rsp + 0x38]
cmp dword [rsp + 0x30], r14d
jbe 0x140008da6
mov eax, dword [rcx]
add eax, 4
cmp eax, r15d
jb 0x140008dcb
mov dword [rbp + 0x28], eax
mov r9d, eax
add r9, rcx
cmp r9, rcx
jb 0x14000ab4c
add edx, esi
mov rcx, r9
cmp edx, dword [rsp + 0x30]
jb 0x140008d7f
lea rdx, [rcx + 4]
cmp rdx, rcx
jb 0x14000ab4c
mov eax, r8d
mov ebx, r14d
add rax, qword [rsp + 0x38]
cmp rdx, rax
jbe 0x140008dcf
mov ebx, r12d
jmp 0x14000861c
mov ebx, edi
jmp 0x140008ddb
mov dword [rcx], r14d
add dword [rsp + 0x30], esi
mov r8d, dword [rsp + 0x34]
test ebx, ebx
js 0x14000861c
mov dword [rbp - 0x48], 2
cmp qword [rsp + 0x38], r14
jne 0x140008e12
mov dword [rbp + 0x2c], 8
lea eax, [r8 + 8]
cmp eax, r8d
jb 0x14000ab4c
add dword [rsp + 0x30], esi
mov r8d, eax
mov dword [rsp + 0x34], eax
jmp 0x140008e8b
mov ecx, r14d
mov rdx, qword [rsp + 0x38]
cmp dword [rsp + 0x30], r14d
jbe 0x140008e4c
mov eax, dword [rdx]
add eax, 4
cmp eax, r15d
jb 0x140008f14
mov dword [rbp + 0x2c], eax
mov r9d, eax
add r9, rdx
cmp r9, rdx
jb 0x14000ab4c
add ecx, esi
mov rdx, r9
cmp ecx, dword [rsp + 0x30]
jb 0x140008e21
lea r9, [rdx + 4]
cmp r9, rdx
jb 0x14000ab4c
mov ecx, r8d
lea rax, [rdx + 8]
add rcx, qword [rsp + 0x38]
mov ebx, r14d
cmp rax, rcx
ja 0x140008dc3
mov dword [rdx], r15d
mov eax, dword [rbp - 0x48]
mov dword [r9], eax
add dword [rsp + 0x30], esi
mov r8d, dword [rsp + 0x34]
test ebx, ebx
js 0x14000861c
mov dword [rbp + 0x8c], 0xc
mov dword [rsp + 0x58], 0x14
mov r10, r14
mov qword [rbp - 0x80], r14
mov r9d, r14d
mov dword [rsp + 0x44], r14d
mov qword [rbp - 8], r14
mov r15, r14
mov qword [rbp + 0x48], r14
mov dword [rsp + 0x50], r14d
mov qword [rbp], r14
mov dword [rsp + 0x4c], r14d
mov qword [rbp - 0x38], r14
mov qword [rbp + 0x50], r14
mov dword [rbp - 0x74], r14d
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0xc0], rax
lea eax, [r8 + 8]
mov ecx, r13d
cmp eax, 8
mov edx, 0xc0000095
cmovae ecx, eax
sbb edi, edi
and edi, edx
cmp eax, 8
jb 0x140008fe8
mov eax, ecx
add rax, 7
and eax, 0xfffffff8
cmp eax, ecx
jae 0x140008f1b
mov edi, edx
jmp 0x140008fe8
mov ebx, edi
jmp 0x140008e83
mov dword [rbp - 0x40], eax
mov ebx, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, ebx
mov edx, 8
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rbx, rax
test rax, rax
jne 0x140008f5b
mov edi, 0xc0000017
mov r9d, r14d
mov r10, r14
jmp 0x140008fe8
mov eax, dword [rsp + 0x30]
lea rdx, [rbx + 4]
mov dword [rbx], eax
cmp rdx, rbx
jb 0x140008faf
mov eax, dword [rsp + 0x34]
lea rcx, [rdx + 4]
mov dword [rdx], eax
cmp rcx, rdx
jb 0x140008faf
mov edx, dword [rbp - 0x40]
mov edi, r14d
mov rax, qword [rbp + 0xc0]
mov qword [rdx + rbx - 8], rax
mov r8d, dword [rsp + 0x34]
mov rdx, qword [rsp + 0x38]
call sub.msvcrt.dll_memcpy
mov r9d, dword [rbp - 0x40]
mov r10, rbx
mov qword [rbp - 0x80], rbx
mov rbx, r14
mov dword [rsp + 0x44], r9d
jmp 0x140008fba
mov r10, r14
mov r9d, r14d
mov edi, 0xc0000095
test rbx, rbx
je 0x140008fe8
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov r9d, dword [rsp + 0x44]
mov r10, qword [rbp - 0x80]
or edi, 0x10000000
jl 0x14000a7af
mov qword [rbp + 0x38], r14
test r10, r10
jne 0x14000900a
mov edi, 0xc000000d
xor r13d, r13d
jmp 0x1400098ae
mov edi, r9d
mov qword [rbp - 0x10], rdi
test r9d, r9d
je 0x1400097c9
lea rbx, [rdi + 8]
mov qword [rbp - 0x28], rbx
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
xor r9d, r9d
mov qword [rsp + 0x78], rax
mov r8, rax
test rax, rax
je 0x1400097c9
mov r10, qword [rbp - 0x80]
mov dl, r9b
mov byte [rsp + 0x40], dl
mov ecx, r9d
test rdi, rdi
je 0x140009079
xor dl, byte [rcx + r10]
add rcx, rsi
cmp rcx, rdi
jb 0x140009069
mov byte [rsp + 0x40], dl
mov rcx, r8
mov dword [rsp + 0x44], r9d
mov r8, rdi
mov qword [rbp + 0x158], rcx
movabs rax, 0xc81ecb17b1b54a58
mov ebx, r13d
mov qword [rbp + 0x150], rax
mov r11d, r9d
mov r13d, r9d
and r8d, 7
je 0x1400091c3
mov dword [rsp + 0x48], r9d
mov ecx, r9d
mov dword [rsp + 0x44], ecx
mov ebx, r9d
test r8d, r8d
je 0x140009106
mov r11d, 0x38
movzx r9d, byte [r10]
inc r10
cmp ebx, 4
jge 0x1400090e9
lea ecx, [r11 - 0x20]
shl r9d, cl
mov ecx, dword [rsp + 0x44]
or ecx, r9d
mov dword [rsp + 0x44], ecx
jmp 0x1400090f6
mov ecx, r11d
shl r9d, cl
mov ecx, dword [rsp + 0x44]
or r13d, r9d
add ebx, esi
sub r11d, 8
cmp ebx, r8d
jl 0x1400090c9
mov dword [rsp + 0x48], r13d
and dword [rsp + 0x60], 0
mov r11d, ecx
xor r11d, 0xb17a307a
mov ebx, r13d
xor ebx, 0x42f6b18d
mov ecx, r11d
mov r9d, ebx
test r8d, r8d
je 0x140009182
mov r13, qword [rbp + 0x158]
mov eax, dword [rsp + 0x60]
lea r15, [r13 + 1]
mov qword [rsp + 0x68], r15
cmp eax, 4
jge 0x14000914a
rol ecx, 8
mov r15d, ecx
jmp 0x140009151
rol r9d, 8
mov r15d, r9d
mov byte [r13], r15b
add eax, esi
mov r15, qword [rsp + 0x68]
mov r13, r15
cmp eax, r8d
jl 0x140009134
mov r13d, dword [rsp + 0x48]
mov rcx, r15
mov qword [rbp + 0x158], rcx
movabs rax, 0xc81ecb17b1b54a58
mov r15, r14
jmp 0x140009189
mov rcx, qword [rbp + 0x158]
cmp r8d, 4
jbe 0x1400091a0
mov ecx, 8
sub ecx, r8d
shl ecx, 3
shr ebx, cl
shl ebx, cl
jmp 0x1400091bc
xor r9d, r9d
mov ebx, r9d
cmp r8d, 4
jae 0x1400091c3
lea ecx, [r9 + 4]
sub ecx, r8d
shl ecx, 3
shr r11d, cl
shl r11d, cl
mov rcx, qword [rbp + 0x158]
mov r8, rdi
shr r8, 3
mov qword [rsp + 0x68], r8
test r8, r8
je 0x14000954b
movzx edx, word [rbp + 0x156]
lea r8, [r10 + 2]
movzx edi, word [rbp + 0x154]
mov r12d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x68]
mov dword [rsp + 0x60], edx
movzx edx, word [rbp + 0x152]
mov dword [rsp + 0x48], edx
lea rdx, [rcx + 7]
movzx r14d, ax
movzx ecx, byte [r8 - 1]
movzx r10d, byte [r8 - 2]
movzx r9d, byte [r8 + 2]
shl r10d, 8
or r10d, ecx
shl r9d, 8
movzx ecx, byte [r8]
shl r10d, 8
or r10d, ecx
movzx ecx, byte [r8 + 1]
shl r10d, 8
or r10d, ecx
movzx ecx, byte [r8 + 3]
or r9d, ecx
movzx ecx, byte [r8 + 4]
shl r9d, 8
or r9d, ecx
movzx ecx, byte [r8 + 5]
add r8, 8
shl r9d, 8
or r9d, ecx
mov qword [rsp + 0x68], r8
xor ebx, r9d
mov ecx, ebx
sub ecx, r14d
xor ecx, r10d
xor r11d, ecx
movzx ecx, word [rbp + 0x152]
xor r11d, dword [rbp + 0x154]
mov r8d, r11d
xor r8d, dword [rbp + 0x154]
ror r8d, 0xf
imul r8d, ecx
mov ecx, r11d
ror ecx, 7
add r8d, ecx
xor ebx, r8d
mov ecx, ebx
ror ecx, 0xa
lea r8d, [rbx + rax]
ror r8d, 9
imul r8d, edi
sub r8d, ecx
movzx ecx, word [rbp + 0x156]
xor r11d, r8d
mov r8d, r11d
xor r8d, edi
rol r8d, 4
imul r8d, ecx
mov ecx, r11d
rol ecx, 5
add r8d, ecx
mov ecx, dword [rbp + 0x154]
xor ebx, r8d
mov r8d, ebx
xor r8d, eax
sub ecx, r8d
xor r11d, ecx
movzx ecx, word [rbp + 0x152]
mov r8d, r11d
sub r8d, r14d
imul r8d, ecx
mov ecx, r11d
shr ecx, 6
sub r8d, ecx
xor ebx, r8d
movzx r8d, word [rbp + 0x156]
mov ecx, ebx
ror ecx, 0xf
xor ecx, edi
imul ecx, r14d
xor r11d, ecx
mov ecx, r11d
not ecx
ror ecx, 3
add ecx, r8d
imul ecx, edi
xor ebx, ecx
mov ecx, ebx
sub ecx, dword [rbp + 0x154]
sub ecx, r14d
xor r11d, ecx
mov ecx, r11d
mov r8d, r11d
xor ecx, dword [rsp + 0x60]
imul ecx, dword [rsp + 0x48]
ror r8d, 0xa
xor r8d, ecx
xor ebx, r8d
mov r8d, ebx
mov ecx, ebx
xor r8d, r14d
ror ecx, 3
rol r8d, 6
imul r8d, edi
xor r8d, ecx
xor r11d, r8d
movzx r8d, word [rbp + 0x156]
mov ecx, r11d
ror ecx, 0xf
sub ecx, r8d
imul ecx, r14d
xor ebx, ecx
movzx ecx, word [rbp + 0x156]
mov r8d, ebx
xor r8d, ecx
mov ecx, ebx
imul r8d, r14d
shr ecx, 1
xor r8d, ecx
mov ecx, ebx
xor r11d, r8d
shr ecx, 0xf
mov r8d, ebx
sub r8d, edi
rol r8d, 3
imul r8d, r14d
xor r8d, ecx
movzx ecx, word [rbp + 0x152]
xor r11d, r8d
mov r8d, r11d
sub r8d, edi
imul r8d, ecx
mov ecx, r11d
shr ecx, 0xd
sub r8d, ecx
xor ebx, r8d
mov r8d, eax
sub r8d, ebx
mov ecx, ebx
ror r8d, 9
ror ecx, 0xb
imul r8d, edi
xor r8d, ecx
xor r11d, r8d
movzx r8d, word [rbp + 0x156]
mov ecx, r11d
sub ecx, eax
sub ecx, r8d
xor ebx, ecx
mov ecx, ebx
mov r8d, ebx
xor ecx, dword [rsp + 0x48]
ror r8d, 7
imul ecx, r14d
sub ecx, r8d
xor r11d, ecx
movzx ecx, word [rbp + 0x156]
mov r8d, r11d
xor r8d, ecx
movzx ecx, word [rbp + 0x152]
rol r8d, 4
imul r8d, ecx
mov ecx, r11d
ror ecx, 0x10
sub r8d, ecx
xor ebx, r8d
mov r8d, eax
sub r8d, ebx
mov ecx, ebx
ror r8d, 0xa
imul r8d, edi
ror ecx, 4
add r8d, ecx
movzx ecx, word [rbp + 0x156]
xor r11d, r8d
mov r8d, r11d
sub r8d, eax
ror r8d, 4
imul r8d, ecx
mov ecx, r11d
ror ecx, 9
xor r8d, ecx
xor ebx, r8d
mov r8d, ebx
mov ecx, ebx
xor r8d, dword [rbp + 0x154]
rol r8d, 8
imul r8d, r14d
rol ecx, 2
sub r8d, ecx
movzx ecx, word [rbp + 0x152]
xor r11d, r8d
mov r8d, dword [rbp + 0x154]
sub r8d, r11d
ror r8d, 0xb
imul r8d, ecx
mov ecx, r11d
ror ecx, 0xc
sub r8d, ecx
movzx ecx, word [rbp + 0x152]
xor ebx, r8d
mov r8d, ebx
xor r8d, ecx
mov ecx, ebx
imul r8d, edi
shr ecx, 8
xor r8d, ecx
xor r11d, r8d
mov r8, qword [rsp + 0x68]
xor ebx, r11d
xor r11d, r12d
mov byte [rdx - 4], r11b
xor ebx, eax
xor ebx, dword [rbp + 0x154]
mov r12d, r10d
xor ebx, r13d
ror r11d, 8
mov byte [rdx], bl
mov r13d, r9d
mov byte [rdx - 5], r11b
lea rdx, [rdx + 8]
ror ebx, 8
mov byte [rdx - 9], bl
ror r11d, 8
mov byte [rdx - 0xe], r11b
ror ebx, 8
mov byte [rdx - 0xa], bl
ror r11d, 8
ror ebx, 8
mov byte [rdx - 0xf], r11b
mov byte [rdx - 0xb], bl
ror ebx, 8
ror r11d, 8
sub r15, rsi
jne 0x14000920b
mov r15, qword [rbp - 0x38]
mov r12d, 0xc0000023
mov dl, byte [rsp + 0x40]
mov r14, r15
mov rdi, qword [rbp - 0x10]
mov r13, qword [rsp + 0x78]
lea r8, [rdi + 8]
movzx eax, dl
mov qword [rdi + r13], rax
mov qword [rbp + 0x38], r13
mov qword [rbp + 0x100], r8
lea rax, [0x14002c230]
mov ebx, 8
mov qword [rbp + 0x108], rax
mov qword [rbp + 0x110], rbx
lea rdi, [0x14002c190]
mov qword [rbp + 0x118], 0xa0
mov qword [rbp + 0x148], rdi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
lea r8d, [rbx + 0x28]
mov edx, ebx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rbx, rax
test rax, rax
jne 0x1400095cf
mov edi, 0xc0000017
xor r13d, r13d
jmp 0x1400097bc
mov eax, dword [rbp - 0x28]
mov dword [rbx], eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x28]
mov edx, 8
mov r8d, r8d
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rcx, rax
test rax, rax
jne 0x140009610
mov edi, 0xc0000017
xor r13d, r13d
jmp 0x140009705
mov qword [rbx + 8], rcx
mov r8, qword [rbp - 0x28]
mov rdx, r13
mov r8d, r8d
call sub.msvcrt.dll_memcpy
mov r13d, 0xa0
mov dword [rbx + 0x10], r13d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, r13d
mov edx, 8
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
xor r13d, r13d
test rax, rax
jne 0x140009662
mov edi, 0xc0000017
jmp 0x140009705
mov qword [rbx + 0x18], rax
movups xmm0, xmmword [rdi]
mov ecx, 0x80
movups xmmword [rax], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rdi + 0x30]
movups xmmword [rax + 0x30], xmm1
movups xmm0, xmmword [rdi + 0x40]
movups xmmword [rax + 0x40], xmm0
movups xmm1, xmmword [rdi + 0x50]
movups xmmword [rax + 0x50], xmm1
movups xmm0, xmmword [rdi + 0x60]
movups xmmword [rax + 0x60], xmm0
movups xmm1, xmmword [rdi + 0x70]
movups xmmword [rax + rcx - 0x10], xmm1
movups xmm0, xmmword [rdi + rcx]
movups xmmword [rax + rcx], xmm0
movups xmm1, xmmword [rdi + rcx + 0x10]
lea edi, [rcx - 0x78]
movups xmmword [rax + rcx + 0x10], xmm1
mov dword [rbx + 0x20], edi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edx, edi
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rcx, rax
test rax, rax
je 0x140009658
mov qword [rbx + 0x28], rax
mov rax, qword [0x14002c230]
mov r14, rbx
mov qword [rcx], rax
mov edi, r13d
mov rbx, r13
test rbx, rbx
je 0x1400097bc
mov r13, qword [rbx + 8]
test r13, r13
je 0x14000973d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
xor eax, eax
mov qword [rbx + 8], rax
mov r13, qword [rbx + 0x18]
test r13, r13
je 0x14000976c
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
xor eax, eax
mov qword [rbx + 0x18], rax
mov r13, qword [rbx + 0x28]
test r13, r13
je 0x14000979c
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
xor r13d, r13d
mov qword [rbx + 0x28], r13
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
test edi, edi
js 0x1400097d1
mov qword [rbp - 8], r14
mov r14, r13
jmp 0x1400097d1
mov edi, 0xc0000001
xor r13d, r13d
mov rbx, qword [rbp + 0x38]
test rbx, rbx
je 0x1400097fe
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x38], r13
test r14, r14
je 0x1400098ae
mov rbx, qword [r14 + 8]
test rbx, rbx
je 0x140009834
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [r14 + 8], r13
mov rbx, qword [r14 + 0x18]
test rbx, rbx
je 0x140009861
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [r14 + 0x18], r13
mov rbx, qword [r14 + 0x28]
test rbx, rbx
je 0x14000988e
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [r14 + 0x28], r13
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
or edi, 0x10000000
jl 0x14000a7af
mov r14, qword [rbp - 8]
mov ecx, dword [r14]
mov r8d, dword [r14 + 0x20]
add ecx, 4
mov edx, dword [r14 + 0x10]
cmp ecx, 4
jb 0x140009a0a
lea eax, [rcx + 4]
cmp eax, ecx
jb 0x140009a0a
lea ecx, [rax + rdx]
cmp ecx, eax
jb 0x140009a0a
lea eax, [rcx + 4]
cmp eax, ecx
jb 0x140009a0a
lea ecx, [rax + r8]
cmp ecx, eax
jb 0x140009a0a
mov dword [rbp + 0x30], ecx
mov ebx, ecx
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, ebx
mov edx, 8
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rbx, rax
test rax, rax
jne 0x140009942
mov edi, 0xc0000017
mov r9d, 0xc0000095
jmp 0x140009a13
mov eax, dword [r14]
lea rdi, [rbx + 4]
mov dword [rbx], eax
cmp rdi, rbx
jb 0x1400099d7
mov r8d, dword [r14]
mov rcx, rdi
mov rdx, qword [r14 + 8]
call sub.msvcrt.dll_memcpy
mov ecx, dword [r14]
add rcx, rdi
cmp rcx, rdi
jb 0x1400099d7
mov eax, dword [r14 + 0x10]
lea rdi, [rcx + 4]
mov dword [rcx], eax
cmp rdi, rcx
jb 0x1400099d7
mov r8d, dword [r14 + 0x10]
mov rcx, rdi
mov rdx, qword [r14 + 0x18]
call sub.msvcrt.dll_memcpy
mov ecx, dword [r14 + 0x10]
add rcx, rdi
cmp rcx, rdi
jb 0x1400099d7
mov eax, dword [r14 + 0x20]
lea rdi, [rcx + 4]
mov dword [rcx], eax
cmp rdi, rcx
jb 0x1400099d7
mov r8d, dword [r14 + 0x20]
mov rcx, rdi
mov rdx, qword [r14 + 0x28]
call sub.msvcrt.dll_memcpy
mov eax, dword [r14 + 0x20]
add rax, rdi
cmp rax, rdi
jb 0x1400099d7
mov eax, dword [rbp + 0x30]
mov edi, r13d
mov qword [rbp + 0x48], rbx
mov rbx, r13
mov dword [rsp + 0x50], eax
jmp 0x1400099dc
mov edi, 0xc0000095
test rbx, rbx
je 0x140009937
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
jmp 0x140009937
mov r9d, 0xc0000095
mov edi, r9d
or edi, 0x10000000
jl 0x14000a7af
mov dword [rbp + 0x34], r13d
mov dword [rbp + 0x90], 0x30
mov eax, 0x38
mov dword [rbp + 0xa0], eax
mov dword [rbp + 0x94], eax
cmp qword [rsp + 0x38], r13
jne 0x140009a4f
mov edi, 0xc000000d
jmp 0x140009b27
cmp dword [rsp + 0x30], esi
jbe 0x140009a45
mov rax, qword [rsp + 0x38]
mov edx, r13d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x140009b24
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x140009b24
add edx, esi
cmp edx, esi
jb 0x140009a5d
mov r8d, dword [rax]
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x140009b24
test r8d, r8d
mov dword [rbp + 0x34], r8d
mov rax, r13
cmovne rax, rcx
mov qword [rbp + 0x120], rax
cmp dword [rsp + 0x30], 2
jbe 0x140009a45
mov rax, qword [rsp + 0x38]
mov edx, r13d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x140009b24
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x140009b24
add edx, esi
cmp edx, 2
jb 0x140009ab2
mov edx, dword [rax]
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x140009b24
test edx, edx
mov dword [rbp + 0x98], edx
mov rax, r13
cmovne rax, rcx
mov qword [rbp + 0x128], rax
lea eax, [r8 + 0x40]
cmp eax, 0x40
jb 0x140009b24
lea ecx, [rax + 4]
cmp ecx, eax
jb 0x140009b24
lea eax, [rcx + rdx]
cmp eax, ecx
jb 0x140009b24
mov dword [rbp + 0x9c], eax
mov edi, r13d
cmp eax, 0x400000
jbe 0x140009b1e
mov edi, 0x8000ffff
jmp 0x14000a7af
mov dword [rsp + 0x4c], eax
jmp 0x140009b27
mov edi, r9d
test edi, edi
js 0x14000a7af
mov ebx, dword [rsp + 0x4c]
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, ebx
mov edx, 8
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
jne 0x140009b66
mov r14, qword [rbp]
mov edi, 0xd0000017
jmp 0x140009b72
mov r14, rax
mov qword [rbp], rax
mov edi, 0x10000000
test edi, edi
js 0x14000a7af
mov rax, qword [rbp + 0x48]
test rax, rax
jne 0x140009b8d
mov edi, 0x80070057
jmp 0x14000a7af
test r14, r14
je 0x140009b83
mov qword [rbp + 0xe0], rax
lea r8, [rbp + 0xc8]
mov eax, dword [rsp + 0x50]
lea rdx, [0x140027fe0]
mov dword [rbp + 0xf0], eax
mov ecx, esi
mov eax, dword [rsp + 0x4c]
mov dword [rbp + 0xf4], eax
mov qword [rbp + 0xe8], r14
mov dword [rbp + 0xf8], r13d
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
jne 0x140009c04
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
test edi, edi
js 0x140009bfe
mov edi, 0x80004005
mov edx, dword [rsp + 0x4c]
jmp 0x140009c52
mov rcx, qword [rbp + 0xc8]
lea rdx, str.NtQuerySystemInformation
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x140009bdb
xor r9d, r9d
lea rdx, [rbp + 0xe0]
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call qword [0x140027d60]
mov edx, dword [rsp + 0x4c]
mov edi, eax
or edi, 0x10000000
cmovge edx, dword [rbp + 0xf4]
mov dword [rsp + 0x4c], edx
cmp edi, 0xd0000023
jne 0x140009c64
mov edi, 0x8007007a
jmp 0x14000a7af
test edi, edi
js 0x14000a7af
mov qword [rbp - 0x50], r13
mov ebx, 0xc000003e
mov dword [rbp - 0x28], ebx
cmp edx, 4
jae 0x140009c84
mov edi, ebx
jmp 0x14000a05d
mov ecx, dword [r14]
lea r8, [r14 + 4]
mov dword [rsp + 0x60], ecx
cmp r8, r14
jb 0x14000a058
lea eax, [rdx - 4]
cmp eax, ecx
jb 0x140009c7d
lea r10, [rcx + r8]
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x68], r10
cmp r10, r8
jb 0x14000a058
lea r9d, [rcx + 4]
cmp r9d, 4
jb 0x14000a058
mov eax, edx
sub eax, r9d
cmp eax, 4
jb 0x140009c7d
mov edi, dword [r10]
lea r8, [r10 + 4]
cmp r8, r10
jb 0x14000a058
lea r10d, [r9 + 4]
cmp r10d, r9d
jb 0x14000a058
mov eax, edx
sub eax, r10d
cmp eax, edi
jb 0x140009c7d
lea r11, [r8 + rdi]
cmp r11, r8
jb 0x14000a058
lea r9d, [r10 + rdi]
cmp r9d, r10d
jb 0x14000a058
mov eax, edx
sub eax, r9d
cmp eax, 4
jb 0x140009c7d
mov r13d, dword [r11]
lea rax, [r11 + 4]
mov qword [rbp - 0x58], rax
cmp rax, r11
jb 0x14000a055
lea r8d, [r9 + 4]
cmp r8d, r9d
jb 0x14000a055
mov eax, edx
sub eax, r8d
cmp eax, r13d
jae 0x140009d51
mov edi, ebx
xor r13d, r13d
jmp 0x14000a05d
lea r9d, [r8 + r13]
cmp r9d, r8d
jb 0x14000a055
cmp edx, r9d
jne 0x140009d47
add ecx, edi
mov eax, edx
add ecx, r13d
add rcx, 0xc
cmp rcx, rax
jne 0x140009d47
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 0x28]
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
xor ecx, ecx
mov r14, rax
test rax, rax
jne 0x140009dae
mov edi, 0xc0000017
xor r13d, r13d
jmp 0x140009f82
mov r15, qword [rbp]
add r15, 4
je 0x140009e0e
mov eax, dword [rsp + 0x60]
mov dword [r14], eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rsp + 0x78]
mov edx, 8
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
jne 0x140009df6
mov edi, 0xc0000017
xor r13d, r13d
jmp 0x140009ed2
mov qword [r14 + 8], rax
mov r8, qword [rsp + 0x78]
mov rdx, r15
mov rcx, rax
call sub.msvcrt.dll_memcpy
xor ecx, ecx
jmp 0x140009e14
mov dword [rax], ecx
mov qword [rax + 8], rcx
mov r15, qword [rsp + 0x68]
add r15, 4
je 0x140009e5f
mov dword [r14 + 0x10], edi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
mov edx, 8
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
je 0x140009de9
mov qword [r14 + 0x18], rax
mov r8, rdi
mov rdx, r15
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x140009e67
mov dword [r14 + 0x10], ecx
mov qword [r14 + 0x18], rcx
mov rdi, qword [rbp - 0x58]
test rdi, rdi
je 0x140009ebd
mov dword [r14 + 0x20], r13d
mov r15, r13
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
mov edx, 8
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
xor r13d, r13d
test rax, rax
jne 0x140009ea9
mov edi, 0xc0000017
jmp 0x140009ed2
mov qword [r14 + 0x28], rax
mov r8, r15
mov rdx, rdi
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x140009ec8
xor r13d, r13d
mov dword [r14 + 0x20], r13d
mov qword [r14 + 0x28], r13
mov qword [rbp - 0x50], r14
mov edi, r13d
mov r14, r13
test r14, r14
je 0x140009f82
mov r15, qword [r14 + 8]
test r15, r15
je 0x140009f08
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [r14 + 8], r13
mov r15, qword [r14 + 0x18]
test r15, r15
je 0x140009f35
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [r14 + 0x18], r13
mov r15, qword [r14 + 0x28]
test r15, r15
je 0x140009f62
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [r14 + 0x28], r13
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov r15, qword [rbp - 0x50]
test edi, edi
mov r14, r13
cmovs r14, qword [rbp - 0x50]
cmovs r15, r13
mov qword [rbp - 0x38], r15
test r14, r14
je 0x14000a05d
mov r13, qword [r14 + 8]
test r13, r13
je 0x140009fd0
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
xor eax, eax
mov qword [r14 + 8], rax
mov r13, qword [r14 + 0x18]
test r13, r13
je 0x140009fff
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
xor eax, eax
mov qword [r14 + 0x18], rax
mov r13, qword [r14 + 0x28]
test r13, r13
je 0x14000a02f
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
xor r13d, r13d
mov qword [r14 + 0x28], r13
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp - 0x38], r15
jmp 0x14000a05d
xor r13d, r13d
mov edi, 0xc0000095
or edi, 0x10000000
jl 0x14000a7af
xor ecx, ecx
mov qword [rbp - 0x60], r13
mov qword [rbp - 0x58], r13
mov r14, r13
test r15, r15
jne 0x14000a085
mov edi, 0xd000000d
jmp 0x14000a7af
mov rax, qword [r15 + 8]
mov qword [rsp + 0x68], rax
test rax, rax
je 0x14000a07b
cmp dword [r15], ecx
je 0x14000a07b
mov edi, dword [r15]
test rdi, rdi
je 0x14000a5f9
add rdi, 0xfffffffffffffff8
mov qword [rbp - 0x50], rdi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
xor ecx, ecx
mov qword [rsp + 0x78], rax
mov r11, rax
test rax, rax
je 0x14000a5f5
mov r10, qword [rbp - 0x50]
movabs r8, 0x7f1137fab69605e
mov rdi, qword [rsp + 0x68]
mov r9, r10
mov byte [rsp + 0x40], cl
mov dl, cl
mov qword [rbp + 0x158], r8
mov r14d, ecx
mov qword [rbp - 0x10], rdi
mov dword [rsp + 0x50], ecx
and r9d, 7
je 0x14000a21d
mov dword [rbp - 0x78], ecx
mov eax, ecx
mov dword [rsp + 0x48], ecx
test r9d, r9d
je 0x14000a178
mov r8d, ecx
lea edx, [rcx + 0x38]
movzx eax, byte [rdi]
inc rdi
cmp ecx, 4
jge 0x14000a140
lea ecx, [rdx - 0x20]
shl eax, cl
or r8d, eax
jmp 0x14000a147
mov ecx, edx
shl eax, cl
or r14d, eax
mov ecx, dword [rsp + 0x48]
sub edx, 8
add ecx, esi
mov dword [rsp + 0x48], ecx
cmp ecx, r9d
jl 0x14000a12b
mov dl, byte [rsp + 0x40]
mov dword [rsp + 0x50], r8d
movabs r8, 0x7f1137fab69605e
mov eax, dword [rsp + 0x50]
mov dword [rbp - 0x78], r14d
mov qword [rbp - 0x10], rdi
and dword [rsp + 0x60], 0
mov edi, eax
xor edi, 0x92f65a5
xor r14d, 0x699a899c
mov eax, edi
mov ecx, r14d
test r9d, r9d
je 0x14000a1e5
mov r10d, dword [rsp + 0x60]
mov r8, r11
lea r13, [r8 + 1]
mov qword [rsp + 0x60], r13
cmp r10d, 4
jge 0x14000a1b5
rol eax, 8
mov r13d, eax
jmp 0x14000a1bb
rol ecx, 8
mov r13d, ecx
mov byte [r8], r13b
add r10d, esi
mov r13, qword [rsp + 0x60]
mov r8, r13
cmp r10d, r9d
jl 0x14000a19e
mov r10, qword [rbp - 0x50]
mov rax, r13
mov r13, qword [rbp - 0x58]
movabs r8, 0x7f1137fab69605e
jmp 0x14000a1e8
mov rax, r11
cmp r9d, 4
jbe 0x14000a201
mov ecx, 8
sub ecx, r9d
shl ecx, 3
shr r14d, cl
shl r14d, cl
jmp 0x14000a21f
xor ecx, ecx
mov r14d, ecx
cmp r9d, 4
jae 0x14000a21f
mov ecx, 4
sub ecx, r9d
shl ecx, 3
shr edi, cl
shl edi, cl
jmp 0x14000a21f
mov edi, ecx
mov rcx, r10
shr rcx, 3
mov qword [rbp + 0x40], rcx
test rcx, rcx
je 0x14000a568
mov r15d, dword [rbp + 0x15c]
lea rbx, [rax + 7]
mov r12d, dword [rbp - 0x78]
mov r13d, dword [rsp + 0x50]
mov rdx, qword [rbp + 0x40]
movzx ecx, r15w
mov dword [rsp + 0x48], ecx
movzx ecx, word [rbp + 0x15a]
mov dword [rsp + 0x60], ecx
movzx ecx, r8w
mov dword [rsp + 0x44], ecx
mov rcx, qword [rbp - 0x10]
add rcx, 2
movzx eax, byte [rcx - 1]
movzx r11d, byte [rcx - 2]
movzx r10d, byte [rcx + 2]
shl r11d, 8
or r11d, eax
shl r10d, 8
movzx eax, byte [rcx]
shl r11d, 8
or r11d, eax
movzx eax, byte [rcx + 1]
shl r11d, 8
or r11d, eax
movzx eax, byte [rcx + 3]
or r10d, eax
xor edi, r11d
movzx eax, byte [rcx + 4]
shl r10d, 8
or r10d, eax
movzx eax, byte [rcx + 5]
add rcx, 8
shl r10d, 8
mov qword [rbp + 0x40], rcx
or r10d, eax
xor r14d, r10d
xor r14d, edi
xor r14d, r8d
xor r14d, r15d
mov eax, r14d
mov r9d, r14d
sub eax, r8d
rol r14d, 0xa
rol eax, 5
imul eax, dword [rsp + 0x48]
add eax, r14d
mov r14d, dword [rsp + 0x48]
xor edi, eax
movzx eax, word [rbp + 0x15a]
lea ecx, [rdi + r15]
ror ecx, 9
imul ecx, eax
mov eax, edi
rol eax, 2
sub ecx, eax
xor r9d, ecx
mov ecx, r9d
mov eax, r9d
sub ecx, r14d
shr eax, 0xd
imul ecx, dword [rsp + 0x44]
sub ecx, eax
movzx eax, word [rbp + 0x15e]
xor edi, ecx
movzx ecx, word [rbp + 0x15a]
xor ecx, edi
rol ecx, 6
imul ecx, eax
mov eax, edi
rol eax, 2
sub ecx, eax
mov eax, r15d
xor r9d, ecx
mov ecx, r8d
xor ecx, r9d
sub eax, ecx
xor edi, eax
mov eax, r14d
xor eax, edi
mov ecx, edi
imul eax, dword [rsp + 0x60]
ror ecx, 6
xor ecx, eax
xor r9d, ecx
mov eax, r9d
rol eax, 2
lea ecx, [r9 + r15]
ror ecx, 0xf
imul ecx, dword [rsp + 0x44]
add ecx, eax
xor edi, ecx
mov ecx, edi
sub ecx, r8d
movzx eax, word [rbp + 0x15e]
ror ecx, 0xe
imul ecx, eax
mov eax, edi
rol eax, 8
sub ecx, eax
xor r9d, ecx
mov ecx, r9d
mov eax, r9d
xor ecx, r8d
ror eax, 0xa
ror ecx, 0xc
imul ecx, r14d
movzx r14d, word [rbp + 0x15e]
xor ecx, eax
movzx eax, word [rbp + 0x15a]
xor edi, ecx
mov ecx, edi
xor ecx, r14d
imul ecx, eax
mov eax, edi
shr eax, 0xa
xor ecx, eax
xor r9d, ecx
mov eax, r9d
not eax
ror eax, 5
add eax, dword [rsp + 0x44]
imul eax, r14d
xor edi, eax
movzx eax, word [rbp + 0x15e]
mov r14d, edi
sub r14d, eax
xor r14d, r9d
mov r9d, dword [rsp + 0x48]
xor r14d, r8d
mov ecx, r14d
xor ecx, eax
mov eax, r14d
rol ecx, 2
imul ecx, r9d
shr eax, 2
add ecx, eax
movzx eax, word [rbp + 0x15a]
xor edi, ecx
mov ecx, edi
sub ecx, r15d
ror ecx, 6
imul ecx, eax
mov eax, edi
rol eax, 7
add ecx, eax
mov eax, r9d
xor r14d, ecx
xor eax, r14d
mov ecx, r14d
imul eax, dword [rsp + 0x44]
ror ecx, 9
add ecx, eax
movzx eax, word [rbp + 0x15e]
xor edi, ecx
movzx ecx, word [rbp + 0x15a]
xor ecx, edi
rol ecx, 5
imul ecx, eax
mov eax, edi
rol eax, 7
add ecx, eax
xor r14d, ecx
movzx ecx, word [rbp + 0x15a]
xor edi, r14d
xor edi, r8d
xor edi, r15d
mov eax, edi
ror eax, 3
sub eax, ecx
imul eax, r9d
xor r14d, eax
mov ecx, r14d
sub ecx, r15d
ror ecx, 1
imul ecx, dword [rsp + 0x44]
mov eax, r14d
ror eax, 6
sub ecx, eax
movzx eax, word [rbp + 0x15e]
xor edi, ecx
lea ecx, [rdi + r8]
rol ecx, 3
imul ecx, eax
mov eax, edi
rol eax, 0xe
add ecx, eax
xor r14d, ecx
mov eax, r14d
ror eax, 0xe
lea ecx, [r14 + r8]
rol ecx, 0xf
imul ecx, r9d
sub ecx, eax
movzx eax, word [rbp + 0x15a]
xor edi, ecx
mov ecx, dword [rsp + 0x44]
xor ecx, edi
imul ecx, eax
mov eax, edi
shr eax, 3
xor ecx, eax
xor r14d, ecx
mov ecx, r14d
mov eax, r14d
xor r14d, r12d
rol eax, 2
xor ecx, r15d
mov r12d, r10d
rol ecx, 4
imul ecx, dword [rsp + 0x44]
xor ecx, eax
xor ecx, r13d
mov r13d, r11d
xor edi, ecx
mov rcx, qword [rbp + 0x40]
mov byte [rbx - 4], dil
mov byte [rbx], r14b
lea rbx, [rbx + 8]
ror edi, 8
mov byte [rbx - 0xd], dil
ror r14d, 8
mov byte [rbx - 9], r14b
ror edi, 8
mov byte [rbx - 0xe], dil
ror r14d, 8
mov byte [rbx - 0xa], r14b
ror edi, 8
ror r14d, 8
mov byte [rbx - 0xf], dil
mov byte [rbx - 0xb], r14b
ror r14d, 8
ror edi, 8
sub rdx, rsi
jne 0x14000a26e
mov dl, byte [rsp + 0x40]
mov r12d, 0xc0000023
mov ebx, dword [rbp - 0x28]
mov r15, qword [rbp - 0x38]
mov r13, qword [rbp - 0x58]
mov r10, qword [rbp - 0x50]
mov r11, qword [rsp + 0x78]
xor ecx, ecx
mov eax, ecx
test r10, r10
je 0x14000a57d
xor dl, byte [rax + r11]
add rax, rsi
cmp rax, r10
jb 0x14000a571
mov rcx, qword [rsp + 0x68]
movzx eax, dl
cmp rax, qword [r10 + rcx]
je 0x14000a598
mov r14, qword [rbp - 0x60]
mov edi, 0xc004d501
xor ecx, ecx
jmp 0x14000a5ae
xor ecx, ecx
mov qword [rbp - 0x60], r11
mov r14, r11
mov qword [rsp + 0x78], rcx
mov r11d, ecx
mov edi, ecx
mov r13, r10
test r11, r11
je 0x14000a5db
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rsp + 0x78]
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov r14, qword [rbp - 0x60]
xor ecx, ecx
test edi, edi
js 0x14000a5f9
mov qword [rbp + 0x50], r14
mov edi, 0x10000000
mov r14, rcx
mov qword [rbp - 0x60], rcx
mov dword [rbp - 0x74], r13d
jmp 0x14000a602
mov r14, qword [rbp - 0x60]
mov r13d, dword [rbp - 0x74]
mov edi, 0xd0000001
test r14, r14
je 0x14000a632
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov r13d, dword [rbp - 0x74]
xor r14d, r14d
mov qword [rbp - 0x60], r14
test edi, edi
js 0x14000a7af
cmp r13d, 4
jae 0x14000a647
mov edi, ebx
jmp 0x14000a7ab
mov r9, qword [rbp + 0x50]
mov r10d, dword [r9]
lea rcx, [r9 + 4]
mov dword [rbp + 0x150], r10d
cmp rcx, r9
jb 0x14000a7a6
lea eax, [r13 - 4]
cmp eax, 4
jb 0x14000a640
mov r14d, dword [rcx]
lea rdi, [rcx + 4]
cmp rdi, rcx
jb 0x14000a7a6
lea eax, [r13 - 8]
cmp eax, r14d
jb 0x14000a640
lea eax, [r14 + 8]
cmp eax, 8
jb 0x14000a7a6
mov ecx, r13d
lea rdx, [rdi + r14]
mov r8d, r14d
lea rax, [r9 + rcx]
cmp rax, rdx
jb 0x14000a640
mov rax, r9
sub rax, rdi
sub rax, r14
add rax, rcx
cmp rax, 8
jae 0x14000a640
xor eax, eax
mov dword [rsp + 0x48], eax
mov r13d, eax
mov r9d, eax
test rdi, rdi
je 0x14000a733
mov rcx, rdi
cmp rdx, rdi
jb 0x14000a7a6
jbe 0x14000a72e
lea rax, [rcx + 4]
cmp rax, rcx
jb 0x14000a7a6
cmp rax, rdx
ja 0x14000a71d
mov eax, dword [rcx]
add eax, 4
cmp eax, 4
jb 0x14000a727
mov dword [rbp + 0xdc], eax
mov r10d, eax
add r10, rcx
cmp r10, rcx
jb 0x14000a7a6
mov rcx, r10
cmp r10, rdx
ja 0x14000a71d
add r9d, esi
mov dword [rsp + 0x48], r9d
cmp rcx, rdx
jae 0x14000a731
jmp 0x14000a6d5
mov edi, 0xc000000d
jmp 0x14000a7ab
mov edi, 0xc0000095
jmp 0x14000a792
cmp rcx, rdx
jne 0x14000a71d
test r14d, r14d
je 0x14000a76d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r14
mov edx, 8
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov r13, rax
test rax, rax
jne 0x14000a76a
mov edi, 0xc0000017
jmp 0x14000a792
mov r8, r14
test rdi, rdi
je 0x14000a77d
mov rdx, rdi
mov rcx, r13
call sub.msvcrt.dll_memcpy
mov eax, dword [rsp + 0x48]
mov dword [rbp - 0x70], eax
mov qword [rbp - 0x68], r13
mov dword [rbp - 0x6c], r14d
xor r14d, r14d
mov edi, r14d
test edi, edi
js 0x14000a7ab
mov eax, dword [rbp + 0x150]
cmp eax, dword [rbp - 0x70]
je 0x14000a7ab
jmp 0x14000a640
mov edi, 0xc0000095
bts edi, 0x1c
mov rbx, qword [rbp - 0x80]
test rbx, rbx
je 0x14000a7d8
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov r14, qword [rbp - 8]
xor r13d, r13d
test r14, r14
je 0x14000a896
mov rbx, qword [r14 + 8]
test rbx, rbx
je 0x14000a815
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [r14 + 8], r13
mov rbx, qword [r14 + 0x18]
test rbx, rbx
je 0x14000a842
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [r14 + 0x18], r13
mov rbx, qword [r14 + 0x28]
test rbx, rbx
je 0x14000a86f
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [r14 + 0x28], r13
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
xor r14d, r14d
mov qword [rbp - 8], r14
mov rbx, qword [rbp + 0x48]
test rbx, rbx
je 0x14000a8bf
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov rbx, qword [rbp]
test rbx, rbx
je 0x14000a8e8
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
test r15, r15
je 0x14000a998
mov rbx, qword [r15 + 8]
test rbx, rbx
je 0x14000a91e
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [r15 + 8], r14
mov rbx, qword [r15 + 0x18]
test rbx, rbx
je 0x14000a94b
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [r15 + 0x18], r14
mov rbx, qword [r15 + 0x28]
test rbx, rbx
je 0x14000a978
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [r15 + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov rbx, qword [rbp + 0x50]
test rbx, rbx
je 0x14000a9c1
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov ebx, edi
test edi, edi
js 0x14000861c
cmp dword [rbp - 0x70], 3
je 0x14000a9db
mov ebx, 0xc004d501
jmp 0x14000861c
cmp qword [rbp - 0x68], r14
jne 0x14000a9ee
mov ebx, 0xc000000d
mov r9d, 0xc0000095
jmp 0x14000aa36
mov rdi, qword [rbp - 0x68]
mov ecx, dword [rdi]
lea rdx, [rdi + 4]
cmp rdx, rdi
jb 0x14000aa2d
test ecx, ecx
mov dword [rbp + 0xd8], ecx
mov rax, r14
cmovne rax, rdx
mov qword [rbp + 0x130], rax
mov ebx, r14d
cmp ecx, 4
jne 0x140008dc3
mov ecx, dword [rax]
mov r9d, 0xc0000095
mov dword [rsp + 0x70], ecx
jmp 0x14000aa3a
mov r9d, 0xc0000095
mov ebx, r9d
mov ecx, dword [rsp + 0x70]
test ebx, ebx
js 0x14000861c
mov ebx, ecx
test ecx, ecx
js 0x14000861c
cmp qword [rbp - 0x68], r14
jne 0x14000aa59
mov ebx, 0xc000000d
jmp 0x14000aab5
mov rax, qword [rbp - 0x68]
mov edx, r14d
lea r8, [rax + 4]
cmp r8, rax
jb 0x14000aab2
mov eax, dword [rax]
add rax, r8
cmp rax, r8
jb 0x14000aab2
add edx, esi
cmp edx, esi
jb 0x14000aa60
mov edx, dword [rax]
lea r8, [rax + 4]
cmp r8, rax
jb 0x14000aab2
test edx, edx
mov dword [rbp + 0xa8], edx
mov rax, r14
cmovne rax, r8
mov qword [rbp + 0x138], rax
mov ebx, r14d
cmp edx, 8
jne 0x140008dc3
mov rax, qword [rax]
mov qword [rbp + 0xd0], rax
jmp 0x14000aab5
mov ebx, r9d
test ebx, ebx
js 0x14000861c
mov rax, qword [rbp + 0xd0]
cmp qword [rbp + 0x58], rax
jne 0x14000a9d1
cmp qword [rbp - 0x68], r14
jne 0x14000aade
mov ebx, 0xc000000d
jmp 0x14000861c
mov rax, qword [rbp - 0x68]
mov edx, r14d
lea r8, [rax + 4]
cmp r8, rax
jb 0x14000ab3f
mov eax, dword [rax]
add rax, r8
cmp rax, r8
jb 0x14000ab3f
add edx, esi
cmp edx, 2
jb 0x14000aae5
mov edx, dword [rax]
lea r8, [rax + 4]
cmp r8, rax
jb 0x14000ab3f
test edx, edx
mov dword [rbp + 0xa4], edx
mov rax, r14
cmovne rax, r8
mov qword [rbp + 0x140], rax
mov ebx, r14d
cmp edx, 0x10
je 0x14000ab32
mov ebx, 0x8007000d
jmp 0x14000861c
movups xmm0, xmmword [rax]
movdqu xmmword [rbp + 0x160], xmm0
jmp 0x14000ab69
mov ebx, r9d
jmp 0x14000861c
or qword [rbp - 0x20], 0xffffffffffffffff
mov ebx, edi
jmp 0x14000861c
or qword [rbp - 0x18], 0xffffffffffffffff
mov ebx, 0xc0000095
jmp 0x14000861c
mov ecx, dword [rsp + 0x70]
xor r14d, r14d
test ebx, ebx
js 0x14000861c
test ecx, ecx
cmovne ebx, ecx
jmp 0x14000861c