Function at 0x1400e8be8
Capabilities:
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 - 0x230]
sub rsp, 0x330
mov rax, qword [0x140436b28]
xor rax, rsp
mov qword [rbp + 0x220], rax
mov rbx, r8
lea rcx, [rbp + 0x190]
mov rsi, rdx
mov r8d, 0x82
xor edx, edx
call sub.msvcrt.dll_memset
xor r14d, r14d
lea rdx, [rbp]
mov rcx, rbx
mov qword [rbp + 0x50], r14
call fcn.140076e24
mov edi, eax
test eax, eax
jns 0x1400e8c57
mov ecx, eax
call fcn.140079c40
jmp 0x1400e9091
cmp dword [rbp], r14d
je 0x1400e9091
mov rax, qword [rsi]
mov rbx, qword [rax + 0x30]
mov rax, qword [0x1403c1610]
mov rcx, rbx
call rax
mov rax, rbx
lea r8, [rbp + 0x158]
lea rdx, str.SppBindingSkuId
mov rcx, rsi
call rax
mov edi, eax
test eax, eax
js 0x1400e8c4b
cmp dword [rbp + 0x160], 2
je 0x1400e8ca2
mov edi, 0x8007070c
mov ecx, edi
jmp 0x1400e8c4d
mov rcx, qword [rbp + 0x168]
lea r8, [rbp + 0x50]
lea rdx, str.SppPkeyBindingPid4
call fcn.1400ebca4
mov edi, eax
test eax, eax
js 0x1400e8c4b
mov rax, qword [rbp + 0x50]
lea r9, [rbp + 0x190]
lea r8, [rbp + 4]
xor edx, edx
mov rcx, qword [rax + 0x10]
add rcx, 0x378
mov dword [rbp + 4], 0x41
call fcn.1401a0c44
mov edi, eax
test eax, eax
js 0x1400e8c4b
xorps xmm0, xmm0
mov qword [rbp + 0x78], r14
lea rax, [0x140436c40]
mov qword [rbp + 0x80], r14
movups xmmword [rbp - 0x70], xmm0
mov qword [rbp + 0xa8], rax
mov r13, r14
mov edi, r14d
mov dword [rsp + 0x54], r14d
mov r12, r14
mov qword [rsp + 0x28], r14
mov esi, r14d
mov dword [rsp + 0x68], r14d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r15d, 8
mov r8d, 0xa0
mov rcx, rax
mov edx, r15d
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov ebx, 0xc0000017
lea r8d, [r15 + 0x78]
mov rdx, rax
test rax, rax
je 0x1400e8e30
mov rax, qword [rbp + 0xa8]
lea edi, [r8 + 0x20]
mov r13, rdx
mov qword [rbp + 0x78], 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, [0x140436b80]
mov qword [rbp + 0xb0], rax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, r15d
mov edx, r15d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdx, rax
test rax, rax
je 0x1400e8e30
mov rax, qword [rbp + 0xb0]
mov r12, rdx
mov qword [rbp + 0x80], rdx
mov esi, r15d
mov rcx, qword [rax]
mov qword [rdx], rcx
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x48], rax
mov dword [rbp + 0x8c], SafeArrayGetDim
mov ebx, 0x10000000
mov dword [rsp + 0x54], SetErrorInfo
test ebx, ebx
js 0x1400e8ff5
mov dword [rsp + 0x58], r15d
mov edx, dword [rsp + 0x54]
or r15d, 0xffffffff
mov eax, r15d
mov dword [rbp - 0x78], r15d
lea ecx, [rdx + 8]
cmp ecx, edx
cmovae eax, ecx
sbb ebx, ebx
and ebx, 0xc0000095
mov dword [rsp + 0x54], eax
add ebx, 0x10000000
cmp ecx, edx
jb 0x1400eb192
lea r8, [rbp + 0x30]
mov edx, 0x7fffffff
lea rcx, [rbp + 0x190]
call fcn.1400f39c4
test eax, eax
jns 0x1400e8e98
xor r13d, r13d
mov qword [rbp + 0x30], r13
mov ebx, 0xc000003e
jmp 0x1400e8ff8
mov rax, qword [rbp + 0x30]
inc rax
mov qword [rbp + 0x30], rax
lea ecx, [rax*2 + 4]
cmp ecx, 4
jb 0x1400e8eb8
mov ebx, r14d
mov dword [rsp + 0x58], ecx
jmp 0x1400e8ec1
mov ecx, dword [rsp + 0x58]
mov ebx, 0xc0000095
test ebx, ebx
js 0x1400e8ff5
mov edx, dword [rsp + 0x54]
mov eax, r15d
add ecx, edx
cmp ecx, edx
cmovae eax, ecx
sbb ebx, ebx
and ebx, 0xc0000095
mov dword [rsp + 0x54], eax
add ebx, 0x10000000
cmp ecx, edx
jb 0x1400eb192
lea r8, [rbp + 0x68]
mov edx, 0x7fffffff
lea rcx, [0x1403ca998]
call fcn.1400f39c4
test eax, eax
jns 0x1400e8f16
xor r13d, r13d
mov qword [rbp + 0x68], r13
jmp 0x1400e8e8e
mov rax, qword [rbp + 0x68]
inc rax
mov qword [rbp + 0x68], rax
lea r14d, [rax*2 + 4]
cmp r14d, 4
jb 0x1400e8f3a
xor eax, eax
mov dword [rsp + 0x58], r14d
mov ebx, eax
jmp 0x1400e8f44
mov r14d, dword [rsp + 0x58]
mov ebx, 0xc0000095
lea rdx, [0x14043d870]
lea rcx, [0x1404201f0]
call fcn.1400ed5b8
test ebx, ebx
js 0x1400e8ff5
mov ecx, dword [rsp + 0x54]
mov edx, r15d
mov r8d, 0x10000000
lea eax, [rcx + r14]
mov r14d, 0xc0000095
cmp eax, ecx
cmovae edx, eax
sbb ebx, ebx
and ebx, r14d
add ebx, r8d
cmp eax, ecx
jb 0x1400eb192
lea eax, [rdx + 4]
mov ecx, r15d
cmp eax, edx
cmovae ecx, eax
sbb ebx, ebx
and ebx, r14d
add ebx, r8d
cmp eax, edx
jb 0x1400eb192
lea eax, [rcx + 8]
mov edx, r15d
cmp eax, ecx
cmovae edx, eax
sbb ebx, ebx
and ebx, r14d
mov dword [rsp + 0x54], edx
add ebx, r8d
cmp eax, ecx
jb 0x1400eb192
mov dword [rsp + 0x24], 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 r10d, r10d
mov rdx, rax
test rax, rax
jne 0x1400e90ce
lea ebx, [r14 - 0x7e]
xor r13d, r13d
and qword [rsp + 0x20], 0
mov rdi, qword [rsp + 0x28]
test rdi, rdi
je 0x1400e9021
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsp + 0x28], r13
and qword [rbp - 0x70], 0
mov rdi, qword [rbp - 0x68]
test rdi, rdi
je 0x1400e9047
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp - 0x68], r13
mov rdi, qword [rbp + 0x78]
test rdi, rdi
je 0x1400e9064
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rdi, qword [rbp + 0x80]
test rdi, rdi
je 0x1400e9084
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test ebx, ebx
mov edi, r13d
mov eax, 0xc004f034
cmovs edi, eax
mov ecx, edi
call fcn.140079c60
lea rcx, [rbp + 0x50]
call fcn.14006a698
mov eax, edi
mov rcx, qword [rbp + 0x220]
xor rcx, rsp
call fcn.14037a9a0
mov rbx, qword [rsp + 0x370]
add rsp, 0x330
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], r10d
mov dword [rbp + 8], 0x6d
lea r8, [rax + 4]
cmp r8, rdx
jb 0x1400e91c1
mov ecx, dword [rsp + 0x24]
add rax, 8
add rcx, rdx
cmp rax, rcx
jbe 0x1400e9106
mov ebx, 0xc0000023
jmp 0x1400e8ff5
mov dword [rdx], 4
mov eax, dword [rbp + 8]
mov dword [r8], eax
mov edx, dword [rsp + 0x20]
inc edx
mov dword [rsp + 0x20], edx
test r13, r13
jne 0x1400e9190
test edi, edi
je 0x1400e9194
mov ebx, 0xc000000d
xor r13d, r13d
test ebx, ebx
js 0x1400e8ff8
mov r8d, dword [rsp + 0x24]
test r12, r12
jne 0x1400e924b
test esi, esi
je 0x1400e9253
mov ebx, 0xc000000d
test ebx, ebx
js 0x1400e8ff8
mov rax, qword [rbp + 0x48]
mov qword [rbp + 0x70], rax
cmp qword [rsp + 0x28], r13
jne 0x1400e9313
mov dword [rbp + 0x64], SafeArrayGetDim
lea eax, [r8 + 0xc]
cmp eax, r8d
jb 0x1400eb18a
mov r8d, eax
mov dword [rbp - 0x48], 3
inc edx
jmp 0x1400e93a4
test edi, edi
je 0x1400e9125
cmp qword [rsp + 0x28], r10
jne 0x1400e91c9
lea ecx, [rdi + 4]
mov dword [rbp + 0x10], ecx
mov eax, dword [rsp + 0x24]
lea r8d, [rax + rcx]
cmp r8d, eax
jb 0x1400e91c1
inc edx
mov dword [rsp + 0x24], r8d
mov dword [rsp + 0x20], edx
xor r13d, r13d
jmp 0x1400e913a
mov ebx, r14d
jmp 0x1400e8ff5
mov r8, qword [rsp + 0x28]
mov ecx, r10d
test edx, edx
je 0x1400e91f7
mov eax, dword [r8]
add eax, 4
cmp eax, 4
jb 0x1400e9243
mov dword [rbp + 0x10], eax
mov r9d, eax
add r9, r8
cmp r9, r8
jb 0x1400e91c1
inc ecx
mov r8, r9
cmp ecx, edx
jb 0x1400e91d5
lea r9, [r8 + 4]
cmp r9, r8
jb 0x1400e91c1
mov ecx, dword [rsp + 0x24]
lea rax, [r8 + 4]
add rcx, qword [rsp + 0x28]
mov ebx, r10d
mov edx, edi
add rax, rdx
cmp rax, rcx
ja 0x1400e90fc
mov dword [r8], edi
test r13, r13
je 0x1400e9234
mov r8d, edx
mov rcx, r9
mov rdx, r13
call sub.msvcrt.dll_memcpy
mov edx, dword [rsp + 0x20]
inc edx
mov dword [rsp + 0x20], edx
jmp 0x1400e912a
mov ebx, r14d
jmp 0x1400e912a
test esi, esi
je 0x1400e914b
cmp qword [rsp + 0x28], r13
jne 0x1400e927f
lea eax, [rsi + 4]
mov dword [rbp + 0x14], eax
lea ecx, [r8 + rax]
cmp ecx, r8d
jb 0x1400eb18a
mov rax, qword [rbp + 0x48]
mov r8d, ecx
mov qword [rbp + 0x70], rax
inc edx
jmp 0x1400e916b
mov r9, qword [rsp + 0x28]
mov ecx, r13d
test edx, edx
je 0x1400e92b1
mov eax, dword [r9]
add eax, 4
cmp eax, 4
jb 0x1400e92e1
mov dword [rbp + 0x14], eax
mov r10d, eax
add r10, r9
cmp r10, r9
jb 0x1400eb18a
inc ecx
mov r9, r10
cmp ecx, edx
jb 0x1400e928b
lea r10, [r9 + 4]
cmp r10, r9
jb 0x1400eb18a
mov edx, esi
lea rax, [r9 + 4]
mov ecx, r8d
add rax, rdx
add rcx, qword [rsp + 0x28]
mov ebx, r13d
cmp rax, rcx
jbe 0x1400e92e9
mov ebx, 0xc0000023
jmp 0x1400e8ff8
mov ebx, r14d
jmp 0x1400e9150
mov dword [r9], esi
test r12, r12
je 0x1400e92ff
mov r8, rdx
mov rcx, r10
mov rdx, r12
call sub.msvcrt.dll_memcpy
mov edx, dword [rsp + 0x20]
mov r8d, dword [rsp + 0x24]
inc edx
mov dword [rsp + 0x20], edx
jmp 0x1400e9150
mov r9, qword [rsp + 0x28]
mov ecx, r13d
mov esi, 4
test edx, edx
je 0x1400e934c
mov eax, dword [r9]
add eax, esi
cmp eax, esi
jb 0x1400e93c9
mov dword [rbp + 0x64], eax
mov r10d, eax
add r10, r9
cmp r10, r9
jb 0x1400eb18a
inc ecx
mov r9, r10
cmp ecx, edx
jb 0x1400e9324
lea rdx, [r9 + 4]
cmp rdx, r9
jb 0x1400eb18a
mov ecx, r8d
lea rax, [r9 + 0xc]
add rcx, qword [rsp + 0x28]
mov ebx, r13d
cmp rax, rcx
ja 0x1400e92d7
mov dword [r9], 8
mov rax, qword [rbp + 0x70]
mov qword [rdx], rax
mov edx, dword [rsp + 0x20]
mov r8d, dword [rsp + 0x24]
inc edx
mov dword [rsp + 0x20], edx
test ebx, ebx
js 0x1400e8ff8
mov dword [rbp - 0x48], 3
cmp qword [rsp + 0x28], r13
jne 0x1400e93ce
mov dword [rbp + 0x58], 8
lea eax, [r8 + 8]
cmp eax, r8d
jb 0x1400eb18a
inc edx
mov dword [rsp + 0x24], eax
mov dword [rsp + 0x20], edx
mov esi, 4
jmp 0x1400e9438
mov ebx, r14d
jmp 0x1400e938e
mov r9, qword [rsp + 0x28]
mov ecx, r13d
test edx, edx
je 0x1400e93ff
mov eax, dword [r9]
add eax, 4
cmp eax, esi
jb 0x1400e945e
mov dword [rbp + 0x58], eax
mov r10d, eax
add r10, r9
cmp r10, r9
jb 0x1400eb18a
inc ecx
mov r9, r10
cmp ecx, edx
jb 0x1400e93da
lea rdx, [r9 + 4]
cmp rdx, r9
jb 0x1400eb18a
mov ecx, r8d
lea rax, [r9 + 8]
add rcx, qword [rsp + 0x28]
mov ebx, r13d
cmp rax, rcx
ja 0x1400e92d7
mov dword [r9], esi
mov eax, dword [rbp - 0x48]
mov dword [rdx], eax
inc dword [rsp + 0x20]
test ebx, ebx
js 0x1400e8ff8
mov r12d, 0x7fffffff
lea r8, [rbp - 0x18]
mov edx, r12d
lea rcx, [rbp + 0x190]
call fcn.1400f39c4
test eax, eax
jns 0x1400e9463
mov qword [rbp - 0x18], r13
jmp 0x1400e8e8e
mov ebx, r14d
jmp 0x1400e9430
mov rax, qword [rbp - 0x18]
lea rcx, [rax + 1]
cmp rcx, rax
jb 0x1400eb185
lea r8d, [rcx + rcx]
mov qword [rbp - 0x18], rcx
mov r14d, 0xc0000023
test r8d, r8d
je 0x1400e954c
cmp qword [rsp + 0x28], r13
jne 0x1400e94cb
add r8d, 4
lea edi, [r14 + 0x72]
cmp r8d, esi
jb 0x1400e94c4
mov dword [rbp + 0x3c], r8d
mov eax, dword [rsp + 0x24]
lea ecx, [rax + r8]
cmp ecx, eax
jb 0x1400e94bf
inc dword [rsp + 0x20]
mov ebx, r13d
mov dword [rsp + 0x24], ecx
jmp 0x1400e9556
mov dword [rsp + 0x24], r15d
mov ebx, edi
jmp 0x1400e9556
mov r10d, dword [rsp + 0x20]
mov ecx, r13d
mov rdx, qword [rsp + 0x28]
test r10d, r10d
je 0x1400e94fe
mov eax, dword [rdx]
add eax, 4
cmp eax, esi
jb 0x1400e9542
mov dword [rbp + 0x3c], eax
mov r9d, eax
add r9, rdx
cmp r9, rdx
jb 0x1400e9542
inc ecx
mov rdx, r9
cmp ecx, r10d
jb 0x1400e94dd
lea r9, [rdx + 4]
cmp r9, rdx
jb 0x1400e9542
mov ecx, dword [rsp + 0x24]
lea rax, [r8 + 4]
add rcx, qword [rsp + 0x28]
add rax, rdx
mov r10d, r8d
mov ebx, r13d
cmp rax, rcx
jbe 0x1400e9527
mov ebx, r14d
jmp 0x1400e9551
mov dword [rdx], r8d
mov rcx, r9
mov r8, r10
lea rdx, [rbp + 0x190]
call sub.msvcrt.dll_memcpy
inc dword [rsp + 0x20]
jmp 0x1400e9551
mov edi, 0xc0000095
jmp 0x1400e94c4
mov ebx, 0xc000000d
mov edi, 0xc0000095
test ebx, ebx
js 0x1400e8ff8
lea r8, [rbp - 0x20]
mov rdx, r12
lea rcx, [0x1403ca998]
call fcn.1400f39c4
test eax, eax
jns 0x1400e957e
mov qword [rbp - 0x20], r13
jmp 0x1400e8e8e
mov rax, qword [rbp - 0x20]
lea rcx, [rax + 1]
cmp rcx, rax
jb 0x1400eb179
lea r9d, [rcx + rcx]
mov qword [rbp - 0x20], rcx
test r9d, r9d
je 0x1400e965e
cmp qword [rsp + 0x28], r13
jne 0x1400e95e5
add r9d, 4
cmp r9d, esi
jb 0x1400e95e1
mov dword [rbp + 0x38], r9d
mov eax, dword [rsp + 0x24]
lea r8d, [rax + r9]
cmp r8d, eax
jb 0x1400e95d2
inc dword [rsp + 0x20]
mov ebx, r13d
mov dword [rsp + 0x24], r8d
jmp 0x1400e9668
mov r8d, r15d
mov dword [rsp + 0x24], r15d
mov ebx, edi
jmp 0x1400e9668
mov ebx, edi
jmp 0x1400e9663
mov ecx, r13d
mov rdx, qword [rsp + 0x28]
cmp dword [rsp + 0x20], r13d
jbe 0x1400e9616
mov eax, dword [rdx]
add eax, 4
cmp eax, esi
jb 0x1400e95e1
mov dword [rbp + 0x38], eax
mov r8d, eax
add r8, rdx
cmp r8, rdx
jb 0x1400e95e1
inc ecx
mov rdx, r8
cmp ecx, dword [rsp + 0x20]
jb 0x1400e95f4
lea r10, [rdx + 4]
cmp r10, rdx
jb 0x1400e95e1
mov r8d, dword [rsp + 0x24]
lea rax, [r9 + 4]
mov ecx, r8d
mov r11d, r9d
add rcx, qword [rsp + 0x28]
add rax, rdx
mov ebx, r13d
cmp rax, rcx
jbe 0x1400e9643
mov ebx, r14d
jmp 0x1400e9668
mov dword [rdx], r9d
mov r8, r11
lea rdx, [0x1403ca998]
mov rcx, r10
call sub.msvcrt.dll_memcpy
inc dword [rsp + 0x20]
jmp 0x1400e9663
mov ebx, 0xc000000d
mov r8d, dword [rsp + 0x24]
test ebx, ebx
js 0x1400e8ff8
cmp qword [rsp + 0x28], r13
jne 0x1400e9697
mov dword [rbp + 0x28], esi
lea eax, [r8 + 4]
cmp eax, r8d
jb 0x1400eb17e
inc dword [rsp + 0x20]
mov r8d, eax
mov dword [rbp - 0x40], 2
jmp 0x1400e9713
mov edx, r13d
mov rcx, qword [rsp + 0x28]
cmp dword [rsp + 0x20], r13d
jbe 0x1400e96d0
mov eax, dword [rcx]
add eax, 4
cmp eax, esi
jb 0x1400e9734
mov dword [rbp + 0x28], eax
mov r9d, eax
add r9, rcx
cmp r9, rcx
jb 0x1400eb17e
inc edx
mov rcx, r9
cmp edx, dword [rsp + 0x20]
jb 0x1400e96a6
lea rdx, [rcx + 4]
cmp rdx, rcx
jb 0x1400eb17e
mov eax, r8d
mov ebx, r13d
add rax, qword [rsp + 0x28]
cmp rdx, rax
ja 0x1400eb18a
mov dword [rcx], r13d
inc dword [rsp + 0x20]
mov r8d, dword [rsp + 0x24]
test ebx, ebx
js 0x1400e8ff8
mov dword [rbp - 0x40], 2
cmp qword [rsp + 0x28], r13
jne 0x1400e9738
mov dword [rbp + 0x18], 8
lea eax, [r8 + 8]
cmp eax, r8d
jb 0x1400eb17e
inc dword [rsp + 0x20]
mov r8d, eax
mov dword [rsp + 0x24], eax
jmp 0x1400e97af
mov ebx, edi
jmp 0x1400e96fd
mov ecx, r13d
mov rdx, qword [rsp + 0x28]
cmp dword [rsp + 0x20], r13d
jbe 0x1400e9771
mov eax, dword [rdx]
add eax, 4
cmp eax, esi
jb 0x1400e9836
mov dword [rbp + 0x18], eax
mov r9d, eax
add r9, rdx
cmp r9, rdx
jb 0x1400eb17e
inc ecx
mov rdx, r9
cmp ecx, dword [rsp + 0x20]
jb 0x1400e9747
lea r9, [rdx + 4]
cmp r9, rdx
jb 0x1400eb17e
mov ecx, r8d
lea rax, [rdx + 8]
add rcx, qword [rsp + 0x28]
mov ebx, r13d
cmp rax, rcx
ja 0x1400eb18a
mov dword [rdx], esi
mov eax, dword [rbp - 0x40]
mov dword [r9], eax
inc dword [rsp + 0x20]
mov r8d, dword [rsp + 0x24]
test ebx, ebx
js 0x1400e8ff8
mov dword [rbp + 0x90], SafeArrayGetDim
mov dword [rsp + 0x58], SafeArrayUnaccessData
xor eax, eax
mov qword [rsp + 0x78], r13
mov dword [rbp - 0x74], eax
mov r9, r13
mov esi, r13d
mov r12, r13
mov qword [rbp - 8], r13
mov qword [rbp + 0x40], r13
mov dword [rsp + 0x50], r13d
mov qword [rbp - 0x28], r13
mov dword [rsp + 0x40], r13d
mov qword [rbp - 0x10], r13
mov qword [rsp + 0x48], r13
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0xb8], rax
lea eax, [r8 + 8]
mov ecx, r15d
cmp eax, 8
mov edx, 0xc0000095
cmovae ecx, eax
sbb edi, edi
and edi, edx
cmp eax, 8
jb 0x1400e98e6
mov eax, ecx
add rax, 7
and eax, 0xfffffff8
cmp eax, ecx
jae 0x1400e983d
mov edi, edx
jmp 0x1400e98e6
mov ebx, edi
jmp 0x1400e97a7
mov dword [rbp - 0x38], eax
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]
xor r8d, r8d
mov rbx, rax
test rax, rax
jne 0x1400e986e
mov edi, 0xc0000017
mov r9, r13
jmp 0x1400e98e9
mov eax, dword [rsp + 0x20]
lea rdx, [rbx + 4]
mov dword [rbx], eax
cmp rdx, rbx
jb 0x1400e98c0
mov eax, dword [rsp + 0x24]
lea rcx, [rdx + 4]
mov dword [rdx], eax
cmp rcx, rdx
jb 0x1400e98c0
mov edx, dword [rbp - 0x38]
mov edi, r8d
mov rax, qword [rbp + 0xb8]
mov qword [rdx + rbx - 8], rax
mov r8d, dword [rsp + 0x24]
mov rdx, qword [rsp + 0x28]
call sub.msvcrt.dll_memcpy
mov esi, dword [rbp - 0x38]
xor r8d, r8d
mov r9, rbx
mov qword [rsp + 0x78], rbx
mov ebx, r8d
jmp 0x1400e98c8
mov r9, r13
mov edi, 0xc0000095
test rbx, rbx
je 0x1400e98e9
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r9, qword [rsp + 0x78]
xor r8d, r8d
or edi, 0x10000000
jl 0x1400eae75
mov qword [rbp + 0x20], r8
mov r13, r8
mov qword [rbp - 0x30], r8
test r9, r9
jne 0x1400e990f
mov edi, 0xc000000d
jmp 0x1400ea067
mov qword [rbp - 0x80], rsi
test rsi, rsi
je 0x1400e9fc2
lea rbx, [rsi + 8]
mov qword [rbp - 0x60], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rsp + 0x70], rax
test rax, rax
je 0x1400e9fc2
lea rdx, [0x140436ee8]
lea rcx, [0x14041dab8]
call fcn.1400edc30
mov r8, qword [rsp + 0x78]
xor edx, edx
mov byte [rsp + 0x30], dl
mov bl, dl
mov ecx, edx
test rsi, rsi
je 0x1400e997d
xor bl, byte [rcx + r8]
inc rcx
cmp rcx, rsi
jb 0x1400e996d
mov byte [rsp + 0x30], bl
mov r10, qword [rsp + 0x70]
mov rax, rsi
mov qword [rsp + 0x60], r8
movabs rdi, 0x93278d843bbdc445
mov qword [rbp + 0x178], rdi
mov r9, r10
mov qword [rbp - 0x50], r10
mov r14d, edx
mov dword [rsp + 0x38], edx
mov r11d, edx
and eax, 7
je 0x1400e9abc
mov dword [rsp + 0x3c], edx
mov r15d, edx
mov dword [rsp + 0x38], edx
mov ecx, edx
test eax, eax
je 0x1400e9a0d
mov r11d, 0x38
movzx edx, byte [r8]
inc r8
cmp r14d, 4
jge 0x1400e99eb
lea ecx, [r11 - 0x20]
shl edx, cl
mov ecx, dword [rsp + 0x38]
or ecx, edx
mov dword [rsp + 0x38], ecx
jmp 0x1400e99f7
mov ecx, r11d
shl edx, cl
mov ecx, dword [rsp + 0x38]
or r15d, edx
inc r14d
sub r11d, 8
cmp r14d, eax
jl 0x1400e99cc
mov dword [rsp + 0x3c], r15d
mov qword [rsp + 0x60], r8
mov r14d, ecx
xor r15d, 0xb7faa653
xor r14d, 0xd04a94a
xor r11d, r11d
mov ecx, r14d
mov edx, r15d
test eax, eax
je 0x1400e9a65
lea rdi, [r9 + 1]
mov qword [rbp - 0x50], rdi
cmp r11d, 4
jge 0x1400e9a40
rol ecx, 8
mov edi, ecx
jmp 0x1400e9a45
rol edx, 8
mov edi, edx
mov byte [r9], dil
inc r11d
mov rdi, qword [rbp - 0x50]
mov r9, rdi
cmp r11d, eax
jl 0x1400e9a2b
mov qword [rbp - 0x50], rdi
movabs rdi, 0x93278d843bbdc445
cmp eax, 4
jbe 0x1400e9a7c
mov ecx, 8
sub ecx, eax
shl ecx, 3
shr r15d, cl
shl r15d, cl
jmp 0x1400e9ab7
xor edx, edx
mov r15d, edx
cmp eax, 4
jae 0x1400e9ab7
lea esi, [rdx + 4]
sub esi, eax
lea rdx, [0x140437194]
lea rcx, [0x14041f264]
shl esi, 3
call fcn.1400ed8ec
mov r8, qword [rsp + 0x60]
mov ecx, esi
mov rsi, qword [rbp - 0x80]
mov r10, qword [rsp + 0x70]
shr r14d, cl
shl r14d, cl
mov r11d, dword [rsp + 0x3c]
mov r9, rsi
shr r9, 3
test r9, r9
je 0x1400e9dcc
movzx eax, word [rbp + 0x17e]
lea rcx, [r8 + 2]
mov esi, dword [rbp + 0x17c]
mov rbx, qword [rbp - 0x50]
movzx r12d, word [rbp + 0x17a]
add rbx, 7
mov r10d, dword [rsp + 0x38]
mov dword [rsp + 0x5c], eax
movzx eax, di
mov dword [rsp + 0x34], eax
movzx eax, si
mov r13d, eax
movzx eax, byte [rcx - 1]
movzx r8d, byte [rcx - 2]
movzx edx, byte [rcx + 2]
shl r8d, 8
or r8d, eax
shl edx, 8
movzx eax, byte [rcx]
shl r8d, 8
or r8d, eax
movzx eax, byte [rcx + 1]
shl r8d, 8
or r8d, eax
movzx eax, byte [rcx + 3]
or edx, eax
movzx eax, byte [rcx + 4]
shl edx, 8
or edx, eax
movzx eax, byte [rcx + 5]
add rcx, 8
shl edx, 8
or edx, eax
mov qword [rsp + 0x60], rcx
xor r15d, edx
mov eax, r15d
ror eax, 4
xor eax, dword [rsp + 0x34]
imul eax, r12d
xor eax, r8d
xor r14d, eax
mov eax, r14d
ror eax, 0xc
lea ecx, [r14 + rsi]
ror ecx, 8
imul ecx, r12d
sub ecx, eax
xor r15d, ecx
mov ecx, r15d
mov eax, r15d
xor ecx, edi
rol eax, 0xb
ror ecx, 0xe
imul ecx, r13d
xor ecx, eax
movzx eax, word [rbp + 0x17e]
xor r14d, ecx
lea ecx, [r14 + rdi]
ror ecx, 0xd
imul ecx, eax
mov eax, r14d
rol eax, 4
add ecx, eax
xor r15d, ecx
mov ecx, r15d
mov eax, r15d
shr eax, 6
xor ecx, r13d
imul ecx, dword [rsp + 0x34]
xor ecx, eax
xor r14d, ecx
mov eax, r14d
mov ecx, r14d
xor eax, r13d
ror ecx, 0xc
imul eax, r12d
xor ecx, eax
xor r15d, ecx
mov eax, r15d
ror eax, 9
sub eax, r13d
imul eax, dword [rsp + 0x34]
xor r14d, eax
mov eax, r14d
mov ecx, r14d
xor eax, dword [rsp + 0x34]
imul eax, dword [rsp + 0x5c]
ror ecx, 0xa
add ecx, eax
xor r15d, ecx
mov ecx, r15d
xor ecx, esi
ror ecx, 0xd
imul ecx, dword [rsp + 0x34]
mov eax, r15d
rol eax, 0xa
add ecx, eax
movzx eax, word [rbp + 0x17e]
xor r14d, ecx
mov ecx, r14d
xor ecx, eax
mov eax, r14d
imul ecx, r12d
shr eax, 0xf
add ecx, eax
xor r15d, ecx
mov ecx, r15d
mov eax, r15d
xor ecx, r12d
shr eax, 5
rol ecx, 6
imul ecx, r13d
add ecx, eax
mov eax, r15d
xor r14d, ecx
shr eax, 0xf
mov ecx, r15d
sub ecx, r13d
rol ecx, 3
imul ecx, dword [rsp + 0x34]
xor ecx, eax
xor r14d, ecx
mov ecx, r14d
mov eax, r14d
sub ecx, r13d
shr eax, 0xd
imul ecx, r12d
sub ecx, eax
xor r15d, ecx
mov ecx, edi
sub ecx, r15d
mov eax, r15d
ror ecx, 9
imul ecx, r13d
ror eax, 0xb
xor ecx, eax
xor r14d, ecx
movzx ecx, word [rbp + 0x17e]
mov eax, r14d
sub eax, ecx
sub eax, edi
xor r15d, eax
mov eax, r15d
mov ecx, r15d
ror ecx, 7
xor eax, r12d
imul eax, dword [rsp + 0x34]
sub eax, ecx
xor r14d, eax
movzx eax, word [rbp + 0x17e]
mov ecx, r14d
xor ecx, eax
mov eax, r14d
rol ecx, 4
imul ecx, r12d
ror eax, 0x10
sub ecx, eax
xor r15d, ecx
mov ecx, edi
sub ecx, r15d
mov eax, r15d
ror ecx, 0xa
imul ecx, r13d
ror eax, 4
add ecx, eax
movzx eax, word [rbp + 0x17e]
xor r14d, ecx
mov ecx, r14d
sub ecx, edi
ror ecx, 4
imul ecx, eax
mov eax, r14d
ror eax, 9
xor ecx, eax
xor r15d, ecx
mov ecx, r15d
mov eax, r15d
xor ecx, esi
rol eax, 2
rol ecx, 8
imul ecx, dword [rsp + 0x34]
sub ecx, eax
xor r14d, ecx
mov ecx, esi
sub ecx, r14d
mov eax, r14d
ror ecx, 0xb
imul ecx, r12d
ror eax, 0xc
sub ecx, eax
xor r15d, ecx
mov ecx, r15d
mov eax, r15d
xor ecx, r12d
shr eax, 8
imul ecx, r13d
xor ecx, eax
xor r14d, ecx
mov rcx, qword [rsp + 0x60]
xor r15d, r14d
xor r14d, r10d
mov byte [rbx - 4], r14b
xor r15d, edi
xor r15d, esi
ror r14d, 8
xor r15d, r11d
mov r10d, r8d
mov byte [rbx], r15b
mov r11d, edx
mov byte [rbx - 5], r14b
lea rbx, [rbx + 8]
ror r15d, 8
mov byte [rbx - 9], r15b
ror r14d, 8
mov byte [rbx - 0xe], r14b
ror r15d, 8
mov byte [rbx - 0xa], r15b
ror r14d, 8
ror r15d, 8
mov byte [rbx - 0xf], r14b
mov byte [rbx - 0xb], r15b
ror r15d, 8
ror r14d, 8
sub r9, 1
jne 0x1400e9b03
mov bl, byte [rsp + 0x30]
mov r12, qword [rbp - 0x10]
mov r13, qword [rbp - 0x30]
mov rsi, qword [rbp - 0x80]
mov r10, qword [rsp + 0x70]
movzx eax, bl
mov qword [r10 + rsi], rax
mov rsi, qword [rbp - 0x60]
mov qword [rbp + 0x150], rsi
mov qword [rbp + 0x20], r10
lea rax, [0x140436c30]
mov r14d, 8
mov qword [rbp + 0x108], rax
mov qword [rbp + 0x110], r14
lea rdi, [0x140436b90]
mov qword [rbp + 0x120], 0xa0
mov qword [rbp + 0x118], rdi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
lea r8d, [r14 + 0x28]
mov edx, r14d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
xor r15d, r15d
mov rbx, rax
test rax, rax
jne 0x1400e9e41
mov edi, 0xc0000017
jmp 0x1400e9faf
mov esi, esi
mov dword [rax], esi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, esi
mov edx, r14d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x1400e9e69
mov edi, 0xc0000017
jmp 0x1400e9f33
mov qword [rbx + 8], rax
mov rdx, qword [rsp + 0x70]
mov r8, rsi
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov esi, 0xa0
mov dword [rbx + 0x10], esi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, esi
mov edx, r14d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1400e9e5f
mov qword [rbx + 0x18], rax
movups xmm0, xmmword [rdi]
lea ecx, [rsi - 0x20]
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
adc dword [rax + 0x30], ecx
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]
movups xmmword [rax + rcx + 0x10], xmm1
mov dword [rbx + 0x20], r14d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
mov edx, r14d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rcx, rax
test rax, rax
je 0x1400e9e5f
mov qword [rbx + 0x28], rax
mov rax, qword [0x140436c30]
mov r13, rbx
mov qword [rcx], rax
mov edi, r15d
mov rbx, r15
test rbx, rbx
je 0x1400e9faf
mov rsi, qword [rbx + 8]
test rsi, rsi
je 0x1400e9f59
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 8], r15
mov rsi, qword [rbx + 0x18]
test rsi, rsi
je 0x1400e9f7a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 0x18], r15
mov rsi, qword [rbx + 0x28]
test rsi, rsi
je 0x1400e9f9b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 0x28], r15
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r14d, 0xc0000023
test edi, edi
js 0x1400e9fca
mov qword [rbp - 8], r13
mov r13, r15
jmp 0x1400e9fca
mov edi, 0xc0000001
xor r15d, r15d
mov rbx, qword [rbp + 0x20]
test rbx, rbx
je 0x1400e9feb
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0x20], r15
test r13, r13
je 0x1400ea067
mov rbx, qword [r13 + 8]
test rbx, rbx
je 0x1400ea011
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 8], r15
mov rbx, qword [r13 + 0x18]
test rbx, rbx
je 0x1400ea032
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x18], r15
mov rbx, qword [r13 + 0x28]
test rbx, rbx
je 0x1400ea053
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x28], r15
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
or edi, 0x10000000
jl 0x1400eae70
mov rsi, qword [rbp - 8]
mov ecx, dword [rsi]
mov r8d, dword [rsi + 0x20]
add ecx, 4
mov edx, dword [rsi + 0x10]
cmp ecx, 4
jb 0x1400ea1a2
lea eax, [rcx + 4]
cmp eax, ecx
jb 0x1400ea1a2
lea ecx, [rax + rdx]
cmp ecx, eax
jb 0x1400ea1a2
lea eax, [rcx + 4]
cmp eax, ecx
jb 0x1400ea1a2
lea ecx, [rax + r8]
cmp ecx, eax
jb 0x1400ea1a2
mov dword [rbp + 0x5c], ecx
mov ebx, ecx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, ebx
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
xor r13d, r13d
mov rbx, rax
test rax, rax
jne 0x1400ea0f0
mov edi, 0xc0000017
mov r15d, 0xc0000095
jmp 0x1400ea1ae
mov eax, dword [rsi]
lea rdi, [rbx + 4]
mov dword [rbx], eax
cmp rdi, rbx
jb 0x1400ea17b
mov r8d, dword [rsi]
mov rcx, rdi
mov rdx, qword [rsi + 8]
call sub.msvcrt.dll_memcpy
mov ecx, dword [rsi]
add rcx, rdi
cmp rcx, rdi
jb 0x1400ea17b
mov eax, dword [rsi + 0x10]
lea rdi, [rcx + 4]
mov dword [rcx], eax
cmp rdi, rcx
jb 0x1400ea17b
mov r8d, dword [rsi + 0x10]
mov rcx, rdi
mov rdx, qword [rsi + 0x18]
call sub.msvcrt.dll_memcpy
mov ecx, dword [rsi + 0x10]
add rcx, rdi
cmp rcx, rdi
jb 0x1400ea17b
mov eax, dword [rsi + 0x20]
lea rdi, [rcx + 4]
mov dword [rcx], eax
cmp rdi, rcx
jb 0x1400ea17b
mov r8d, dword [rsi + 0x20]
mov rcx, rdi
mov rdx, qword [rsi + 0x28]
call sub.msvcrt.dll_memcpy
mov eax, dword [rsi + 0x20]
add rax, rdi
cmp rax, rdi
jb 0x1400ea17b
mov eax, dword [rbp + 0x5c]
mov edi, r13d
mov qword [rbp + 0x40], rbx
mov rbx, r13
mov dword [rsp + 0x50], eax
jmp 0x1400ea180
mov edi, 0xc0000095
test rbx, rbx
je 0x1400ea0e5
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1400ea0e5
mov r15d, 0xc0000095
xor r13d, r13d
mov edi, r15d
or edi, 0x10000000
jl 0x1400eae70
mov dword [rbp + 0x60], r13d
mov dword [rbp + 0x88], 0x30
mov eax, 0x38
mov dword [rbp + 0x94], eax
mov dword [rbp + 0x98], eax
cmp qword [rsp + 0x28], r13
jne 0x1400ea1ea
mov edi, 0xc000000d
jmp 0x1400ea2c4
cmp dword [rsp + 0x20], 1
jbe 0x1400ea1e0
mov rax, qword [rsp + 0x28]
mov edx, r13d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x1400ea2c1
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x1400ea2c1
inc edx
cmp edx, 1
jb 0x1400ea1f9
mov r8d, dword [rax]
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x1400ea2c1
test r8d, r8d
mov dword [rbp + 0x60], r8d
mov rax, r13
cmovne rax, rcx
mov qword [rbp + 0x128], rax
cmp dword [rsp + 0x20], 2
jbe 0x1400ea1e0
mov rax, qword [rsp + 0x28]
mov edx, r13d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x1400ea2c1
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x1400ea2c1
inc edx
cmp edx, 2
jb 0x1400ea24f
mov edx, dword [rax]
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x1400ea2c1
test edx, edx
mov dword [rbp + 0x9c], edx
mov rax, r13
cmovne rax, rcx
mov qword [rbp + 0x130], rax
lea eax, [r8 + 0x40]
cmp eax, 0x40
jb 0x1400ea2c1
lea ecx, [rax + 4]
cmp ecx, eax
jb 0x1400ea2c1
lea eax, [rcx + rdx]
cmp eax, ecx
jb 0x1400ea2c1
mov dword [rbp + 0xa0], eax
mov edi, r13d
cmp eax, 0x400000
jbe 0x1400ea2bb
mov edi, 0x8000ffff
jmp 0x1400eae70
mov dword [rsp + 0x40], eax
jmp 0x1400ea2c4
mov edi, r15d
test edi, edi
js 0x1400eae70
mov ebx, dword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, ebx
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x1400ea2f7
mov rsi, qword [rbp - 0x28]
mov edi, 0xd0000017
jmp 0x1400ea303
mov rsi, rax
mov qword [rbp - 0x28], rax
mov edi, 0x10000000
test edi, edi
js 0x1400eae70
mov rax, qword [rbp + 0x40]
test rax, rax
jne 0x1400ea31e
mov edi, 0x80070057
jmp 0x1400eae70
test rsi, rsi
je 0x1400ea314
mov qword [rbp + 0xe8], rax
lea r8, [rbp + 0xc8]
mov eax, dword [rsp + 0x50]
lea rdx, [0x1403c7468]
mov dword [rbp + 0xf8], eax
mov ecx, 1
mov eax, dword [rsp + 0x40]
mov dword [rbp + 0xfc], eax
mov qword [rbp + 0xf0], rsi
mov dword [rbp + 0x100], r13d
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
jne 0x1400ea38c
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
test edi, edi
js 0x1400ea386
mov edi, 0x80004005
mov edx, dword [rsp + 0x40]
jmp 0x1400ea3e2
mov rcx, qword [rbp + 0xc8]
lea rdx, [0x1403d1798]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test rax, rax
je 0x1400ea369
mov rax, qword [0x1403c1610]
mov rcx, rbx
call rax
xor r9d, r9d
lea rdx, [rbp + 0xe8]
mov rax, rbx
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call rax
mov edx, dword [rsp + 0x40]
mov edi, eax
or edi, 0x10000000
cmovge edx, dword [rbp + 0xfc]
mov dword [rsp + 0x40], edx
cmp edi, 0xd0000023
jne 0x1400ea3f4
mov edi, 0x8007007a
jmp 0x1400eae70
test edi, edi
js 0x1400eae70
mov qword [rbp - 0x80], r13
mov ebx, 0xc000003e
mov dword [rbp - 0x50], ebx
cmp edx, 4
jae 0x1400ea414
mov edi, ebx
jmp 0x1400ea75e
mov r13d, dword [rsi]
lea rcx, [rsi + 4]
cmp rcx, rsi
jb 0x1400ea758
lea eax, [rdx - 4]
cmp eax, r13d
jae 0x1400ea433
mov edi, ebx
jmp 0x1400ea75b
lea r9, [rcx + r13]
mov qword [rbp - 0x60], r13
mov qword [rbp - 0x30], r9
cmp r9, rcx
jb 0x1400ea758
lea r8d, [r13 + 4]
cmp r8d, 4
jb 0x1400ea758
mov eax, edx
sub eax, r8d
cmp eax, 4
jb 0x1400ea42c
mov edi, dword [r9]
lea rcx, [r9 + 4]
cmp rcx, r9
jb 0x1400ea758
lea r9d, [r8 + 4]
cmp r9d, r8d
jb 0x1400ea758
mov eax, edx
sub eax, r9d
cmp eax, edi
jb 0x1400ea42c
lea r10, [rcx + rdi]
cmp r10, rcx
jb 0x1400ea758
lea r8d, [r9 + rdi]
cmp r8d, r9d
jb 0x1400ea758
mov eax, edx
sub eax, r8d
cmp eax, 4
jb 0x1400ea42c
mov r15d, dword [r10]
lea rax, [r10 + 4]
mov qword [rsp + 0x60], rax
cmp rax, r10
jb 0x1400ea751
lea ecx, [r8 + 4]
cmp ecx, r8d
jb 0x1400ea751
mov eax, edx
sub eax, ecx
cmp eax, r15d
jb 0x1400ea42c
lea r8d, [rcx + r15]
cmp r8d, ecx
jb 0x1400ea751
cmp edx, r8d
jne 0x1400ea42c
lea ecx, [rdi + r13]
mov eax, edx
add ecx, r15d
add rcx, 0xc
cmp rcx, rax
jne 0x1400ea42c
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
test rax, rax
jne 0x1400ea532
mov edi, 0xc0000017
xor r13d, r13d
jmp 0x1400ea6b5
mov r12, qword [rbp - 0x28]
add r12, 4
je 0x1400ea593
mov dword [rax], r13d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
lea rdx, [0x14043e130]
mov r13, rax
lea rcx, [0x140420b30]
call fcn.1400ee2b8
test r13, r13
jne 0x1400ea57b
mov edi, 0xc0000017
jmp 0x1400ea639
mov qword [rsi + 8], r13
mov r8, qword [rbp - 0x60]
mov rdx, r12
mov rcx, r13
call sub.msvcrt.dll_memcpy
xor r13d, r13d
jmp 0x1400ea59d
xor r13d, r13d
mov dword [rax], r13d
mov qword [rax + 8], r13
mov r12, qword [rbp - 0x30]
add r12, 4
je 0x1400ea5e1
mov dword [rsi + 0x10], edi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x1400ea5cd
mov edi, 0xc0000017
jmp 0x1400ea639
mov qword [rsi + 0x18], rax
mov r8, rdi
mov rdx, r12
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x1400ea5e9
mov dword [rsi + 0x10], r13d
mov qword [rsi + 0x18], r13
mov rdi, qword [rsp + 0x60]
test rdi, rdi
je 0x1400ea627
mov dword [rsi + 0x20], r15d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1400ea5c6
mov qword [rsi + 0x28], rax
mov r8, r15
mov rdx, rdi
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x1400ea62f
mov dword [rsi + 0x20], r13d
mov qword [rsi + 0x28], r13
mov qword [rbp - 0x80], rsi
mov edi, r13d
mov rsi, r13
test rsi, rsi
je 0x1400ea6b5
mov r15, qword [rsi + 8]
test r15, r15
je 0x1400ea65f
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 8], r13
mov r15, qword [rsi + 0x18]
test r15, r15
je 0x1400ea680
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 0x18], r13
mov r15, qword [rsi + 0x28]
test r15, r15
je 0x1400ea6a1
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 0x28], r13
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r12, qword [rbp - 0x80]
test edi, edi
mov rsi, r13
cmovs rsi, qword [rbp - 0x80]
cmovs r12, r13
mov qword [rbp - 0x10], r12
test rsi, rsi
je 0x1400ea75e
mov r15, qword [rsi + 8]
test r15, r15
je 0x1400ea6f5
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 8], r13
mov r15, qword [rsi + 0x18]
test r15, r15
je 0x1400ea716
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 0x18], r13
mov r15, qword [rsi + 0x28]
test r15, r15
je 0x1400ea737
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 0x28], r13
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp - 0x10], r12
jmp 0x1400ea75e
mov edi, 0xc0000095
jmp 0x1400ea75b
mov edi, r15d
xor r13d, r13d
or edi, 0x10000000
jl 0x1400eae70
mov qword [rbp - 0x58], r13
mov rsi, r13
mov qword [rbp - 0x80], r13
mov r15, r13
test r12, r12
jne 0x1400ea787
mov edi, 0xd000000d
jmp 0x1400eae70
mov rdi, qword [r12 + 8]
mov qword [rbp + 0xd0], rdi
test rdi, rdi
je 0x1400ea77d
cmp dword [r12], r13d
je 0x1400ea77d
mov r13d, dword [r12]
xor r11d, r11d
test r13, r13
je 0x1400eacd8
add r13, 0xfffffffffffffff8
mov qword [rbp - 0x30], r13
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
xor r11d, r11d
mov qword [rsp + 0x60], rax
mov r10, rax
test rax, rax
je 0x1400eacd4
mov r9, r13
mov dl, r11b
mov byte [rsp + 0x30], dl
movabs r8, 0x6223e824ab21d998
mov qword [rbp + 0x178], r8
mov rsi, rdi
mov edi, r11d
and r9d, 7
je 0x1400ea900
mov dword [rbp - 0x78], r11d
mov ecx, r11d
mov dword [rsp + 0x3c], ecx
test r9d, r9d
je 0x1400ea85f
lea r8d, [r11 + 0x38]
movzx eax, byte [rsi]
inc rsi
cmp r11d, 4
jge 0x1400ea83b
lea ecx, [r8 - 0x20]
shl eax, cl
mov ecx, dword [rsp + 0x3c]
or ecx, eax
mov dword [rsp + 0x3c], ecx
jmp 0x1400ea846
mov ecx, r8d
shl eax, cl
mov ecx, dword [rsp + 0x3c]
or edi, eax
inc r11d
sub r8d, 8
cmp r11d, r9d
jl 0x1400ea81d
mov dword [rbp - 0x78], edi
movabs r8, 0x6223e824ab21d998
and dword [rsp + 0x5c], 0
mov r11d, ecx
xor r11d, 0xf27cb619
xor edi, 0xaef73a1f
mov eax, r11d
mov ecx, edi
test r9d, r9d
je 0x1400ea8c9
mov r15d, dword [rsp + 0x5c]
mov r8, r10
lea rdx, [r8 + 1]
mov qword [rbp - 0x60], rdx
cmp r15d, 4
jge 0x1400ea89b
rol eax, 8
mov edx, eax
jmp 0x1400ea8a0
rol ecx, 8
mov edx, ecx
mov byte [r8], dl
inc r15d
mov rdx, qword [rbp - 0x60]
mov r8, rdx
cmp r15d, r9d
jl 0x1400ea886
mov r15, qword [rbp - 0x80]
mov rax, rdx
mov dl, byte [rsp + 0x30]
movabs r8, 0x6223e824ab21d998
jmp 0x1400ea8cc
mov rax, r10
cmp r9d, 4
jbe 0x1400ea8e3
mov ecx, 8
sub ecx, r9d
shl ecx, 3
shr edi, cl
shl edi, cl
jmp 0x1400ea905
xor ecx, ecx
mov edi, ecx
cmp r9d, 4
jae 0x1400ea905
mov ecx, 4
sub ecx, r9d
shl ecx, 3
shr r11d, cl
shl r11d, cl
jmp 0x1400ea905
mov dword [rsp + 0x3c], r11d
mov rcx, r13
shr rcx, 3
mov qword [rbp - 0x60], rcx
test rcx, rcx
je 0x1400eac3a
movzx ecx, word [rbp + 0x17e]
lea rbx, [rsi + 2]
mov r13d, dword [rbp + 0x17c]
lea r12, [rax + 7]
mov esi, dword [rbp - 0x78]
mov r15d, dword [rsp + 0x3c]
mov rdx, qword [rbp - 0x60]
mov dword [rsp + 0x5c], ecx
movzx ecx, word [rbp + 0x17a]
mov dword [rsp + 0x50], ecx
movzx ecx, r13w
mov dword [rsp + 0x34], ecx
movzx ecx, r8w
mov dword [rsp + 0x38], ecx
movzx eax, byte [rbx - 1]
movzx r10d, byte [rbx - 2]
movzx r9d, byte [rbx + 2]
shl r10d, 8
or r10d, eax
shl r9d, 8
movzx eax, byte [rbx]
lea rbx, [rbx + 8]
shl r10d, 8
or r10d, eax
movzx eax, byte [rbx - 7]
shl r10d, 8
or r10d, eax
movzx eax, byte [rbx - 5]
or r9d, eax
xor r11d, r10d
movzx eax, byte [rbx - 4]
shl r9d, 8
or r9d, eax
movzx eax, byte [rbx - 3]
shl r9d, 8
or r9d, eax
xor edi, r9d
xor edi, r11d
xor edi, r13d
xor edi, r8d
mov ecx, edi
mov eax, edi
sub ecx, r8d
rol eax, 0xa
rol ecx, 5
imul ecx, dword [rsp + 0x34]
add ecx, eax
movzx eax, word [rbp + 0x17a]
xor r11d, ecx
lea ecx, [r11 + r13]
ror ecx, 9
imul ecx, eax
mov eax, r11d
rol eax, 2
sub ecx, eax
xor edi, ecx
mov ecx, edi
mov eax, edi
sub ecx, dword [rsp + 0x34]
imul ecx, dword [rsp + 0x38]
shr eax, 0xd
sub ecx, eax
movzx eax, word [rbp + 0x17e]
xor r11d, ecx
movzx ecx, word [rbp + 0x17a]
xor ecx, r11d
rol ecx, 6
imul ecx, eax
mov eax, r11d
rol eax, 2
sub ecx, eax
mov eax, r13d
xor edi, ecx
mov ecx, edi
xor ecx, r8d
sub eax, ecx
xor r11d, eax
mov eax, dword [rsp + 0x34]
xor eax, r11d
mov ecx, r11d
imul eax, dword [rsp + 0x50]
ror ecx, 6
xor ecx, eax
xor edi, ecx
mov eax, edi
rol eax, 2
lea ecx, [rdi + r13]
ror ecx, 0xf
imul ecx, dword [rsp + 0x38]
add ecx, eax
movzx eax, word [rbp + 0x17e]
xor r11d, ecx
mov ecx, r11d
sub ecx, r8d
ror ecx, 0xe
imul ecx, eax
mov eax, r11d
rol eax, 8
sub ecx, eax
xor edi, ecx
mov ecx, edi
mov eax, edi
xor ecx, r8d
ror eax, 0xa
ror ecx, 0xc
imul ecx, dword [rsp + 0x34]
xor ecx, eax
movzx eax, word [rbp + 0x17a]
xor r11d, ecx
movzx ecx, word [rbp + 0x17e]
xor ecx, r11d
imul ecx, eax
mov eax, r11d
shr eax, 0xa
xor ecx, eax
xor edi, ecx
movzx ecx, word [rbp + 0x17e]
mov eax, edi
not eax
ror eax, 5
add eax, dword [rsp + 0x38]
imul eax, ecx
xor r11d, eax
mov eax, r11d
ror eax, 0xc
sub eax, ecx
imul eax, dword [rsp + 0x34]
xor edi, eax
mov ecx, edi
mov eax, edi
xor ecx, r8d
rol eax, 0xe
ror ecx, 3
imul ecx, dword [rsp + 0x34]
add ecx, eax
mov eax, r8d
xor r11d, ecx
mov ecx, r11d
xor ecx, r13d
sub eax, ecx
mov ecx, dword [rsp + 0x38]
xor edi, eax
movzx eax, word [rbp + 0x17e]
xor r11d, edi
xor r11d, r13d
xor r11d, r8d
xor ecx, r11d
rol ecx, 3
imul ecx, eax
mov eax, r11d
rol eax, 0xe
add ecx, eax
xor edi, ecx
mov ecx, r8d
sub ecx, edi
mov eax, edi
ror ecx, 2
imul ecx, dword [rsp + 0x34]
ror eax, 0xd
sub ecx, eax
movzx eax, word [rbp + 0x17a]
xor r11d, ecx
mov ecx, r11d
sub ecx, r13d
rol ecx, 4
imul ecx, eax
mov eax, r11d
rol eax, 1
xor ecx, eax
xor edi, ecx
movzx ecx, word [rbp + 0x17a]
mov eax, edi
ror eax, 7
xor eax, dword [rsp + 0x38]
imul eax, ecx
xor r11d, eax
mov eax, dword [rsp + 0x38]
mov ecx, r11d
xor eax, r11d
ror ecx, 1
imul eax, dword [rsp + 0x5c]
xor ecx, eax
xor edi, ecx
movzx ecx, word [rbp + 0x17a]
xor ecx, edi
mov eax, edi
rol ecx, 5
imul ecx, dword [rsp + 0x34]
rol eax, 0xf
sub ecx, eax
movzx eax, word [rbp + 0x17e]
xor r11d, ecx
xor eax, r11d
mov ecx, r11d
imul eax, dword [rsp + 0x50]
ror ecx, 0xb
add ecx, eax
xor edi, ecx
mov eax, edi
ror eax, 8
lea ecx, [rdi + r13]
xor edi, esi
ror ecx, 0xb
mov esi, r9d
imul ecx, dword [rsp + 0x38]
sub ecx, eax
xor ecx, r15d
mov r15d, r10d
xor r11d, ecx
mov byte [r12 - 4], r11b
mov byte [r12], dil
lea r12, [r12 + 8]
ror r11d, 8
mov byte [r12 - 0xd], r11b
ror edi, 8
mov byte [r12 - 9], dil
ror r11d, 8
mov byte [r12 - 0xe], r11b
ror edi, 8
mov byte [r12 - 0xa], dil
ror r11d, 8
ror edi, 8
mov byte [r12 - 0xf], r11b
mov byte [r12 - 0xb], dil
ror edi, 8
ror r11d, 8
sub rdx, 1
jne 0x1400ea95a
mov dl, byte [rsp + 0x30]
mov ebx, dword [rbp - 0x50]
mov r12, qword [rbp - 0x10]
mov r15, qword [rbp - 0x80]
mov r13, qword [rbp - 0x30]
mov r10, qword [rsp + 0x60]
xor r8d, r8d
mov eax, r8d
test r13, r13
je 0x1400eac51
xor dl, byte [rax + r10]
inc rax
cmp rax, r13
jb 0x1400eac45
mov rcx, qword [rbp + 0xd0]
movzx eax, dl
cmp rax, qword [rcx + r13]
je 0x1400eac6c
mov rsi, qword [rbp - 0x58]
mov edi, 0xc004d501
jmp 0x1400eac81
mov rsi, r10
mov qword [rbp - 0x58], r10
mov r10, r8
mov qword [rsp + 0x60], r8
mov r15, r13
mov edi, r8d
test r10, r10
je 0x1400eaca0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x60]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [rbp - 0x58]
lea rdx, [0x14043afd0]
lea rcx, [0x14041598c]
call fcn.1400edf70
xor r11d, r11d
test edi, edi
js 0x1400eacd8
mov r13, rsi
mov qword [rsp + 0x48], rsi
mov esi, r11d
mov qword [rbp - 0x58], r11
mov dword [rbp - 0x74], r15d
mov edi, 0x10000000
jmp 0x1400eace6
mov rsi, qword [rbp - 0x58]
mov r15d, dword [rbp - 0x74]
mov edi, 0xd0000001
mov r13, qword [rsp + 0x48]
test rsi, rsi
je 0x1400ead0a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r15d, dword [rbp - 0x74]
xor r11d, r11d
mov qword [rbp - 0x58], r11
test edi, edi
js 0x1400eae75
cmp r15d, 4
jae 0x1400ead1f
mov edi, ebx
jmp 0x1400eae6c
mov r9d, dword [r13]
lea rcx, [r13 + 4]
mov dword [rsp + 0x70], r9d
cmp rcx, r13
jb 0x1400eae67
lea eax, [r15 - 4]
cmp eax, 4
jb 0x1400ead18
mov esi, dword [rcx]
lea rdi, [rcx + 4]
cmp rdi, rcx
jb 0x1400eae67
lea eax, [r15 - 8]
cmp eax, esi
jb 0x1400ead18
lea eax, [rsi + 8]
cmp eax, 8
jb 0x1400eae67
mov r8, qword [rsp + 0x48]
lea rdx, [rdi + rsi]
mov ecx, r15d
lea rax, [r8 + rcx]
cmp rax, rdx
jb 0x1400ead18
mov rax, r8
sub rax, rdi
sub rax, rsi
add rax, rcx
cmp rax, 8
jae 0x1400ead18
mov dword [rsp + 0x50], r11d
mov r15, r11
mov r8d, r11d
test rdi, rdi
je 0x1400eae01
mov rcx, rdi
cmp rdx, rdi
jb 0x1400eae67
jbe 0x1400eadfc
lea rax, [rcx + 4]
cmp rax, rcx
jb 0x1400eae67
cmp rax, rdx
ja 0x1400eadee
mov eax, dword [rcx]
add eax, 4
cmp eax, 4
jb 0x1400eadf5
mov dword [rbp + 0xc0], eax
mov r9d, eax
add r9, rcx
cmp r9, rcx
jb 0x1400eae67
mov rcx, r9
cmp r9, rdx
ja 0x1400eadee
inc r8d
mov dword [rsp + 0x50], r8d
cmp rcx, rdx
jae 0x1400eadff
jmp 0x1400eada6
mov edi, 0xc000000d
jmp 0x1400eae6c
mov edi, 0xc0000095
jmp 0x1400eae55
cmp rcx, rdx
jne 0x1400eadee
test esi, esi
je 0x1400eae2e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
xor r11d, r11d
mov r15, rax
test rax, rax
jne 0x1400eae2e
mov edi, 0xc0000017
jmp 0x1400eae55
test rdi, rdi
je 0x1400eae44
mov r8, rsi
mov rdx, rdi
mov rcx, r15
call sub.msvcrt.dll_memcpy
xor r11d, r11d
mov eax, dword [rsp + 0x50]
mov dword [rbp - 0x70], eax
mov qword [rbp - 0x68], r15
mov dword [rbp - 0x6c], esi
mov edi, r11d
test edi, edi
js 0x1400eae6c
mov eax, dword [rsp + 0x70]
cmp eax, dword [rbp - 0x70]
je 0x1400eae6c
jmp 0x1400ead18
mov edi, 0xc0000095
bts edi, 0x1c
mov r13, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x78]
xor r15d, r15d
test rbx, rbx
je 0x1400eae96
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [rbp - 8]
test rsi, rsi
je 0x1400eaf1a
mov rbx, qword [rsi + 8]
test rbx, rbx
je 0x1400eaec0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 8], r15
mov rbx, qword [rsi + 0x18]
test rbx, rbx
je 0x1400eaee1
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 0x18], r15
mov rbx, qword [rsi + 0x28]
test rbx, rbx
je 0x1400eaf02
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsi + 0x28], r15
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp - 8], r15
mov rbx, qword [rbp + 0x40]
test rbx, rbx
je 0x1400eaf37
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 - 0x28]
test rbx, rbx
je 0x1400eaf54
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r12, r12
je 0x1400eafd6
mov rbx, qword [r12 + 8]
test rbx, rbx
je 0x1400eaf7c
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r12 + 8], r15
mov rbx, qword [r12 + 0x18]
test rbx, rbx
je 0x1400eaf9f
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r12 + 0x18], r15
mov rbx, qword [r12 + 0x28]
test rbx, rbx
je 0x1400eafc2
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r12 + 0x28], r15
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r13, r13
je 0x1400eafef
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
xor r13d, r13d
mov ebx, edi
test edi, edi
js 0x1400e8ff8
cmp dword [rbp - 0x70], 3
je 0x1400eb00c
mov ebx, 0xc004d501
jmp 0x1400e8ff8
cmp qword [rbp - 0x68], r13
jne 0x1400eb01f
mov ebx, 0xc000000d
mov r9d, 0xc0000095
jmp 0x1400eb067
mov rdi, qword [rbp - 0x68]
mov ecx, dword [rdi]
lea rdx, [rdi + 4]
cmp rdx, rdi
jb 0x1400eb05e
test ecx, ecx
mov dword [rbp + 0xc4], ecx
mov rax, r13
cmovne rax, rdx
mov qword [rbp + 0x138], rax
mov ebx, r13d
cmp ecx, 4
jne 0x1400eb18a
mov ecx, dword [rax]
mov r9d, 0xc0000095
mov dword [rsp + 0x68], ecx
jmp 0x1400eb06b
mov r9d, 0xc0000095
mov ebx, r9d
mov ecx, dword [rsp + 0x68]
test ebx, ebx
js 0x1400e8ff8
mov ebx, ecx
test ecx, ecx
js 0x1400e8ff8
cmp qword [rbp - 0x68], r13
jne 0x1400eb08a
mov ebx, 0xc000000d
jmp 0x1400eb0e7
mov rax, qword [rbp - 0x68]
mov edx, r13d
lea r8, [rax + 4]
cmp r8, rax
jb 0x1400eb0e4
mov eax, dword [rax]
add rax, r8
cmp rax, r8
jb 0x1400eb0e4
inc edx
cmp edx, 1
jb 0x1400eb091
mov edx, dword [rax]
lea r8, [rax + 4]
cmp r8, rax
jb 0x1400eb0e4
test edx, edx
mov dword [rbp + 0xe0], edx
mov rax, r13
cmovne rax, r8
mov qword [rbp + 0x140], rax
mov ebx, r13d
cmp edx, 8
jne 0x1400eb18a
mov rax, qword [rax]
mov qword [rbp + 0xd8], rax
jmp 0x1400eb0e7
mov ebx, r9d
test ebx, ebx
js 0x1400e8ff8
mov rax, qword [rbp + 0xd8]
cmp qword [rbp + 0x48], rax
jne 0x1400eb002
cmp qword [rbp - 0x68], r13
jne 0x1400eb110
mov ebx, 0xc000000d
jmp 0x1400e8ff8
mov rax, qword [rbp - 0x68]
mov edx, r13d
lea r8, [rax + 4]
cmp r8, rax
jb 0x1400eb171
mov eax, dword [rax]
add rax, r8
cmp rax, r8
jb 0x1400eb171
inc edx
cmp edx, 2
jb 0x1400eb117
mov edx, dword [rax]
lea r8, [rax + 4]
cmp r8, rax
jb 0x1400eb171
test edx, edx
mov dword [rbp + 0xe4], edx
mov rax, r13
cmovne rax, r8
mov qword [rbp + 0x148], rax
mov ebx, r13d
cmp edx, 0x10
je 0x1400eb164
mov ebx, 0x8007000d
jmp 0x1400e8ff8
movups xmm0, xmmword [rax]
movdqu xmmword [rbp + 0x180], xmm0
jmp 0x1400eb199
mov ebx, r9d
jmp 0x1400e8ff8
or qword [rbp - 0x20], 0xffffffffffffffff
mov ebx, edi
jmp 0x1400e8ff8
or qword [rbp - 0x18], 0xffffffffffffffff
mov ebx, r14d
jmp 0x1400e8ff8
mov ecx, dword [rsp + 0x68]
xor r13d, r13d
test ebx, ebx
js 0x1400e8ff8
test ecx, ecx
cmovne ebx, ecx
jmp 0x1400e8ff8