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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2e0]
sub rsp, 0x3e0
mov rax, qword [0x1400b77a8]
xor rax, rsp
mov qword [rbp + 0x2d0], rax
xor r14d, r14d
mov qword [rbp + 0x128], r8
mov dword [rbp + 0x74], r14d
mov r12, r8
mov edi, edx
mov dword [rbp + 0x70], edx
mov rsi, rcx
mov qword [rbp + 0x120], rcx
mov rcx, qword [0x1400b72f8]
lea rax, [0x1400b72f8]
cmp rcx, rax
je 0x14001c6d2
test byte [rcx + 0x44], 0x80
jne 0x14001c6ba
jmp 0x14001c6d2
test r15d, r15d
js 0x1400221c8
cmp ebx, 4
jne 0x1400221cd
mov rax, qword [rbp + 0xc8]
mov ebx, dword [rbp + 0xc4]
mov ecx, dword [rax]
mov dword [rbp + 0x74], ecx
lea rcx, [rbp + 0xc8]
call fcn.140008904
test ebx, ebx
js 0x140022223
cmp dword [rbp + 0x74], 1
jne 0x140022223
mov rcx, qword [0x1400b72f8]
lea r15, [0x1400b72f8]
cmp rcx, r15
je 0x140005115
test byte [rcx + 0x44], 0x80
jne 0x1400221d7
mov r8, r12
mov edx, edi
mov rcx, rsi
call fcn.140005750
mov r14d, eax
mov rax, qword [0x1400b72f8]
cmp rax, r15
je 0x14000514a
test byte [rax + 0x44], 0x80
jne 0x1400221f2
cmp rax, r15
je 0x14000514a
test byte [rax + 0x44], 0x80
jne 0x14002227d
mov eax, r14d
mov rcx, qword [rbp + 0x2d0]
xor rcx, rsp
call fcn.140013440
mov rbx, qword [rsp + 0x438]
add rsp, 0x3e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rcx, qword [rcx + 0x38]
lea r8, [0x1400abfc8]
mov edx, 0x16
mov r9d, edi
call fcn.140030af8
mov qword [rbp + 0xc8], r14
mov dword [rbp + 0xc4], r14d
mov dword [rbp + 0x6c], r14d
mov qword [rbp - 0x18], r14
mov dword [rbp + 0x30], r14d
mov edx, 4
mov dword [rbp + 0x68], r14d
lea ecx, [rdx + 0x3c]
call qword [sym.imp.KERNELBASE.dll_LocalAlloc]
nop dword [rax + rax]
lea rcx, [rbp - 0x18]
mov qword [rbp + 0x138], rax
mov rbx, rax
call fcn.140008904
mov r13d, 0x8007007a
test rbx, rbx
jne 0x14001c72f
mov qword [rbp - 0x18], r14
lea r15d, [r13 - 0x6c]
jmp 0x14002216a
xorps xmm0, xmm0
mov qword [rbp - 0x18], rbx
lea rax, [0x1400b7950]
mov qword [rbp - 0x30], r14
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp + 0x150], rax
mov r13, r14
mov qword [rsp + 0x58], r14
mov dword [rbp + 0x58], r14d
mov dword [rbp - 0x28], r14d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov esi, 8
mov r8d, 0xa0
mov rcx, rax
mov edx, esi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
or dword [rsp + 0x78], 0xffffffff
lea r8, [0x1400b7898]
mov r12, rax
movabs rbx, 0xc81ecb17b1b54a58
mov r15d, 0xc0000017
movabs rdi, 0x7f1137fab69605e
test rax, rax
jne 0x14001c7bc
mov dword [rsp + 0x30], r15d
jmp 0x14001d251
mov rax, qword [rbp + 0x150]
mov edx, 0x80
mov qword [rsp + 0x40], r12
movups xmm0, xmmword [rax]
movups xmmword [r12], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r12 + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [r12 + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [r12 + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [r12 + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [r12 + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [r12 + 0x60], xmm0
movups xmm1, xmmword [rax + 0x70]
movups xmmword [r12 + rdx - 0x10], xmm1
movups xmm0, xmmword [rax + rdx]
movups xmmword [r12 + rdx], xmm0
movups xmm1, xmmword [rax + rdx + 0x10]
movups xmmword [r12 + rdx + 0x10], xmm1
mov qword [rbp + 0x158], r8
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
mov edx, esi
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
je 0x14001cfef
mov rax, qword [rbp + 0x158]
mov qword [rbp - 0x30], r13
mov rcx, qword [rax]
mov qword [r13], rcx
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x130], rax
mov esi, 4
mov dword [rbp + 0x2c0], r14d
mov edx, esi
lea r8, [rsp + 0x34]
mov ecx, esi
call fcn.140005588
mov r11d, dword [rbp - 0x48]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x30], eax
cmovns r11d, dword [rsp + 0x34]
mov dword [rbp - 0x48], r11d
js 0x14001cff4
lea r8, [rbp + 0x2c0]
mov edx, r11d
xor ecx, ecx
call fcn.140005588
mov r15d, eax
mov r9d, 0x10000000
or r15d, r9d
mov dword [rsp + 0x30], r15d
jl 0x14001cff4
lea r8, [rsp + 0x34]
mov edx, 0xa0
mov ecx, esi
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r11d, dword [rsp + 0x34]
mov dword [rbp - 0x48], r11d
js 0x14001cff4
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r11d
call fcn.140005588
mov r15d, eax
or r15d, r9d
mov dword [rsp + 0x30], r15d
jl 0x14001cff4
lea r8, [rsp + 0x34]
mov ecx, esi
lea edx, [rsi + 4]
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r11d, dword [rsp + 0x34]
mov dword [rbp - 0x48], r11d
js 0x14001cff4
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r11d
call fcn.140005588
mov r15d, eax
or r15d, r9d
mov dword [rsp + 0x30], r15d
jl 0x14001cff4
lea r8, [rsp + 0x34]
mov ecx, esi
lea edx, [rsi + 4]
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r11d, dword [rsp + 0x34]
mov dword [rbp - 0x48], r11d
js 0x14001cff4
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r11d
call fcn.140005588
mov r15d, eax
or r15d, r9d
mov dword [rsp + 0x30], r15d
jl 0x14001cff4
lea r8, [rbp - 0x60]
lea rcx, str.Printing_Spooler_Core_Spoolss_Licensing_Enabled
call fcn.1400055cc
test eax, eax
js 0x14001cfe9
mov rax, qword [rbp - 0x60]
lea r8, [rsp + 0x34]
inc rax
mov ecx, esi
lea edx, [rax + rax]
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r11d, dword [rsp + 0x34]
mov dword [rbp - 0x48], r11d
js 0x14001cff4
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r11d
call fcn.140005588
mov r15d, eax
mov r9d, 0x10000000
or r15d, r9d
mov dword [rsp + 0x30], r15d
jl 0x14001cff4
lea r8, [rsp + 0x34]
mov edx, esi
mov ecx, esi
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r11d, dword [rsp + 0x34]
mov dword [rbp - 0x48], r11d
js 0x14001cff4
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r11d
call fcn.140005588
mov r15d, eax
or r15d, r9d
mov dword [rsp + 0x30], r15d
jl 0x14001cff4
lea r8, [rsp + 0x34]
mov edx, esi
mov ecx, esi
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r11d, dword [rsp + 0x34]
mov dword [rbp - 0x48], r11d
js 0x14001cff4
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r11d
call fcn.140005588
mov r15d, eax
or r15d, r9d
mov dword [rsp + 0x30], r15d
jl 0x14001cff4
mov eax, dword [rbp + 0x2c0]
mov dword [rsp + 0x54], eax
mov esi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, esi
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 r9, rax
test rax, rax
jne 0x14001cb1e
mov r15d, 0xc0000017
jmp 0x14001cfef
mov qword [rsp + 0x58], r9
mov dword [rsp + 0x50], r14d
mov dword [rbp + 0xd0], r14d
mov esi, 4
lea r8, [rbp - 0x68]
mov edx, esi
mov rcx, r9
call fcn.1400055a8
mov r15d, eax
mov dword [rsp + 0x30], eax
mov eax, r14d
test r15d, r15d
js 0x14001cff4
mov ecx, dword [rsp + 0x54]
lea rax, [r9 + 8]
add rcx, r9
cmp rax, rcx
ja 0x14001cfe1
mov rax, qword [rbp - 0x68]
mov dword [r9], esi
mov ecx, dword [rbp + 0xd0]
mov dword [rax], ecx
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
test r15d, r15d
js 0x14001cff4
cmp qword [rsp + 0x58], r14
jne 0x14001cbe3
lea r8, [rsp + 0x34]
mov edx, 0xa0
mov ecx, esi
call fcn.140005588
mov edx, dword [rbp]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x30], eax
cmovns edx, dword [rsp + 0x34]
mov dword [rbp], edx
js 0x14001ccfc
mov ecx, dword [rsp + 0x54]
lea r8, [rsp + 0x54]
call fcn.140005588
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001ccfc
inc dword [rsp + 0x50]
jmp 0x14001cd05
mov r9, qword [rsp + 0x58]
mov r11d, r14d
mov qword [rsp + 0x48], r9
test eax, eax
je 0x14001cc4e
mov r10d, dword [rbp]
mov edx, dword [r9]
lea r8, [rsp + 0x34]
mov ecx, esi
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r10d, dword [rsp + 0x34]
mov dword [rbp], r10d
js 0x14001ccfc
mov edx, r10d
lea r8, [rsp + 0x48]
mov rcx, r9
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001ccfc
mov r9, qword [rsp + 0x48]
inc r11d
cmp r11d, dword [rsp + 0x50]
jb 0x14001cbf8
lea r8, [rbp - 0x68]
mov rdx, rsi
mov rcx, r9
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001ccfc
mov ecx, dword [rsp + 0x54]
lea rax, [r9 + 0xa4]
add rcx, qword [rsp + 0x58]
cmp rax, rcx
ja 0x14001cfe1
mov rax, qword [rbp - 0x68]
mov ecx, 0x80
mov dword [r9], 0xa0
movups xmm0, xmmword [r12]
movups xmmword [rax], xmm0
movups xmm1, xmmword [r12 + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [r12 + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [r12 + 0x30]
movups xmmword [rax + 0x30], xmm1
movups xmm0, xmmword [r12 + 0x40]
movups xmmword [rax + 0x40], xmm0
movups xmm1, xmmword [r12 + 0x50]
movups xmmword [rax + 0x50], xmm1
movups xmm0, xmmword [r12 + 0x60]
movups xmmword [rax + 0x60], xmm0
movups xmm1, xmmword [r12 + 0x70]
movups xmmword [rax + rcx - 0x10], xmm1
movups xmm0, xmmword [r12 + rcx]
movups xmmword [rax + rcx], xmm0
movups xmm1, xmmword [r12 + rcx + 0x10]
movups xmmword [rax + rcx + 0x10], xmm1
inc dword [rsp + 0x50]
test r15d, r15d
js 0x14001cff4
cmp qword [rsp + 0x58], r14
jne 0x14001cd5d
lea r8, [rsp + 0x34]
mov edx, 8
mov ecx, esi
call fcn.140005588
mov edx, dword [rbp + 4]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x30], eax
cmovns edx, dword [rsp + 0x34]
mov dword [rbp + 4], edx
js 0x14001ce09
mov ecx, dword [rsp + 0x54]
lea r8, [rsp + 0x54]
call fcn.140005588
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001ce09
inc dword [rsp + 0x50]
jmp 0x14001ce12
mov r11d, r14d
mov r9, qword [rsp + 0x58]
mov qword [rsp + 0x48], r9
cmp dword [rsp + 0x50], r14d
jbe 0x14001cdc3
mov r10d, dword [rbp + 4]
mov edx, dword [r9]
lea r8, [rsp + 0x34]
mov ecx, esi
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r10d, dword [rsp + 0x34]
mov dword [rbp + 4], r10d
js 0x14001ce09
mov edx, r10d
lea r8, [rsp + 0x48]
mov rcx, r9
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001ce09
mov r9, qword [rsp + 0x48]
inc r11d
cmp r11d, dword [rsp + 0x50]
jb 0x14001cd75
lea r8, [rbp - 0x68]
mov rdx, rsi
mov rcx, r9
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001ce09
mov ecx, dword [rsp + 0x54]
lea rax, [r9 + 0xc]
add rcx, qword [rsp + 0x58]
cmp rax, rcx
ja 0x14001cfe1
mov rax, qword [rbp - 0x68]
mov dword [r9], 8
mov rcx, qword [r13]
mov qword [rax], rcx
inc dword [rsp + 0x50]
test r15d, r15d
js 0x14001cff4
mov rax, qword [rbp + 0x130]
mov qword [rbp + 0x160], rax
cmp qword [rsp + 0x58], r14
jne 0x14001ce78
lea r8, [rsp + 0x34]
mov edx, 8
mov ecx, esi
call fcn.140005588
mov edx, dword [rbp + 8]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x30], eax
cmovns edx, dword [rsp + 0x34]
mov dword [rbp + 8], edx
js 0x14001cf27
mov ecx, dword [rsp + 0x54]
lea r8, [rsp + 0x54]
call fcn.140005588
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001cf27
inc dword [rsp + 0x50]
jmp 0x14001cf30
mov r11d, r14d
mov r9, qword [rsp + 0x58]
mov qword [rsp + 0x48], r9
cmp dword [rsp + 0x50], r14d
jbe 0x14001cede
mov r10d, dword [rbp + 8]
mov edx, dword [r9]
lea r8, [rsp + 0x34]
mov ecx, esi
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r10d, dword [rsp + 0x34]
mov dword [rbp + 8], r10d
js 0x14001cf27
mov edx, r10d
lea r8, [rsp + 0x48]
mov rcx, r9
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001cf27
mov r9, qword [rsp + 0x48]
inc r11d
cmp r11d, dword [rsp + 0x50]
jb 0x14001ce90
lea r8, [rbp - 0x68]
mov rdx, rsi
mov rcx, r9
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001cf27
mov ecx, dword [rsp + 0x54]
lea rax, [r9 + 0xc]
add rcx, qword [rsp + 0x58]
cmp rax, rcx
ja 0x14001cfe1
mov rax, qword [rbp - 0x68]
mov dword [r9], 8
mov rcx, qword [rbp + 0x160]
mov qword [rax], rcx
inc dword [rsp + 0x50]
test r15d, r15d
js 0x14001cff4
lea r8, [rsp + 0x48]
lea rcx, str.Printing_Spooler_Core_Spoolss_Licensing_Enabled
call fcn.1400055cc
test eax, eax
js 0x14001cfe9
mov rcx, qword [rsp + 0x48]
lea r8, [rsp + 0x48]
mov edx, 1
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
mov r12d, 0xc0000023
test eax, eax
js 0x14001d0d7
mov eax, dword [rsp + 0x48]
lea r11d, [rax + rax]
test r11d, r11d
je 0x14001d0cc
cmp qword [rsp + 0x58], r14
jne 0x14001cffc
lea r8, [rsp + 0x34]
mov edx, r11d
mov ecx, esi
call fcn.140005588
mov edx, dword [rbp + 0xc]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x30], eax
cmovns edx, dword [rsp + 0x34]
mov dword [rbp + 0xc], edx
js 0x14001d0d7
mov ecx, dword [rsp + 0x54]
lea r8, [rsp + 0x54]
call fcn.140005588
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001d0d7
inc dword [rsp + 0x50]
mov r15d, r14d
mov dword [rsp + 0x30], r14d
jmp 0x14001d0d7
mov r15d, 0xc0000023
jmp 0x14001cfef
mov r15d, 0xc000003e
mov dword [rsp + 0x30], r15d
mov r13, r12
jmp 0x14001d251
mov esi, r14d
mov r9, qword [rsp + 0x58]
mov qword [rsp + 0x48], r9
cmp dword [rsp + 0x50], r14d
jbe 0x14001d067
mov r10d, dword [rbp + 0xc]
mov edx, dword [r9]
lea r8, [rsp + 0x34]
mov ecx, 4
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r10d, dword [rsp + 0x34]
mov dword [rbp + 0xc], r10d
js 0x14001d0c7
mov edx, r10d
lea r8, [rsp + 0x48]
mov rcx, r9
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001d0c0
mov r9, qword [rsp + 0x48]
inc esi
cmp esi, dword [rsp + 0x50]
jb 0x14001d014
mov esi, 4
lea r8, [rbp - 0x68]
mov edx, esi
mov rcx, r9
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001d0d7
mov ecx, dword [rsp + 0x54]
lea rax, [r11 + 4]
add rcx, qword [rsp + 0x58]
add rax, r9
mov r8d, r11d
cmp rax, rcx
jbe 0x14001d0a7
mov r15d, r12d
mov dword [rsp + 0x30], r12d
jmp 0x14001d0d7
mov rcx, qword [rbp - 0x68]
lea rdx, str.Printing_Spooler_Core_Spoolss_Licensing_Enabled
mov dword [r9], r11d
call sub.msvcrt.dll_memcpy
inc dword [rsp + 0x50]
jmp 0x14001d0d7
mov esi, 4
jmp 0x14001d0d7
mov rsi, rcx
jmp 0x14001d0d7
mov r15d, 0xc000000d
mov dword [rsp + 0x30], r15d
test r15d, r15d
js 0x14001d24c
mov eax, dword [rbp + 0x30]
mov dword [rbp + 0xd8], eax
cmp qword [rsp + 0x58], r14
jne 0x14001d13e
lea r8, [rsp + 0x34]
mov edx, esi
mov ecx, esi
call fcn.140005588
mov edx, dword [rbp + 0x44]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x30], eax
cmovns edx, dword [rsp + 0x34]
mov dword [rbp + 0x44], edx
js 0x14001d1e3
mov ecx, dword [rsp + 0x54]
lea r8, [rsp + 0x54]
call fcn.140005588
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001d1e3
inc dword [rsp + 0x50]
jmp 0x14001d1e8
mov r11d, r14d
mov r9, qword [rsp + 0x58]
mov qword [rsp + 0x48], r9
cmp dword [rsp + 0x50], r14d
jbe 0x14001d1a4
mov r10d, dword [rbp + 0x44]
mov edx, dword [r9]
lea r8, [rsp + 0x34]
mov ecx, esi
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r10d, dword [rsp + 0x34]
mov dword [rbp + 0x44], r10d
js 0x14001d1e3
mov edx, r10d
lea r8, [rsp + 0x48]
mov rcx, r9
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001d1e3
mov r9, qword [rsp + 0x48]
inc r11d
cmp r11d, dword [rsp + 0x50]
jb 0x14001d156
lea r8, [rbp - 0x68]
mov rdx, rsi
mov rcx, r9
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001d1e3
mov ecx, dword [rsp + 0x54]
lea rax, [r9 + 8]
add rcx, qword [rsp + 0x58]
cmp rax, rcx
ja 0x14001d244
mov rax, qword [rbp - 0x68]
mov dword [r9], esi
mov ecx, dword [rbp + 0xd8]
mov dword [rax], ecx
inc dword [rsp + 0x50]
test r15d, r15d
js 0x14001d24c
mov dword [rbp + 0x10], esi
cmp qword [rsp + 0x58], r14
jne 0x14001d616
lea r8, [rsp + 0x34]
mov edx, esi
mov ecx, esi
call fcn.140005588
mov edx, dword [rbp + 0x40]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x30], eax
cmovns edx, dword [rsp + 0x34]
mov dword [rbp + 0x40], edx
js 0x14001d6bc
mov ecx, dword [rsp + 0x54]
lea r8, [rsp + 0x54]
call fcn.140005588
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001d6bc
inc dword [rsp + 0x50]
jmp 0x14001d6c5
mov r15d, r12d
mov dword [rsp + 0x30], r12d
mov r13, qword [rsp + 0x40]
and qword [rsp + 0x50], 0
mov rsi, qword [rsp + 0x58]
test rsi, rsi
je 0x14001d286
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 + 0x58], r14
and qword [rbp - 0x10], 0
mov rsi, qword [rbp - 8]
test rsi, rsi
je 0x14001d2b8
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 - 8], r14
test r13, r13
je 0x14001d2dd
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]
mov rsi, qword [rbp - 0x30]
test rsi, rsi
je 0x14001d306
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 r15d, r15d
js 0x140022153
cmp dword [rbp + 0x30], r14d
je 0x140020067
xorps xmm0, xmm0
mov qword [rbp - 0x78], r14
lea rax, [0x1400b7950]
mov r13, r14
movups xmmword [rbp + 0x98], xmm0
mov qword [rbp + 0x1c8], rax
mov rsi, r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov edx, 8
mov r8d, 0xa0
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov r12, rax
test rax, rax
je 0x14001ffb0
mov rcx, qword [rbp + 0x1c8]
mov qword [rsp + 0x60], r12
movups xmm0, xmmword [rcx]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rax + 0x30], xmm1
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [rax + 0x40], xmm0
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [rax + 0x50], xmm1
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [rax + 0x60], xmm0
mov eax, 0x80
movups xmm1, xmmword [rcx + 0x70]
movups xmmword [r12 + rax - 0x10], xmm1
movups xmm0, xmmword [rcx + rax]
movups xmmword [r12 + rax], xmm0
movups xmm1, xmmword [rcx + rax + 0x10]
movups xmmword [r12 + rax + 0x10], xmm1
lea rax, [0x1400b7898]
mov qword [rbp + 0x1d0], rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov rcx, rax
mov eax, 8
mov r8d, eax
mov edx, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov r13, rax
test rax, rax
je 0x14001ffad
mov rcx, qword [rbp + 0x1d0]
mov rsi, rax
mov qword [rbp + 0x2c8], rax
mov rdx, qword [rcx]
mov qword [rax], rdx
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x1d8], rax
mov r11d, 4
mov dword [rbp + 0x2c0], r14d
mov edx, r11d
lea r8, [rsp + 0x70]
mov ecx, r11d
call fcn.140005588
test eax, eax
js 0x14001ffad
mov edx, dword [rsp + 0x70]
lea r8, [rbp + 0x2c0]
xor ecx, ecx
call fcn.140005588
mov r9d, 0x10000000
or eax, r9d
jl 0x14001ffad
lea r8, [rsp + 0x70]
mov edx, 0xa0
mov ecx, r11d
call fcn.140005588
test eax, eax
js 0x14001ffad
mov edx, dword [rsp + 0x70]
lea r8, [rbp + 0x2c0]
mov ecx, dword [rbp + 0x2c0]
call fcn.140005588
or eax, r9d
jl 0x14001ffad
lea r8, [rsp + 0x70]
mov ecx, r11d
lea edx, [r11 + 4]
call fcn.140005588
test eax, eax
js 0x14001ffad
mov edx, dword [rsp + 0x70]
lea r8, [rbp + 0x2c0]
mov ecx, dword [rbp + 0x2c0]
call fcn.140005588
or eax, r9d
jl 0x14001ffad
lea r8, [rsp + 0x70]
mov ecx, r11d
lea edx, [r11 + 4]
call fcn.140005588
test eax, eax
js 0x14001ffad
mov edx, dword [rsp + 0x70]
mov dword [rbp + 0x188], edx
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
call fcn.140005588
or eax, r9d
jl 0x14001ffad
mov eax, dword [rbp + 0x2c0]
mov dword [rbp - 0x7c], eax
mov esi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, esi
mov esi, 8
mov edx, esi
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov r9, rax
test rax, rax
je 0x14001ffaa
mov qword [rbp - 0x78], rax
mov dword [rbp - 0x80], r14d
lea r11d, [rsi - 4]
mov dword [rbp + 0xa8], r11d
lea r8, [rbp - 0x68]
mov edx, r11d
mov rcx, rax
call fcn.1400055a8
test eax, eax
js 0x14001ffaa
mov ecx, dword [rbp - 0x7c]
lea rax, [r9 + 8]
add rcx, r9
cmp rax, rcx
ja 0x14001ffaa
mov rax, qword [rbp - 0x68]
mov dword [r9], r11d
mov ecx, dword [rbp + 0xa8]
mov dword [rax], ecx
mov r11d, dword [rbp - 0x80]
inc r11d
mov dword [rbp - 0x80], r11d
cmp qword [rbp - 0x78], r14
jne 0x14001fd6b
lea r11d, [rsi - 4]
mov edx, 0xa0
mov ecx, r11d
lea r8, [rsp + 0x70]
call fcn.140005588
test eax, eax
js 0x14001ffaa
mov edx, dword [rsp + 0x70]
mov dword [rbp + 0xb0], edx
mov ecx, dword [rbp - 0x7c]
lea r8, [rbp - 0x7c]
call fcn.140005588
test eax, eax
js 0x14001ffaa
mov r9d, dword [rbp - 0x80]
inc r9d
mov dword [rbp - 0x80], r9d
jmp 0x14001fe7a
mov r11d, r14d
mov r9, qword [rsp + 0x58]
mov qword [rsp + 0x48], r9
cmp dword [rsp + 0x50], r14d
jbe 0x14001d67c
mov r10d, dword [rbp + 0x40]
mov edx, dword [r9]
lea r8, [rsp + 0x34]
mov ecx, esi
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r10d, dword [rsp + 0x34]
mov dword [rbp + 0x40], r10d
js 0x14001d6bc
mov edx, r10d
lea r8, [rsp + 0x48]
mov rcx, r9
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001d6bc
mov r9, qword [rsp + 0x48]
inc r11d
cmp r11d, dword [rsp + 0x50]
jb 0x14001d62e
lea r8, [rbp - 0x68]
mov rdx, rsi
mov rcx, r9
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001d6bc
mov ecx, dword [rsp + 0x54]
lea rax, [r9 + 8]
add rcx, qword [rsp + 0x58]
cmp rax, rcx
ja 0x14001d244
mov rax, qword [rbp - 0x68]
mov dword [r9], esi
mov ecx, dword [rbp + 0x10]
mov dword [rax], ecx
inc dword [rsp + 0x50]
test r15d, r15d
js 0x14001d24c
lea r8, [rsp + 0x34]
mov edx, esi
mov ecx, esi
call fcn.140005588
mov r10d, dword [rbp - 0x44]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x30], eax
cmovns r10d, dword [rsp + 0x34]
mov dword [rbp - 0x44], r10d
js 0x14001d86a
lea r8, [rsp + 0x34]
mov dword [rbp + 0x2c0], r10d
mov edx, 8
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r9d, r10d
mov r15d, eax
cmovns r9d, dword [rsp + 0x34]
mov dword [rbp - 0x44], r9d
js 0x14001d86a
lea r8, [rbp + 0x2c0]
mov edx, r9d
mov ecx, r10d
call fcn.140005588
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001d86a
lea r8, [rsp + 0x34]
mov edx, esi
mov ecx, esi
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r9d, dword [rsp + 0x34]
mov dword [rbp - 0x44], r9d
js 0x14001d86a
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r9d
call fcn.140005588
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001d86a
lea r8, [rsp + 0x34]
mov edx, esi
mov ecx, esi
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r9d, dword [rsp + 0x34]
mov dword [rbp - 0x44], r9d
js 0x14001d86a
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r9d
call fcn.140005588
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001d86a
lea r8, [rsp + 0x34]
mov edx, esi
mov ecx, esi
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r9d, dword [rsp + 0x34]
mov dword [rbp - 0x44], r9d
js 0x14001d86a
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r9d
call fcn.140005588
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001d86a
lea r8, [rsp + 0x34]
mov edx, esi
mov ecx, esi
call fcn.140005588
test eax, eax
mov dword [rsp + 0x30], eax
mov r15d, eax
cmovns r9d, dword [rsp + 0x34]
mov dword [rbp - 0x44], r9d
js 0x14001d86a
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r9d
call fcn.140005588
mov r15d, eax
mov dword [rsp + 0x30], eax
mov eax, dword [rbp + 0x10]
test r15d, r15d
cmovns eax, dword [rbp + 0x2c0]
jmp 0x14001d86d
mov eax, dword [rbp + 0x10]
mov dword [rsp + 0x68], eax
test r15d, r15d
js 0x14001d24c
mov r9, r14
mov qword [rsp + 0x60], r14
mov r12d, r14d
mov qword [rbp + 0x88], r14
mov qword [rbp + 0x20], r14
mov r13, r14
mov dword [rsp + 0x34], r14d
mov qword [rbp - 0x38], r14
mov dword [rbp - 0x50], r14d
mov qword [rsp + 0x48], r14
mov qword [rbp - 0x58], r14
mov dword [rbp + 0x34], r14d
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x168], rax
mov dword [rbp - 0x40], 8
mov edx, dword [rsp + 0x54]
lea r8, [rbp - 0x40]
mov ecx, 8
call fcn.140005588
mov r15d, eax
test eax, eax
js 0x14001d9eb
mov eax, dword [rbp - 0x40]
add rax, 7
and eax, 0xfffffff8
cmp eax, dword [rbp - 0x40]
jae 0x14001d8fb
mov r15d, 0xc0000095
jmp 0x14001d9eb
mov dword [rbp - 0x40], eax
mov esi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, esi
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 rsi, rax
test rax, rax
jne 0x14001d939
mov r15d, 0xc0000017
mov r9, r14
jmp 0x14001d9eb
mov eax, dword [rsp + 0x50]
lea r8, [rbp + 0x2b8]
mov r9d, 4
mov qword [rbp + 0x2b8], rsi
mov edx, r9d
mov dword [rsi], eax
mov rcx, rsi
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001d9be
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov eax, dword [rsp + 0x54]
mov edx, r9d
mov dword [rcx], eax
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001d9be
mov ecx, dword [rbp - 0x40]
mov rax, qword [rbp + 0x168]
mov qword [rcx + rsi - 8], rax
mov r8d, dword [rsp + 0x54]
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rbp + 0x2b8]
call sub.msvcrt.dll_memcpy
mov r12d, dword [rbp - 0x40]
mov r9, rsi
mov qword [rsp + 0x60], rsi
mov rsi, r14
jmp 0x14001d9c1
mov r9, r14
test rsi, rsi
je 0x14001d9eb
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 r9, qword [rsp + 0x60]
or r15d, 0x10000000
mov dword [rsp + 0x30], r15d
jl 0x14001f601
mov qword [rbp + 0xe0], r14
test r9, r9
jne 0x14001da14
mov r15d, 0xc000000d
jmp 0x14001e227
mov esi, r12d
mov qword [rbp - 0x20], rsi
test r12d, r12d
je 0x14001e13e
lea rcx, [rsi + 8]
call fcn.1400097f8
mov qword [rbp + 0x2b8], rax
mov r12, rax
test rax, rax
je 0x14001e13e
mov r9, qword [rsp + 0x60]
mov dl, r14b
mov byte [rsp + 0x38], dl
mov rcx, r14
test rsi, rsi
je 0x14001da64
xor dl, byte [rcx + r9]
inc rcx
cmp rcx, rsi
jb 0x14001da54
mov byte [rsp + 0x38], dl
mov r15, rax
mov qword [rbp + 0x2c8], rbx
mov rax, rsi
mov dword [rsp + 0x3c], r14d
or r11d, 0xffffffff
mov dword [rbp + 0x2c0], r14d
mov r10d, r14d
and eax, 7
je 0x14001db7c
mov dword [rsp + 0x3c], r14d
mov ecx, r14d
mov dword [rbp + 0x2c0], ecx
mov r12d, r14d
mov r11d, r14d
test eax, eax
je 0x14001daf0
mov r10d, 0x38
movzx r8d, byte [r9]
inc r9
cmp r11d, 4
jge 0x14001dad0
lea ecx, [r10 - 0x20]
shl r8d, cl
mov ecx, dword [rbp + 0x2c0]
or ecx, r8d
mov dword [rbp + 0x2c0], ecx
jmp 0x14001dadf
mov ecx, r10d
shl r8d, cl
mov ecx, dword [rbp + 0x2c0]
or r12d, r8d
inc r11d
sub r10d, 8
cmp r11d, eax
jl 0x14001daab
mov dword [rsp + 0x3c], r12d
mov r10d, ecx
mov r11d, r12d
xor r10d, 0xb17a307a
xor r11d, 0x42f6b18d
mov ecx, r10d
mov r8d, r11d
mov r12d, r14d
test eax, eax
je 0x14001db49
lea rdi, [r15 + 1]
mov qword [rbp - 0x60], rdi
cmp r12d, 4
jge 0x14001db26
rol ecx, 8
mov edi, ecx
jmp 0x14001db2d
rol r8d, 8
mov edi, r8d
mov byte [r15], dil
inc r12d
mov rdi, qword [rbp - 0x60]
mov r15, rdi
cmp r12d, eax
jl 0x14001db11
movabs rdi, 0x7f1137fab69605e
cmp eax, 4
jbe 0x14001db60
mov ecx, 8
sub ecx, eax
shl ecx, 3
shr r11d, cl
shl r11d, cl
jmp 0x14001db75
mov r11d, r14d
jae 0x14001db75
mov ecx, 4
sub ecx, eax
shl ecx, 3
shr r10d, cl
shl r10d, cl
mov r12, qword [rbp + 0x2b8]
mov rax, rsi
shr rax, 3
mov qword [rbp - 0x60], rax
test rax, rax
je 0x14001dece
movzx eax, word [rbp + 0x2ca]
lea r14, [r15 + 7]
mov r15, qword [rbp - 0x60]
lea rdx, [r9 + 2]
mov edi, dword [rsp + 0x3c]
mov r12d, dword [rbp + 0x2c0]
movzx esi, word [rbp + 0x2cc]
mov dword [rsp + 0x30], eax
movzx r13d, bx
movzx eax, byte [rdx - 1]
movzx r9d, byte [rdx - 2]
movzx r8d, byte [rdx + 2]
shl r9d, 8
or r9d, eax
shl r8d, 8
movzx eax, byte [rdx]
lea rdx, [rdx + 8]
shl r9d, 8
or r9d, eax
movzx eax, byte [rdx - 7]
shl r9d, 8
or r9d, eax
movzx eax, byte [rdx - 5]
or r8d, eax
movzx eax, byte [rdx - 4]
shl r8d, 8
or r8d, eax
movzx eax, byte [rdx - 3]
shl r8d, 8
or r8d, eax
xor r11d, r8d
mov eax, r11d
sub eax, r13d
xor eax, r9d
xor r10d, eax
movzx eax, word [rbp + 0x2ca]
xor r10d, dword [rbp + 0x2cc]
mov ecx, r10d
xor ecx, dword [rbp + 0x2cc]
ror ecx, 0xf
imul ecx, eax
mov eax, r10d
ror eax, 7
add ecx, eax
xor r11d, ecx
mov eax, r11d
ror eax, 0xa
lea ecx, [rbx + r11]
ror ecx, 9
imul ecx, esi
sub ecx, eax
movzx eax, word [rbp + 0x2ce]
xor r10d, ecx
mov ecx, esi
xor ecx, r10d
rol ecx, 4
imul ecx, eax
mov eax, r10d
rol eax, 5
add ecx, eax
mov eax, dword [rbp + 0x2cc]
xor r11d, ecx
mov ecx, ebx
xor ecx, r11d
sub eax, ecx
xor r10d, eax
movzx eax, word [rbp + 0x2ca]
mov ecx, r10d
sub ecx, r13d
imul ecx, eax
mov eax, r10d
shr eax, 6
sub ecx, eax
xor r11d, ecx
movzx ecx, word [rbp + 0x2ce]
mov eax, r11d
ror eax, 0xf
xor eax, esi
imul eax, r13d
xor r10d, eax
mov eax, r10d
not eax
ror eax, 3
add eax, ecx
imul eax, esi
xor r11d, eax
mov eax, r11d
sub eax, r13d
sub eax, dword [rbp + 0x2cc]
xor r10d, eax
movzx eax, word [rbp + 0x2ce]
mov ecx, r10d
ror ecx, 0xa
xor eax, r10d
imul eax, dword [rsp + 0x30]
xor ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
xor ecx, r13d
ror eax, 3
rol ecx, 6
imul ecx, esi
xor ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0x2ce]
mov eax, r10d
ror eax, 0xf
sub eax, ecx
imul eax, r13d
xor r11d, eax
xor ecx, r11d
mov eax, r11d
imul ecx, r13d
shr eax, 1
xor ecx, eax
mov eax, r11d
xor r10d, ecx
shr eax, 0xf
mov ecx, r11d
sub ecx, esi
rol ecx, 3
imul ecx, r13d
xor ecx, eax
movzx eax, word [rbp + 0x2ca]
xor r10d, ecx
mov ecx, r10d
sub ecx, esi
imul ecx, eax
mov eax, r10d
shr eax, 0xd
sub ecx, eax
xor r11d, ecx
mov ecx, ebx
sub ecx, r11d
mov eax, r11d
ror ecx, 9
imul ecx, esi
ror eax, 0xb
xor ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0x2ce]
mov eax, r10d
sub eax, ebx
sub eax, ecx
xor r11d, eax
movzx eax, word [rbp + 0x2ca]
xor eax, r11d
mov ecx, r11d
ror ecx, 7
imul eax, r13d
sub eax, ecx
movzx ecx, word [rbp + 0x2ce]
xor r10d, eax
movzx eax, word [rbp + 0x2ca]
xor ecx, r10d
rol ecx, 4
imul ecx, eax
mov eax, r10d
ror eax, 0x10
sub ecx, eax
xor r11d, ecx
mov ecx, ebx
sub ecx, r11d
mov eax, r11d
ror ecx, 0xa
imul ecx, esi
ror eax, 4
add ecx, eax
xor r10d, ecx
mov ecx, r10d
movzx eax, word [rbp + 0x2ce]
sub ecx, ebx
ror ecx, 4
imul ecx, eax
mov eax, r10d
ror eax, 9
xor ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
xor ecx, dword [rbp + 0x2cc]
rol ecx, 8
imul ecx, r13d
rol eax, 2
sub ecx, eax
movzx eax, word [rbp + 0x2ca]
xor r10d, ecx
mov ecx, dword [rbp + 0x2cc]
sub ecx, r10d
ror ecx, 0xb
imul ecx, eax
mov eax, r10d
ror eax, 0xc
sub ecx, eax
movzx eax, word [rbp + 0x2ca]
xor r11d, ecx
mov ecx, r11d
xor ecx, eax
mov eax, r11d
xor r11d, ebx
imul ecx, esi
shr eax, 8
xor ecx, eax
xor r10d, ecx
xor r11d, r10d
xor r10d, r12d
xor r11d, dword [rbp + 0x2cc]
mov r12d, r9d
mov byte [r14 - 4], r10b
xor r11d, edi
mov byte [r14], r11b
mov edi, r8d
ror r10d, 8
mov byte [r14 - 5], r10b
lea r14, [r14 + 8]
ror r11d, 8
mov byte [r14 - 9], r11b
ror r10d, 8
mov byte [r14 - 0xe], r10b
ror r11d, 8
mov byte [r14 - 0xa], r11b
ror r10d, 8
ror r11d, 8
mov byte [r14 - 0xf], r10b
mov byte [r14 - 0xb], r11b
ror r11d, 8
ror r10d, 8
sub r15, 1
jne 0x14001dbbd
mov dl, byte [rsp + 0x38]
xor r14d, r14d
mov rsi, qword [rbp - 0x20]
mov r13d, r14d
mov r12, qword [rbp + 0x2b8]
movabs rdi, 0x7f1137fab69605e
movzx eax, dl
lea r15, [rsi + 8]
mov qword [r12 + rsi], rax
mov qword [rbp + 0xe0], r12
mov qword [rbp + 0x2a0], r15
lea rax, [0x1400b7940]
mov qword [rbp + 0x2b0], 8
mov qword [rbp + 0x2a8], rax
lea rax, [0x1400b78a0]
mov qword [rbp + 0x258], 0xa0
mov qword [rbp + 0x250], rax
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]
mov rsi, rax
test rax, rax
jne 0x14001df50
mov r15d, 0xc0000017
jmp 0x14001e12d
mov r15d, r15d
mov dword [rax], r15d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, r15d
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 0x14001e077
mov qword [rsi + 8], rax
mov r8d, r15d
mov rdx, r12
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov r15d, 0xa0
mov dword [rsi + 0x10], r15d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, r15d
mov r15d, 8
mov edx, r15d
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 0x14001e077
mov qword [rsi + 0x18], rax
lea rax, [0x1400b78a0]
movups xmm0, xmmword [rax]
lea edx, [r15 + 0x78]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx + rdx - 0x10], xmm1
movups xmm0, xmmword [rax + rdx]
movups xmmword [rcx + rdx], xmm0
movups xmm1, xmmword [rax + rdx + 0x10]
movups xmmword [rcx + rdx + 0x10], xmm1
mov dword [rsi + 0x20], r15d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, r15d
mov edx, r15d
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 0x14001e077
mov qword [rsi + 0x28], rax
mov rax, qword [0x1400b7940]
mov r13, rsi
mov qword [rcx], rax
mov r15d, r14d
mov rsi, r14
jmp 0x14001e07d
mov r15d, 0xc0000017
test rsi, rsi
je 0x14001e12d
mov r12, qword [rsi + 8]
test r12, r12
je 0x14001e0b3
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rsi + 8], r14
mov r12, qword [rsi + 0x18]
test r12, r12
je 0x14001e0e0
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rsi + 0x18], r14
mov r12, qword [rsi + 0x28]
test r12, r12
je 0x14001e10d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rsi + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 r15d, r15d
js 0x14001e144
mov qword [rbp + 0x88], r13
mov r13, r14
jmp 0x14001e144
mov r15d, 0xc0000001
mov rsi, qword [rbp + 0xe0]
test rsi, rsi
je 0x14001e177
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 + 0xe0], r14
test r13, r13
je 0x14001e227
mov rsi, qword [r13 + 8]
test rsi, rsi
je 0x14001e1ad
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 [r13 + 8], r14
mov rsi, qword [r13 + 0x18]
test rsi, rsi
je 0x14001e1da
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 [r13 + 0x18], r14
mov rsi, qword [r13 + 0x28]
test rsi, rsi
je 0x14001e207
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 [r13 + 0x28], r14
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]
or r15d, 0x10000000
mov dword [rsp + 0x30], r15d
jl 0x14001e8e2
mov r12, qword [rbp + 0x88]
lea r8, [rbp + 0x2c0]
mov r13d, 4
mov ecx, r13d
mov dword [rbp + 0x2c0], r13d
mov edx, dword [r12]
call fcn.140005588
mov r15d, eax
test eax, eax
js 0x14001e2ed
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r13d
call fcn.140005588
mov r15d, eax
test eax, eax
js 0x14001e2ed
mov edx, dword [r12 + 0x10]
lea r8, [rbp + 0x2c0]
mov ecx, dword [rbp + 0x2c0]
call fcn.140005588
mov r15d, eax
test eax, eax
js 0x14001e2ed
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r13d
call fcn.140005588
mov r15d, eax
test eax, eax
js 0x14001e2ed
mov edx, dword [r12 + 0x20]
lea r8, [rbp + 0x2c0]
mov ecx, dword [rbp + 0x2c0]
call fcn.140005588
mov r15d, eax
mov eax, dword [rbp + 0x3c]
test r15d, r15d
cmovns eax, dword [rbp + 0x2c0]
mov dword [rbp + 0x3c], eax
jmp 0x14001e2f0
mov eax, dword [rbp + 0x3c]
test r15d, r15d
js 0x14001e47b
mov esi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, esi
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 rsi, rax
test rax, rax
jne 0x14001e331
mov r15d, 0xc0000017
jmp 0x14001e47b
mov eax, dword [r12]
lea r8, [rbp + 0x2b8]
mov rdx, r13
mov dword [rsi], eax
mov rcx, rsi
mov qword [rbp + 0x2b8], rsi
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001e456
mov r8d, dword [r12]
mov rdx, qword [r12 + 8]
mov rcx, qword [rbp + 0x2b8]
call sub.msvcrt.dll_memcpy
mov edx, dword [r12]
lea r8, [rbp + 0x2b8]
mov rcx, qword [rbp + 0x2b8]
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001e456
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov eax, dword [r12 + 0x10]
mov rdx, r13
mov dword [rcx], eax
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001e456
mov r8d, dword [r12 + 0x10]
mov rdx, qword [r12 + 0x18]
mov rcx, qword [rbp + 0x2b8]
call sub.msvcrt.dll_memcpy
mov edx, dword [r12 + 0x10]
lea r8, [rbp + 0x2b8]
mov rcx, qword [rbp + 0x2b8]
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001e456
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov eax, dword [r12 + 0x20]
mov rdx, r13
mov dword [rcx], eax
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001e456
mov r8d, dword [r12 + 0x20]
mov rdx, qword [r12 + 0x28]
mov rcx, qword [rbp + 0x2b8]
call sub.msvcrt.dll_memcpy
mov edx, dword [r12 + 0x20]
lea r8, [rbp + 0x2b8]
mov rcx, qword [rbp + 0x2b8]
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001e456
mov eax, dword [rbp + 0x3c]
mov qword [rbp + 0x20], rsi
mov rsi, r14
mov dword [rsp + 0x34], eax
test rsi, rsi
je 0x14001e47b
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 r15d, 0x10000000
mov dword [rsp + 0x30], r15d
jl 0x14001e8e2
mov qword [rbp + 0x170], r14
mov r11d, r14d
mov dword [rbp + 0xe8], r14d
mov esi, r14d
mov qword [rbp + 0x178], r14
mov dword [rbp + 0xec], r14d
mov dword [rbp + 0x38], 8
mov edx, dword [rsp + 0x68]
lea r8, [rbp + 0x38]
mov ecx, 8
call fcn.140005588
mov r15d, eax
or r15d, 0x10000000
mov dword [rsp + 0x30], r15d
jl 0x14001e77d
mov eax, dword [rbp + 0x38]
add rax, 7
and eax, 0xfffffff8
cmp eax, dword [rbp + 0x38]
jae 0x14001e4fd
mov r9d, dword [rbp + 0x7c]
mov r15d, 0xc0000095
mov dword [rsp + 0x30], r15d
jmp 0x14001e52c
mov dword [rbp + 0x80], eax
mov edx, ecx
lea r8, [rbp + 0x80]
mov ecx, eax
call fcn.140005588
mov r9d, dword [rbp + 0x7c]
test eax, eax
mov r15d, eax
mov dword [rsp + 0x30], eax
cmovns r9d, dword [rbp + 0x80]
mov dword [rbp + 0x7c], r9d
test r15d, r15d
js 0x14001e8e2
cmp qword [rsp + 0x58], r14
je 0x14001e74f
cmp dword [rsp + 0x50], 1
jbe 0x14001e74f
mov rcx, qword [rsp + 0x58]
mov r10d, r14d
mov qword [rbp + 0x2b8], rcx
mov r12d, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001e5e4
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov edx, r12d
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001e5e4
mov rcx, qword [rbp + 0x2b8]
inc r10d
cmp r10d, 1
jb 0x14001e55a
mov r10d, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001e5e4
mov rax, qword [rbp + 0x2b8]
test r10d, r10d
mov r11d, r10d
mov dword [rbp + 0xe8], r10d
cmove rax, r14
mov qword [rbp + 0x170], rax
test r15d, r15d
js 0x14001e8e2
cmp dword [rsp + 0x50], 2
jbe 0x14001e74f
mov rcx, qword [rsp + 0x58]
mov r10d, r14d
mov qword [rbp + 0x2b8], rcx
mov r12d, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001e691
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov edx, r12d
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001e691
mov rcx, qword [rbp + 0x2b8]
inc r10d
cmp r10d, 2
jb 0x14001e607
mov r10d, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001e691
mov rax, qword [rbp + 0x2b8]
test r10d, r10d
mov esi, r10d
mov dword [rbp + 0xec], r10d
cmove rax, r14
mov qword [rbp + 0x178], rax
test r15d, r15d
js 0x14001e8e2
lea r8, [rbp + 0x2c0]
mov dword [rbp + 0x2c0], r13d
mov edx, r9d
mov ecx, r13d
call fcn.140005588
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001e75c
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r13d
call fcn.140005588
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001e75c
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r11d
call fcn.140005588
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001e75c
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r13d
call fcn.140005588
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001e75c
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, esi
call fcn.140005588
mov r15d, eax
mov dword [rsp + 0x30], eax
mov eax, dword [rbp + 0x78]
test r15d, r15d
cmovns eax, dword [rbp + 0x2c0]
mov dword [rbp + 0x78], eax
jmp 0x14001e75f
mov r15d, 0xc000000d
mov dword [rsp + 0x30], r15d
jmp 0x14001e77d
mov eax, dword [rbp + 0x78]
test r15d, r15d
js 0x14001e8e2
cmp eax, 0x400000
jbe 0x14001e77a
mov r15d, 0x8000ffff
jmp 0x14001e8dd
mov dword [rbp - 0x50], eax
test r15d, r15d
js 0x14001e8e2
mov esi, dword [rbp - 0x50]
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, esi
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 0x14001e7bc
mov r15d, 0xd0000017
mov rsi, r14
jmp 0x14001e7c9
mov rsi, rax
mov qword [rbp - 0x38], rax
mov r15d, 0x10000000
mov dword [rsp + 0x30], r15d
test r15d, r15d
js 0x14001e8e2
mov rax, qword [rbp + 0x20]
test rax, rax
je 0x14001e88b
test rsi, rsi
je 0x14001e88b
mov qword [rbp + 0x230], rax
lea r8, [rbp + 0x180]
mov eax, dword [rsp + 0x34]
lea rdx, [0x14009a4e0]
mov dword [rbp + 0x240], eax
mov ecx, 1
mov eax, dword [rbp - 0x50]
mov dword [rbp + 0x244], eax
mov qword [rbp + 0x238], rsi
mov dword [rbp + 0x248], r14d
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
je 0x14001e893
mov rcx, qword [rbp + 0x180]
lea rdx, [0x14009c858]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x14001e893
xor r9d, r9d
lea rdx, [rbp + 0x230]
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call qword [0x140098d68]
mov r9d, dword [rbp - 0x50]
mov r15d, eax
or r15d, 0x10000000
cmovge r9d, dword [rbp + 0x244]
mov dword [rbp - 0x50], r9d
jmp 0x14001e8c9
mov r15d, 0x80070057
jmp 0x14001e8dd
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
jle 0x14001e8ba
movzx r15d, ax
or r15d, 0x80070000
mov dword [rsp + 0x30], r15d
mov r9d, dword [rbp - 0x50]
test r15d, r15d
js 0x14001e8ce
mov r15d, 0x80004005
mov dword [rsp + 0x30], r15d
cmp r15d, 0xd0000023
jne 0x14001e8ea
mov r15d, 0x8007007a
mov dword [rsp + 0x30], r15d
mov r13, r14
jmp 0x14001f601
test r15d, r15d
js 0x14001e8e2
mov qword [rbp + 0x2c8], r14
mov dword [rsp + 0x30], r14d
mov qword [rbp + 0x2b8], rsi
cmp r9d, r13d
jb 0x14001eb10
mov r10d, dword [rsi]
lea r8, [rbp + 0x2b8]
mov rdx, r13
mov dword [rsp + 0x34], r10d
mov rcx, rsi
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001eb16
lea r8, [rsp + 0x30]
mov edx, r13d
xor ecx, ecx
call fcn.140005588
mov r15d, eax
test eax, eax
js 0x14001eb16
mov eax, r9d
sub eax, dword [rsp + 0x30]
cmp eax, r10d
jb 0x14001eb10
mov rax, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov rcx, rax
mov qword [rbp - 0x60], rax
mov edx, r10d
mov qword [rbp - 0x20], r10
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001eb16
mov ecx, dword [rsp + 0x30]
lea r8, [rsp + 0x30]
mov edx, r10d
call fcn.140005588
mov r15d, eax
test eax, eax
js 0x14001eb16
mov eax, r9d
sub eax, dword [rsp + 0x30]
cmp eax, r13d
jb 0x14001eb10
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov rdx, r13
mov r12d, dword [rcx]
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001eb16
mov ecx, dword [rsp + 0x30]
lea r8, [rsp + 0x30]
mov edx, r13d
call fcn.140005588
mov r15d, eax
test eax, eax
js 0x14001eb16
mov eax, r9d
sub eax, dword [rsp + 0x30]
cmp eax, r12d
jb 0x14001eb10
mov rax, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov rcx, rax
mov qword [rsp + 0x70], rax
mov edx, r12d
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001eb16
mov ecx, dword [rsp + 0x30]
lea r8, [rsp + 0x30]
mov edx, r12d
call fcn.140005588
mov r15d, eax
test eax, eax
js 0x14001eb16
mov eax, r9d
sub eax, dword [rsp + 0x30]
cmp eax, r13d
jb 0x14001eb10
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov r11d, 4
mov edx, r11d
mov r13d, dword [rcx]
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001eb16
mov ecx, dword [rsp + 0x30]
lea r8, [rsp + 0x30]
mov edx, r11d
call fcn.140005588
mov r15d, eax
test eax, eax
js 0x14001eb16
mov ecx, dword [rsp + 0x30]
mov eax, r9d
sub eax, ecx
cmp eax, r13d
jb 0x14001eb10
lea r8, [rsp + 0x30]
mov edx, r13d
call fcn.140005588
mov r15d, eax
test eax, eax
js 0x14001eb16
cmp r9d, dword [rsp + 0x30]
jne 0x14001eb10
lea ecx, [r12 + r13]
mov eax, r9d
add ecx, r10d
add rcx, 0xc
cmp rcx, rax
jne 0x14001eb10
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]
mov rsi, rax
test rax, rax
jne 0x14001ebf4
mov r15d, 0xc0000017
jmp 0x14001edbb
mov r15d, 0xc000003e
mov r13, r14
or r15d, 0x10000000
mov dword [rsp + 0x30], r15d
jl 0x14001f601
mov qword [rbp + 0x50], r14
mov rsi, r14
mov r12, r14
test r13, r13
je 0x14001ee93
mov rax, qword [r13 + 8]
mov qword [rbp - 0x20], rax
test rax, rax
je 0x14001ee93
cmp dword [r13], r14d
je 0x14001ee93
mov r15d, dword [r13]
mov dword [rsp + 0x70], r14d
test r15, r15
je 0x14001f35a
add r15, 0xfffffffffffffff8
mov rcx, r15
mov qword [rbp + 0x2b8], r15
call fcn.1400097f8
mov qword [rbp - 0x70], rax
mov r13, rax
test rax, rax
je 0x14001f356
mov r9, qword [rbp - 0x20]
mov r8, r15
mov qword [rbp + 0x2c8], rdi
mov dl, r14b
mov byte [rsp + 0x38], dl
mov rsi, rax
mov r11d, r14d
and r8d, 7
je 0x14001ef65
mov ecx, r14d
mov eax, r14d
mov dword [rsp + 0x68], ecx
mov dword [rsp + 0x3c], eax
test r8d, r8d
je 0x14001eed4
mov r10d, 0x38
mov ebx, eax
movzx eax, byte [r9]
inc r9
cmp r11d, 4
jge 0x14001eea3
lea ecx, [r10 - 0x20]
shl eax, cl
mov ecx, dword [rsp + 0x68]
or ebx, eax
jmp 0x14001eeb2
mov r15, qword [rbp - 0x60]
test r15, r15
je 0x14001ec4c
mov eax, dword [rsp + 0x34]
mov dword [rsi], eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x20]
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 0x14001ec41
mov qword [rsi + 8], rax
mov r8, qword [rbp - 0x20]
mov rdx, r15
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x14001ec53
mov r15d, 0xc0000017
jmp 0x14001ed0b
mov dword [rax], r14d
mov qword [rax + 8], r14
mov r15, qword [rsp + 0x70]
test r15, r15
je 0x14001ec9d
mov dword [rsi + 0x10], r12d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 0x14001ec41
mov qword [rsi + 0x18], rax
mov r8, r12
mov rdx, r15
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x14001eca5
mov dword [rsi + 0x10], r14d
mov qword [rsi + 0x18], r14
cmp qword [rbp + 0x2b8], r14
je 0x14001ecf6
mov dword [rsi + 0x20], r13d
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]
test rax, rax
je 0x14001ec41
mov qword [rsi + 0x28], rax
mov rdx, qword [rbp + 0x2b8]
mov r8, r13
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x14001ecfe
mov dword [rsi + 0x20], r14d
mov qword [rsi + 0x28], r14
mov qword [rbp + 0x2c8], rsi
mov r15d, r14d
mov rsi, r14
test rsi, rsi
je 0x14001edbb
mov r12, qword [rsi + 8]
test r12, r12
je 0x14001ed41
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rsi + 8], r14
mov r12, qword [rsi + 0x18]
test r12, r12
je 0x14001ed6e
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rsi + 0x18], r14
mov r12, qword [rsi + 0x28]
test r12, r12
je 0x14001ed9b
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rsi + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 r13, qword [rbp + 0x2c8]
test r15d, r15d
mov rsi, r14
cmovs rsi, qword [rbp + 0x2c8]
cmovs r13, r14
mov qword [rsp + 0x48], r13
test rsi, rsi
je 0x14001eb19
mov r12, qword [rsi + 8]
test r12, r12
je 0x14001ee0f
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rsi + 8], r14
mov r12, qword [rsi + 0x18]
test r12, r12
je 0x14001ee3c
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rsi + 0x18], r14
mov r12, qword [rsi + 0x28]
test r12, r12
je 0x14001ee69
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rsi + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 + 0x48], r13
jmp 0x14001eb19
mov r15d, 0xd000000d
mov dword [rsp + 0x30], r15d
jmp 0x14001f601
mov ecx, r10d
shl eax, cl
mov ecx, dword [rsp + 0x68]
or ecx, eax
mov dword [rsp + 0x68], ecx
inc r11d
sub r10d, 8
cmp r11d, r8d
jl 0x14001ebd2
mov dword [rsp + 0x3c], ebx
movabs rbx, 0xc81ecb17b1b54a58
mov eax, dword [rsp + 0x3c]
mov r10d, eax
mov r11d, ecx
xor r10d, 0x92f65a5
xor r11d, 0x699a899c
mov eax, r10d
mov ecx, r11d
test r8d, r8d
je 0x14001ef34
mov ebx, r14d
lea rdi, [rsi + 1]
mov qword [rbp - 0x60], rdi
cmp ebx, 4
jge 0x14001ef0a
rol eax, 8
mov edi, eax
jmp 0x14001ef0f
rol ecx, 8
mov edi, ecx
mov byte [rsi], dil
inc ebx
mov rdi, qword [rbp - 0x60]
mov rsi, rdi
cmp ebx, r8d
jl 0x14001eef6
movabs rbx, 0xc81ecb17b1b54a58
movabs rdi, 0x7f1137fab69605e
cmp r8d, 4
jbe 0x14001ef4d
mov ecx, 8
sub ecx, r8d
shl ecx, 3
shr r11d, cl
shl r11d, cl
jmp 0x14001ef72
mov r11d, r14d
jae 0x14001ef72
mov ecx, 4
sub ecx, r8d
shl ecx, 3
shr r10d, cl
shl r10d, cl
jmp 0x14001ef72
or dword [rsp + 0x68], 0xffffffff
mov r10d, r14d
mov dword [rsp + 0x3c], r14d
mov rax, r15
shr rax, 3
mov qword [rbp - 0x60], rax
test rax, rax
je 0x14001f2ea
mov eax, dword [rbp + 0x2cc]
lea r15, [rsi + 7]
mov rsi, qword [rbp - 0x60]
lea r14, [r9 + 2]
mov ebx, dword [rsp + 0x68]
mov r13d, edi
mov r12d, dword [rsp + 0x3c]
xor r13d, eax
mov edx, dword [rbp + 0x2cc]
movzx ecx, ax
movzx eax, word [rbp + 0x2ca]
mov dword [rsp + 0x34], eax
movzx eax, di
mov dword [rsp + 0x30], eax
mov dword [rbp + 0x2c0], ecx
movzx eax, byte [r14 - 1]
movzx r9d, byte [r14 - 2]
movzx r8d, byte [r14 + 2]
shl r9d, 8
or r9d, eax
shl r8d, 8
movzx eax, byte [r14]
lea r14, [r14 + 8]
shl r9d, 8
or r9d, eax
movzx eax, byte [r14 - 7]
shl r9d, 8
or r9d, eax
movzx eax, byte [r14 - 5]
or r8d, eax
xor r10d, r9d
movzx eax, byte [r14 - 4]
shl r8d, 8
or r8d, eax
movzx eax, byte [r14 - 3]
shl r8d, 8
or r8d, eax
xor r11d, r8d
xor r11d, r10d
xor r11d, r13d
mov ecx, r11d
mov eax, r11d
sub ecx, edi
rol eax, 0xa
rol ecx, 5
imul ecx, dword [rbp + 0x2c0]
add ecx, eax
movzx eax, word [rbp + 0x2ca]
xor r10d, ecx
lea ecx, [r10 + rdx]
ror ecx, 9
imul ecx, eax
mov eax, r10d
rol eax, 2
sub ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
sub ecx, dword [rbp + 0x2c0]
imul ecx, dword [rsp + 0x30]
shr eax, 0xd
sub ecx, eax
movzx eax, word [rbp + 0x2ca]
xor r10d, ecx
mov ecx, r10d
xor ecx, eax
movzx eax, word [rbp + 0x2ce]
rol ecx, 6
imul ecx, eax
mov eax, r10d
rol eax, 2
sub ecx, eax
mov eax, edx
xor r11d, ecx
mov ecx, edi
xor ecx, r11d
sub eax, ecx
xor r10d, eax
mov eax, dword [rbp + 0x2c0]
xor eax, r10d
mov ecx, r10d
imul eax, dword [rsp + 0x34]
ror ecx, 6
xor ecx, eax
xor r11d, ecx
mov eax, r11d
rol eax, 2
lea ecx, [r11 + rdx]
ror ecx, 0xf
imul ecx, dword [rsp + 0x30]
add ecx, eax
movzx eax, word [rbp + 0x2ce]
xor r10d, ecx
mov ecx, r10d
sub ecx, edi
ror ecx, 0xe
imul ecx, eax
mov eax, r10d
rol eax, 8
sub ecx, eax
xor r11d, ecx
mov ecx, edi
xor ecx, r11d
mov eax, r11d
ror eax, 0xa
ror ecx, 0xc
imul ecx, dword [rbp + 0x2c0]
xor ecx, eax
movzx eax, word [rbp + 0x2ce]
xor r10d, ecx
mov ecx, r10d
xor ecx, eax
movzx eax, word [rbp + 0x2ca]
imul ecx, eax
mov eax, r10d
shr eax, 0xa
xor ecx, eax
xor r11d, ecx
movzx ecx, word [rbp + 0x2ce]
mov eax, r11d
not eax
ror eax, 5
add eax, dword [rsp + 0x30]
imul eax, ecx
xor r10d, eax
mov eax, r10d
sub eax, ecx
xor eax, edi
xor r11d, eax
movzx eax, word [rbp + 0x2ce]
mov ecx, r11d
xor ecx, eax
mov eax, r11d
rol ecx, 2
imul ecx, dword [rbp + 0x2c0]
shr eax, 2
add ecx, eax
movzx eax, word [rbp + 0x2ca]
xor r10d, ecx
mov ecx, r10d
sub ecx, edx
ror ecx, 6
imul ecx, eax
mov eax, r10d
rol eax, 7
add ecx, eax
mov eax, dword [rbp + 0x2c0]
xor r11d, ecx
xor eax, r11d
mov ecx, r11d
imul eax, dword [rsp + 0x30]
ror ecx, 9
add ecx, eax
movzx eax, word [rbp + 0x2ca]
xor r10d, ecx
mov ecx, r10d
xor ecx, eax
movzx eax, word [rbp + 0x2ce]
rol ecx, 5
imul ecx, eax
mov eax, r10d
rol eax, 7
add ecx, eax
mov eax, edi
xor r11d, ecx
movzx ecx, word [rbp + 0x2ca]
xor eax, r11d
xor r10d, eax
xor r10d, edx
mov eax, r10d
ror eax, 3
sub eax, ecx
imul eax, dword [rbp + 0x2c0]
xor r11d, eax
mov ecx, r11d
sub ecx, edx
ror ecx, 1
imul ecx, dword [rsp + 0x30]
mov eax, r11d
ror eax, 6
sub ecx, eax
movzx eax, word [rbp + 0x2ce]
xor r10d, ecx
lea ecx, [rdi + r10]
rol ecx, 3
imul ecx, eax
mov eax, r10d
rol eax, 0xe
add ecx, eax
xor r11d, ecx
mov eax, r11d
ror eax, 0xe
lea ecx, [rdi + r11]
rol ecx, 0xf
imul ecx, dword [rbp + 0x2c0]
sub ecx, eax
movzx eax, word [rbp + 0x2ca]
xor r10d, ecx
mov ecx, r10d
xor ecx, dword [rsp + 0x30]
imul ecx, eax
mov eax, r10d
shr eax, 3
xor ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
xor r11d, ebx
rol eax, 2
xor ecx, edx
mov ebx, r8d
rol ecx, 4
imul ecx, dword [rsp + 0x30]
xor ecx, eax
xor ecx, r12d
mov r12d, r9d
xor r10d, ecx
mov byte [r15 - 4], r10b
mov byte [r15], r11b
lea r15, [r15 + 8]
ror r10d, 8
mov byte [r15 - 0xd], r10b
ror r11d, 8
mov byte [r15 - 9], r11b
ror r10d, 8
mov byte [r15 - 0xe], r10b
ror r11d, 8
mov byte [r15 - 0xa], r11b
ror r10d, 8
ror r11d, 8
mov byte [r15 - 0xf], r10b
mov byte [r15 - 0xb], r11b
ror r11d, 8
ror r10d, 8
sub rsi, 1
jne 0x14001efc8
mov dl, byte [rsp + 0x38]
xor r14d, r14d
mov r15, qword [rbp + 0x2b8]
mov r12d, r14d
mov r13, qword [rbp - 0x70]
movabs rbx, 0xc81ecb17b1b54a58
mov rax, r14
test r15, r15
je 0x14001f2fe
xor dl, byte [rax + r13]
inc rax
cmp rax, r15
jb 0x14001f2f2
mov rcx, qword [rbp - 0x20]
movzx eax, dl
cmp rax, qword [r15 + rcx]
je 0x14001f317
mov rsi, qword [rbp + 0x50]
mov r15d, 0xc004d501
jmp 0x14001f329
mov rsi, r13
mov qword [rbp + 0x50], r13
mov r12, r15
mov r13, r14
mov r15d, dword [rsp + 0x70]
test r13, r13
je 0x14001f33a
mov rcx, r13
call fcn.14002e634
mov rsi, qword [rbp + 0x50]
test r15d, r15d
js 0x14001f35a
mov qword [rbp - 0x58], rsi
mov r15d, 0x10000000
mov rsi, r14
mov qword [rbp + 0x50], r14
mov dword [rbp + 0x34], r12d
jmp 0x14001f364
mov rsi, qword [rbp + 0x50]
mov r12d, dword [rbp + 0x34]
mov r15d, 0xd0000001
mov dword [rsp + 0x30], r15d
test rsi, rsi
je 0x14001f396
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 r12d, dword [rbp + 0x34]
mov qword [rbp + 0x50], r14
test r15d, r15d
js 0x14001f5fc
mov r9, qword [rbp - 0x58]
mov r11d, 4
mov dword [rbp + 0x2c0], r14d
mov qword [rbp + 0x2b8], r9
cmp r12d, r11d
jb 0x14001f5ec
mov eax, dword [r9]
lea r8, [rbp + 0x2b8]
mov edx, r11d
mov dword [rsp + 0x68], eax
mov rcx, r9
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001f5f2
lea r8, [rbp + 0x2c0]
mov edx, r11d
xor ecx, ecx
call fcn.140005588
mov r15d, eax
test eax, eax
js 0x14001f5f2
mov eax, r12d
sub eax, dword [rbp + 0x2c0]
cmp eax, r11d
jb 0x14001f5ec
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov edx, r11d
mov r10d, dword [rcx]
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001f5f2
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r11d
call fcn.140005588
mov r15d, eax
test eax, eax
js 0x14001f5f2
mov ecx, dword [rbp + 0x2c0]
mov eax, r12d
sub eax, ecx
cmp eax, r10d
jb 0x14001f5ec
lea r8, [rbp + 0x2c0]
mov edx, r10d
call fcn.140005588
mov r15d, eax
test eax, eax
js 0x14001f5f2
mov rsi, qword [rbp + 0x2b8]
mov r13d, r10d
mov edx, r12d
lea rax, [rsi + r10]
lea rcx, [r9 + rdx]
cmp rcx, rax
jb 0x14001f5ec
mov rax, r9
sub rax, r10
sub rax, rsi
add rax, rdx
cmp rax, 8
jae 0x14001f5ec
mov dword [rsp + 0x3c], r14d
mov r12, r14
mov r15d, r14d
test rsi, rsi
je 0x14001f57d
lea r8, [rbp - 0x70]
mov edx, r10d
mov rcx, rsi
mov r9, rsi
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001f5de
mov r11, qword [rbp - 0x70]
cmp rsi, r11
jae 0x14001f578
mov r10d, dword [rbp + 0xf8]
lea r8, [rbp - 0x70]
mov edx, 4
mov rcx, r9
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001f5de
cmp qword [rbp - 0x70], r11
ja 0x14001f5b5
mov edx, dword [r9]
lea r8, [rsp + 0x70]
mov ecx, 4
call fcn.140005588
test eax, eax
mov r15d, eax
cmovns r10d, dword [rsp + 0x70]
mov dword [rbp + 0xf8], r10d
js 0x14001f5de
mov edx, r10d
lea r8, [rbp - 0x60]
mov rcx, r9
call fcn.1400055a8
mov r15d, eax
test eax, eax
js 0x14001f5de
mov r9, qword [rbp - 0x60]
cmp r9, r11
ja 0x14001f5b5
inc dword [rsp + 0x3c]
cmp r9, r11
jb 0x14001f4fd
mov r10d, r13d
cmp r9, r11
jne 0x14001f5b5
test r10d, r10d
je 0x14001f5c0
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]
mov r12, rax
test rax, rax
jne 0x14001f5bd
mov r15d, 0xc0000017
jmp 0x14001f5de
mov r15d, 0xc000000d
jmp 0x14001f5f2
mov r15d, r14d
test rsi, rsi
je 0x14001f5d3
mov r8, r13
mov rdx, rsi
mov rcx, r12
call sub.msvcrt.dll_memcpy
mov eax, dword [rsp + 0x3c]
mov dword [rbp - 0x10], eax
mov qword [rbp - 8], r12
test r15d, r15d
js 0x14001f5f2
mov eax, dword [rsp + 0x68]
cmp eax, dword [rbp - 0x10]
je 0x14001f5f2
mov r15d, 0xc000003e
bts r15d, 0x1c
mov dword [rsp + 0x30], r15d
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
test rsi, rsi
je 0x14001f62b
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 r12, qword [rbp + 0x88]
test r12, r12
je 0x14001f6ef
mov rsi, qword [r12 + 8]
test rsi, rsi
je 0x14001f66a
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 [r12 + 8], r14
mov rsi, qword [r12 + 0x18]
test rsi, rsi
je 0x14001f699
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 [r12 + 0x18], r14
mov rsi, qword [r12 + 0x28]
test rsi, rsi
je 0x14001f6c8
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 [r12 + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 + 0x88], r14
mov rsi, qword [rbp + 0x20]
test rsi, rsi
je 0x14001f718
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 rsi, qword [rbp - 0x38]
test rsi, rsi
je 0x14001f741
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 r13, r13
je 0x14001f7f1
mov rsi, qword [r13 + 8]
test rsi, rsi
je 0x14001f777
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 [r13 + 8], r14
mov rsi, qword [r13 + 0x18]
test rsi, rsi
je 0x14001f7a4
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 [r13 + 0x18], r14
mov rsi, qword [r13 + 0x28]
test rsi, rsi
je 0x14001f7d1
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 [r13 + 0x28], r14
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]
mov rsi, qword [rbp - 0x58]
test rsi, rsi
je 0x14001f81a
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 r15d, r15d
js 0x14001d24c
cmp dword [rbp - 0x10], 1
jb 0x14001f882
mov r13d, 4
cmp qword [rbp - 8], r14
je 0x14001f8af
cmp dword [rbp - 0x10], r14d
jbe 0x14001f8af
mov rsi, qword [rbp - 8]
lea r8, [rbp - 0x38]
mov edx, r13d
mov qword [rbp - 0x38], rsi
mov rcx, rsi
mov r9d, dword [rsi]
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001f90a
mov rax, qword [rbp - 0x38]
test r9d, r9d
mov dword [rbp + 0xfc], r9d
cmove rax, r14
mov qword [rbp + 0x190], rax
jmp 0x14001f918
mov r15d, 0xc004d501
jmp 0x14001f8a5
mov rcx, qword [rbp + 0x138]
mov rdx, r11
mov r8d, r10d
call sub.msvcrt.dll_memcpy
cmp dword [rbp - 0x28], r14d
cmovne r15d, dword [rbp - 0x28]
mov dword [rsp + 0x30], r15d
jmp 0x14001d24c
mov r15d, 0xc000000d
mov dword [rsp + 0x30], r15d
test r15d, r15d
js 0x14001d24c
mov r15d, dword [rbp - 0x28]
mov eax, 0x8007007a
cmp r15d, 0xd0000023
cmove r15d, eax
mov dword [rsp + 0x30], r15d
mov dword [rbp - 0x28], r15d
cmp r15d, eax
je 0x14001f8ee
test r15d, r15d
js 0x14001d24c
cmp dword [rbp - 0x10], 6
jne 0x14001f882
cmp qword [rbp - 8], r14
jne 0x14001f938
mov r15d, 0xc000000d
mov dword [rsp + 0x30], r15d
jmp 0x14001f9fa
mov r9d, dword [rbp + 0xfc]
mov rax, qword [rbp + 0x190]
test r15d, r15d
js 0x14001d24c
cmp r9d, r13d
jne 0x14001f92d
mov eax, dword [rax]
mov dword [rbp - 0x28], eax
jmp 0x14001f8ba
mov r15d, 0xc0000023
jmp 0x14001f8a5
mov rcx, qword [rbp - 8]
mov r9d, r14d
mov qword [rbp + 0x2b8], rcx
mov r10d, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001f9cf
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov edx, r10d
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001f9cf
mov rcx, qword [rbp + 0x2b8]
inc r9d
cmp r9d, 1
jb 0x14001f946
mov r9d, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001f9cf
mov rax, qword [rbp + 0x2b8]
test r9d, r9d
mov dword [rbp + 0x100], r9d
cmove rax, r14
mov qword [rbp + 0x198], rax
jmp 0x14001f9dd
mov r9d, dword [rbp + 0x100]
mov rax, qword [rbp + 0x198]
test r15d, r15d
js 0x14001d24c
cmp r9d, 8
jne 0x14001f92d
mov rax, qword [rax]
mov qword [rbp + 0x1c0], rax
test r15d, r15d
js 0x14001d24c
cmp qword [rbp - 8], r14
jne 0x14001fa19
mov r15d, 0xc000000d
mov dword [rsp + 0x30], r15d
jmp 0x14001fad8
mov rcx, qword [rbp - 8]
mov r9d, r14d
mov qword [rbp + 0x2b8], rcx
mov r10d, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001fab0
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov edx, r10d
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001fab0
mov rcx, qword [rbp + 0x2b8]
inc r9d
cmp r9d, 2
jb 0x14001fa27
mov r9d, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001fab0
mov rax, qword [rbp + 0x2b8]
test r9d, r9d
mov dword [rbp + 0x104], r9d
cmove rax, r14
mov qword [rbp + 0x1a0], rax
jmp 0x14001fabe
mov r9d, dword [rbp + 0x104]
mov rax, qword [rbp + 0x1a0]
test r15d, r15d
js 0x14001d24c
cmp r9d, r13d
jne 0x14001f92d
mov eax, dword [rax]
mov dword [rbp + 0x118], eax
test r15d, r15d
js 0x14001d24c
cmp qword [rbp - 8], r14
jne 0x14001faf2
mov r15d, 0xc000000d
jmp 0x14001f8a5
mov rcx, qword [rbp - 8]
mov r9d, r14d
mov qword [rbp + 0x2b8], rcx
mov r10d, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001fb89
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov edx, r10d
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001fb89
mov rcx, qword [rbp + 0x2b8]
inc r9d
cmp r9d, 3
jb 0x14001fb00
mov r10d, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001fb89
mov r11, qword [rbp + 0x2b8]
test r10d, r10d
mov dword [rbp + 0x108], r10d
cmove r11, r14
mov qword [rbp + 0x1a8], r11
jmp 0x14001fb97
mov r10d, dword [rbp + 0x108]
mov r11, qword [rbp + 0x1a8]
test r15d, r15d
js 0x14001d24c
mov rcx, qword [rbp - 8]
mov r9d, r14d
mov qword [rbp + 0x2b8], rcx
mov esi, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001fc34
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov edx, esi
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001fc34
mov rcx, qword [rbp + 0x2b8]
inc r9d
cmp r9d, r13d
jb 0x14001fbae
mov r9d, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001fc34
mov rax, qword [rbp + 0x2b8]
test r9d, r9d
mov dword [rbp + 0x10c], r9d
cmove rax, r14
mov qword [rbp + 0x1b0], rax
jmp 0x14001fc42
mov r9d, dword [rbp + 0x10c]
mov rax, qword [rbp + 0x1b0]
test r15d, r15d
js 0x14001fc5a
cmp r9d, r13d
jne 0x14001f92d
mov esi, dword [rax]
mov dword [rbp + 0x110], esi
jmp 0x14001fc60
mov esi, dword [rbp + 0x110]
test r15d, r15d
js 0x14001d24c
mov rcx, qword [rbp - 8]
mov r9d, r14d
mov qword [rbp + 0x2b8], rcx
mov r12d, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001fd00
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov edx, r12d
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001fd00
mov rcx, qword [rbp + 0x2b8]
inc r9d
cmp r9d, 5
jb 0x14001fc77
mov r9d, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14001fd00
mov rax, qword [rbp + 0x2b8]
test r9d, r9d
mov dword [rbp + 0x114], r9d
cmove rax, r14
mov qword [rbp + 0x1b8], rax
jmp 0x14001fd0e
mov r9d, dword [rbp + 0x114]
mov rax, qword [rbp + 0x1b8]
test r15d, r15d
js 0x14001fd23
cmp r9d, r13d
jne 0x14001f92d
mov ecx, dword [rax]
mov dword [rbp + 0x58], ecx
jmp 0x14001fd26
mov ecx, dword [rbp + 0x58]
test r15d, r15d
js 0x14001d24c
mov rax, qword [rbp + 0x1c0]
cmp qword [rbp + 0x130], rax
jne 0x14001f882
mov eax, dword [rbp + 0x118]
mov dword [rbp + 0x6c], eax
mov dword [rbp + 0x68], esi
mov dword [rbp + 0x30], ecx
cmp esi, r13d
ja 0x14001fd60
cmp r10d, r13d
jbe 0x14001f88a
mov r15d, 0x8007007a
jmp 0x14001f8a5
mov r9, qword [rbp - 0x78]
mov r10d, r14d
mov qword [rbp - 0x58], r9
test r11d, r11d
je 0x14001fdc1
mov edx, dword [r9]
lea r8, [rsp + 0x70]
mov ecx, 4
call fcn.140005588
test eax, eax
js 0x14001ffaa
mov eax, dword [rsp + 0x70]
mov dword [rbp + 0xb0], eax
mov edx, eax
lea r8, [rbp - 0x58]
mov rcx, r9
call fcn.1400055a8
test eax, eax
js 0x14001ffaa
mov r9, qword [rbp - 0x58]
inc r10d
cmp r10d, r11d
jb 0x14001fd7b
mov r11d, 4
lea r8, [rbp - 0x68]
mov edx, r11d
mov rcx, r9
call fcn.1400055a8
test eax, eax
js 0x14001ffaa
mov edx, dword [rbp - 0x7c]
lea rcx, [r9 + 0xa4]
add rdx, qword [rbp - 0x78]
cmp rcx, rdx
ja 0x14001ffaa
mov rcx, qword [rbp - 0x68]
lea edx, [r11 + 0x7c]
mov dword [r9], 0xa0
movups xmm0, xmmword [r12]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [r12 + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [r12 + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [r12 + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [r12 + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [r12 + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [r12 + 0x60]
movups xmmword [rcx + 0x60], xmm0
movups xmm1, xmmword [r12 + 0x70]
movups xmmword [rcx + rdx - 0x10], xmm1
movups xmm0, xmmword [r12 + rdx]
movups xmmword [rcx + rdx], xmm0
movups xmm1, xmmword [r12 + rdx + 0x10]
movups xmmword [rcx + rdx + 0x10], xmm1
mov r9d, dword [rbp - 0x80]
inc r9d
mov dword [rbp - 0x80], r9d
test eax, eax
js 0x14001ffaa
cmp qword [rbp - 0x78], r14
jne 0x14001fec5
lea r8, [rsp + 0x70]
mov edx, esi
mov ecx, r11d
call fcn.140005588
test eax, eax
js 0x14001ffaa
mov edx, dword [rsp + 0x70]
mov dword [rbp + 0xb4], edx
mov ecx, dword [rbp - 0x7c]
lea r8, [rbp - 0x7c]
call fcn.140005588
test eax, eax
js 0x14001ffaa
mov r9d, dword [rbp - 0x80]
inc r9d
mov dword [rbp - 0x80], r9d
jmp 0x14001ff61
mov r10, qword [rbp - 0x78]
mov r11d, r14d
mov qword [rbp - 0x58], r10
test r9d, r9d
je 0x14001ff1b
mov edx, dword [r10]
lea r8, [rsp + 0x70]
mov ecx, 4
call fcn.140005588
test eax, eax
js 0x14001ffaa
mov eax, dword [rsp + 0x70]
mov dword [rbp + 0xb4], eax
mov edx, eax
lea r8, [rbp - 0x58]
mov rcx, r10
call fcn.1400055a8
test eax, eax
js 0x14001ffaa
mov r10, qword [rbp - 0x58]
inc r11d
cmp r11d, r9d
jb 0x14001fed5
mov r11d, 4
lea r8, [rbp - 0x68]
mov edx, r11d
mov rcx, r10
call fcn.1400055a8
test eax, eax
js 0x14001ffaa
mov edx, dword [rbp - 0x7c]
lea rcx, [r10 + 0xc]
add rdx, qword [rbp - 0x78]
cmp rcx, rdx
ja 0x14001ffaa
mov rcx, qword [rbp - 0x68]
mov dword [r10], esi
mov rdx, qword [r13]
mov qword [rcx], rdx
mov r9d, dword [rbp - 0x80]
inc r9d
mov dword [rbp - 0x80], r9d
test eax, eax
js 0x14001ffaa
mov rax, qword [rbp + 0x1d8]
mov qword [rbp + 0x1e0], rax
cmp qword [rbp - 0x78], r14
jne 0x1400200a1
lea r8, [rsp + 0x70]
mov edx, esi
mov ecx, r11d
call fcn.140005588
test eax, eax
js 0x14001ffaa
mov edx, dword [rsp + 0x70]
mov dword [rbp + 0xb8], edx
mov ecx, dword [rbp - 0x7c]
lea r8, [rbp - 0x7c]
call fcn.140005588
test eax, eax
jns 0x140020139
mov rsi, r13
mov r13, r12
and qword [rbp - 0x80], 0
mov rbx, qword [rbp - 0x78]
test rbx, rbx
je 0x14001ffe2
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 - 0x78], r14
and qword [rbp + 0x98], 0
mov rbx, qword [rbp + 0xa0]
test rbx, rbx
je 0x14002001d
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 + 0xa0], r14
test r13, r13
je 0x140020042
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]
test rsi, rsi
je 0x140020067
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 eax, dword [rbp + 0x68]
mov r13d, 0x8007007a
mov ebx, dword [rbp + 0x6c]
mov edi, dword [rbp + 0x70]
mov rsi, qword [rbp + 0x120]
mov r12, qword [rbp + 0x128]
mov dword [rbp + 0x144], eax
mov rax, qword [rbp + 0x138]
mov qword [rbp + 0xc8], rax
mov qword [rbp - 0x18], r14
jmp 0x14002216d
mov r10, qword [rbp - 0x78]
mov r11d, r14d
mov qword [rbp - 0x58], r10
test r9d, r9d
je 0x1400200f7
mov edx, dword [r10]
lea r8, [rsp + 0x70]
mov ecx, 4
call fcn.140005588
test eax, eax
js 0x14001ffaa
mov eax, dword [rsp + 0x70]
mov dword [rbp + 0xb8], eax
mov edx, eax
lea r8, [rbp - 0x58]
mov rcx, r10
call fcn.1400055a8
test eax, eax
js 0x14001ffaa
mov r10, qword [rbp - 0x58]
inc r11d
cmp r11d, r9d
jb 0x1400200b1
mov r11d, 4
lea r8, [rbp - 0x68]
mov edx, r11d
mov rcx, r10
call fcn.1400055a8
test eax, eax
js 0x14001ffaa
mov ecx, dword [rbp - 0x7c]
lea rax, [r10 + 0xc]
add rcx, qword [rbp - 0x78]
cmp rax, rcx
ja 0x14001ffaa
mov rax, qword [rbp - 0x68]
mov dword [r10], esi
mov rcx, qword [rbp + 0x1e0]
mov qword [rax], rcx
inc dword [rbp - 0x80]
lea r8, [rsp + 0x70]
mov edx, r11d
mov ecx, r11d
call fcn.140005588
test eax, eax
js 0x14001ffaa
mov r9d, dword [rsp + 0x70]
lea r8, [rsp + 0x70]
mov edx, esi
mov dword [rsp + 0x34], r9d
call fcn.140005588
test eax, eax
js 0x14001ffaa
mov edx, dword [rsp + 0x70]
mov dword [rbp + 0x140], edx
lea r8, [rsp + 0x34]
mov ecx, r9d
call fcn.140005588
test eax, eax
js 0x14001ffaa
mov eax, dword [rsp + 0x34]
mov r12, r14
mov dword [rsp + 0x40], eax
mov r9d, r14d
mov dword [rsp + 0x34], r14d
mov r13, r14
mov qword [rbp - 0x18], r14
mov dword [rsp + 0x3c], r14d
mov qword [rbp + 0x90], r14
mov qword [rbp + 0x20], r14
mov qword [rbp - 0x60], r14
mov dword [rbp - 0x4c], r14d
mov qword [rbp - 0x58], r14
mov qword [rbp - 0x20], r14
mov dword [rbp + 0x1c], r14d
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x1e8], rax
mov dword [rbp - 0x3c], esi
mov edx, dword [rbp - 0x7c]
lea r8, [rbp - 0x3c]
mov ecx, esi
call fcn.140005588
mov esi, eax
test eax, eax
js 0x1400202fc
mov eax, dword [rbp - 0x3c]
add rax, 7
and eax, 0xfffffff8
cmp eax, dword [rbp - 0x3c]
jae 0x140020213
mov esi, 0xc0000095
jmp 0x1400202fc
mov dword [rbp - 0x3c], eax
mov esi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, esi
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 r12, rax
test rax, rax
jne 0x140020253
mov esi, 0xc0000017
mov r9d, r14d
mov r12, r14
jmp 0x1400202fc
mov eax, dword [rbp - 0x80]
lea r8, [rsp + 0x48]
mov r11d, 4
mov qword [rsp + 0x48], r12
mov edx, r11d
mov dword [r12], eax
mov rcx, r12
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x1400202cb
mov rcx, qword [rsp + 0x48]
lea r8, [rsp + 0x48]
mov eax, dword [rbp - 0x7c]
mov edx, r11d
mov dword [rcx], eax
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x1400202cb
mov ecx, dword [rbp - 0x3c]
mov rax, qword [rbp + 0x1e8]
mov qword [rcx + r12 - 8], rax
mov r8d, dword [rbp - 0x7c]
mov rdx, qword [rbp - 0x78]
mov rcx, qword [rsp + 0x48]
call sub.msvcrt.dll_memcpy
mov r9d, dword [rbp - 0x3c]
mov qword [rbp - 0x18], r12
mov r12, r14
mov dword [rsp + 0x3c], r9d
jmp 0x1400202ce
mov r9d, r14d
test r12, r12
je 0x1400202f8
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 + 0x3c]
mov r12, qword [rbp - 0x18]
or esi, 0x10000000
jl 0x140020fee
mov qword [rbp + 0xf0], r14
test r12, r12
jne 0x14002031e
mov esi, 0xc000000d
jmp 0x140020b24
mov esi, r9d
mov qword [rbp - 0x30], rsi
test r9d, r9d
je 0x140020a3c
lea rax, [rsi + 8]
mov rcx, rax
mov qword [rsp + 0x48], rax
call fcn.1400097f8
mov qword [rbp - 0x38], rax
test rax, rax
je 0x140020a3c
mov dl, r14b
mov rcx, r14
mov byte [rsp + 0x38], dl
test rsi, rsi
je 0x14002036b
xor dl, byte [rcx + r12]
inc rcx
cmp rcx, rsi
jb 0x14002035b
mov byte [rsp + 0x38], dl
mov r9, r12
mov qword [rbp + 0x2c0], rbx
mov r12, rax
mov dword [rsp + 0x3c], r14d
mov rax, rsi
mov dword [rsp + 0x68], r14d
or r11d, 0xffffffff
mov r10d, r14d
and eax, 7
je 0x140020488
mov dword [rsp + 0x68], r14d
mov ecx, r14d
mov dword [rsp + 0x3c], ecx
mov r11d, r14d
test eax, eax
je 0x1400203fd
mov r10d, 0x38
mov edi, ecx
movzx r8d, byte [r9]
inc r9
cmp r11d, 4
jge 0x1400203cd
lea ecx, [r10 - 0x20]
shl r8d, cl
mov ecx, dword [rsp + 0x3c]
or edi, r8d
jmp 0x1400203de
mov ecx, r10d
shl r8d, cl
mov ecx, dword [rsp + 0x3c]
or ecx, r8d
mov dword [rsp + 0x3c], ecx
inc r11d
sub r10d, 8
cmp r11d, eax
jl 0x1400203b0
mov dword [rsp + 0x68], edi
movabs rdi, 0x7f1137fab69605e
mov r10d, dword [rsp + 0x68]
mov r11d, ecx
xor r10d, 0xb17a307a
xor r11d, 0x42f6b18d
mov ecx, r10d
mov r8d, r11d
test eax, eax
je 0x14002045c
mov edi, r13d
lea rbx, [r12 + 1]
mov qword [rbp - 0x70], rbx
cmp edi, 4
jge 0x140020430
rol ecx, 8
mov ebx, ecx
jmp 0x140020437
rol r8d, 8
mov ebx, r8d
mov byte [r12], bl
inc edi
mov rbx, qword [rbp - 0x70]
mov r12, rbx
cmp edi, eax
jl 0x14002041b
movabs rbx, 0xc81ecb17b1b54a58
movabs rdi, 0x7f1137fab69605e
cmp eax, 4
jbe 0x140020473
mov ecx, 8
sub ecx, eax
shl ecx, 3
shr r11d, cl
shl r11d, cl
jmp 0x140020488
mov r11d, r14d
jae 0x140020488
mov ecx, 4
sub ecx, eax
shl ecx, 3
shr r10d, cl
shl r10d, cl
mov rax, rsi
shr rax, 3
mov qword [rbp - 0x70], rax
test rax, rax
je 0x1400207d6
movzx eax, word [rbp + 0x2c2]
lea r14, [r12 + 7]
mov r12, qword [rbp - 0x70]
lea rdx, [r9 + 2]
mov edi, dword [rsp + 0x3c]
mov r13d, dword [rsp + 0x68]
movzx esi, word [rbp + 0x2c4]
mov dword [rsp + 0x70], eax
movzx r15d, bx
movzx eax, byte [rdx - 1]
movzx r9d, byte [rdx - 2]
movzx r8d, byte [rdx + 2]
shl r9d, 8
or r9d, eax
shl r8d, 8
movzx eax, byte [rdx]
lea rdx, [rdx + 8]
shl r9d, 8
or r9d, eax
movzx eax, byte [rdx - 7]
shl r9d, 8
or r9d, eax
movzx eax, byte [rdx - 5]
or r8d, eax
movzx eax, byte [rdx - 4]
shl r8d, 8
or r8d, eax
movzx eax, byte [rdx - 3]
shl r8d, 8
or r8d, eax
xor r11d, r8d
mov eax, r11d
sub eax, r15d
xor eax, r9d
xor r10d, eax
movzx eax, word [rbp + 0x2c2]
xor r10d, dword [rbp + 0x2c4]
mov ecx, r10d
xor ecx, dword [rbp + 0x2c4]
ror ecx, 0xf
imul ecx, eax
mov eax, r10d
ror eax, 7
add ecx, eax
xor r11d, ecx
mov eax, r11d
ror eax, 0xa
lea ecx, [rbx + r11]
ror ecx, 9
imul ecx, esi
sub ecx, eax
movzx eax, word [rbp + 0x2c6]
xor r10d, ecx
mov ecx, esi
xor ecx, r10d
rol ecx, 4
imul ecx, eax
mov eax, r10d
rol eax, 5
add ecx, eax
mov eax, dword [rbp + 0x2c4]
xor r11d, ecx
mov ecx, ebx
xor ecx, r11d
sub eax, ecx
xor r10d, eax
movzx eax, word [rbp + 0x2c2]
mov ecx, r10d
sub ecx, r15d
imul ecx, eax
mov eax, r10d
shr eax, 6
sub ecx, eax
xor r11d, ecx
movzx ecx, word [rbp + 0x2c6]
mov eax, r11d
ror eax, 0xf
xor eax, esi
imul eax, r15d
xor r10d, eax
mov eax, r10d
not eax
ror eax, 3
add eax, ecx
imul eax, esi
xor r11d, eax
mov eax, r11d
sub eax, r15d
sub eax, dword [rbp + 0x2c4]
xor r10d, eax
movzx eax, word [rbp + 0x2c6]
mov ecx, r10d
ror ecx, 0xa
xor eax, r10d
imul eax, dword [rsp + 0x70]
xor ecx, eax
xor r11d, ecx
mov ecx, r15d
xor ecx, r11d
mov eax, r11d
rol ecx, 6
imul ecx, esi
ror eax, 3
xor ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0x2c6]
mov eax, r10d
ror eax, 0xf
sub eax, ecx
imul eax, r15d
xor r11d, eax
xor ecx, r11d
mov eax, r11d
imul ecx, r15d
shr eax, 1
xor ecx, eax
mov eax, r11d
xor r10d, ecx
shr eax, 0xf
mov ecx, r11d
sub ecx, esi
rol ecx, 3
imul ecx, r15d
xor ecx, eax
movzx eax, word [rbp + 0x2c2]
xor r10d, ecx
mov ecx, r10d
sub ecx, esi
imul ecx, eax
mov eax, r10d
shr eax, 0xd
sub ecx, eax
xor r11d, ecx
mov ecx, ebx
sub ecx, r11d
mov eax, r11d
ror ecx, 9
imul ecx, esi
ror eax, 0xb
xor ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0x2c6]
mov eax, r10d
sub eax, ecx
sub eax, ebx
xor r11d, eax
movzx eax, word [rbp + 0x2c2]
xor eax, r11d
mov ecx, r11d
ror ecx, 7
imul eax, r15d
sub eax, ecx
movzx ecx, word [rbp + 0x2c6]
xor r10d, eax
movzx eax, word [rbp + 0x2c2]
xor ecx, r10d
rol ecx, 4
imul ecx, eax
mov eax, r10d
ror eax, 0x10
sub ecx, eax
xor r11d, ecx
mov ecx, ebx
sub ecx, r11d
mov eax, r11d
ror ecx, 0xa
imul ecx, esi
ror eax, 4
add ecx, eax
xor r10d, ecx
mov ecx, r10d
movzx eax, word [rbp + 0x2c6]
sub ecx, ebx
ror ecx, 4
imul ecx, eax
mov eax, r10d
ror eax, 9
xor ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
xor ecx, dword [rbp + 0x2c4]
rol ecx, 8
imul ecx, r15d
rol eax, 2
sub ecx, eax
movzx eax, word [rbp + 0x2c2]
xor r10d, ecx
mov ecx, dword [rbp + 0x2c4]
sub ecx, r10d
ror ecx, 0xb
imul ecx, eax
mov eax, r10d
ror eax, 0xc
sub ecx, eax
xor r11d, ecx
movzx ecx, word [rbp + 0x2c2]
xor ecx, r11d
mov eax, r11d
shr eax, 8
imul ecx, esi
xor ecx, eax
mov eax, ebx
xor eax, dword [rbp + 0x2c4]
xor r10d, ecx
xor r11d, eax
xor r11d, r10d
xor r10d, r13d
mov byte [r14 - 4], r10b
xor r11d, edi
mov byte [r14], r11b
mov r13d, r9d
ror r10d, 8
mov edi, r8d
mov byte [r14 - 5], r10b
lea r14, [r14 + 8]
ror r11d, 8
mov byte [r14 - 9], r11b
ror r10d, 8
mov byte [r14 - 0xe], r10b
ror r11d, 8
mov byte [r14 - 0xa], r11b
ror r10d, 8
ror r11d, 8
mov byte [r14 - 0xf], r10b
mov byte [r14 - 0xb], r11b
ror r11d, 8
ror r10d, 8
sub r12, 1
jne 0x1400204c8
mov dl, byte [rsp + 0x38]
xor r14d, r14d
mov r15d, dword [rsp + 0x30]
mov r13d, r14d
mov rsi, qword [rbp - 0x30]
movabs rdi, 0x7f1137fab69605e
mov r12, qword [rbp - 0x38]
movzx eax, dl
mov qword [r12 + rsi], rax
mov rsi, qword [rsp + 0x48]
mov qword [rbp + 0x260], rsi
mov qword [rbp + 0xf0], r12
lea rax, [0x1400b7940]
mov qword [rbp + 0x270], 8
mov qword [rbp + 0x268], rax
lea rax, [0x1400b78a0]
mov qword [rbp + 0x280], 0xa0
mov qword [rbp + 0x278], rax
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]
mov rbx, rax
test rax, rax
jne 0x14002085c
mov esi, 0xc0000017
jmp 0x140020a2c
mov esi, esi
mov dword [rax], esi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, esi
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 0x140020977
mov qword [rbx + 8], rax
mov r8d, esi
mov rdx, r12
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov esi, 0xa0
mov dword [rbx + 0x10], esi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, esi
mov esi, 8
mov edx, esi
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 0x140020977
mov qword [rbx + 0x18], rax
lea rcx, [0x1400b78a0]
movups xmm0, xmmword [rcx]
lea edx, [rsi + 0x78]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rax + 0x30], xmm1
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [rax + 0x40], xmm0
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [rax + 0x50], xmm1
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [rax + 0x60], xmm0
movups xmm1, xmmword [rcx + 0x70]
movups xmmword [rax + rdx - 0x10], xmm1
movups xmm0, xmmword [rcx + rdx]
movups xmmword [rax + rdx], xmm0
movups xmm1, xmmword [rcx + rdx + 0x10]
movups xmmword [rax + rdx + 0x10], xmm1
mov dword [rbx + 0x20], esi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, esi
mov edx, esi
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 0x140020977
mov qword [rbx + 0x28], rax
mov rax, qword [0x1400b7940]
mov r13, rbx
mov qword [rcx], rax
mov esi, r14d
mov rbx, r14
jmp 0x14002097c
mov esi, 0xc0000017
test rbx, rbx
je 0x140020a2c
mov r12, qword [rbx + 8]
test r12, r12
je 0x1400209b2
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rbx + 8], r14
mov r12, qword [rbx + 0x18]
test r12, r12
je 0x1400209df
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rbx + 0x18], r14
mov r12, qword [rbx + 0x28]
test r12, r12
je 0x140020a0c
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rbx + 0x28], r14
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 esi, esi
js 0x140020a41
mov qword [rbp + 0x90], r13
mov r13, r14
jmp 0x140020a41
mov esi, 0xc0000001
mov rbx, qword [rbp + 0xf0]
test rbx, rbx
je 0x140020a74
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 + 0xf0], r14
test r13, r13
je 0x140020b24
mov rbx, qword [r13 + 8]
test rbx, rbx
je 0x140020aaa
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 [r13 + 8], r14
mov rbx, qword [r13 + 0x18]
test rbx, rbx
je 0x140020ad7
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 [r13 + 0x18], r14
mov rbx, qword [r13 + 0x28]
test rbx, rbx
je 0x140020b04
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 [r13 + 0x28], r14
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]
or esi, 0x10000000
jl 0x140020feb
mov r12, qword [rbp + 0x90]
lea r8, [rbp + 0x2c0]
mov r13d, 4
mov ecx, r13d
mov dword [rbp + 0x2c0], r13d
mov edx, dword [r12]
call fcn.140005588
mov esi, eax
test eax, eax
js 0x140020bda
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r13d
call fcn.140005588
mov esi, eax
test eax, eax
js 0x140020bda
mov edx, dword [r12 + 0x10]
lea r8, [rbp + 0x2c0]
mov ecx, dword [rbp + 0x2c0]
call fcn.140005588
mov esi, eax
test eax, eax
js 0x140020bda
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r13d
call fcn.140005588
mov esi, eax
test eax, eax
js 0x140020bda
mov edx, dword [r12 + 0x20]
lea r8, [rbp + 0x2c0]
mov ecx, dword [rbp + 0x2c0]
call fcn.140005588
mov esi, eax
mov eax, dword [rbp + 0x2c]
test esi, esi
cmovns eax, dword [rbp + 0x2c0]
mov dword [rbp + 0x2c], eax
jmp 0x140020bdd
mov eax, dword [rbp + 0x2c]
test esi, esi
js 0x140020d60
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 0x140020c1c
mov esi, 0xc0000017
jmp 0x140020d60
mov eax, dword [r12]
lea r8, [rbp + 0x2b8]
mov rdx, r13
mov dword [rbx], eax
mov rcx, rbx
mov qword [rbp + 0x2b8], rbx
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x140020d3b
mov r8d, dword [r12]
mov rdx, qword [r12 + 8]
mov rcx, qword [rbp + 0x2b8]
call sub.msvcrt.dll_memcpy
mov edx, dword [r12]
lea r8, [rbp + 0x2b8]
mov rcx, qword [rbp + 0x2b8]
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x140020d3b
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov eax, dword [r12 + 0x10]
mov rdx, r13
mov dword [rcx], eax
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x140020d3b
mov r8d, dword [r12 + 0x10]
mov rdx, qword [r12 + 0x18]
mov rcx, qword [rbp + 0x2b8]
call sub.msvcrt.dll_memcpy
mov edx, dword [r12 + 0x10]
lea r8, [rbp + 0x2b8]
mov rcx, qword [rbp + 0x2b8]
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x140020d3b
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov eax, dword [r12 + 0x20]
mov rdx, r13
mov dword [rcx], eax
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x140020d3b
mov r8d, dword [r12 + 0x20]
mov rdx, qword [r12 + 0x28]
mov rcx, qword [rbp + 0x2b8]
call sub.msvcrt.dll_memcpy
mov edx, dword [r12 + 0x20]
lea r8, [rbp + 0x2b8]
mov rcx, qword [rbp + 0x2b8]
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x140020d3b
mov eax, dword [rbp + 0x2c]
mov qword [rbp + 0x20], rbx
mov rbx, r14
mov dword [rsp + 0x34], eax
test rbx, rbx
je 0x140020d60
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]
or esi, 0x10000000
jl 0x140020feb
mov qword [rbp + 0x1f0], r14
mov r10d, r14d
mov dword [rbp + 0xbc], r14d
mov r11d, r14d
mov qword [rbp + 0x1f8], r14
mov dword [rbp + 0xc0], r14d
mov dword [rbp + 0x28], 8
mov edx, dword [rsp + 0x40]
lea r8, [rbp + 0x28]
mov ecx, 8
call fcn.140005588
mov esi, eax
or esi, 0x10000000
jl 0x1400212f2
mov eax, dword [rbp + 0x28]
add rax, 7
and eax, 0xfffffff8
cmp eax, dword [rbp + 0x28]
jae 0x140020dcf
mov r9d, dword [rbp + 0x60]
mov esi, 0xc0000095
jmp 0x140020df0
mov dword [rbp + 0x5c], eax
mov edx, ecx
lea r8, [rbp + 0x5c]
mov ecx, eax
call fcn.140005588
mov r9d, dword [rbp + 0x60]
test eax, eax
mov esi, eax
cmovns r9d, dword [rbp + 0x5c]
mov dword [rbp + 0x60], r9d
test esi, esi
js 0x140020feb
cmp qword [rbp - 0x78], r14
je 0x140020fca
cmp dword [rbp - 0x80], 1
jbe 0x140020fca
mov rcx, qword [rbp - 0x78]
mov ebx, r14d
mov qword [rbp + 0x2b8], rcx
mov r12d, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x140020e90
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov edx, r12d
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x140020e90
mov rcx, qword [rbp + 0x2b8]
inc ebx
cmp ebx, 1
jb 0x140020e1a
mov ebx, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x140020e90
mov rax, qword [rbp + 0x2b8]
test ebx, ebx
mov r10d, ebx
mov dword [rbp + 0xbc], ebx
cmove rax, r14
mov qword [rbp + 0x1f0], rax
test esi, esi
js 0x140020feb
cmp dword [rbp - 0x80], 2
jbe 0x140020fca
mov rcx, qword [rbp - 0x78]
mov ebx, r14d
mov qword [rbp + 0x2b8], rcx
mov r12d, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x140020f26
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov edx, r12d
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x140020f26
mov rcx, qword [rbp + 0x2b8]
inc ebx
cmp ebx, 2
jb 0x140020eb0
mov ebx, dword [rcx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x140020f26
mov rax, qword [rbp + 0x2b8]
test ebx, ebx
mov r11d, ebx
mov dword [rbp + 0xc0], ebx
cmove rax, r14
mov qword [rbp + 0x1f8], rax
test esi, esi
js 0x140020feb
lea r8, [rbp + 0x2c0]
mov dword [rbp + 0x2c0], r13d
mov edx, r9d
mov ecx, r13d
call fcn.140005588
mov esi, eax
test eax, eax
js 0x140020fd4
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r13d
call fcn.140005588
mov esi, eax
test eax, eax
js 0x140020fd4
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r10d
call fcn.140005588
mov esi, eax
test eax, eax
js 0x140020fd4
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r13d
call fcn.140005588
mov esi, eax
test eax, eax
js 0x140020fd4
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r11d
call fcn.140005588
mov esi, eax
mov eax, dword [rbp + 0x64]
test esi, esi
cmovns eax, dword [rbp + 0x2c0]
mov dword [rbp + 0x64], eax
jmp 0x140020fd7
mov esi, 0xc000000d
jmp 0x1400212f2
mov eax, dword [rbp + 0x64]
test esi, esi
js 0x140020feb
cmp eax, 0x400000
jbe 0x1400212ef
mov esi, 0x8000ffff
mov r13, r14
mov rbx, qword [rbp - 0x18]
test rbx, rbx
je 0x140021017
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 r12, qword [rbp + 0x90]
test r12, r12
je 0x1400210db
mov rbx, qword [r12 + 8]
test rbx, rbx
je 0x140021056
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 [r12 + 8], r14
mov rbx, qword [r12 + 0x18]
test rbx, rbx
je 0x140021085
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 [r12 + 0x18], r14
mov rbx, qword [r12 + 0x28]
test rbx, rbx
je 0x1400210b4
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 [r12 + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 + 0x90], r14
mov rbx, qword [rbp + 0x20]
test rbx, rbx
je 0x140021104
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 - 0x60]
test rbx, rbx
je 0x14002112d
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 r13, r13
je 0x1400211dd
mov rbx, qword [r13 + 8]
test rbx, rbx
je 0x140021163
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 [r13 + 8], r14
mov rbx, qword [r13 + 0x18]
test rbx, rbx
je 0x140021190
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 [r13 + 0x18], r14
mov rbx, qword [r13 + 0x28]
test rbx, rbx
je 0x1400211bd
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 [r13 + 0x28], r14
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]
mov rbx, qword [rbp - 0x20]
test rbx, rbx
je 0x140021206
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 esi, esi
js 0x140022142
mov r9d, dword [rbp + 0x98]
cmp r9d, 1
jb 0x140022142
mov rbx, qword [rbp + 0xa0]
test rbx, rbx
je 0x140022142
test r9d, r9d
je 0x140022142
mov r10d, dword [rbx]
lea r8, [rbp - 0x60]
mov r11d, 4
mov qword [rbp - 0x60], rbx
mov edx, r11d
mov rcx, rbx
call fcn.1400055a8
test eax, eax
js 0x140022142
mov rax, qword [rbp - 0x60]
test r10d, r10d
mov dword [rbp + 0x208], r10d
cmove rax, r14
mov qword [rbp + 0x288], rax
cmp r10d, r11d
jne 0x140022142
mov eax, dword [rax]
mov dword [rbp + 0x148], eax
test eax, eax
js 0x140022142
cmp r9d, 1
jbe 0x140022142
mov qword [rbp + 0x2b8], rbx
mov r9d, r14d
lea r8, [rbp + 0x2b8]
mov rdx, r11
mov rcx, rbx
call fcn.1400055a8
test eax, eax
js 0x140022142
mov edx, dword [rbx]
lea r8, [rbp + 0x2b8]
mov rcx, qword [rbp + 0x2b8]
call fcn.1400055a8
test eax, eax
js 0x140022142
inc r9d
cmp r9d, 1
jae 0x1400220f9
mov rbx, qword [rbp + 0x2b8]
jmp 0x1400212a2
mov dword [rbp - 0x4c], eax
test esi, esi
js 0x140020feb
mov ebx, dword [rbp - 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 0x14002132f
mov esi, 0xd0000017
mov rbx, r14
jmp 0x14002133b
mov rbx, rax
mov qword [rbp - 0x60], rax
mov esi, 0x10000000
test esi, esi
js 0x140020feb
mov rax, qword [rbp + 0x20]
test rax, rax
je 0x1400213f5
test rbx, rbx
je 0x1400213f5
mov qword [rbp + 0x210], rax
lea r8, [rbp + 0x200]
mov eax, dword [rsp + 0x34]
lea rdx, [0x14009a4e0]
mov dword [rbp + 0x220], eax
mov ecx, 1
mov eax, dword [rbp - 0x4c]
mov dword [rbp + 0x224], eax
mov qword [rbp + 0x218], rbx
mov dword [rbp + 0x228], r14d
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
je 0x1400213ff
mov rcx, qword [rbp + 0x200]
lea rdx, [0x14009c858]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x1400213ff
xor r9d, r9d
lea rdx, [rbp + 0x210]
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call qword [0x140098d68]
mov r9d, dword [rbp - 0x4c]
mov esi, eax
or esi, 0x10000000
cmovge r9d, dword [rbp + 0x224]
mov dword [rbp - 0x4c], r9d
jmp 0x140021427
mov esi, 0x80070057
jmp 0x140020feb
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov esi, eax
test eax, eax
jle 0x14002141a
movzx esi, ax
or esi, 0x80070000
test esi, esi
js 0x140021423
mov esi, 0x80004005
mov r9d, dword [rbp - 0x4c]
cmp esi, 0xd0000023
jne 0x140021439
mov esi, 0x8007007a
jmp 0x140020feb
test esi, esi
js 0x140020feb
mov qword [rbp - 0x38], r14
mov dword [rbp + 0x2c0], r14d
mov qword [rbp + 0x2b8], rbx
cmp r9d, r13d
jb 0x140021679
mov r10d, dword [rbx]
lea r8, [rbp + 0x2b8]
mov rdx, r13
mov dword [rsp + 0x40], r10d
mov rcx, rbx
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x14002167e
lea r8, [rbp + 0x2c0]
mov edx, r13d
xor ecx, ecx
call fcn.140005588
mov esi, eax
test eax, eax
js 0x14002167e
mov eax, r9d
sub eax, dword [rbp + 0x2c0]
cmp eax, r10d
jb 0x140021679
mov rax, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov rcx, rax
mov qword [rbp - 0x70], rax
mov edx, r10d
mov qword [rbp - 0x30], r10
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x14002167e
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r10d
call fcn.140005588
mov esi, eax
test eax, eax
js 0x14002167e
mov eax, r9d
sub eax, dword [rbp + 0x2c0]
cmp eax, r13d
jb 0x140021679
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov rdx, r13
mov r12d, dword [rcx]
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x14002167e
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r13d
call fcn.140005588
mov esi, eax
test eax, eax
js 0x14002167e
mov eax, r9d
sub eax, dword [rbp + 0x2c0]
cmp eax, r12d
jb 0x140021679
mov rax, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov rcx, rax
mov qword [rsp + 0x48], rax
mov edx, r12d
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x14002167e
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r12d
call fcn.140005588
mov esi, eax
test eax, eax
js 0x14002167e
mov eax, r9d
sub eax, dword [rbp + 0x2c0]
cmp eax, r13d
jb 0x140021679
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov r11d, 4
mov edx, r11d
mov r13d, dword [rcx]
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x14002167e
mov ecx, dword [rbp + 0x2c0]
lea r8, [rbp + 0x2c0]
mov edx, r11d
call fcn.140005588
mov esi, eax
test eax, eax
js 0x14002167e
mov ecx, dword [rbp + 0x2c0]
mov eax, r9d
sub eax, ecx
cmp eax, r13d
jb 0x140021679
lea r8, [rbp + 0x2c0]
mov edx, r13d
call fcn.140005588
mov esi, eax
test eax, eax
js 0x14002167e
cmp r9d, dword [rbp + 0x2c0]
jne 0x140021679
lea ecx, [r12 + r10]
mov eax, r9d
add ecx, r13d
add rcx, 0xc
cmp rcx, rax
jne 0x140021679
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]
mov rbx, rax
test rax, rax
jne 0x14002174e
mov esi, 0xc0000017
jmp 0x140021911
mov esi, 0xc000003e
mov r13, r14
or esi, 0x10000000
jl 0x140020fee
mov rbx, r14
mov r12, r14
mov qword [rbp + 0x48], rbx
test r13, r13
je 0x1400219e0
mov rax, qword [r13 + 8]
mov qword [rbp - 0x30], rax
test rax, rax
je 0x1400219e0
cmp dword [r13], r14d
je 0x1400219e0
mov esi, dword [r13]
mov dword [rsp + 0x68], r14d
test rsi, rsi
je 0x140021e85
add rsi, 0xfffffffffffffff8
mov rcx, rsi
mov qword [rbp - 0x38], rsi
call fcn.1400097f8
mov qword [rsp + 0x48], rax
mov r9, rax
test rax, rax
je 0x140021e81
mov rbx, qword [rbp - 0x30]
mov r8, rsi
mov qword [rbp + 0x2b8], rdi
mov dl, r14b
mov byte [rsp + 0x38], dl
mov r11d, r14d
mov r10d, r14d
and r8d, 7
je 0x140021aac
mov dword [rsp + 0x3c], r14d
mov ecx, r14d
mov dword [rsp + 0x78], ecx
test r8d, r8d
je 0x140021a16
mov edi, 0x38
movzx eax, byte [rbx]
inc rbx
cmp r10d, 4
jge 0x1400219ea
lea ecx, [rdi - 0x20]
shl eax, cl
mov ecx, dword [rsp + 0x78]
or r11d, eax
jmp 0x1400219f8
mov rsi, qword [rbp - 0x70]
test rsi, rsi
je 0x1400217a5
mov eax, dword [rsp + 0x40]
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 - 0x30]
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 0x14002179b
mov qword [rbx + 8], rax
mov r8, qword [rbp - 0x30]
mov rdx, rsi
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x1400217ac
mov esi, 0xc0000017
jmp 0x140021861
mov dword [rax], r14d
mov qword [rax + 8], r14
mov rsi, qword [rsp + 0x48]
test rsi, rsi
je 0x1400217f6
mov dword [rbx + 0x10], r12d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 0x14002179b
mov qword [rbx + 0x18], rax
mov r8, r12
mov rdx, rsi
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x1400217fe
mov dword [rbx + 0x10], r14d
mov qword [rbx + 0x18], r14
cmp qword [rbp + 0x2b8], r14
je 0x14002184f
mov dword [rbx + 0x20], r13d
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]
test rax, rax
je 0x14002179b
mov qword [rbx + 0x28], rax
mov rdx, qword [rbp + 0x2b8]
mov r8, r13
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x140021857
mov dword [rbx + 0x20], r14d
mov qword [rbx + 0x28], r14
mov qword [rbp - 0x38], rbx
mov esi, r14d
mov rbx, r14
test rbx, rbx
je 0x140021911
mov r12, qword [rbx + 8]
test r12, r12
je 0x140021897
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rbx + 8], r14
mov r12, qword [rbx + 0x18]
test r12, r12
je 0x1400218c4
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rbx + 0x18], r14
mov r12, qword [rbx + 0x28]
test r12, r12
je 0x1400218f1
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rbx + 0x28], r14
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 r13, qword [rbp - 0x38]
test esi, esi
mov rbx, r14
cmovs rbx, qword [rbp - 0x38]
cmovs r13, r14
mov qword [rbp - 0x58], r13
test rbx, rbx
je 0x140021681
mov r12, qword [rbx + 8]
test r12, r12
je 0x14002195d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rbx + 8], r14
mov r12, qword [rbx + 0x18]
test r12, r12
je 0x14002198a
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rbx + 0x18], r14
mov r12, qword [rbx + 0x28]
test r12, r12
je 0x1400219b7
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
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 [rbx + 0x28], r14
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 - 0x58], r13
jmp 0x140021681
mov esi, 0xd000000d
jmp 0x140020fee
mov ecx, edi
shl eax, cl
mov ecx, dword [rsp + 0x78]
or ecx, eax
mov dword [rsp + 0x78], ecx
inc r10d
sub edi, 8
cmp r10d, r8d
jl 0x14002172d
mov dword [rsp + 0x3c], r11d
movabs rdi, 0x7f1137fab69605e
mov r10d, r11d
mov r11d, ecx
xor r11d, 0x699a899c
xor r10d, 0x92f65a5
mov eax, r10d
mov ecx, r11d
test r8d, r8d
je 0x140021a78
mov rdi, r9
lea rdx, [rdi + 1]
mov qword [rbp - 0x70], rdx
cmp r12d, 4
jge 0x140021a4d
rol eax, 8
mov edx, eax
jmp 0x140021a52
rol ecx, 8
mov edx, ecx
mov byte [rdi], dl
inc r12d
mov rdx, qword [rbp - 0x70]
mov rdi, rdx
cmp r12d, r8d
jl 0x140021a38
mov rax, rdx
movabs rdi, 0x7f1137fab69605e
mov dl, r14b
mov r12, r14
jmp 0x140021a7b
mov rax, r9
cmp r8d, 4
jbe 0x140021a94
mov ecx, 8
sub ecx, r8d
shl ecx, 3
shr r11d, cl
shl r11d, cl
jmp 0x140021ab1
mov r11d, r14d
jae 0x140021ab1
mov ecx, 4
sub ecx, r8d
shl ecx, 3
shr r10d, cl
shl r10d, cl
jmp 0x140021ab1
mov dword [rsp + 0x3c], r14d
mov rcx, rsi
shr rcx, 3
mov qword [rbp - 0x70], rcx
test rcx, rcx
je 0x140021e19
mov ecx, dword [rbp + 0x2bc]
lea r13, [rbx + 2]
mov rbx, qword [rbp - 0x70]
lea r14, [rax + 7]
mov r12d, dword [rbp + 0x2bc]
movzx edx, cx
mov dword [rsp + 0x70], edx
mov edx, edi
mov r15d, dword [rsp + 0x70]
xor edx, ecx
movzx ecx, word [rbp + 0x2ba]
mov dword [rsp + 0x40], edx
mov edx, dword [rsp + 0x3c]
mov esi, dword [rsp + 0x40]
mov dword [rsp + 0x34], ecx
movzx ecx, di
mov dword [rbp + 0x2c0], ecx
movzx eax, byte [r13 - 1]
movzx r9d, byte [r13 - 2]
movzx r8d, byte [r13 + 2]
shl r9d, 8
or r9d, eax
shl r8d, 8
movzx eax, byte [r13]
lea r13, [r13 + 8]
shl r9d, 8
or r9d, eax
movzx eax, byte [r13 - 7]
shl r9d, 8
or r9d, eax
movzx eax, byte [r13 - 5]
or r8d, eax
xor r10d, r9d
movzx eax, byte [r13 - 4]
shl r8d, 8
or r8d, eax
movzx eax, byte [r13 - 3]
shl r8d, 8
or r8d, eax
xor r11d, r8d
xor r11d, esi
xor r11d, r10d
mov ecx, r11d
mov eax, r11d
sub ecx, edi
rol eax, 0xa
rol ecx, 5
imul ecx, r15d
add ecx, eax
movzx eax, word [rbp + 0x2ba]
xor r10d, ecx
lea ecx, [r12 + r10]
ror ecx, 9
imul ecx, eax
mov eax, r10d
rol eax, 2
sub ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
sub ecx, r15d
shr eax, 0xd
imul ecx, dword [rbp + 0x2c0]
sub ecx, eax
movzx eax, word [rbp + 0x2be]
xor r10d, ecx
movzx ecx, word [rbp + 0x2ba]
xor ecx, r10d
rol ecx, 6
imul ecx, eax
mov eax, r10d
rol eax, 2
sub ecx, eax
mov eax, r12d
xor r11d, ecx
mov ecx, edi
xor ecx, r11d
sub eax, ecx
xor r10d, eax
mov eax, r10d
mov ecx, r10d
ror ecx, 6
xor eax, r15d
imul eax, dword [rsp + 0x34]
xor ecx, eax
xor r11d, ecx
mov eax, r11d
rol eax, 2
lea ecx, [r12 + r11]
ror ecx, 0xf
imul ecx, dword [rbp + 0x2c0]
add ecx, eax
movzx eax, word [rbp + 0x2be]
xor r10d, ecx
mov ecx, r10d
sub ecx, edi
ror ecx, 0xe
imul ecx, eax
mov eax, r10d
rol eax, 8
sub ecx, eax
xor r11d, ecx
mov ecx, edi
xor ecx, r11d
mov eax, r11d
ror ecx, 0xc
ror eax, 0xa
imul ecx, r15d
xor ecx, eax
movzx eax, word [rbp + 0x2ba]
xor r10d, ecx
movzx ecx, word [rbp + 0x2be]
xor ecx, r10d
imul ecx, eax
mov eax, r10d
shr eax, 0xa
xor ecx, eax
xor r11d, ecx
movzx ecx, word [rbp + 0x2be]
mov eax, r11d
not eax
ror eax, 5
add eax, dword [rbp + 0x2c0]
imul eax, ecx
xor r10d, eax
mov eax, r10d
sub eax, ecx
xor eax, edi
xor r11d, eax
xor ecx, r11d
mov eax, r11d
rol ecx, 2
imul ecx, r15d
shr eax, 2
add ecx, eax
movzx eax, word [rbp + 0x2ba]
xor r10d, ecx
mov ecx, r10d
sub ecx, r12d
ror ecx, 6
imul ecx, eax
mov eax, r10d
rol eax, 7
add ecx, eax
mov eax, r15d
xor r11d, ecx
xor eax, r11d
mov ecx, r11d
imul eax, dword [rbp + 0x2c0]
ror ecx, 9
add ecx, eax
movzx eax, word [rbp + 0x2be]
xor r10d, ecx
movzx ecx, word [rbp + 0x2ba]
xor ecx, r10d
rol ecx, 5
imul ecx, eax
mov eax, r10d
rol eax, 7
add ecx, eax
mov eax, esi
xor r11d, ecx
movzx ecx, word [rbp + 0x2ba]
xor eax, r11d
xor r10d, eax
mov eax, r10d
ror eax, 3
sub eax, ecx
imul eax, r15d
xor r11d, eax
mov ecx, r11d
mov eax, r11d
sub ecx, r12d
ror eax, 6
ror ecx, 1
imul ecx, dword [rbp + 0x2c0]
sub ecx, eax
xor r10d, ecx
lea ecx, [rdi + r10]
movzx eax, word [rbp + 0x2be]
rol ecx, 3
imul ecx, eax
mov eax, r10d
rol eax, 0xe
add ecx, eax
xor r11d, ecx
mov eax, r11d
ror eax, 0xe
lea ecx, [rdi + r11]
rol ecx, 0xf
imul ecx, r15d
sub ecx, eax
movzx eax, word [rbp + 0x2ba]
xor r10d, ecx
mov ecx, dword [rbp + 0x2c0]
xor ecx, r10d
imul ecx, eax
mov eax, r10d
shr eax, 3
xor ecx, eax
xor r11d, ecx
mov ecx, r12d
xor ecx, r11d
mov eax, r11d
xor r11d, dword [rsp + 0x78]
rol ecx, 4
imul ecx, dword [rbp + 0x2c0]
rol eax, 2
mov dword [rsp + 0x78], r8d
xor ecx, eax
xor ecx, edx
mov edx, r9d
xor r10d, ecx
mov byte [r14 - 4], r10b
mov byte [r14], r11b
lea r14, [r14 + 8]
ror r10d, 8
mov byte [r14 - 0xd], r10b
ror r11d, 8
mov byte [r14 - 9], r11b
ror r10d, 8
mov byte [r14 - 0xe], r10b
ror r11d, 8
mov byte [r14 - 0xa], r11b
ror r10d, 8
ror r11d, 8
mov byte [r14 - 0xf], r10b
mov byte [r14 - 0xb], r11b
ror r11d, 8
ror r10d, 8
sub rbx, 1
jne 0x140021b0e
mov dl, byte [rsp + 0x38]
xor r14d, r14d
mov r15d, dword [rsp + 0x30]
mov r12d, r14d
mov r13, qword [rbp - 0x58]
mov rsi, qword [rbp - 0x38]
mov r9, qword [rsp + 0x48]
mov rax, r14
test rsi, rsi
je 0x140021e2d
xor dl, byte [rax + r9]
inc rax
cmp rax, rsi
jb 0x140021e21
mov rcx, qword [rbp - 0x30]
movzx eax, dl
cmp rax, qword [rsi + rcx]
je 0x140021e45
mov rbx, qword [rbp + 0x48]
mov edi, 0xc004d501
jmp 0x140021e56
mov edi, dword [rsp + 0x68]
mov rbx, r9
mov qword [rbp + 0x48], rbx
mov r9, r14
mov r12, rsi
test r9, r9
je 0x140021e67
mov rcx, r9
call fcn.14002e634
mov rbx, qword [rbp + 0x48]
test edi, edi
js 0x140021e85
mov qword [rbp - 0x20], rbx
mov esi, 0x10000000
mov rbx, r14
mov dword [rbp + 0x1c], r12d
mov qword [rbp + 0x48], rbx
jmp 0x140021e8e
mov rbx, qword [rbp + 0x48]
mov r12d, dword [rbp + 0x1c]
mov esi, 0xd0000001
test rbx, rbx
je 0x140021ebb
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 r12d, dword [rbp + 0x1c]
mov qword [rbp + 0x48], r14
test esi, esi
js 0x140020fee
mov r9, qword [rbp - 0x20]
mov r11d, 4
mov dword [rsp + 0x78], r14d
mov qword [rsp + 0x48], r9
cmp r12d, r11d
jb 0x1400220eb
mov eax, dword [r9]
lea r8, [rsp + 0x48]
mov edx, r11d
mov dword [rsp + 0x34], eax
mov rcx, r9
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x1400220f0
lea r8, [rsp + 0x78]
mov edx, r11d
xor ecx, ecx
call fcn.140005588
mov esi, eax
test eax, eax
js 0x1400220f0
mov eax, r12d
sub eax, dword [rsp + 0x78]
cmp eax, r11d
jb 0x1400220eb
mov rcx, qword [rsp + 0x48]
lea r8, [rsp + 0x48]
mov edx, r11d
mov r10d, dword [rcx]
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x1400220f0
mov ecx, dword [rsp + 0x78]
lea r8, [rsp + 0x78]
mov edx, r11d
call fcn.140005588
mov esi, eax
test eax, eax
js 0x1400220f0
mov ecx, dword [rsp + 0x78]
mov eax, r12d
sub eax, ecx
cmp eax, r10d
jb 0x1400220eb
lea r8, [rsp + 0x78]
mov edx, r10d
call fcn.140005588
mov esi, eax
test eax, eax
js 0x1400220f0
mov rbx, qword [rsp + 0x48]
mov edi, r10d
mov edx, r12d
lea rax, [r10 + rbx]
lea rcx, [r9 + rdx]
cmp rcx, rax
jb 0x1400220eb
mov rax, r9
sub rax, r10
sub rax, rbx
add rax, rdx
cmp rax, 8
jae 0x1400220eb
mov dword [rsp + 0x3c], r14d
mov r12, r14
mov esi, r14d
test rbx, rbx
je 0x140022076
lea r8, [rbp - 0x70]
mov edx, r10d
mov rcx, rbx
mov r9, rbx
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x1400220db
mov r11, qword [rbp - 0x70]
cmp rbx, r11
jae 0x140022071
mov r10d, dword [rbp + 0x18]
lea r8, [rbp - 0x70]
mov edx, 4
mov rcx, r9
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x1400220db
cmp qword [rbp - 0x70], r11
ja 0x1400220ad
mov edx, dword [r9]
lea r8, [rsp + 0x40]
mov ecx, 4
call fcn.140005588
test eax, eax
mov esi, eax
cmovns r10d, dword [rsp + 0x40]
mov dword [rbp + 0x18], r10d
js 0x1400220db
mov edx, r10d
lea r8, [rbp - 0x30]
mov rcx, r9
call fcn.1400055a8
mov esi, eax
test eax, eax
js 0x1400220db
mov r9, qword [rbp - 0x30]
cmp r9, r11
ja 0x1400220ad
inc dword [rsp + 0x3c]
cmp r9, r11
jb 0x140021ffc
mov r10d, edi
cmp r9, r11
jne 0x1400220ad
test r10d, r10d
je 0x1400220b7
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]
mov r12, rax
test rax, rax
jne 0x1400220b4
mov esi, 0xc0000017
jmp 0x1400220db
mov esi, 0xc000000d
jmp 0x1400220f0
mov esi, r14d
test rbx, rbx
je 0x1400220ca
mov r8, rdi
mov rdx, rbx
mov rcx, r12
call sub.msvcrt.dll_memcpy
mov eax, dword [rsp + 0x3c]
mov dword [rbp + 0x98], eax
mov qword [rbp + 0xa0], r12
test esi, esi
js 0x1400220f0
mov eax, dword [rsp + 0x34]
cmp eax, dword [rbp + 0x98]
je 0x1400220f0
mov esi, 0xc000003e
bts esi, 0x1c
jmp 0x140020fee
mov rcx, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2b8]
mov rdx, r11
mov r9d, dword [rcx]
call fcn.1400055a8
test eax, eax
js 0x140022142
mov rax, qword [rbp + 0x2b8]
test r9d, r9d
mov dword [rbp + 0x14c], r9d
cmove rax, r14
mov qword [rbp + 0x290], rax
cmp r9d, 8
jne 0x140022142
mov rax, qword [rax]
mov qword [rbp + 0x298], rax
mov rsi, qword [rbp + 0x2c8]
mov r13, qword [rsp + 0x60]
jmp 0x14001ffb0
mov edi, dword [rbp + 0x70]
mov r13d, 0x8007007a
mov rsi, qword [rbp + 0x120]
mov r12, qword [rbp + 0x128]
mov ebx, dword [rbp + 0x18]
lea rcx, [rbp - 0x18]
call fcn.140008904
test r15d, r15d
jns 0x1400050bf
cmp r15d, 0xd0000034
jne 0x140022196
mov r15d, 0xc004f012
mov ebx, r15d
jmp 0x1400050da
cmp r15d, 0xd00000e5
je 0x1400221bd
cmp r15d, 0xc004d501
je 0x1400221bd
cmp r15d, 0xd000003e
jne 0x1400050b6
mov r15d, 0xc004f028
jmp 0x14002218e
mov r15d, 0xc004f027
jmp 0x1400050b6
cmp r15d, r13d
jne 0x14002218e
mov ebx, 0xc004f01e
jmp 0x1400050da
mov rcx, qword [rcx + 0x38]
lea r8, [0x1400abfc8]
mov edx, 0x17
call fcn.140030acc
nop
jmp 0x140005115
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x1400b72f8]
lea r8, [0x1400abfc8]
mov edx, 0x18
mov dword [rsp + 0x20], eax
mov r9d, r14d
mov rcx, qword [rcx + 0x38]
call fcn.140037b14
jmp 0x140022271
mov edi, 0xd
mov ecx, edi
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
mov rax, qword [0x1400b72f8]
lea r15, [0x1400b72f8]
cmp rax, r15
je 0x14000514a
test byte [rax + 0x44], 0x20
je 0x14000513b
mov rcx, qword [rax + 0x38]
lea edx, [rdi + 0xc]
mov r9d, ebx
mov dword [rsp + 0x20], edi
lea r8, [0x1400abfc8]
call fcn.140037b14
mov rax, qword [0x1400b72f8]
jmp 0x14000513b
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x1400b72f8]
lea r8, [0x1400abfc8]
mov dword [rsp + 0x28], eax
mov edx, 0x1a
mov r9d, r14d
mov dword [rsp + 0x20], ebx
mov rcx, qword [rcx + 0x38]
call fcn.1400538b4
nop
jmp 0x14000514a