Function at 0x1400f2064
Capabilities:
Check for software breakpoints
Encode data using xor
Execute anti-debugging instructions

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x170]
sub rsp, 0x270
mov rax, qword [0x140448b38]
xor rax, rsp
mov qword [rbp + 0x160], rax
mov rbx, r8
lea rcx, [rbp + 0xd0]
mov rdi, rdx
mov r8d, 0x82
xor edx, edx
call sub.msvcrt.dll_memset
and qword [rbp + 0x20], 0
lea rdx, [rbp + 8]
mov rcx, rbx
call fcn.14007fb54
mov ebx, eax
test eax, eax
jns 0x1400f20d1
mov ecx, eax
call fcn.140082a8c
jmp 0x1400f45a9
cmp dword [rbp + 8], 0
je 0x1400f45a9
mov rax, qword [rdi]
mov rbx, qword [rax + 0x30]
mov rax, qword [0x1403cf6d0]
mov rcx, rbx
call rax
mov rax, rbx
lea r8, [rbp + 0x88]
lea rdx, str.SppBindingSkuId
mov rcx, rdi
call rax
mov ebx, eax
test eax, eax
js 0x1400f20c5
cmp dword [rbp + 0x90], 2
je 0x1400f211c
mov ebx, 0x8007070c
mov ecx, ebx
jmp 0x1400f20c7
mov rcx, qword [rbp + 0x98]
lea r8, [rbp + 0x20]
lea rdx, str.SppPkeyBindingPid4
call fcn.1400f50e8
mov ebx, eax
test eax, eax
js 0x1400f20c5
mov rax, qword [rbp + 0x20]
lea r9, [rbp + 0xd0]
lea r8, [rbp + 0xc]
xor edx, edx
mov rcx, qword [rax + 0x10]
add rcx, 0x378
mov dword [rbp + 0xc], 0x41
call fcn.1401ae428
mov ebx, eax
test eax, eax
js 0x1400f20c5
xor r15d, r15d
xor r14d, r14d
and qword [rsp + 0x48], r14
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
lea ebx, [r15 + 8]
mov r8d, 0xa0
mov rcx, rax
mov edx, ebx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdx, rax
test rax, rax
je 0x1400f23a0
lea r8d, [rbx + 0x78]
mov r15, rdx
lea rax, [0x140000000]
mov rsi, rdx
lea rax, [rax + 0x448c50]
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 xmm0, xmmword [rax + 0x70]
movups xmmword [rdx + r8 - 0x10], xmm0
movups xmm1, xmmword [rax + r8]
movups xmmword [rdx + r8], xmm1
movups xmm0, xmmword [rax + r8 + 0x10]
movups xmmword [rdx + r8 + 0x10], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, ebx
mov edx, ebx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rcx, rax
test rax, rax
je 0x1400f23a0
mov rax, qword [0x140448b90]
mov r14, rcx
mov qword [rcx], rax
rdtsc
shl rdx, 0x20
or rax, rdx
mov r12, rax
mov qword [rsp + 0x68], rax
xor ecx, ecx
mov ebx, 0xc0000095
neg cl
sbb edi, edi
and edi, ebx
add edi, 0x10000000
mov r13, r14
js 0x1400f4513
lea r8, [rbp + 0x10]
mov edx, 0x7fffffff
lea rcx, [rbp + 0xd0]
mov edi, 0xcc
call fcn.1400fceb8
test eax, eax
jns 0x1400f2299
and qword [rbp + 0x10], 0
mov edi, 0xc000003e
jmp 0x1400f4513
mov rax, qword [rbp + 0x10]
inc rax
mov qword [rbp + 0x10], rax
lea ecx, [rax*2 + 4]
cmp ecx, 4
jb 0x1400f4511
lea eax, [rcx + rdi]
or ecx, 0xffffffff
cmp eax, edi
mov dword [rbp - 0x28], ecx
mov ebx, ecx
cmovae ebx, eax
sbb edi, edi
and edi, 0xc0000095
add edi, 0x10000000
cmp eax, 0xcc
jb 0x1400f4503
lea r8, [rbp + 0x18]
mov edx, 0x7fffffff
lea rcx, [0x1403da578]
call fcn.1400fceb8
test eax, eax
jns 0x1400f22fd
and qword [rbp + 0x18], 0
jmp 0x1400f228f
mov rax, qword [rbp + 0x18]
inc rax
mov qword [rbp + 0x18], rax
lea ecx, [rax*2 + 4]
cmp ecx, 4
jb 0x1400f44fc
lea eax, [rcx + rbx]
or r8d, 0xffffffff
cmp eax, ebx
mov edx, r8d
mov r9d, 0xc0000095
mov r10d, 0x10000000
cmovae edx, eax
sbb edi, edi
and edi, r9d
add edi, r10d
cmp eax, ebx
jb 0x1400f4503
lea eax, [rdx + 4]
mov ecx, r8d
cmp eax, edx
cmovae ecx, eax
sbb edi, edi
and edi, r9d
add edi, r10d
cmp eax, edx
jb 0x1400f4503
lea eax, [rcx + 8]
mov edx, r8d
cmp eax, ecx
cmovae edx, eax
sbb edi, edi
and edi, r9d
add edi, r10d
cmp eax, ecx
jb 0x1400f4503
mov dword [rsp + 0x44], edx
mov ebx, edx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, ebx
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
xor edi, edi
mov rdx, rax
test rax, rax
jne 0x1400f23aa
mov edi, 0xc0000017
jmp 0x1400f4513
mov qword [rsp + 0x48], rdx
mov dword [rsp + 0x40], edi
lea r8, [rax + 4]
cmp r8, rdx
jb 0x1400f44fc
mov ecx, dword [rsp + 0x44]
add rax, 8
add rcx, rdx
cmp rax, rcx
jbe 0x1400f23da
mov edi, 0xc0000023
jmp 0x1400f4513
mov dword [rdx], 4
mov dword [r8], 0x6d
mov ecx, dword [rsp + 0x40]
inc ecx
mov dword [rsp + 0x40], ecx
cmp qword [rsp + 0x48], rdi
jne 0x1400f2428
mov r8d, 0xa4
add r8d, dword [rsp + 0x44]
cmp r8d, dword [rsp + 0x44]
jb 0x1400f44fc
inc ecx
mov dword [rsp + 0x44], r8d
mov dword [rsp + 0x40], ecx
mov ebx, 8
mov qword [rsp + 0x68], r12
jmp 0x1400f24cd
mov rdx, qword [rsp + 0x48]
mov r8d, edi
mov r9d, 0xa0
mov ebx, 8
test ecx, ecx
je 0x1400f246c
mov qword [rsp + 0x68], r12
mov eax, dword [rdx]
add eax, 4
cmp eax, 4
jb 0x1400f44fc
mov r10d, eax
add r10, rdx
cmp r10, rdx
jb 0x1400f44fc
inc r8d
mov rdx, r10
cmp r8d, ecx
jb 0x1400f2444
lea r10, [rdx + 4]
cmp r10, rdx
jb 0x1400f44fc
mov ecx, dword [rsp + 0x44]
lea rax, [rdx + 4]
add rcx, qword [rsp + 0x48]
mov r8d, r9d
add rax, r8
cmp rax, rcx
ja 0x1400f23d0
mov dword [rdx], r9d
test r15, r15
je 0x1400f24a8
mov rdx, r15
mov rcx, r10
call sub.msvcrt.dll_memcpy
mov ecx, dword [rsp + 0x40]
inc ecx
mov dword [rsp + 0x40], ecx
test r14, r14
jne 0x1400f24c0
test ebx, ebx
je 0x1400f24c8
jmp 0x1400f448f
test ebx, ebx
je 0x1400f448f
mov r8d, dword [rsp + 0x44]
mov r13d, 4
cmp qword [rsp + 0x48], rdi
jne 0x1400f24fa
add ebx, r13d
cmp ebx, r13d
jb 0x1400f44fc
lea edx, [r8 + rbx]
cmp edx, r8d
jb 0x1400f44fc
inc ecx
jmp 0x1400f2585
mov rdx, qword [rsp + 0x48]
mov r9d, edi
test ecx, ecx
je 0x1400f252e
mov eax, dword [rdx]
add eax, r13d
cmp eax, r13d
jb 0x1400f44fc
mov r10d, eax
add r10, rdx
cmp r10, rdx
jb 0x1400f44fc
inc r9d
mov rdx, r10
cmp r9d, ecx
jb 0x1400f2506
lea r9, [rdx + 4]
mov qword [rsp + 0x68], r12
cmp r9, rdx
jb 0x1400f44fc
mov r10d, ebx
lea rax, [rdx + 4]
mov ecx, r8d
add rax, r10
add rcx, qword [rsp + 0x48]
cmp rax, rcx
ja 0x1400f23d0
mov dword [rdx], ebx
test r14, r14
je 0x1400f2570
mov r8d, r10d
mov rdx, r14
mov rcx, r9
call sub.msvcrt.dll_memcpy
mov ecx, dword [rsp + 0x40]
inc ecx
mov dword [rsp + 0x40], ecx
cmp qword [rsp + 0x48], rdi
jne 0x1400f2597
mov edx, dword [rsp + 0x44]
lea eax, [rdx + 0xc]
cmp eax, edx
jb 0x1400f44fc
inc ecx
jmp 0x1400f2617
mov rdx, qword [rsp + 0x48]
xor r9d, r9d
mov r8, r12
test ecx, ecx
je 0x1400f25ce
mov eax, dword [rdx]
add eax, 4
cmp eax, r13d
jb 0x1400f44fc
mov r10d, eax
add r10, rdx
cmp r10, rdx
jb 0x1400f44fc
inc r9d
mov rdx, r10
cmp r9d, ecx
jb 0x1400f25a6
lea r11, [rdx + 4]
cmp r11, rdx
jb 0x1400f44fc
mov ecx, dword [rsp + 0x44]
lea rax, [rdx + 0xc]
add rcx, qword [rsp + 0x48]
cmp rax, rcx
ja 0x1400f23d0
mov dword [rdx], 8
mov qword [r11], r12
mov ecx, dword [rsp + 0x40]
inc ecx
mov dword [rsp + 0x40], ecx
mov r12, r8
mov qword [rsp + 0x68], r8
cmp qword [rsp + 0x48], rdi
jne 0x1400f262e
mov eax, dword [rsp + 0x44]
lea edx, [rax + 8]
cmp edx, eax
jb 0x1400f44fc
inc ecx
mov dword [rsp + 0x44], edx
mov dword [rsp + 0x40], ecx
jmp 0x1400f269d
mov rdx, qword [rsp + 0x48]
mov r11d, edi
mov qword [rsp + 0x68], r12
test ecx, ecx
je 0x1400f266c
mov qword [rsp + 0x68], r12
mov eax, dword [rdx]
add eax, 4
cmp eax, r13d
jb 0x1400f44fc
mov r8d, eax
add r8, rdx
cmp r8, rdx
jb 0x1400f44fc
inc r11d
mov rdx, r8
cmp r11d, ecx
jb 0x1400f2644
lea r8, [rdx + 4]
cmp r8, rdx
jb 0x1400f44fc
mov ecx, dword [rsp + 0x44]
lea rax, [rdx + 8]
add rcx, qword [rsp + 0x48]
cmp rax, rcx
ja 0x1400f23d0
mov dword [rdx], r13d
mov dword [r8], 3
inc dword [rsp + 0x40]
mov ebx, 0x7fffffff
lea r8, [rbp]
mov edx, ebx
lea rcx, [rbp + 0xd0]
call fcn.1400fceb8
test eax, eax
jns 0x1400f26c1
mov qword [rbp], rdi
jmp 0x1400f228f
mov rax, qword [rbp]
lea rcx, [rax + 1]
cmp rcx, rax
jb 0x1400f44f7
lea r8d, [rcx + rcx]
mov qword [rbp], rcx
test r8d, r8d
je 0x1400f448f
cmp qword [rsp + 0x48], rdi
jne 0x1400f270d
add r8d, 4
cmp r8d, r13d
jb 0x1400f44fc
mov eax, dword [rsp + 0x44]
lea ecx, [r8 + rax]
cmp ecx, eax
jb 0x1400f44fc
mov dword [rsp + 0x44], ecx
jmp 0x1400f2783
mov r10d, dword [rsp + 0x40]
mov ecx, edi
mov rdx, qword [rsp + 0x48]
test r10d, r10d
je 0x1400f2745
mov eax, dword [rdx]
add eax, 4
cmp eax, r13d
jb 0x1400f44fc
mov r9d, eax
add r9, rdx
cmp r9, rdx
jb 0x1400f44fc
inc ecx
mov rdx, r9
cmp ecx, r10d
jb 0x1400f271e
lea r9, [rdx + 4]
cmp r9, rdx
jb 0x1400f44fc
mov ecx, dword [rsp + 0x44]
lea rax, [r8 + 4]
add rcx, qword [rsp + 0x48]
add rax, rdx
mov r10d, r8d
cmp rax, rcx
ja 0x1400f23d0
mov dword [rdx], r8d
mov rcx, r9
mov r8d, r10d
lea rdx, [rbp + 0xd0]
call sub.msvcrt.dll_memcpy
inc dword [rsp + 0x40]
lea r8, [rbp - 8]
mov rdx, rbx
lea rcx, [0x1403da578]
call fcn.1400fceb8
test eax, eax
jns 0x1400f27a7
mov qword [rbp - 8], rdi
jmp 0x1400f228f
mov rax, qword [rbp - 8]
lea rcx, [rax + 1]
cmp rcx, rax
jb 0x1400f44f0
lea r8d, [rcx + rcx]
mov qword [rbp - 8], rcx
test r8d, r8d
je 0x1400f448f
cmp qword [rsp + 0x48], rdi
jne 0x1400f2806
add r8d, 4
cmp r8d, r13d
jb 0x1400f44fc
mov ebx, dword [rsp + 0x44]
lea rdx, [0x14044d198]
lea rcx, [0x1404256dc]
lea edi, [r8 + rbx]
call fcn.1400f74d8
cmp edi, ebx
jb 0x1400f44fc
mov dword [rsp + 0x44], edi
jmp 0x1400f2880
mov r10d, dword [rsp + 0x40]
mov ecx, edi
mov rdx, qword [rsp + 0x48]
test r10d, r10d
je 0x1400f283e
mov eax, dword [rdx]
add eax, 4
cmp eax, r13d
jb 0x1400f44fc
mov r9d, eax
add r9, rdx
cmp r9, rdx
jb 0x1400f44fc
inc ecx
mov rdx, r9
cmp ecx, r10d
jb 0x1400f2817
lea r9, [rdx + 4]
cmp r9, rdx
jb 0x1400f44fc
mov ecx, dword [rsp + 0x44]
lea rax, [r8 + 4]
add rcx, qword [rsp + 0x48]
add rax, rdx
mov r10d, r8d
cmp rax, rcx
ja 0x1400f23d0
mov dword [rdx], r8d
mov rcx, r9
mov r8d, r10d
lea rdx, [0x1403da578]
call sub.msvcrt.dll_memcpy
mov edi, dword [rsp + 0x44]
mov ecx, dword [rsp + 0x40]
inc ecx
mov dword [rsp + 0x40], ecx
cmp qword [rsp + 0x48], 0
jne 0x1400f28a1
lea eax, [rdi + 4]
cmp eax, edi
jb 0x1400f44fc
inc ecx
jmp 0x1400f2910
mov rdx, qword [rsp + 0x48]
xor r8d, r8d
test ecx, ecx
je 0x1400f28d5
mov eax, dword [rdx]
add eax, 4
cmp eax, r13d
jb 0x1400f44fc
mov r9d, eax
add r9, rdx
cmp r9, rdx
jb 0x1400f44fc
inc r8d
mov rdx, r9
cmp r8d, ecx
jb 0x1400f28ad
lea rcx, [rdx + 4]
cmp rcx, rdx
jb 0x1400f44fc
mov eax, edi
add rax, qword [rsp + 0x48]
cmp rcx, rax
ja 0x1400f23d0
and dword [rdx], 0
mov ecx, dword [rsp + 0x40]
inc ecx
mov dword [rsp + 0x40], ecx
cmp qword [rsp + 0x48], 0
mov qword [rsp + 0x68], r12
jne 0x1400f292a
mov eax, dword [rsp + 0x44]
lea r8d, [rax + 8]
cmp r8d, eax
jb 0x1400f44fc
inc ecx
mov dword [rsp + 0x44], r8d
mov dword [rsp + 0x40], ecx
jmp 0x1400f299e
mov rdx, qword [rsp + 0x48]
xor r11d, r11d
mov qword [rsp + 0x68], r12
test ecx, ecx
je 0x1400f2968
mov qword [rsp + 0x68], r12
mov eax, dword [rdx]
add eax, 4
cmp eax, r13d
jb 0x1400f44fc
mov r8d, eax
add r8, rdx
cmp r8, rdx
jb 0x1400f44fc
inc r11d
mov rdx, r8
cmp r11d, ecx
jb 0x1400f2940
lea r8, [rdx + 4]
cmp r8, rdx
jb 0x1400f44fc
mov ecx, dword [rsp + 0x44]
lea rax, [rdx + 8]
add rcx, qword [rsp + 0x48]
cmp rax, rcx
ja 0x1400f23d0
mov dword [rdx], r13d
mov dword [r8], 2
inc dword [rsp + 0x40]
mov r8d, dword [rsp + 0x44]
xor edx, edx
mov dword [rsp + 0x58], edx
mov r13d, edx
mov qword [rbp - 0x40], rdx
mov edi, edx
mov qword [rsp + 0x20], rdx
mov dword [rbp - 0x50], edx
mov qword [rsp + 0x30], rdx
mov qword [rbp - 0x58], rdx
mov qword [rbp + 0xb0], rdx
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rsp + 0x50], rax
add r8d, 8
cmp r8d, 8
jb 0x1400f44e9
lea rsi, [r8 + 7]
and esi, 0xfffffff8
cmp esi, r8d
jb 0x1400f44e9
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, esi
lea edx, [rdi + 8]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
test rax, rax
jne 0x1400f2a18
mov edi, 0xd0000017
jmp 0x1400f4513
mov eax, dword [rsp + 0x40]
lea rdx, [rbx + 4]
mov dword [rbx], eax
cmp rdx, rbx
jb 0x1400f2b34
mov eax, dword [rsp + 0x44]
lea rcx, [rdx + 4]
mov dword [rdx], eax
cmp rcx, rdx
jb 0x1400f2b34
mov rdx, qword [rsp + 0x50]
mov qword [rsi + rbx - 8], rdx
mov r8d, dword [rsp + 0x44]
mov rdx, qword [rsp + 0x48]
call sub.msvcrt.dll_memcpy
mov eax, esi
xor esi, esi
mov qword [rsp + 0x78], rbx
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x80], r15
mov qword [rbp - 0x48], r14
mov qword [rbp - 0x30], rax
test rax, rax
je 0x1400f43e7
add rax, 8
mov qword [rbp - 0x78], rax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp - 0x78]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp - 0x38], rax
mov rcx, rax
test rax, rax
je 0x1400f43e7
mov r10, qword [rbp - 0x30]
xor al, al
xor edx, edx
mov byte [rsp + 0x38], al
test r10, r10
je 0x1400f2ac6
xor al, byte [rdx + rbx]
inc rdx
cmp rdx, r10
jb 0x1400f2ab7
mov byte [rsp + 0x38], al
and dword [rsp + 0x5c], esi
xor r11d, r11d
and dword [rsp + 0x58], esi
or edi, 0xffffffff
mov r8, r10
mov qword [rbp - 0x70], rcx
mov dword [rsp + 0x70], 0x38
movabs rdx, 0x93278d843bbdc445
mov qword [rbp + 0xa8], rdx
mov r9, rbx
and r8d, 7
je 0x1400f2c4a
xor ecx, ecx
mov edi, ecx
test r8d, r8d
je 0x1400f2c27
mov r10d, dword [rsp + 0x70]
mov esi, ecx
movzx ecx, byte [r9]
inc r9
mov dword [rsp + 0x28], ecx
cmp esi, 4
jae 0x1400f2b63
lea ecx, [r10 - 0x20]
shl dword [rsp + 0x28], cl
or r11d, dword [rsp + 0x28]
jmp 0x1400f2b6e
mov esi, 0xc0000095
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
or esi, 0x10000000
jl 0x1400f43f1
mov edi, 0xd000000d
jmp 0x1400f4513
mov ecx, r10d
shl dword [rsp + 0x28], cl
or edi, dword [rsp + 0x28]
inc esi
mov dword [rsp + 0x5c], edi
sub r10d, 8
mov dword [rsp + 0x58], r11d
cmp esi, r8d
jl 0x1400f2b15
mov r10, qword [rbp - 0x30]
xor r11d, 0xd04a94a
mov rsi, qword [rbp - 0x70]
xor edi, 0xb7faa653
and dword [rsp + 0x28], r13d
mov ecx, r11d
mov qword [rbp - 0x68], r13
mov edx, edi
mov r13d, dword [rsp + 0x28]
mov qword [rsp + 0x78], rbx
mov qword [rbp - 0x80], r15
mov qword [rbp - 0x48], r14
mov qword [rsp + 0x68], r12
lea rbx, [rsi + 1]
mov qword [rsp + 0x50], rbx
cmp r13d, 4
jae 0x1400f2bd2
rol ecx, 8
mov ebx, ecx
jmp 0x1400f2bd7
rol edx, 8
mov ebx, edx
mov byte [rsi], bl
inc r13d
mov rbx, qword [rsp + 0x50]
mov rsi, rbx
cmp r13d, r8d
jl 0x1400f2bbc
mov r13, qword [rbp - 0x40]
mov rcx, rbx
mov qword [rbp - 0x70], rbx
movabs rdx, 0x93278d843bbdc445
mov rbx, qword [rsp + 0x78]
cmp r8d, 4
jbe 0x1400f2c1d
mov ecx, 8
sub ecx, r8d
shl ecx, 3
shr edi, cl
shl edi, cl
mov rcx, rsi
jmp 0x1400f2c4a
xor edi, edi
cmp r8d, 4
jae 0x1400f2c4a
jmp 0x1400f2c35
mov r11d, 0xd04a94a
mov dword [rsp + 0x58], ecx
mov dword [rsp + 0x5c], ecx
mov ecx, 4
sub ecx, r8d
shl ecx, 3
shr r11d, cl
shl r11d, cl
mov rcx, qword [rbp - 0x70]
mov rsi, r10
shr rsi, 3
test rsi, rsi
je 0x1400f2f9a
mov eax, dword [rbp + 0xac]
lea r15, [rcx + 7]
movzx r12d, word [rbp + 0xaa]
mov r13d, dword [rsp + 0x5c]
mov ebx, dword [rsp + 0x58]
movzx r8d, ax
mov dword [rbp - 0x60], r8d
movzx r8d, word [rbp + 0xae]
mov r14d, dword [rbp - 0x60]
mov dword [rsp + 0x60], r8d
movzx r8d, dx
mov dword [rsp + 0x28], r8d
lea r8, [r9 + 2]
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 + 0x50], r8
xor edi, r9d
mov ecx, edi
ror ecx, 4
xor ecx, dword [rsp + 0x28]
imul ecx, r12d
xor ecx, r10d
xor r11d, ecx
mov ecx, r11d
ror ecx, 0xc
lea r8d, [r11 + rax]
ror r8d, 8
imul r8d, r12d
sub r8d, ecx
xor edi, r8d
mov r8d, edi
mov ecx, edi
xor r8d, edx
rol ecx, 0xb
ror r8d, 0xe
imul r8d, r14d
xor r8d, ecx
movzx ecx, word [rbp + 0xae]
xor r11d, r8d
lea r8d, [r11 + rdx]
ror r8d, 0xd
imul r8d, ecx
mov ecx, r11d
rol ecx, 4
add r8d, ecx
xor edi, r8d
mov r8d, edi
mov ecx, edi
shr ecx, 6
xor r8d, r14d
imul r8d, dword [rsp + 0x28]
xor r8d, ecx
xor r11d, r8d
mov ecx, r11d
mov r8d, r11d
xor ecx, r14d
ror r8d, 0xc
imul ecx, r12d
xor r8d, ecx
xor edi, r8d
mov ecx, edi
ror ecx, 9
sub ecx, r14d
imul ecx, dword [rsp + 0x28]
xor r11d, ecx
mov ecx, r11d
mov r8d, r11d
xor ecx, dword [rsp + 0x28]
imul ecx, dword [rsp + 0x60]
ror r8d, 0xa
add r8d, ecx
xor edi, r8d
mov r8d, edi
xor r8d, eax
ror r8d, 0xd
imul r8d, dword [rsp + 0x28]
mov ecx, edi
rol ecx, 0xa
add r8d, ecx
movzx ecx, word [rbp + 0xae]
xor r11d, r8d
mov r8d, r11d
xor r8d, ecx
mov ecx, r11d
imul r8d, r12d
shr ecx, 0xf
add r8d, ecx
xor edi, r8d
mov r8d, edi
mov ecx, edi
xor r8d, r12d
shr ecx, 5
rol r8d, 6
imul r8d, r14d
add r8d, ecx
mov ecx, edi
xor r11d, r8d
shr ecx, 0xf
mov r8d, edi
sub r8d, r14d
rol r8d, 3
imul r8d, dword [rsp + 0x28]
xor r8d, ecx
xor r11d, r8d
mov r8d, r11d
mov ecx, r11d
sub r8d, r14d
shr ecx, 0xd
imul r8d, r12d
sub r8d, ecx
xor edi, r8d
mov r8d, edx
sub r8d, edi
mov ecx, edi
ror r8d, 9
imul r8d, r14d
ror ecx, 0xb
xor r8d, ecx
xor r11d, r8d
movzx r8d, word [rbp + 0xae]
mov ecx, r11d
sub ecx, edx
sub ecx, r8d
xor edi, ecx
mov ecx, edi
mov r8d, edi
ror r8d, 7
xor ecx, r12d
imul ecx, dword [rsp + 0x28]
sub ecx, r8d
xor r11d, ecx
movzx ecx, word [rbp + 0xae]
mov r8d, r11d
xor r8d, ecx
mov ecx, r11d
rol r8d, 4
imul r8d, r12d
ror ecx, 0x10
sub r8d, ecx
xor edi, r8d
mov r8d, edx
sub r8d, edi
mov ecx, edi
ror r8d, 0xa
imul r8d, r14d
ror ecx, 4
add r8d, ecx
movzx ecx, word [rbp + 0xae]
xor r11d, r8d
mov r8d, r11d
sub r8d, edx
ror r8d, 4
imul r8d, ecx
mov ecx, r11d
ror ecx, 9
xor r8d, ecx
xor edi, r8d
mov r8d, eax
xor r8d, edi
mov ecx, edi
rol r8d, 8
imul r8d, dword [rsp + 0x28]
rol ecx, 2
sub r8d, ecx
xor r11d, r8d
mov r8d, eax
sub r8d, r11d
mov ecx, r11d
ror r8d, 0xb
imul r8d, r12d
ror ecx, 0xc
sub r8d, ecx
xor edi, r8d
mov r8d, r12d
xor r8d, edi
mov ecx, edi
imul r8d, r14d
shr ecx, 8
xor r8d, ecx
xor r11d, r8d
mov r8, qword [rsp + 0x50]
xor edi, r11d
xor r11d, ebx
mov byte [r15 - 4], r11b
xor edi, edx
xor edi, eax
ror r11d, 8
xor edi, r13d
mov ebx, r10d
mov byte [r15], dil
mov r13d, r9d
mov byte [r15 - 5], r11b
lea r15, [r15 + 8]
ror edi, 8
mov byte [r15 - 9], dil
ror r11d, 8
mov byte [r15 - 0xe], r11b
ror edi, 8
mov byte [r15 - 0xa], dil
ror r11d, 8
ror edi, 8
mov byte [r15 - 0xf], r11b
mov byte [r15 - 0xb], dil
ror edi, 8
ror r11d, 8
sub rsi, 1
jne 0x1400f2c9b
mov al, byte [rsp + 0x38]
mov r14, qword [rbp - 0x48]
mov r15, qword [rbp - 0x80]
mov r12, qword [rsp + 0x68]
mov r13, qword [rbp - 0x40]
mov rbx, qword [rsp + 0x78]
mov r10, qword [rbp - 0x30]
movzx ecx, al
lea rdi, [r10 + 8]
mov rax, qword [rbp - 0x38]
mov qword [rax + r10], rcx
mov esi, 8
mov qword [rbp + 0x80], 0xa0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
lea r8d, [rsi + 0x28]
mov edx, esi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp + 0xa8], rax
mov rsi, rax
test rax, rax
jne 0x1400f2fed
mov edi, 0xc0000017
mov dword [rsp + 0x58], edi
mov esi, edi
jmp 0x1400f31d0
mov edi, edi
mov dword [rax], edi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov edi, 0xc0000017
mov dword [rsp + 0x58], edi
test rax, rax
je 0x1400f30f2
mov qword [rsi + 8], rax
mov r8, qword [rbp - 0x78]
mov rcx, rax
mov rdx, qword [rbp - 0x38]
mov r8d, r8d
call sub.msvcrt.dll_memcpy
mov dword [rsi + 0x10], 0xa0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov r8d, 0xa0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rcx, rax
test rax, rax
je 0x1400f30f2
mov qword [rsi + 0x18], rax
mov edx, 0x80
lea rax, [0x140000000]
lea rax, [rax + 0x448ba0]
movups xmm0, xmmword [rax]
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], 8
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rcx, rax
mov eax, 8
mov r8d, eax
mov edx, eax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rcx, rax
test rax, rax
jne 0x1400f31b5
mov esi, edi
mov rax, qword [rbp - 0x68]
mov qword [rbp - 0x68], rax
mov rax, qword [rbp + 0xa8]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x50], rcx
test rcx, rcx
je 0x1400f3133
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x50]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rbp + 0xa8]
and qword [rax + 8], 0
mov rcx, qword [rax + 0x18]
mov qword [rsp + 0x50], rcx
test rcx, rcx
je 0x1400f3163
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x50]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rbp + 0xa8]
and qword [rax + 0x18], 0
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x50], rax
test rax, rax
je 0x1400f3193
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x50]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rbp + 0xa8]
and qword [rax + 0x28], 0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp + 0xa8]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test esi, esi
js 0x1400f31d0
mov rax, qword [rbp - 0x68]
jmp 0x1400f31c8
mov qword [rsi + 0x28], rcx
mov rax, qword [0x140448c40]
mov qword [rcx], rax
mov rax, rsi
xor esi, esi
and qword [rbp - 0x68], 0
mov r13, rax
mov qword [rsp + 0x78], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp - 0x38]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rbp - 0x68]
test rax, rax
je 0x1400f3298
mov rcx, qword [rax + 8]
mov qword [rsp + 0x50], rcx
test rcx, rcx
je 0x1400f3224
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x50]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rbp - 0x68]
and qword [rax + 8], 0
mov rcx, qword [rax + 0x18]
mov qword [rsp + 0x50], rcx
test rcx, rcx
je 0x1400f3251
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x50]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rbp - 0x68]
and qword [rax + 0x18], 0
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x50], rax
test rax, rax
je 0x1400f327e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x50]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rbp - 0x68]
and qword [rax + 0x28], 0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp - 0x68]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsp + 0x78], rbx
or esi, 0x10000000
jl 0x1400f3324
mov eax, dword [r13]
mov r8d, dword [r13 + 0x20]
add eax, 4
mov edx, dword [r13 + 0x10]
mov dword [rsp + 0x5c], r8d
mov dword [rbp - 0x60], edx
mov dword [rsp + 0x60], eax
cmp eax, 4
jb 0x1400f43dd
lea ecx, [rax + 4]
cmp ecx, eax
jb 0x1400f43dd
lea eax, [rcx + rdx]
cmp eax, ecx
jb 0x1400f43dd
lea ecx, [rax + 4]
cmp ecx, eax
jb 0x1400f43dd
lea eax, [rcx + r8]
cmp eax, ecx
jb 0x1400f43dd
mov ebx, eax
call qword [sym.imp.KERNEL32.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 0x1400f34cf
mov esi, 0xd0000017
mov rbx, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x20]
test rbx, rbx
je 0x1400f3342
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r13, r13
je 0x1400f33c1
mov rbx, qword [r13 + 8]
test rbx, rbx
je 0x1400f3369
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
and qword [r13 + 8], 0
mov rbx, qword [r13 + 0x18]
test rbx, rbx
je 0x1400f338b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
and qword [r13 + 0x18], 0
mov rbx, qword [r13 + 0x28]
test rbx, rbx
je 0x1400f33ad
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
and qword [r13 + 0x28], 0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test rdi, rdi
je 0x1400f33f0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
lea rdx, [0x1404492e0]
mov rbx, rax
lea rcx, [0x14042ef94]
call fcn.1400f6e28
mov r8, rdi
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [rsp + 0x30]
test rbx, rbx
je 0x1400f340e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [rbp - 0x58]
test rbx, rbx
je 0x1400f3491
mov rdi, qword [rbx + 8]
test rdi, rdi
je 0x1400f3439
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
and qword [rbx + 8], 0
mov rdi, qword [rbx + 0x18]
test rdi, rdi
je 0x1400f345b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
and qword [rbx + 0x18], 0
mov rdi, qword [rbx + 0x28]
test rdi, rdi
je 0x1400f347d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
and qword [rbx + 0x28], 0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [rbp + 0xb0]
test rbx, rbx
je 0x1400f34b1
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov edi, esi
test esi, esi
js 0x1400f4513
cmp dword [rbp - 0x18], 3
je 0x1400f43f9
mov edi, 0xc004d501
jmp 0x1400f4513
mov eax, dword [r13]
lea rsi, [rbx + 4]
mov dword [rbx], eax
cmp rsi, rbx
jb 0x1400f3574
mov r8d, dword [r13]
mov rcx, rsi
mov rdx, qword [r13 + 8]
call sub.msvcrt.dll_memcpy
mov ecx, dword [r13]
add rcx, rsi
cmp rcx, rsi
jb 0x1400f3574
mov eax, dword [r13 + 0x10]
lea rsi, [rcx + 4]
mov dword [rcx], eax
cmp rsi, rcx
jb 0x1400f3574
mov r8d, dword [r13 + 0x10]
mov rcx, rsi
mov rdx, qword [r13 + 0x18]
call sub.msvcrt.dll_memcpy
mov ecx, dword [r13 + 0x10]
add rcx, rsi
cmp rcx, rsi
jb 0x1400f3574
mov eax, dword [r13 + 0x20]
lea rsi, [rcx + 4]
mov dword [rcx], eax
cmp rsi, rcx
jb 0x1400f3574
mov r8d, dword [r13 + 0x20]
mov rcx, rsi
mov rdx, qword [r13 + 0x28]
call sub.msvcrt.dll_memcpy
mov eax, dword [r13 + 0x20]
add rax, rsi
cmp rax, rsi
jb 0x1400f3574
mov r9d, dword [rsp + 0x60]
mov ecx, dword [rbp - 0x60]
add r9d, 4
add ecx, 4
mov qword [rsp + 0x20], rbx
add ecx, r9d
add ecx, dword [rsp + 0x5c]
mov dword [rbp - 0x50], ecx
jmp 0x1400f3599
mov esi, 0xc0000095
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
or esi, 0x10000000
jl 0x1400f331f
cmp qword [rsp + 0x48], 0
jne 0x1400f35ab
mov esi, 0xc000000d
jmp 0x1400f331f
cmp dword [rsp + 0x40], 1
jbe 0x1400f35a1
mov rcx, qword [rsp + 0x48]
xor r8d, r8d
lea rdx, [rcx + 4]
cmp rdx, rcx
jb 0x1400f43d3
mov ecx, dword [rcx]
add rcx, rdx
cmp rcx, rdx
jb 0x1400f43d3
inc r8d
cmp r8d, 1
jb 0x1400f35ba
mov esi, dword [rcx]
lea rax, [rcx + 4]
cmp rax, rcx
jb 0x1400f43d3
cmp dword [rsp + 0x40], 2
mov rbx, qword [rsp + 0x78]
ja 0x1400f3603
mov esi, 0xc000000d
jmp 0x1400f3324
mov rcx, qword [rsp + 0x48]
xor edx, edx
mov rax, qword [rsp + 0x20]
lea r8, [rcx + 4]
mov qword [rbp - 0x78], rax
cmp r8, rcx
jb 0x1400f43c9
mov ecx, dword [rcx]
add rcx, r8
cmp rcx, r8
jb 0x1400f43c9
inc edx
cmp edx, 2
jb 0x1400f360a
mov edx, dword [rcx]
lea rax, [rcx + 4]
cmp rax, rcx
jb 0x1400f43bf
lea eax, [rsi + 0x40]
cmp eax, 0x40
jb 0x1400f43bf
lea ecx, [rax + 4]
cmp ecx, eax
jb 0x1400f43bf
lea eax, [rcx + rdx]
cmp eax, ecx
jb 0x1400f43bf
cmp eax, 0x400000
jbe 0x1400f3677
mov esi, 0x8000ffff
jmp 0x1400f3324
mov esi, eax
mov qword [rbp - 0x38], rsi
mov rax, qword [rbp - 0x78]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, esi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x1400f36b0
mov rdi, qword [rbp - 0x78]
mov esi, 0xd0000017
jmp 0x1400f3329
mov rdx, rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x20]
test rax, rax
jne 0x1400f36d4
mov esi, 0x80070057
mov qword [rsp + 0x30], rdx
mov rdi, rax
jmp 0x1400f3329
and dword [rbp + 0x60], 0
lea r8, [rbp + 0x38]
mov qword [rbp + 0x48], rax
mov ecx, 1
mov eax, dword [rbp - 0x50]
mov qword [rbp + 0x50], rdx
lea rdx, [0x1403d7058]
mov dword [rbp + 0x58], eax
mov dword [rbp + 0x5c], esi
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
jne 0x1400f3741
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8, qword [rbp - 0x38]
movzx esi, ax
or esi, 0x80070000
test eax, eax
cmovle esi, eax
mov eax, 0x80004005
test esi, esi
cmovns esi, eax
cmp esi, 0xd0000023
jne 0x1400f378e
mov esi, 0x8007007a
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rcx
jmp 0x1400f3324
mov rcx, qword [rbp + 0x38]
lea rdx, [0x1403e13a8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
test rax, rax
je 0x1400f3703
mov rax, qword [0x1403cf6d0]
mov rcx, rsi
call rax
xor r9d, r9d
lea rdx, [rbp + 0x48]
mov rax, rsi
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call rax
mov r8, qword [rbp - 0x38]
mov esi, eax
or esi, 0x10000000
jl 0x1400f3725
mov r8d, dword [rbp + 0x5c]
jmp 0x1400f3796
test esi, esi
js 0x1400f3324
cmp r8d, 4
jae 0x1400f37a3
mov esi, 0xd000003e
jmp 0x1400f3732
mov rdx, qword [rsp + 0x30]
mov r9d, dword [rdx]
lea rcx, [rdx + 4]
mov dword [rbp - 0x60], r9d
mov qword [rbp - 0x38], rcx
cmp rcx, rdx
jb 0x1400f43b5
lea eax, [r8 - 4]
cmp eax, r9d
jae 0x1400f37d8
mov esi, 0xd000003e
mov qword [rsp + 0x30], rdx
jmp 0x1400f3324
lea rsi, [rcx + r9]
mov qword [rbp - 0x78], r9
mov qword [rbp - 0x30], rsi
cmp rsi, rcx
jb 0x1400f43b5
lea r11d, [r9 + 4]
cmp r11d, 4
jb 0x1400f43b5
mov eax, r8d
sub eax, r11d
cmp eax, 4
jb 0x1400f37c9
mov ecx, dword [rsi]
lea r10, [rsi + 4]
mov dword [rbp - 0x50], ecx
cmp r10, rsi
jb 0x1400f43b5
lea esi, [r11 + 4]
cmp esi, r11d
jb 0x1400f43b5
mov eax, r8d
sub eax, esi
cmp eax, ecx
jb 0x1400f37c9
lea r11, [r10 + rcx]
mov qword [rsp + 0x50], r11
cmp r11, r10
jb 0x1400f43b5
lea r11d, [rsi + rcx]
mov dword [rsp + 0x60], r11d
cmp r11d, esi
jb 0x1400f43b5
mov eax, r8d
sub eax, r11d
cmp eax, 4
jb 0x1400f37c9
mov rax, qword [rsp + 0x50]
mov r10d, dword [rax]
lea rsi, [rax + 4]
mov dword [rsp + 0x5c], r10d
mov qword [rbp - 0x70], rsi
cmp rsi, rax
jb 0x1400f43b5
add r11d, 4
cmp r11d, dword [rsp + 0x60]
jb 0x1400f43b5
mov eax, r8d
sub eax, r11d
cmp eax, r10d
jb 0x1400f37c9
lea esi, [r11 + r10]
cmp esi, r11d
jb 0x1400f43b5
cmp r8d, esi
jne 0x1400f37c9
add ecx, r9d
mov eax, r8d
add ecx, r10d
add rcx, 0xc
cmp rcx, rax
jne 0x1400f37c9
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 0x28]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rsi, rax
mov qword [rbp + 0xa8], rax
xor eax, eax
test rsi, rsi
jne 0x1400f38fc
mov esi, 0xd0000017
jmp 0x1400f3732
cmp qword [rbp - 0x38], rax
je 0x1400f3949
mov esi, 0xd0000095
jmp 0x1400f37ce
mov esi, 0xc0000095
jmp 0x1400f3324
mov esi, 0xc0000095
jmp 0x1400f36cc
mov esi, 0xc0000095
jmp 0x1400f331f
mov esi, 0xd0000095
jmp 0x1400f3324
mov esi, 0xd0000001
jmp 0x1400f332e
mov rbx, rdi
jmp 0x1400f3329
cmp qword [rbp - 0x10], 0
je 0x1400f448f
mov rbx, qword [rbp - 0x10]
lea r8, [rbx + 4]
cmp r8, rbx
jb 0x1400f44fc
xor eax, eax
cmp dword [rbx], eax
cmovne rax, r8
cmp dword [rbx], 4
jne 0x1400f23d0
mov edi, dword [rax]
test edi, edi
js 0x1400f4513
test rbx, rbx
je 0x1400f448f
mov rax, rbx
xor r8d, r8d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x1400f44fc
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x1400f44fc
inc r8d
cmp r8d, 1
jb 0x1400f443b
mov edx, dword [rax]
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x1400f44fc
xor eax, eax
test edx, edx
cmovne rax, rcx
cmp edx, 8
jne 0x1400f23d0
cmp r12, qword [rax]
jne 0x1400f34c5
cmp qword [rbp - 0x10], 0
jne 0x1400f4496
mov edi, 0xc000000d
jmp 0x1400f4513
mov rax, qword [rbp - 0x10]
xor edx, edx
mov ecx, edi
lea r8, [rax + 4]
cmp r8, rax
jb 0x1400f44fc
mov eax, dword [rax]
add rax, r8
cmp rax, r8
jb 0x1400f44fc
inc edx
cmp edx, 2
jb 0x1400f449e
mov r8d, dword [rax]
lea rdx, [rax + 4]
cmp rdx, rax
jb 0x1400f44fc
xor eax, eax
test r8d, r8d
cmovne rax, rdx
xor edi, edi
cmp r8d, 0x10
je 0x1400f44dc
mov edi, 0x8007000d
jmp 0x1400f4513
movups xmm0, xmmword [rax]
movdqu xmmword [rbp + 0xb8], xmm0
jmp 0x1400f4509
mov edi, 0xd0000095
jmp 0x1400f4513
or qword [rbp - 8], 0xffffffffffffffff
jmp 0x1400f44fc
or qword [rbp], 0xffffffffffffffff
mov edi, 0xc0000095
jmp 0x1400f4513
xor ecx, ecx
test edi, edi
js 0x1400f4513
test ecx, ecx
je 0x1400f4513
mov edi, ecx
jmp 0x1400f4513
mov edi, ebx
and dword [rsp + 0x44], 0
and dword [rsp + 0x40], 0
mov rbx, qword [rsp + 0x48]
test rbx, rbx
je 0x1400f4541
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
and qword [rsp + 0x48], 0
and dword [rbp - 0x14], 0
and dword [rbp - 0x18], 0
mov rbx, qword [rbp - 0x10]
test rbx, rbx
je 0x1400f456b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
and qword [rbp - 0x10], 0
test r15, r15
je 0x1400f4584
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r14, r14
je 0x1400f459d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
xor ebx, ebx
mov eax, 0xc004f034
test edi, edi
cmovs ebx, eax
mov ecx, ebx
call fcn.140082b34
lea rcx, [rbp + 0x20]
call fcn.1400752f4
mov eax, ebx
mov rcx, qword [rbp + 0x160]
xor rcx, rsp
call fcn.140389660
mov rbx, qword [rsp + 0x2b0]
add rsp, 0x270
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret