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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x198]
sub rsp, 0x298
mov rax, qword [0x1400c77d8]
xor rax, rsp
mov qword [rbp + 0x180], rax
mov rax, qword [rbp + 0x200]
xor r14d, r14d
mov qword [rbp + 0xc8], rax
mov edi, r14d
mov dword [rbp + 0x94], r14d
mov r12d, r9d
mov dword [rbp + 0x90], r9d
mov esi, edx
mov qword [rbp + 0xd0], r8
mov r13, rcx
mov dword [rbp + 0x8c], edx
mov qword [rbp + 0xa8], rcx
mov rcx, qword [0x1400c72a8]
lea rax, [0x1400c72a8]
cmp rcx, rax
je 0x140058910
test byte [rcx + 0x44], 0x80
je 0x140058910
mov rcx, qword [rcx + 0x38]
lea edx, [r14 + 0x10]
mov dword [rsp + 0x20], r9d
lea r8, [0x1400bc160]
mov r9d, esi
call fcn.1400245dc
mov qword [rbp + 0xa0], r14
mov dword [rbp + 0x54], r14d
mov dword [rbp + 0x88], r14d
mov qword [rbp - 0x20], r14
mov dword [rbp], r14d
mov edx, 4
lea ecx, [rdx + 0x3c]
call qword [sym.imp.KERNELBASE.dll_LocalAlloc]
nop dword [rax + rax]
lea rcx, [rbp - 0x20]
mov qword [rbp + 0x98], rax
mov rbx, rax
call fcn.1400491e8
test rbx, rbx
jne 0x140058965
mov qword [rbp - 0x20], r14
mov r15d, 0x8007000e
jmp 0x14005f4f7
xorps xmm0, xmm0
mov qword [rbp - 0x20], rbx
movups xmmword [rbp + 0x58], xmm0
mov r12, r14
mov qword [rbp - 8], r14
mov r13, r14
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 [rbp + 0x50], 0xffffffff
lea rdx, [0x140000000]
mov dword [rbp + 0x38], 0x38
movabs rbx, 0xc81ecb17b1b54a58
mov r15d, 0xc0000017
movabs rdi, 0x7f1137fab69605e
test rax, rax
je 0x14005a5a5
mov r12, rax
lea rax, [rdx + 0xc78e0]
movups xmm0, xmmword [rax]
lea edx, [rsi + 0x78]
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
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 r11, rax
test rax, rax
je 0x14005a5a5
mov rax, qword [0x1400c7820]
mov rsi, r12
mov qword [r11], rax
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x10], rax
mov r9d, 4
mov dword [rbp - 0x68], r14d
mov edx, r9d
lea r8, [rsp + 0x70]
mov ecx, r9d
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c684
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0x68]
xor ecx, ecx
call fcn.140049218
mov r15d, eax
mov r10d, 0x10000000
or r15d, r10d
mov r13, r11
mov dword [rsp + 0x30], r15d
jl 0x14005c687
lea r8, [rsp + 0x70]
mov edx, 0xa0
mov ecx, r9d
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0x68]
mov ecx, dword [rbp - 0x68]
call fcn.140049218
mov r15d, eax
or r15d, r10d
mov dword [rsp + 0x30], r15d
jl 0x14005c687
lea r8, [rsp + 0x70]
mov ecx, r9d
lea edx, [r9 + 4]
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0x68]
mov ecx, dword [rbp - 0x68]
call fcn.140049218
mov r15d, eax
or r15d, r10d
mov dword [rsp + 0x30], r15d
jl 0x14005c687
lea r8, [rsp + 0x40]
mov ecx, r9d
lea edx, [r9 + 4]
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x40]
lea r8, [rbp - 0x68]
mov ecx, dword [rbp - 0x68]
call fcn.140049218
mov r15d, eax
or r15d, r10d
mov dword [rsp + 0x30], r15d
jl 0x14005c687
lea r8, [rbp - 0x38]
lea rcx, str.Printing_Spooler_Core_Spoolss_Licensing_Enabled
call fcn.14004925c
test eax, eax
js 0x1400591e4
mov rax, qword [rbp - 0x38]
lea r8, [rsp + 0x70]
inc rax
mov r9d, 4
mov ecx, r9d
lea edx, [rax + rax]
call fcn.140049218
mov r15d, eax
mov dword [rsp + 0x30], eax
test eax, eax
mov eax, dword [rsp + 0x40]
cmovns eax, dword [rsp + 0x70]
test r15d, r15d
js 0x14005c687
mov ecx, dword [rbp - 0x68]
lea r8, [rbp - 0x68]
mov edx, eax
call fcn.140049218
mov r15d, eax
mov r10d, 0x10000000
or r15d, r10d
mov dword [rsp + 0x30], r15d
jl 0x14005c687
lea r8, [rsp + 0x70]
mov edx, r9d
mov ecx, r9d
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0x68]
mov ecx, dword [rbp - 0x68]
call fcn.140049218
mov r15d, eax
or r15d, r10d
mov dword [rsp + 0x30], r15d
jl 0x14005c687
lea r8, [rsp + 0x70]
mov edx, r9d
mov ecx, r9d
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0x68]
mov ecx, dword [rbp - 0x68]
call fcn.140049218
mov r15d, eax
or r15d, r10d
mov dword [rsp + 0x30], r15d
jl 0x14005c687
mov eax, dword [rbp - 0x68]
mov dword [rbp - 0xc], 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]
test rax, rax
jne 0x140058cd2
mov r15d, 0xc0000017
jmp 0x14005a5a5
mov qword [rbp - 8], rax
mov r11d, r14d
mov dword [rbp - 0x10], r14d
test rax, rax
jne 0x140058d75
lea r11d, [rax + 4]
mov edx, r11d
lea r8, [rsp + 0x70]
mov ecx, r11d
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0xc]
mov ecx, dword [rbp - 0xc]
call fcn.140049218
mov rdx, qword [rbp + 0x98]
lea r9d, [r11 + 4]
mov r11d, dword [rbp - 0x10]
mov r15d, eax
mov dword [rsp + 0x30], eax
mov rax, r13
mov qword [rsp + 0x60], rax
mov rcx, r12
mov dword [rbp - 0x58], r9d
mov r10d, 0xa0
mov qword [rbp - 0x70], rcx
mov rsi, rdx
mov qword [rbp - 0x78], rdx
test r15d, r15d
js 0x14005c687
inc r11d
mov qword [rsp + 0x60], rax
mov dword [rbp - 0x10], r11d
mov dword [rbp - 0x58], r9d
mov qword [rbp - 0x70], rcx
mov qword [rbp - 0x78], rdx
jmp 0x140058e23
mov rdx, qword [rbp + 0x98]
lea r8, [rbp - 0x30]
mov r15, qword [rbp - 8]
mov r9d, 8
mov rcx, r12
mov qword [rbp - 0x78], rdx
mov rax, r13
mov qword [rbp - 0x70], rcx
mov rsi, rdx
mov qword [rbp + 0x168], r15
lea edx, [r9 - 4]
mov qword [rbp - 0x18], r15
mov rcx, r15
mov qword [rsp + 0x60], rax
mov dword [rbp - 0x58], r9d
mov r10d, 0xa0
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x140058e02
mov r15, qword [rbp + 0x168]
mov ecx, dword [rbp - 0xc]
add rcx, qword [rbp - 8]
lea rax, [r15 + 8]
cmp rax, rcx
ja 0x14005c611
mov rax, qword [rbp - 0x30]
mov dword [r15], 4
mov dword [rax], r14d
mov r11d, dword [rbp - 0x10]
inc r11d
mov dword [rbp - 0x10], r11d
jmp 0x140058e0b
test r15d, r15d
js 0x14005c687
test r12, r12
jne 0x140058e1a
test r10d, r10d
je 0x140058e23
jmp 0x14005c443
test r10d, r10d
je 0x14005c443
cmp qword [rbp - 8], r14
jne 0x140058e79
lea r8, [rsp + 0x70]
mov edx, r10d
mov ecx, 4
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0xc]
mov ecx, dword [rbp - 0xc]
call fcn.140049218
mov r11d, dword [rbp - 0x10]
mov r15d, eax
mov dword [rsp + 0x30], eax
test eax, eax
js 0x140058f62
inc r11d
mov dword [rbp - 0x10], r11d
jmp 0x140058f6b
mov rax, qword [rbp - 8]
mov qword [rbp - 0x80], rax
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x40], r14d
test r11d, r11d
je 0x140058f0b
mov edx, dword [rax]
lea r8, [rsp + 0x70]
mov ecx, 4
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rsp + 0x38]
mov rcx, qword [rbp - 0x80]
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x40]
mov rcx, r13
inc edx
mov rax, r12
mov dword [rsp + 0x40], edx
cmp edx, r11d
jae 0x140058ef1
mov rax, qword [rsp + 0x38]
mov qword [rbp - 0x80], rax
jmp 0x140058e90
mov qword [rbp - 0x70], rax
mov rax, qword [rsp + 0x38]
mov qword [rbp - 0x80], rax
mov qword [rsp + 0x60], rcx
mov dword [rbp - 0x58], r9d
mov qword [rbp - 0x78], rsi
lea r8, [rbp - 0x30]
mov edx, 4
mov rcx, rax
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x140058f62
mov r15, qword [rbp - 0x80]
mov ecx, dword [rbp - 0xc]
add rcx, qword [rbp - 8]
mov r8d, r10d
lea rax, [r15 + 4]
add rax, r8
cmp rax, rcx
ja 0x14005c611
mov dword [r15], r10d
test r12, r12
je 0x140058f59
mov rcx, qword [rbp - 0x30]
mov rdx, r12
call sub.msvcrt.dll_memcpy
mov r11d, dword [rbp - 0x10]
jmp 0x140058e6d
test r15d, r15d
js 0x14005c687
mov r9d, dword [rbp - 0x58]
test r13, r13
jne 0x140058f7e
test r9d, r9d
je 0x140058f87
jmp 0x14005c443
test r9d, r9d
je 0x14005c443
cmp qword [rbp - 8], r14
jne 0x140058fdd
lea r8, [rsp + 0x70]
mov edx, r9d
mov ecx, 4
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0xc]
mov ecx, dword [rbp - 0xc]
call fcn.140049218
mov r11d, dword [rbp - 0x10]
mov r15d, eax
mov dword [rsp + 0x30], eax
test eax, eax
js 0x1400590a8
inc r11d
mov dword [rbp - 0x10], r11d
jmp 0x1400590b1
mov r10, qword [rbp - 8]
mov qword [rbp - 0x80], r10
mov dword [rsp + 0x40], r14d
test r11d, r11d
je 0x140059055
mov edx, dword [r10]
lea r8, [rsp + 0x70]
mov ecx, 4
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0x80]
mov rcx, r10
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x40]
mov rcx, r13
mov r10, qword [rbp - 0x80]
inc edx
mov dword [rsp + 0x40], edx
mov rax, r12
cmp edx, r11d
jb 0x140058fef
mov qword [rsp + 0x60], rcx
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x78], rsi
lea r8, [rbp - 0x30]
mov edx, 4
mov rcx, r10
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x1400590a8
mov ecx, dword [rbp - 0xc]
add rcx, qword [rbp - 8]
mov r8d, r9d
lea rax, [r8 + 4]
add rax, r10
cmp rax, rcx
ja 0x14005c611
mov dword [r10], r9d
test r13, r13
je 0x14005909f
mov rcx, qword [rbp - 0x30]
mov rdx, r13
call sub.msvcrt.dll_memcpy
mov r11d, dword [rbp - 0x10]
jmp 0x140058fd1
test r15d, r15d
js 0x14005c687
cmp qword [rbp - 8], r14
jne 0x140059107
mov edx, 8
lea r8, [rsp + 0x70]
lea ecx, [rdx - 4]
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0xc]
mov ecx, dword [rbp - 0xc]
call fcn.140049218
mov r11d, dword [rbp - 0x10]
mov r15d, eax
mov dword [rsp + 0x30], eax
test eax, eax
js 0x1400591c7
inc r11d
mov dword [rbp - 0x10], r11d
jmp 0x1400591d0
mov r9, qword [rbp - 8]
mov qword [rbp - 0x80], r9
mov dword [rsp + 0x40], r14d
test r11d, r11d
je 0x14005917c
mov edx, dword [r9]
lea r8, [rsp + 0x70]
mov ecx, 4
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0x80]
mov rcx, r9
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov ecx, dword [rsp + 0x40]
mov rax, r13
mov r9, qword [rbp - 0x80]
inc ecx
mov dword [rsp + 0x40], ecx
cmp ecx, r11d
jb 0x140059119
mov qword [rsp + 0x60], rax
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
lea r8, [rbp - 0x30]
mov edx, 4
mov rcx, r9
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x1400591c7
mov ecx, dword [rbp - 0xc]
lea rax, [r9 + 0xc]
add rcx, qword [rbp - 8]
cmp rax, rcx
ja 0x14005c611
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp + 0x10]
mov dword [r9], 8
mov qword [rax], rcx
mov r11d, dword [rbp - 0x10]
jmp 0x1400590fb
test r15d, r15d
js 0x14005c687
lea r8, [rbp - 0x80]
lea rcx, str.Printing_Spooler_Core_Spoolss_Licensing_Enabled
call fcn.14004925c
test eax, eax
jns 0x1400591ef
mov r15d, 0xc000003e
jmp 0x14005a5a5
mov rcx, qword [rbp - 0x80]
lea r8, [rbp - 0x80]
mov edx, 1
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x140059344
mov eax, dword [rbp - 0x80]
lea r10d, [rax + rax]
test r10d, r10d
je 0x140059339
cmp qword [rbp - 8], r14
jne 0x14005927e
lea r8, [rsp + 0x70]
mov edx, r10d
mov ecx, 4
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x140059344
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0xc]
mov ecx, dword [rbp - 0xc]
call fcn.140049218
mov r11d, dword [rbp - 0x10]
mov r15d, eax
mov dword [rsp + 0x30], eax
test eax, eax
js 0x140059344
inc r11d
mov dword [rsp + 0x30], r14d
mov dword [rbp - 0x10], r11d
mov r15d, r14d
jmp 0x140059344
mov r9, qword [rbp - 8]
mov qword [rbp - 0x80], r9
mov dword [rsp + 0x40], r14d
test r11d, r11d
je 0x1400592df
mov edx, dword [r9]
lea r8, [rsp + 0x70]
mov ecx, 4
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x140059344
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0x80]
mov rcx, r9
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x140059344
mov eax, dword [rsp + 0x40]
mov r9, qword [rbp - 0x80]
inc eax
mov dword [rsp + 0x40], eax
cmp eax, r11d
jb 0x140059290
lea r8, [rbp - 0x30]
mov edx, 4
mov rcx, r9
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x140059344
mov ecx, dword [rbp - 0xc]
lea rax, [r10 + 4]
add rcx, qword [rbp - 8]
add rax, r9
mov r8d, r10d
cmp rax, rcx
jbe 0x140059319
mov r15d, 0xc0000023
jmp 0x14005933f
mov rcx, qword [rbp - 0x30]
lea rdx, str.Printing_Spooler_Core_Spoolss_Licensing_Enabled
mov dword [r9], r10d
call sub.msvcrt.dll_memcpy
mov r11d, dword [rbp - 0x10]
inc r11d
mov dword [rbp - 0x10], r11d
jmp 0x140059344
mov r15d, 0xc000000d
mov dword [rsp + 0x30], r15d
test r15d, r15d
js 0x14005c687
cmp qword [rbp - 8], r14
jne 0x1400593a2
mov edx, 4
lea r8, [rsp + 0x70]
mov ecx, edx
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0xc]
mov ecx, dword [rbp - 0xc]
call fcn.140049218
mov r11d, dword [rbp - 0x10]
mov r15d, eax
mov dword [rsp + 0x30], eax
test eax, eax
js 0x14005945e
inc r11d
mov dword [rbp - 0x10], r11d
jmp 0x140059467
mov r9, qword [rbp - 8]
mov qword [rbp - 0x80], r9
mov dword [rsp + 0x40], r14d
test r11d, r11d
je 0x140059417
mov edx, dword [r9]
lea r8, [rsp + 0x70]
mov ecx, 4
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0x80]
mov rcx, r9
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov ecx, dword [rsp + 0x40]
mov rax, r13
mov r9, qword [rbp - 0x80]
inc ecx
mov dword [rsp + 0x40], ecx
cmp ecx, r11d
jb 0x1400593b4
mov qword [rsp + 0x60], rax
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
lea r8, [rbp - 0x30]
mov edx, 4
mov rcx, r9
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005945e
mov ecx, dword [rbp - 0xc]
lea rax, [r9 + 8]
add rcx, qword [rbp - 8]
cmp rax, rcx
ja 0x14005c611
mov rax, qword [rbp - 0x30]
mov dword [r9], 4
mov dword [rax], r14d
mov r11d, dword [rbp - 0x10]
jmp 0x140059396
test r15d, r15d
js 0x14005c687
cmp qword [rbp - 8], r14
jne 0x1400594b9
mov r11d, 4
lea r8, [rsp + 0x70]
mov edx, r11d
mov ecx, r11d
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0xc]
mov ecx, dword [rbp - 0xc]
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x140059571
inc dword [rbp - 0x10]
jmp 0x14005957a
mov r9, qword [rbp - 8]
mov qword [rbp - 0x80], r9
mov dword [rsp + 0x40], r14d
test r11d, r11d
je 0x14005952e
mov edx, dword [r9]
lea r8, [rsp + 0x70]
mov ecx, 4
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0x80]
mov rcx, r9
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov ecx, dword [rsp + 0x40]
mov rax, r13
mov r9, qword [rbp - 0x80]
inc ecx
mov dword [rsp + 0x40], ecx
cmp ecx, r11d
jb 0x1400594cb
mov qword [rsp + 0x60], rax
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
mov r11d, 4
lea r8, [rbp - 0x30]
mov edx, r11d
mov rcx, r9
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x140059571
mov ecx, dword [rbp - 0xc]
lea rax, [r9 + 8]
add rcx, qword [rbp - 8]
cmp rax, rcx
ja 0x14005c611
mov rax, qword [rbp - 0x30]
mov dword [r9], r11d
mov dword [rax], r11d
jmp 0x1400594b1
test r15d, r15d
js 0x14005c687
lea r8, [rsp + 0x70]
mov edx, r11d
mov ecx, r11d
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov r9d, dword [rsp + 0x70]
lea r8, [rsp + 0x70]
mov edx, 8
mov dword [rbp - 0x68], r9d
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0x68]
mov ecx, r9d
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x1400596d1
lea r8, [rsp + 0x70]
mov edx, r11d
mov ecx, r11d
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0x68]
mov ecx, dword [rbp - 0x68]
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x1400596d1
lea r8, [rsp + 0x70]
mov edx, r11d
mov ecx, r11d
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0x68]
mov ecx, dword [rbp - 0x68]
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x1400596d1
lea r8, [rsp + 0x70]
mov edx, r11d
mov ecx, r11d
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0x68]
mov ecx, dword [rbp - 0x68]
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x1400596d1
lea r8, [rsp + 0x70]
mov edx, r11d
mov ecx, r11d
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x70]
lea r8, [rbp - 0x68]
mov ecx, dword [rbp - 0x68]
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x1400596d1
mov r9d, dword [rbp - 0x68]
jmp 0x1400596df
test r15d, r15d
js 0x14005c687
mov r9d, dword [rsp + 0x50]
mov dword [rsp + 0x78], r9d
mov r10d, r14d
mov qword [rsp + 0x58], r14
mov dword [rbp + 8], r14d
mov qword [rbp + 0x170], r14
mov qword [rsp + 0x48], r14
mov dword [rsp + 0x40], r14d
mov qword [rsp + 0x68], r14
mov dword [rbp - 0x68], r14d
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x18], r14
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp - 0x38], rax
mov dword [rbp + 0x48], 8
mov edx, dword [rbp - 0xc]
lea r8, [rbp + 0x48]
mov ecx, 8
call fcn.140049218
mov r15d, eax
test eax, eax
js 0x140059896
mov ecx, dword [rbp + 0x48]
add rcx, 7
and ecx, 0xfffffff8
cmp ecx, dword [rbp + 0x48]
jae 0x14005975c
mov r15d, 0xd0000095
jmp 0x14005a5a5
mov dword [rbp + 0x48], ecx
mov qword [rbp + 0x168], rsi
mov esi, ecx
mov dword [rbp - 0x58], r9d
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 qword [rbp - 0x28], rax
mov r9, rax
test rax, rax
jne 0x1400597a6
mov r15d, 0xd0000017
jmp 0x14005a5a5
mov eax, dword [rbp - 0x10]
lea r8, [rbp - 0x80]
mov edx, 4
mov dword [r9], eax
mov rcx, r9
mov qword [rbp - 0x80], r9
call fcn.140049238
mov r10, qword [rbp + 0x168]
mov r15d, eax
mov eax, dword [rbp - 0x58]
mov r11, r12
mov qword [rbp + 0x178], r9
mov rsi, r10
mov dword [rsp + 0x78], eax
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], r10
test r15d, r15d
js 0x14005986f
mov rcx, qword [rbp - 0x80]
lea r8, [rbp - 0x80]
mov eax, dword [rbp - 0xc]
mov edx, 4
mov dword [rcx], eax
call fcn.140049238
mov r15d, eax
mov qword [rbp + 0x178], r9
mov eax, dword [rbp - 0x58]
mov dword [rsp + 0x78], eax
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], r10
test r15d, r15d
js 0x14005986f
mov eax, dword [rbp + 0x48]
mov rcx, qword [rbp - 0x38]
mov qword [rax + r9 - 8], rcx
mov r8d, dword [rbp - 0xc]
mov rdx, qword [rbp - 8]
mov rcx, qword [rbp - 0x80]
call sub.msvcrt.dll_memcpy
mov r8, qword [rbp - 0x28]
mov r10d, dword [rbp + 0x48]
mov eax, dword [rbp - 0x58]
mov qword [rsp + 0x58], r8
mov dword [rbp + 8], r10d
mov dword [rsp + 0x78], eax
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
jmp 0x140059896
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x178]
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 r10d, r14d
or r15d, 0x10000000
mov dword [rsp + 0x30], r15d
jl 0x14005a338
mov r15, qword [rsp + 0x58]
mov qword [rsp + 0x38], r14
test r15, r15
jne 0x1400598c2
mov r15d, 0xd000000d
jmp 0x14005a5a5
mov eax, r10d
test r10d, r10d
je 0x14005c258
add rax, 8
mov rcx, rax
mov qword [rbp - 0x80], rax
call fcn.1400491b4
mov qword [rbp - 0x50], rax
mov r8, rax
test rax, rax
je 0x14005c258
mov r9d, dword [rbp + 8]
mov al, r14b
mov byte [rbp - 0x60], al
mov rcx, r14
mov edx, r9d
test r9d, r9d
je 0x140059912
xor al, byte [rcx + r15]
inc rcx
cmp rcx, rdx
jb 0x140059903
mov byte [rbp - 0x60], al
mov qword [rbp + 0x168], r8
or r11d, 0xffffffff
mov r8, rdx
mov qword [rbp + 0x178], rbx
mov dword [rbp - 0x58], r14d
mov r9, r15
mov dword [rsp + 0x30], r14d
mov r10d, r14d
and r8d, 7
je 0x140059a58
mov r11d, r14d
test r8d, r8d
je 0x140059a38
mov edx, dword [rsp + 0x78]
mov ebx, 0x38
movzx ecx, byte [r9]
inc r9
mov dword [rbp - 0x58], ecx
cmp r14d, 4
jae 0x140059971
lea ecx, [rbx - 0x20]
shl dword [rbp - 0x58], cl
or r10d, dword [rbp - 0x58]
jmp 0x14005997a
mov ecx, ebx
shl dword [rbp - 0x58], cl
or r11d, dword [rbp - 0x58]
inc r14d
mov dword [rbp - 0x58], r11d
sub ebx, 8
mov dword [rsp + 0x30], r10d
cmp r14d, r8d
jl 0x140059955
xor r10d, 0xb17a307a
mov dword [rsp + 0x78], edx
mov rdx, qword [rbp + 0x168]
xor r11d, 0x42f6b18d
xor r14d, r14d
mov qword [rsp + 0x58], r15
mov r15d, r14d
mov qword [rsp + 0x60], r13
mov ecx, r10d
mov qword [rbp - 0x70], r12
mov edi, r11d
mov qword [rbp - 0x78], rsi
movabs rbx, 0xc81ecb17b1b54a58
lea r14, [rdx + 1]
mov qword [rbp - 0x38], r14
cmp r15d, 4
jge 0x1400599e5
rol ecx, 8
mov r14d, ecx
jmp 0x1400599eb
rol edi, 8
mov r14d, edi
mov byte [rdx], r14b
inc r15d
mov r14, qword [rbp - 0x38]
mov rdx, r14
cmp r15d, r8d
jl 0x1400599cf
mov r15, qword [rsp + 0x58]
movabs rdi, 0x7f1137fab69605e
mov qword [rbp + 0x168], r14
mov r14d, 0
cmp r8d, 4
jbe 0x140059a31
lea ecx, [r14 + 8]
sub ecx, r8d
shl ecx, 3
shr r11d, cl
shl r11d, cl
jmp 0x140059a58
mov r11d, r14d
jae 0x140059a58
jmp 0x140059a47
mov r10d, 0xb17a307a
mov dword [rsp + 0x30], r14d
mov dword [rbp - 0x58], r14d
mov ecx, 4
sub ecx, r8d
shl ecx, 3
shr r10d, cl
shl r10d, cl
mov ecx, dword [rbp + 8]
shr rcx, 3
mov qword [rbp - 0x38], rcx
test rcx, rcx
je 0x140059dc3
movzx eax, word [rbp + 0x17a]
lea r12, [r9 + 2]
mov r13, qword [rbp + 0x168]
mov rdi, qword [rbp - 0x38]
add r13, 7
mov r15d, dword [rbp - 0x58]
mov r14d, dword [rsp + 0x30]
movzx esi, word [rbp + 0x17c]
mov dword [rsp + 0x70], eax
movzx eax, word [rbp + 0x17e]
movzx ecx, bx
mov dword [rsp + 0x50], eax
mov eax, ecx
movzx ecx, byte [r12 - 1]
movzx r9d, byte [r12 - 2]
movzx r8d, byte [r12 + 2]
shl r9d, 8
or r9d, ecx
shl r8d, 8
movzx ecx, byte [r12]
lea r12, [r12 + 8]
shl r9d, 8
or r9d, ecx
movzx ecx, byte [r12 - 7]
shl r9d, 8
or r9d, ecx
movzx ecx, byte [r12 - 5]
or r8d, ecx
movzx ecx, byte [r12 - 4]
shl r8d, 8
or r8d, ecx
movzx ecx, byte [r12 - 3]
shl r8d, 8
or r8d, ecx
movzx ecx, word [rbp + 0x17a]
xor r11d, r8d
mov edx, r11d
sub edx, eax
xor edx, r9d
xor edx, r10d
mov r10d, edx
ror edx, 0xf
imul edx, ecx
xor r10d, dword [rbp + 0x17c]
mov ecx, r10d
ror ecx, 7
add edx, ecx
xor r11d, edx
mov ecx, r11d
ror ecx, 0xa
lea edx, [r11 + rbx]
ror edx, 9
imul edx, esi
sub edx, ecx
movzx ecx, word [rbp + 0x17e]
xor r10d, edx
mov edx, r10d
xor edx, esi
rol edx, 4
imul edx, ecx
mov ecx, r10d
rol ecx, 5
add edx, ecx
mov ecx, dword [rbp + 0x17c]
xor r11d, edx
mov edx, r11d
xor edx, ebx
sub ecx, edx
xor r10d, ecx
movzx ecx, word [rbp + 0x17a]
mov edx, r10d
sub edx, eax
imul edx, ecx
mov ecx, r10d
shr ecx, 6
sub edx, ecx
xor r11d, edx
movzx edx, word [rbp + 0x17e]
mov ecx, r11d
ror ecx, 0xf
xor ecx, esi
imul ecx, eax
xor r10d, ecx
mov ecx, r10d
not ecx
ror ecx, 3
add ecx, edx
imul ecx, esi
xor r11d, ecx
mov ecx, r11d
sub ecx, eax
sub ecx, dword [rbp + 0x17c]
xor r10d, ecx
mov edx, r10d
ror edx, 0xa
mov ecx, r10d
xor ecx, dword [rsp + 0x50]
imul ecx, dword [rsp + 0x70]
xor edx, ecx
xor r11d, edx
mov edx, eax
xor edx, r11d
mov ecx, r11d
rol edx, 6
imul edx, esi
ror ecx, 3
xor edx, ecx
xor r10d, edx
movzx edx, word [rbp + 0x17e]
mov ecx, r10d
ror ecx, 0xf
sub ecx, edx
imul ecx, eax
xor r11d, ecx
movzx ecx, word [rbp + 0x17e]
mov edx, r11d
xor edx, ecx
mov ecx, r11d
imul edx, eax
shr ecx, 1
xor edx, ecx
mov ecx, r11d
xor r10d, edx
shr ecx, 0xf
mov edx, r11d
sub edx, esi
rol edx, 3
imul edx, eax
xor edx, ecx
movzx ecx, word [rbp + 0x17a]
xor r10d, edx
mov edx, r10d
sub edx, esi
imul edx, ecx
mov ecx, r10d
shr ecx, 0xd
sub edx, ecx
xor r11d, edx
mov edx, ebx
sub edx, r11d
mov ecx, r11d
ror edx, 9
ror ecx, 0xb
imul edx, esi
xor edx, ecx
xor r10d, edx
movzx edx, word [rbp + 0x17e]
mov ecx, r10d
sub ecx, edx
sub ecx, ebx
xor r11d, ecx
mov ecx, r11d
mov edx, r11d
xor ecx, dword [rsp + 0x70]
ror edx, 7
imul ecx, eax
sub ecx, edx
xor r10d, ecx
movzx ecx, word [rbp + 0x17e]
mov edx, r10d
xor edx, ecx
movzx ecx, word [rbp + 0x17a]
rol edx, 4
imul edx, ecx
mov ecx, r10d
ror ecx, 0x10
sub edx, ecx
xor r11d, edx
mov edx, ebx
sub edx, r11d
mov ecx, r11d
ror edx, 0xa
imul edx, esi
ror ecx, 4
add edx, ecx
movzx ecx, word [rbp + 0x17e]
xor r10d, edx
mov edx, r10d
sub edx, ebx
ror edx, 4
imul edx, ecx
mov ecx, r10d
ror ecx, 9
xor edx, ecx
xor r11d, edx
mov edx, dword [rbp + 0x17c]
xor edx, r11d
mov ecx, r11d
rol edx, 8
imul edx, eax
rol ecx, 2
sub edx, ecx
movzx ecx, word [rbp + 0x17a]
xor r10d, edx
mov edx, dword [rbp + 0x17c]
sub edx, r10d
ror edx, 0xb
imul edx, ecx
mov ecx, r10d
ror ecx, 0xc
sub edx, ecx
movzx ecx, word [rbp + 0x17a]
xor r11d, edx
mov edx, r11d
xor edx, ecx
mov ecx, r11d
imul edx, esi
shr ecx, 8
xor edx, ecx
xor r10d, edx
xor r11d, r10d
xor r10d, r14d
xor r11d, dword [rbp + 0x17c]
mov r14d, r9d
mov byte [r13 - 4], r10b
xor r11d, ebx
xor r11d, r15d
ror r10d, 8
mov byte [r13], r11b
mov r15d, r8d
mov byte [r13 - 5], r10b
lea r13, [r13 + 8]
ror r11d, 8
mov byte [r13 - 9], r11b
ror r10d, 8
mov byte [r13 - 0xe], r10b
ror r11d, 8
mov byte [r13 - 0xa], r11b
ror r10d, 8
ror r11d, 8
mov byte [r13 - 0xf], r10b
mov byte [r13 - 0xb], r11b
ror r11d, 8
ror r10d, 8
sub rdi, 1
jne 0x140059aaa
mov al, byte [rbp - 0x60]
movabs rdi, 0x7f1137fab69605e
mov r12, qword [rbp - 0x70]
xor r14d, r14d
mov r13, qword [rsp + 0x60]
mov rsi, qword [rbp - 0x78]
mov r15, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x78]
mov r9d, dword [rbp + 8]
mov rdx, qword [rbp - 0x50]
mov dword [rsp + 0x70], ecx
movzx ecx, al
mov qword [rbp - 0x38], r15
mov qword [rdx + r9], rcx
mov qword [rbp + 0x130], 8
mov qword [rbp + 0x150], 0xa0
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 qword [rbp + 0x168], rax
test rax, rax
jne 0x140059e2f
mov r15d, 0xc0000017
jmp 0x14005a0e9
mov ecx, dword [rsp + 0x70]
mov dword [rsp + 0x78], ecx
mov rcx, qword [rbp - 0x80]
mov ecx, ecx
mov dword [rax], ecx
mov qword [rsp + 0x58], r15
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x80]
mov edx, 8
mov r8d, r8d
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rdx, rax
test rax, rax
jne 0x140059e84
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x78], eax
mov rax, qword [rbp - 0x38]
jmp 0x140059fce
mov rax, qword [rbp + 0x168]
mov qword [rax + 8], rdx
mov r8, qword [rbp - 0x80]
mov rdx, qword [rbp - 0x50]
mov rcx, qword [rax + 8]
mov r8d, r8d
mov qword [rbp + 0x168], rax
call sub.msvcrt.dll_memcpy
mov eax, dword [rsp + 0x78]
mov qword [rsp + 0x60], r15
mov r15, qword [rbp + 0x168]
mov qword [rbp + 0x178], rsi
mov dword [rsp + 0x70], eax
mov dword [r15 + 0x10], 0xa0
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]
test rax, rax
je 0x140059fd3
mov qword [r15 + 0x18], rax
mov rcx, qword [r15 + 0x18]
mov edx, 0x80
mov eax, dword [rsp + 0x70]
mov r8, qword [rsp + 0x60]
mov dword [rsp + 0x78], eax
lea rax, [0x140000000]
lea rax, [rax + 0xc7830]
mov qword [rsp + 0x58], r8
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx + rdx - 0x10], xmm1
movups xmm0, xmmword [rax + rdx]
movups xmmword [rcx + rdx], xmm0
movups xmm1, xmmword [rax + rdx + 0x10]
movups xmmword [rcx + rdx + 0x10], xmm1
mov dword [r15 + 0x20], 8
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]
test rax, rax
jne 0x14005a0be
mov eax, dword [rsp + 0x70]
mov rsi, r15
mov rsi, qword [rbp + 0x178]
mov dword [rsp + 0x78], eax
mov rax, qword [rsp + 0x60]
mov qword [rbp + 0x168], r15
mov qword [rsp + 0x58], rax
mov r15d, 0xc0000017
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x38], r14
mov rcx, qword [rax + 8]
mov qword [rbp - 0x38], rcx
test rcx, rcx
je 0x14005a01e
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x38]
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 rax, qword [rbp + 0x168]
mov qword [rax + 8], r14
mov rcx, qword [rax + 0x18]
mov qword [rbp - 0x38], rcx
test rcx, rcx
je 0x14005a057
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x38]
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 rax, qword [rbp + 0x168]
mov qword [rax + 0x18], r14
mov rax, qword [rax + 0x28]
mov qword [rbp - 0x38], rax
test rax, rax
je 0x14005a090
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x38]
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 rax, qword [rbp + 0x168]
mov qword [rax + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x168]
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 0x14005a0e9
mov rax, r14
jmp 0x14005a0dd
mov qword [r15 + 0x28], rax
mov rdx, qword [rbp + 0x168]
mov r15d, r14d
mov rax, qword [0x1400c78d0]
mov rcx, qword [rdx + 0x28]
mov qword [rcx], rax
mov rax, rdx
mov qword [rbp + 0x170], rax
mov qword [rsp + 0x38], r14
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [rbp + 0x170]
mov qword [rbp + 0x170], rax
mov qword [rbp - 0x78], rsi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x50]
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 rax, qword [rsp + 0x38]
test rax, rax
je 0x14005a221
mov rcx, qword [rax + 8]
mov qword [rbp - 0x38], rcx
test rcx, rcx
je 0x14005a16b
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x38]
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 rax, qword [rsp + 0x38]
mov qword [rax + 8], r14
mov rcx, qword [rax + 0x18]
mov qword [rbp - 0x38], rcx
test rcx, rcx
je 0x14005a1a2
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x38]
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 rax, qword [rsp + 0x38]
mov qword [rax + 0x18], r14
mov rax, qword [rax + 0x28]
mov qword [rbp - 0x38], rax
test rax, rax
je 0x14005a1d9
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x38]
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 rax, qword [rsp + 0x38]
mov qword [rax + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rsp + 0x38]
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 r10, qword [rbp + 0x170]
mov r9, qword [rsp + 0x58]
mov eax, dword [rsp + 0x78]
mov qword [rbp + 0x170], r10
mov qword [rsp + 0x58], r9
mov dword [rsp + 0x78], eax
mov qword [rbp - 0x78], rsi
jmp 0x14005a231
mov r9, qword [rsp + 0x58]
mov r10, qword [rbp + 0x170]
mov eax, dword [rsp + 0x78]
or r15d, 0x10000000
mov qword [rbp - 0x48], r9
mov dword [rsp + 0x30], r15d
mov qword [rbp - 0x70], rsi
mov dword [rbp - 0x58], eax
mov qword [rsp + 0x38], r10
jl 0x14005a33d
mov edx, dword [r10]
lea r8, [rsp + 0x30]
mov r11d, 4
mov qword [rbp - 0x80], r10
mov ecx, r11d
mov dword [rsp + 0x30], r11d
call fcn.140049218
mov r15d, eax
test eax, eax
js 0x14005a2e1
mov ecx, dword [rsp + 0x30]
lea r8, [rsp + 0x30]
mov edx, r11d
call fcn.140049218
mov r15d, eax
test eax, eax
js 0x14005a2e1
mov edx, dword [r10 + 0x10]
lea r8, [rsp + 0x30]
mov ecx, dword [rsp + 0x30]
call fcn.140049218
mov r15d, eax
test eax, eax
js 0x14005a2e1
mov ecx, dword [rsp + 0x30]
lea r8, [rsp + 0x30]
mov edx, r11d
call fcn.140049218
mov r15d, eax
test eax, eax
js 0x14005a2e1
mov edx, dword [r10 + 0x20]
lea r8, [rsp + 0x30]
mov ecx, dword [rsp + 0x30]
call fcn.140049218
mov r15d, eax
test eax, eax
js 0x14005a2e1
mov eax, dword [rsp + 0x30]
jmp 0x14005a2f0
test r15d, r15d
js 0x14005a806
mov eax, dword [rbp + 0xdc]
mov dword [rsp + 0x70], 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 qword [rbp - 0x50], rax
mov rcx, rax
test rax, rax
jne 0x14005a5af
mov rsi, qword [rbp - 0x78]
mov r15d, 0xd0000017
mov dword [rsp + 0x30], r15d
mov r9, qword [rsp + 0x58]
test r9, r9
je 0x14005a364
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rsp + 0x58]
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 rax, qword [rbp + 0x170]
test rax, rax
je 0x14005a443
mov rcx, qword [rax + 8]
mov qword [rbp - 0x38], rcx
test rcx, rcx
je 0x14005a3ad
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x38]
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 rax, qword [rbp + 0x170]
mov qword [rax + 8], r14
mov rcx, qword [rax + 0x18]
mov qword [rbp - 0x38], rcx
test rcx, rcx
je 0x14005a3e6
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x38]
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 rax, qword [rbp + 0x170]
mov qword [rax + 0x18], r14
mov rax, qword [rax + 0x28]
mov qword [rbp - 0x38], rax
test rax, rax
je 0x14005a41f
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x38]
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 rax, qword [rbp + 0x170]
mov qword [rax + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x170]
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
cmp qword [rsp + 0x48], r14
je 0x14005a46c
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rsp + 0x48]
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
cmp qword [rsp + 0x68], r14
je 0x14005a495
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rsp + 0x68]
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 rax, qword [rbp - 0x40]
test rax, rax
je 0x14005a565
mov rcx, qword [rax + 8]
mov qword [rbp - 0x38], rcx
test rcx, rcx
je 0x14005a4d8
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x38]
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 rax, qword [rbp - 0x40]
mov qword [rax + 8], r14
mov rcx, qword [rax + 0x18]
mov qword [rbp - 0x38], rcx
test rcx, rcx
je 0x14005a50e
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x38]
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 rax, qword [rbp - 0x40]
mov qword [rax + 0x18], r14
mov rax, qword [rax + 0x28]
mov qword [rbp - 0x38], rax
test rax, rax
je 0x14005a544
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x38]
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 rax, qword [rbp - 0x40]
mov qword [rax + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x40]
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
cmp qword [rbp - 0x18], r14
je 0x14005a58c
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x18]
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 0x14005c687
cmp dword [rbp + 0x58], 1
jae 0x14005c268
mov r15d, 0xc004d501
mov dword [rsp + 0x30], r15d
jmp 0x14005c687
mov r9, qword [rbp - 0x80]
lea r8, [rbp + 0x168]
mov edx, 4
mov qword [rbp + 0x168], rcx
mov eax, dword [r9]
mov dword [rcx], eax
call fcn.140049238
mov rsi, qword [rbp - 0x70]
mov r15d, eax
mov rax, qword [rbp - 0x48]
mov qword [rsp + 0x50], rcx
mov ecx, dword [rbp - 0x58]
mov qword [rsp + 0x58], rax
mov qword [rbp + 0x170], r9
mov dword [rsp + 0x78], ecx
mov qword [rbp - 0x78], rsi
test r15d, r15d
js 0x14005a7d8
mov r8d, dword [r9]
mov rdx, qword [r9 + 8]
mov rcx, qword [rbp + 0x168]
call sub.msvcrt.dll_memcpy
mov r9, qword [rbp - 0x80]
lea r8, [rbp + 0x168]
mov rcx, qword [rbp + 0x168]
mov edx, dword [r9]
call fcn.140049238
mov r10, qword [rbp - 0x50]
mov r15d, eax
mov r11, qword [rbp - 0x48]
mov eax, dword [rbp - 0x58]
mov qword [rsp + 0x50], r10
mov qword [rbp + 0x170], r9
mov dword [rsp + 0x78], eax
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x58], r11
test r15d, r15d
js 0x14005a7d8
mov rcx, qword [rbp + 0x168]
lea r8, [rbp + 0x168]
mov eax, dword [r9 + 0x10]
mov edx, 4
mov dword [rcx], eax
call fcn.140049238
mov r15d, eax
mov qword [rsp + 0x50], r10
mov eax, dword [rbp - 0x58]
mov qword [rbp + 0x170], r9
mov dword [rsp + 0x78], eax
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x58], r11
test r15d, r15d
js 0x14005a7d8
mov r8d, dword [r9 + 0x10]
mov rdx, qword [r9 + 0x18]
mov rcx, qword [rbp + 0x168]
call sub.msvcrt.dll_memcpy
mov r9, qword [rbp - 0x80]
lea r8, [rbp + 0x168]
mov rcx, qword [rbp + 0x168]
mov edx, dword [r9 + 0x10]
call fcn.140049238
mov r10, qword [rbp - 0x50]
mov r15d, eax
mov r11, qword [rbp - 0x48]
mov eax, dword [rbp - 0x58]
mov qword [rsp + 0x50], r10
mov qword [rbp + 0x170], r9
mov dword [rsp + 0x78], eax
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x58], r11
test r15d, r15d
js 0x14005a7d8
mov rcx, qword [rbp + 0x168]
lea r8, [rbp + 0x168]
mov eax, dword [r9 + 0x20]
mov edx, 4
mov dword [rcx], eax
call fcn.140049238
mov r15d, eax
mov qword [rsp + 0x50], r10
mov eax, dword [rbp - 0x58]
mov qword [rbp + 0x170], r9
mov dword [rsp + 0x78], eax
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x58], r11
test r15d, r15d
js 0x14005a7d8
mov r8d, dword [r9 + 0x20]
mov rdx, qword [r9 + 0x28]
mov rcx, qword [rbp + 0x168]
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp - 0x80]
lea r8, [rbp + 0x168]
mov rcx, qword [rbp + 0x168]
mov edx, dword [rax + 0x20]
call fcn.140049238
mov ecx, dword [rbp - 0x58]
mov r15d, eax
mov rax, qword [rbp - 0x50]
mov r9, r13
mov r10, qword [rsp + 0x38]
mov r8, r12
mov dword [rsp + 0x78], ecx
mov rdx, rsi
mov rcx, qword [rbp - 0x48]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rcx
mov qword [rbp + 0x170], r10
mov qword [rbp - 0x78], rsi
test r15d, r15d
js 0x14005a7d8
mov r11, rax
mov qword [rsp + 0x48], rax
mov eax, dword [rsp + 0x70]
mov r9, rcx
mov dword [rsp + 0x40], eax
mov eax, dword [rbp - 0x58]
mov qword [rbp + 0x170], r10
mov qword [rbp - 0x78], rdx
mov qword [rsp + 0x58], rcx
jmp 0x14005a80d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rsp + 0x50]
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 + 0x58]
mov r10, qword [rbp + 0x170]
mov eax, dword [rsp + 0x78]
mov r11, r14
or r15d, 0x10000000
mov dword [rsp + 0x30], r15d
jl 0x14005a33d
mov dword [rbp + 0x68], 8
lea r8, [rbp + 0x68]
mov edx, eax
mov ecx, 8
call fcn.140049218
mov r15d, eax
or r15d, 0x10000000
mov dword [rsp + 0x30], r15d
jl 0x14005aacf
mov eax, dword [rbp + 0x68]
add rax, 7
and eax, 0xfffffff8
cmp eax, dword [rbp + 0x68]
jae 0x14005a865
mov r15d, 0xc0000095
jmp 0x14005b6be
mov dword [rbp + 0x80], eax
mov edx, ecx
mov qword [rsp + 0x48], r11
mov ecx, eax
mov qword [rsp + 0x58], r9
lea r8, [rbp + 0x80]
mov qword [rbp + 0x170], r10
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005a33d
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x40], eax
mov qword [rbp + 0x170], r10
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x48], r11
cmp qword [rbp - 8], r14
je 0x14005a8d1
cmp dword [rbp - 0x10], 1
mov qword [rbp + 0x170], r10
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x48], r11
ja 0x14005a8dc
mov r15d, 0xc000000d
jmp 0x14005b6be
mov rcx, qword [rbp - 8]
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x70], r14d
mov qword [rbp - 0x78], rsi
mov eax, dword [rcx]
lea r8, [rsp + 0x38]
mov edx, 4
mov dword [rsp + 0x50], eax
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005a33d
mov edx, dword [rsp + 0x50]
lea r8, [rsp + 0x38]
mov rcx, qword [rsp + 0x38]
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005a33d
mov eax, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x38]
inc eax
mov dword [rsp + 0x70], eax
cmp eax, 1
jb 0x14005a8ee
mov eax, dword [rcx]
lea r8, [rsp + 0x38]
mov edx, 4
mov dword [rbp - 0x48], eax
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005a33d
cmp qword [rbp - 8], r14
je 0x14005a8d1
cmp dword [rbp - 0x10], 2
jbe 0x14005a8d1
mov rcx, qword [rbp - 8]
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x70], r14d
mov eax, dword [rcx]
lea r8, [rsp + 0x38]
mov edx, 4
mov dword [rsp + 0x50], eax
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005a33d
mov edx, dword [rsp + 0x50]
lea r8, [rsp + 0x38]
mov rcx, qword [rsp + 0x38]
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005a33d
mov eax, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x38]
inc eax
mov dword [rsp + 0x70], eax
cmp eax, 2
jb 0x14005a98d
mov eax, dword [rcx]
lea r8, [rsp + 0x38]
mov edx, 4
mov dword [rsp + 0x50], eax
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005a33d
mov edx, dword [rbp + 0x80]
lea r8, [rsp + 0x78]
mov ecx, 4
mov dword [rsp + 0x78], 4
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005aaab
mov edx, ecx
lea r8, [rsp + 0x78]
mov ecx, dword [rsp + 0x78]
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005aaab
mov edx, dword [rbp - 0x48]
lea r8, [rsp + 0x78]
mov ecx, dword [rsp + 0x78]
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005aaab
mov ecx, dword [rsp + 0x78]
lea r8, [rsp + 0x78]
mov edx, 4
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005aaab
mov edx, dword [rsp + 0x50]
lea r8, [rsp + 0x78]
mov ecx, dword [rsp + 0x78]
call fcn.140049218
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005aaab
mov eax, dword [rsp + 0x78]
jmp 0x14005aaba
test r15d, r15d
js 0x14005a33d
mov eax, dword [rbp + 0xb0]
mov dword [rbp - 0x68], eax
cmp eax, 0x400000
jbe 0x14005aadb
mov r15d, 0x8000ffff
jmp 0x14005b6be
test r15d, r15d
js 0x14005a33d
mov eax, dword [rbp - 0x68]
mov qword [rsp + 0x70], rsi
mov r15, r11
mov esi, eax
mov qword [rsp + 0x38], r11
mov qword [rbp + 0x168], r9
mov qword [rbp + 0x178], r12
mov qword [rbp - 0x48], r13
mov qword [rsp + 0x50], r10
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 qword [rbp - 0x80], rax
mov rsi, rax
test rax, rax
je 0x14005a329
test r15, r15
jne 0x14005ab49
mov r15d, 0x80070057
mov qword [rsp + 0x68], rax
jmp 0x14005abe8
mov eax, dword [rsp + 0x40]
lea r8, [rbp + 0xb8]
mov r12d, dword [rbp - 0x68]
lea rdx, [0x1400aa3d8]
mov ecx, 1
mov dword [rbp + 0x118], eax
mov dword [rbp + 0x11c], r12d
mov qword [rbp + 0x108], r15
mov qword [rbp + 0x110], rsi
mov dword [rbp + 0x120], r14d
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
jne 0x14005ac1c
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov r15d, eax
test eax, eax
jle 0x14005abb8
movzx r15d, ax
or r15d, 0x80070000
test r15d, r15d
mov eax, 0x80004005
cmovns r15d, eax
mov dword [rsp + 0x30], r15d
mov qword [rsp + 0x68], rsi
cmp r15d, 0xd0000023
jne 0x14005acd7
mov r12, qword [rbp + 0x178]
mov r15d, 0x8007007a
mov r9, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x70]
mov qword [rbp + 0x170], r9
mov rax, qword [rbp + 0x168]
mov r9, rax
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x30], r15d
jmp 0x14005a33d
mov rcx, qword [rbp + 0xb8]
lea rdx, [0x1400aa660]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
jne 0x14005ac73
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov r15d, eax
test eax, eax
jle 0x14005ac59
movzx r15d, ax
or r15d, 0x80070000
test r15d, r15d
mov dword [rbp - 0x68], r12d
mov eax, 0x80004005
cmovns r15d, eax
mov dword [rsp + 0x30], r15d
jmp 0x14005abc9
movabs r10, 0x86712ea7345e2b70
xor r9d, r9d
lea rdx, [rbp + 0x108]
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call qword [0x1400a83f0]
mov r15d, eax
mov dword [rbp - 0x68], r12d
or r15d, 0x10000000
mov dword [rsp + 0x30], r15d
jl 0x14005abc9
mov eax, dword [rbp + 0x11c]
mov r10, rsi
mov r11, qword [rsp + 0x38]
mov r8, r13
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rbp + 0x178]
mov dword [rbp - 0x68], eax
mov rax, qword [rbp + 0x168]
jmp 0x14005ad1d
mov rax, qword [rsp + 0x50]
mov r10, rsi
mov rdx, qword [rbp + 0x178]
mov r8, r13
mov rcx, qword [rsp + 0x70]
mov r12, rdx
mov r11, qword [rsp + 0x38]
mov rsi, rcx
mov qword [rbp + 0x170], rax
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x58], rax
mov r9, rax
mov qword [rsp + 0x48], r11
test r15d, r15d
js 0x14005a33d
cmp dword [rbp - 0x68], 4
mov qword [rbp - 0x38], r14
mov dword [rsp + 0x78], r14d
mov qword [rsp + 0x30], r10
jae 0x14005ad68
mov r9, qword [rsp + 0x50]
mov r13, r8
mov qword [rbp + 0x170], r9
mov r12, rdx
mov r9, rax
mov qword [rsp + 0x58], rax
mov rsi, rcx
mov r15d, 0xd000003e
mov qword [rsp + 0x68], r10
mov dword [rsp + 0x30], r15d
mov qword [rsp + 0x48], r11
jmp 0x14005a33d
mov eax, dword [r10]
lea r8, [rsp + 0x30]
mov edx, 4
mov dword [rsp + 0x40], eax
mov rcx, r10
call fcn.140049238
mov r13, qword [rbp - 0x48]
mov r15d, eax
mov rax, qword [rsp + 0x50]
mov r12, qword [rbp + 0x178]
mov rsi, qword [rsp + 0x70]
mov qword [rbp + 0x170], rax
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x58], rax
mov r9, rax
mov qword [rsp + 0x68], r10
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x48], r11
test r15d, r15d
js 0x14005b69e
lea r8, [rsp + 0x78]
mov edx, 4
xor ecx, ecx
call fcn.140049218
mov r15d, eax
mov qword [rsp + 0x68], r10
mov rax, qword [rsp + 0x50]
mov rdx, rsi
mov qword [rbp + 0x170], rax
mov rcx, r9
mov qword [rsp + 0x60], r13
mov r8, r12
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rdx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x48], r11
test r15d, r15d
js 0x14005b69e
mov eax, dword [rbp - 0x68]
sub eax, dword [rsp + 0x78]
mov r9d, dword [rsp + 0x40]
cmp eax, r9d
jae 0x14005ae47
mov r9, rcx
mov rax, qword [rsp + 0x50]
mov qword [rbp + 0x170], rax
mov qword [rsp + 0x58], rcx
jmp 0x14005ad4e
mov rax, qword [rsp + 0x30]
lea r8, [rsp + 0x30]
mov rcx, rax
mov qword [rbp + 0x40], rax
mov rdx, r9
mov qword [rbp - 0x50], r9
call fcn.140049238
mov r15d, eax
mov qword [rsp + 0x68], r10
mov rax, qword [rsp + 0x50]
mov qword [rbp + 0x170], rax
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x58], rax
mov r9, rax
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x48], r11
test r15d, r15d
js 0x14005b69e
mov edx, dword [rsp + 0x40]
lea r8, [rsp + 0x78]
mov ecx, dword [rsp + 0x78]
call fcn.140049218
mov r15d, eax
mov qword [rsp + 0x68], r10
mov rax, qword [rsp + 0x50]
mov rdx, rsi
mov qword [rbp + 0x170], rax
mov rcx, r9
mov qword [rsp + 0x60], r13
mov r8, r12
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rdx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x48], r11
test r15d, r15d
js 0x14005b69e
mov eax, dword [rbp - 0x68]
sub eax, dword [rsp + 0x78]
cmp eax, 4
jb 0x14005ae31
mov rcx, qword [rsp + 0x30]
lea r8, [rsp + 0x30]
mov edx, 4
mov eax, dword [rcx]
mov dword [rbp + 8], eax
call fcn.140049238
mov r15d, eax
mov qword [rsp + 0x68], r10
mov rax, qword [rsp + 0x50]
mov qword [rbp + 0x170], rax
mov rax, r9
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x48], r11
test r15d, r15d
js 0x14005b69e
mov ecx, dword [rsp + 0x78]
lea r8, [rsp + 0x78]
mov edx, 4
call fcn.140049218
mov r15d, eax
mov qword [rsp + 0x68], r10
mov rax, qword [rsp + 0x50]
mov rdx, rsi
mov qword [rbp + 0x170], rax
mov rcx, r9
mov qword [rsp + 0x60], r13
mov r8, r12
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rdx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x48], r11
test r15d, r15d
js 0x14005b69e
mov eax, dword [rbp - 0x68]
sub eax, dword [rsp + 0x78]
mov r9d, dword [rbp + 8]
cmp eax, r9d
jb 0x14005ae2e
mov rax, qword [rsp + 0x30]
lea r8, [rsp + 0x30]
mov rcx, rax
mov qword [rbp - 0x28], rax
mov edx, r9d
mov qword [rbp + 0x30], r9
call fcn.140049238
mov r15d, eax
mov qword [rsp + 0x68], r10
mov rax, qword [rsp + 0x50]
mov qword [rbp + 0x170], rax
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x58], rax
mov r9, rax
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x48], r11
test r15d, r15d
js 0x14005b69e
mov edx, dword [rbp + 8]
lea r8, [rsp + 0x78]
mov ecx, dword [rsp + 0x78]
call fcn.140049218
mov r15d, eax
mov qword [rsp + 0x68], r10
mov rax, qword [rsp + 0x50]
mov rdx, rsi
mov qword [rbp + 0x170], rax
mov rcx, r9
mov qword [rsp + 0x60], r13
mov r8, r12
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rdx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x48], r11
test r15d, r15d
js 0x14005b69e
mov eax, dword [rbp - 0x68]
sub eax, dword [rsp + 0x78]
cmp eax, 4
jb 0x14005ae31
mov rcx, qword [rsp + 0x30]
lea r8, [rsp + 0x30]
mov edx, 4
mov eax, dword [rcx]
mov dword [rbp - 0x58], eax
call fcn.140049238
mov r15d, eax
mov qword [rsp + 0x68], r10
mov rax, qword [rsp + 0x50]
mov qword [rbp + 0x170], rax
mov rax, r9
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x48], r11
test r15d, r15d
js 0x14005b69e
mov ecx, dword [rsp + 0x78]
lea r8, [rsp + 0x78]
mov edx, 4
call fcn.140049218
mov r15d, eax
mov qword [rsp + 0x68], r10
mov rax, qword [rsp + 0x50]
mov rdx, rsi
mov qword [rbp + 0x170], rax
mov rcx, r9
mov qword [rsp + 0x60], r13
mov r8, r12
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rdx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x48], r11
test r15d, r15d
js 0x14005b69e
mov eax, dword [rbp - 0x68]
sub eax, dword [rsp + 0x78]
mov r9d, dword [rbp - 0x58]
cmp eax, r9d
jb 0x14005ae2e
mov ecx, dword [rsp + 0x78]
lea r8, [rsp + 0x78]
mov edx, r9d
call fcn.140049218
mov rdx, qword [rbp + 0x168]
mov r15d, eax
mov rax, qword [rsp + 0x50]
mov rcx, r12
mov qword [rbp + 0x170], rax
mov r8, rsi
mov qword [rsp + 0x68], r10
mov r9, rdx
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], rcx
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x48], r11
test r15d, r15d
js 0x14005b69e
mov r9d, dword [rbp - 0x68]
cmp r9d, dword [rsp + 0x78]
je 0x14005b196
mov qword [rbp + 0x170], rax
mov r9, rdx
mov qword [rsp + 0x58], rdx
jmp 0x14005ad4e
mov ecx, dword [rbp + 8]
add ecx, dword [rbp - 0x58]
add ecx, dword [rsp + 0x40]
add rcx, 0xc
cmp rcx, r9
jne 0x14005b182
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 qword [rbp - 0x68], rax
mov r8, rax
test rax, rax
jne 0x14005b1f9
mov rax, qword [rbp - 0x80]
mov r15d, 0xd0000017
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x50]
mov qword [rbp + 0x170], rax
jmp 0x14005abf9
mov r15d, r14d
mov rax, qword [rsp + 0x50]
mov r9, rsi
mov rcx, qword [rsp + 0x38]
mov r10, r12
mov rdx, qword [rbp + 0x168]
mov r11, r13
mov qword [rbp + 0x170], rax
mov rax, qword [rbp - 0x80]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x58], rdx
mov qword [rbp - 0x78], rsi
mov qword [rbp - 0x70], r12
mov qword [rsp + 0x60], r13
cmp qword [rbp + 0x40], r14
je 0x14005b2d2
mov eax, dword [rsp + 0x40]
mov dword [r8], eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x50]
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 rcx, rax
test rax, rax
jne 0x14005b2b7
mov rax, qword [rbp - 0x80]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x50]
mov qword [rbp + 0x170], rax
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
jmp 0x14005b3f1
mov rax, qword [rbp - 0x68]
mov qword [rax + 8], rcx
mov r8, qword [rbp - 0x50]
mov rdx, qword [rbp + 0x40]
call sub.msvcrt.dll_memcpy
mov r8, qword [rbp - 0x68]
jmp 0x14005b301
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x50]
mov dword [r8], r14d
mov qword [rbp + 0x170], rax
mov qword [r8 + 8], r14
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x48], rcx
mov qword [rbp - 0x68], r8
cmp qword [rbp - 0x28], r14
je 0x14005b3a1
mov eax, dword [rbp + 8]
mov dword [r8 + 0x10], 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]
mov rcx, rax
test rax, rax
je 0x14005b3f1
mov rax, qword [rbp - 0x68]
mov qword [rax + 0x18], rcx
mov r8, qword [rbp + 0x30]
mov r15d, r14d
mov rdx, qword [rbp - 0x28]
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x58]
mov r8, qword [rbp - 0x68]
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rbp + 0x170]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x48], rax
mov qword [rbp - 0x68], r8
mov qword [rsp + 0x68], rdx
mov qword [rbp + 0x170], rcx
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
jmp 0x14005b3a9
mov dword [r8 + 0x10], r14d
mov qword [r8 + 0x18], r14
cmp qword [rsp + 0x30], r14
je 0x14005b51b
mov eax, dword [rbp - 0x58]
mov dword [r8 + 0x20], eax
mov r15d, eax
mov qword [rbp - 0x28], rax
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]
mov rcx, rax
test rax, rax
jne 0x14005b4c3
mov r15d, 0xc0000017
mov rax, qword [rbp - 0x68]
mov rcx, qword [rax + 8]
mov qword [rbp - 0x28], rcx
test rcx, rcx
je 0x14005b431
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x28]
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 rax, qword [rbp - 0x68]
mov qword [rax + 8], r14
mov rcx, qword [rax + 0x18]
mov qword [rbp - 0x28], rcx
test rcx, rcx
je 0x14005b467
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x28]
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 rax, qword [rbp - 0x68]
mov qword [rax + 0x18], r14
mov rax, qword [rax + 0x28]
mov qword [rbp - 0x28], rax
test rax, rax
je 0x14005b49d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x28]
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 rax, qword [rbp - 0x68]
mov qword [rax + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x68]
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 rax, r14
jmp 0x14005b52a
mov rax, qword [rbp - 0x68]
mov qword [rax + 0x28], rcx
mov r8, qword [rbp - 0x28]
mov r15d, r14d
mov rdx, qword [rsp + 0x30]
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x68]
mov r8, qword [rbp - 0x68]
mov qword [rsp + 0x68], rax
mov rax, qword [rbp + 0x170]
mov qword [rbp + 0x170], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
jmp 0x14005b523
mov dword [r8 + 0x20], r14d
mov qword [r8 + 0x28], r14
mov rax, r8
mov qword [rbp - 0x38], rax
mov r10, qword [rbp + 0x170]
mov r9, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
mov rdx, r9
mov qword [rbp + 0x30], r10
mov r10, qword [rsp + 0x68]
mov qword [rbp - 0x28], r10
mov qword [rbp + 0x168], rcx
mov qword [rsp + 0x38], rdx
mov qword [rbp - 0x80], rsi
mov dword [rsp + 0x70], r15d
test r15d, r15d
js 0x14005b571
mov r10, rax
mov qword [rbp - 0x40], rax
jmp 0x14005b6a1
mov r9, qword [rbp - 0x28]
mov r10, r14
mov qword [rsp + 0x68], r9
mov r9, qword [rbp + 0x30]
mov qword [rbp + 0x170], r9
mov r9, rdx
mov qword [rbp - 0x40], r14
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x48], rcx
test rax, rax
je 0x14005b6a1
mov rsi, qword [rbp - 0x38]
mov r15, qword [rsi + 8]
test r15, r15
je 0x14005b5e0
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rsi + 8], r14
mov r15, qword [rsi + 0x18]
test r15, r15
je 0x14005b60d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rsi + 0x18], r14
mov r15, qword [rsi + 0x28]
test r15, r15
je 0x14005b63a
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [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 rax, qword [rbp - 0x28]
mov rsi, qword [rbp - 0x80]
mov r9, qword [rsp + 0x38]
mov r15d, dword [rsp + 0x70]
mov qword [rsp + 0x68], rax
mov rax, qword [rbp + 0x30]
mov qword [rbp + 0x170], rax
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x48], rax
mov qword [rbp - 0x40], r14
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x58], r9
mov r10, r14
or r15d, 0x10000000
mov dword [rsp + 0x30], r15d
jl 0x14005a33d
test r10, r10
jne 0x14005b6c8
mov r15d, 0xd000000d
mov dword [rsp + 0x30], r15d
jmp 0x14005a33d
mov rax, qword [r10 + 8]
mov qword [rbp + 0x30], rax
test rax, rax
je 0x14005b6b8
cmp dword [r10], r14d
je 0x14005b6b8
mov r15d, dword [r10]
add r15, 0xfffffffffffffff8
mov rcx, r15
mov qword [rsp + 0x30], r15
call fcn.1400491b4
mov qword [rbp - 0x28], rax
test rax, rax
je 0x14005bc3a
mov r8, qword [rbp + 0x30]
mov rcx, rax
mov qword [rsp + 0x38], rax
mov dl, r14b
mov rax, r15
mov byte [rbp - 0x60], dl
and eax, 7
mov qword [rbp + 0x168], rdi
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x80], r8
je 0x14005bc88
mov dword [rsp + 0x78], r14d
test eax, eax
je 0x14005bc5d
mov rax, qword [rsp + 0x58]
mov edx, r14d
mov r8, qword [rbp + 0x170]
mov r9, qword [rsp + 0x48]
mov r10, qword [rsp + 0x68]
mov r11, qword [rbp - 0x40]
mov r15, qword [rbp - 0x38]
mov rdi, qword [rbp - 0x80]
mov dword [rsp + 0x40], 0x38
movzx ecx, byte [rdi]
inc rdi
cmp dword [rsp + 0x78], 4
mov dword [rbp - 0x58], ecx
mov ecx, dword [rsp + 0x40]
jae 0x14005b785
add ecx, 0xffffffe0
shl dword [rbp - 0x58], cl
or edx, dword [rbp - 0x58]
mov ecx, dword [rsp + 0x40]
jmp 0x14005b78c
shl dword [rbp - 0x58], cl
or r14d, dword [rbp - 0x58]
inc dword [rsp + 0x78]
sub ecx, 8
mov dword [rsp + 0x40], ecx
cmp dword [rsp + 0x78], r15d
jl 0x14005b762
mov r15d, edx
mov dword [rbp - 0x68], r14d
mov ecx, r14d
mov dword [rbp + 8], edx
mov dl, byte [rbp - 0x60]
xor r15d, 0x92f65a5
xor ecx, 0x699a899c
mov qword [rbp - 0x80], rdi
xor r14d, r14d
mov qword [rbp + 0x170], r8
mov r8, qword [rsp + 0x38]
mov ebx, r15d
mov qword [rsp + 0x58], rax
movabs rdi, 0x7f1137fab69605e
mov rax, qword [rbp - 0x38]
mov qword [rsp + 0x48], r9
mov r9d, r14d
mov dword [rbp - 0x48], ecx
mov qword [rbp - 0x40], r11
mov qword [rsp + 0x68], r10
mov qword [rsp + 0x60], r13
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x78], rsi
lea r11, [r8 + 1]
cmp r9d, 4
jge 0x14005b817
rol ebx, 8
mov r10d, ebx
jmp 0x14005b81d
rol ecx, 8
mov r10d, ecx
inc r9d
mov byte [r8], r10b
mov r8, r11
cmp r9d, eax
jl 0x14005b805
mov rcx, r11
movabs rbx, 0xc81ecb17b1b54a58
mov qword [rsp + 0x38], rcx
cmp eax, 4
jbe 0x14005bc4e
mov r11d, dword [rbp - 0x48]
mov ecx, 8
sub ecx, eax
shl ecx, 3
shr r11d, cl
shl r11d, cl
mov rcx, r8
mov r8, qword [rbp - 0x80]
mov rax, qword [rsp + 0x30]
shr rax, 3
mov qword [rbp - 0x38], rax
test rax, rax
je 0x14005bbba
mov esi, dword [rbp + 0x16c]
lea r13, [rcx + 7]
mov ebx, dword [rbp + 8]
lea r12, [r8 + 2]
mov edx, dword [rbp - 0x68]
mov r14, qword [rbp - 0x38]
movzx eax, si
mov dword [rsp + 0x40], eax
movzx eax, word [rbp + 0x16a]
mov dword [rsp + 0x50], eax
movzx eax, di
mov dword [rbp - 0x58], eax
movzx eax, byte [r12 - 1]
movzx r10d, byte [r12 - 2]
movzx r9d, byte [r12 + 2]
shl r10d, 8
or r10d, eax
shl r9d, 8
movzx eax, byte [r12]
lea r12, [r12 + 8]
shl r10d, 8
or r10d, eax
movzx eax, byte [r12 - 7]
shl r10d, 8
or r10d, eax
movzx eax, byte [r12 - 5]
or r9d, eax
xor r15d, r10d
movzx eax, byte [r12 - 4]
shl r9d, 8
or r9d, eax
movzx eax, byte [r12 - 3]
shl r9d, 8
or r9d, eax
xor r11d, r9d
xor r11d, r15d
xor r11d, esi
xor r11d, edi
mov eax, r11d
mov r8d, r11d
sub eax, edi
rol r11d, 0xa
rol eax, 5
imul eax, dword [rsp + 0x40]
add eax, r11d
mov r11d, dword [rsp + 0x40]
xor r15d, eax
movzx eax, word [rbp + 0x16a]
lea ecx, [r15 + rsi]
ror ecx, 9
imul ecx, eax
mov eax, r15d
rol eax, 2
sub ecx, eax
xor r8d, ecx
mov ecx, r8d
mov eax, r8d
sub ecx, r11d
shr eax, 0xd
imul ecx, dword [rbp - 0x58]
sub ecx, eax
movzx eax, word [rbp + 0x16a]
xor r15d, ecx
mov ecx, r15d
xor ecx, eax
movzx eax, word [rbp + 0x16e]
rol ecx, 6
imul ecx, eax
mov eax, r15d
rol eax, 2
sub ecx, eax
mov eax, esi
xor r8d, ecx
mov ecx, r8d
xor ecx, edi
sub eax, ecx
xor r15d, eax
mov eax, r15d
mov ecx, r15d
ror ecx, 6
xor eax, r11d
imul eax, dword [rsp + 0x50]
xor ecx, eax
xor r8d, ecx
mov eax, r8d
rol eax, 2
lea ecx, [r8 + rsi]
ror ecx, 0xf
imul ecx, dword [rbp - 0x58]
add ecx, eax
xor r15d, ecx
mov ecx, r15d
sub ecx, edi
movzx eax, word [rbp + 0x16e]
ror ecx, 0xe
imul ecx, eax
mov eax, r15d
rol eax, 8
sub ecx, eax
xor r8d, ecx
mov ecx, r8d
mov eax, r8d
xor ecx, edi
ror eax, 0xa
ror ecx, 0xc
imul ecx, r11d
movzx r11d, word [rbp + 0x16e]
xor ecx, eax
movzx eax, word [rbp + 0x16a]
xor r15d, ecx
mov ecx, r15d
xor ecx, r11d
imul ecx, eax
mov eax, r15d
shr eax, 0xa
xor ecx, eax
xor r8d, ecx
mov eax, r8d
not eax
ror eax, 5
add eax, dword [rbp - 0x58]
imul eax, r11d
xor r15d, eax
movzx eax, word [rbp + 0x16e]
mov r11d, r15d
sub r11d, eax
xor r11d, r8d
mov r8d, dword [rsp + 0x40]
xor r11d, edi
mov ecx, r11d
xor ecx, eax
mov eax, r11d
rol ecx, 2
imul ecx, r8d
shr eax, 2
add ecx, eax
movzx eax, word [rbp + 0x16a]
xor r15d, ecx
mov ecx, r15d
sub ecx, esi
ror ecx, 6
imul ecx, eax
mov eax, r15d
rol eax, 7
add ecx, eax
xor r11d, ecx
mov eax, r11d
mov ecx, r11d
xor eax, r8d
ror ecx, 9
imul eax, dword [rbp - 0x58]
add ecx, eax
movzx eax, word [rbp + 0x16a]
xor r15d, ecx
mov ecx, r15d
xor ecx, eax
movzx eax, word [rbp + 0x16e]
rol ecx, 5
imul ecx, eax
mov eax, r15d
rol eax, 7
add ecx, eax
xor r11d, ecx
movzx ecx, word [rbp + 0x16a]
xor r15d, r11d
xor r15d, esi
xor r15d, edi
mov eax, r15d
ror eax, 3
sub eax, ecx
imul eax, r8d
xor r11d, eax
mov ecx, r11d
sub ecx, esi
ror ecx, 1
mov eax, r11d
imul ecx, dword [rbp - 0x58]
ror eax, 6
sub ecx, eax
movzx eax, word [rbp + 0x16e]
xor r15d, ecx
lea ecx, [r15 + rdi]
rol ecx, 3
imul ecx, eax
mov eax, r15d
rol eax, 0xe
add ecx, eax
xor r11d, ecx
mov eax, r11d
ror eax, 0xe
lea ecx, [r11 + rdi]
rol ecx, 0xf
imul ecx, r8d
sub ecx, eax
movzx eax, word [rbp + 0x16a]
xor r15d, ecx
mov ecx, r15d
xor ecx, dword [rbp - 0x58]
imul ecx, eax
mov eax, r15d
shr eax, 3
xor ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
xor r11d, edx
rol eax, 2
xor ecx, esi
mov edx, r9d
rol ecx, 4
imul ecx, dword [rbp - 0x58]
xor ecx, eax
xor ecx, ebx
mov ebx, r10d
xor r15d, ecx
mov byte [r13 - 4], r15b
mov byte [r13], r11b
lea r13, [r13 + 8]
ror r15d, 8
mov byte [r13 - 0xd], r15b
ror r11d, 8
mov byte [r13 - 9], r11b
ror r15d, 8
mov byte [r13 - 0xe], r15b
ror r11d, 8
mov byte [r13 - 0xa], r11b
ror r15d, 8
ror r11d, 8
mov byte [r13 - 0xf], r15b
mov byte [r13 - 0xb], r11b
ror r11d, 8
ror r15d, 8
sub r14, 1
jne 0x14005b8a7
mov dl, byte [rbp - 0x60]
movabs rbx, 0xc81ecb17b1b54a58
mov r12, qword [rbp - 0x70]
mov r13, qword [rsp + 0x60]
mov rsi, qword [rbp - 0x78]
mov r15, qword [rsp + 0x30]
mov rax, r14
mov r11, qword [rbp - 0x28]
test r15, r15
je 0x14005bbd7
xor dl, byte [rax + r11]
inc rax
cmp rax, r15
jb 0x14005bbcb
mov rcx, qword [rbp + 0x170]
mov rax, qword [rsp + 0x58]
mov r8, qword [rsp + 0x48]
mov r9, qword [rsp + 0x68]
mov r10, qword [rbp - 0x40]
mov qword [rsp + 0x70], rcx
mov qword [rbp + 0x170], rcx
mov rcx, qword [rbp + 0x30]
mov qword [rbp - 0x70], rax
mov qword [rsp + 0x58], rax
movzx eax, dl
mov qword [rbp + 0x168], r8
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x68], r9
mov qword [rbp - 0x40], r10
cmp rax, qword [r15 + rcx]
je 0x14005bc9f
mov rcx, r11
call fcn.140017620
mov r15d, 0xd0000001
mov qword [rbp - 0x18], r14
mov dword [rsp + 0x30], r15d
jmp 0x14005a338
mov r11d, r14d
jae 0x14005b85d
mov r8, qword [rbp - 0x80]
jmp 0x14005bc6e
mov r15d, 0x92f65a5
mov dword [rbp + 8], r14d
mov dword [rbp - 0x68], r14d
mov r11d, r14d
mov ecx, 4
sub ecx, eax
shl ecx, 3
shr r15d, cl
shl r15d, cl
mov rcx, qword [rsp + 0x38]
jmp 0x14005b861
or r9d, 0xffffffff
mov dword [rbp + 8], r14d
mov dword [rbp - 0x68], r9d
mov r11d, r14d
mov r15d, r14d
jmp 0x14005b861
mov dword [rbp - 0x58], r14d
mov qword [rbp + 8], r11
cmp r15d, 4
jae 0x14005bcdf
mov rax, qword [rsp + 0x70]
mov r15d, 0xc000003e
mov qword [rsp + 0x68], r9
mov r9, qword [rbp - 0x70]
mov qword [rsp + 0x58], r9
mov qword [rbp - 0x18], r11
mov qword [rbp - 0x40], r10
mov qword [rbp + 0x170], rax
mov qword [rsp + 0x48], r8
jmp 0x14005c24e
mov eax, dword [r11]
lea r8, [rbp + 8]
mov edx, 4
mov dword [rbp - 0x48], eax
mov rcx, r11
call fcn.140049238
mov r15d, eax
mov qword [rsp + 0x68], r9
mov rax, qword [rsp + 0x70]
mov r9, qword [rbp - 0x70]
mov qword [rbp + 0x170], rax
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x48], rax
mov qword [rbp - 0x18], r11
mov qword [rbp - 0x40], r10
mov qword [rsp + 0x58], r9
test r15d, r15d
js 0x14005c24e
lea r8, [rbp - 0x58]
mov edx, 4
xor ecx, ecx
call fcn.140049218
mov rcx, qword [rsp + 0x50]
mov r15d, eax
mov rax, qword [rbp + 0x168]
mov r8, r13
mov rdx, qword [rsp + 0x70]
mov qword [rsp + 0x48], rax
mov qword [rbp - 0x18], r11
mov qword [rbp - 0x40], r10
mov qword [rsp + 0x68], rcx
mov qword [rbp + 0x170], rdx
mov qword [rsp + 0x58], r9
test r15d, r15d
js 0x14005c24e
mov eax, dword [rsp + 0x30]
sub eax, dword [rbp - 0x58]
cmp eax, 4
jae 0x14005bdba
mov qword [rsp + 0x68], rcx
mov qword [rbp + 0x170], rdx
mov rax, qword [rbp + 0x168]
mov r15d, 0xc000003e
mov qword [rsp + 0x48], rax
mov qword [rbp - 0x40], r10
mov qword [rbp - 0x18], r11
mov qword [rsp + 0x58], r9
jmp 0x14005c24e
mov rcx, qword [rbp + 8]
lea r8, [rbp + 8]
mov edx, 4
mov eax, dword [rcx]
mov dword [rbp - 0x68], eax
call fcn.140049238
mov r15d, eax
mov qword [rbp - 0x18], r11
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x70]
mov qword [rbp + 0x170], rax
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x48], rax
mov qword [rbp - 0x40], r10
mov qword [rsp + 0x58], r9
test r15d, r15d
js 0x14005c24e
mov ecx, dword [rbp - 0x58]
lea r8, [rbp - 0x58]
mov edx, 4
call fcn.140049218
mov rcx, qword [rsp + 0x50]
mov r15d, eax
mov rax, qword [rbp + 0x168]
mov r8, r13
mov rdx, qword [rsp + 0x70]
mov qword [rsp + 0x48], rax
mov qword [rbp - 0x18], r11
mov qword [rbp - 0x40], r10
mov qword [rsp + 0x68], rcx
mov qword [rbp + 0x170], rdx
mov qword [rsp + 0x58], r9
test r15d, r15d
js 0x14005c24e
mov eax, dword [rsp + 0x30]
sub eax, dword [rbp - 0x58]
mov r9d, dword [rbp - 0x68]
cmp eax, r9d
jae 0x14005be80
mov qword [rsp + 0x68], rcx
mov qword [rbp + 0x170], rdx
mov r9, qword [rbp - 0x70]
jmp 0x14005bd96
mov ecx, dword [rbp - 0x58]
lea r8, [rbp - 0x58]
mov edx, r9d
call fcn.140049218
mov rdx, qword [rsp + 0x50]
mov r15d, eax
mov rax, qword [rbp + 0x168]
mov r8, qword [rsp + 0x70]
mov r9, qword [rbp - 0x70]
mov qword [rsp + 0x48], rax
mov qword [rbp - 0x18], r11
mov qword [rbp - 0x40], r10
mov qword [rsp + 0x68], rdx
mov qword [rbp + 0x170], r8
mov qword [rsp + 0x58], r9
test r15d, r15d
js 0x14005c24e
mov r9d, dword [rsp + 0x30]
mov esi, dword [rbp - 0x68]
mov rcx, qword [rbp + 8]
add rcx, rsi
lea rax, [r9 + r11]
cmp rax, rcx
jb 0x14005c22f
mov rcx, qword [rbp + 8]
sub r9, rsi
sub r9, rcx
add r9, r11
cmp r9, 8
jae 0x14005c22f
mov rax, qword [rbp - 0x70]
mov r15d, r14d
mov rsi, qword [rsp + 0x60]
mov r9, r13
mov qword [rsp + 0x58], rax
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x48], rax
mov qword [rbp + 0x30], r14
mov dword [rsp + 0x40], r14d
mov qword [rbp - 0x18], r11
mov qword [rbp - 0x40], r10
mov qword [rsp + 0x68], rdx
mov qword [rbp + 0x170], r8
mov qword [rbp - 0x78], rsi
test rcx, rcx
je 0x14005c1a9
mov edx, dword [rbp - 0x68]
lea r8, [rsp + 0x78]
mov qword [rbp - 0x58], rcx
call fcn.140049238
mov rbx, qword [rbp + 0x168]
mov r15d, eax
mov rax, qword [rbp - 0x70]
mov rcx, r12
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x70]
mov qword [rsp + 0x48], rbx
movabs rbx, 0xc81ecb17b1b54a58
mov qword [rsp + 0x58], rax
mov qword [rbp - 0x18], r11
mov qword [rbp - 0x40], r10
mov qword [rsp + 0x68], rdx
mov qword [rbp + 0x170], r8
mov qword [rbp - 0x78], rsi
test r15d, r15d
js 0x14005c245
mov r9, rax
mov qword [rsp + 0x58], rax
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x78]
mov qword [rbp - 0x18], r11
mov qword [rbp - 0x40], r10
mov qword [rsp + 0x68], rdx
mov qword [rbp + 0x170], r8
mov qword [rbp - 0x78], rsi
cmp qword [rbp - 0x58], rax
jae 0x14005c19b
mov rcx, r10
mov qword [rbp - 0x18], r11
mov r11, qword [rbp + 0x168]
mov rax, rdx
mov qword [rsp + 0x48], r11
mov r10, r8
mov qword [rbp - 0x40], rcx
mov qword [rsp + 0x68], rdx
mov qword [rbp + 0x170], r8
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x58], r9
mov qword [rbp + 0x168], rax
lea r8, [rbp + 0x40]
mov rax, qword [rbp - 0x18]
mov edx, 4
mov qword [rbp + 0x178], r10
mov r10, qword [rbp - 0x58]
mov qword [rsp + 0x38], rcx
mov rcx, r10
mov qword [rbp - 0x80], rax
call fcn.140049238
mov r15d, eax
test eax, eax
js 0x14005c216
mov rax, qword [rsp + 0x78]
cmp qword [rbp + 0x40], rax
ja 0x14005c190
mov edx, dword [r10]
lea r8, [rsp + 0x50]
mov ecx, 4
call fcn.140049218
mov r15d, eax
test eax, eax
js 0x14005c24e
mov edx, dword [rsp + 0x50]
lea r8, [rbp - 0x70]
mov rcx, r10
call fcn.140049238
mov r15d, eax
mov qword [rbp - 0x78], rsi
mov rax, qword [rbp - 0x80]
mov r10, r13
mov qword [rbp - 0x18], rax
mov rcx, r12
mov rax, qword [rsp + 0x38]
mov qword [rbp - 0x40], rax
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x68], rax
mov rax, qword [rbp + 0x178]
mov qword [rbp + 0x170], rax
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x48], r11
test r15d, r15d
js 0x14005c245
mov rdx, qword [rbp - 0x70]
mov r8, qword [rsp + 0x78]
mov rax, qword [rbp - 0x80]
mov qword [rbp - 0x58], rdx
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x48], r11
mov qword [rbp - 0x18], rax
cmp rdx, r8
ja 0x14005c162
inc dword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rbp + 0x168]
mov r10, qword [rbp + 0x178]
mov qword [rbp - 0x40], rcx
mov qword [rsp + 0x68], rax
mov qword [rbp + 0x170], r10
mov qword [rbp - 0x78], rsi
cmp rdx, r8
jb 0x14005c019
mov rax, qword [rbp - 0x80]
mov qword [rbp - 0x18], rax
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x68], rax
mov qword [rbp - 0x40], rcx
mov qword [rbp + 0x170], r10
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x48], r11
jmp 0x14005c1a4
mov rax, qword [rsp + 0x38]
mov r15d, 0xc000000d
mov qword [rbp - 0x40], rax
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x68], rax
mov rax, qword [rbp + 0x178]
mov qword [rbp + 0x170], rax
jmp 0x14005c24e
mov r15d, 0xc000000d
jmp 0x14005c24e
mov rdx, qword [rbp - 0x58]
mov r8, qword [rsp + 0x78]
cmp rdx, r8
jne 0x14005c190
mov edx, dword [rbp - 0x68]
test edx, edx
je 0x14005c1f0
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, dword [rbp - 0x68]
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 qword [rbp + 0x30], rax
mov rcx, rax
test rax, rax
jne 0x14005c1e8
mov r15d, 0xc0000017
jmp 0x14005c249
mov edx, dword [rbp - 0x68]
mov r15d, r14d
jmp 0x14005c1f3
mov rcx, r14
mov rax, qword [rbp + 8]
test rax, rax
je 0x14005c207
mov r8d, edx
mov rdx, rax
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x30]
mov qword [rbp + 0x60], rax
mov eax, dword [rsp + 0x40]
mov dword [rbp + 0x58], eax
test r15d, r15d
js 0x14005c245
mov eax, dword [rbp - 0x48]
mov rsi, qword [rbp - 0x78]
cmp eax, dword [rbp + 0x58]
je 0x14005c249
mov r15d, 0xc000003e
jmp 0x14005c249
mov rsi, qword [rsp + 0x60]
mov qword [rsp + 0x68], rdx
mov qword [rbp + 0x170], r8
jmp 0x14005be77
mov rsi, qword [rbp - 0x78]
mov r9, qword [rsp + 0x58]
bts r15d, 0x1c
jmp 0x14005b6be
mov r15d, 0xd0000001
mov dword [rsp + 0x30], r15d
jmp 0x14005a342
cmp qword [rbp + 0x60], r14
je 0x14005c443
cmp dword [rbp + 0x58], r14d
jbe 0x14005c443
mov rax, qword [rbp + 0x60]
lea r8, [rbp - 0x38]
mov r11d, 4
mov qword [rbp - 0x38], rax
mov edx, r11d
mov rcx, rax
mov r9d, dword [rax]
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov rax, qword [rbp - 0x38]
test r9d, r9d
cmove rax, r14
cmp r9d, r11d
jne 0x14005c611
mov r15d, dword [rax]
mov dword [rsp + 0x30], r15d
cmp r15d, 0xd0000023
jne 0x14005c2da
mov dword [rsp + 0x40], 0x8007007a
jmp 0x14005c2f6
mov dword [rsp + 0x40], r15d
cmp r15d, 0x8007007a
je 0x14005c2f6
mov dword [rsp + 0x40], r15d
test r15d, r15d
js 0x14005c687
cmp dword [rbp + 0x58], 6
jne 0x14005a59f
cmp qword [rbp + 0x60], r14
je 0x14005c443
mov rcx, qword [rbp + 0x60]
mov r9d, r14d
mov qword [rsp + 0x38], rcx
mov r10d, dword [rcx]
lea r8, [rsp + 0x38]
mov rdx, r11
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov rcx, qword [rsp + 0x38]
lea r8, [rsp + 0x38]
mov edx, r10d
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov rcx, qword [rsp + 0x38]
inc r9d
cmp r9d, 1
jb 0x14005c316
mov r9d, dword [rcx]
lea r8, [rsp + 0x38]
mov rdx, r11
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov rax, qword [rsp + 0x38]
test r9d, r9d
cmove rax, r14
cmp r9d, 8
jne 0x14005c611
mov rax, qword [rax]
mov qword [rbp - 0x38], rax
cmp qword [rbp + 0x60], r14
je 0x14005c443
mov rcx, qword [rbp + 0x60]
mov r9d, r14d
mov qword [rsp + 0x38], rcx
mov r10d, dword [rcx]
lea r8, [rsp + 0x38]
mov rdx, r11
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov rcx, qword [rsp + 0x38]
lea r8, [rsp + 0x38]
mov edx, r10d
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov rcx, qword [rsp + 0x38]
inc r9d
cmp r9d, 2
jb 0x14005c3b6
mov r9d, dword [rcx]
lea r8, [rsp + 0x38]
mov rdx, r11
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov rax, qword [rsp + 0x38]
test r9d, r9d
cmove rax, r14
cmp r9d, r11d
jne 0x14005c611
mov eax, dword [rax]
mov dword [rbp - 0x48], eax
cmp qword [rbp + 0x60], r14
jne 0x14005c44e
mov r15d, 0xc000000d
jmp 0x14005a5a5
mov rcx, qword [rbp + 0x60]
mov r9d, r14d
mov qword [rsp + 0x38], rcx
mov r10d, dword [rcx]
lea r8, [rsp + 0x38]
mov rdx, r11
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov rcx, qword [rsp + 0x38]
lea r8, [rsp + 0x38]
mov edx, r10d
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov rcx, qword [rsp + 0x38]
inc r9d
cmp r9d, 3
jb 0x14005c45a
mov r9d, dword [rcx]
lea r8, [rsp + 0x38]
mov rdx, r11
mov dword [rbp + 8], r9d
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov rax, qword [rsp + 0x38]
test r9d, r9d
cmove rax, r14
mov qword [rbp - 0x28], rax
cmp qword [rbp + 0x60], r14
je 0x14005c443
mov rcx, qword [rbp + 0x60]
mov r9d, r14d
mov qword [rsp + 0x38], rcx
mov r10d, dword [rcx]
lea r8, [rsp + 0x38]
mov rdx, r11
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov rcx, qword [rsp + 0x38]
lea r8, [rsp + 0x38]
mov edx, r10d
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov rcx, qword [rsp + 0x38]
inc r9d
cmp r9d, r11d
jb 0x14005c4f1
mov r9d, dword [rcx]
lea r8, [rsp + 0x38]
mov rdx, r11
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov rax, qword [rsp + 0x38]
test r9d, r9d
cmove rax, r14
cmp r9d, r11d
jne 0x14005c611
mov eax, dword [rax]
mov dword [rsp + 0x70], eax
cmp qword [rbp + 0x60], r14
je 0x14005c443
mov rcx, qword [rbp + 0x60]
mov r11d, r14d
mov qword [rsp + 0x38], rcx
mov eax, dword [rcx]
lea r8, [rsp + 0x38]
mov edx, 4
mov dword [rsp + 0x50], eax
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov edx, dword [rsp + 0x50]
lea r8, [rsp + 0x38]
mov rcx, qword [rsp + 0x38]
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c687
mov rcx, qword [rsp + 0x38]
inc r11d
cmp r11d, 5
jb 0x14005c58e
mov r11d, dword [rcx]
lea r8, [rsp + 0x38]
mov edx, 4
call fcn.140049238
mov dword [rsp + 0x30], eax
mov r15d, eax
test eax, eax
js 0x14005c67e
mov rax, qword [rsp + 0x38]
test r11d, r11d
cmove rax, r14
cmp r11d, 4
je 0x14005c61c
mov r15d, 0xc0000023
jmp 0x14005a5a5
mov rcx, qword [rbp + 0x10]
cmp rcx, qword [rbp - 0x38]
jne 0x14005a59f
mov eax, dword [rax]
mov r11d, 4
mov ecx, dword [rbp - 0x48]
mov dword [rbp], eax
mov dword [rbp + 0x88], ecx
cmp dword [rsp + 0x70], r11d
jbe 0x14005c650
mov r15d, 0x8007007a
jmp 0x14005a5a5
mov eax, dword [rbp + 8]
cmp eax, r11d
ja 0x14005c645
mov rdx, qword [rbp - 0x28]
mov r8d, eax
mov rcx, rsi
call sub.msvcrt.dll_memcpy
mov edx, dword [rsp + 0x40]
mov rcx, r13
mov rax, r12
test edx, edx
je 0x14005c687
mov r15d, edx
mov dword [rsp + 0x30], edx
jmp 0x14005c687
mov dword [rsp + 0x30], eax
jmp 0x14005c687
mov r13, r11
and qword [rbp - 0x10], 0
mov rsi, qword [rbp - 8]
test rsi, rsi
je 0x14005c6b9
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
and qword [rbp + 0x58], 0
mov rsi, qword [rbp + 0x60]
test rsi, rsi
je 0x14005c6eb
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 + 0x60], r14
test r12, r12
je 0x14005c710
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]
test r13, r13
je 0x14005c735
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 r15d, r15d
js 0x14005f4dd
cmp dword [rbp], r14d
je 0x14005db75
xorps xmm0, xmm0
mov qword [rbp + 0x28], r14
movups xmmword [rbp + 0x70], xmm0
mov r12, r14
mov r13, r14
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]
test rax, rax
je 0x14005dac7
mov r12, rax
lea edx, [rsi + 0x78]
lea rax, [0x140000000]
lea rax, [rax + 0xc78e0]
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
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 r9, rax
test rax, rax
je 0x14005dac7
mov rax, qword [0x1400c7820]
mov r10, r12
mov qword [r9], rax
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp - 0x28], rax
lea edx, [rsi - 4]
mov dword [rbp - 0x68], r14d
mov ecx, edx
lea r8, [rsp + 0x50]
call fcn.140049218
mov r13, r9
test eax, eax
js 0x14005dac7
mov edx, dword [rsp + 0x50]
lea r8, [rbp - 0x68]
xor ecx, ecx
call fcn.140049218
mov r11d, 0x10000000
or eax, r11d
jl 0x14005dac7
lea r8, [rsp + 0x50]
mov edx, 0xa0
lea ecx, [rsi - 4]
call fcn.140049218
test eax, eax
js 0x14005dac7
mov edx, dword [rsp + 0x50]
lea r8, [rbp - 0x68]
mov ecx, dword [rbp - 0x68]
call fcn.140049218
or eax, r11d
jl 0x14005dac7
lea r8, [rsp + 0x50]
mov edx, esi
lea ecx, [rsi - 4]
call fcn.140049218
test eax, eax
js 0x14005dac7
mov edx, dword [rsp + 0x50]
lea r8, [rbp - 0x68]
mov ecx, dword [rbp - 0x68]
call fcn.140049218
or eax, r11d
jl 0x14005dac7
lea r8, [rsp + 0x50]
mov edx, esi
lea ecx, [rsi - 4]
call fcn.140049218
test eax, eax
js 0x14005dac7
mov edx, dword [rsp + 0x50]
lea r8, [rbp - 0x68]
mov ecx, dword [rbp - 0x68]
call fcn.140049218
or eax, r11d
jl 0x14005dac7
mov eax, dword [rbp - 0x68]
mov dword [rbp + 0x24], 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]
test rax, rax
je 0x14005dac7
mov qword [rbp + 0x28], rax
mov dword [rbp + 0x20], r14d
mov r10, r12
mov qword [rbp - 0x20], rax
mov esi, 8
mov qword [rsp + 0x38], rax
lea r8, [rbp + 0x18]
mov qword [rbp - 0x70], r13
mov rcx, rax
mov qword [rsp + 0x60], r12
mov r9, r13
mov r11d, 0xa0
lea r10d, [rsi - 4]
mov edx, r10d
call fcn.140049238
test eax, eax
js 0x14005dac7
mov r9, qword [rbp - 0x20]
mov ecx, dword [rbp + 0x24]
add rcx, qword [rbp + 0x28]
lea rax, [r9 + 8]
cmp rax, rcx
ja 0x14005dac7
mov rax, qword [rbp + 0x18]
mov dword [r9], r10d
mov dword [rax], r10d
mov eax, dword [rbp + 0x20]
inc eax
mov dword [rbp + 0x20], eax
test r12, r12
je 0x14005dac7
cmp qword [rbp + 0x28], r14
jne 0x14005c9fd
lea r8, [rsp + 0x50]
mov edx, r11d
mov ecx, r10d
call fcn.140049218
test eax, eax
js 0x14005dac7
mov edx, dword [rsp + 0x50]
lea r8, [rbp + 0x24]
mov ecx, dword [rbp + 0x24]
call fcn.140049218
test eax, eax
js 0x14005dac7
jmp 0x14005caaa
mov r10, qword [rbp + 0x28]
mov qword [rbp - 0x50], r10
mov dword [rbp], r14d
test eax, eax
je 0x14005ca63
mov r9d, dword [rbp + 0x20]
mov edx, dword [r10]
lea r8, [rsp + 0x50]
mov ecx, 4
call fcn.140049218
test eax, eax
js 0x14005dac7
mov edx, dword [rsp + 0x50]
lea r8, [rbp - 0x50]
mov rcx, r10
call fcn.140049238
mov rdx, r13
mov rcx, r12
test eax, eax
js 0x14005dac7
mov eax, dword [rbp]
mov r10, qword [rbp - 0x50]
inc eax
mov dword [rbp], eax
mov qword [rbp - 0x70], rdx
mov qword [rsp + 0x60], rcx
cmp eax, r9d
jb 0x14005ca11
lea r8, [rbp + 0x18]
mov edx, 4
mov rcx, r10
call fcn.140049238
test eax, eax
js 0x14005dac7
mov ecx, dword [rbp + 0x24]
lea rax, [r10 + 4]
add rcx, qword [rbp + 0x28]
mov r8d, r11d
add rax, r8
cmp rax, rcx
ja 0x14005dac7
mov dword [r10], r11d
test r12, r12
je 0x14005caaa
mov rcx, qword [rbp + 0x18]
mov rdx, r12
call sub.msvcrt.dll_memcpy
mov r9d, dword [rbp + 0x20]
inc r9d
mov dword [rbp + 0x20], r9d
test r13, r13
jne 0x14005cac3
test esi, esi
je 0x14005cacb
jmp 0x14005dac7
test esi, esi
je 0x14005dac7
cmp qword [rbp + 0x28], r14
jne 0x14005cb07
lea r8, [rsp + 0x50]
mov edx, esi
mov ecx, 4
call fcn.140049218
test eax, eax
js 0x14005dac7
mov edx, dword [rsp + 0x50]
lea r8, [rbp + 0x24]
mov ecx, dword [rbp + 0x24]
call fcn.140049218
test eax, eax
js 0x14005dac7
jmp 0x14005cbae
mov r10, qword [rbp + 0x28]
mov qword [rbp - 0x50], r10
mov dword [rbp], r14d
test r9d, r9d
je 0x14005cb67
mov edx, dword [r10]
lea r8, [rsp + 0x50]
mov ecx, 4
call fcn.140049218
test eax, eax
js 0x14005dac7
mov edx, dword [rsp + 0x50]
lea r8, [rbp - 0x50]
mov rcx, r10
call fcn.140049238
mov rcx, r13
test eax, eax
js 0x14005dac7
mov eax, dword [rbp]
mov r10, qword [rbp - 0x50]
inc eax
mov dword [rbp], eax
mov qword [rbp - 0x70], rcx
mov qword [rsp + 0x60], r12
cmp eax, r9d
jb 0x14005cb18
lea r8, [rbp + 0x18]
mov edx, 4
mov rcx, r10
call fcn.140049238
test eax, eax
js 0x14005dac7
mov ecx, dword [rbp + 0x24]
lea rax, [r10 + 4]
add rcx, qword [rbp + 0x28]
mov r8d, esi
add rax, r8
cmp rax, rcx
ja 0x14005dac7
mov dword [r10], esi
test r13, r13
je 0x14005cbae
mov rcx, qword [rbp + 0x18]
mov rdx, r13
call sub.msvcrt.dll_memcpy
mov r9d, dword [rbp + 0x20]
inc r9d
mov dword [rbp + 0x20], r9d
cmp qword [rbp + 0x28], r14
jne 0x14005cbf6
mov edx, 8
lea r8, [rsp + 0x50]
lea ecx, [rdx - 4]
call fcn.140049218
test eax, eax
js 0x14005dac7
mov edx, dword [rsp + 0x50]
lea r8, [rbp + 0x24]
mov ecx, dword [rbp + 0x24]
call fcn.140049218
test eax, eax
js 0x14005dac7
jmp 0x14005cc92
mov r10, qword [rbp + 0x28]
mov qword [rbp - 0x50], r10
mov dword [rbp], r14d
test r9d, r9d
je 0x14005cc53
mov edx, dword [r10]
lea r8, [rsp + 0x50]
mov ecx, 4
call fcn.140049218
test eax, eax
js 0x14005dac7
mov edx, dword [rsp + 0x50]
lea r8, [rbp - 0x50]
mov rcx, r10
call fcn.140049238
test eax, eax
js 0x14005dac7
mov eax, dword [rbp]
mov r10, qword [rbp - 0x50]
inc eax
mov dword [rbp], eax
mov qword [rbp - 0x70], r13
mov qword [rsp + 0x60], r12
cmp eax, r9d
jb 0x14005cc07
lea r8, [rbp + 0x18]
mov edx, 4
mov rcx, r10
call fcn.140049238
test eax, eax
js 0x14005dac7
mov ecx, dword [rbp + 0x24]
lea rax, [r10 + 0xc]
add rcx, qword [rbp + 0x28]
cmp rax, rcx
ja 0x14005dac7
mov rax, qword [rbp + 0x18]
mov rcx, qword [rbp - 0x28]
mov dword [r10], 8
mov qword [rax], rcx
inc dword [rbp + 0x20]
mov edx, 4
lea r8, [rsp + 0x50]
mov ecx, edx
call fcn.140049218
test eax, eax
js 0x14005dac7
mov r9d, dword [rsp + 0x50]
lea r8, [rsp + 0x50]
mov dword [rbp], r9d
lea edx, [rcx + 4]
call fcn.140049218
test eax, eax
js 0x14005dac7
mov edx, dword [rsp + 0x50]
lea r8, [rbp]
mov ecx, r9d
call fcn.140049218
test eax, eax
js 0x14005dac7
mov eax, dword [rbp]
mov r9d, r14d
mov dword [rbp - 0x48], eax
mov qword [rbp - 0x78], r14
mov dword [rsp + 0x40], r14d
mov qword [rbp + 0x170], r14
mov qword [rsp + 0x48], r14
mov dword [rbp + 8], r14d
mov qword [rsp + 0x68], r14
mov dword [rbp - 0x68], r14d
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x18], r14
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x30], rax
mov dword [rbp + 0x4c], 8
mov edx, dword [rbp + 0x24]
lea r8, [rbp + 0x4c]
mov ecx, 8
call fcn.140049218
mov esi, eax
test eax, eax
js 0x14005ce4c
mov ecx, dword [rbp + 0x4c]
add rcx, 7
and ecx, 0xfffffff8
cmp ecx, dword [rbp + 0x4c]
jb 0x14005dac7
mov dword [rbp + 0x4c], ecx
mov esi, ecx
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 qword [rbp + 0x40], rax
mov r9, rax
test rax, rax
je 0x14005dac7
mov qword [rbp - 0x20], rax
lea r8, [rbp - 0x20]
mov eax, dword [rbp + 0x20]
mov edx, 4
mov rcx, r9
mov dword [r9], eax
call fcn.140049238
mov qword [rbp - 0x28], r9
mov esi, eax
mov qword [rbp - 0x70], r13
mov r11, r13
mov qword [rsp + 0x60], r12
mov r10, r12
test eax, eax
js 0x14005ce28
mov rcx, qword [rbp - 0x20]
lea r8, [rbp - 0x20]
mov eax, dword [rbp + 0x24]
mov edx, 4
mov dword [rcx], eax
call fcn.140049238
mov qword [rbp - 0x28], r9
mov esi, eax
mov qword [rbp - 0x70], r13
mov qword [rsp + 0x60], r12
test eax, eax
js 0x14005ce28
mov eax, dword [rbp + 0x4c]
mov rcx, qword [rbp + 0x30]
mov qword [rax + r9 - 8], rcx
mov r8d, dword [rbp + 0x24]
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp - 0x20]
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x40]
mov r9d, dword [rbp + 0x4c]
mov qword [rbp - 0x78], rax
mov dword [rsp + 0x40], r9d
mov qword [rbp - 0x70], r13
mov qword [rsp + 0x60], r12
jmp 0x14005ce4c
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x28]
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, r14d
or esi, 0x10000000
jl 0x14005d801
mov rsi, qword [rbp - 0x78]
mov qword [rbp + 0x168], r14
test rsi, rsi
je 0x14005dac7
mov eax, r9d
mov qword [rbp - 0x38], rax
test r9d, r9d
je 0x14005f4cf
add rax, 8
mov rcx, rax
mov qword [rbp - 0x50], rax
call fcn.1400491b4
mov qword [rbp - 0x80], rax
mov r9, rax
test rax, rax
je 0x14005f4cf
mov r8d, dword [rsp + 0x40]
mov al, r14b
mov byte [rbp - 0x60], al
mov rcx, r14
mov edx, r8d
test r8d, r8d
je 0x14005cec0
xor al, byte [rsi + rcx]
inc rcx
cmp rcx, rdx
jb 0x14005ceb2
mov byte [rbp - 0x60], al
or r11d, 0xffffffff
mov qword [rbp + 0x170], rbx
mov dword [rbp - 0x58], r14d
mov rcx, r9
mov qword [rbp - 0x20], rcx
mov r8, rsi
mov dword [rsp + 0x78], r14d
mov r10d, r14d
and edx, 7
je 0x14005cfef
mov ecx, r14d
mov r11d, r14d
mov dword [rbp], ecx
test edx, edx
je 0x14005cfcc
mov edi, 0x38
movzx r9d, byte [r8]
inc r8
cmp ecx, 4
jae 0x14005cf17
lea ecx, [rdi - 0x20]
shl r9d, cl
or r10d, r9d
jmp 0x14005cf1f
mov ecx, edi
shl r9d, cl
or r11d, r9d
mov ecx, dword [rbp]
sub edi, 8
inc ecx
mov dword [rbp - 0x58], r11d
mov dword [rsp + 0x78], r10d
mov dword [rbp], ecx
cmp ecx, edx
jl 0x14005cf00
xor r10d, 0xb17a307a
mov qword [rbp - 0x78], rsi
mov rsi, qword [rbp - 0x20]
xor r11d, 0x42f6b18d
mov r9d, r11d
mov qword [rbp - 0x70], r13
mov ecx, r10d
mov qword [rsp + 0x60], r12
movabs rdi, 0x7f1137fab69605e
mov ebx, r14d
lea r14, [rsi + 1]
mov qword [rbp + 0x10], r14
cmp ebx, 4
jge 0x14005cf7e
rol ecx, 8
mov r14d, ecx
jmp 0x14005cf85
rol r9d, 8
mov r14d, r9d
mov byte [rsi], r14b
inc ebx
mov r14, qword [rbp + 0x10]
mov rsi, r14
cmp ebx, edx
jl 0x14005cf69
mov rcx, r14
movabs rbx, 0xc81ecb17b1b54a58
mov qword [rbp - 0x20], rcx
mov r14d, 0
cmp edx, 4
jbe 0x14005cfc5
lea ecx, [r14 + 8]
sub ecx, edx
shl ecx, 3
shr r11d, cl
shl r11d, cl
mov rcx, rsi
jmp 0x14005cfef
mov r11d, r14d
jae 0x14005cfef
jmp 0x14005cfdb
mov r10d, 0xb17a307a
mov dword [rsp + 0x78], r14d
mov dword [rbp - 0x58], r14d
mov ecx, 4
sub ecx, edx
shl ecx, 3
shr r10d, cl
shl r10d, cl
mov rcx, qword [rbp - 0x20]
mov edx, dword [rsp + 0x40]
mov esi, edx
shr rdx, 3
mov qword [rbp + 0x10], rdx
test rdx, rdx
je 0x14005d353
movzx edx, word [rbp + 0x172]
lea r13, [rcx + 7]
movzx r15d, word [rbp + 0x174]
lea r12, [r8 + 2]
mov rdi, qword [rbp + 0x10]
mov r14d, dword [rbp - 0x58]
mov esi, dword [rsp + 0x78]
mov dword [rsp + 0x50], edx
movzx eax, bx
movzx ecx, byte [r12 - 1]
movzx r9d, byte [r12 - 2]
movzx r8d, byte [r12 + 2]
mov edx, dword [rbp + 0x174]
shl r9d, 8
or r9d, ecx
shl r8d, 8
movzx ecx, byte [r12]
lea r12, [r12 + 8]
shl r9d, 8
or r9d, ecx
movzx ecx, byte [r12 - 7]
shl r9d, 8
or r9d, ecx
movzx ecx, byte [r12 - 5]
or r8d, ecx
movzx ecx, byte [r12 - 4]
shl r8d, 8
or r8d, ecx
movzx ecx, byte [r12 - 3]
shl r8d, 8
or r8d, ecx
xor r11d, r8d
mov ecx, r11d
sub ecx, eax
xor ecx, dword [rbp + 0x174]
xor ecx, r9d
xor r10d, ecx
movzx ecx, word [rbp + 0x172]
xor edx, r10d
ror edx, 0xf
imul edx, ecx
mov ecx, r10d
ror ecx, 7
add edx, ecx
xor r11d, edx
mov ecx, r11d
ror ecx, 0xa
lea edx, [r11 + rbx]
ror edx, 9
imul edx, r15d
sub edx, ecx
movzx ecx, word [rbp + 0x176]
xor r10d, edx
mov edx, r15d
xor edx, r10d
rol edx, 4
imul edx, ecx
mov ecx, r10d
rol ecx, 5
add edx, ecx
mov ecx, dword [rbp + 0x174]
xor r11d, edx
mov edx, r11d
xor edx, ebx
sub ecx, edx
xor r10d, ecx
movzx ecx, word [rbp + 0x172]
mov edx, r10d
sub edx, eax
imul edx, ecx
mov ecx, r10d
shr ecx, 6
sub edx, ecx
xor r11d, edx
movzx edx, word [rbp + 0x176]
mov ecx, r11d
ror ecx, 0xf
xor ecx, r15d
imul ecx, eax
xor r10d, ecx
mov ecx, r10d
not ecx
ror ecx, 3
add ecx, edx
imul ecx, r15d
xor r11d, ecx
mov ecx, r11d
sub ecx, dword [rbp + 0x174]
sub ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0x176]
mov edx, r10d
ror edx, 0xa
xor ecx, r10d
imul ecx, dword [rsp + 0x50]
xor edx, ecx
xor r11d, edx
mov edx, r11d
mov ecx, r11d
xor edx, eax
ror ecx, 3
rol edx, 6
imul edx, r15d
xor edx, ecx
xor r10d, edx
movzx edx, word [rbp + 0x176]
mov ecx, r10d
ror ecx, 0xf
sub ecx, edx
imul ecx, eax
xor r11d, ecx
xor edx, r11d
mov ecx, r11d
imul edx, eax
shr ecx, 1
xor edx, ecx
mov ecx, r11d
xor r10d, edx
shr ecx, 0xf
mov edx, r11d
sub edx, r15d
rol edx, 3
imul edx, eax
xor edx, ecx
movzx ecx, word [rbp + 0x172]
xor r10d, edx
mov edx, r10d
sub edx, r15d
imul edx, ecx
mov ecx, r10d
shr ecx, 0xd
sub edx, ecx
xor r11d, edx
mov edx, ebx
sub edx, r11d
mov ecx, r11d
ror edx, 9
imul edx, r15d
ror ecx, 0xb
xor edx, ecx
xor r10d, edx
movzx edx, word [rbp + 0x176]
mov ecx, r10d
sub ecx, edx
sub ecx, ebx
xor r11d, ecx
movzx ecx, word [rbp + 0x172]
xor ecx, r11d
mov edx, r11d
ror edx, 7
imul ecx, eax
sub ecx, edx
movzx edx, word [rbp + 0x176]
xor r10d, ecx
movzx ecx, word [rbp + 0x172]
xor edx, r10d
rol edx, 4
imul edx, ecx
mov ecx, r10d
ror ecx, 0x10
sub edx, ecx
xor r11d, edx
mov edx, ebx
sub edx, r11d
mov ecx, r11d
ror edx, 0xa
imul edx, r15d
ror ecx, 4
add edx, ecx
xor r10d, edx
mov edx, r10d
movzx ecx, word [rbp + 0x176]
sub edx, ebx
ror edx, 4
imul edx, ecx
mov ecx, r10d
ror ecx, 9
xor edx, ecx
xor r11d, edx
mov edx, dword [rbp + 0x174]
xor edx, r11d
mov ecx, r11d
rol edx, 8
imul edx, eax
rol ecx, 2
sub edx, ecx
movzx ecx, word [rbp + 0x172]
xor r10d, edx
mov edx, dword [rbp + 0x174]
sub edx, r10d
ror edx, 0xb
imul edx, ecx
mov ecx, r10d
ror ecx, 0xc
sub edx, ecx
movzx ecx, word [rbp + 0x172]
xor r11d, edx
mov edx, r11d
xor edx, ecx
mov ecx, r11d
imul edx, r15d
shr ecx, 8
xor edx, ecx
xor r10d, edx
xor r11d, r10d
xor r10d, esi
xor r11d, dword [rbp + 0x174]
mov esi, r9d
mov byte [r13 - 4], r10b
xor r11d, ebx
xor r11d, r14d
ror r10d, 8
mov byte [r13], r11b
mov r14d, r8d
mov byte [r13 - 5], r10b
lea r13, [r13 + 8]
ror r11d, 8
mov byte [r13 - 9], r11b
ror r10d, 8
mov byte [r13 - 0xe], r10b
ror r11d, 8
mov byte [r13 - 0xa], r11b
ror r10d, 8
ror r11d, 8
mov byte [r13 - 0xf], r10b
mov byte [r13 - 0xb], r11b
ror r11d, 8
ror r10d, 8
sub rdi, 1
jne 0x14005d030
mov al, byte [rbp - 0x60]
movabs rdi, 0x7f1137fab69605e
mov r15d, dword [rsp + 0x30]
xor r14d, r14d
mov r12, qword [rsp + 0x60]
mov r13, qword [rbp - 0x70]
mov rsi, qword [rbp - 0x38]
mov rbx, qword [rbp - 0x78]
movzx ecx, al
mov rax, qword [rbp - 0x80]
mov qword [rax + rsi], rcx
mov qword [rbp + 0x140], 8
mov qword [rbp + 0x148], 0xa0
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 qword [rsp + 0x38], rax
mov rsi, rax
test rax, rax
jne 0x14005d3b6
mov esi, 0xc0000017
mov rax, r14
jmp 0x14005d5f2
mov eax, dword [rbp - 0x50]
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 - 0x50]
mov edx, 8
mov r8d, r8d
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
je 0x14005d4ed
mov qword [rsi + 8], rax
mov r8, qword [rbp - 0x50]
mov rcx, rax
mov rdx, qword [rbp - 0x80]
mov r8d, r8d
mov qword [rsp + 0x38], rsi
call sub.msvcrt.dll_memcpy
mov qword [rbp - 0x28], rbx
mov dword [rsi + 0x10], 0xa0
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]
test rax, rax
je 0x14005d4ed
mov qword [rsi + 0x18], rax
mov rcx, rax
mov edx, 0x80
lea rax, [0x140000000]
lea rax, [rax + 0xc7830]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx + rdx - 0x10], xmm1
movups xmm0, xmmword [rax + rdx]
movups xmmword [rcx + rdx], xmm0
movups xmm1, xmmword [rax + rdx + 0x10]
movups xmmword [rcx + rdx + 0x10], xmm1
mov dword [rsi + 0x20], 8
call qword [sym.imp.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]
test rax, rax
jne 0x14005d5ce
mov rbx, rsi
mov qword [rsp + 0x38], rbx
mov rbx, qword [rbp - 0x28]
mov esi, 0xc0000017
mov rax, qword [rsp + 0x38]
mov qword [rbp + 0x168], r14
mov rcx, qword [rax + 8]
mov qword [rbp + 0x10], rcx
test rcx, rcx
je 0x14005d535
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x10]
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 rax, qword [rsp + 0x38]
mov qword [rax + 8], r14
mov rcx, qword [rax + 0x18]
mov qword [rbp + 0x10], rcx
test rcx, rcx
je 0x14005d56c
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x10]
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 rax, qword [rsp + 0x38]
mov qword [rax + 0x18], r14
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x10], rax
test rax, rax
je 0x14005d5a3
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x10]
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 rax, qword [rsp + 0x38]
mov qword [rax + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rsp + 0x38]
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 rax, r14
test esi, esi
js 0x14005d5f2
jmp 0x14005d5eb
mov qword [rsi + 0x28], rax
mov rdx, qword [rsp + 0x38]
mov esi, r14d
mov rax, qword [0x1400c78d0]
mov rcx, qword [rdx + 0x28]
mov qword [rcx], rax
mov rax, rdx
mov qword [rbp + 0x168], r14
mov qword [rbp - 0x78], rbx
mov qword [rbp + 0x170], rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x80]
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 rax, qword [rbp + 0x168]
test rax, rax
je 0x14005d711
mov rcx, qword [rax + 8]
mov qword [rbp + 0x10], rcx
test rcx, rcx
je 0x14005d667
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x10]
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 rax, qword [rbp + 0x168]
mov qword [rax + 8], r14
mov rcx, qword [rax + 0x18]
mov qword [rbp + 0x10], rcx
test rcx, rcx
je 0x14005d6a0
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x10]
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 rax, qword [rbp + 0x168]
mov qword [rax + 0x18], r14
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x10], rax
test rax, rax
je 0x14005d6d9
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x10]
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 rax, qword [rbp + 0x168]
mov qword [rax + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x168]
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 [rbp + 0x170]
mov qword [rbp + 0x170], r9
mov qword [rbp - 0x78], rbx
jmp 0x14005d718
mov r9, qword [rbp + 0x170]
or esi, 0x10000000
mov qword [rbp - 0x80], rbx
mov qword [rsp + 0x38], r9
jl 0x14005d805
mov edx, dword [r9]
lea r8, [rsp + 0x78]
mov r10d, 4
mov qword [rbp - 0x20], r9
mov ecx, r10d
mov dword [rsp + 0x78], r10d
call fcn.140049218
mov esi, eax
test eax, eax
js 0x14005d7b6
mov ecx, dword [rsp + 0x78]
lea r8, [rsp + 0x78]
mov edx, r10d
call fcn.140049218
mov esi, eax
test eax, eax
js 0x14005d7b6
mov edx, dword [r9 + 0x10]
lea r8, [rsp + 0x78]
mov ecx, dword [rsp + 0x78]
call fcn.140049218
mov esi, eax
test eax, eax
js 0x14005d7b6
mov ecx, dword [rsp + 0x78]
lea r8, [rsp + 0x78]
mov edx, r10d
call fcn.140049218
mov esi, eax
test eax, eax
js 0x14005d7b6
mov edx, dword [r9 + 0x20]
lea r8, [rsp + 0x78]
mov ecx, dword [rsp + 0x78]
call fcn.140049218
mov esi, eax
test eax, eax
js 0x14005d7b6
mov eax, dword [rsp + 0x78]
jmp 0x14005d7c4
test esi, esi
js 0x14005dd88
mov eax, dword [rbp + 0xd8]
mov dword [rbp], eax
mov ebx, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, ebx
mov edx, 8
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov qword [rbp - 0x50], rax
mov rcx, rax
test rax, rax
jne 0x14005dbac
mov esi, 0xd0000017
mov rbx, qword [rbp - 0x78]
test rbx, rbx
je 0x14005d82a
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 + 0x170]
test rbx, rbx
je 0x14005d8e1
mov rdi, qword [rbx + 8]
test rdi, rdi
je 0x14005d867
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 8], r14
mov rdi, qword [rbx + 0x18]
test rdi, rdi
je 0x14005d894
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 0x18], r14
mov rdi, qword [rbx + 0x28]
test rdi, rdi
je 0x14005d8c1
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [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 rbx, qword [rsp + 0x48]
test rbx, rbx
je 0x14005d90b
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 [rsp + 0x68]
test rbx, rbx
je 0x14005d935
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 - 0x40]
test rbx, rbx
je 0x14005d9e9
mov rdi, qword [rbx + 8]
test rdi, rdi
je 0x14005d96f
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 8], r14
mov rdi, qword [rbx + 0x18]
test rdi, rdi
je 0x14005d99c
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 0x18], r14
mov rdi, qword [rbx + 0x28]
test rdi, rdi
je 0x14005d9c9
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [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 rbx, qword [rbp - 0x18]
test rbx, rbx
je 0x14005da12
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 0x14005dac7
cmp dword [rbp + 0x70], 1
jb 0x14005dac7
mov rbx, qword [rbp + 0x78]
test rbx, rbx
je 0x14005dac7
cmp dword [rbp + 0x70], r14d
jbe 0x14005dac7
lea r8, [rbp + 0x10]
mov qword [rbp + 0x10], rbx
mov edx, 4
mov rcx, rbx
call fcn.140049238
test eax, eax
js 0x14005dac7
cmp dword [rbx], r14d
mov rax, qword [rbp + 0x10]
cmove rax, r14
cmp dword [rbx], 4
jne 0x14005dac7
cmp dword [rax], r14d
jl 0x14005dac7
cmp rbx, r14
je 0x14005dac7
cmp dword [rbp + 0x70], 1
jbe 0x14005dac7
mov qword [rsp + 0x38], rbx
mov r11d, r14d
mov r10d, 4
mov r9d, dword [rcx]
lea r8, [rsp + 0x38]
mov rdx, r10
call fcn.140049238
test eax, eax
js 0x14005dac7
mov rcx, qword [rsp + 0x38]
lea r8, [rsp + 0x38]
mov edx, r9d
call fcn.140049238
test eax, eax
js 0x14005dac7
mov rcx, qword [rsp + 0x38]
inc r11d
cmp r11d, 1
jb 0x14005da82
lea r8, [rsp + 0x38]
mov rdx, r10
call fcn.140049238
and qword [rbp + 0x20], 0
mov rsi, qword [rbp + 0x28]
test rsi, rsi
je 0x14005daf9
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 + 0x28], r14
and qword [rbp + 0x70], 0
mov rbx, qword [rbp + 0x78]
test rbx, rbx
je 0x14005db2b
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
test r12, r12
je 0x14005db50
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]
test r13, r13
je 0x14005db75
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 rax, qword [rbp + 0x98]
mov ebx, dword [rbp + 0x88]
mov edi, dword [rbp + 0x94]
mov esi, dword [rbp + 0x8c]
mov r12d, dword [rbp + 0x90]
mov r13, qword [rbp + 0xa8]
mov qword [rbp + 0xa0], rax
mov qword [rbp - 0x20], r14
jmp 0x14005f4fb
mov r9, qword [rbp - 0x20]
lea r8, [rbp + 0x168]
mov edx, 4
mov qword [rbp + 0x168], rcx
mov eax, dword [r9]
mov dword [rcx], eax
call fcn.140049238
mov rbx, qword [rbp - 0x80]
mov esi, eax
mov qword [rbp - 0x78], rbx
mov qword [rbp - 0x70], rcx
mov qword [rbp + 0x170], r9
test eax, eax
js 0x14005dd60
mov r8d, dword [r9]
mov rdx, qword [r9 + 8]
mov rcx, qword [rbp + 0x168]
call sub.msvcrt.dll_memcpy
mov r9, qword [rbp - 0x20]
lea r8, [rbp + 0x168]
mov rcx, qword [rbp + 0x168]
mov edx, dword [r9]
call fcn.140049238
mov r10, qword [rbp - 0x50]
mov esi, eax
mov qword [rbp - 0x70], r10
mov r11, rbx
mov qword [rbp + 0x170], r9
mov qword [rbp - 0x78], rbx
test eax, eax
js 0x14005dd60
mov rcx, qword [rbp + 0x168]
lea r8, [rbp + 0x168]
mov eax, dword [r9 + 0x10]
mov edx, 4
mov dword [rcx], eax
call fcn.140049238
mov qword [rbp - 0x70], r10
mov esi, eax
mov qword [rbp + 0x170], r9
mov qword [rbp - 0x78], rbx
test eax, eax
js 0x14005dd60
mov r8d, dword [r9 + 0x10]
mov rdx, qword [r9 + 0x18]
mov rcx, qword [rbp + 0x168]
call sub.msvcrt.dll_memcpy
mov r9, qword [rbp - 0x20]
lea r8, [rbp + 0x168]
mov rcx, qword [rbp + 0x168]
mov edx, dword [r9 + 0x10]
call fcn.140049238
mov r10, qword [rbp - 0x50]
mov esi, eax
mov qword [rbp - 0x70], r10
mov r11, rbx
mov qword [rbp + 0x170], r9
mov qword [rbp - 0x78], rbx
test eax, eax
js 0x14005dd60
mov rcx, qword [rbp + 0x168]
lea r8, [rbp + 0x168]
mov eax, dword [r9 + 0x20]
mov edx, 4
mov dword [rcx], eax
call fcn.140049238
mov qword [rbp - 0x70], r10
mov esi, eax
mov qword [rbp + 0x170], r9
mov qword [rbp - 0x78], rbx
test eax, eax
js 0x14005dd60
mov r8d, dword [r9 + 0x20]
mov rdx, qword [r9 + 0x28]
mov rcx, qword [rbp + 0x168]
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp - 0x20]
lea r8, [rbp + 0x168]
mov rcx, qword [rbp + 0x168]
mov edx, dword [rax + 0x20]
call fcn.140049238
mov r9, qword [rsp + 0x38]
mov esi, eax
mov rax, qword [rbp - 0x50]
mov r8, r13
mov qword [rbp - 0x70], rax
mov rdx, r12
mov qword [rbp + 0x170], r9
mov rcx, rbx
mov qword [rbp - 0x78], rbx
test esi, esi
js 0x14005dd60
mov r10, rax
mov qword [rsp + 0x48], rax
mov eax, dword [rbp]
mov dword [rbp + 8], eax
mov qword [rbp + 0x170], r9
mov qword [rbp - 0x78], rbx
jmp 0x14005dd8b
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x70]
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 [rbp + 0x170]
mov r10, r14
or esi, 0x10000000
mov r11, r10
jl 0x14005d805
mov dword [rbp + 0x6c], 8
mov edx, dword [rbp - 0x48]
lea r8, [rbp + 0x6c]
mov ecx, 8
call fcn.140049218
mov esi, eax
or esi, 0x10000000
jl 0x14005dfe5
mov eax, dword [rbp + 0x6c]
add rax, 7
and eax, 0xfffffff8
cmp eax, dword [rbp + 0x6c]
jae 0x14005ddd9
mov esi, 0xc0000095
jmp 0x14005d805
mov dword [rbp + 0x84], eax
mov edx, ecx
mov qword [rsp + 0x48], r11
mov ecx, eax
mov qword [rbp + 0x170], r9
lea r8, [rbp + 0x84]
mov r10, rbx
call fcn.140049218
mov esi, eax
test eax, eax
js 0x14005d805
mov r10, r11
mov eax, dword [rbp + 8]
mov dword [rbp + 8], eax
mov qword [rbp + 0x170], r9
mov qword [rsp + 0x48], r11
cmp qword [rbp + 0x28], r14
je 0x14005de35
cmp dword [rbp + 0x20], 1
mov qword [rbp + 0x170], r9
mov qword [rsp + 0x48], r11
ja 0x14005de3f
mov esi, 0xc000000d
jmp 0x14005d805
mov rcx, qword [rbp + 0x28]
mov r11d, r14d
mov qword [rsp + 0x38], rcx
mov qword [rbp - 0x78], rbx
mov eax, dword [rcx]
lea r8, [rsp + 0x38]
mov edx, 4
mov dword [rsp + 0x50], eax
call fcn.140049238
mov esi, eax
test eax, eax
js 0x14005d805
mov edx, dword [rsp + 0x50]
lea r8, [rsp + 0x38]
mov rcx, qword [rsp + 0x38]
call fcn.140049238
mov esi, eax
test eax, eax
js 0x14005d805
mov rcx, qword [rsp + 0x38]
inc r11d
cmp r11d, 1
jb 0x14005de4f
mov eax, dword [rcx]
lea r8, [rsp + 0x38]
mov edx, 4
mov dword [rbp - 0x48], eax
call fcn.140049238
mov esi, eax
test eax, eax
js 0x14005d805
cmp qword [rbp + 0x28], r14
je 0x14005de35
cmp dword [rbp + 0x20], 2
jbe 0x14005de35
mov rcx, qword [rbp + 0x28]
mov r11d, r14d
mov qword [rsp + 0x38], rcx
mov eax, dword [rcx]
lea r8, [rsp + 0x38]
mov edx, 4
mov dword [rsp + 0x50], eax
call fcn.140049238
mov esi, eax
test eax, eax
js 0x14005d805
mov edx, dword [rsp + 0x50]
lea r8, [rsp + 0x38]
mov rcx, qword [rsp + 0x38]
call fcn.140049238
mov esi, eax
test eax, eax
js 0x14005d805
mov rcx, qword [rsp + 0x38]
inc r11d
cmp r11d, 2
jb 0x14005ded7
mov r11d, dword [rcx]
lea r8, [rsp + 0x38]
mov edx, 4
call fcn.140049238
mov esi, eax
test eax, eax
js 0x14005d805
mov edx, dword [rbp + 0x84]
lea r8, [rsp + 0x78]
mov ecx, 4
mov dword [rsp + 0x78], 4
call fcn.140049218
mov esi, eax
test eax, eax
js 0x14005dfc3
mov edx, ecx
lea r8, [rsp + 0x78]
mov ecx, dword [rsp + 0x78]
call fcn.140049218
mov esi, eax
test eax, eax
js 0x14005dfc3
mov edx, dword [rbp - 0x48]
lea r8, [rsp + 0x78]
mov ecx, dword [rsp + 0x78]
call fcn.140049218
mov esi, eax
test eax, eax
js 0x14005dfc3
mov ecx, dword [rsp + 0x78]
lea r8, [rsp + 0x78]
mov edx, 4
call fcn.140049218
mov esi, eax
test eax, eax
js 0x14005dfc3
mov ecx, dword [rsp + 0x78]
lea r8, [rsp + 0x78]
mov edx, r11d
call fcn.140049218
mov esi, eax
test eax, eax
js 0x14005dfc3
mov eax, dword [rsp + 0x78]
jmp 0x14005dfd1
test esi, esi
js 0x14005d805
mov eax, dword [rbp + 0xb4]
mov dword [rbp - 0x68], eax
cmp eax, 0x400000
jbe 0x14005dff0
mov esi, 0x8000ffff
jmp 0x14005d805
test esi, esi
js 0x14005d805
mov eax, dword [rbp - 0x68]
mov qword [rsp + 0x38], rbx
mov rsi, r10
mov ebx, eax
mov qword [rbp], r10
mov qword [rsp + 0x58], r12
mov qword [rbp + 0x168], r13
mov qword [rbp + 0x178], r9
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 qword [rbp - 0x80], rax
mov rbx, rax
test rax, rax
je 0x14005d7fc
test rsi, rsi
jne 0x14005e058
mov esi, 0x80070057
mov qword [rsp + 0x68], rax
jmp 0x14005e0e1
mov eax, dword [rbp + 8]
lea r8, [rbp + 0xc0]
mov dword [rbp + 0xf8], eax
lea rdx, [0x1400aa3d8]
mov eax, dword [rbp - 0x68]
mov ecx, 1
mov dword [rbp + 0xfc], eax
mov qword [rbp + 0xe8], rsi
mov qword [rbp + 0xf0], rbx
mov dword [rbp + 0x100], r14d
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
jne 0x14005e102
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 0x14005e0bd
movzx esi, ax
or esi, 0x80070000
mov r8d, dword [rbp - 0x68]
test esi, esi
mov eax, 0x80004005
cmovns esi, eax
mov qword [rsp + 0x68], rbx
cmp esi, 0xd0000023
jne 0x14005e1b1
mov esi, 0x8007007a
mov rax, qword [rbp + 0x178]
mov rbx, qword [rsp + 0x38]
mov qword [rbp + 0x170], rax
mov rax, qword [rbp]
mov qword [rsp + 0x48], rax
jmp 0x14005d805
mov rcx, qword [rbp + 0xc0]
lea rdx, [0x1400aa660]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
jne 0x14005e153
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 0x14005e13c
movzx esi, ax
or esi, 0x80070000
mov r8d, dword [rbp - 0x68]
test esi, esi
mov eax, 0x80004005
mov dword [rbp - 0x68], r8d
cmovns esi, eax
jmp 0x14005e0cb
movabs r10, 0x86712ea7345e2b70
xor r9d, r9d
lea rdx, [rbp + 0xe8]
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call qword [0x1400a83f0]
mov r8d, dword [rbp - 0x68]
mov esi, eax
or esi, 0x10000000
mov dword [rbp - 0x68], r8d
jl 0x14005e0cb
mov r8d, dword [rbp + 0xfc]
mov r9, rbx
mov r10, qword [rbp]
mov rax, r12
mov r11, qword [rsp + 0x38]
mov rcx, r13
mov rdx, qword [rbp + 0x178]
mov dword [rbp - 0x68], r8d
jmp 0x14005e1e1
mov rdx, qword [rbp + 0x178]
mov r9, rbx
mov r11, qword [rsp + 0x38]
mov rcx, r13
mov r10, qword [rbp]
mov rbx, r11
mov qword [rbp + 0x170], rdx
mov rax, r12
mov qword [rsp + 0x48], r10
test esi, esi
js 0x14005d805
mov qword [rbp + 0x40], r14
mov dword [rsp + 0x78], r14d
mov qword [rbp - 0x48], r9
cmp r8d, 4
jae 0x14005e218
mov qword [rbp + 0x170], rdx
mov r13, rcx
mov r12, rax
mov rbx, r11
mov esi, 0xd000003e
mov qword [rsp + 0x68], r9
mov qword [rsp + 0x48], r10
jmp 0x14005d805
mov eax, dword [r9]
lea r8, [rbp - 0x48]
mov edx, 4
mov dword [rsp + 0x40], eax
mov rcx, r9
call fcn.140049238
mov r13, qword [rbp + 0x168]
mov esi, eax
mov rax, qword [rbp + 0x178]
mov rbx, r11
mov r12, qword [rsp + 0x58]
mov qword [rbp + 0x170], rax
mov qword [rsp + 0x68], r9
mov qword [rbp - 0x70], r13
mov qword [rsp + 0x60], r12
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x48], r10
test esi, esi
js 0x14005ea6f
lea r8, [rsp + 0x78]
mov edx, 4
xor ecx, ecx
call fcn.140049218
mov r8, qword [rbp + 0x178]
mov rdx, r13
mov qword [rbp - 0x70], rdx
mov rcx, r12
mov qword [rsp + 0x68], r9
mov esi, eax
mov qword [rbp + 0x170], r8
mov qword [rsp + 0x60], rcx
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x48], r10
test eax, eax
js 0x14005ea6f
mov eax, dword [rbp - 0x68]
sub eax, dword [rsp + 0x78]
mov ebx, dword [rsp + 0x40]
cmp eax, ebx
jae 0x14005e2cf
mov qword [rbp + 0x170], r8
jmp 0x14005e201
mov rax, qword [rbp - 0x48]
lea r8, [rbp - 0x48]
mov rcx, rax
mov qword [rbp - 0x38], rax
mov rdx, rbx
mov qword [rbp + 0x10], rbx
call fcn.140049238
mov esi, eax
mov qword [rsp + 0x68], r9
mov rax, qword [rbp + 0x178]
mov rbx, r11
mov qword [rbp + 0x170], rax
mov qword [rbp - 0x70], r13
mov qword [rsp + 0x60], r12
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x48], r10
test esi, esi
js 0x14005ea6f
mov edx, dword [rsp + 0x40]
lea r8, [rsp + 0x78]
mov ecx, dword [rsp + 0x78]
call fcn.140049218
mov r8, qword [rbp + 0x178]
mov rdx, r13
mov qword [rbp - 0x70], rdx
mov rcx, r12
mov qword [rsp + 0x68], r9
mov esi, eax
mov qword [rbp + 0x170], r8
mov qword [rsp + 0x60], rcx
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x48], r10
test eax, eax
js 0x14005ea6f
mov eax, dword [rbp - 0x68]
sub eax, dword [rsp + 0x78]
cmp eax, 4
jae 0x14005e37b
mov qword [rbp + 0x170], r8
jmp 0x14005e204
mov rcx, qword [rbp - 0x48]
lea r8, [rbp - 0x48]
mov edx, 4
mov eax, dword [rcx]
mov dword [rbp + 8], eax
call fcn.140049238
mov esi, eax
mov qword [rsp + 0x68], r9
mov rax, qword [rbp + 0x178]
mov qword [rbp + 0x170], rax
mov qword [rbp - 0x70], r13
mov qword [rsp + 0x60], r12
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x48], r10
test esi, esi
js 0x14005ea6f
mov ecx, dword [rsp + 0x78]
lea r8, [rsp + 0x78]
mov edx, 4
call fcn.140049218
mov r8, qword [rbp + 0x178]
mov rdx, r13
mov qword [rbp - 0x70], rdx
mov rcx, r12
mov qword [rsp + 0x68], r9
mov esi, eax
mov qword [rbp + 0x170], r8
mov qword [rsp + 0x60], rcx
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x48], r10
test eax, eax
js 0x14005ea6f
mov eax, dword [rbp - 0x68]
sub eax, dword [rsp + 0x78]
mov ebx, dword [rbp + 8]
cmp eax, ebx
jb 0x14005e2c3
mov rax, qword [rbp - 0x48]
lea r8, [rbp - 0x48]
mov rcx, rax
mov qword [rbp + 0x30], rax
mov edx, ebx
mov qword [rbp - 0x28], rbx
call fcn.140049238
mov esi, eax
mov qword [rsp + 0x68], r9
mov rax, qword [rbp + 0x178]
mov rbx, r11
mov qword [rbp + 0x170], rax
mov qword [rbp - 0x70], r13
mov qword [rsp + 0x60], r12
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x48], r10
test esi, esi
js 0x14005ea6f
mov edx, dword [rbp + 8]
lea r8, [rsp + 0x78]
mov ecx, dword [rsp + 0x78]
call fcn.140049218
mov r8, qword [rbp + 0x178]
mov rdx, r13
mov qword [rbp - 0x70], rdx
mov rcx, r12
mov qword [rsp + 0x68], r9
mov esi, eax
mov qword [rbp + 0x170], r8
mov qword [rsp + 0x60], rcx
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x48], r10
test eax, eax
js 0x14005ea6f
mov eax, dword [rbp - 0x68]
sub eax, dword [rsp + 0x78]
cmp eax, 4
jb 0x14005e36f
mov rcx, qword [rbp - 0x48]
lea r8, [rbp - 0x48]
mov edx, 4
mov eax, dword [rcx]
mov dword [rbp - 0x58], eax
call fcn.140049238
mov esi, eax
mov qword [rsp + 0x68], r9
mov rax, qword [rbp + 0x178]
mov qword [rbp + 0x170], rax
mov qword [rbp - 0x70], r13
mov qword [rsp + 0x60], r12
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x48], r10
test esi, esi
js 0x14005ea6f
mov ecx, dword [rsp + 0x78]
lea r8, [rsp + 0x78]
mov edx, 4
call fcn.140049218
mov r8, qword [rbp + 0x178]
mov rdx, r13
mov qword [rbp - 0x70], rdx
mov rcx, r12
mov qword [rsp + 0x68], r9
mov esi, eax
mov qword [rbp + 0x170], r8
mov qword [rsp + 0x60], rcx
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x48], r10
test eax, eax
js 0x14005ea6f
mov eax, dword [rbp - 0x68]
sub eax, dword [rsp + 0x78]
mov ebx, dword [rbp - 0x58]
cmp eax, ebx
jb 0x14005e2c3
mov ecx, dword [rsp + 0x78]
lea r8, [rsp + 0x78]
mov edx, ebx
call fcn.140049218
mov rcx, qword [rbp + 0x178]
mov rdx, r12
mov qword [rsp + 0x60], rdx
mov rbx, r11
mov qword [rsp + 0x68], r9
mov esi, eax
mov qword [rbp + 0x170], rcx
mov r8, r13
mov qword [rbp - 0x70], r13
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x48], r10
test eax, eax
js 0x14005ea6f
mov ebx, dword [rbp - 0x68]
cmp ebx, dword [rsp + 0x78]
je 0x14005e5ba
mov qword [rbp + 0x170], rcx
jmp 0x14005e201
mov ecx, dword [rsp + 0x40]
add ecx, dword [rbp + 8]
add ecx, dword [rbp - 0x58]
add rcx, 0xc
cmp rcx, rbx
je 0x14005e5e0
mov rax, qword [rbp + 0x178]
mov qword [rbp + 0x170], rax
jmp 0x14005e201
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 rdx, rax
mov qword [rsp + 0x50], rax
test rax, rax
mov rax, qword [rbp - 0x80]
mov qword [rsp + 0x68], rax
jne 0x14005e624
mov esi, 0xd0000017
jmp 0x14005e0e1
mov esi, r14d
mov r8, qword [rsp + 0x38]
mov rbx, r8
mov rcx, qword [rbp]
mov r9, r12
mov r11, qword [rbp + 0x178]
mov r10, r13
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x60], r12
mov qword [rbp - 0x70], r13
mov qword [rbp + 0x170], r11
cmp qword [rbp - 0x38], r14
je 0x14005e6e4
mov eax, dword [rsp + 0x40]
mov dword [rdx], eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x10]
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 rcx, rax
test rax, rax
jne 0x14005e6c7
mov rax, qword [rbp - 0x80]
mov qword [rsp + 0x68], rax
mov rax, qword [rbp + 0x178]
mov qword [rbp + 0x170], rax
mov rax, qword [rbp]
mov qword [rsp + 0x48], rax
mov qword [rbp - 0x70], r13
mov qword [rsp + 0x60], r12
mov qword [rbp - 0x78], rbx
jmp 0x14005e7ef
mov rax, qword [rsp + 0x50]
mov qword [rax + 8], rcx
mov r8, qword [rbp + 0x10]
mov rdx, qword [rbp - 0x38]
call sub.msvcrt.dll_memcpy
mov rdx, qword [rsp + 0x50]
jmp 0x14005e709
mov dword [rdx], r14d
mov qword [rdx + 8], r14
mov qword [rsp + 0x68], rax
mov qword [rbp + 0x170], r11
mov qword [rbp - 0x70], r13
mov qword [rsp + 0x60], r12
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x50], rdx
cmp qword [rbp + 0x30], r14
je 0x14005e7a2
mov eax, dword [rbp + 8]
mov dword [rdx + 0x10], eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x28]
mov edx, 8
mov 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 0x14005e7ef
mov rax, qword [rsp + 0x50]
mov qword [rax + 0x18], rcx
mov r8, qword [rbp - 0x28]
mov esi, r14d
mov rdx, qword [rbp + 0x30]
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x170]
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x68]
mov qword [rbp + 0x170], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x68], rcx
mov qword [rbp - 0x70], r13
mov qword [rsp + 0x60], r12
mov qword [rbp - 0x78], rbx
jmp 0x14005e7aa
mov dword [rdx + 0x10], r14d
mov qword [rdx + 0x18], r14
cmp qword [rbp - 0x48], r14
je 0x14005e914
mov eax, dword [rbp - 0x58]
mov dword [rdx + 0x20], eax
mov esi, eax
mov qword [rbp + 0x10], rax
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 rcx, rax
test rax, rax
jne 0x14005e8c5
mov esi, 0xc0000017
mov rax, qword [rsp + 0x50]
mov rcx, qword [rax + 8]
mov qword [rbp + 0x10], rcx
test rcx, rcx
je 0x14005e830
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x10]
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 rax, qword [rsp + 0x50]
mov qword [rax + 8], r14
mov rcx, qword [rax + 0x18]
mov qword [rbp + 0x10], rcx
test rcx, rcx
je 0x14005e867
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x10]
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 rax, qword [rsp + 0x50]
mov qword [rax + 0x18], r14
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x10], rax
test rax, rax
je 0x14005e89e
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x10]
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 rax, qword [rsp + 0x50]
mov qword [rax + 0x28], r14
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rsp + 0x50]
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 rcx, r14
jmp 0x14005e923
mov rax, qword [rsp + 0x50]
mov qword [rax + 0x28], rcx
mov r8, qword [rbp + 0x10]
mov esi, r14d
mov rdx, qword [rbp - 0x48]
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x68], rax
mov rax, qword [rbp + 0x170]
mov qword [rbp + 0x170], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x48], rax
mov qword [rbp - 0x70], r13
mov qword [rsp + 0x60], r12
mov qword [rbp - 0x78], rbx
jmp 0x14005e91c
mov dword [rdx + 0x20], r14d
mov qword [rdx + 0x28], r14
mov rcx, rdx
mov qword [rbp + 0x40], rdx
mov rdx, qword [rsp + 0x48]
mov r8, rbx
mov rax, qword [rbp + 0x170]
mov r9, qword [rsp + 0x68]
mov qword [rbp - 0x20], rdx
mov qword [rbp - 0x38], rax
mov qword [rbp + 0x10], r9
mov qword [rbp - 0x50], rbx
mov dword [rbp], esi
test esi, esi
js 0x14005e95a
mov r9, rcx
mov qword [rbp - 0x40], rcx
jmp 0x14005ea72
mov rbx, qword [rbp + 0x10]
mov r9, r14
mov qword [rsp + 0x68], rbx
mov rbx, r8
mov qword [rbp - 0x78], rbx
mov qword [rbp - 0x40], r14
mov qword [rbp + 0x170], rax
mov qword [rbp - 0x70], r13
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x48], rdx
test rcx, rcx
je 0x14005ea72
mov rbx, qword [rbp + 0x40]
mov rsi, qword [rbx + 8]
test rsi, rsi
je 0x14005e9c0
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 [rbx + 8], r14
mov rsi, qword [rbx + 0x18]
test rsi, rsi
je 0x14005e9ed
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 [rbx + 0x18], r14
mov rsi, qword [rbx + 0x28]
test rsi, rsi
je 0x14005ea1a
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 [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 rax, qword [rbp + 0x10]
mov rbx, qword [rbp - 0x50]
mov esi, dword [rbp]
mov qword [rsp + 0x68], rax
mov rax, qword [rbp - 0x38]
mov qword [rbp + 0x170], rax
mov rax, qword [rbp - 0x20]
mov qword [rsp + 0x48], rax
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x70], r13
mov qword [rsp + 0x60], r12
mov qword [rbp - 0x78], rbx
mov r9, r14
or esi, 0x10000000
jl 0x14005d805
test r9, r9
jne 0x14005ea8d
mov esi, 0xd000000d
jmp 0x14005d805
mov rax, qword [r9 + 8]
mov qword [rbp - 0x28], rax
test rax, rax
je 0x14005ea83
cmp dword [r9], r14d
je 0x14005ea83
mov esi, dword [r9]
add rsi, 0xfffffffffffffff8
mov rcx, rsi
mov qword [rsp + 0x58], rsi
call fcn.1400491b4
mov qword [rbp - 0x38], rax
mov r10, rax
test rax, rax
je 0x14005efa3
mov r9, qword [rbp - 0x28]
mov r8, rsi
mov r11, qword [rbp - 0x40]
and r8d, 7
mov dl, r14b
mov qword [rbp + 0x10], r8
mov byte [rbp - 0x60], dl
mov rcx, rax
mov qword [rbp + 0x168], rdi
mov qword [rbp - 0x80], r9
mov qword [rbp - 0x20], rax
je 0x14005efea
test r8d, r8d
je 0x14005efc1
mov rax, qword [rbp + 0x170]
mov r10d, r14d
mov r8, qword [rsp + 0x48]
mov r15d, r14d
mov r9, qword [rsp + 0x68]
mov rsi, qword [rbp + 0x10]
mov rdi, qword [rbp - 0x80]
movzx ecx, byte [rdi]
inc rdi
mov dword [rbp - 0x58], ecx
mov ecx, dword [rbp + 0x38]
cmp r14d, 4
jae 0x14005eb3d
add ecx, 0xffffffe0
shl dword [rbp - 0x58], cl
or r10d, dword [rbp - 0x58]
mov ecx, dword [rbp + 0x38]
jmp 0x14005eb44
shl dword [rbp - 0x58], cl
or r15d, dword [rbp - 0x58]
sub ecx, 8
inc r14d
mov dword [rbp + 0x38], ecx
cmp r14d, esi
jl 0x14005eb1c
mov esi, r10d
mov dword [rbp + 8], r10d
mov r10, qword [rbp - 0x38]
mov ecx, r15d
xor esi, 0x92f65a5
mov dword [rbp + 0x50], r15d
mov r15d, dword [rsp + 0x30]
xor ecx, 0x699a899c
xor r14d, r14d
mov qword [rbp - 0x80], rdi
mov qword [rsp + 0x68], r9
mov edx, esi
mov qword [rbp + 0x170], rax
mov r9d, r14d
mov qword [rsp + 0x48], r8
movabs rdi, 0x7f1137fab69605e
mov r8, qword [rbp + 0x10]
mov rax, r10
mov dword [rbp - 0x58], ecx
mov qword [rbp - 0x40], r11
mov qword [rbp - 0x70], r13
mov qword [rsp + 0x60], r12
mov qword [rbp - 0x78], rbx
lea r11, [rax + 1]
mov qword [rbp + 0x10], r11
cmp r9d, 4
jge 0x14005ebcd
rol edx, 8
mov r11d, edx
jmp 0x14005ebd3
rol ecx, 8
mov r11d, ecx
mov byte [rax], r11b
inc r9d
mov r11, qword [rbp + 0x10]
mov rax, r11
cmp r9d, r8d
jl 0x14005ebb7
mov dl, byte [rbp - 0x60]
mov rcx, r11
mov r11, qword [rbp - 0x40]
mov qword [rbp - 0x20], rcx
cmp r8d, 4
jbe 0x14005efb1
mov eax, dword [rbp - 0x58]
mov ecx, 8
sub ecx, r8d
shl ecx, 3
shr eax, cl
shl eax, cl
mov rcx, qword [rbp - 0x20]
mov dword [rbp - 0x58], eax
mov r9, qword [rbp - 0x80]
mov rax, qword [rsp + 0x58]
shr rax, 3
mov qword [rbp + 0x10], rax
test rax, rax
je 0x14005ef32
movzx eax, word [rbp + 0x16a]
lea r12, [rcx + 7]
mov ebx, dword [rbp + 0x16c]
lea r15, [r9 + 2]
mov edx, dword [rbp - 0x58]
mov r11d, dword [rbp + 8]
mov r14, qword [rbp + 0x10]
mov dword [rbp - 0x48], eax
movzx eax, di
mov dword [rbp - 0x68], eax
mov eax, ebx
xor eax, edi
movzx r8d, bx
mov r13d, eax
mov dword [rbp], r8d
movzx eax, byte [r15 - 1]
mov r8d, ebx
movzx r10d, byte [r15 - 2]
movzx r9d, byte [r15 + 2]
shl r10d, 8
or r10d, eax
shl r9d, 8
movzx eax, byte [r15]
lea r15, [r15 + 8]
shl r10d, 8
or r10d, eax
movzx eax, byte [r15 - 7]
shl r10d, 8
or r10d, eax
movzx eax, byte [r15 - 5]
or r9d, eax
xor esi, r10d
movzx eax, byte [r15 - 4]
shl r9d, 8
or r9d, eax
movzx eax, byte [r15 - 3]
shl r9d, 8
or r9d, eax
xor edx, r9d
xor r8d, edx
mov edx, dword [rbp]
xor r8d, esi
xor r8d, edi
mov ecx, r8d
mov eax, r8d
sub ecx, edi
rol eax, 0xa
rol ecx, 5
imul ecx, edx
add ecx, eax
movzx eax, word [rbp + 0x16a]
xor esi, ecx
lea ecx, [rbx + rsi]
ror ecx, 9
imul ecx, eax
mov eax, esi
rol eax, 2
sub ecx, eax
xor r8d, ecx
mov ecx, r8d
mov eax, r8d
sub ecx, edx
shr eax, 0xd
imul ecx, dword [rbp - 0x68]
sub ecx, eax
movzx eax, word [rbp + 0x16e]
xor esi, ecx
movzx ecx, word [rbp + 0x16a]
xor ecx, esi
rol ecx, 6
imul ecx, eax
mov eax, esi
rol eax, 2
sub ecx, eax
mov eax, ebx
xor r8d, ecx
mov ecx, r8d
xor ecx, edi
sub eax, ecx
xor esi, eax
mov eax, edx
xor eax, esi
mov ecx, esi
imul eax, dword [rbp - 0x48]
ror ecx, 6
xor ecx, eax
xor r8d, ecx
mov eax, r8d
rol eax, 2
lea ecx, [rbx + r8]
ror ecx, 0xf
imul ecx, dword [rbp - 0x68]
add ecx, eax
xor esi, ecx
mov ecx, esi
sub ecx, edi
ror ecx, 0xe
movzx eax, word [rbp + 0x16e]
imul ecx, eax
mov eax, esi
rol eax, 8
sub ecx, eax
xor r8d, ecx
mov ecx, r8d
mov eax, r8d
xor ecx, edi
ror eax, 0xa
ror ecx, 0xc
imul ecx, edx
xor ecx, eax
movzx eax, word [rbp + 0x16a]
xor esi, ecx
movzx ecx, word [rbp + 0x16e]
xor ecx, esi
imul ecx, eax
mov eax, esi
shr eax, 0xa
xor ecx, eax
xor r8d, ecx
movzx ecx, word [rbp + 0x16e]
mov eax, r8d
not eax
ror eax, 5
add eax, dword [rbp - 0x68]
imul eax, ecx
xor esi, eax
mov edx, esi
sub edx, ecx
xor edx, r8d
mov r8d, dword [rbp]
xor edx, edi
xor ecx, edx
mov eax, edx
rol ecx, 2
imul ecx, r8d
shr eax, 2
add ecx, eax
movzx eax, word [rbp + 0x16a]
xor esi, ecx
mov ecx, esi
sub ecx, ebx
ror ecx, 6
imul ecx, eax
mov eax, esi
rol eax, 7
add ecx, eax
mov eax, r8d
xor edx, ecx
xor eax, edx
mov ecx, edx
imul eax, dword [rbp - 0x68]
ror ecx, 9
add ecx, eax
movzx eax, word [rbp + 0x16e]
xor esi, ecx
movzx ecx, word [rbp + 0x16a]
xor ecx, esi
rol ecx, 5
imul ecx, eax
mov eax, esi
rol eax, 7
add ecx, eax
mov eax, r13d
xor edx, ecx
movzx ecx, word [rbp + 0x16a]
xor eax, edx
xor esi, eax
mov eax, esi
ror eax, 3
sub eax, ecx
imul eax, r8d
xor edx, eax
mov ecx, edx
mov eax, edx
sub ecx, ebx
ror ecx, 1
imul ecx, dword [rbp - 0x68]
ror eax, 6
sub ecx, eax
movzx eax, word [rbp + 0x16e]
xor esi, ecx
lea ecx, [rsi + rdi]
rol ecx, 3
imul ecx, eax
mov eax, esi
rol eax, 0xe
add ecx, eax
xor edx, ecx
mov eax, edx
ror eax, 0xe
lea ecx, [rdx + rdi]
rol ecx, 0xf
imul ecx, r8d
sub ecx, eax
movzx eax, word [rbp + 0x16a]
xor esi, ecx
mov ecx, dword [rbp - 0x68]
xor ecx, esi
imul ecx, eax
mov eax, esi
shr eax, 3
xor ecx, eax
xor edx, ecx
mov ecx, ebx
xor ecx, edx
mov eax, edx
xor edx, dword [rbp + 0x50]
rol ecx, 4
imul ecx, dword [rbp - 0x68]
rol eax, 2
mov dword [rbp + 0x50], r9d
xor ecx, eax
xor ecx, r11d
mov r11d, r10d
xor esi, ecx
mov byte [r12 - 4], sil
mov byte [r12], dl
lea r12, [r12 + 8]
ror esi, 8
mov byte [r12 - 0xd], sil
ror edx, 8
mov byte [r12 - 9], dl
ror esi, 8
mov byte [r12 - 0xe], sil
ror edx, 8
mov byte [r12 - 0xa], dl
ror esi, 8
ror edx, 8
mov byte [r12 - 0xf], sil
mov byte [r12 - 0xb], dl
ror edx, 8
ror esi, 8
sub r14, 1
jne 0x14005ec68
mov dl, byte [rbp - 0x60]
mov r15d, dword [rsp + 0x30]
mov r12, qword [rsp + 0x60]
mov r13, qword [rbp - 0x70]
mov rbx, qword [rbp - 0x78]
mov r11, qword [rbp - 0x40]
mov r10, qword [rbp - 0x38]
mov rsi, qword [rsp + 0x58]
mov rax, r14
test rsi, rsi
je 0x14005ef4b
xor dl, byte [r10 + rax]
inc rax
cmp rax, rsi
jb 0x14005ef3f
mov rdi, qword [rbp + 0x170]
mov r9, r11
mov rax, qword [rsp + 0x48]
mov r8, rdi
mov rcx, qword [rsp + 0x68]
mov qword [rbp + 0x168], rax
mov qword [rsp + 0x48], rax
movzx eax, dl
mov rdx, qword [rbp - 0x28]
mov qword [rbp - 0x50], rdi
mov qword [rbp + 0x170], rdi
mov rdi, rcx
mov qword [rsp + 0x60], rbx
mov qword [rbp + 0x10], rcx
mov qword [rsp + 0x68], rcx
mov qword [rbp - 0x40], r11
cmp rax, qword [rsi + rdx]
je 0x14005effa
mov rcx, r10
call fcn.140017620
mov esi, 0xd0000001
mov qword [rbp - 0x18], r14
jmp 0x14005d805
mov dword [rbp - 0x58], r14d
jae 0x14005ec16
mov r9, qword [rbp - 0x80]
jmp 0x14005efd2
mov esi, 0x92f65a5
mov dword [rbp + 8], r14d
mov dword [rbp + 0x50], r14d
mov dword [rbp - 0x58], r14d
mov ecx, 4
sub ecx, r8d
shl ecx, 3
shr esi, cl
shl esi, cl
mov rcx, qword [rbp - 0x20]
jmp 0x14005ec1a
mov dword [rbp + 8], r14d
mov esi, r14d
mov dword [rbp - 0x58], r14d
jmp 0x14005ec1a
mov dword [rbp - 0x58], r14d
mov qword [rbp - 0x70], r10
cmp esi, 4
jae 0x14005f031
mov qword [rsp + 0x68], rcx
mov esi, 0xc000003e
mov rcx, qword [rbp + 0x168]
mov qword [rsp + 0x48], rcx
mov qword [rbp - 0x18], r10
mov qword [rbp - 0x40], r9
mov qword [rbp + 0x170], r8
jmp 0x14005f4c6
mov eax, dword [r10]
lea r8, [rbp - 0x70]
mov edx, 4
mov dword [rbp - 0x48], eax
mov rcx, r10
call fcn.140049238
mov r11, qword [rbp - 0x50]
mov esi, eax
mov rcx, qword [rbp + 0x168]
mov qword [rbp + 0x170], r11
mov qword [rsp + 0x48], rcx
mov qword [rbp - 0x18], r10
mov qword [rbp - 0x40], r9
mov qword [rsp + 0x68], rdi
test eax, eax
js 0x14005f4c6
lea r8, [rbp - 0x58]
mov edx, 4
xor ecx, ecx
call fcn.140049218
mov esi, eax
mov qword [rbp - 0x18], r10
mov rax, qword [rbp + 0x168]
mov rcx, r13
mov qword [rsp + 0x48], rax
mov rdx, r12
mov qword [rbp - 0x40], r9
mov r8, rbx
mov qword [rsp + 0x68], rdi
mov qword [rbp + 0x170], r11
test esi, esi
js 0x14005f4c6
mov eax, dword [rsp + 0x58]
sub eax, dword [rbp - 0x58]
cmp eax, 4
jae 0x14005f0ef
mov qword [rbp + 0x170], r11
mov rax, qword [rbp + 0x168]
mov esi, 0xc000003e
mov qword [rsp + 0x48], rax
mov qword [rbp - 0x18], r10
mov qword [rbp - 0x40], r9
mov qword [rsp + 0x68], rdi
jmp 0x14005f4c6
mov rcx, qword [rbp - 0x70]
lea r8, [rbp - 0x70]
mov edx, 4
mov eax, dword [rcx]
mov dword [rbp + 0x38], eax
call fcn.140049238
mov esi, eax
mov qword [rbp - 0x18], r10
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x48], rax
mov qword [rbp - 0x40], r9
mov qword [rsp + 0x68], rdi
mov qword [rbp + 0x170], r11
test esi, esi
js 0x14005f4c6
mov ecx, dword [rbp - 0x58]
lea r8, [rbp - 0x58]
mov edx, 4
call fcn.140049218
mov esi, eax
mov qword [rbp - 0x18], r10
mov rax, qword [rbp + 0x168]
mov rcx, r13
mov qword [rsp + 0x48], rax
mov rdx, r12
mov qword [rbp - 0x40], r9
mov r8, rbx
mov qword [rsp + 0x68], rdi
mov qword [rbp + 0x170], r11
test esi, esi
js 0x14005f4c6
mov eax, dword [rsp + 0x58]
sub eax, dword [rbp - 0x58]
mov ebx, dword [rbp + 0x38]
cmp eax, ebx
jae 0x14005f18a
mov rbx, r8
jmp 0x14005f0c5
mov ecx, dword [rbp - 0x58]
lea r8, [rbp - 0x58]
mov edx, ebx
call fcn.140049218
mov rbx, qword [rsp + 0x60]
mov esi, eax
mov rax, qword [rbp + 0x168]
mov r8, r11
mov qword [rsp + 0x48], rax
mov rdx, r13
mov qword [rbp - 0x18], r10
mov qword [rbp - 0x40], r9
mov qword [rsp + 0x68], rdi
mov qword [rbp + 0x170], r11
test esi, esi
js 0x14005f4c6
mov esi, dword [rbp + 0x38]
mov r11d, dword [rsp + 0x58]
mov rbx, qword [rbp - 0x70]
mov qword [rbp], rsi
lea rcx, [r11 + r10]
lea rax, [rsi + rbx]
cmp rcx, rax
jb 0x14005f4b1
sub r11, rsi
sub r11, rbx
add r11, r10
cmp r11, 8
jae 0x14005f4b1
mov rax, qword [rbp + 0x168]
mov rcx, r14
mov rbx, qword [rsp + 0x60]
mov esi, r14d
mov qword [rsp + 0x48], rax
mov rax, qword [rbp - 0x70]
mov qword [rbp - 0x38], rcx
mov dword [rsp + 0x40], r14d
mov qword [rbp - 0x18], r10
mov qword [rbp - 0x40], r9
mov qword [rsp + 0x68], rdi
mov qword [rbp + 0x170], r8
mov qword [rbp - 0x78], rbx
test rax, rax
je 0x14005f42e
mov rdx, qword [rbp]
lea r8, [rbp - 0x80]
mov rcx, rax
mov qword [rbp - 0x20], rax
call fcn.140049238
mov rdx, qword [rbp - 0x50]
mov esi, eax
mov rax, qword [rbp + 0x168]
mov r8, r13
mov qword [rsp + 0x48], rax
mov rcx, rbx
mov qword [rbp - 0x18], r10
mov qword [rbp - 0x40], r9
mov qword [rsp + 0x68], rdi
mov qword [rbp + 0x170], rdx
mov qword [rbp - 0x78], rbx
test esi, esi
js 0x14005f4c2
mov rcx, qword [rbp + 0x168]
mov rax, r12
mov qword [rsp + 0x48], rcx
mov rcx, qword [rbp - 0x20]
mov qword [rbp - 0x18], r10
mov qword [rbp - 0x40], r9
mov qword [rsp + 0x68], rdi
mov qword [rbp + 0x170], rdx
mov qword [rbp - 0x78], rbx
cmp rcx, qword [rbp - 0x80]
jae 0x14005f422
mov r11, qword [rbp + 0x10]
mov rdi, r9
mov qword [rbp - 0x18], r10
mov r10, qword [rbp + 0x168]
mov qword [rbp - 0x40], r9
mov r9, rdx
mov qword [rsp + 0x48], r10
mov qword [rsp + 0x68], r11
mov qword [rbp + 0x170], rdx
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x38], r11
lea r8, [rbp - 0x28]
mov r11, qword [rbp - 0x18]
mov edx, 4
mov qword [rbp - 0x50], r11
mov qword [rbp + 0x40], rbx
mov qword [rsp + 0x60], r9
call fcn.140049238
mov esi, eax
test eax, eax
js 0x14005f49a
mov rax, qword [rbp - 0x80]
cmp qword [rbp - 0x28], rax
ja 0x14005f418
mov edx, dword [rcx]
lea r8, [rsp + 0x50]
mov ecx, 4
call fcn.140049218
mov esi, eax
test eax, eax
js 0x14005f4c6
mov edx, dword [rsp + 0x50]
lea r8, [rbp + 0x168]
mov rcx, qword [rbp - 0x20]
call fcn.140049238
mov rdx, qword [rbp + 0x40]
mov esi, eax
mov qword [rbp - 0x18], r11
mov rbx, r13
mov r11, qword [rsp + 0x38]
mov r8, r12
mov qword [rsp + 0x68], r11
mov qword [rbp - 0x78], rdx
mov qword [rbp - 0x40], rdi
mov qword [rbp + 0x170], r9
mov qword [rsp + 0x48], r10
test eax, eax
js 0x14005f49a
mov rcx, qword [rbp + 0x168]
mov rbx, rdx
mov rax, qword [rbp - 0x80]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x40], rdi
mov qword [rsp + 0x68], r11
mov qword [rbp + 0x170], r9
mov qword [rsp + 0x48], r10
cmp rcx, rax
ja 0x14005f406
mov r12, qword [rbp - 0x50]
inc dword [rsp + 0x40]
mov qword [rbp - 0x18], r12
mov r12, r8
mov qword [rbp - 0x78], rdx
cmp rcx, rax
jb 0x14005f2f5
mov r9, qword [rbp - 0x50]
mov qword [rbp - 0x18], r9
mov r9, qword [rsp + 0x60]
mov qword [rbp + 0x170], r9
mov qword [rbp - 0x40], rdi
mov qword [rsp + 0x68], r11
mov qword [rbp - 0x78], rdx
mov qword [rsp + 0x48], r10
jmp 0x14005f426
mov rax, qword [rbp - 0x50]
mov esi, 0xc000000d
mov qword [rbp - 0x18], rax
jmp 0x14005f4c6
mov esi, 0xc000000d
jmp 0x14005f4c6
mov rax, qword [rbp - 0x80]
cmp rcx, rax
jne 0x14005f418
mov rcx, r14
cmp dword [rbp + 0x38], r14d
je 0x14005f473
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov rdi, qword [rbp]
mov edx, 8
mov rcx, rax
mov r8, rdi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov qword [rbp - 0x38], rax
mov rcx, rax
test rax, rax
jne 0x14005f46e
mov esi, 0xc0000017
jmp 0x14005f4c6
mov esi, r14d
jmp 0x14005f477
mov rdi, qword [rbp]
mov rbx, qword [rbp - 0x70]
test rbx, rbx
je 0x14005f48f
mov r8, rdi
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov rcx, qword [rbp - 0x38]
mov eax, dword [rsp + 0x40]
mov dword [rbp + 0x70], eax
mov qword [rbp + 0x78], rcx
test esi, esi
js 0x14005f4c2
mov eax, dword [rbp - 0x48]
mov rbx, qword [rbp - 0x78]
cmp eax, dword [rbp + 0x70]
je 0x14005f4c6
mov esi, 0xc000003e
jmp 0x14005f4c6
mov rbx, qword [rsp + 0x60]
mov qword [rbp + 0x170], r8
jmp 0x14005f0cc
mov rbx, qword [rbp - 0x78]
bts esi, 0x1c
jmp 0x14005d805
mov rbx, qword [rbp - 0x78]
mov esi, 0xd0000001
jmp 0x14005d80a
mov edi, dword [rbp + 0x94]
mov esi, dword [rbp + 0x8c]
mov r12d, dword [rbp + 0x90]
mov r13, qword [rbp + 0xa8]
mov ebx, dword [rsp + 0x50]
lea rcx, [rbp - 0x20]
call fcn.1400491e8
test r15d, r15d
jns 0x14005f55c
cmp r15d, 0xd0000034
jne 0x14005f51b
mov dword [rbp + 0x54], 0xc004f012
jmp 0x14005f56a
cmp r15d, 0xd00000e5
je 0x14005f553
cmp r15d, 0xc004d501
je 0x14005f553
cmp r15d, 0xd000003e
jne 0x14005f53f
mov dword [rbp + 0x54], 0xc004f028
jmp 0x14005f56a
mov dword [rbp + 0x54], r15d
cmp r15d, 0x8007007a
jne 0x14005f56a
mov ebx, 0xc004f01e
jmp 0x14005f56d
mov dword [rbp + 0x54], 0xc004f027
jmp 0x14005f56a
cmp ebx, 4
jne 0x14005f54c
mov rax, qword [rbp + 0xa0]
mov edi, dword [rax]
mov ebx, dword [rbp + 0x54]
lea rcx, [rbp + 0xa0]
call fcn.1400491e8
test ebx, ebx
js 0x14005f605
cmp edi, 1
jne 0x14005f605
mov rcx, qword [0x1400c72a8]
lea r15, [0x1400c72a8]
cmp rcx, r15
je 0x14005f5b2
test byte [rcx + 0x44], 0x80
je 0x14005f5b2
mov rcx, qword [rcx + 0x38]
lea edx, [rdi + 0x10]
lea r8, [0x1400bc160]
call fcn.14001c1cc
mov rax, qword [rbp + 0xc8]
mov r9d, r12d
mov r8, qword [rbp + 0xd0]
mov edx, esi
mov rcx, r13
mov qword [rsp + 0x20], rax
call fcn.1400585c4
mov r14d, eax
mov rax, qword [0x1400c72a8]
cmp rax, r15
je 0x14005f690
test byte [rax + 0x44], 0x80
je 0x14005f652
mov rcx, qword [rax + 0x38]
lea r8, [0x1400bc160]
mov edx, 0x12
mov r9d, r14d
call fcn.14001c1f8
jmp 0x14005f64b
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 [0x1400c72a8]
lea r15, [0x1400c72a8]
cmp rax, r15
je 0x14005f690
test byte [rax + 0x44], 0x20
je 0x14005f652
mov rcx, qword [rax + 0x38]
lea edx, [rdi + 6]
mov r9d, ebx
mov dword [rsp + 0x20], edi
lea r8, [0x1400bc160]
call fcn.140056114
mov rax, qword [0x1400c72a8]
cmp rax, r15
je 0x14005f690
test byte [rax + 0x44], 0x80
je 0x14005f690
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x1400c72a8]
lea r8, [0x1400bc160]
mov dword [rsp + 0x28], eax
mov edx, 0x14
mov r9d, r14d
mov dword [rsp + 0x20], ebx
mov rcx, qword [rcx + 0x38]
call fcn.140049ad4
mov eax, r14d
mov rcx, qword [rbp + 0x180]
xor rcx, rsp
call fcn.14000f060
add rsp, 0x298
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret