Function at 0x140017020
Capabilities:
Execute anti-debugging instructions
Link many functions at runtime
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1348]
mov eax, 0x1420
call fcn.14012bc00
sub rsp, rax
mov rax, qword [0x140379a08]
xor rax, rsp
mov qword [rbp + 0x1310], rax
xor r15d, r15d
mov qword [rbp + 0x308], r15
mov dword [rbp + 0x120], r15d
mov dword [rbp + 0x12c], r15d
lea ecx, [r15 + 1]
mov dword [rbp + 0x130], r15d
mov qword [rbp + 0x28], r15
mov dword [rbp + 0x134], r15d
jmp 0x140154e52
test r12d, r12d
js 0x14015fa52
cmp ebx, r13d
jne 0x140017104
mov rax, qword [rbp + 0x308]
mov ecx, dword [rax]
mov dword [rbp + 0x1f4], ecx
lea rcx, [rbp + 0x308]
call fcn.14008fc78
cmp dword [rbp + 0x120], r15d
mov ecx, dword [rbp + 0x1f4]
cmovl ecx, r15d
test ecx, ecx
setne r15b
mov eax, r15d
mov rcx, qword [rbp + 0x1310]
xor rcx, rsp
call fcn.1400a2260
lea r11, [rsp + 0x1420]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov dword [rbp + 0x120], 0xc004f01e
jmp 0x1400170ad
xor eax, eax
lock cmpxchg dword [0x14037d0a0], ecx
jne 0x140154e52
mov eax, dword [0x14037bd98]
or edi, 0xffffffff
mov dword [rbp + 0x20], edi
mov ebx, 0x338
mov r13d, 4
test eax, eax
jne 0x140155401
mov ecx, ebx
mov dword [rbp - 0x40], r15d
mov qword [rbp + 0x310], r15
mov qword [rbp + 0x3a8], r15
call fcn.140092328
mov qword [rsp + 0x68], rax
test rax, rax
je 0x14015535f
mov esi, 0x67
lea r12, [rax + 7]
mov ecx, r15d
lea r13, [0x14030be32]
mov ebx, r15d
mov r11d, r15d
mov r14d, edi
lea r15d, [rsi - 0x66]
movzx eax, byte [r13 - 1]
movzx r10d, byte [r13 - 2]
movzx r9d, byte [r13 + 2]
shl r10d, 8
or r10d, eax
shl r9d, 8
movzx eax, byte [r13]
lea r13, [r13 + 8]
shl r10d, 8
or r10d, eax
movzx eax, byte [r13 - 7]
shl r10d, 8
or r10d, eax
movzx eax, byte [r13 - 5]
or r9d, eax
xor r11d, r10d
movzx eax, byte [r13 - 4]
mov r8d, r11d
shl r9d, 8
or r9d, eax
movzx eax, byte [r13 - 3]
shl r9d, 8
or r9d, eax
xor ebx, r9d
xor r8d, ebx
xor r8d, 0xac987321
lea eax, [r8 + 0x54969fa2]
rol eax, 5
imul edx, eax, 0x137f
mov eax, r8d
rol eax, 0xa
add edx, eax
xor r11d, edx
lea eax, [r11 + 0x7f1137f]
ror eax, 9
imul edx, eax, 0xab69
mov eax, r11d
rol eax, 2
sub edx, eax
xor r8d, edx
imul edx, r8d, 0x605e
mov eax, r8d
shr eax, 0xd
sub edx, eax
sub edx, 0x756c8a2
xor r11d, edx
mov eax, r11d
xor eax, 0xab69
rol eax, 6
imul edx, eax, 0x7f1
mov eax, r11d
rol eax, 2
sub edx, eax
mov eax, 0x7f1137f
xor r8d, edx
mov edx, r8d
xor edx, 0xab69605e
sub eax, edx
xor r11d, eax
mov eax, r11d
mov edi, r11d
xor eax, 0x137f
ror edi, 6
imul edx, eax, 0xab69
xor edi, edx
xor r8d, edi
lea eax, [r8 + 0x7f1137f]
ror eax, 0xf
imul edx, eax, 0x605e
mov eax, r8d
rol eax, 2
add edx, eax
xor r11d, edx
lea eax, [r11 + 0x54969fa2]
ror eax, 0xe
imul edx, eax, 0x7f1
mov eax, r11d
rol eax, 8
sub edx, eax
xor r8d, edx
mov eax, r8d
mov edi, 0xab69605e
xor eax, edi
ror eax, 0xc
imul edx, eax, 0x137f
mov eax, r8d
ror eax, 0xa
xor edx, eax
xor r11d, edx
mov eax, r11d
xor eax, 0x7f1
imul edx, eax, 0xab69
mov eax, r11d
shr eax, 0xa
xor edx, eax
xor edx, r8d
mov r8d, 0x605e
mov eax, edx
not eax
ror eax, 5
add eax, r8d
imul eax, eax, 0x7f1
xor r11d, eax
lea ebx, [r11 - 0x7f1]
xor ebx, edx
xor ebx, edi
mov eax, ebx
xor eax, 0x7f1
rol eax, 2
imul edx, eax, 0x137f
mov eax, ebx
shr eax, 2
add edx, eax
xor r11d, edx
lea eax, [r11 - 0x7f1137f]
ror eax, 6
imul edx, eax, 0xab69
mov eax, r11d
rol eax, 7
add edx, eax
xor ebx, edx
mov eax, ebx
mov edi, ebx
xor eax, 0x137f
ror edi, 9
imul edx, eax, 0x605e
add edi, edx
xor r11d, edi
mov eax, r11d
xor eax, 0xab69
rol eax, 5
imul edx, eax, 0x7f1
mov eax, r11d
rol eax, 7
add edx, eax
xor ebx, edx
xor r11d, ebx
xor r11d, 0xac987321
mov eax, r11d
ror eax, 3
imul edx, eax, 0x137f
sub edx, 0xd0dd417
xor ebx, edx
lea eax, [rbx - 0x7f1137f]
ror eax, 1
imul edx, eax, 0x605e
mov eax, ebx
ror eax, 6
sub edx, eax
xor r11d, edx
lea eax, [r11 - 0x54969fa2]
rol eax, 3
imul edx, eax, 0x7f1
mov eax, r11d
rol eax, 0xe
add edx, eax
xor ebx, edx
lea eax, [rbx - 0x54969fa2]
rol eax, 0xf
imul edx, eax, 0x137f
mov eax, ebx
ror eax, 0xe
sub edx, eax
xor r11d, edx
mov eax, r11d
xor eax, r8d
imul edx, eax, 0xab69
mov eax, r11d
shr eax, 3
xor edx, eax
xor ebx, edx
mov eax, ebx
xor eax, 0x7f1137f
rol eax, 4
imul edx, eax, 0x605e
mov eax, ebx
xor ebx, r14d
rol eax, 2
mov r14d, r9d
xor edx, eax
xor edx, ecx
mov ecx, r10d
xor r11d, edx
mov byte [r12 - 4], r11b
mov byte [r12], bl
lea r12, [r12 + 8]
ror r11d, 8
mov byte [r12 - 0xd], r11b
ror ebx, 8
mov byte [r12 - 9], bl
ror r11d, 8
mov byte [r12 - 0xe], r11b
ror ebx, 8
mov byte [r12 - 0xa], bl
ror r11d, 8
ror ebx, 8
mov byte [r12 - 0xf], r11b
mov byte [r12 - 0xb], bl
ror ebx, 8
ror r11d, 8
sub rsi, r15
jne 0x140154ec4
mov r14, qword [rsp + 0x68]
xor r15d, r15d
mov eax, r15d
mov cl, r15b
mov esi, r15d
mov ebx, 0x338
lea edx, [r15 + 1]
xor cl, byte [rax + r14]
add rax, rdx
cmp rax, rbx
jb 0x1401551c9
movzx eax, cl
cmp rax, qword [0x14030c168]
je 0x1401551e8
mov edi, 0xc004d501
jmp 0x1401551fc
mov qword [rbp + 0x310], r14
mov edi, r15d
mov r14, r15
mov qword [rbp + 0x3a8], rbx
test r14, r14
je 0x140155209
mov rcx, r14
call fcn.14009515c
test edi, edi
js 0x14015535f
mov rax, qword [rbp + 0x3a8]
lea rbx, [0x14037c2e0]
mov rdi, qword [rbp + 0x310]
xor edx, edx
mov rcx, rbx
lea r8d, [rdx + 0x60]
mov byte [rax + rdi - 1], r15b
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
cmp byte [rdi], r15b
je 0x140155364
mov r12d, r15d
mov rdx, rdi
or rax, 0xffffffffffffffff
inc rax
cmp word [rdi + rax*2], r15w
jne 0x14015524c
lea rdi, [rdi + rax*2]
mov eax, r12d
lea rcx, [rax + rax*2]
lea rbx, [rbx + rcx*8]
xor ecx, ecx
mov r8, rbx
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
je 0x14015535f
mov rax, qword [rbx]
mov ecx, 0x5a4d
mov esi, r15d
cmp word [rax], cx
jne 0x1401552c7
movsxd rcx, dword [rax + 0x3c]
cmp ecx, 0x10000000
jae 0x1401552c7
add rcx, qword [rbx]
cmp rcx, qword [rbx]
jb 0x1401552c7
cmp dword [rcx], 0x4550
jne 0x1401552c7
movzx eax, word [rcx + 0x18]
mov edx, 0x10b
sub ax, dx
mov edx, 0xfeff
test dx, ax
je 0x1401552ce
mov esi, 0xc000000d
jmp 0x1401552df
mov esi, 0xc000007b
jmp 0x1401552df
mov rax, qword [rcx + 0x88]
mov qword [rbx + 0xc], rax
mov eax, dword [rcx + 0x50]
mov dword [rbx + 8], eax
mov r13d, dword [rdi + 2]
mov r14d, r15d
add rdi, 6
mov ecx, 1
test r13d, r13d
je 0x14015534a
mov rdx, rdi
or rax, 0xffffffffffffffff
inc rax
cmp byte [rdi + rax], r15b
jne 0x1401552fb
inc rdi
add rdi, rax
test esi, esi
js 0x14015533a
mov rcx, qword [rbx]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
nop dword [rax + rax]
mov rdx, rax
test rax, rax
je 0x140155364
mov eax, dword [rbp - 0x40]
lea r8, section..data
mov ecx, 1
mov qword [r8 + rax*8], rdx
jmp 0x14015533d
mov eax, dword [rbp - 0x40]
add eax, ecx
add r14d, ecx
mov dword [rbp - 0x40], eax
cmp r14d, r13d
jb 0x1401552f4
add r12d, ecx
lea rbx, [0x14037c2e0]
cmp byte [rdi], r15b
jne 0x140155245
jmp 0x140155364
mov esi, 0xc000007a
mov rdi, qword [rbp + 0x310]
test rdi, rdi
je 0x140155390
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 r13d, 4
test esi, esi
jns 0x1401553f6
lea r14, [0x14037c2e0]
mov ebx, r13d
mov rdi, r14
lea eax, [r13 - 3]
cmp qword [rdi], r15
je 0x1401553c4
mov rcx, qword [rdi]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_FreeLibrary]
nop dword [rax + rax]
mov eax, 1
add rdi, 0x18
sub rbx, rax
jne 0x1401553ab
xor edx, edx
lea r8d, [rbx + 0x60]
mov rcx, r14
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x1402eeca0]
lea rcx, section..data
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x140155409
mov eax, dword [0x14037bd98]
mov ecx, 1
add eax, ecx
mov dword [0x14037bd98], eax
mov eax, r15d
mov esi, r15d
xchg dword [0x14037d0a0], eax
mov rax, qword gs:[0x60]
mov edi, r15d
mov qword [rbp + 0x428], r15
mov ebx, 0x80004005
mov qword [rbp + 0x430], r15
mov r12d, 0x80070000
cmp dword [rax + 0x2c0], r15d
je 0x1401556c0
mov rax, qword [0x140378110]
call qword [case.0x14006c37f.0]
mov r14, rax
test rax, rax
je 0x1401554da
mov qword [rbp + 0x438], r15
mov r9d, r15d
mov rbx, r15
lea rax, [rbp + 0x138]
mov r8, rbx
mov qword [rsp + 0x20], rax
mov edx, 2
mov rax, qword [0x140378130]
mov rcx, r14
call qword [case.0x14006c37f.0]
test eax, eax
jne 0x140155528
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
cmp eax, 0x7a
jne 0x140155511
test rbx, rbx
jne 0x140155508
mov ecx, dword [rbp + 0x138]
call fcn.140092328
lea rcx, [rbp + 0x438]
mov rbx, rax
call fcn.14008c7a4
test rbx, rbx
je 0x140155501
mov r9d, dword [rbp + 0x138]
mov qword [rbp + 0x438], rbx
jmp 0x140155469
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov edi, eax
test eax, eax
jle 0x1401554f2
movzx edi, ax
or edi, r12d
test edi, edi
js 0x1401556c6
mov edi, ebx
jmp 0x1401556c6
mov edi, 0x8007000e
jmp 0x14015552f
mov ebx, 0x80004005
mov edi, ebx
jmp 0x14015553b
test eax, eax
je 0x140155508
mov ebx, 0x80004005
jg 0x140155520
mov edi, eax
jmp 0x14015553b
movzx edi, ax
or edi, r12d
jmp 0x14015553b
mov qword [rbp + 0x428], rbx
mov ebx, 0x80004005
mov qword [rbp + 0x438], r15
lea rcx, [rbp + 0x438]
call fcn.14008c7a4
test edi, edi
js 0x1401556c6
mov rdi, qword [0x140378128]
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_GetCurrentThreadId]
nop dword [rax + rax]
mov ecx, eax
mov rax, rdi
call qword [case.0x14006c37f.0]
mov r14, rax
test rax, rax
je 0x1401554da
mov qword [rbp + 0x440], r15
mov edi, r15d
mov r9d, r15d
mov rbx, r15
lea rax, [rbp + 0x13c]
mov r8, rbx
mov qword [rsp + 0x20], rax
mov edx, 2
mov rax, qword [0x140378130]
mov rcx, r14
call qword [case.0x14006c37f.0]
test eax, eax
jne 0x14015561d
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
cmp eax, 0x7a
jne 0x140155606
test rbx, rbx
jne 0x1401555fd
mov ecx, dword [rbp + 0x13c]
call fcn.140092328
lea rcx, [rbp + 0x440]
mov rbx, rax
call fcn.14008c7a4
test rbx, rbx
je 0x1401555f6
mov r9d, dword [rbp + 0x13c]
mov qword [rbp + 0x440], rbx
jmp 0x140155589
mov edi, 0x8007000e
jmp 0x140155624
mov ebx, 0x80004005
mov edi, ebx
jmp 0x140155630
test eax, eax
je 0x1401555fd
mov ebx, 0x80004005
jg 0x140155615
mov edi, eax
jmp 0x140155630
movzx edi, ax
or edi, r12d
jmp 0x140155630
mov qword [rbp + 0x430], rbx
mov ebx, 0x80004005
mov qword [rbp + 0x440], r15
lea rcx, [rbp + 0x440]
call fcn.14008c7a4
test edi, edi
js 0x1401556c6
mov rcx, qword [rbp + 0x428]
test rcx, rcx
je 0x1401556c0
lea rdx, str.WinSta0
call sub.api_ms_win_crt_string_l1_1_0.dll_wcscmp
test eax, eax
jne 0x1401556c0
mov rcx, qword [rbp + 0x430]
test rcx, rcx
je 0x1401556c0
lea rdx, str.Default
call sub.api_ms_win_crt_string_l1_1_0.dll_wcscmp
test eax, eax
jne 0x1401556c0
xor eax, eax
mov dword [rbp + 0x1c], eax
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_GetCurrentProcess]
nop dword [rax + rax]
mov r9, r13
lea r8, [rbp + 0x1c]
mov rcx, rax
mov edx, SafeArrayDestroy
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_1.dll_GetProcessMitigationPolicy]
nop dword [rax + rax]
test eax, eax
je 0x1401554da
mov eax, reloc.OLEAUT32.dll_SafeArrayDestroy
test byte [rbp + 0x1c], al
mov eax, 1
cmove esi, eax
mov dword [rbp + 0x134], esi
lea rcx, [rbp + 0x430]
call fcn.14008c7a4
lea rcx, [rbp + 0x428]
call fcn.14008c7a4
mov eax, dword [rbp + 0x134]
test edi, edi
cmovs eax, r15d
mov dword [rbp + 0x134], eax
mov rdx, r13
mov ecx, Shell_MergeMenus
call qword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalAlloc]
nop dword [rax + rax]
lea rcx, [rbp + 0x28]
mov qword [rbp - 0x58], rax
mov rdi, rax
call fcn.14008fc78
test rdi, rdi
jne 0x140155728
mov qword [rbp + 0x28], r15
mov r12d, 0x8007000e
jmp 0x14015f977
xorps xmm0, xmm0
mov qword [rbp + 0x28], rdi
lea rax, [0x14037a850]
mov qword [rsp + 0x68], r15
movups xmmword [rbp + 0x5e0], xmm0
mov qword [rbp + 0x450], rax
mov r13, r15
mov qword [rbp + 0x5d8], r15
mov dword [rbp + 0x140], r15d
mov dword [rbp + 0x148], r15d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov edi, 8
mov r8d, Ordinal_165
mov rcx, rax
mov edx, edi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov qword [rsp + 0x70], 3
lea edx, [rdi + 0x78]
lea r8, [0x14037a798]
mov rbx, rax
movabs rsi, 0xc81ecb17b1b54a58
mov r12d, 0xc0000017
movabs r14, 0x7f1137fab69605e
test rax, rax
jne 0x1401557c7
mov dword [rbp - 0x20], r12d
jmp 0x140156383
mov rax, qword [rbp + 0x450]
mov qword [rbp - 0x80], rbx
movups xmm0, xmmword [rax]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rbx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rbx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rbx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rbx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rbx + 0x60], xmm0
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rbx + rdx - 0x10], xmm1
movups xmm0, xmmword [rax + rdx]
movups xmmword [rbx + rdx], xmm0
movups xmm1, xmmword [rax + rdx + 0x10]
movups xmmword [rbx + rdx + 0x10], xmm1
mov qword [rbp + 0x458], r8
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
mov edx, edi
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov r13, rax
test rax, rax
je 0x140155b45
mov rax, qword [rbp + 0x458]
mov qword [rsp + 0x68], r13
mov rcx, qword [rax]
mov qword [r13], rcx
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x230], rax
mov r11d, 4
mov dword [rbp + 0x190], r15d
mov edx, r11d
lea r8, [rbp + 0x1f8]
mov ecx, r11d
call fcn.140016278
mov edi, dword [rbp + 0x1fc]
test eax, eax
mov r12d, eax
mov dword [rbp - 0x20], eax
cmovns edi, dword [rbp + 0x1f8]
mov dword [rbp + 0x1fc], edi
js 0x140155b49
lea r8, [rbp + 0x190]
mov edx, edi
xor ecx, ecx
call fcn.140016278
mov r12d, eax
mov r9d, 0x10000000
or r12d, r9d
mov dword [rbp - 0x20], r12d
jl 0x140155b49
lea r8, [rbp + 0x200]
mov edx, SHSimpleIDListFromPath
mov ecx, r11d
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov r12d, eax
cmovns edi, dword [rbp + 0x200]
mov dword [rbp + 0x1fc], edi
js 0x140155b49
mov ecx, dword [rbp + 0x190]
lea r8, [rbp + 0x190]
mov edx, edi
call fcn.140016278
mov r12d, eax
or r12d, r9d
mov dword [rbp - 0x20], r12d
jl 0x140155b49
lea r8, [rbp + 0x204]
mov ecx, r11d
lea edx, [r11 + 4]
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov r12d, eax
cmovns edi, dword [rbp + 0x204]
mov dword [rbp + 0x1fc], edi
js 0x140155b49
mov ecx, dword [rbp + 0x190]
lea r8, [rbp + 0x190]
mov edx, edi
call fcn.140016278
mov r12d, eax
or r12d, r9d
mov dword [rbp - 0x20], r12d
jl 0x140155b49
lea r8, [rbp + 0x210]
mov ecx, r11d
lea edx, [r11 + 4]
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov r12d, eax
cmovns edi, dword [rbp + 0x210]
mov dword [rbp + 0x1fc], edi
js 0x140155b49
mov ecx, dword [rbp + 0x190]
lea r8, [rbp + 0x190]
mov edx, edi
call fcn.140016278
mov r12d, eax
or r12d, r9d
mov dword [rbp - 0x20], r12d
jl 0x140155b49
lea r8, [rbp + 0x238]
mov edx, 0x7fffffff
lea rcx, str.explorer_AeroAnimationAllowed
call fcn.140016298
test eax, eax
js 0x140155b51
mov rax, qword [rbp + 0x238]
lea r8, [rbp + 0x214]
inc rax
mov ecx, r11d
mov qword [rbp + 0x238], rax
lea edx, [rax + rax]
call fcn.140016278
mov edi, dword [rbp + 0x1fc]
test eax, eax
mov r12d, eax
mov dword [rbp - 0x20], eax
cmovns edi, dword [rbp + 0x214]
mov dword [rbp + 0x1fc], edi
js 0x140155b49
mov ecx, dword [rbp + 0x190]
lea r8, [rbp + 0x190]
mov edx, edi
call fcn.140016278
mov r12d, eax
mov r9d, 0x10000000
or r12d, r9d
mov dword [rbp - 0x20], r12d
jl 0x140155b49
lea r8, [rbp + 0x218]
mov edx, r11d
mov ecx, r11d
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov r12d, eax
cmovns edi, dword [rbp + 0x218]
mov dword [rbp + 0x1fc], edi
js 0x140155b49
mov ecx, dword [rbp + 0x190]
lea r8, [rbp + 0x190]
mov edx, edi
call fcn.140016278
mov r12d, eax
or r12d, r9d
mov dword [rbp - 0x20], r12d
jl 0x140155b49
lea r8, [rbp + 0x21c]
mov edx, r11d
mov ecx, r11d
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov r12d, eax
cmovns edi, dword [rbp + 0x21c]
mov dword [rbp + 0x1fc], edi
js 0x140155b49
mov ecx, dword [rbp + 0x190]
lea r8, [rbp + 0x190]
mov edx, edi
call fcn.140016278
mov r12d, eax
or r12d, r9d
mov dword [rbp - 0x20], r12d
jl 0x140155b49
mov eax, dword [rbp + 0x190]
mov dword [rbp + 0x5d4], eax
mov edi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov r9, rax
test rax, rax
jne 0x140155b59
mov r12d, 0xc0000017
jmp 0x140155b45
mov r12d, 0xc0000023
mov dword [rbp - 0x20], r12d
mov r13, rbx
jmp 0x140156383
mov r12d, 0xc000003e
jmp 0x140155b45
mov qword [rbp + 0x5d8], r9
mov edi, r15d
mov dword [rbp + 0x5d0], r15d
mov dword [rbp + reloc.api_ms_win_shlwapi_winrt_storage_l1_1_1.dll_Ordinal_544], r15d
mov r11d, 4
lea r8, [rbp + 0x588]
mov edx, r11d
mov rcx, r9
call fcn.140016254
mov r12d, eax
mov dword [rbp - 0x20], eax
mov eax, r15d
test r12d, r12d
js 0x140155bd2
mov ecx, dword [rbp + 0x5d4]
lea rax, [r9 + 8]
add rcx, r9
cmp rax, rcx
ja 0x140155b3f
mov rax, qword [rbp + 0x588]
mov dword [r9], r11d
lea r9d, [r11 - 3]
mov ecx, dword [rbp + reloc.api_ms_win_shlwapi_winrt_storage_l1_1_1.dll_Ordinal_544]
mov dword [rax], ecx
mov edi, dword [rbp + 0x5d0]
add edi, r9d
mov dword [rbp + 0x5d0], edi
mov eax, edi
jmp 0x140155bd8
mov r9d, 1
test r12d, r12d
js 0x140155b49
cmp qword [rbp + 0x5d8], r15
jne 0x140155c47
lea r8, [rbp + 0x48]
mov edx, SHSimpleIDListFromPath
mov ecx, r11d
call fcn.140016278
mov edx, dword [rbp + 0x4c]
test eax, eax
mov r12d, eax
mov dword [rbp - 0x20], eax
cmovns edx, dword [rbp + 0x48]
mov dword [rbp + 0x4c], edx
js 0x140155d73
mov ecx, dword [rbp + 0x5d4]
lea r8, [rbp + 0x5d4]
call fcn.140016278
mov edi, dword [rbp + 0x5d0]
mov r12d, eax
mov dword [rbp - 0x20], eax
test eax, eax
js 0x140155d73
add edi, r9d
mov dword [rbp + 0x5d0], edi
jmp 0x140155d7c
mov r9, qword [rbp + 0x5d8]
mov r11d, r15d
mov qword [rbp + 0x240], r9
test eax, eax
je 0x140155cb7
mov r10d, dword [rbp + 0x4c]
mov edx, dword [r9]
lea r8, [rbp + 0x50]
mov ecx, 4
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov r12d, eax
cmovns r10d, dword [rbp + 0x50]
mov dword [rbp + 0x4c], r10d
js 0x140155d6d
mov edx, r10d
lea r8, [rbp + 0x240]
mov rcx, r9
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140155d6d
mov r9, qword [rbp + 0x240]
inc r11d
cmp r11d, edi
jb 0x140155c60
mov r11d, 4
lea r8, [rbp + 0x608]
mov edx, r11d
mov rcx, r9
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140155d73
mov ecx, dword [rbp + 0x5d4]
lea rax, [r9 + 0xa4]
add rcx, qword [rbp + 0x5d8]
cmp rax, rcx
ja 0x140155b3f
mov rax, qword [rbp + 0x608]
lea ecx, [r11 + 0x7c]
mov dword [r9], Ordinal_165
movups xmm0, xmmword [rbx]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rbx + 0x30]
movups xmmword [rax + 0x30], xmm1
movups xmm0, xmmword [rbx + 0x40]
movups xmmword [rax + 0x40], xmm0
movups xmm1, xmmword [rbx + 0x50]
movups xmmword [rax + 0x50], xmm1
movups xmm0, xmmword [rbx + 0x60]
movups xmmword [rax + 0x60], xmm0
movups xmm1, xmmword [rbx + 0x70]
movups xmmword [rax + rcx - 0x10], xmm1
movups xmm0, xmmword [rbx + rcx]
movups xmmword [rax + rcx], xmm0
movups xmm1, xmmword [rbx + rcx + 0x10]
movups xmmword [rax + rcx + 0x10], xmm1
mov edi, dword [rbp + 0x5d0]
inc edi
mov dword [rbp + 0x5d0], edi
jmp 0x140155d73
mov r11d, 4
test r12d, r12d
js 0x140155b49
cmp qword [rbp + 0x5d8], r15
jne 0x140155de8
lea r8, [rbp + 0x54]
mov edx, 8
mov ecx, r11d
call fcn.140016278
mov edx, dword [rbp + 0x58]
test eax, eax
mov r12d, eax
mov dword [rbp - 0x20], eax
cmovns edx, dword [rbp + 0x54]
mov dword [rbp + 0x58], edx
js 0x140155ec5
mov ecx, dword [rbp + 0x5d4]
lea r8, [rbp + 0x5d4]
call fcn.140016278
mov edi, dword [rbp + 0x5d0]
mov r12d, eax
mov dword [rbp - 0x20], eax
mov r13d, 1
test eax, eax
js 0x140155ecb
add edi, r13d
mov dword [rbp + 0x5d0], edi
jmp 0x140155ed4
mov r9, qword [rbp + 0x5d8]
mov r11d, r15d
mov qword [rbp + 0x248], r9
test edi, edi
je 0x140155e54
mov r10d, dword [rbp + 0x58]
mov edx, dword [r9]
lea r8, [rbp + 0x5c]
mov ecx, 4
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov r12d, eax
cmovns r10d, dword [rbp + 0x5c]
mov dword [rbp + 0x58], r10d
js 0x140155ec2
mov edx, r10d
lea r8, [rbp + 0x248]
mov rcx, r9
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140155eba
mov r9, qword [rbp + 0x248]
inc r11d
cmp r11d, edi
jb 0x140155e01
mov r11d, 4
lea r8, [rbp + 0x618]
mov edx, r11d
mov rcx, r9
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140155ec5
mov ecx, dword [rbp + 0x5d4]
lea rax, [r9 + 0xc]
add rcx, qword [rbp + 0x5d8]
cmp rax, rcx
ja 0x140155b3f
mov rax, qword [rbp + 0x618]
mov dword [r9], 8
mov rcx, qword [r13]
lea r13d, [r11 - 3]
mov qword [rax], rcx
mov edi, dword [rbp + 0x5d0]
add edi, r13d
mov dword [rbp + 0x5d0], edi
jmp 0x140155ecb
mov r11d, 4
jmp 0x140155ec5
mov r11, rcx
mov r13d, 1
test r12d, r12d
js 0x140155b49
mov rax, qword [rbp + 0x230]
mov qword [rbp + 0x250], rax
cmp qword [rbp + 0x5d8], r15
jne 0x140155f40
lea r8, [rbp + 0x60]
mov edx, 8
mov ecx, r11d
call fcn.140016278
mov edx, dword [rbp + 0x64]
test eax, eax
mov r12d, eax
mov dword [rbp - 0x20], eax
cmovns edx, dword [rbp + 0x60]
mov dword [rbp + 0x64], edx
js 0x140156014
mov ecx, dword [rbp + 0x5d4]
lea r8, [rbp + 0x5d4]
call fcn.140016278
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140156014
add dword [rbp + 0x5d0], r13d
jmp 0x14015601d
mov r9, qword [rbp + 0x5d8]
mov r11d, r15d
mov qword [rbp + 0x258], r9
test edi, edi
je 0x140155fac
mov r10d, dword [rbp + 0x64]
mov edx, dword [r9]
lea r8, [rbp + 0x68]
mov ecx, 4
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov r12d, eax
cmovns r10d, dword [rbp + 0x68]
mov dword [rbp + 0x64], r10d
js 0x140156011
mov edx, r10d
lea r8, [rbp + 0x258]
mov rcx, r9
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140156009
mov r9, qword [rbp + 0x258]
add r11d, r13d
cmp r11d, edi
jb 0x140155f59
mov r11d, 4
lea r8, [rbp + 0x628]
mov edx, r11d
mov rcx, r9
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140156014
mov ecx, dword [rbp + 0x5d4]
lea rax, [r9 + 0xc]
add rcx, qword [rbp + 0x5d8]
cmp rax, rcx
ja 0x140155b3f
mov rax, qword [rbp + 0x628]
mov dword [r9], 8
mov rcx, qword [rbp + 0x250]
mov qword [rax], rcx
add dword [rbp + 0x5d0], r13d
jmp 0x140156014
mov r11d, 4
jmp 0x140156014
mov r11, rcx
test r12d, r12d
js 0x140155b49
lea r8, [rbp + 0x260]
mov edx, 0x7fffffff
lea rcx, str.explorer_AeroAnimationAllowed
call fcn.140016298
test eax, eax
js 0x140155b51
mov rcx, qword [rbp + 0x260]
lea r8, [rbp + 0x260]
mov rdx, r13
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
mov ebx, 0xc0000023
test eax, eax
js 0x1401561bb
mov eax, dword [rbp + 0x260]
lea r10d, [rax + rax]
test r10d, r10d
je 0x1401561b1
cmp qword [rbp + 0x5d8], r15
jne 0x1401560dc
lea r8, [rbp + 0x6c]
mov edx, r10d
mov ecx, r11d
call fcn.140016278
mov edx, dword [rbp + 0x70]
test eax, eax
mov r12d, eax
mov dword [rbp - 0x20], eax
cmovns edx, dword [rbp + 0x6c]
mov dword [rbp + 0x70], edx
js 0x1401561bb
mov ecx, dword [rbp + 0x5d4]
lea r8, [rbp + 0x5d4]
call fcn.140016278
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x1401561bb
add dword [rbp + 0x5d0], r13d
mov r12d, r15d
mov dword [rbp - 0x20], r15d
jmp 0x1401561bb
mov r11d, r15d
mov rdi, qword [rbp + 0x5d8]
mov qword [rbp + 0x268], rdi
cmp dword [rbp + 0x5d0], r15d
jbe 0x140156150
mov r9d, dword [rbp + 0x70]
mov edx, dword [rdi]
lea r8, [rbp + 0x74]
mov ecx, 4
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov r12d, eax
cmovns r9d, dword [rbp + 0x74]
mov dword [rbp + 0x70], r9d
js 0x1401561bb
mov edx, r9d
lea r8, [rbp + 0x268]
mov rcx, rdi
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x1401561bb
mov rdi, qword [rbp + 0x268]
add r11d, r13d
cmp r11d, dword [rbp + 0x5d0]
jb 0x1401560fa
lea r8, [rbp + 0x638]
mov edx, 4
mov rcx, rdi
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x1401561bb
mov ecx, dword [rbp + 0x5d4]
lea rax, [r10 + 4]
add rcx, qword [rbp + 0x5d8]
add rax, rdi
mov r8d, r10d
cmp rax, rcx
jbe 0x140156192
mov r12d, ebx
mov dword [rbp - 0x20], ebx
jmp 0x1401561bb
mov rcx, qword [rbp + 0x638]
lea rdx, str.explorer_AeroAnimationAllowed
mov dword [rdi], r10d
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
add dword [rbp + 0x5d0], r13d
jmp 0x1401561bb
mov r12d, 0xc000000d
mov dword [rbp - 0x20], r12d
test r12d, r12d
js 0x14015637f
mov r11d, 4
mov eax, dword [rbp + 0x134]
mov dword [rbp + 0x78], eax
cmp qword [rbp + 0x5d8], r15
jne 0x14015623b
lea r8, [rbp + 0x80]
mov edx, r11d
mov ecx, r11d
call fcn.140016278
mov edx, dword [rbp + 0x84]
test eax, eax
mov r12d, eax
mov dword [rbp - 0x20], eax
cmovns edx, dword [rbp + 0x80]
mov dword [rbp + 0x84], edx
js 0x140156301
mov ecx, dword [rbp + 0x5d4]
lea r8, [rbp + 0x5d4]
call fcn.140016278
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140156301
add dword [rbp + 0x5d0], r13d
jmp 0x140156306
mov r10d, r15d
mov rdi, qword [rbp + 0x5d8]
mov qword [rbp + 0x270], rdi
cmp dword [rbp + 0x5d0], r15d
jbe 0x1401562b5
mov r9d, dword [rbp + 0x84]
mov edx, dword [rdi]
lea r8, [rbp + 0x88]
mov ecx, r11d
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov r12d, eax
cmovns r9d, dword [rbp + 0x88]
mov dword [rbp + 0x84], r9d
js 0x140156301
mov edx, r9d
lea r8, [rbp + 0x270]
mov rcx, rdi
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140156301
mov rdi, qword [rbp + 0x270]
add r10d, r13d
cmp r10d, dword [rbp + 0x5d0]
jb 0x14015625c
lea r8, [rbp + 0x648]
mov rdx, r11
mov rcx, rdi
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140156301
mov ecx, dword [rbp + 0x5d4]
lea rax, [rdi + 8]
add rcx, qword [rbp + 0x5d8]
cmp rax, rcx
ja 0x140156379
mov rax, qword [rbp + 0x648]
mov dword [rdi], r11d
mov ecx, dword [rbp + 0x78]
mov dword [rax], ecx
add dword [rbp + 0x5d0], r13d
test r12d, r12d
js 0x14015637f
mov dword [rbp + 0x90], r11d
cmp qword [rbp + 0x5d8], r15
jne 0x1401564e9
lea r8, [rbp + 0x98]
mov edx, r11d
mov ecx, r11d
call fcn.140016278
mov edx, dword [rbp + 0x9c]
test eax, eax
mov r12d, eax
mov dword [rbp - 0x20], eax
cmovns edx, dword [rbp + 0x98]
mov dword [rbp + 0x9c], edx
js 0x1401565b2
mov ecx, dword [rbp + 0x5d4]
lea r8, [rbp + 0x5d4]
call fcn.140016278
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x1401565b2
add dword [rbp + 0x5d0], r13d
jmp 0x1401565bb
mov r12d, ebx
mov dword [rbp - 0x20], ebx
mov r13, qword [rbp - 0x80]
mov ebx, 1
and qword [rbp + 0x5d0], 0
mov rdi, qword [rbp + 0x5d8]
test rdi, rdi
je 0x1401563c3
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x5d8], r15
and qword [rbp + 0x5e0], 0
mov rdi, qword [rbp + 0x5e8]
test rdi, rdi
je 0x1401563fe
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x5e8], r15
test r13, r13
je 0x140156423
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 rdi, qword [rsp + 0x68]
test rdi, rdi
je 0x14015644d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
test r12d, r12d
js 0x14015f971
mov eax, dword [rbp + 0x134]
test eax, eax
je 0x14015f948
mov edi, 0x104
mov qword [rbp + 0x3a0], r15
mov r8d, edi
mov dword [0x14037b680], eax
lea rdx, [rbp + 0x1100]
lea rcx, [0x140000000]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleFileNameW]
nop dword [rax + rax]
test eax, eax
je 0x14015d0b4
cmp eax, edi
jne 0x1401564b4
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
cmp eax, 0x7a
je 0x14015d0b4
mov rax, qword [0x1403780f8]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
call qword [case.0x14006c37f.0]
mov qword [rbp], rax
test rax, rax
jne 0x140158d1f
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
jmp 0x14015d0b4
mov r10d, r15d
mov rdi, qword [rbp + 0x5d8]
mov qword [rbp + 0x278], rdi
cmp dword [rbp + 0x5d0], r15d
jbe 0x140156563
mov r9d, dword [rbp + 0x9c]
mov edx, dword [rdi]
lea r8, [rbp + 0xa0]
mov ecx, r11d
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov r12d, eax
cmovns r9d, dword [rbp + 0xa0]
mov dword [rbp + 0x9c], r9d
js 0x1401565b2
mov edx, r9d
lea r8, [rbp + 0x278]
mov rcx, rdi
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x1401565b2
mov rdi, qword [rbp + 0x278]
add r10d, r13d
cmp r10d, dword [rbp + 0x5d0]
jb 0x14015650a
lea r8, [rbp + 0x658]
mov rdx, r11
mov rcx, rdi
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x1401565b2
mov ecx, dword [rbp + 0x5d4]
lea rax, [rdi + 8]
add rcx, qword [rbp + 0x5d8]
cmp rax, rcx
ja 0x140156379
mov rax, qword [rbp + 0x658]
mov dword [rdi], r11d
mov ecx, dword [rbp + 0x90]
mov dword [rax], ecx
add dword [rbp + 0x5d0], r13d
test r12d, r12d
js 0x14015637f
lea r8, [rbp + 0xa4]
mov edx, r11d
mov ecx, r11d
call fcn.140016278
mov r9d, dword [rbp + 0xa8]
test eax, eax
mov r12d, eax
mov dword [rbp - 0x20], eax
cmovns r9d, dword [rbp + 0xa4]
mov dword [rbp + 0xa8], r9d
js 0x140156777
lea r8, [rbp + 0xb0]
mov dword [rbp + 0xac], r9d
mov edx, 8
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov edi, r9d
mov r12d, eax
cmovns edi, dword [rbp + 0xb0]
mov dword [rbp + 0xa8], edi
js 0x140156777
lea r8, [rbp + 0xac]
mov edx, edi
mov ecx, r9d
call fcn.140016278
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140156777
lea r8, [rbp + 0xb4]
mov edx, r11d
mov ecx, r11d
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov r12d, eax
cmovns edi, dword [rbp + 0xb4]
mov dword [rbp + 0xa8], edi
js 0x140156777
mov ecx, dword [rbp + 0xac]
lea r8, [rbp + 0xac]
mov edx, edi
call fcn.140016278
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140156777
lea r8, [rbp + 0xb8]
mov edx, r11d
mov ecx, r11d
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov r12d, eax
cmovns edi, dword [rbp + 0xb8]
mov dword [rbp + 0xa8], edi
js 0x140156777
mov ecx, dword [rbp + 0xac]
lea r8, [rbp + 0xac]
mov edx, edi
call fcn.140016278
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140156777
lea r8, [rbp + 0xbc]
mov edx, r11d
mov ecx, r11d
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov r12d, eax
cmovns edi, dword [rbp + 0xbc]
mov dword [rbp + 0xa8], edi
js 0x140156777
mov ecx, dword [rbp + 0xac]
lea r8, [rbp + 0xac]
mov edx, edi
call fcn.140016278
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140156777
lea r8, [rbp + 0x18]
mov edx, r11d
mov ecx, r11d
call fcn.140016278
test eax, eax
mov dword [rbp - 0x20], eax
mov r12d, eax
cmovns edi, dword [rbp + 0x18]
mov dword [rbp + 0xa8], edi
js 0x140156777
mov ecx, dword [rbp + 0xac]
lea r8, [rbp + 0xac]
mov edx, edi
call fcn.140016278
mov r12d, eax
mov dword [rbp - 0x20], eax
mov eax, dword [rbp + 0x18]
test r12d, r12d
cmovns eax, dword [rbp + 0xac]
jmp 0x14015677a
mov eax, dword [rbp + 0x18]
mov dword [rbp - 0x68], eax
test r12d, r12d
js 0x14015637f
mov rdi, r15
mov qword [rbp - 0x50], r15
mov r13d, r15d
mov qword [rbp + 0x280], r15
mov qword [rsp + 0x78], r15
mov dword [rbp - 0x78], r15d
mov qword [rbp - 0x48], r15
mov dword [rbp + 0xfc], r15d
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x18], r15
mov dword [rbp + 0xc0], r15d
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x288], rax
mov dword [rbp + 0xc4], 8
mov edx, dword [rbp + 0x5d4]
lea r8, [rbp + 0xc4]
mov ecx, 8
call fcn.140016278
mov r12d, eax
test eax, eax
js 0x14015690d
mov eax, dword [rbp + 0xc4]
add rax, 7
and eax, 0xfffffff8
cmp eax, dword [rbp + 0xc4]
jae 0x140156816
mov r12d, 0xc0000095
jmp 0x14015690d
mov dword [rbp + 0xc4], eax
mov edi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
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 rdi, rax
test rax, rax
jne 0x140156857
mov r12d, 0xc0000017
mov rdi, r15
jmp 0x14015690d
mov eax, dword [rbp + 0x5d0]
lea r8, [rbp + 0x290]
mov r11d, 4
mov qword [rbp + 0x290], rdi
mov edx, r11d
mov dword [rdi], eax
mov rcx, rdi
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x1401568e4
mov rcx, qword [rbp + 0x290]
lea r8, [rbp + 0x290]
mov eax, dword [rbp + 0x5d4]
mov edx, r11d
mov dword [rcx], eax
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x1401568e4
mov ecx, dword [rbp + 0xc4]
mov rax, qword [rbp + 0x288]
mov qword [rcx + rdi - 8], rax
mov r8d, dword [rbp + 0x5d4]
mov rdx, qword [rbp + 0x5d8]
mov rcx, qword [rbp + 0x290]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r13d, dword [rbp + 0xc4]
mov qword [rbp - 0x50], rdi
mov rdi, r15
test rdi, rdi
je 0x140156909
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov rdi, qword [rbp - 0x50]
or r12d, 0x10000000
mov dword [rbp - 0x20], r12d
jl 0x14015854f
mov qword [rbp + 0x298], r15
mov rbx, r15
test rdi, rdi
jne 0x140156938
mov r12d, 0xc000000d
jmp 0x14015713e
mov qword [rbp - 0x38], r13
test r13, r13
je 0x140157055
lea rcx, [r13 + 8]
call fcn.140092328
mov qword [rbp - 0x70], rax
test rax, rax
je 0x140157055
mov dl, r15b
mov rcx, r15
mov byte [rsp + 0x60], dl
test r13, r13
je 0x14015697f
mov r8d, 1
xor dl, byte [rdi + rcx]
add rcx, r8
cmp rcx, r13
jb 0x140156970
mov byte [rsp + 0x60], dl
mov r12, rax
mov qword [rbp + 0xb58], rsi
mov rax, r13
mov dword [rbp - 0x20], r15d
or r10d, 0xffffffff
mov dword [rbp - 0x60], r15d
mov r8, rdi
mov r9d, r15d
and eax, 7
je 0x140156aa7
mov dword [rbp - 0x20], r15d
mov ecx, r15d
mov dword [rbp - 0x60], ecx
mov r11d, r15d
mov r10d, r15d
test eax, eax
je 0x140156a13
mov esi, 1
lea r9d, [rsi + 0x37]
lea r14d, [rsi + 3]
movzx edi, byte [r8]
inc r8
cmp r10d, r14d
jge 0x1401569e4
lea ecx, [r9 - 0x20]
shl edi, cl
mov ecx, dword [rbp - 0x60]
or ecx, edi
mov dword [rbp - 0x60], ecx
jmp 0x1401569ef
mov ecx, r9d
shl edi, cl
mov ecx, dword [rbp - 0x60]
or r11d, edi
add r10d, esi
sub r9d, 8
cmp r10d, eax
jl 0x1401569c8
mov dword [rbp - 0x20], r11d
movabs rsi, 0xc81ecb17b1b54a58
movabs r14, 0x7f1137fab69605e
mov r9d, ecx
mov r10d, r11d
xor r9d, 0xb17a307a
xor r10d, 0x42f6b18d
mov ecx, r9d
mov edi, r10d
mov r11d, r15d
test eax, eax
je 0x140156a7c
mov esi, 4
lea r14, [r12 + 1]
mov qword [rbp - 0x40], r14
cmp r11d, esi
jge 0x140156a4f
rol ecx, 8
mov r14d, ecx
jmp 0x140156a55
rol edi, 8
mov r14d, edi
mov byte [r12], r14b
inc r11d
mov r14, qword [rbp - 0x40]
mov r12, r14
cmp r11d, eax
jl 0x140156a39
movabs rsi, 0xc81ecb17b1b54a58
movabs r14, 0x7f1137fab69605e
mov ecx, 4
cmp eax, ecx
jbe 0x140156a97
mov ecx, 8
sub ecx, eax
shl ecx, 3
shr r10d, cl
shl r10d, cl
jmp 0x140156aa7
mov r10d, r15d
jae 0x140156aa7
sub ecx, eax
shl ecx, 3
shr r9d, cl
shl r9d, cl
mov r11, r13
shr r11, 3
test r11, r11
je 0x140156ddd
movzx eax, word [rbp + 0xb5a]
lea rdx, [r12 + 7]
mov r12d, dword [rbp + 0xb5c]
lea rcx, [r8 + 2]
mov r14d, dword [rbp - 0x20]
mov ebx, dword [rbp - 0x60]
mov dword [rbp - 0x40], eax
movzx r15d, r12w
movzx r13d, si
movzx eax, byte [rcx - 1]
movzx r8d, byte [rcx - 2]
movzx edi, byte [rcx + 2]
shl r8d, 8
or r8d, eax
shl edi, 8
movzx eax, byte [rcx]
shl r8d, 8
or r8d, eax
movzx eax, byte [rcx + 1]
shl r8d, 8
or r8d, eax
movzx eax, byte [rcx + 3]
or edi, eax
movzx eax, byte [rcx + 4]
shl edi, 8
or edi, eax
movzx eax, byte [rcx + 5]
add rcx, 8
shl edi, 8
or edi, eax
mov qword [rbp - 0x20], rcx
xor r10d, edi
mov ecx, r12d
mov eax, r10d
sub eax, r13d
xor eax, r12d
xor eax, r8d
xor r9d, eax
movzx eax, word [rbp + 0xb5a]
xor ecx, r9d
ror ecx, 0xf
imul ecx, eax
mov eax, r9d
ror eax, 7
add ecx, eax
xor r10d, ecx
mov eax, r10d
ror eax, 0xa
lea ecx, [rsi + r10]
ror ecx, 9
imul ecx, r15d
sub ecx, eax
movzx eax, word [rbp + 0xb5e]
xor r9d, ecx
mov ecx, r15d
xor ecx, r9d
rol ecx, 4
imul ecx, eax
mov eax, r9d
rol eax, 5
add ecx, eax
mov eax, r12d
xor r10d, ecx
mov ecx, esi
xor ecx, r10d
sub eax, ecx
xor r9d, eax
movzx eax, word [rbp + 0xb5a]
mov ecx, r9d
sub ecx, r13d
imul ecx, eax
mov eax, r9d
shr eax, 6
sub ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0xb5e]
mov eax, r10d
ror eax, 0xf
xor eax, r15d
imul eax, r13d
xor r9d, eax
mov eax, r9d
not eax
ror eax, 3
add eax, ecx
imul eax, r15d
xor r10d, eax
mov eax, r10d
sub eax, r13d
sub eax, r12d
xor r9d, eax
movzx eax, word [rbp + 0xb5e]
xor eax, r9d
mov ecx, r9d
imul eax, dword [rbp - 0x40]
ror ecx, 0xa
xor ecx, eax
xor r10d, ecx
mov ecx, r13d
xor ecx, r10d
mov eax, r10d
rol ecx, 6
imul ecx, r15d
ror eax, 3
xor ecx, eax
xor r9d, ecx
movzx ecx, word [rbp + 0xb5e]
mov eax, r9d
ror eax, 0xf
sub eax, ecx
imul eax, r13d
xor r10d, eax
xor ecx, r10d
mov eax, r10d
imul ecx, r13d
shr eax, 1
xor ecx, eax
mov eax, r10d
xor r9d, ecx
shr eax, 0xf
mov ecx, r10d
sub ecx, r15d
rol ecx, 3
imul ecx, r13d
xor ecx, eax
movzx eax, word [rbp + 0xb5a]
xor r9d, ecx
mov ecx, r9d
sub ecx, r15d
imul ecx, eax
mov eax, r9d
shr eax, 0xd
sub ecx, eax
xor r10d, ecx
mov ecx, esi
sub ecx, r10d
mov eax, r10d
ror ecx, 9
imul ecx, r15d
ror eax, 0xb
xor ecx, eax
xor r9d, ecx
movzx ecx, word [rbp + 0xb5e]
mov eax, r9d
sub eax, esi
sub eax, ecx
xor r10d, eax
movzx eax, word [rbp + 0xb5a]
xor eax, r10d
mov ecx, r10d
ror ecx, 7
imul eax, r13d
sub eax, ecx
movzx ecx, word [rbp + 0xb5e]
xor r9d, eax
movzx eax, word [rbp + 0xb5a]
xor ecx, r9d
rol ecx, 4
imul ecx, eax
mov eax, r9d
ror eax, 0x10
sub ecx, eax
xor r10d, ecx
mov ecx, esi
sub ecx, r10d
mov eax, r10d
ror ecx, 0xa
imul ecx, r15d
ror eax, 4
add ecx, eax
xor r9d, ecx
movzx eax, word [rbp + 0xb5e]
mov ecx, r9d
sub ecx, esi
ror ecx, 4
imul ecx, eax
mov eax, r9d
ror eax, 9
xor ecx, eax
xor r10d, ecx
mov ecx, r12d
xor ecx, r10d
mov eax, r10d
rol ecx, 8
imul ecx, r13d
rol eax, 2
sub ecx, eax
movzx eax, word [rbp + 0xb5a]
xor r9d, ecx
mov ecx, r12d
sub ecx, r9d
ror ecx, 0xb
imul ecx, eax
mov eax, r9d
ror eax, 0xc
sub ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0xb5a]
xor ecx, r10d
mov eax, r10d
shr eax, 8
imul ecx, r15d
xor ecx, eax
mov eax, esi
xor r9d, ecx
xor eax, r12d
mov rcx, qword [rbp - 0x20]
xor r10d, eax
xor r10d, r9d
xor r9d, ebx
mov byte [rdx - 4], r9b
xor r10d, r14d
mov byte [rdx], r10b
mov ebx, r8d
ror r9d, 8
mov r14d, edi
mov byte [rdx - 5], r9b
lea rdx, [rdx + 8]
ror r10d, 8
mov byte [rdx - 9], r10b
ror r9d, 8
mov byte [rdx - 0xe], r9b
ror r10d, 8
mov byte [rdx - 0xa], r10b
ror r9d, 8
ror r10d, 8
mov byte [rdx - 0xf], r9b
mov byte [rdx - 0xb], r10b
ror r10d, 8
ror r9d, 8
sub r11, 1
jne 0x140156ae0
mov dl, byte [rsp + 0x60]
xor r15d, r15d
mov r13, qword [rbp - 0x38]
mov ebx, r15d
movabs r14, 0x7f1137fab69605e
mov rcx, qword [rbp - 0x70]
lea r12, [r13 + 8]
movzx eax, dl
mov qword [rcx + r13], rax
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], r12
lea rax, [0x14037a840]
mov qword [rbp + 0x2b0], 8
mov qword [rbp + 0x2a8], rax
lea r13, [0x14037a7a0]
mov qword [rbp + 0x2c0], Ordinal_165
mov qword [rbp + 0x2b8], r13
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 rdi, rax
test rax, rax
jne 0x140156e63
mov r12d, 0xc0000017
jmp 0x140157044
mov r12d, r12d
mov dword [rax], r12d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, r12d
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 0x140156f8e
mov qword [rdi + 8], rax
mov rdx, qword [rbp - 0x70]
mov r8d, r12d
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r12d, Ordinal_165
mov dword [rdi + 0x10], r12d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, r12d
mov r12d, 8
mov edx, r12d
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 0x140156f8e
mov qword [rdi + 0x18], rax
movups xmm0, xmmword [r13]
lea edx, [r12 + 0x78]
movups xmmword [rax], xmm0
movups xmm1, xmmword [r13 + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [r13 + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [r13 + 0x30]
movups xmmword [rax + 0x30], xmm1
movups xmm0, xmmword [r13 + 0x40]
movups xmmword [rax + 0x40], xmm0
movups xmm1, xmmword [r13 + 0x50]
movups xmmword [rax + 0x50], xmm1
movups xmm0, xmmword [r13 + 0x60]
movups xmmword [rax + 0x60], xmm0
movups xmm1, xmmword [r13 + 0x70]
movups xmmword [rax + rdx - 0x10], xmm1
movups xmm0, xmmword [r13 + rdx]
movups xmmword [rax + rdx], xmm0
movups xmm1, xmmword [r13 + rdx + 0x10]
movups xmmword [rax + rdx + 0x10], xmm1
mov dword [rdi + 0x20], r12d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, r12d
mov edx, r12d
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 0x140156f8e
mov qword [rdi + 0x28], rax
mov rax, qword [0x14037a840]
mov rbx, rdi
mov qword [rcx], rax
mov r12d, r15d
mov rdi, r15
jmp 0x140156f94
mov r12d, 0xc0000017
test rdi, rdi
je 0x140157044
mov r13, qword [rdi + 8]
test r13, r13
je 0x140156fca
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 qword [rdi + 8], r15
mov r13, qword [rdi + 0x18]
test r13, r13
je 0x140156ff7
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 qword [rdi + 0x18], r15
mov r13, qword [rdi + 0x28]
test r13, r13
je 0x140157024
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 qword [rdi + 0x28], r15
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
test r12d, r12d
js 0x14015705b
mov qword [rbp + 0x280], rbx
mov rbx, r15
jmp 0x14015705b
mov r12d, 0xc0000001
mov rdi, qword [rbp + 0x298]
test rdi, rdi
je 0x14015708e
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x298], r15
test rbx, rbx
je 0x14015713e
mov rdi, qword [rbx + 8]
test rdi, rdi
je 0x1401570c4
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], r15
mov rdi, qword [rbx + 0x18]
test rdi, rdi
je 0x1401570f1
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], r15
mov rdi, qword [rbx + 0x28]
test rdi, rdi
je 0x14015711e
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], r15
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
or r12d, 0x10000000
mov dword [rbp - 0x20], r12d
jl 0x14015854f
mov rbx, qword [rbp + 0x280]
lea r8, [rbp + 0xc8]
mov r13d, 4
mov ecx, r13d
mov dword [rbp + 0xc8], r13d
mov edx, dword [rbx]
call fcn.140016278
mov r12d, eax
test eax, eax
js 0x140157203
mov ecx, dword [rbp + 0xc8]
lea r8, [rbp + 0xc8]
mov edx, r13d
call fcn.140016278
mov r12d, eax
test eax, eax
js 0x140157203
mov edx, dword [rbx + 0x10]
lea r8, [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
call fcn.140016278
mov r12d, eax
test eax, eax
js 0x140157203
mov ecx, dword [rbp + 0xc8]
lea r8, [rbp + 0xc8]
mov edx, r13d
call fcn.140016278
mov r12d, eax
test eax, eax
js 0x140157203
mov edx, dword [rbx + 0x20]
lea r8, [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
call fcn.140016278
mov r12d, eax
mov eax, dword [rbp + 0xcc]
test r12d, r12d
cmovns eax, dword [rbp + 0xc8]
mov dword [rbp + 0xcc], eax
jmp 0x140157209
mov eax, dword [rbp + 0xcc]
test r12d, r12d
js 0x140157385
mov edi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
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 rdi, rax
test rax, rax
jne 0x14015724a
mov r12d, 0xc0000017
jmp 0x140157385
mov eax, dword [rbx]
lea r8, [rbp + 0x2c8]
mov rdx, r13
mov dword [rdi], eax
mov rcx, rdi
mov qword [rbp + 0x2c8], rdi
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140157360
mov r8d, dword [rbx]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbp + 0x2c8]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov edx, dword [rbx]
lea r8, [rbp + 0x2c8]
mov rcx, qword [rbp + 0x2c8]
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140157360
mov rcx, qword [rbp + 0x2c8]
lea r8, [rbp + 0x2c8]
mov eax, dword [rbx + 0x10]
mov rdx, r13
mov dword [rcx], eax
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140157360
mov r8d, dword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbp + 0x2c8]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov edx, dword [rbx + 0x10]
lea r8, [rbp + 0x2c8]
mov rcx, qword [rbp + 0x2c8]
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140157360
mov rcx, qword [rbp + 0x2c8]
lea r8, [rbp + 0x2c8]
mov eax, dword [rbx + 0x20]
mov rdx, r13
mov dword [rcx], eax
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140157360
mov r8d, dword [rbx + 0x20]
mov rdx, qword [rbx + 0x28]
mov rcx, qword [rbp + 0x2c8]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov edx, dword [rbx + 0x20]
lea r8, [rbp + 0x2c8]
mov rcx, qword [rbp + 0x2c8]
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140157360
mov eax, dword [rbp + 0xcc]
mov qword [rsp + 0x78], rdi
mov rdi, r15
mov dword [rbp - 0x78], eax
test rdi, rdi
je 0x140157385
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 ebx, 0x10000000
or r12d, ebx
mov dword [rbp - 0x20], r12d
jl 0x14015854f
mov qword [rbp + 0x2d0], r15
mov r10d, r15d
mov dword [rbp + 0xd0], r15d
mov r11d, r15d
mov qword [rbp + 0x2d8], r15
mov dword [rbp + 0xd4], r15d
mov dword [rbp + 0xd8], 8
mov edx, dword [rbp - 0x68]
lea r8, [rbp + 0xd8]
mov ecx, 8
call fcn.140016278
mov r12d, eax
or r12d, ebx
mov dword [rbp - 0x20], r12d
jl 0x1401576ac
mov eax, dword [rbp + 0xd8]
add rax, 7
and eax, 0xfffffff8
cmp eax, dword [rbp + 0xd8]
jae 0x14015740e
mov edi, dword [rbp + 0xdc]
mov r12d, 0xc0000095
mov dword [rbp - 0x20], r12d
jmp 0x14015743f
mov dword [rbp + 0xe0], eax
mov edx, ecx
lea r8, [rbp + 0xe0]
mov ecx, eax
call fcn.140016278
mov edi, dword [rbp + 0xdc]
test eax, eax
mov r12d, eax
mov dword [rbp - 0x20], eax
cmovns edi, dword [rbp + 0xe0]
mov dword [rbp + 0xdc], edi
test r12d, r12d
js 0x14015854f
cmp qword [rbp + 0x5d8], r15
je 0x140157679
mov eax, 1
cmp dword [rbp + 0x5d0], eax
jbe 0x140157679
mov rcx, qword [rbp + 0x5d8]
mov r9d, r15d
mov qword [rbp + 0x2e0], rcx
mov ebx, dword [rcx]
lea r8, [rbp + 0x2e0]
mov rdx, r13
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140157507
mov rcx, qword [rbp + 0x2e0]
lea r8, [rbp + 0x2e0]
mov edx, ebx
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140157507
mov rcx, qword [rbp + 0x2e0]
mov eax, 1
add r9d, eax
cmp r9d, eax
jb 0x140157477
mov r9d, dword [rcx]
lea r8, [rbp + 0x2e0]
mov rdx, r13
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140157507
mov rax, qword [rbp + 0x2e0]
test r9d, r9d
mov r10d, r9d
mov dword [rbp + 0xd0], r9d
cmove rax, r15
mov qword [rbp + 0x2e0], rax
mov qword [rbp + 0x2d0], rax
test r12d, r12d
js 0x14015854f
cmp dword [rbp + 0x5d0], 2
jbe 0x140157679
mov rcx, qword [rbp + 0x5d8]
mov r9d, r15d
mov qword [rbp + 0x2e8], rcx
mov ebx, dword [rcx]
lea r8, [rbp + 0x2e8]
mov rdx, r13
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x1401575ba
mov rcx, qword [rbp + 0x2e8]
lea r8, [rbp + 0x2e8]
mov edx, ebx
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x1401575ba
mov rcx, qword [rbp + 0x2e8]
inc r9d
cmp r9d, 2
jb 0x14015752e
mov r9d, dword [rcx]
lea r8, [rbp + 0x2e8]
mov rdx, r13
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x1401575ba
mov rax, qword [rbp + 0x2e8]
test r9d, r9d
mov r11d, r9d
mov dword [rbp + 0xd4], r9d
cmove rax, r15
mov qword [rbp + 0x2e8], rax
mov qword [rbp + 0x2d8], rax
test r12d, r12d
js 0x14015854f
lea r8, [rbp + 0xe4]
mov dword [rbp + 0xe4], r13d
mov edx, edi
mov ecx, r13d
call fcn.140016278
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140157685
mov ecx, dword [rbp + 0xe4]
lea r8, [rbp + 0xe4]
mov edx, r13d
call fcn.140016278
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140157685
mov ecx, dword [rbp + 0xe4]
lea r8, [rbp + 0xe4]
mov edx, r10d
call fcn.140016278
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140157685
mov ecx, dword [rbp + 0xe4]
lea r8, [rbp + 0xe4]
mov edx, r13d
call fcn.140016278
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140157685
mov ecx, dword [rbp + 0xe4]
lea r8, [rbp + 0xe4]
mov edx, r11d
call fcn.140016278
mov r12d, eax
mov dword [rbp - 0x20], eax
mov eax, dword [rbp + 0xe8]
test r12d, r12d
cmovns eax, dword [rbp + 0xe4]
mov dword [rbp + 0xe8], eax
jmp 0x14015768b
mov r12d, 0xc000000d
mov dword [rbp - 0x20], r12d
jmp 0x1401576ac
mov eax, dword [rbp + 0xe8]
test r12d, r12d
js 0x14015854f
cmp eax, 0x400000
jbe 0x1401576a6
mov r12d, 0x8000ffff
jmp 0x14015854b
mov dword [rbp + 0xfc], eax
test r12d, r12d
js 0x14015854f
mov edi, dword [rbp + 0xfc]
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
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 0x1401576ee
mov r12d, 0xd0000017
mov rbx, r15
jmp 0x1401576fb
mov rbx, rax
mov qword [rbp - 0x48], rax
mov r12d, 0x10000000
mov dword [rbp - 0x20], r12d
test r12d, r12d
js 0x14015854f
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x1401577c2
test rbx, rbx
je 0x1401577c2
mov qword [rbp + 0x6b0], rax
lea r8, [rbp + 0x2f0]
mov eax, dword [rbp - 0x78]
lea rdx, [0x1403006e0]
mov dword [rbp + 0x6c0], eax
mov ecx, 1
mov eax, dword [rbp + 0xfc]
mov dword [rbp + 0x6c4], eax
mov qword [rbp + 0x6b8], rbx
mov dword [rbp + 0x6c8], r15d
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
je 0x1401577cd
mov rcx, qword [rbp + 0x2f0]
lea rdx, str.NtQuerySystemInformation
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x1401577cd
xor r9d, r9d
lea rdx, [rbp + 0x6b0]
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call qword [case.0x14006c37f.0]
mov edi, dword [rbp + 0xfc]
mov r12d, eax
or r12d, 0x10000000
cmovge edi, dword [rbp + 0x6c4]
mov dword [rbp + 0xfc], edi
jmp 0x140157803
mov r12d, 0x80070057
jmp 0x14015854b
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
jle 0x1401577f2
movzx r12d, ax
or r12d, 0x80070000
mov dword [rbp - 0x20], r12d
mov edi, dword [rbp + 0xfc]
test r12d, r12d
js 0x140157807
mov r12d, 0x80004005
mov dword [rbp - 0x20], r12d
cmp r12d, 0xd0000023
jne 0x140157822
mov r13d, 0x8007007a
mov r12d, r13d
mov dword [rbp - 0x20], r13d
jmp 0x140158555
test r12d, r12d
js 0x14015854f
mov qword [rbp - 0x38], r15
mov dword [rbp + 0xec], r15d
mov qword [rbp + 0x2f8], rbx
cmp edi, r13d
jb 0x140157a62
mov r9d, dword [rbx]
lea r8, [rbp + 0x2f8]
mov rdx, r13
mov dword [rbp - 0x20], r9d
mov rcx, rbx
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140157a68
lea r8, [rbp + 0xec]
mov edx, r13d
xor ecx, ecx
call fcn.140016278
mov r12d, eax
test eax, eax
js 0x140157a68
mov eax, edi
sub eax, dword [rbp + 0xec]
cmp eax, r9d
jb 0x140157a62
mov rax, qword [rbp + 0x2f8]
lea r8, [rbp + 0x2f8]
mov rcx, rax
mov qword [rbp - 0x70], rax
mov edx, r9d
mov qword [rbp - 0x68], r9
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140157a68
mov ecx, dword [rbp + 0xec]
lea r8, [rbp + 0xec]
mov edx, r9d
call fcn.140016278
mov r12d, eax
test eax, eax
js 0x140157a68
mov eax, edi
sub eax, dword [rbp + 0xec]
cmp eax, r13d
jb 0x140157a62
mov rcx, qword [rbp + 0x2f8]
lea r8, [rbp + 0x2f8]
mov rdx, r13
mov ebx, dword [rcx]
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140157a68
mov ecx, dword [rbp + 0xec]
lea r8, [rbp + 0xec]
mov edx, r13d
call fcn.140016278
mov r12d, eax
test eax, eax
js 0x140157a68
mov eax, edi
sub eax, dword [rbp + 0xec]
cmp eax, ebx
jb 0x140157a62
mov rax, qword [rbp + 0x2f8]
lea r8, [rbp + 0x2f8]
mov rcx, rax
mov qword [rbp - 0x78], rax
mov edx, ebx
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140157a68
mov ecx, dword [rbp + 0xec]
lea r8, [rbp + 0xec]
mov edx, ebx
call fcn.140016278
mov r12d, eax
test eax, eax
js 0x140157a68
mov eax, edi
sub eax, dword [rbp + 0xec]
cmp eax, r13d
jb 0x140157a62
mov rcx, qword [rbp + 0x2f8]
lea r8, [rbp + 0x2f8]
mov r10d, 4
mov edx, r10d
mov r13d, dword [rcx]
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140157a68
mov ecx, dword [rbp + 0xec]
lea r8, [rbp + 0xec]
mov edx, r10d
call fcn.140016278
mov r12d, eax
test eax, eax
js 0x140157a68
mov ecx, dword [rbp + 0xec]
mov eax, edi
sub eax, ecx
cmp eax, r13d
jb 0x140157a62
lea r8, [rbp + 0xec]
mov edx, r13d
call fcn.140016278
mov r12d, eax
test eax, eax
js 0x140157a68
cmp edi, dword [rbp + 0xec]
jne 0x140157a62
lea ecx, [rbx + r9]
mov eax, edi
add ecx, r13d
add rcx, 0xc
cmp rcx, rax
jne 0x140157a62
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 rdi, rax
test rax, rax
jne 0x140157b40
mov r12d, 0xc0000017
jmp 0x140157d01
mov r12d, 0xc000003e
mov rbx, r15
or r12d, 0x10000000
mov dword [rbp - 0x20], r12d
jl 0x14015854f
mov qword [rbp + 0x300], r15
mov rdi, r15
mov r13, r15
test rbx, rbx
je 0x140157dd5
mov r12, qword [rbx + 8]
mov qword [rbp - 8], r12
test r12, r12
je 0x140157dd5
cmp dword [rbx], r15d
je 0x140157dd5
mov ebx, dword [rbx]
mov dword [rbp - 0x20], r15d
test rbx, rbx
je 0x14015828c
add rbx, 0xfffffffffffffff8
mov rcx, rbx
mov qword [rbp - 0x28], rbx
call fcn.140092328
mov qword [rbp], rax
mov r11, rax
test rax, rax
je 0x140158285
mov rdi, rbx
mov qword [rbp + 0xb50], r14
mov dl, r15b
mov r8, r12
mov byte [rsp + 0x60], dl
mov r10d, r15d
and edi, 7
je 0x140157ebc
mov dword [rbp - 0x68], r15d
mov ecx, r15d
mov dword [rbp - 0x78], ecx
mov r12d, r15d
test edi, edi
je 0x140157e13
mov esi, 4
lea r9d, [rsi + 0x34]
lea r14d, [rsi - 3]
movzx eax, byte [r8]
inc r8
cmp r10d, esi
jge 0x140157de0
lea ecx, [r9 - 0x20]
shl eax, cl
mov ecx, dword [rbp - 0x78]
or ecx, eax
mov dword [rbp - 0x78], ecx
jmp 0x140157deb
mov r12, qword [rbp - 0x70]
test r12, r12
je 0x140157b97
mov eax, dword [rbp - 0x20]
mov dword [rdi], eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [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]
test rax, rax
je 0x140157b8c
mov qword [rdi + 8], rax
mov r8, qword [rbp - 0x68]
mov rdx, r12
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x140157b9e
mov r12d, 0xc0000017
jmp 0x140157c51
mov dword [rax], r15d
mov qword [rax + 8], r15
mov r12, qword [rbp - 0x78]
test r12, r12
je 0x140157be6
mov dword [rdi + 0x10], ebx
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
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 0x140157b8c
mov qword [rdi + 0x18], rax
mov r8, rbx
mov rdx, r12
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x140157bee
mov dword [rdi + 0x10], r15d
mov qword [rdi + 0x18], r15
cmp qword [rbp + 0x2f8], r15
je 0x140157c3f
mov dword [rdi + 0x20], r13d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
mov edx, 8
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
je 0x140157b8c
mov qword [rdi + 0x28], rax
mov rdx, qword [rbp + 0x2f8]
mov r8, r13
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x140157c47
mov dword [rdi + 0x20], r15d
mov qword [rdi + 0x28], r15
mov qword [rbp - 0x38], rdi
mov r12d, r15d
mov rdi, r15
test rdi, rdi
je 0x140157d01
mov rbx, qword [rdi + 8]
test rbx, rbx
je 0x140157c87
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 [rdi + 8], r15
mov rbx, qword [rdi + 0x18]
test rbx, rbx
je 0x140157cb4
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 [rdi + 0x18], r15
mov rbx, qword [rdi + 0x28]
test rbx, rbx
je 0x140157ce1
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 [rdi + 0x28], r15
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 rbx, qword [rbp - 0x38]
test r12d, r12d
mov rdi, r15
cmovs rdi, qword [rbp - 0x38]
cmovs rbx, r15
mov qword [rbp - 0x30], rbx
test rdi, rdi
je 0x140157a6b
mov rbx, qword [rdi + 8]
test rbx, rbx
je 0x140157d4e
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 [rdi + 8], r15
mov rbx, qword [rdi + 0x18]
test rbx, rbx
je 0x140157d7b
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 [rdi + 0x18], r15
mov rbx, qword [rdi + 0x28]
test rbx, rbx
je 0x140157da8
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 [rdi + 0x28], r15
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 rbx, qword [rbp - 0x30]
mov qword [rbp - 0x30], rbx
jmp 0x140157a6b
mov r12d, 0xd000000d
jmp 0x14015854b
mov ecx, r9d
shl eax, cl
mov ecx, dword [rbp - 0x78]
or r12d, eax
add r10d, r14d
sub r9d, 8
cmp r10d, edi
jl 0x140157b1d
mov dword [rbp - 0x68], r12d
movabs rsi, 0xc81ecb17b1b54a58
movabs r14, 0x7f1137fab69605e
mov r9d, ecx
mov r10d, r12d
xor r9d, 0x92f65a5
xor r10d, 0x699a899c
mov eax, r9d
mov ecx, r10d
mov r12d, r15d
test edi, edi
je 0x140157e8c
mov edx, 4
mov rsi, r11
lea ebx, [rdx - 3]
lea r14, [rsi + 1]
mov qword [rbp - 0x38], r14
cmp r12d, edx
jge 0x140157e54
rol eax, 8
mov r14d, eax
jmp 0x140157e5a
rol ecx, 8
mov r14d, ecx
mov byte [rsi], r14b
add r12d, ebx
mov r14, qword [rbp - 0x38]
mov rsi, r14
cmp r12d, edi
jl 0x140157e3f
mov rbx, qword [rbp - 0x28]
mov rax, r14
movabs r14, 0x7f1137fab69605e
mov dl, r13b
movabs rsi, 0xc81ecb17b1b54a58
jmp 0x140157e8f
mov rax, r11
mov ecx, 4
cmp edi, ecx
jbe 0x140157eaa
mov ecx, 8
sub ecx, edi
shl ecx, 3
shr r10d, cl
shl r10d, cl
jmp 0x140157ec7
mov r10d, r15d
jae 0x140157ec7
sub ecx, edi
shl ecx, 3
shr r9d, cl
shl r9d, cl
jmp 0x140157ec7
or dword [rbp - 0x68], 0xffffffff
mov r9d, r15d
mov dword [rbp - 0x78], r15d
mov r12, rbx
shr r12, 3
test r12, r12
je 0x140158206
mov edx, dword [rbp + 0xb54]
lea rbx, [rax + 7]
mov esi, dword [rbp - 0x68]
lea r15, [r8 + 2]
mov r13d, dword [rbp - 0x78]
movzx ecx, dx
mov dword [rbp - 0x60], ecx
mov ecx, r14d
xor ecx, edx
mov dword [rbp - 0x40], ecx
movzx ecx, word [rbp + 0xb52]
mov r11d, dword [rbp - 0x40]
mov dword [rbp - 0x70], ecx
movzx ecx, r14w
mov dword [rbp - 0x38], ecx
movzx eax, byte [r15 - 1]
movzx r8d, byte [r15 - 2]
movzx edi, byte [r15 + 2]
shl r8d, 8
or r8d, eax
shl edi, 8
movzx eax, byte [r15]
lea r15, [r15 + 8]
shl r8d, 8
or r8d, eax
movzx eax, byte [r15 - 7]
shl r8d, 8
or r8d, eax
movzx eax, byte [r15 - 5]
or edi, eax
xor r9d, r8d
movzx eax, byte [r15 - 4]
shl edi, 8
or edi, eax
movzx eax, byte [r15 - 3]
shl edi, 8
or edi, eax
mov eax, r14d
xor eax, edx
xor r10d, edi
xor r10d, eax
xor r10d, r9d
mov ecx, r10d
mov eax, r10d
sub ecx, r14d
rol eax, 0xa
rol ecx, 5
imul ecx, dword [rbp - 0x60]
add ecx, eax
movzx eax, word [rbp + 0xb52]
xor r9d, ecx
lea ecx, [rdx + r9]
ror ecx, 9
imul ecx, eax
mov eax, r9d
rol eax, 2
sub ecx, eax
xor r10d, ecx
mov ecx, r10d
mov eax, r10d
sub ecx, dword [rbp - 0x60]
imul ecx, dword [rbp - 0x38]
shr eax, 0xd
sub ecx, eax
movzx eax, word [rbp + 0xb56]
xor r9d, ecx
movzx ecx, word [rbp + 0xb52]
xor ecx, r9d
rol ecx, 6
imul ecx, eax
mov eax, r9d
rol eax, 2
sub ecx, eax
mov eax, edx
xor r10d, ecx
mov ecx, r14d
xor ecx, r10d
sub eax, ecx
xor r9d, eax
mov eax, r9d
mov ecx, r9d
xor eax, dword [rbp - 0x60]
imul eax, dword [rbp - 0x70]
ror ecx, 6
xor ecx, eax
xor r10d, ecx
mov eax, r10d
rol eax, 2
lea ecx, [rdx + r10]
ror ecx, 0xf
imul ecx, dword [rbp - 0x38]
add ecx, eax
xor r9d, ecx
mov ecx, r9d
sub ecx, r14d
ror ecx, 0xe
movzx eax, word [rbp + 0xb56]
imul ecx, eax
mov eax, r9d
rol eax, 8
sub ecx, eax
xor r10d, ecx
mov ecx, r14d
xor ecx, r10d
mov eax, r10d
ror eax, 0xa
ror ecx, 0xc
imul ecx, dword [rbp - 0x60]
xor ecx, eax
movzx eax, word [rbp + 0xb52]
xor r9d, ecx
movzx ecx, word [rbp + 0xb56]
xor ecx, r9d
imul ecx, eax
mov eax, r9d
shr eax, 0xa
xor ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0xb56]
mov eax, r10d
not eax
ror eax, 5
add eax, dword [rbp - 0x38]
imul eax, ecx
xor r9d, eax
mov eax, r9d
sub eax, ecx
xor eax, r14d
xor r10d, eax
xor ecx, r10d
mov eax, r10d
rol ecx, 2
imul ecx, dword [rbp - 0x60]
shr eax, 2
add ecx, eax
movzx eax, word [rbp + 0xb52]
xor r9d, ecx
mov ecx, r9d
sub ecx, edx
ror ecx, 6
imul ecx, eax
mov eax, r9d
rol eax, 7
add ecx, eax
xor r10d, ecx
mov eax, r10d
mov ecx, r10d
xor eax, dword [rbp - 0x60]
imul eax, dword [rbp - 0x38]
ror ecx, 9
add ecx, eax
movzx eax, word [rbp + 0xb56]
xor r9d, ecx
movzx ecx, word [rbp + 0xb52]
xor ecx, r9d
rol ecx, 5
imul ecx, eax
mov eax, r9d
rol eax, 7
add ecx, eax
mov eax, r11d
xor r10d, ecx
movzx ecx, word [rbp + 0xb52]
xor eax, r10d
xor r9d, eax
mov eax, r9d
ror eax, 3
sub eax, ecx
imul eax, dword [rbp - 0x60]
xor r10d, eax
mov ecx, r10d
mov eax, r10d
sub ecx, edx
ror eax, 6
ror ecx, 1
imul ecx, dword [rbp - 0x38]
sub ecx, eax
movzx eax, word [rbp + 0xb56]
xor r9d, ecx
lea ecx, [r14 + r9]
rol ecx, 3
imul ecx, eax
mov eax, r9d
rol eax, 0xe
add ecx, eax
xor r10d, ecx
mov eax, r10d
ror eax, 0xe
lea ecx, [r14 + r10]
rol ecx, 0xf
imul ecx, dword [rbp - 0x60]
sub ecx, eax
movzx eax, word [rbp + 0xb52]
xor r9d, ecx
mov ecx, dword [rbp - 0x38]
xor ecx, r9d
imul ecx, eax
mov eax, r9d
shr eax, 3
xor ecx, eax
xor r10d, ecx
mov ecx, edx
xor ecx, r10d
mov eax, r10d
xor r10d, esi
rol ecx, 4
imul ecx, dword [rbp - 0x38]
mov esi, edi
rol eax, 2
xor ecx, eax
xor ecx, r13d
mov r13d, r8d
xor r9d, ecx
mov ecx, 1
mov byte [rbx - 4], r9b
mov byte [rbx], r10b
lea rbx, [rbx + 8]
ror r9d, 8
mov byte [rbx - 0xd], r9b
ror r10d, 8
mov byte [rbx - 9], r10b
ror r9d, 8
mov byte [rbx - 0xe], r9b
ror r10d, 8
mov byte [rbx - 0xa], r10b
ror r9d, 8
ror r10d, 8
mov byte [rbx - 0xf], r9b
mov byte [rbx - 0xb], r10b
ror r10d, 8
ror r9d, 8
sub r12, rcx
jne 0x140157f0f
mov dl, byte [rsp + 0x60]
xor r15d, r15d
mov rbx, qword [rbp - 0x28]
mov r13d, r15d
mov r11, qword [rbp]
movabs rsi, 0xc81ecb17b1b54a58
jmp 0x14015820b
mov ecx, 1
mov rax, r15
test rbx, rbx
je 0x14015821f
xor dl, byte [rax + r11]
add rax, rcx
cmp rax, rbx
jb 0x140158213
mov rcx, qword [rbp - 8]
movzx eax, dl
cmp rax, qword [rbx + rcx]
je 0x14015823a
mov rdi, qword [rbp + 0x300]
mov ebx, 0xc004d501
jmp 0x14015824d
mov rdi, r11
mov qword [rbp + 0x300], r11
mov r13, rbx
mov r11, r15
mov ebx, dword [rbp - 0x20]
test r11, r11
je 0x140158261
mov rcx, r11
call fcn.14009515c
mov rdi, qword [rbp + 0x300]
test ebx, ebx
js 0x14015828c
mov rbx, rdi
mov qword [rbp + 0x300], r15
mov qword [rbp - 0x18], rbx
mov rdi, r15
mov dword [rbp + 0xc0], r13d
mov r12d, 0x10000000
jmp 0x14015829c
mov rdi, qword [rbp + 0x300]
mov r13d, dword [rbp + 0xc0]
mov r12d, 0xd0000001
mov rbx, r15
mov dword [rbp - 0x20], r12d
test rdi, rdi
je 0x1401582d3
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 r13d, dword [rbp + 0xc0]
mov qword [rbp + 0x300], r15
test r12d, r12d
js 0x14015854f
mov edi, 4
mov dword [rbp + 0xf0], r15d
mov qword [rbp + reloc.SHELL32.dll_Ordinal_792], rbx
cmp r13d, edi
jb 0x140158540
mov eax, dword [rbx]
lea r8, [rbp + reloc.SHELL32.dll_Ordinal_792]
mov edx, edi
mov dword [rbp - 0x38], eax
mov rcx, rbx
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140158546
lea r8, [rbp + 0xf0]
mov edx, edi
xor ecx, ecx
call fcn.140016278
mov r12d, eax
test eax, eax
js 0x140158546
mov eax, r13d
sub eax, dword [rbp + 0xf0]
cmp eax, edi
jb 0x140158540
mov rcx, qword [rbp + reloc.SHELL32.dll_Ordinal_792]
lea r8, [rbp + reloc.SHELL32.dll_Ordinal_792]
mov edx, edi
mov r11d, dword [rcx]
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140158546
mov ecx, dword [rbp + 0xf0]
lea r8, [rbp + 0xf0]
mov edx, edi
call fcn.140016278
mov r12d, eax
test eax, eax
js 0x140158546
mov ecx, dword [rbp + 0xf0]
mov eax, r13d
sub eax, ecx
cmp eax, r11d
jb 0x140158540
lea r8, [rbp + 0xf0]
mov edx, r11d
call fcn.140016278
mov r12d, eax
test eax, eax
js 0x140158546
mov edx, r13d
mov r13d, r11d
lea rcx, [rbx + rdx]
mov rbx, qword [rbp + reloc.SHELL32.dll_Ordinal_792]
lea rax, [rbx + r11]
cmp rcx, rax
jb 0x140158540
mov rax, qword [rbp - 0x18]
sub rax, r11
sub rax, rbx
add rax, rdx
cmp rax, 8
jae 0x140158540
mov dword [rbp - 0x70], r15d
mov rdi, r15
mov r12d, r15d
test rbx, rbx
je 0x1401584ca
lea r8, [rbp + 0x320]
mov edx, r11d
mov rcx, rbx
mov rdi, rbx
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140158530
mov r10, qword [rbp + 0x320]
cmp rbx, r10
jae 0x1401584c2
mov r9d, dword [rbp + 0xf4]
lea r8, [rbp + 0x328]
mov edx, 4
mov rcx, rdi
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140158530
cmp qword [rbp + 0x328], r10
ja 0x140158502
mov edx, dword [rdi]
lea r8, [rbp + 0xf8]
mov ecx, 4
call fcn.140016278
test eax, eax
mov r12d, eax
cmovns r9d, dword [rbp + 0xf8]
mov dword [rbp + 0xf4], r9d
js 0x140158530
mov edx, r9d
lea r8, [rbp + 0x330]
mov rcx, rdi
call fcn.140016254
mov r12d, eax
test eax, eax
js 0x140158530
mov rdi, qword [rbp + 0x330]
cmp rdi, r10
ja 0x140158502
inc dword [rbp - 0x70]
cmp rdi, r10
jb 0x140158434
cmp rdi, r10
jne 0x140158502
mov rdi, r15
test r11d, r11d
je 0x14015850d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
mov edx, 8
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
jne 0x14015850a
mov r12d, 0xc0000017
jmp 0x140158530
mov r12d, 0xc000000d
jmp 0x140158546
mov r12d, r15d
test rbx, rbx
je 0x140158520
mov r8, r13
mov rdx, rbx
mov rcx, rdi
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, dword [rbp - 0x70]
mov dword [rbp + 0x5e0], eax
mov qword [rbp + 0x5e8], rdi
test r12d, r12d
js 0x140158546
mov eax, dword [rbp - 0x38]
cmp eax, dword [rbp + 0x5e0]
je 0x140158546
mov r12d, 0xc000003e
bts r12d, 0x1c
mov dword [rbp - 0x20], r12d
mov r13d, 0x8007007a
mov rbx, qword [rbp - 0x50]
test rbx, rbx
je 0x14015857e
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 + 0x280]
test rbx, rbx
je 0x14015863c
mov rdi, qword [rbx + 8]
test rdi, rdi
je 0x1401585bb
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], r15
mov rdi, qword [rbx + 0x18]
test rdi, rdi
je 0x1401585e8
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], r15
mov rdi, qword [rbx + 0x28]
test rdi, rdi
je 0x140158615
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], r15
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 + 0x280], r15
mov rdi, qword [rsp + 0x78]
test rdi, rdi
je 0x140158666
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov rdi, qword [rbp - 0x48]
test rdi, rdi
je 0x14015868f
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 rbx, qword [rbp - 0x30]
test rbx, rbx
je 0x140158743
mov rdi, qword [rbx + 8]
test rdi, rdi
je 0x1401586c9
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], r15
mov rdi, qword [rbx + 0x18]
test rdi, rdi
je 0x1401586f6
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], r15
mov rdi, qword [rbx + 0x28]
test rdi, rdi
je 0x140158723
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], r15
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 rdi, qword [rbp - 0x18]
test rdi, rdi
je 0x14015876c
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 ebx, 1
test r12d, r12d
js 0x140158cc8
cmp dword [rbp + 0x5e0], ebx
jb 0x140158d17
lea r11d, [rbx + 3]
cmp qword [rbp + 0x5e8], r15
je 0x1401587ee
cmp dword [rbp + 0x5e0], r15d
jbe 0x1401587ee
mov rdi, qword [rbp + 0x5e8]
lea r8, [rbp + 0x338]
mov edx, r11d
mov qword [rbp + 0x338], rdi
mov rcx, rdi
mov r9d, dword [rdi]
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x1401587fa
mov rax, qword [rbp + 0x338]
test r9d, r9d
mov dword [rbp + 0x144], r9d
cmove rax, r15
mov qword [rbp + 0x338], rax
mov qword [rbp + 0x340], rax
jmp 0x140158808
mov r12d, 0xc000000d
mov dword [rbp - 0x20], r12d
jmp 0x140158822
mov r9d, dword [rbp + 0x144]
mov rax, qword [rbp + 0x340]
test r12d, r12d
js 0x140158cc8
cmp r9d, r11d
jne 0x140158c9e
mov eax, dword [rax]
mov dword [rbp + 0x148], eax
test r12d, r12d
js 0x140158cc8
mov r12d, dword [rbp + 0x148]
cmp r12d, 0xd0000023
cmove r12d, r13d
mov dword [rbp - 0x20], r12d
mov dword [rbp + 0x148], r12d
cmp r12d, r13d
je 0x140158856
test r12d, r12d
js 0x140158cc8
cmp dword [rbp + 0x5e0], 6
jne 0x140158d17
cmp qword [rbp + 0x5e8], r15
jne 0x14015887b
mov r12d, 0xc000000d
mov dword [rbp - 0x20], r12d
jmp 0x14015893c
mov rcx, qword [rbp + 0x5e8]
mov edi, r15d
mov qword [rbp + 0x348], rcx
mov r9d, dword [rcx]
lea r8, [rbp + 0x348]
mov rdx, r11
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140158913
mov rcx, qword [rbp + 0x348]
lea r8, [rbp + 0x348]
mov edx, r9d
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140158913
mov rcx, qword [rbp + 0x348]
add edi, ebx
cmp edi, ebx
jb 0x14015888c
mov edi, dword [rcx]
lea r8, [rbp + 0x348]
mov rdx, r11
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140158913
mov rax, qword [rbp + 0x348]
test edi, edi
mov dword [rbp + 0x100], edi
cmove rax, r15
mov qword [rbp + 0x348], rax
mov qword [rbp + 0x350], rax
jmp 0x140158920
mov edi, dword [rbp + 0x100]
mov rax, qword [rbp + 0x350]
test r12d, r12d
js 0x140158cc8
cmp edi, 8
jne 0x140158c9e
mov rax, qword [rax]
mov qword [rbp + 0x358], rax
test r12d, r12d
js 0x140158cc8
cmp qword [rbp + 0x5e8], r15
jne 0x14015895d
mov r12d, 0xc000000d
mov dword [rbp - 0x20], r12d
jmp 0x140158a1d
mov rcx, qword [rbp + 0x5e8]
mov edi, r15d
mov qword [rbp + 0x360], rcx
mov r9d, dword [rcx]
lea r8, [rbp + 0x360]
mov rdx, r11
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x1401589f6
mov rcx, qword [rbp + 0x360]
lea r8, [rbp + 0x360]
mov edx, r9d
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x1401589f6
mov rcx, qword [rbp + 0x360]
add edi, ebx
cmp edi, 2
jb 0x14015896e
mov edi, dword [rcx]
lea r8, [rbp + 0x360]
mov rdx, r11
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x1401589f6
mov rax, qword [rbp + 0x360]
test edi, edi
mov dword [rbp + 0x104], edi
cmove rax, r15
mov qword [rbp + 0x360], rax
mov qword [rbp + 0x368], rax
jmp 0x140158a03
mov edi, dword [rbp + 0x104]
mov rax, qword [rbp + 0x368]
test r12d, r12d
js 0x140158cc8
cmp edi, r11d
jne 0x140158c9e
mov eax, dword [rax]
mov dword [rbp + 0x108], eax
test r12d, r12d
js 0x140158cc8
cmp qword [rbp + 0x5e8], r15
jne 0x140158a3a
mov r12d, 0xc000000d
jmp 0x140158cc4
mov rcx, qword [rbp + 0x5e8]
mov edi, r15d
mov qword [rbp + 0x370], rcx
mov r9d, dword [rcx]
lea r8, [rbp + 0x370]
mov rdx, r11
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140158ad6
mov rcx, qword [rbp + 0x370]
lea r8, [rbp + 0x370]
mov edx, r9d
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140158ad6
mov rcx, qword [rbp + 0x370]
add edi, ebx
cmp edi, 3
jb 0x140158a4b
mov r10d, dword [rcx]
lea r8, [rbp + 0x370]
mov rdx, r11
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140158ad6
mov rdi, qword [rbp + 0x370]
test r10d, r10d
mov dword [rbp + 0x10c], r10d
cmove rdi, r15
mov qword [rbp + 0x370], rdi
mov qword [rbp + 0x378], rdi
jmp 0x140158ae4
mov r10d, dword [rbp + 0x10c]
mov rdi, qword [rbp + 0x378]
test r12d, r12d
js 0x140158cc8
mov rcx, qword [rbp + 0x5e8]
mov r9d, r15d
mov qword [rbp + reloc.SHELL32.dll_Ordinal_896], rcx
mov r11d, dword [rcx]
lea r8, [rbp + reloc.SHELL32.dll_Ordinal_896]
mov edx, 4
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140158b92
mov rcx, qword [rbp + reloc.SHELL32.dll_Ordinal_896]
lea r8, [rbp + reloc.SHELL32.dll_Ordinal_896]
mov edx, r11d
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
mov r11d, 4
test eax, eax
js 0x140158b98
mov rcx, qword [rbp + reloc.SHELL32.dll_Ordinal_896]
add r9d, ebx
cmp r9d, r11d
jb 0x140158afe
mov r9d, dword [rcx]
lea r8, [rbp + reloc.SHELL32.dll_Ordinal_896]
mov edx, r11d
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140158b98
mov rax, qword [rbp + reloc.SHELL32.dll_Ordinal_896]
test r9d, r9d
mov dword [rbp + 0x110], r9d
cmove rax, r15
mov qword [rbp + reloc.SHELL32.dll_Ordinal_896], rax
mov qword [rbp + 0x388], rax
jmp 0x140158ba6
mov r11d, 4
mov r9d, dword [rbp + 0x110]
mov rax, qword [rbp + 0x388]
test r12d, r12d
js 0x140158bc0
cmp r9d, r11d
jne 0x140158c9e
mov r11d, dword [rax]
mov dword [rbp + 0x114], r11d
jmp 0x140158bc7
mov r11d, dword [rbp + 0x114]
test r12d, r12d
js 0x140158cc8
mov rcx, qword [rbp + 0x5e8]
mov r9d, r15d
mov qword [rbp + 0x390], rcx
mov r13d, 4
mov ebx, dword [rcx]
lea r8, [rbp + 0x390]
mov rdx, r13
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140158c77
mov rcx, qword [rbp + 0x390]
lea r8, [rbp + 0x390]
mov edx, ebx
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
mov ebx, 1
test eax, eax
js 0x140158c7c
mov rcx, qword [rbp + 0x390]
add r9d, ebx
cmp r9d, 5
jb 0x140158be7
mov r9d, dword [rcx]
lea r8, [rbp + 0x390]
mov rdx, r13
call fcn.140016254
mov dword [rbp - 0x20], eax
mov r12d, eax
test eax, eax
js 0x140158c7c
mov rax, qword [rbp + 0x390]
test r9d, r9d
mov dword [rbp + 0x118], r9d
cmove rax, r15
mov qword [rbp + 0x390], rax
mov qword [rbp + 0x398], rax
jmp 0x140158c8a
mov ebx, 1
mov r9d, dword [rbp + 0x118]
mov rax, qword [rbp + 0x398]
test r12d, r12d
js 0x140158cd1
cmp r9d, r13d
jne 0x140158c9e
mov ecx, dword [rax]
mov dword [rbp + 0x140], ecx
jmp 0x140158cd7
mov r12d, 0xc0000023
jmp 0x140158cc4
mov rcx, qword [rbp - 0x58]
mov rdx, rdi
mov r8d, r10d
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
cmp dword [rbp + 0x148], r15d
cmovne r12d, dword [rbp + 0x148]
mov dword [rbp - 0x20], r12d
mov r13, qword [rbp - 0x80]
jmp 0x140156388
mov ecx, dword [rbp + 0x140]
test r12d, r12d
js 0x140158cc8
mov rax, qword [rbp + 0x358]
cmp qword [rbp + 0x230], rax
jne 0x140158d17
mov eax, dword [rbp + 0x108]
mov dword [rbp + 0x12c], eax
mov dword [rbp + 0x130], r11d
mov dword [rbp + 0x134], ecx
cmp r11d, r13d
ja 0x140158d0f
cmp r10d, r13d
jbe 0x140158ca6
mov r12d, 0x8007007a
jmp 0x140158cc4
mov r12d, 0xc004d501
jmp 0x140158cc4
mov rax, qword [0x140378098]
call qword [case.0x14006c37f.0]
mov edi, dword [0x14037b680]
lea rcx, [rbp + 0xae0]
xor edx, edx
mov qword [0x14037b670], rax
mov dword [rbp - 0x38], edi
lea r8d, [rdx + 0x70]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xorps xmm0, xmm0
mov dword [rbp + 0x11c], ebx
xor eax, eax
mov qword [rbp - 0x28], r15
movups xmmword [rbp + 0xb80], xmm0
mov qword [rbp + 0xc60], rax
movups xmmword [rbp + 0xc40], xmm0
mov dword [rbp + 0xc68], eax
movups xmmword [rbp + 0xc50], xmm0
mov qword [rbp - 8], r15
mov qword [rbp + 0x208], r15
xor eax, eax
lock cmpxchg dword [0x14037d0a0], ebx
jne 0x140158d8a
mov eax, dword [0x14037bd98]
test eax, eax
jne 0x140159343
mov ecx, 0x338
mov dword [rbp - 0x70], r15d
mov dword [rbp - 0x68], r15d
mov dword [rbp - 0x78], r15d
mov qword [rbp + 0x3b0], r15
mov qword [rbp + 0x3b8], r15
call fcn.140092328
mov qword [rsp + 0x68], rax
test rax, rax
je 0x14015929e
mov edi, 0x67
mov byte [rsp + 0x60], r15b
mov r13d, r15d
lea r14, [rax + 7]
mov esi, r15d
lea r12, [0x14030be32]
mov ebx, r15d
or ecx, 0xffffffff
lea r15d, [rdi - 0x66]
movzx eax, byte [r12 - 1]
movzx r11d, byte [r12 - 2]
movzx r10d, byte [r12 + 2]
shl r11d, 8
or r11d, eax
shl r10d, 8
movzx eax, byte [r12]
lea r12, [r12 + 8]
shl r11d, 8
or r11d, eax
movzx eax, byte [r12 - 7]
shl r11d, 8
or r11d, eax
movzx eax, byte [r12 - 5]
or r10d, eax
xor ebx, r11d
movzx eax, byte [r12 - 4]
shl r10d, 8
or r10d, eax
movzx eax, byte [r12 - 3]
shl r10d, 8
or r10d, eax
mov r9d, r10d
xor r9d, esi
xor r9d, ebx
xor r9d, 0xac987321
lea eax, [r9 + 0x54969fa2]
rol eax, 5
imul edx, eax, 0x137f
mov eax, r9d
rol eax, 0xa
add edx, eax
xor ebx, edx
lea eax, [rbx + 0x7f1137f]
ror eax, 9
imul edx, eax, 0xab69
mov eax, ebx
rol eax, 2
sub edx, eax
xor r9d, edx
imul edx, r9d, 0x605e
mov eax, r9d
shr eax, 0xd
sub edx, eax
sub edx, 0x756c8a2
xor ebx, edx
mov eax, ebx
xor eax, 0xab69
rol eax, 6
imul edx, eax, 0x7f1
mov eax, ebx
rol eax, 2
sub edx, eax
mov eax, 0x7f1137f
xor r9d, edx
mov edx, r9d
xor edx, 0xab69605e
sub eax, edx
xor ebx, eax
mov eax, ebx
mov r8d, ebx
xor eax, 0x137f
ror r8d, 6
imul edx, eax, 0xab69
xor r8d, edx
xor r9d, r8d
lea eax, [r9 + 0x7f1137f]
ror eax, 0xf
imul edx, eax, 0x605e
mov eax, r9d
rol eax, 2
add edx, eax
xor ebx, edx
lea eax, [rbx + 0x54969fa2]
ror eax, 0xe
imul edx, eax, 0x7f1
mov eax, ebx
rol eax, 8
sub edx, eax
xor r9d, edx
mov eax, r9d
mov r8d, 0xab69605e
xor eax, r8d
ror eax, 0xc
imul edx, eax, 0x137f
mov eax, r9d
ror eax, 0xa
xor edx, eax
xor ebx, edx
mov eax, ebx
xor eax, 0x7f1
imul edx, eax, 0xab69
mov eax, ebx
shr eax, 0xa
xor edx, eax
xor edx, r9d
mov r9d, 0x605e
mov eax, edx
not eax
ror eax, 5
add eax, r9d
imul eax, eax, 0x7f1
xor ebx, eax
lea esi, [rbx - 0x7f1]
xor esi, edx
xor esi, r8d
mov eax, esi
xor eax, 0x7f1
rol eax, 2
imul edx, eax, 0x137f
mov eax, esi
shr eax, 2
add edx, eax
xor ebx, edx
lea eax, [rbx - 0x7f1137f]
ror eax, 6
imul edx, eax, 0xab69
mov eax, ebx
rol eax, 7
add edx, eax
xor esi, edx
mov eax, esi
mov r8d, esi
xor eax, 0x137f
ror r8d, 9
imul edx, eax, 0x605e
add r8d, edx
xor ebx, r8d
mov eax, ebx
xor eax, 0xab69
rol eax, 5
imul edx, eax, 0x7f1
mov eax, ebx
rol eax, 7
add edx, eax
xor esi, edx
xor ebx, esi
xor ebx, 0xac987321
mov eax, ebx
ror eax, 3
imul edx, eax, 0x137f
sub edx, 0xd0dd417
xor esi, edx
lea eax, [rsi - 0x7f1137f]
ror eax, 1
imul edx, eax, 0x605e
mov eax, esi
ror eax, 6
sub edx, eax
xor ebx, edx
lea eax, [rbx - 0x54969fa2]
rol eax, 3
imul edx, eax, 0x7f1
mov eax, ebx
rol eax, 0xe
add edx, eax
xor esi, edx
lea eax, [rsi - 0x54969fa2]
rol eax, 0xf
imul edx, eax, 0x137f
mov eax, esi
ror eax, 0xe
sub edx, eax
xor ebx, edx
mov eax, ebx
xor eax, r9d
imul edx, eax, 0xab69
mov eax, ebx
shr eax, 3
xor edx, eax
xor esi, edx
mov eax, esi
xor eax, 0x7f1137f
rol eax, 4
imul edx, eax, 0x605e
mov eax, esi
xor esi, ecx
rol eax, 2
mov ecx, r10d
xor edx, eax
xor edx, r13d
mov r13d, r11d
xor ebx, edx
mov byte [r14 - 4], bl
mov byte [r14], sil
lea r14, [r14 + 8]
ror ebx, 8
mov byte [r14 - 0xd], bl
ror esi, 8
mov byte [r14 - 9], sil
ror ebx, 8
mov byte [r14 - 0xe], bl
ror esi, 8
mov byte [r14 - 0xa], sil
ror ebx, 8
ror esi, 8
mov byte [r14 - 0xf], bl
mov byte [r14 - 0xb], sil
ror esi, 8
ror ebx, 8
sub rdi, r15
jne 0x140158dfb
mov cl, byte [rsp + 0x60]
xor r15d, r15d
mov edi, dword [rbp - 0x38]
mov eax, r15d
mov r12d, dword [rbp - 0x20]
movabs rsi, 0xc81ecb17b1b54a58
mov r13d, dword [rbp - 0x68]
movabs r14, 0x7f1137fab69605e
mov rdx, qword [rsp + 0x68]
lea r8d, [r15 + 1]
mov r9d, 0x338
xor cl, byte [rax + rdx]
add rax, r8
cmp rax, r9
jb 0x140159102
movzx eax, cl
cmp rax, qword [0x14030c168]
je 0x140159120
mov ebx, 0xc004d501
jmp 0x140159134
mov qword [rbp + 0x3b0], rdx
mov ebx, r13d
mov rdx, r15
mov qword [rbp + 0x3b8], r9
test rdx, rdx
je 0x140159141
mov rcx, rdx
call fcn.14009515c
test ebx, ebx
js 0x14015929e
mov rax, qword [rbp + 0x3b8]
lea rcx, [0x14037c2e0]
mov rbx, qword [rbp + 0x3b0]
xor edx, edx
lea r8d, [rdx + 0x60]
mov byte [rax + rbx - 1], r15b
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
jmp 0x140159293
mov rdx, rbx
or rax, 0xffffffffffffffff
inc rax
cmp word [rbx + rax*2], r15w
jne 0x14015917a
lea rbx, [rbx + rax*2]
mov eax, dword [rbp - 0x78]
lea rcx, [rax + rax*2]
lea rax, [0x14037c2e0]
lea r8, [rax + rcx*8]
xor ecx, ecx
mov qword [rsp + 0x68], r8
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
je 0x14015929e
mov r8, qword [rsp + 0x68]
mov ecx, 0x5a4d
mov r13d, r15d
mov rax, qword [r8]
cmp word [rax], cx
jne 0x140159204
movsxd rcx, dword [rax + 0x3c]
cmp ecx, 0x10000000
jae 0x140159204
add rcx, qword [r8]
cmp rcx, qword [r8]
jb 0x140159204
cmp dword [rcx], 0x4550
jne 0x140159204
movzx eax, word [rcx + 0x18]
mov edx, 0x10b
sub ax, dx
mov edx, 0xfeff
test dx, ax
je 0x14015920c
mov r13d, 0xc000000d
jmp 0x14015921e
mov r13d, 0xc000007b
jmp 0x14015921e
mov rax, qword [rcx + 0x88]
mov qword [r8 + 0xc], rax
mov eax, dword [rcx + 0x50]
mov dword [r8 + 8], eax
mov eax, dword [rbx + 2]
mov ecx, r15d
add rbx, 6
mov dword [rbp - 0x68], eax
mov dword [rbp - 0x60], ecx
test eax, eax
jne 0x140159239
mov eax, 1
jmp 0x140159290
mov rdx, rbx
or rax, 0xffffffffffffffff
inc rax
cmp byte [rbx + rax], r15b
jne 0x140159240
inc rbx
add rbx, rax
test r13d, r13d
js 0x14015927e
mov rcx, qword [r8]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x1401592a4
mov ecx, dword [rbp - 0x70]
lea rdx, section..data
mov r8, qword [rsp + 0x68]
mov qword [rdx + rcx*8], rax
mov ecx, dword [rbp - 0x60]
mov eax, 1
add dword [rbp - 0x70], eax
add ecx, eax
mov dword [rbp - 0x60], ecx
cmp ecx, dword [rbp - 0x68]
jb 0x140159239
add dword [rbp - 0x78], eax
cmp byte [rbx], r15b
jne 0x140159173
jmp 0x1401592a4
mov r13d, 0xc000007a
mov rbx, qword [rbp + 0x3b0]
test rbx, rbx
je 0x1401592d0
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 r13d, r13d
jns 0x140159338
mov eax, 1
lea rbx, [0x14037c2e0]
lea r13d, [rax + 3]
cmp qword [rbx], r15
je 0x1401592fe
mov rcx, qword [rbx]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_FreeLibrary]
nop dword [rax + rax]
mov eax, 1
add rbx, 0x18
sub r13, rax
jne 0x1401592e5
xor edx, edx
lea r8d, [r13 + 0x60]
lea rcx, [0x14037c2e0]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x1402eeca0]
lea rcx, section..data
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
lea ebx, [r13 + 1]
jmp 0x14015934b
mov eax, dword [0x14037bd98]
mov ebx, 1
add eax, ebx
mov dword [0x14037bd98], eax
mov eax, r15d
mov dword [rbp - 0x70], r15d
xchg dword [0x14037d0a0], eax
xorps xmm0, xmm0
mov qword [rbp + 0x3c0], r15
movups xmmword [rbp + 0x670], xmm0
mov dword [rbp - 0x68], r15d
mov qword [rsp + 0x68], r15
mov qword [rbp - 0x80], r15
mov qword [rbp - 0x50], r15
xor eax, eax
lock cmpxchg dword [0x14037d0a0], ebx
jne 0x14015937a
mov eax, dword [0x14037bd98]
test eax, eax
jne 0x140159941
mov ecx, 0x338
mov dword [rbp - 0x78], r15d
mov dword [rbp - 0x60], r15d
mov dword [rbp - 0x40], r15d
mov qword [rbp + 0x3c8], r15
mov qword [rbp + 0x3d0], r15
call fcn.140092328
mov qword [rsp + 0x78], rax
test rax, rax
je 0x1401598a0
mov edi, 0x67
mov byte [rsp + 0x60], r15b
mov r13d, r15d
lea rsi, [rax + 7]
mov r14d, r15d
lea r12, [0x14030be32]
mov ebx, r15d
or ecx, 0xffffffff
lea r15d, [rdi - 0x66]
movzx eax, byte [r12 - 1]
movzx r11d, byte [r12 - 2]
movzx r10d, byte [r12 + 2]
shl r11d, 8
or r11d, eax
shl r10d, 8
movzx eax, byte [r12]
lea r12, [r12 + 8]
shl r11d, 8
or r11d, eax
movzx eax, byte [r12 - 7]
shl r11d, 8
or r11d, eax
movzx eax, byte [r12 - 5]
or r10d, eax
xor ebx, r11d
movzx eax, byte [r12 - 4]
mov r9d, ebx
shl r10d, 8
or r10d, eax
movzx eax, byte [r12 - 3]
shl r10d, 8
or r10d, eax
xor r14d, r10d
xor r9d, r14d
xor r9d, 0xac987321
lea eax, [r9 + 0x54969fa2]
rol eax, 5
imul edx, eax, 0x137f
mov eax, r9d
rol eax, 0xa
add edx, eax
xor ebx, edx
lea eax, [rbx + 0x7f1137f]
ror eax, 9
imul edx, eax, 0xab69
mov eax, ebx
rol eax, 2
sub edx, eax
xor r9d, edx
imul edx, r9d, 0x605e
mov eax, r9d
shr eax, 0xd
sub edx, eax
sub edx, 0x756c8a2
xor ebx, edx
mov eax, ebx
xor eax, 0xab69
rol eax, 6
imul edx, eax, 0x7f1
mov eax, ebx
rol eax, 2
sub edx, eax
mov eax, 0x7f1137f
xor r9d, edx
mov edx, r9d
xor edx, 0xab69605e
sub eax, edx
xor ebx, eax
mov eax, ebx
mov r8d, ebx
xor eax, 0x137f
ror r8d, 6
imul edx, eax, 0xab69
xor r8d, edx
xor r9d, r8d
lea eax, [r9 + 0x7f1137f]
ror eax, 0xf
imul edx, eax, 0x605e
mov eax, r9d
rol eax, 2
add edx, eax
xor ebx, edx
lea eax, [rbx + 0x54969fa2]
ror eax, 0xe
imul edx, eax, 0x7f1
mov eax, ebx
rol eax, 8
sub edx, eax
xor r9d, edx
mov eax, r9d
mov r8d, 0xab69605e
xor eax, r8d
ror eax, 0xc
imul edx, eax, 0x137f
mov eax, r9d
ror eax, 0xa
xor edx, eax
xor ebx, edx
mov eax, ebx
xor eax, 0x7f1
imul edx, eax, 0xab69
mov eax, ebx
shr eax, 0xa
xor edx, eax
xor edx, r9d
mov r9d, 0x605e
mov eax, edx
not eax
ror eax, 5
add eax, r9d
imul eax, eax, 0x7f1
xor ebx, eax
lea r14d, [rbx - 0x7f1]
xor r14d, edx
xor r14d, r8d
mov eax, r14d
xor eax, 0x7f1
rol eax, 2
imul edx, eax, 0x137f
mov eax, r14d
shr eax, 2
add edx, eax
xor ebx, edx
lea eax, [rbx - 0x7f1137f]
ror eax, 6
imul edx, eax, 0xab69
mov eax, ebx
rol eax, 7
add edx, eax
xor r14d, edx
mov eax, r14d
mov r8d, r14d
xor eax, 0x137f
ror r8d, 9
imul edx, eax, 0x605e
add r8d, edx
xor ebx, r8d
mov eax, ebx
xor eax, 0xab69
rol eax, 5
imul edx, eax, 0x7f1
mov eax, ebx
rol eax, 7
add edx, eax
xor r14d, edx
xor ebx, r14d
xor ebx, 0xac987321
mov eax, ebx
ror eax, 3
imul edx, eax, 0x137f
sub edx, 0xd0dd417
xor r14d, edx
lea eax, [r14 - 0x7f1137f]
ror eax, 1
imul edx, eax, 0x605e
mov eax, r14d
ror eax, 6
sub edx, eax
xor ebx, edx
lea eax, [rbx - 0x54969fa2]
rol eax, 3
imul edx, eax, 0x7f1
mov eax, ebx
rol eax, 0xe
add edx, eax
xor r14d, edx
lea eax, [r14 - 0x54969fa2]
rol eax, 0xf
imul edx, eax, 0x137f
mov eax, r14d
ror eax, 0xe
sub edx, eax
xor ebx, edx
mov eax, ebx
xor eax, r9d
imul edx, eax, 0xab69
mov eax, ebx
shr eax, 3
xor edx, eax
xor r14d, edx
mov eax, r14d
xor eax, 0x7f1137f
rol eax, 4
imul edx, eax, 0x605e
mov eax, r14d
xor r14d, ecx
rol eax, 2
mov ecx, r10d
xor edx, eax
xor edx, r13d
mov r13d, r11d
xor ebx, edx
mov byte [rsi - 4], bl
mov byte [rsi], r14b
lea rsi, [rsi + 8]
ror ebx, 8
mov byte [rsi - 0xd], bl
ror r14d, 8
mov byte [rsi - 9], r14b
ror ebx, 8
mov byte [rsi - 0xe], bl
ror r14d, 8
mov byte [rsi - 0xa], r14b
ror ebx, 8
ror r14d, 8
mov byte [rsi - 0xf], bl
mov byte [rsi - 0xb], r14b
ror r14d, 8
ror ebx, 8
sub rdi, r15
jne 0x1401593eb
mov cl, byte [rsp + 0x60]
xor r15d, r15d
mov edi, dword [rbp - 0x38]
mov eax, r15d
mov r12d, dword [rbp - 0x20]
movabs rsi, 0xc81ecb17b1b54a58
mov r13d, dword [rbp - 0x60]
movabs r14, 0x7f1137fab69605e
mov rdx, qword [rsp + 0x78]
lea r8d, [r15 + 1]
mov r9d, 0x338
xor cl, byte [rdx + rax]
add rax, r8
cmp rax, r9
jb 0x140159704
movzx eax, cl
cmp rax, qword [0x14030c168]
je 0x140159722
mov ebx, 0xc004d501
jmp 0x140159736
mov qword [rbp + 0x3c8], rdx
mov ebx, r13d
mov rdx, r15
mov qword [rbp + 0x3d0], r9
test rdx, rdx
je 0x140159743
mov rcx, rdx
call fcn.14009515c
test ebx, ebx
js 0x1401598a0
mov rax, qword [rbp + 0x3d0]
lea rcx, [0x14037c2e0]
mov rbx, qword [rbp + 0x3c8]
xor edx, edx
lea r8d, [rdx + 0x60]
mov byte [rax + rbx - 1], r15b
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
jmp 0x140159895
mov rdx, rbx
or rax, 0xffffffffffffffff
inc rax
cmp word [rbx + rax*2], r15w
jne 0x14015977c
lea rbx, [rbx + rax*2]
mov eax, dword [rbp - 0x40]
lea rcx, [rax + rax*2]
lea rax, [0x14037c2e0]
lea r8, [rax + rcx*8]
xor ecx, ecx
mov qword [rsp + 0x78], r8
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
je 0x1401598a0
mov r8, qword [rsp + 0x78]
mov ecx, 0x5a4d
mov r13d, r15d
mov rax, qword [r8]
cmp word [rax], cx
jne 0x140159806
movsxd rcx, dword [rax + 0x3c]
cmp ecx, 0x10000000
jae 0x140159806
add rcx, qword [r8]
cmp rcx, qword [r8]
jb 0x140159806
cmp dword [rcx], 0x4550
jne 0x140159806
movzx eax, word [rcx + 0x18]
mov edx, 0x10b
sub ax, dx
mov edx, 0xfeff
test dx, ax
je 0x14015980e
mov r13d, 0xc000000d
jmp 0x140159820
mov r13d, 0xc000007b
jmp 0x140159820
mov rax, qword [rcx + 0x88]
mov qword [r8 + 0xc], rax
mov eax, dword [rcx + 0x50]
mov dword [r8 + 8], eax
mov eax, dword [rbx + 2]
mov ecx, r15d
add rbx, 6
mov dword [rbp - 0x18], eax
mov dword [rbp - 0x38], ecx
test eax, eax
jne 0x14015983b
mov eax, 1
jmp 0x140159892
mov rdx, rbx
or rax, 0xffffffffffffffff
inc rax
cmp byte [rbx + rax], r15b
jne 0x140159842
inc rbx
add rbx, rax
test r13d, r13d
js 0x140159880
mov rcx, qword [r8]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x1401598a6
mov ecx, dword [rbp - 0x78]
lea rdx, section..data
mov r8, qword [rsp + 0x78]
mov qword [rdx + rcx*8], rax
mov ecx, dword [rbp - 0x38]
mov eax, 1
add dword [rbp - 0x78], eax
add ecx, eax
mov dword [rbp - 0x38], ecx
cmp ecx, dword [rbp - 0x18]
jb 0x14015983b
add dword [rbp - 0x40], eax
cmp byte [rbx], r15b
jne 0x140159775
jmp 0x1401598a6
mov r13d, 0xc000007a
mov rbx, qword [rbp + 0x3c8]
test rbx, rbx
je 0x1401598d2
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 r13d, r13d
jns 0x140159936
mov eax, 1
lea rbx, [0x14037c2e0]
lea r13d, [rax + 3]
cmp qword [rbx], r15
je 0x140159900
mov rcx, qword [rbx]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_FreeLibrary]
nop dword [rax + rax]
mov eax, 1
add rbx, 0x18
sub r13, rax
jne 0x1401598e7
xor edx, edx
lea r8d, [r13 + 0x60]
lea rcx, [0x14037c2e0]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x1402eeca0]
lea rcx, section..data
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x140159949
mov eax, dword [0x14037bd98]
mov ebx, 1
add eax, ebx
mov dword [0x14037bd98], eax
mov ecx, reloc.OLEAUT32.dll_SafeArrayDestroy
mov eax, r15d
xchg dword [0x14037d0a0], eax
mov eax, edi
xorps xmm0, xmm0
and eax, ecx
xor edx, edx
mov dword [rbp - 0x18], eax
mov r8d, 0x403
mov eax, edi
shr eax, 4
and ax, cx
mov word [rbp + 0x1040], ax
mov eax, edi
shr eax, 8
and ax, cx
shr edi, 0xc
and di, cx
mov word [rbp + 0x1042], ax
mov rax, qword [0x1403780f8]
xor ecx, ecx
movups xmmword [rbp + 0xb80], xmm0
mov word [rbp + 0x1044], di
call qword [case.0x14006c37f.0]
mov qword [rsp + 0x78], rax
mov dword [rbp - 0x38], 0xffffff
test rax, rax
jne 0x1401599ed
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov r13d, eax
test eax, eax
jle 0x1401599d9
movzx r13d, ax
or r13d, 0x80070000
test r13d, r13d
js 0x14015adc9
mov r13d, 0x80004005
jmp 0x14015adc9
mov rax, qword [0x1403780a0]
lea r9, [rbp + reloc.api_ms_win_shlwapi_winrt_storage_l1_1_1.dll_Ordinal_292]
xor r8d, r8d
mov qword [rbp + 0x3d8], r15
lea rdx, [rbp + 0x128]
mov qword [rbp + 0x3e0], r15
mov rdi, r15
mov qword [rbp + 0x3e8], r15
mov qword [rbp + 0x3f0], r15
mov r13d, r15d
lea ecx, [r8 + 8]
mov qword [rbp + 0x3f8], r15
mov qword [rbp + 0x400], r15
mov dword [rbp + reloc.api_ms_win_shlwapi_winrt_storage_l1_1_1.dll_Ordinal_292], r15d
call qword [case.0x14006c37f.0]
test eax, eax
je 0x140159a7e
mov ecx, dword [rbp + reloc.api_ms_win_shlwapi_winrt_storage_l1_1_1.dll_Ordinal_292]
add rcx, rcx
call fcn.140092328
lea rcx, [rbp + 0x3f8]
mov rbx, rax
call fcn.1401efe74
test rbx, rbx
jne 0x140159ab0
mov qword [rbp + 0x3f8], r15
mov r13d, 0x8007000e
jmp 0x140159bb1
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov r13d, eax
test eax, eax
jle 0x140159a9c
movzx r13d, ax
or r13d, 0x80070000
test r13d, r13d
js 0x140159bb1
mov r13d, 0x80004005
jmp 0x140159bb1
mov ecx, dword [rbp + 0x128]
inc ecx
mov qword [rbp + 0x3f8], rbx
shl rcx, 2
call fcn.140092328
lea rcx, [rbp + 0x400]
mov qword [rbp - 0x48], rax
call fcn.1401efe74
mov rax, qword [rbp - 0x48]
test rax, rax
jne 0x140159aec
mov r13d, 0x8007000e
jmp 0x140159baa
mov qword [rbp + 0x400], rax
lea r9, [rbp + reloc.api_ms_win_shlwapi_winrt_storage_l1_1_1.dll_Ordinal_292]
mov rax, qword [0x1403780a0]
lea rdx, [rbp + 0x128]
mov r8, rbx
mov ecx, 8
call qword [case.0x14006c37f.0]
test eax, eax
je 0x140159a7e
mov rax, qword [rbp - 0x48]
mov rdi, rax
cmp dword [rbp + 0x128], r15d
jbe 0x140159b8f
mov r14d, 4
mov esi, r15d
lea r12d, [r14 - 3]
mov rax, qword [0x1403780b0]
xor edx, edx
mov rcx, rbx
call qword [case.0x14006c37f.0]
mov dword [rdi], eax
or rax, 0xffffffffffffffff
inc rax
cmp word [rbx + rax*2], r15w
jne 0x140159b53
lea rbx, [rbx + rax*2]
add rdi, r14
add rbx, 2
add esi, r12d
cmp esi, dword [rbp + 0x128]
jb 0x140159b3b
mov r12d, dword [rbp - 0x20]
movabs rsi, 0xc81ecb17b1b54a58
mov rax, qword [rbp - 0x48]
movabs r14, 0x7f1137fab69605e
mov dword [rdi], 0x409
mov rdi, rax
mov qword [rbp + 0x3d8], rax
mov eax, dword [rbp + 0x128]
inc eax
mov dword [rbp - 0x78], eax
mov qword [rbp + 0x400], r15
lea rcx, [rbp + 0x400]
call fcn.1401efe74
lea rcx, [rbp + 0x3f8]
call fcn.1401efe74
test r13d, r13d
js 0x14015a340
lea rbx, [0x14032ddb0]
mov r10d, r15d
mov r9d, r15d
mov dword [rbp - 0x60], r15d
cmp dword [rbp - 0x78], r15d
jbe 0x140159c24
mov r8, r15
mov r11d, 1
mov ecx, r15d
mov rdx, rbx
mov eax, dword [rdx]
cmp dword [rdi + r8], eax
je 0x140159c1e
mov eax, 4
add ecx, r11d
add rdx, rax
cmp ecx, 0x26
jb 0x140159bf8
add r9d, r11d
add r8, rax
cmp r9d, dword [rbp - 0x78]
jb 0x140159bf2
jmp 0x140159c24
mov r10d, ecx
mov dword [rbp - 0x60], ecx
mov rax, qword [0x1403780a8]
lea rdx, [rbp + 0x1050]
mov edi, r10d
xor r9d, r9d
mov dword [rbp - 0x78], r15d
mov ecx, dword [rbx + rdi*4]
lea r8d, [r9 + 0x55]
call qword [case.0x14006c37f.0]
test eax, eax
je 0x140159c8d
mov rax, qword [0x140378090]
lea r8, [rbp + 0xbd0]
mov r9d, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rcx, [rbp + 0x1050]
lea edx, [r9 + 0x48]
call qword [case.0x14006c37f.0]
mov r9d, 1
test eax, eax
jle 0x140159c93
mov ebx, dword [rbp + 0xbdc]
shr ebx, 0x1b
and ebx, r9d
mov dword [rbp - 0x78], ebx
jmp 0x140159c93
mov r9d, 1
lea rcx, str.Segoe_UI_Light
mov r8d, SafeArrayUnaccessData
lea rdx, [rbp + 0xfa0]
mov qword [rdx], rcx
or rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], r15w
jne 0x140159cae
lea rcx, [rcx + rax*2]
add rdx, 8
add rcx, 2
sub r8, r9
jne 0x140159ca7
lea rcx, [rdi + rdi*2]
lea rdx, [0x140000000]
movzx eax, byte [rcx + rdx + 0x313d80]
mov rax, qword [rbp + rax*8 + 0xfa0]
mov qword [rsp + 0x68], rax
movzx eax, byte [rcx + rdx + 0x313d81]
mov rax, qword [rbp + rax*8 + 0xfa0]
mov qword [rbp - 0x80], rax
movzx eax, byte [rcx + rdx + 0x313d82]
mov rax, qword [rbp + rax*8 + 0xfa0]
mov qword [rbp - 0x50], rax
mov ecx, 0x1c90
mov dword [rbp - 0x40], r15d
call fcn.140092328
mov qword [rbp - 0x48], rax
test rax, rax
jne 0x140159d33
mov r13d, 0x8007000e
jmp 0x14015a340
or dword [rbp - 0x58], 0xffffffff
lea r14, [rax + 7]
mov r11d, r15d
lea rsi, [0x14032c112]
mov r10d, r15d
mov ebx, r15d
mov r15d, dword [rbp - 0x58]
mov r12d, 0x392
mov r13d, 1
movzx eax, byte [rsi - 1]
movzx r9d, byte [rsi - 2]
movzx r8d, byte [rsi + 2]
shl r9d, 8
or r9d, eax
shl r8d, 8
movzx eax, byte [rsi]
lea rsi, [rsi + 8]
shl r9d, 8
or r9d, eax
movzx eax, byte [rsi - 7]
shl r9d, 8
or r9d, eax
movzx eax, byte [rsi - 5]
or r8d, eax
xor r10d, r9d
movzx eax, byte [rsi - 4]
shl r8d, 8
or r8d, eax
movzx eax, byte [rsi - 3]
shl r8d, 8
or r8d, eax
xor r11d, r8d
xor r11d, r10d
xor r11d, 0xac987321
mov edi, r11d
lea eax, [r11 + 0x54969fa2]
rol r11d, 0xa
rol eax, 5
imul ecx, eax, 0x137f
add ecx, r11d
xor r10d, ecx
lea eax, [r10 + 0x7f1137f]
ror eax, 9
imul ecx, eax, 0xab69
mov eax, r10d
rol eax, 2
sub ecx, eax
xor edi, ecx
imul ecx, edi, 0x605e
mov eax, edi
shr eax, 0xd
sub ecx, eax
sub ecx, 0x756c8a2
xor r10d, ecx
mov eax, r10d
xor eax, 0xab69
rol eax, 6
imul ecx, eax, 0x7f1
mov eax, r10d
rol eax, 2
sub ecx, eax
mov eax, 0x7f1137f
xor edi, ecx
mov ecx, edi
xor ecx, 0xab69605e
sub eax, ecx
xor r10d, eax
mov eax, r10d
mov edx, r10d
xor eax, 0x137f
ror edx, 6
imul ecx, eax, 0xab69
xor edx, ecx
xor edi, edx
mov edx, 0xab69605e
lea eax, [rdi + 0x7f1137f]
ror eax, 0xf
imul ecx, eax, 0x605e
mov eax, edi
rol eax, 2
add ecx, eax
xor r10d, ecx
lea eax, [r10 + 0x54969fa2]
ror eax, 0xe
imul ecx, eax, 0x7f1
mov eax, r10d
rol eax, 8
sub ecx, eax
xor edi, ecx
mov eax, edi
xor eax, edx
ror eax, 0xc
imul ecx, eax, 0x137f
mov eax, edi
ror eax, 0xa
xor ecx, eax
xor r10d, ecx
mov eax, r10d
xor eax, 0x7f1
imul ecx, eax, 0xab69
mov eax, r10d
shr eax, 0xa
xor ecx, eax
xor edi, ecx
mov eax, edi
not eax
ror eax, 5
add eax, 0x605e
imul eax, eax, 0x7f1
xor r10d, eax
lea r11d, [r10 - 0x7f1]
xor r11d, edi
xor r11d, edx
mov eax, r11d
xor eax, 0x7f1
rol eax, 2
imul ecx, eax, 0x137f
mov eax, r11d
shr eax, 2
add ecx, eax
xor r10d, ecx
lea eax, [r10 - 0x7f1137f]
ror eax, 6
imul ecx, eax, 0xab69
mov eax, r10d
rol eax, 7
add ecx, eax
xor r11d, ecx
mov eax, r11d
mov edx, r11d
xor eax, 0x137f
ror edx, 9
imul ecx, eax, 0x605e
add edx, ecx
xor r10d, edx
mov eax, r10d
xor eax, 0xab69
rol eax, 5
imul ecx, eax, 0x7f1
mov eax, r10d
rol eax, 7
add ecx, eax
xor r11d, ecx
xor r10d, r11d
xor r10d, 0xac987321
mov eax, r10d
ror eax, 3
imul ecx, eax, 0x137f
sub ecx, 0xd0dd417
xor r11d, ecx
lea eax, [r11 - 0x7f1137f]
ror eax, 1
imul ecx, eax, 0x605e
mov eax, r11d
ror eax, 6
sub ecx, eax
xor r10d, ecx
lea eax, [r10 - 0x54969fa2]
rol eax, 3
imul ecx, eax, 0x7f1
mov eax, r10d
rol eax, 0xe
add ecx, eax
xor r11d, ecx
lea eax, [r11 - 0x54969fa2]
rol eax, 0xf
imul ecx, eax, 0x137f
mov eax, r11d
ror eax, 0xe
sub ecx, eax
xor r10d, ecx
mov eax, r10d
xor eax, 0x605e
imul ecx, eax, 0xab69
mov eax, r10d
shr eax, 3
xor ecx, eax
xor r11d, ecx
mov eax, r11d
xor eax, 0x7f1137f
rol eax, 4
imul ecx, eax, 0x605e
mov eax, r11d
xor r11d, r15d
rol eax, 2
mov r15d, r8d
xor ecx, eax
xor ecx, ebx
mov ebx, r9d
xor r10d, ecx
mov byte [r14 - 4], r10b
mov byte [r14], r11b
lea r14, [r14 + 8]
ror r10d, 8
mov byte [r14 - 0xd], r10b
ror r11d, 8
mov byte [r14 - 9], r11b
ror r10d, 8
mov byte [r14 - 0xe], r10b
ror r11d, 8
mov byte [r14 - 0xa], r11b
ror r10d, 8
ror r11d, 8
mov byte [r14 - 0xf], r10b
mov byte [r14 - 0xb], r11b
ror r11d, 8
ror r10d, 8
sub r12, r13
jne 0x140159d5b
mov r12d, dword [rbp - 0x20]
xor r15d, r15d
mov r13d, dword [rbp - 0x40]
mov eax, r15d
mov rbx, qword [rbp - 0x48]
xorps xmm1, xmm1
movabs rsi, 0xc81ecb17b1b54a58
movabs r14, 0x7f1137fab69605e
mov ecx, 0x1c90
movdqu xmm0, xmmword [rax + rbx]
add rax, 0x10
pxor xmm0, xmm1
movdqa xmm1, xmm0
cmp rax, rcx
jb 0x14015a06a
psrldq xmm0, 8
pxor xmm1, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 4
pxor xmm1, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 2
pxor xmm1, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 1
pxor xmm1, xmm0
movd eax, xmm1
movzx eax, al
cmp rax, qword [0x14032dda0]
je 0x14015a0c8
mov r13d, 0xc004d501
jmp 0x14015a0d9
mov qword [rbp + 0x3e0], rbx
mov rbx, r15
mov qword [rbp + 0x3e8], rcx
test rbx, rbx
je 0x14015a0e6
mov rcx, rbx
call fcn.14009515c
test r13d, r13d
js 0x14015a340
mov rdx, qword [rbp + 0x3e0]
lea rdi, [rbp + 0xf30]
mov r9d, dword [rbp - 0x60]
mov r8d, 6
mov ecx, r15d
cmp r9d, ecx
jne 0x14015a112
mov qword [rdi], rdx
or rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], r15b
jne 0x14015a116
inc rax
add rdx, rax
mov eax, 1
add ecx, eax
cmp ecx, 0x26
jb 0x14015a10a
add rdi, 8
sub r8, rax
jne 0x14015a107
lea ecx, [rax + 0x17]
call fcn.140092328
lea rcx, [rbp + 0x3f0]
mov rdi, rax
call fcn.1401efe74
mov r10d, 1
test rdi, rdi
jne 0x14015a171
mov rbx, r15
mov r13d, 0x8007000e
mov qword [rbp + 0x3f0], rbx
jmp 0x14015a2f3
xorps xmm0, xmm0
mov dword [rbp - 0x58], r15d
mov rbx, rdi
lea rcx, [rbp + 0x1040]
xor eax, eax
mov qword [rbp + 0x3f0], rbx
mov rdx, rdi
mov qword [rbp - 0x60], rcx
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rax
mov r8d, r15d
mov qword [rbp - 0x48], rdx
movzx r9d, word [rcx]
lea rcx, [0x14032de48]
mov eax, r15d
cmp r9w, word [rcx]
je 0x14015a1c5
add eax, r10d
add rcx, 2
cmp eax, 6
jb 0x14015a1ae
jmp 0x14015a275
mov rax, qword [rbp + rax*8 + 0xf30]
or rcx, 0xffffffffffffffff
mov qword [rbp - 0x40], rax
inc rcx
cmp byte [rax + rcx], r15b
jne 0x14015a1d5
lea r9d, [r10 + rcx]
mov dword [rsp + 0x28], r15d
mov r8, rax
mov qword [rsp + 0x20], r15
mov rax, qword [0x1403780c0]
mov ecx, 0xfde9
xor edx, edx
call qword [case.0x14006c37f.0]
mov dword [rbp - 0x30], eax
test eax, eax
je 0x14015a2c4
movsxd rcx, eax
add rcx, rcx
call fcn.140092328
mov rcx, qword [rbp - 0x48]
mov qword [rcx], rax
test rax, rax
je 0x14015a2b6
mov r8, qword [rbp - 0x40]
or rcx, 0xffffffffffffffff
inc rcx
cmp byte [r8 + rcx], r15b
jne 0x14015a231
mov edx, dword [rbp - 0x30]
mov r9d, 1
mov dword [rsp + 0x28], edx
add r9d, ecx
mov qword [rsp + 0x20], rax
mov ecx, 0xfde9
mov rax, qword [0x1403780c0]
xor edx, edx
call qword [case.0x14006c37f.0]
test eax, eax
je 0x14015a2c4
mov rdx, qword [rbp - 0x48]
mov r10d, 1
mov r8d, dword [rbp - 0x58]
mov rcx, qword [rbp - 0x60]
add r8d, r10d
add rcx, 2
mov dword [rbp - 0x58], r8d
add rdx, 8
mov qword [rbp - 0x60], rcx
mov qword [rbp - 0x48], rdx
cmp r8d, 3
jb 0x14015a1a0
mov eax, dword [rbp - 0x78]
mov rbx, r15
mov qword [rbp + 0x3f0], rbx
mov qword [rbp + 0x3c0], rdi
mov dword [rbp + 0xae0], eax
jmp 0x14015a2f3
mov r13d, 0x8007000e
mov r10d, 1
jmp 0x14015a2f3
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov r13d, eax
test eax, eax
jle 0x14015a2e2
movzx r13d, ax
or r13d, 0x80070000
mov r10d, 1
test r13d, r13d
js 0x14015a2f3
mov r13d, 0x80004005
test rbx, rbx
je 0x14015a340
mov eax, 3
mov rdi, qword [rbx]
test rdi, rdi
je 0x14015a332
or rcx, 0xffffffffffffffff
inc rcx
cmp word [rdi + rcx*2], r15w
jne 0x14015a309
lea rcx, [rcx*2 + 2]
xor eax, eax
rep stosb byte [rdi], al
mov rcx, qword [rbx]
call fcn.14009515c
mov rax, qword [rsp + 0x70]
mov r10d, 1
add rbx, 8
sub rax, r10
mov qword [rsp + 0x70], rax
jne 0x14015a2fd
mov rdi, qword [rbp + 0x3e0]
test rdi, rdi
je 0x14015a357
mov rcx, qword [rbp + 0x3e8]
xor eax, eax
rep stosb byte [rdi], al
lea rcx, [rbp + 0x3f0]
call fcn.1401efe74
lea rcx, [rbp + 0x3e0]
call fcn.1401efe74
lea rcx, [rbp + 0x3d8]
call fcn.1401efe74
test r13d, r13d
js 0x14015adb5
mov rax, qword [rbp + 0x3c0]
lea r8, [rbp + 0x680]
xor edx, edx
xorps xmm0, xmm0
xor r9d, r9d
mov edi, r15d
mov r13d, r15d
mov rcx, qword [rax]
mov qword [rbp + 0xae8], rcx
mov rcx, qword [rax + 8]
mov qword [rbp + 0xaf0], rcx
mov rcx, qword [rax + 0x10]
mov rax, qword [0x140378168]
mov qword [rbp + 0xaf8], rcx
lea ecx, [rdx + 0x42]
movups xmmword [rbp + 0x680], xmm0
mov dword [rbp + 0x680], reloc.OLEAUT32.dll_SafeArrayGetDim
call qword [case.0x14006c37f.0]
test eax, eax
jne 0x14015a410
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov r13d, eax
test eax, eax
jle 0x14015a403
movzx r13d, ax
or r13d, 0x80070000
test r13d, r13d
js 0x14015a419
mov r13d, 0x80004005
jmp 0x14015a419
mov edi, dword [rbp + 0x684]
and edi, 1
mov dword [rbp + 0xae4], edi
test r13d, r13d
js 0x14015adb5
mov r13d, dword [rbp - 0x18]
mov eax, PathIsExe
mov ecx, r13d
mov dword [rbp - 0x58], eax
sub ecx, 1
je 0x14015a45c
sub ecx, 1
je 0x14015a453
cmp ecx, 1
jne 0x14015a466
mov ebx, 0xe1
mov dword [rbp - 0x70], ebx
mov dword [rbp - 0x68], ebx
jmp 0x14015a466
mov dword [rbp - 0x70], reloc.OLEAUT32.dll_SafeArrayDestroy
jmp 0x14015a45f
mov dword [rbp - 0x70], eax
mov dword [rbp - 0x68], SafeArrayDestroy
mov edi, SHRestricted
lea rcx, [rbp + 0xe50]
xor edx, edx
mov dword [rbp - 0x30], edi
lea ebx, [rdi + 0x7c]
mov r8d, ebx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [0x1403780e0]
lea r8, [rbp + 0xe50]
or edx, 0xffffffff
mov word [rbp + 0xe94], bx
xor ecx, ecx
call qword [case.0x14006c37f.0]
test eax, eax
je 0x14015a4d0
mov eax, dword [rbp + 0xefc]
movzx edi, word [rbp + 0xef6]
mov dword [rbp + 0x678], eax
mov eax, dword [rbp + 0xf00]
mov dword [rbp + 0x67c], eax
lea eax, [rbx - 0x7c]
cmp edi, eax
cmovb edi, eax
mov dword [rbp - 0x30], edi
mov rbx, qword [rsp + 0x68]
lea rcx, [rbp + 0xd30]
mov eax, 1
cmp r13d, eax
cmovne rbx, qword [rbp - 0x50]
xor edx, edx
lea r8d, [rax + 0x5b]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [0x1403780f8]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
mov r13d, r15d
call qword [case.0x14006c37f.0]
mov qword [rsp + 0x70], rax
test rax, rax
je 0x14015a5a5
mov ecx, dword [rbp - 0x70]
mov r8d, 0x48
mov rax, qword [0x1403780b8]
mov edx, edi
call qword [case.0x14006c37f.0]
mov r8, rbx
mov dword [rbp + 0xd40], 0x190
neg eax
mov byte [rbp + 0xd4a], 5
mov edx, 0x20
mov dword [rbp + 0xd30], eax
lea rcx, [rbp + 0xd4c]
call fcn.14003dd20
mov rax, qword [0x140378020]
lea rcx, [rbp + 0xd30]
call qword [case.0x14006c37f.0]
test rax, rax
jne 0x14015a5d7
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov r13d, eax
test eax, eax
jle 0x14015a598
movzx r13d, ax
or r13d, 0x80070000
test r13d, r13d
js 0x14015a5de
mov r13d, 0x80004005
jmp 0x14015a5de
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov r13d, eax
test eax, eax
jle 0x14015a5c3
movzx r13d, ax
or r13d, 0x80070000
test r13d, r13d
js 0x14015adb5
mov r13d, 0x80004005
jmp 0x14015adb5
mov qword [rbp + 0xb00], rax
mov rdx, qword [rsp + 0x70]
xor ecx, ecx
mov rax, qword [0x140378160]
call qword [case.0x14006c37f.0]
test r13d, r13d
js 0x14015adb5
mov eax, 1
lea rcx, [rbp + 0xd90]
cmp dword [rbp - 0x18], eax
mov rax, qword [rsp + 0x68]
cmovne rax, qword [rbp - 0x50]
xor edx, edx
mov qword [rsp + 0x68], rax
lea r8d, [rdx + 0x5c]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [0x1403780f8]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
mov r13d, r15d
call qword [case.0x14006c37f.0]
mov rbx, rax
test rax, rax
je 0x14015a5a5
mov ecx, dword [rbp - 0x68]
mov r8d, 0x48
mov rax, qword [0x1403780b8]
mov edx, edi
call qword [case.0x14006c37f.0]
mov r8, qword [rsp + 0x68]
lea rcx, [rbp + 0xdac]
neg eax
mov dword [rbp + 0xda0], 0x190
mov edx, 0x20
mov dword [rbp + 0xd90], eax
mov byte [rbp + 0xdaa], 5
call fcn.14003dd20
mov rax, qword [0x140378020]
lea rcx, [rbp + 0xd90]
call qword [case.0x14006c37f.0]
test rax, rax
jne 0x14015a6d5
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov r13d, eax
test eax, eax
jle 0x14015a6c8
movzx r13d, ax
or r13d, 0x80070000
test r13d, r13d
js 0x14015a6dc
mov r13d, 0x80004005
jmp 0x14015a6dc
mov qword [rbp + 0xb08], rax
mov rax, qword [0x140378160]
mov rdx, rbx
xor ecx, ecx
call qword [case.0x14006c37f.0]
test r13d, r13d
js 0x14015adb5
mov edi, dword [rbp - 0x18]
mov ebx, r15d
mov ecx, edi
mov edx, r15d
sub ecx, 1
je 0x14015a711
sub ecx, 1
je 0x14015a746
cmp ecx, 1
jne 0x14015a71d
mov ebx, dword [rbp + 0x678]
mov edx, dword [rbp + 0x67c]
mov dword [rbp + 0xb88], ebx
mov dword [rbp + 0xb8c], edx
mov ecx, 1
cmp edi, ecx
je 0x14015a76f
lea eax, [rdi - 2]
cmp eax, ecx
ja 0x14015a75b
mov ecx, r15d
mov dword [rbp - 0x58], r15d
mov dword [rbp - 0x78], r15d
jmp 0x14015a77b
mov eax, dword [rbp + 0x678]
mov ecx, 4
cdq
idiv ecx
mov edx, r15d
mov ebx, eax
jmp 0x14015a71d
mov eax, dword [rbp - 0x58]
mov dword [rbp - 0x78], eax
mov eax, dword [rbp - 0x58]
mov dword [rbp - 0x58], eax
mov eax, dword [rbp - 0x58]
mov ecx, dword [rbp - 0x58]
jmp 0x14015a77e
mov ecx, reloc.OLEAUT32.dll_DllRegisterServer
mov dword [rbp - 0x78], 0x20
mov eax, r15d
mov dword [rbp - 0x70], ecx
mov dword [rbp - 0x68], eax
mov rdx, qword [rbp + 0xb00]
sub ebx, ecx
mov rcx, qword [rsp + 0x78]
sub ebx, eax
mov rax, qword [0x140378078]
mov r13d, r15d
mov rdi, qword [rbp + 0xae8]
mov dword [rbp + 0xb34], ebx
mov dword [rbp + 0xb24], ebx
call qword [case.0x14006c37f.0]
mov rdx, rdi
mov qword [rsp + 0x28], r15
mov rdi, qword [rsp + 0x78]
lea r9, [rbp + 0xb1c]
mov qword [rsp + 0x68], rax
mov rcx, rdi
mov rax, qword [method.4.virtual_56]
or r8d, 0xffffffff
mov dword [rsp + 0x20], 0xc50
call qword [case.0x14006c37f.0]
test eax, eax
mov eax, 0x80004005
cmove r13d, eax
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x14015a814
mov rdx, rax
mov rcx, rdi
mov rax, qword [0x140378078]
call qword [case.0x14006c37f.0]
test r13d, r13d
js 0x14015adb5
mov rdx, qword [rbp + 0xb08]
mov r13d, r15d
mov rcx, qword [rsp + 0x78]
mov rax, qword [0x140378078]
mov rdi, qword [rbp + 0xaf0]
call qword [case.0x14006c37f.0]
mov rdx, rdi
mov qword [rsp + 0x28], r15
mov rdi, qword [rsp + 0x78]
lea r9, [rbp + 0xb2c]
mov qword [rsp + 0x68], rax
mov rcx, rdi
mov rax, qword [method.4.virtual_56]
or r8d, 0xffffffff
mov dword [rsp + 0x20], 0xc50
call qword [case.0x14006c37f.0]
test eax, eax
mov eax, 0x80004005
cmove r13d, eax
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x14015a89d
mov rdx, rax
mov rcx, rdi
mov rax, qword [0x140378078]
call qword [case.0x14006c37f.0]
test r13d, r13d
js 0x14015adb5
mov r13d, dword [rbp - 0x18]
mov edx, 1
mov ecx, dword [rbp + 0xb24]
lea eax, [r13 - 2]
cmp eax, edx
ja 0x14015a8c8
mov ebx, dword [rbp + 0xb34]
cmp ecx, ebx
cmovg ebx, ecx
mov r8d, dword [rbp - 0x58]
mov rax, qword [method.4.virtual_56]
cmp dword [rbp + 0xae0], r15d
je 0x14015a8fd
mov edi, dword [rbp - 0x68]
mov edx, edi
sub edx, ecx
lea rcx, [rbp + 0xb1c]
add edx, ebx
call qword [case.0x14006c37f.0]
sub edi, dword [rbp + 0xb34]
lea edx, [rbx + rdi]
jmp 0x14015a910
mov edx, dword [rbp - 0x70]
lea rcx, [rbp + 0xb1c]
call qword [case.0x14006c37f.0]
mov edx, dword [rbp - 0x70]
mov r8d, dword [rbp - 0x78]
lea rcx, [rbp + 0xb2c]
add r8d, dword [rbp + 0xb28]
mov rax, qword [method.4.virtual_56]
call qword [case.0x14006c37f.0]
lea eax, [r13 - 2]
mov edx, 1
cmp eax, edx
jbe 0x14015abc4
cmp r13d, edx
jne 0x14015abe0
xor edx, edx
mov dword [rbp + 0xb18], 0xffffff
lea rcx, [rbp + 0xdf0]
lea r8d, [rdx + 0x5c]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [0x1403780f8]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
mov r13d, r15d
call qword [case.0x14006c37f.0]
mov rdi, rax
test rax, rax
je 0x14015a5a5
mov edx, dword [rbp - 0x30]
mov r8d, 0x48
mov rax, qword [0x1403780b8]
lea ecx, [r8 - 0x3d]
call qword [case.0x14006c37f.0]
mov r8, qword [rbp - 0x80]
lea rcx, [rbp + 0xe0c]
neg eax
mov dword [rbp + 0xe00], 0x190
mov edx, 0x20
mov dword [rbp + 0xdf0], eax
mov byte [rbp + 0xe0a], 5
call fcn.14003dd20
mov rax, qword [0x140378020]
lea rcx, [rbp + 0xdf0]
call qword [case.0x14006c37f.0]
test rax, rax
jne 0x14015aa17
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov r13d, eax
test eax, eax
jle 0x14015aa0a
movzx r13d, ax
or r13d, 0x80070000
test r13d, r13d
js 0x14015aa1e
mov r13d, 0x80004005
jmp 0x14015aa1e
mov qword [rbp + 0xb10], rax
mov rax, qword [0x140378160]
mov rdx, rdi
xor ecx, ecx
call qword [case.0x14006c37f.0]
test r13d, r13d
js 0x14015adb5
mov rdx, qword [rbp + 0xb10]
mov r13d, r15d
mov rcx, qword [rsp + 0x78]
mov rax, qword [0x140378078]
mov rdi, qword [rbp + 0xaf8]
mov dword [rbp + 0xb44], ebx
call qword [case.0x14006c37f.0]
mov rdx, rdi
mov qword [rsp + 0x28], r15
mov rdi, qword [rsp + 0x78]
lea r9, [rbp + 0xb3c]
mov rbx, rax
mov dword [rsp + 0x20], 0x460
mov rax, qword [method.4.virtual_56]
mov rcx, rdi
or r8d, 0xffffffff
call qword [case.0x14006c37f.0]
test eax, eax
mov eax, 0x80004005
cmove r13d, eax
test rbx, rbx
je 0x14015aab8
mov rax, qword [0x140378078]
mov rdx, rbx
mov rcx, rdi
call qword [case.0x14006c37f.0]
test r13d, r13d
js 0x14015adb5
mov eax, dword [rbp + 0xb44]
mov ecx, SHFindFiles
mov edi, dword [rbp - 0x30]
add eax, 0x18
cmp eax, ecx
mov edx, edi
cmovl eax, ecx
lea ebx, [rcx + 6]
mov dword [rbp + 0xb44], eax
mov r8d, ebx
lea eax, [rcx - 0x3a]
mov ecx, dword [rbp + 0xb3c]
mov dword [rbp + 0xb48], eax
mov rax, qword [0x1403780b8]
call qword [case.0x14006c37f.0]
mov ecx, dword [rbp + 0xb40]
mov r8d, ebx
mov dword [rbp + 0xb3c], eax
mov edx, edi
mov rax, qword [0x1403780b8]
call qword [case.0x14006c37f.0]
mov ecx, dword [rbp + 0xb44]
mov r8d, ebx
mov dword [rbp + 0xb40], eax
mov edx, edi
mov rax, qword [0x1403780b8]
call qword [case.0x14006c37f.0]
mov ecx, dword [rbp + 0xb48]
mov r8d, ebx
mov dword [rbp + 0xb44], eax
mov edx, edi
mov rax, qword [0x1403780b8]
call qword [case.0x14006c37f.0]
mov r8d, dword [rbp + 0xb38]
lea rcx, [rbp + 0xb3c]
add r8d, 0x24
mov dword [rbp + 0xb48], eax
mov rax, qword [method.4.virtual_56]
cmp dword [rbp + 0xae0], r15d
je 0x14015ab98
mov edx, dword [rbp + 0xb1c]
cmp edx, dword [rbp + 0xb2c]
cmovge edx, dword [rbp + 0xb2c]
jmp 0x14015abb7
mov edx, dword [rbp + 0xb24]
cmp edx, dword [rbp + 0xb34]
cmovle edx, dword [rbp + 0xb34]
sub edx, dword [rbp + 0xb44]
add edx, dword [rbp + 0xb3c]
call qword [case.0x14006c37f.0]
mov edx, 1
jmp 0x14015abe0
mov eax, dword [rbp + 0xb38]
mov dword [rbp + 0xb8c], eax
mov dword [rbp + 0xb88], ebx
mov dword [rbp + 0xb18], 0xffa8a8a8
mov ecx, dword [rbp - 0x18]
mov r13d, dword [rbp + 0xae0]
mov ebx, dword [rbp + 0xb8c]
mov edi, dword [rbp + 0xb88]
sub ecx, 1
je 0x14015adaa
sub ecx, 1
je 0x14015acc0
cmp ecx, 1
jne 0x14015adb2
xor eax, eax
xorps xmm0, xmm0
mov qword [rbp + 0xc10], rax
xor ecx, ecx
mov rax, qword [method.4.virtual_56]
movups xmmword [rbp + 0xbf0], xmm0
movups xmmword [rbp + 0xc00], xmm0
call qword [case.0x14006c37f.0]
lea rdx, [rbp + 0xbf0]
mov dword [rbp + 0xbf0], PathIsExe
mov rcx, rax
mov rax, qword [method.4.virtual_56]
call qword [case.0x14006c37f.0]
test eax, eax
je 0x14015adb2
mov rax, qword [method.4.virtual_56]
lea rdx, [rbp + 0xc04]
xor ecx, ecx
call qword [case.0x14006c37f.0]
mov rax, qword [method.4.virtual_56]
lea rdx, [rbp + 0xc0c]
xor ecx, ecx
call qword [case.0x14006c37f.0]
mov eax, dword [rbp + 0xc0c]
sub eax, edi
imul ecx, eax, 0x32
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov rcx, qword [rbp + 0xc0c]
shr rcx, 0x20
sub ecx, ebx
imul ecx, ecx, 0x32
jmp 0x14015ad8b
xor eax, eax
xorps xmm0, xmm0
mov qword [rbp + 0xc38], rax
xor ecx, ecx
mov rax, qword [method.4.virtual_56]
movups xmmword [rbp + 0xc18], xmm0
movups xmmword [rbp + 0xc28], xmm0
call qword [case.0x14006c37f.0]
lea rdx, [rbp + 0xc18]
mov dword [rbp + 0xc18], PathIsExe
mov rcx, rax
mov rax, qword [method.4.virtual_56]
call qword [case.0x14006c37f.0]
test eax, eax
je 0x14015adb2
mov rax, qword [method.4.virtual_56]
lea rdx, [rbp + 0xc2c]
xor ecx, ecx
call qword [case.0x14006c37f.0]
mov rax, qword [method.4.virtual_56]
lea rdx, [rbp + 0xc34]
xor ecx, ecx
call qword [case.0x14006c37f.0]
mov eax, dword [rbp + 0xc34]
test r13d, r13d
je 0x14015ad65
lea ecx, [rax + rax*4]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
add edx, dword [rbp + 0xc2c]
jmp 0x14015ad7b
sub eax, edi
imul ecx, eax, 0x5f
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov rax, qword [rbp + 0xc34]
shr rax, 0x20
sub eax, ebx
imul ecx, eax, 0x5f
mov dword [rbp + 0xb80], edx
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [rbp + 0xb84], edx
jmp 0x14015adb2
and qword [rbp + 0xb80], 0
mov r13d, r15d
mov rdx, qword [rsp + 0x78]
xor ecx, ecx
mov rax, qword [0x140378160]
call qword [case.0x14006c37f.0]
mov ebx, 1
xor eax, eax
lock cmpxchg dword [0x14037d0a0], ebx
jne 0x14015adce
mov eax, dword [0x14037bd98]
test eax, eax
jle 0x14015ae4f
sub eax, ebx
mov dword [0x14037bd98], eax
jne 0x14015ae4f
mov ebx, 4
lea rdi, [0x14037c2e0]
lea eax, [rbx - 3]
cmp qword [rdi], r15
je 0x14015ae16
mov rcx, qword [rdi]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_FreeLibrary]
nop dword [rax + rax]
mov eax, 1
add rdi, 0x18
sub rbx, rax
jne 0x14015adfd
xor edx, edx
lea r8d, [rbx + 0x60]
lea rcx, [0x14037c2e0]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x1402eeca0]
lea rcx, section..data
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov ebx, 1
mov eax, r15d
lea rcx, [rbp + 0x3c0]
xchg dword [0x14037d0a0], eax
call fcn.1401efe74
test r13d, r13d
js 0x14015c810
mov rdi, qword [rbp + 0xb80]
lea rcx, [rbp + 0x760]
xor edx, edx
mov qword [rbp + 0x408], rdi
lea r8d, [rdx + 0x68]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r13, qword [rbp]
mov edx, 7
mov rax, qword [0x140378050]
mov rcx, r13
call qword [case.0x14006c37f.0]
test rax, rax
je 0x14015aef4
mov rcx, rax
lea r8, [rbp + 0x760]
mov rax, qword [0x140378068]
mov edx, 0x68
call qword [case.0x14006c37f.0]
test eax, eax
je 0x14015aef4
mov eax, 0x20
cmp word [rbp + 0x772], ax
jne 0x14015aef4
cmp qword [rbp + 0x778], r15
je 0x14015aef4
cmp dword [rbp + 0x764], r15d
jle 0x14015aef4
cmp dword [rbp + 0x768], r15d
jg 0x14015aef7
mov ebx, r15d
mov dword [rbp + 0x11c], ebx
test ebx, ebx
mov ebx, 1
jne 0x14015af10
cmp dword [rbp - 0x18], ebx
je 0x14015af10
mov edi, dword [rbp - 0x18]
jmp 0x14015af77
mov r8d, dword [rbp + 0x40c]
lea rcx, [rbp + 0xb1c]
mov rax, qword [method.4.virtual_56]
mov edx, edi
call qword [case.0x14006c37f.0]
mov r8d, dword [rbp + 0x40c]
lea rcx, [rbp + 0xb2c]
mov rax, qword [method.4.virtual_56]
mov edx, edi
call qword [case.0x14006c37f.0]
mov edi, dword [rbp - 0x18]
cmp edi, ebx
jne 0x14015af77
mov ecx, dword [rbp + 0xae4]
mov rax, qword [0x140378028]
neg ecx
sbb ecx, ecx
not ecx
and ecx, 0xb26720
call qword [case.0x14006c37f.0]
mov qword [rbp + 0x208], rax
mov rax, qword [method.4.virtual_56]
mov edx, ebx
mov rcx, r13
call qword [case.0x14006c37f.0]
cmp dword [rbp + 0xae0], r15d
mov ecx, 0x20812
mov dword [rbp - 0x58], eax
mov eax, 0x810
cmovne eax, ecx
mov dword [rbp - 0x30], eax
cmp dword [rbp + 0x11c], r15d
je 0x14015ba35
mov eax, dword [rbp + 0xae4]
lea rcx, [rbp + 0x7d0]
mov rdi, qword [rbp + 0xae8]
mov ebx, 0x68
mov dword [rbp - 0x70], eax
mov r8d, ebx
mov rax, qword [rbp + 0xb00]
xor edx, edx
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, ebx
lea rcx, [rbp + 0x840]
xor edx, edx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor eax, eax
mov qword [rbp - 0x80], r15
mov dword [rbp - 0x68], r15d
xorps xmm0, xmm0
mov dword [rbp - 0x78], r15d
mov qword [rbp + 0xc90], rax
mov dword [rbp + 0xc98], eax
movups xmmword [rbp + 0xc70], xmm0
movups xmmword [rbp + 0xc80], xmm0
movups xmmword [rbp + 0xb90], xmm0
test rdi, rdi
je 0x14015c7f4
mov rax, qword [0x140378050]
lea edx, [rbx - 0x61]
mov rcx, r13
call qword [case.0x14006c37f.0]
test rax, rax
je 0x14015bb5a
mov rcx, rax
lea r8, [rbp + 0x7d0]
mov rax, qword [0x140378068]
mov edx, ebx
call qword [case.0x14006c37f.0]
test eax, eax
je 0x14015b08a
mov rax, qword [rbp + 0x7e8]
mov qword [rbp - 0x80], rax
mov eax, dword [rbp + 0x7d4]
mov dword [rbp - 0x68], eax
mov eax, dword [rbp + 0x7d8]
mov dword [rbp - 0x78], eax
mov rax, qword [0x140378010]
mov rcx, r13
call qword [case.0x14006c37f.0]
mov r13, rax
test rax, rax
je 0x14015bb5a
mov eax, dword [rbp + 0xb24]
lea r9, [rbp + 0x410]
sub eax, dword [rbp + 0xb1c]
lea rdx, [rbp + 0xc70]
mov dword [rbp + 0xc74], eax
xorps xmm0, xmm0
mov eax, dword [rbp + 0xb20]
mov ebx, r15d
sub eax, dword [rbp + 0xb28]
xor r8d, r8d
mov dword [rbp + 0xc78], eax
mov rcx, r13
mov rax, qword [0x140378018]
mov dword [rsp + 0x28], r15d
mov qword [rbp + 0x410], r15
mov dword [rbp - 0x60], ebx
movdqu xmmword [rbp + 0xc80], xmm0
mov qword [rbp + 0xc90], r15
mov dword [rbp + 0xc98], r15d
mov dword [rbp + 0xc70], PathIsExe
mov dword [rbp + 0xc7c], 0x200001
mov qword [rsp + 0x20], r15
call qword [case.0x14006c37f.0]
mov qword [rbp - 0x50], rax
mov rdi, rax
test rax, rax
jne 0x14015b168
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jle 0x14015b156
movzx ebx, ax
or ebx, 0x80070000
test ebx, ebx
js 0x14015b4da
mov ebx, 0x80004005
jmp 0x14015b4da
mov rax, qword [0x140378068]
lea r8, [rbp + 0x840]
mov edx, 0x68
mov rcx, rdi
call qword [case.0x14006c37f.0]
mov rcx, r15
mov rdx, rdi
test eax, eax
mov eax, dword [rbp + 0xb24]
cmovne rcx, qword [rbp + 0x858]
sub eax, dword [rbp + 0xb1c]
mov dword [rbp + 0xb98], eax
mov eax, dword [rbp + 0xb28]
sub eax, dword [rbp + 0xb20]
mov dword [rbp + 0xb9c], eax
mov rax, qword [0x140378078]
mov qword [rsp + 0x78], rcx
mov rcx, r13
call qword [case.0x14006c37f.0]
mov rax, qword [method.4.virtual_56]
mov edx, 1
mov rcx, r13
call qword [case.0x14006c37f.0]
mov rdx, qword [rsp + 0x68]
mov rcx, r13
mov rax, qword [0x140378078]
call qword [case.0x14006c37f.0]
mov rdi, qword [0x1403780e8]
xor ecx, ecx
mov qword [rsp + 0x68], rax
mov rax, qword [0x140378070]
call qword [case.0x14006c37f.0]
lea rdx, [rbp + 0xb90]
mov rcx, r13
mov r8, rax
mov rax, rdi
call qword [case.0x14006c37f.0]
mov eax, dword [rbp - 0x30]
lea r9, [rbp + 0xb90]
mov rdx, qword [rsp + 0x70]
or r8d, 0xffffffff
mov qword [rsp + 0x28], r15
mov rcx, r13
mov dword [rsp + 0x20], eax
mov rax, qword [method.4.virtual_56]
call qword [case.0x14006c37f.0]
mov eax, 1
cmp dword [rbp - 0x18], eax
jne 0x14015b282
cmp dword [rbp - 0x70], r15d
je 0x14015b279
lea ecx, [rax + 7]
mov rax, qword [0x140378118]
call qword [case.0x14006c37f.0]
mov dword [rbp - 0x70], eax
jmp 0x14015b289
mov dword [rbp - 0x70], 0xffffff
jmp 0x14015b289
mov dword [rbp - 0x70], 0xffa8a8a8
mov eax, dword [rbp + 0xb1c]
mov r8d, r15d
movsxd r10, dword [rbp - 0x68]
mov edx, eax
mov ecx, dword [rbp + 0xb98]
neg edx
mov r11d, dword [rbp + 0xb9c]
test eax, eax
mov r9d, r15d
cmovns r8d, eax
cmovns edx, r15d
mov eax, dword [rbp + 0xb20]
mov edi, eax
neg edi
test eax, eax
cmovns r9d, eax
cmovns edi, r15d
sub ecx, edx
mov eax, r10d
sub eax, r8d
cmp ecx, eax
cmovge ecx, eax
mov eax, dword [rbp - 0x78]
sub eax, r9d
mov dword [rbp - 0x68], ecx
sub r11d, edi
cmp r11d, eax
cmovge r11d, eax
test ecx, ecx
jle 0x14015b4ac
test r11d, r11d
jle 0x14015b4ac
mov eax, dword [rbp + 0xb98]
mov r14d, dword [rbp - 0x68]
mov esi, dword [rbp - 0x70]
imul eax, edi
mov dword [rbp - 0x78], r15d
movsxd rcx, eax
movsxd rax, edx
add rcx, rax
mov rax, qword [rsp + 0x78]
lea rdx, [rax + rcx*4]
mov eax, r10d
imul eax, r9d
mov qword [rsp + 0x70], rdx
movsxd rcx, eax
movsxd rax, r8d
mov r8d, 1
add rcx, rax
mov rax, qword [rbp - 0x80]
lea rax, [rax + rcx*4]
movsxd rcx, dword [rbp + 0xb98]
shl rcx, 2
mov qword [rsp + 0x78], rcx
mov rcx, r10
mov r12, qword [rsp + 0x78]
shl rcx, 2
mov qword [rbp - 0x48], rcx
mov qword [rbp - 0x80], rax
mov r10, rax
mov dword [rbp - 0x68], r15d
sub r10, rdx
lea r9, [rdx + 2]
mov edi, r15d
mov ebx, 4
movzx eax, byte [r9 - 2]
movzx ecx, byte [r9 - 1]
lea edx, [rax + rcx*2]
movzx eax, byte [r9]
add edx, eax
shr edx, 2
not dl
test dl, dl
je 0x14015b454
movzx edi, byte [r10 + r9]
mov eax, 0x80808081
movzx r8d, dl
movzx ecx, sil
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rbp - 0x6f]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9], dl
movzx edi, byte [r10 + r9 - 1]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rbp - 0x6e]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9 - 1], dl
movzx edi, byte [r9 + r10 - 2]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
mov ecx, 0xff
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r9 + r10 - 2], dl
movzx edi, byte [r9 + r10 + 1]
sub ecx, edi
imul ecx, r8d
mov r8d, 1
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
add dl, dil
mov edi, dword [rbp - 0x68]
mov byte [r9 + r10 + 1], dl
add edi, r8d
add r9, rbx
mov dword [rbp - 0x68], edi
cmp edi, r14d
jl 0x14015b37c
mov rdx, qword [rsp + 0x70]
mov rax, qword [rbp - 0x80]
add rdx, r12
mov ecx, dword [rbp - 0x78]
add rax, qword [rbp - 0x48]
add ecx, r8d
mov qword [rsp + 0x70], rdx
mov qword [rbp - 0x80], rax
mov dword [rbp - 0x78], ecx
cmp ecx, r11d
jl 0x14015b366
mov r12d, dword [rbp - 0x20]
movabs rsi, 0xc81ecb17b1b54a58
mov ebx, dword [rbp - 0x60]
movabs r14, 0x7f1137fab69605e
mov rcx, qword [rbp - 0x50]
mov rax, qword [0x140378038]
call qword [case.0x14006c37f.0]
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x14015b4da
mov rdx, rax
mov rcx, r13
mov rax, qword [0x140378078]
call qword [case.0x14006c37f.0]
mov rax, qword [0x140378030]
mov rcx, r13
call qword [case.0x14006c37f.0]
test ebx, ebx
js 0x14015c7f4
mov eax, dword [rbp + 0xae4]
lea rcx, [rbp + 0x8b0]
mov rdi, qword [rbp + 0xaf0]
mov ebx, 0x68
mov dword [rbp - 0x70], eax
mov r8d, ebx
mov rax, qword [rbp + 0xb08]
xor edx, edx
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, ebx
lea rcx, [rbp + 0x920]
xor edx, edx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor eax, eax
mov qword [rbp - 0x80], r15
mov dword [rbp - 0x68], r15d
xorps xmm0, xmm0
mov dword [rbp - 0x78], r15d
mov qword [rbp + 0xcc0], rax
mov dword [rbp + 0xcc8], eax
movups xmmword [rbp + 0xca0], xmm0
movups xmmword [rbp + 0xcb0], xmm0
movups xmmword [rbp + 0xba0], xmm0
test rdi, rdi
je 0x14015c7f4
mov r13, qword [rbp]
lea edx, [rbx - 0x61]
mov rax, qword [0x140378050]
mov rcx, r13
call qword [case.0x14006c37f.0]
test rax, rax
je 0x14015bb5a
mov rcx, rax
lea r8, [rbp + 0x8b0]
mov rax, qword [0x140378068]
mov edx, ebx
call qword [case.0x14006c37f.0]
test eax, eax
je 0x14015b5d0
mov rax, qword [rbp + 0x8c8]
mov qword [rbp - 0x80], rax
mov eax, dword [rbp + 0x8b4]
mov dword [rbp - 0x68], eax
mov eax, dword [rbp + 0x8b8]
mov dword [rbp - 0x78], eax
mov rax, qword [0x140378010]
mov rcx, r13
call qword [case.0x14006c37f.0]
mov r13, rax
test rax, rax
je 0x14015bb5a
mov eax, dword [rbp + 0xb34]
lea r9, [rbp + 0x418]
sub eax, dword [rbp + 0xb2c]
lea rdx, [rbp + 0xca0]
mov dword [rbp + 0xca4], eax
xorps xmm0, xmm0
mov eax, dword [rbp + 0xb30]
xor r8d, r8d
sub eax, dword [rbp + 0xb38]
mov rcx, r13
mov dword [rbp + 0xca8], eax
mov ebx, r15d
mov rax, qword [0x140378018]
mov dword [rsp + 0x28], r15d
mov qword [rbp + 0x418], r15
movdqu xmmword [rbp + 0xcb0], xmm0
mov qword [rbp + 0xcc0], r15
mov dword [rbp + 0xcc8], r15d
mov dword [rbp + 0xca0], PathIsExe
mov dword [rbp + 0xcac], 0x200001
mov qword [rsp + 0x20], r15
call qword [case.0x14006c37f.0]
mov qword [rbp - 0x50], rax
mov rdi, rax
test rax, rax
jne 0x14015b6ab
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jle 0x14015b699
movzx ebx, ax
or ebx, 0x80070000
test ebx, ebx
js 0x14015ba14
mov ebx, 0x80004005
jmp 0x14015ba14
mov rax, qword [0x140378068]
lea r8, [rbp + 0x920]
mov edx, 0x68
mov rcx, rdi
call qword [case.0x14006c37f.0]
mov rcx, r15
mov rdx, rdi
test eax, eax
mov eax, dword [rbp + 0xb34]
cmovne rcx, qword [rbp + 0x938]
sub eax, dword [rbp + 0xb2c]
mov dword [rbp + 0xba8], eax
mov eax, dword [rbp + 0xb38]
sub eax, dword [rbp + 0xb30]
mov dword [rbp + 0xbac], eax
mov rax, qword [0x140378078]
mov qword [rsp + 0x78], rcx
mov rcx, r13
call qword [case.0x14006c37f.0]
mov rax, qword [method.4.virtual_56]
mov edx, 1
mov rcx, r13
call qword [case.0x14006c37f.0]
mov rdx, qword [rsp + 0x68]
mov rcx, r13
mov rax, qword [0x140378078]
call qword [case.0x14006c37f.0]
mov rdi, qword [0x1403780e8]
xor ecx, ecx
mov qword [rsp + 0x68], rax
mov rax, qword [0x140378070]
call qword [case.0x14006c37f.0]
lea rdx, [rbp + 0xba0]
mov rcx, r13
mov r8, rax
mov rax, rdi
call qword [case.0x14006c37f.0]
mov eax, dword [rbp - 0x30]
lea r9, [rbp + 0xba0]
mov rdx, qword [rsp + 0x70]
or r8d, 0xffffffff
mov qword [rsp + 0x28], r15
mov rcx, r13
mov dword [rsp + 0x20], eax
mov rax, qword [method.4.virtual_56]
call qword [case.0x14006c37f.0]
mov eax, 1
cmp dword [rbp - 0x18], eax
jne 0x14015b7c2
cmp dword [rbp - 0x70], r15d
je 0x14015b7b9
lea ecx, [rax + 7]
mov rax, qword [0x140378118]
call qword [case.0x14006c37f.0]
jmp 0x14015b7c7
mov dword [rbp - 0x30], 0xffffff
jmp 0x14015b7cd
mov eax, 0xffa8a8a8
mov dword [rbp - 0x30], eax
mov dword [rbp - 0x38], eax
mov eax, dword [rbp + 0xb2c]
mov r9d, r15d
movsxd r10, dword [rbp - 0x68]
mov r8d, eax
mov edx, dword [rbp + 0xba8]
neg r8d
mov r11d, dword [rbp + 0xbac]
test eax, eax
mov edi, r15d
cmovns r9d, eax
cmovns r8d, r15d
mov eax, dword [rbp + 0xb30]
mov ecx, eax
neg ecx
test eax, eax
cmovns edi, eax
cmovns ecx, r15d
sub edx, r8d
mov eax, r10d
sub eax, r9d
cmp edx, eax
cmovge edx, eax
mov eax, dword [rbp - 0x78]
sub eax, edi
mov dword [rbp - 0x18], edx
sub r11d, ecx
cmp r11d, eax
cmovge r11d, eax
test edx, edx
jle 0x14015b9e6
test r11d, r11d
jle 0x14015b9e6
imul ecx, dword [rbp + 0xba8]
mov esi, dword [rbp - 0x18]
movsxd rax, r8d
mov r8d, 1
imul edi, r10d
mov dword [rbp - 0x70], r15d
movsxd rcx, ecx
add rcx, rax
mov rax, qword [rsp + 0x78]
lea rdx, [rax + rcx*4]
movsxd rax, r9d
movsxd rcx, edi
add rcx, rax
mov qword [rsp + 0x70], rdx
mov rax, qword [rbp - 0x80]
lea rax, [rax + rcx*4]
movsxd rcx, dword [rbp + 0xba8]
shl rcx, 2
mov qword [rsp + 0x78], rcx
mov rcx, r10
shl rcx, 2
mov qword [rbp - 0x48], rcx
mov qword [rbp - 0x80], rax
mov r12d, dword [rbp - 0x38]
lea r9, [rdx + 2]
mov r10, rax
mov dword [rbp - 0x18], r15d
sub r10, rdx
mov edi, r15d
mov r14d, 4
movzx eax, byte [r9 - 2]
movzx ecx, byte [r9 - 1]
lea edx, [rax + rcx*2]
movzx eax, byte [r9]
add edx, eax
shr edx, 2
not dl
test dl, dl
je 0x14015b990
movzx edi, byte [r10 + r9]
mov eax, 0x80808081
movzx r8d, dl
movzx ecx, r12b
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rbp - 0x2f]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9], dl
movzx edi, byte [r10 + r9 - 1]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rbp - 0x2e]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9 - 1], dl
movzx edi, byte [r10 + r9 - 2]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
mov ecx, 0xff
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9 - 2], dl
movzx edi, byte [r10 + r9 + 1]
sub ecx, edi
imul ecx, r8d
mov r8d, 1
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
add dl, dil
mov edi, dword [rbp - 0x18]
mov byte [r10 + r9 + 1], dl
add edi, r8d
add r9, r14
mov dword [rbp - 0x18], edi
cmp edi, esi
jl 0x14015b8b8
mov rdx, qword [rsp + 0x70]
mov rax, qword [rbp - 0x80]
mov ecx, dword [rbp - 0x70]
add rdx, qword [rsp + 0x78]
add ecx, r8d
add rax, qword [rbp - 0x48]
mov qword [rsp + 0x70], rdx
mov qword [rbp - 0x80], rax
mov dword [rbp - 0x70], ecx
cmp ecx, r11d
jl 0x14015b89d
mov r12d, dword [rbp - 0x20]
movabs rsi, 0xc81ecb17b1b54a58
movabs r14, 0x7f1137fab69605e
mov rcx, qword [rbp - 0x50]
mov rax, qword [0x140378038]
call qword [case.0x14006c37f.0]
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x14015ba14
mov rdx, rax
mov rcx, r13
mov rax, qword [0x140378078]
call qword [case.0x14006c37f.0]
mov rax, qword [0x140378030]
mov rcx, r13
call qword [case.0x14006c37f.0]
test ebx, ebx
js 0x14015c7f4
mov rdi, qword [rbp]
jmp 0x14015c7af
cmp dword [rbp + 0xae4], r15d
jne 0x14015ba44
mov al, reloc.SHCORE.dll_Ordinal_192
cmp edi, ebx
jne 0x14015ba46
mov al, 0xff
and word [rbp - 0x70], 0
mov rcx, r13
mov byte [rbp - 0x6e], al
mov rax, qword [0x140378010]
mov byte [rbp - 0x6d], bl
mov ebx, r15d
mov dword [rbp + 0x590], ebx
mov dword [rbp + 0x594], r15d
mov dword [rbp + 0x5a0], r15d
call qword [case.0x14006c37f.0]
mov qword [rbp - 0x28], rax
test rax, rax
je 0x14015bb5a
mov eax, 1
cmp edi, eax
jne 0x14015bb6b
mov ecx, dword [rbp + 0xb24]
mov edi, r15d
mov r9d, dword [rbp + 0xb34]
mov eax, ecx
mov r8d, dword [rbp + 0xb1c]
mov r13d, r9d
mov r10d, dword [rbp + 0xb2c]
sub eax, r8d
mov edx, dword [rbp + 0xb38]
sub r13d, r10d
mov r11d, dword [rbp + 0xb20]
cmp r13d, eax
cmovle r13d, eax
sub edx, r11d
mov eax, r15d
mov dword [rbp - 0x68], r13d
mov dword [rbp - 0x78], edx
cmp dword [rbp + 0xae0], r15d
je 0x14015bb04
mov ebx, r13d
mov eax, r13d
sub ebx, ecx
sub eax, r9d
add ebx, r8d
add eax, r10d
mov dword [rbp + 0x590], ebx
mov dword [rbp + 0x5a0], eax
mov edi, ebx
sub eax, r10d
sub edi, r8d
add eax, r9d
add edi, ecx
mov ecx, dword [rbp + 0xb28]
mov dword [rbp - 0x40], eax
sub ecx, r11d
mov dword [rbp + 0x5a8], eax
mov eax, dword [rbp + 0xb30]
sub eax, r11d
mov dword [rbp + 0x598], edi
mov dword [rbp - 0x48], eax
mov dword [rbp + 0x5a4], eax
sub eax, dword [rbp + 0xb30]
add eax, dword [rbp + 0xb38]
mov dword [rsp + 0x78], eax
mov dword [rbp + 0x5ac], eax
mov dword [rbp - 0x60], ecx
mov dword [rbp + 0x59c], ecx
jmp 0x14015bbce
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
jmp 0x14015c7f4
movups xmm0, xmmword [rbp + 0xb1c]
mov r13d, dword [rbp + 0xb88]
movups xmm1, xmmword [rbp + 0xb2c]
mov edx, dword [rbp + 0xb8c]
movdqu xmmword [rbp + 0x590], xmm0
mov eax, dword [rbp + 0x59c]
mov edi, dword [rbp + 0x598]
mov ebx, dword [rbp + 0x590]
mov dword [rbp - 0x60], eax
movdqu xmmword [rbp + 0x5a0], xmm1
mov eax, dword [rbp + 0x5ac]
mov dword [rsp + 0x78], eax
mov eax, dword [rbp + 0x5a8]
mov dword [rbp - 0x40], eax
mov eax, dword [rbp + 0x5a4]
mov dword [rbp - 0x48], eax
mov dword [rbp - 0x68], r13d
mov dword [rbp - 0x78], edx
mov rcx, qword [rbp - 0x28]
lea r9, [rbp + 0x420]
mov eax, edx
mov dword [rsp + 0x28], r15d
neg eax
mov qword [rbp + 0x420], r15
mov dword [rbp + 0xc48], eax
lea rdx, [rbp + 0xc40]
mov rax, qword [0x140378018]
xorps xmm0, xmm0
xor r8d, r8d
mov qword [rbp + 0xc60], r15
movdqu xmmword [rbp + 0xc50], xmm0
mov dword [rbp + 0xc68], r15d
mov dword [rbp + 0xc40], PathIsExe
mov dword [rbp + 0xc44], r13d
mov dword [rbp + 0xc4c], 0x200001
mov qword [rsp + 0x20], r15
call qword [case.0x14006c37f.0]
mov qword [rbp - 8], rax
test rax, rax
jne 0x14015bc59
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
jmp 0x14015c7db
mov rcx, qword [rbp - 0x28]
mov rdx, rax
mov rax, qword [0x140378078]
call qword [case.0x14006c37f.0]
mov eax, 1
cmp dword [rbp - 0x18], eax
jne 0x14015bcb3
mov r8, qword [rbp + 0x208]
test r8, r8
je 0x14015bcb3
mov eax, dword [rbp - 0x78]
lea rdx, [rbp + 0xbb0]
and qword [rbp + 0xbb0], 0
mov rcx, qword [rbp - 0x28]
mov dword [rbp + 0xbbc], eax
mov rax, qword [0x1403780e8]
mov dword [rbp + 0xbb8], r13d
call qword [case.0x14006c37f.0]
mov eax, dword [rbp + 0xae4]
lea rcx, [rbp + 0x990]
mov dword [rbp - 0x50], eax
xor edx, edx
mov rax, qword [rbp + 0xb00]
mov qword [rbp + 8], rax
mov rax, qword [rbp + 0xae8]
lea r8d, [rdx + 0x68]
mov qword [rbp + 0x30], rax
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor edx, edx
lea rcx, [rbp + 0x6f0]
lea r8d, [rdx + 0x68]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor eax, eax
mov qword [rbp + 0x38], r15
xorps xmm0, xmm0
mov dword [rbp - 0x80], r15d
mov dword [rsp + 0x70], r15d
movups xmmword [rbp + 0xcd0], xmm0
mov qword [rbp + 0xcf0], rax
movups xmmword [rbp + 0xce0], xmm0
mov dword [rbp + 0xcf8], eax
movups xmmword [rbp + 0xb70], xmm0
cmp qword [rbp + 0x30], r15
je 0x14015c7c2
mov rcx, qword [rbp - 0x28]
lea edx, [rax + 7]
mov rax, qword [0x140378050]
call qword [case.0x14006c37f.0]
test rax, rax
je 0x14015be67
mov rcx, rax
lea r8, [rbp + 0x990]
mov rax, qword [0x140378068]
mov edx, 0x68
call qword [case.0x14006c37f.0]
test eax, eax
je 0x14015bd8f
mov rax, qword [rbp + 0x9a8]
mov qword [rbp + 0x38], rax
mov eax, dword [rbp + 0x994]
mov dword [rbp - 0x80], eax
mov eax, dword [rbp + 0x998]
mov dword [rsp + 0x70], eax
mov rcx, qword [rbp - 0x28]
mov rax, qword [0x140378010]
call qword [case.0x14006c37f.0]
mov qword [rbp + 0x40], rax
mov rcx, rax
test rax, rax
je 0x14015be67
mov eax, dword [rbp + 0x594]
lea r9, [rbp + 0x448]
sub eax, dword [rbp - 0x60]
lea rdx, [rbp + 0xcd0]
mov dword [rbp + 0xcd8], eax
xorps xmm0, xmm0
mov rax, qword [0x140378018]
sub edi, ebx
mov dword [rsp + 0x28], r15d
xor r8d, r8d
mov qword [rbp + 0x448], r15
mov dword [rsp + 0x68], r15d
movdqu xmmword [rbp + 0xce0], xmm0
mov qword [rbp + 0xcf0], r15
mov dword [rbp + 0xcf8], r15d
mov dword [rbp + 0xcd0], PathIsExe
mov dword [rbp + 0xcd4], edi
mov dword [rbp + 0xcdc], 0x200001
mov qword [rsp + 0x20], r15
call qword [case.0x14006c37f.0]
mov qword [rbp + 0x10], rax
test rax, rax
jne 0x14015be78
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov dword [rsp + 0x68], eax
test eax, eax
jle 0x14015be53
movzx eax, ax
or eax, 0x80070000
mov dword [rsp + 0x68], eax
test eax, eax
js 0x14015c1ca
mov eax, 0x80004005
mov dword [rsp + 0x68], eax
jmp 0x14015c1ca
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
jmp 0x14015c7c2
mov rcx, rax
lea r8, [rbp + 0x6f0]
mov rax, qword [0x140378068]
mov edx, 0x68
call qword [case.0x14006c37f.0]
mov rdx, qword [rbp + 0x10]
mov rcx, r15
test eax, eax
mov dword [rbp + 0xb78], edi
mov eax, dword [rbp - 0x60]
cmovne rcx, qword [rbp + 0x708]
sub eax, dword [rbp + 0x594]
mov rdi, qword [rbp + 0x40]
mov dword [rbp + 0xb7c], eax
mov rax, qword [0x140378078]
mov qword [rbp - 0x10], rcx
mov rcx, rdi
call qword [case.0x14006c37f.0]
mov rax, qword [method.4.virtual_56]
mov edx, 1
mov rcx, rdi
call qword [case.0x14006c37f.0]
mov rdx, qword [rbp + 8]
mov rcx, rdi
mov rax, qword [0x140378078]
call qword [case.0x14006c37f.0]
mov rdi, qword [0x1403780e8]
xor ecx, ecx
mov qword [rbp + 8], rax
mov rax, qword [0x140378070]
call qword [case.0x14006c37f.0]
mov rcx, qword [rbp + 0x40]
lea rdx, [rbp + 0xb70]
mov r8, rax
mov rax, rdi
call qword [case.0x14006c37f.0]
mov eax, dword [rbp - 0x30]
lea r9, [rbp + 0xb70]
mov rdi, qword [rbp + 0x40]
or r8d, 0xffffffff
mov rdx, qword [rbp + 0x30]
mov rcx, rdi
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], eax
mov rax, qword [method.4.virtual_56]
call qword [case.0x14006c37f.0]
mov eax, 1
cmp dword [rbp - 0x18], eax
jne 0x14015bf89
cmp dword [rbp - 0x50], r15d
je 0x14015bf80
lea ecx, [rax + 7]
mov rax, qword [0x140378118]
call qword [case.0x14006c37f.0]
mov dword [rbp - 0x50], eax
jmp 0x14015bf90
mov dword [rbp - 0x50], 0xffffff
jmp 0x14015bf90
mov dword [rbp - 0x50], 0xffa8a8a8
mov eax, dword [rbp + 0x594]
mov r8d, ebx
movsxd r10, dword [rbp - 0x80]
neg r8d
mov r11d, dword [rbp + 0xb7c]
test ebx, ebx
mov ecx, eax
mov r9d, r15d
cmovns r9d, ebx
cmovns r8d, r15d
mov ebx, dword [rbp + 0xb78]
neg ecx
test eax, eax
mov edx, r15d
cmovns edx, eax
cmovns ecx, r15d
sub ebx, r8d
mov eax, r10d
sub eax, r9d
cmp ebx, eax
cmovge ebx, eax
mov eax, dword [rsp + 0x70]
sub eax, edx
sub r11d, ecx
cmp r11d, eax
cmovge r11d, eax
test ebx, ebx
jle 0x14015c19d
test r11d, r11d
jle 0x14015c19d
imul ecx, dword [rbp + 0xb78]
mov esi, dword [rbp - 0x50]
movsxd rax, r8d
imul edx, r10d
mov dword [rsp + 0x70], r15d
movsxd rcx, ecx
add rcx, rax
mov rax, qword [rbp - 0x10]
lea rdi, [rax + rcx*4]
movsxd rax, r9d
movsxd rcx, edx
add rcx, rax
mov qword [rbp - 0x10], rdi
mov rax, qword [rbp + 0x38]
lea rax, [rax + rcx*4]
movsxd rcx, dword [rbp + 0xb78]
shl rcx, 2
mov qword [rbp + 0x30], rcx
mov rcx, r10
shl rcx, 2
mov qword [rbp - 0x60], rcx
mov qword [rbp + 0x38], rax
mov r12d, 4
mov dword [rbp - 0x80], r15d
mov r10, rax
lea r9, [rdi + 2]
mov r8d, r15d
sub r10, rdi
lea r14d, [r12 - 3]
movzx eax, byte [r9 - 2]
movzx ecx, byte [r9 - 1]
lea edx, [rax + rcx*2]
movzx eax, byte [r9]
add edx, eax
shr edx, 2
not dl
test dl, dl
je 0x14015c13f
movzx edi, byte [r10 + r9]
mov eax, 0x80808081
movzx r8d, dl
movzx ecx, sil
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rbp - 0x4f]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9], dl
movzx edi, byte [r10 + r9 - 1]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rbp - 0x4e]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9 - 1], dl
movzx edi, byte [r10 + r9 - 2]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
mov ecx, 0xff
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9 - 2], dl
movzx edi, byte [r10 + r9 + 1]
sub ecx, edi
imul ecx, r8d
mov r8d, dword [rbp - 0x80]
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
add dl, dil
mov byte [r10 + r9 + 1], dl
add r8d, r14d
add r9, r12
mov dword [rbp - 0x80], r8d
cmp r8d, ebx
jl 0x14015c06c
mov rdi, qword [rbp - 0x10]
mov rax, qword [rbp + 0x38]
mov ecx, dword [rsp + 0x70]
add rdi, qword [rbp + 0x30]
inc ecx
add rax, qword [rbp - 0x60]
mov qword [rbp - 0x10], rdi
mov qword [rbp + 0x38], rax
mov dword [rsp + 0x70], ecx
cmp ecx, r11d
jl 0x14015c050
mov r12d, dword [rbp - 0x20]
movabs rsi, 0xc81ecb17b1b54a58
mov r13d, dword [rbp - 0x68]
movabs r14, 0x7f1137fab69605e
mov rdi, qword [rbp + 0x40]
mov rcx, qword [rbp + 0x10]
mov rax, qword [0x140378038]
call qword [case.0x14006c37f.0]
mov rax, qword [rbp + 8]
test rax, rax
je 0x14015c1ca
mov rdx, rax
mov rcx, rdi
mov rax, qword [0x140378078]
call qword [case.0x14006c37f.0]
mov rcx, qword [rbp + 0x40]
mov rax, qword [0x140378030]
call qword [case.0x14006c37f.0]
cmp dword [rsp + 0x68], r15d
jl 0x14015c7c2
mov eax, dword [rbp + 0xae4]
lea rcx, [rbp + 0xa00]
mov rdi, qword [rbp + 0xaf0]
mov ebx, 0x68
mov dword [rsp + 0x68], eax
mov r8d, ebx
mov rax, qword [rbp + 0xb08]
xor edx, edx
mov qword [rbp - 0x10], rax
mov qword [rbp + 0x10], rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, ebx
lea rcx, [rbp + 0xa70]
xor edx, edx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor eax, eax
mov qword [rbp + 0x40], r15
mov dword [rsp + 0x70], r15d
xorps xmm0, xmm0
mov dword [rbp - 0x80], r15d
mov qword [rbp + 0xd20], rax
mov dword [rbp + 0xd28], eax
movups xmmword [rbp + 0xd00], xmm0
movups xmmword [rbp + 0xd10], xmm0
movups xmmword [rbp + 0xbc0], xmm0
test rdi, rdi
je 0x14015c7c2
mov rdi, qword [rbp - 0x28]
lea edx, [rbx - 0x61]
mov rax, qword [0x140378050]
mov rcx, rdi
call qword [case.0x14006c37f.0]
test rax, rax
je 0x14015be67
mov rcx, rax
lea r8, [rbp + 0xa00]
mov rax, qword [0x140378068]
mov edx, ebx
call qword [case.0x14006c37f.0]
test eax, eax
je 0x14015c2c5
mov rax, qword [rbp + 0xa18]
mov qword [rbp + 0x40], rax
mov eax, dword [rbp + 0xa04]
mov dword [rsp + 0x70], eax
mov eax, dword [rbp + 0xa08]
mov dword [rbp - 0x80], eax
mov rax, qword [0x140378010]
mov rcx, rdi
call qword [case.0x14006c37f.0]
mov qword [rbp + 0x38], rax
mov rcx, rax
test rax, rax
je 0x14015be67
mov eax, dword [rbp - 0x48]
lea r9, [rbp + 0x460]
sub eax, dword [rsp + 0x78]
lea rdx, [rbp + 0xd00]
mov edi, dword [rbp - 0x40]
xorps xmm0, xmm0
sub edi, dword [rbp + 0x5a0]
xor r8d, r8d
mov dword [rbp + 0xd08], eax
mov ebx, r15d
mov rax, qword [0x140378018]
mov dword [rsp + 0x28], r15d
mov qword [rbp + 0x460], r15
movdqu xmmword [rbp + 0xd10], xmm0
mov qword [rbp + 0xd20], r15
mov dword [rbp + 0xd28], r15d
mov dword [rbp + 0xd00], PathIsExe
mov dword [rbp + 0xd04], edi
mov dword [rbp + 0xd0c], 0x200001
mov qword [rsp + 0x20], r15
call qword [case.0x14006c37f.0]
mov qword [rbp + 0x30], rax
test rax, rax
jne 0x14015c396
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jle 0x14015c384
movzx ebx, ax
or ebx, 0x80070000
test ebx, ebx
js 0x14015c6fd
mov ebx, 0x80004005
jmp 0x14015c6fd
mov rcx, rax
lea r8, [rbp + 0xa70]
mov rax, qword [0x140378068]
mov edx, 0x68
call qword [case.0x14006c37f.0]
mov rdx, qword [rbp + 0x30]
mov rcx, r15
test eax, eax
mov dword [rbp + 0xbc8], edi
mov eax, dword [rsp + 0x78]
cmovne rcx, qword [rbp + 0xa88]
sub eax, dword [rbp - 0x48]
mov rdi, qword [rbp + 0x38]
mov dword [rbp + 0xbcc], eax
mov rax, qword [0x140378078]
mov qword [rbp + 8], rcx
mov rcx, rdi
call qword [case.0x14006c37f.0]
mov rax, qword [method.4.virtual_56]
mov edx, 1
mov rcx, rdi
call qword [case.0x14006c37f.0]
mov rdx, qword [rbp - 0x10]
mov rcx, rdi
mov rax, qword [0x140378078]
call qword [case.0x14006c37f.0]
mov rdi, qword [0x1403780e8]
xor ecx, ecx
mov qword [rbp - 0x10], rax
mov rax, qword [0x140378070]
call qword [case.0x14006c37f.0]
mov rcx, qword [rbp + 0x38]
lea rdx, [rbp + 0xbc0]
mov r8, rax
mov rax, rdi
call qword [case.0x14006c37f.0]
mov eax, dword [rbp - 0x30]
lea r9, [rbp + 0xbc0]
mov rdi, qword [rbp + 0x38]
or r8d, 0xffffffff
mov rdx, qword [rbp + 0x10]
mov rcx, rdi
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], eax
mov rax, qword [method.4.virtual_56]
call qword [case.0x14006c37f.0]
mov eax, 1
cmp dword [rbp - 0x18], eax
jne 0x14015c4a4
cmp dword [rsp + 0x68], r15d
je 0x14015c49a
lea ecx, [rax + 7]
mov rax, qword [0x140378118]
call qword [case.0x14006c37f.0]
jmp 0x14015c4a9
mov dword [rsp + 0x68], 0xffffff
jmp 0x14015c4b0
mov eax, 0xffa8a8a8
mov dword [rsp + 0x68], eax
mov dword [rbp - 0x38], eax
mov eax, dword [rbp + 0x5a0]
mov r10d, r15d
mov edx, dword [rbp + 0xbc8]
mov r9d, eax
mov r11d, dword [rbp + 0xbcc]
neg r9d
test eax, eax
mov r8d, r15d
cmovns r10d, eax
cmovns r9d, r15d
mov eax, dword [rbp - 0x48]
mov ecx, eax
neg ecx
test eax, eax
cmovns r8d, eax
cmovns ecx, r15d
mov eax, dword [rsp + 0x70]
sub edx, r9d
sub eax, r10d
cmp edx, eax
cmovge edx, eax
mov eax, dword [rbp - 0x80]
sub eax, r8d
mov dword [rbp - 0x50], edx
sub r11d, ecx
cmp r11d, eax
cmovge r11d, eax
test edx, edx
jle 0x14015c6d0
test r11d, r11d
jle 0x14015c6d0
imul ecx, dword [rbp + 0xbc8]
movsxd rdi, dword [rsp + 0x70]
mov r14d, dword [rbp - 0x50]
imul r8d, edi
movsxd rax, r9d
movsxd rcx, ecx
add rcx, rax
mov dword [rsp + 0x70], r15d
mov rax, qword [rbp + 8]
lea rdx, [rax + rcx*4]
movsxd rcx, r8d
movsxd rax, r10d
mov r8d, 1
add rcx, rax
mov qword [rbp + 0x10], rdx
mov rax, qword [rbp + 0x40]
lea rax, [rax + rcx*4]
movsxd rcx, dword [rbp + 0xbc8]
shl rcx, 2
mov qword [rbp + 8], rcx
mov rcx, rdi
shl rcx, 2
mov qword [rsp + 0x78], rcx
mov qword [rbp + 0x40], rax
mov r12d, dword [rbp - 0x38]
lea r9, [rdx + 2]
mov r10, rax
mov dword [rbp - 0x80], r15d
sub r10, rdx
mov edi, r15d
mov esi, 4
movzx eax, byte [r9 - 2]
movzx ecx, byte [r9 - 1]
lea edx, [rax + rcx*2]
movzx eax, byte [r9]
add edx, eax
shr edx, 2
not dl
test dl, dl
je 0x14015c675
movzx edi, byte [r10 + r9]
mov eax, 0x80808081
movzx r8d, dl
movzx ecx, r12b
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rsp + 0x69]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9], dl
movzx edi, byte [r10 + r9 - 1]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rsp + 0x6a]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9 - 1], dl
movzx edi, byte [r10 + r9 - 2]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
mov ecx, 0xff
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9 - 2], dl
movzx edi, byte [r10 + r9 + 1]
sub ecx, edi
imul ecx, r8d
mov r8d, 1
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
add dl, dil
mov edi, dword [rbp - 0x80]
mov byte [r10 + r9 + 1], dl
add edi, r8d
add r9, rsi
mov dword [rbp - 0x80], edi
cmp edi, r14d
jl 0x14015c59b
mov rdx, qword [rbp + 0x10]
mov rax, qword [rbp + 0x40]
mov ecx, dword [rsp + 0x70]
add rdx, qword [rbp + 8]
add ecx, r8d
add rax, qword [rsp + 0x78]
mov qword [rbp + 0x10], rdx
mov qword [rbp + 0x40], rax
mov dword [rsp + 0x70], ecx
cmp ecx, r11d
jl 0x14015c581
mov r12d, dword [rbp - 0x20]
movabs rsi, 0xc81ecb17b1b54a58
mov rdi, qword [rbp + 0x38]
movabs r14, 0x7f1137fab69605e
mov rcx, qword [rbp + 0x30]
mov rax, qword [0x140378038]
call qword [case.0x14006c37f.0]
mov rax, qword [rbp - 0x10]
test rax, rax
je 0x14015c6fd
mov rdx, rax
mov rcx, rdi
mov rax, qword [0x140378078]
call qword [case.0x14006c37f.0]
mov rcx, qword [rbp + 0x38]
mov rax, qword [0x140378030]
call qword [case.0x14006c37f.0]
test ebx, ebx
js 0x14015c7c2
mov rdi, qword [rbp]
mov eax, 1
mov r9d, r13d
cmp dword [rbp - 0x18], eax
jne 0x14015c768
mov rax, qword [rbp - 0x28]
mov rcx, rdi
mov r8d, dword [rbp + 0xb20]
mov edx, dword [rbp + 0xb1c]
mov dword [rsp + 0x40], 0xcc0020
mov dword [rsp + 0x38], r15d
mov dword [rsp + 0x30], r15d
mov qword [rsp + 0x28], rax
mov eax, dword [rbp - 0x78]
mov dword [rsp + 0x20], eax
mov rax, qword [section..data]
call qword [case.0x14006c37f.0]
jmp 0x14015c7af
mov eax, dword [rbp - 0x78]
mov ecx, dword [rbp - 0x70]
mov r8d, dword [rbp + 0xb84]
mov edx, dword [rbp + 0xb80]
mov dword [rsp + 0x50], ecx
mov rcx, qword [rbp - 0x28]
mov dword [rsp + 0x48], eax
mov dword [rsp + 0x40], r13d
mov dword [rsp + 0x38], r15d
mov dword [rsp + 0x30], r15d
mov qword [rsp + 0x28], rcx
mov rcx, rdi
mov dword [rsp + 0x20], eax
mov rax, qword [method.4.virtual_56]
call qword [case.0x14006c37f.0]
mov edx, dword [rbp - 0x58]
mov rcx, rdi
mov rax, qword [method.4.virtual_56]
call qword [case.0x14006c37f.0]
mov rax, qword [rbp - 8]
test rax, rax
je 0x14015c7db
mov rcx, rax
mov rax, qword [0x140378038]
call qword [case.0x14006c37f.0]
mov rax, qword [rbp - 0x28]
test rax, rax
je 0x14015c7f4
mov rcx, rax
mov rax, qword [0x140378030]
call qword [case.0x14006c37f.0]
mov rax, qword [rbp + 0x208]
test rax, rax
je 0x14015c810
mov rcx, rax
mov rax, qword [0x140378038]
call qword [case.0x14006c37f.0]
mov rax, qword [rbp + 0xae8]
or rbx, 0xffffffffffffffff
test rax, rax
je 0x14015c853
mov rcx, rbx
inc rcx
cmp word [rax + rcx*2], r15w
jne 0x14015c823
mov rdi, qword [rbp + 0xae8]
lea rcx, [rcx*2 + 2]
xor eax, eax
rep stosb byte [rdi], al
mov rcx, qword [rbp + 0xae8]
call fcn.14009515c
mov qword [rbp + 0xae8], r15
mov rax, qword [rbp + 0xaf0]
test rax, rax
je 0x14015c892
mov rcx, rbx
inc rcx
cmp word [rax + rcx*2], r15w
jne 0x14015c862
mov rdi, qword [rbp + 0xaf0]
lea rcx, [rcx*2 + 2]
xor eax, eax
rep stosb byte [rdi], al
mov rcx, qword [rbp + 0xaf0]
call fcn.14009515c
mov qword [rbp + 0xaf0], r15
mov rdi, qword [rbp + 0xaf8]
test rdi, rdi
je 0x14015c8ca
mov rcx, rbx
inc rcx
cmp word [rdi + rcx*2], r15w
jne 0x14015c8a1
lea rcx, [rcx*2 + 2]
xor eax, eax
rep stosb byte [rdi], al
mov rcx, qword [rbp + 0xaf8]
call fcn.14009515c
mov qword [rbp + 0xaf8], r15
mov rcx, qword [rbp + 0xb00]
test rcx, rcx
je 0x14015c8ea
mov rax, qword [0x140378038]
call qword [case.0x14006c37f.0]
mov qword [rbp + 0xb00], r15
mov rcx, qword [rbp + 0xb08]
test rcx, rcx
je 0x14015c90a
mov rax, qword [0x140378038]
call qword [case.0x14006c37f.0]
mov qword [rbp + 0xb08], r15
mov rcx, qword [rbp + 0xb10]
test rcx, rcx
je 0x14015c92a
mov rax, qword [0x140378038]
call qword [case.0x14006c37f.0]
mov qword [rbp + 0xb10], r15
mov r13d, 1
xor eax, eax
lock cmpxchg dword [0x14037d0a0], r13d
jne 0x14015c930
mov eax, dword [0x14037bd98]
test eax, eax
jle 0x14015c9a6
sub eax, r13d
mov dword [0x14037bd98], eax
jne 0x14015c9a6
lea rdi, [0x14037c2e0]
mov ebx, 4
cmp qword [rdi], r15
je 0x14015c972
mov rcx, qword [rdi]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_FreeLibrary]
nop dword [rax + rax]
add rdi, 0x18
sub rbx, r13
jne 0x14015c95e
xor edx, edx
lea r8d, [rbx + 0x60]
lea rcx, [0x14037c2e0]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x1402eeca0]
lea rcx, section..data
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, r15d
xchg dword [0x14037d0a0], eax
mov eax, dword [0x14037b680]
mov dword [rsp + 0x68], eax
mov rax, qword [0x140378098]
call qword [case.0x14006c37f.0]
sub eax, dword [0x14037b670]
xorps xmm0, xmm0
mov qword [rbp - 0x10], rax
xor eax, eax
mov qword [rbp + 0xf98], rax
movups xmmword [rbp + 0xf68], xmm0
movups xmmword [rbp + 0xf78], xmm0
movups xmmword [rbp + 0xf88], xmm0
xor eax, eax
lock cmpxchg dword [0x14037d0a0], r13d
jne 0x14015c9f1
mov eax, dword [0x14037bd98]
test eax, eax
jne 0x14015cfa9
mov ecx, 0x338
mov dword [rsp + 0x70], r15d
mov dword [rbp - 0x80], r15d
mov dword [rbp - 0x50], r15d
mov qword [rbp + 0x468], r15
mov qword [rbp + 0x470], r15
call fcn.140092328
mov qword [rbp + 0x10], rax
test rax, rax
je 0x14015cf0e
mov ecx, 0x67
mov byte [rsp + 0x60], r15b
mov r14d, r15d
lea rsi, [rax + 7]
mov ebx, r15d
lea r13, [0x14030be32]
mov r11d, r15d
or r12d, 0xffffffff
lea r15d, [rcx - 0x66]
movzx eax, byte [r13 - 1]
movzx r10d, byte [r13 - 2]
movzx r9d, byte [r13 + 2]
shl r10d, 8
or r10d, eax
shl r9d, 8
movzx eax, byte [r13]
lea r13, [r13 + 8]
shl r10d, 8
or r10d, eax
movzx eax, byte [r13 - 7]
shl r10d, 8
or r10d, eax
movzx eax, byte [r13 - 5]
or r9d, eax
xor r11d, r10d
movzx eax, byte [r13 - 4]
shl r9d, 8
or r9d, eax
movzx eax, byte [r13 - 3]
shl r9d, 8
or r9d, eax
xor ebx, r9d
xor ebx, r11d
xor ebx, 0xac987321
mov r8d, ebx
lea eax, [rbx + 0x54969fa2]
rol ebx, 0xa
rol eax, 5
imul edx, eax, 0x137f
add edx, ebx
xor r11d, edx
lea eax, [r11 + 0x7f1137f]
ror eax, 9
imul edx, eax, 0xab69
mov eax, r11d
rol eax, 2
sub edx, eax
xor r8d, edx
imul edx, r8d, 0x605e
mov eax, r8d
shr eax, 0xd
sub edx, eax
sub edx, 0x756c8a2
xor r11d, edx
mov eax, r11d
xor eax, 0xab69
rol eax, 6
imul edx, eax, 0x7f1
mov eax, r11d
rol eax, 2
sub edx, eax
mov eax, 0x7f1137f
xor r8d, edx
mov edx, r8d
xor edx, 0xab69605e
sub eax, edx
xor r11d, eax
mov eax, r11d
mov edi, r11d
xor eax, 0x137f
ror edi, 6
imul edx, eax, 0xab69
xor edi, edx
xor r8d, edi
mov edi, 0xab69605e
lea eax, [r8 + 0x7f1137f]
ror eax, 0xf
imul edx, eax, 0x605e
mov eax, r8d
rol eax, 2
add edx, eax
xor r11d, edx
lea eax, [r11 + 0x54969fa2]
ror eax, 0xe
imul edx, eax, 0x7f1
mov eax, r11d
rol eax, 8
sub edx, eax
xor r8d, edx
mov eax, r8d
xor eax, edi
ror eax, 0xc
imul edx, eax, 0x137f
mov eax, r8d
ror eax, 0xa
xor edx, eax
xor r11d, edx
mov eax, r11d
xor eax, 0x7f1
imul edx, eax, 0xab69
mov eax, r11d
shr eax, 0xa
xor edx, eax
xor r8d, edx
mov eax, r8d
not eax
ror eax, 5
add eax, 0x605e
imul eax, eax, 0x7f1
xor r11d, eax
lea ebx, [r11 - 0x7f1]
xor ebx, r8d
xor ebx, edi
mov eax, ebx
xor eax, 0x7f1
rol eax, 2
imul edx, eax, 0x137f
mov eax, ebx
shr eax, 2
add edx, eax
xor r11d, edx
lea eax, [r11 - 0x7f1137f]
ror eax, 6
imul edx, eax, 0xab69
mov eax, r11d
rol eax, 7
add edx, eax
xor ebx, edx
mov eax, ebx
mov edi, ebx
xor eax, 0x137f
ror edi, 9
imul edx, eax, 0x605e
add edi, edx
xor r11d, edi
mov eax, r11d
mov edi, r11d
xor eax, 0xab69
rol r11d, 7
rol eax, 5
imul edx, eax, 0x7f1
add edx, r11d
xor ebx, edx
mov r11d, ebx
xor r11d, edi
xor r11d, 0xac987321
mov eax, r11d
ror eax, 3
imul edx, eax, 0x137f
sub edx, 0xd0dd417
xor ebx, edx
lea eax, [rbx - 0x7f1137f]
ror eax, 1
imul edx, eax, 0x605e
mov eax, ebx
ror eax, 6
sub edx, eax
xor r11d, edx
lea eax, [r11 - 0x54969fa2]
rol eax, 3
imul edx, eax, 0x7f1
mov eax, r11d
rol eax, 0xe
add edx, eax
xor ebx, edx
lea eax, [rbx - 0x54969fa2]
rol eax, 0xf
imul edx, eax, 0x137f
mov eax, ebx
ror eax, 0xe
sub edx, eax
xor r11d, edx
mov eax, r11d
xor eax, 0x605e
imul edx, eax, 0xab69
mov eax, r11d
shr eax, 3
xor edx, eax
xor ebx, edx
mov eax, ebx
xor eax, 0x7f1137f
rol eax, 4
imul edx, eax, 0x605e
mov eax, ebx
xor ebx, r12d
rol eax, 2
mov r12d, r9d
xor edx, eax
xor edx, r14d
mov r14d, r10d
xor r11d, edx
mov byte [rsi - 4], r11b
mov byte [rsi], bl
lea rsi, [rsi + 8]
ror r11d, 8
mov byte [rsi - 0xd], r11b
ror ebx, 8
mov byte [rsi - 9], bl
ror r11d, 8
mov byte [rsi - 0xe], r11b
ror ebx, 8
mov byte [rsi - 0xa], bl
ror r11d, 8
ror ebx, 8
mov byte [rsi - 0xf], r11b
mov byte [rsi - 0xb], bl
ror ebx, 8
ror r11d, 8
sub rcx, r15
jne 0x14015ca64
mov cl, byte [rsp + 0x60]
xor r15d, r15d
mov r12d, dword [rbp - 0x20]
mov eax, r15d
mov r13d, dword [rbp - 0x80]
movabs rsi, 0xc81ecb17b1b54a58
mov rdx, qword [rbp + 0x10]
movabs r14, 0x7f1137fab69605e
lea edi, [r15 + 1]
mov r8d, 0x338
xor cl, byte [rax + rdx]
add rax, rdi
cmp rax, r8
jb 0x14015cd77
movzx eax, cl
cmp rax, qword [0x14030c168]
je 0x14015cd95
mov edi, 0xc004d501
jmp 0x14015cda9
mov qword [rbp + 0x468], rdx
mov edi, r13d
mov rdx, r15
mov qword [rbp + 0x470], r8
test rdx, rdx
je 0x14015cdb6
mov rcx, rdx
call fcn.14009515c
test edi, edi
js 0x14015cf0e
mov rax, qword [rbp + 0x470]
lea rbx, [0x14037c2e0]
mov rdi, qword [rbp + 0x468]
xor edx, edx
mov rcx, rbx
lea r8d, [rdx + 0x60]
mov byte [rax + rdi - 1], r15b
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
jmp 0x14015cf03
mov rdx, rdi
or rax, 0xffffffffffffffff
inc rax
cmp word [rdi + rax*2], r15w
jne 0x14015cdf2
lea rdi, [rdi + rax*2]
mov eax, dword [rbp - 0x50]
lea rcx, [rax + rax*2]
lea rbx, [rbx + rcx*8]
xor ecx, ecx
mov r8, rbx
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
je 0x14015cf0e
mov rax, qword [rbx]
mov ecx, 0x5a4d
mov r13d, r15d
cmp word [rax], cx
jne 0x14015ce6e
movsxd rcx, dword [rax + 0x3c]
cmp ecx, 0x10000000
jae 0x14015ce6e
add rcx, qword [rbx]
cmp rcx, qword [rbx]
jb 0x14015ce6e
cmp dword [rcx], 0x4550
jne 0x14015ce6e
movzx eax, word [rcx + 0x18]
mov edx, 0x10b
sub ax, dx
mov edx, 0xfeff
test dx, ax
je 0x14015ce76
mov r13d, 0xc000000d
jmp 0x14015ce87
mov r13d, 0xc000007b
jmp 0x14015ce87
mov rax, qword [rcx + 0x88]
mov qword [rbx + 0xc], rax
mov eax, dword [rcx + 0x50]
mov dword [rbx + 8], eax
mov eax, dword [rdi + 2]
mov ecx, r15d
add rdi, 6
mov dword [rbp - 0x80], eax
mov dword [rsp + 0x78], ecx
test eax, eax
jne 0x14015cea3
mov eax, 1
jmp 0x14015cef9
mov rdx, rdi
or rax, 0xffffffffffffffff
inc rax
cmp byte [rdi + rax], r15b
jne 0x14015ceaa
inc rdi
add rdi, rax
test r13d, r13d
js 0x14015cee5
mov rcx, qword [rbx]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x14015cf14
mov ecx, dword [rsp + 0x70]
lea rdx, section..data
mov qword [rdx + rcx*8], rax
mov ecx, dword [rsp + 0x78]
mov eax, 1
add dword [rsp + 0x70], eax
add ecx, eax
mov dword [rsp + 0x78], ecx
cmp ecx, dword [rbp - 0x80]
jb 0x14015cea3
add dword [rbp - 0x50], eax
lea rbx, [0x14037c2e0]
cmp byte [rdi], r15b
jne 0x14015cdeb
jmp 0x14015cf14
mov r13d, 0xc000007a
mov rdi, qword [rbp + 0x468]
test rdi, rdi
je 0x14015cf40
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
test r13d, r13d
mov r13d, 1
jns 0x14015cfa3
lea rdi, [0x14037c2e0]
lea ebx, [r13 + 3]
cmp qword [rdi], r15
je 0x14015cf6a
mov rcx, qword [rdi]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_FreeLibrary]
nop dword [rax + rax]
add rdi, 0x18
sub rbx, r13
jne 0x14015cf56
lea rdi, [0x14037c2e0]
xor edx, edx
mov rcx, rdi
lea r8d, [rbx + 0x60]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x1402eeca0]
lea rcx, section..data
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x14015cfb9
mov eax, dword [0x14037bd98]
add eax, r13d
lea rdi, [0x14037c2e0]
mov dword [0x14037bd98], eax
mov rcx, qword [rbp - 0x10]
lea r9, [rbp + 0xf60]
mov eax, r15d
mov ebx, 4
xchg dword [0x14037d0a0], eax
mov eax, dword [rsp + 0x68]
mov r8d, ebx
mov dword [rbp + 0xf98], eax
mov edx, 0x2021
mov rax, qword [0x1403780d0]
mov dword [rbp + 0xf68], ecx
xor ecx, ecx
mov dword [rbp + 0xf60], r13d
mov dword [rbp + 0xf78], 0x9966f291
mov dword [rbp + 0xf70], r13d
mov dword [rbp + 0xf88], r13d
mov dword [rbp + 0xf80], r13d
mov dword [rbp + 0xf90], r13d
call qword [case.0x14006c37f.0]
xor eax, eax
lock cmpxchg dword [0x14037d0a0], r13d
jne 0x14015d026
mov eax, dword [0x14037bd98]
test eax, eax
jle 0x14015d090
sub eax, r13d
mov dword [0x14037bd98], eax
jne 0x14015d090
cmp qword [rdi], r15
je 0x14015d05c
mov rcx, qword [rdi]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_FreeLibrary]
nop dword [rax + rax]
add rdi, 0x18
sub rbx, r13
jne 0x14015d048
xor edx, edx
lea r8d, [rbx + 0x60]
lea rcx, [0x14037c2e0]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x1402eeca0]
lea rcx, section..data
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, r15d
xchg dword [0x14037d0a0], eax
mov rdx, qword [rbp]
xor ecx, ecx
mov rax, qword [0x140378160]
call qword [case.0x14006c37f.0]
mov rax, qword [rbp + 0x28]
mov qword [rbp - 0x58], rax
lea rcx, [rbp + 0x3a0]
call fcn.1400ec760
cmp dword [rbp + 0x134], r15d
je 0x14015f948
xorps xmm0, xmm0
mov qword [rbp - 0x10], r15
lea rax, [0x14037a850]
mov qword [rbp + 0x668], r15
movups xmmword [rbp + 0x690], xmm0
mov qword [rbp + 0x478], rax
mov r13, r15
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov edi, 8
mov r8d, Ordinal_165
mov rcx, rax
mov edx, edi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rbx, rax
test rax, rax
je 0x14015f884
mov rcx, qword [rbp + 0x478]
mov qword [rbp - 0x10], rbx
movups xmm0, xmmword [rcx]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rax + 0x30], xmm1
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [rax + 0x40], xmm0
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [rax + 0x50], xmm1
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [rax + 0x60], xmm0
lea eax, [rdi + 0x78]
movups xmm1, xmmword [rcx + 0x70]
movups xmmword [rbx + rax - 0x10], xmm1
movups xmm0, xmmword [rcx + rax]
movups xmmword [rbx + rax], xmm0
movups xmm1, xmmword [rcx + rax + 0x10]
movups xmmword [rbx + rax + 0x10], xmm1
lea rax, [0x14037a798]
mov qword [rbp + 0x480], rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edx, edi
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov r13, rax
test rax, rax
je 0x14015f881
mov rcx, qword [rbp + 0x480]
mov qword [rbp + 0x10], rax
mov rdx, qword [rcx]
mov qword [rax], rdx
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x488], rax
lea r11d, [rdi - 4]
mov dword [rbp + 0x14c], r15d
mov edx, r11d
lea r8, [rbp + 0x150]
mov ecx, r11d
call fcn.140016278
test eax, eax
js 0x14015f884
mov edx, dword [rbp + 0x150]
lea r8, [rbp + 0x14c]
xor ecx, ecx
call fcn.140016278
mov r9d, 0x10000000
or eax, r9d
jl 0x14015f884
lea r8, [rbp + 0x154]
mov edx, SHSimpleIDListFromPath
mov ecx, r11d
call fcn.140016278
test eax, eax
js 0x14015f884
mov edx, dword [rbp + 0x154]
lea r8, [rbp + 0x14c]
mov ecx, dword [rbp + 0x14c]
call fcn.140016278
or eax, r9d
jl 0x14015f884
lea r8, [rbp + 0x158]
mov edx, edi
mov ecx, r11d
call fcn.140016278
test eax, eax
js 0x14015f884
mov edx, dword [rbp + 0x158]
lea r8, [rbp + 0x14c]
mov ecx, dword [rbp + 0x14c]
call fcn.140016278
or eax, r9d
jl 0x14015f884
lea r8, [rbp + 0x15c]
mov edx, edi
mov ecx, r11d
call fcn.140016278
test eax, eax
js 0x14015f884
mov edx, dword [rbp + 0x15c]
mov dword [rbp + 0x160], edx
mov ecx, dword [rbp + 0x14c]
lea r8, [rbp + 0x14c]
call fcn.140016278
or eax, r9d
jl 0x14015f884
mov eax, dword [rbp + 0x14c]
mov dword [rbp + 0x664], eax
mov edi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
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 rdi, rax
test rax, rax
je 0x14015f884
mov qword [rbp + 0x668], rax
mov dword [rbp + 0x660], r15d
mov r11d, 4
mov dword [rbp + 0x168], r11d
lea r8, [rbp + 0x6a8]
mov edx, r11d
mov rcx, rax
call fcn.140016254
test eax, eax
js 0x14015f884
mov ecx, dword [rbp + 0x664]
lea rax, [rdi + 8]
add rcx, rdi
cmp rax, rcx
ja 0x14015f884
mov rax, qword [rbp + 0x6a8]
mov dword [rdi], r11d
mov ecx, dword [rbp + 0x168]
mov dword [rax], ecx
mov r10d, dword [rbp + 0x660]
inc r10d
mov dword [rbp + 0x660], r10d
cmp qword [rbp + 0x668], r15
jne 0x14015d3ed
lea r8, [rbp + 0x170]
mov edx, SHSimpleIDListFromPath
mov ecx, r11d
call fcn.140016278
test eax, eax
js 0x14015f884
mov edx, dword [rbp + 0x170]
mov dword [rbp + 0x174], edx
mov ecx, dword [rbp + 0x664]
lea r8, [rbp + 0x664]
call fcn.140016278
test eax, eax
js 0x14015f884
mov edi, dword [rbp + 0x660]
lea ebx, [r11 - 3]
add edi, ebx
mov dword [rbp + 0x660], edi
jmp 0x14015d503
mov rdi, qword [rbp + 0x668]
mov r9d, r15d
mov qword [rbp + 0x490], rdi
test r10d, r10d
je 0x14015d450
mov edx, dword [rdi]
lea r8, [rbp + 0x178]
mov ecx, r11d
call fcn.140016278
test eax, eax
js 0x14015f884
mov eax, dword [rbp + 0x178]
mov dword [rbp + 0x174], eax
mov edx, eax
lea r8, [rbp + 0x490]
mov rcx, rdi
call fcn.140016254
test eax, eax
js 0x14015f884
mov rdi, qword [rbp + 0x490]
inc r9d
cmp r9d, r10d
jb 0x14015d403
lea r8, [rbp + 0x5b8]
mov rdx, r11
mov rcx, rdi
call fcn.140016254
test eax, eax
js 0x14015f884
mov edx, dword [rbp + 0x664]
lea rcx, [rdi + 0xa4]
add rdx, qword [rbp + 0x668]
cmp rcx, rdx
ja 0x14015f884
mov rcx, qword [rbp + 0x5b8]
mov edx, DAD_DragLeave
mov dword [rdi], Ordinal_165
movups xmm0, xmmword [rbx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rbx + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rbx + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rbx + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rbx + 0x60]
movups xmmword [rcx + 0x60], xmm0
movups xmm1, xmmword [rbx + 0x70]
movups xmmword [rcx + rdx - 0x10], xmm1
movups xmm0, xmmword [rbx + rdx]
movups xmmword [rcx + rdx], xmm0
movups xmm1, xmmword [rbx + rdx + 0x10]
lea ebx, [rdx - 0x7f]
movups xmmword [rcx + rdx + 0x10], xmm1
mov edi, dword [rbp + 0x660]
add edi, ebx
mov dword [rbp + 0x660], edi
test eax, eax
js 0x14015f884
cmp qword [rbp + 0x668], r15
jne 0x14015d561
lea r8, [rbp + 0x17c]
mov edx, 8
mov ecx, r11d
call fcn.140016278
test eax, eax
js 0x14015f884
mov edx, dword [rbp + 0x17c]
mov dword [rbp + 0x180], edx
mov ecx, dword [rbp + 0x664]
lea r8, [rbp + 0x664]
call fcn.140016278
test eax, eax
js 0x14015f884
mov edi, dword [rbp + 0x660]
add edi, ebx
mov dword [rbp + 0x660], edi
jmp 0x14015d623
mov r9, qword [rbp + 0x668]
mov r10d, r15d
mov qword [rbp + 0x498], r9
test edi, edi
je 0x14015d5c4
mov edx, dword [r9]
lea r8, [rbp + 0x184]
mov ecx, r11d
call fcn.140016278
test eax, eax
js 0x14015f884
mov eax, dword [rbp + 0x184]
mov dword [rbp + 0x180], eax
mov edx, eax
lea r8, [rbp + 0x498]
mov rcx, r9
call fcn.140016254
test eax, eax
js 0x14015f884
mov r9, qword [rbp + 0x498]
add r10d, ebx
cmp r10d, edi
jb 0x14015d576
lea r8, [rbp + 0x5f8]
mov rdx, r11
mov rcx, r9
call fcn.140016254
test eax, eax
js 0x14015f884
mov edx, dword [rbp + 0x664]
lea rcx, [r9 + 0xc]
add rdx, qword [rbp + 0x668]
cmp rcx, rdx
ja 0x14015f884
mov rcx, qword [rbp + 0x5f8]
mov dword [r9], 8
mov rdx, qword [r13]
mov qword [rcx], rdx
mov edi, dword [rbp + 0x660]
add edi, ebx
mov dword [rbp + 0x660], edi
test eax, eax
js 0x14015f884
mov rax, qword [rbp + 0x488]
mov qword [rbp + 0x4a0], rax
cmp qword [rbp + 0x668], r15
jne 0x14015d681
lea r8, [rbp + 0x188]
mov edx, 8
mov ecx, r11d
call fcn.140016278
test eax, eax
js 0x14015f884
mov edx, dword [rbp + 0x188]
mov dword [rbp + 0x18c], edx
mov ecx, dword [rbp + 0x664]
lea r8, [rbp + 0x664]
call fcn.140016278
test eax, eax
js 0x14015f884
jmp 0x14015d730
mov r9, qword [rbp + 0x668]
mov r10d, r15d
mov qword [rbp + 0x4a8], r9
test edi, edi
je 0x14015d6e4
mov edx, dword [r9]
lea r8, [rbp + 0x1d8]
mov ecx, r11d
call fcn.140016278
test eax, eax
js 0x14015f884
mov eax, dword [rbp + 0x1d8]
mov dword [rbp + 0x18c], eax
mov edx, eax
lea r8, [rbp + 0x4a8]
mov rcx, r9
call fcn.140016254
test eax, eax
js 0x14015f884
mov r9, qword [rbp + 0x4a8]
add r10d, ebx
cmp r10d, edi
jb 0x14015d696
lea r8, [rbp + 0x5c8]
mov rdx, r11
mov rcx, r9
call fcn.140016254
test eax, eax
js 0x14015f884
mov ecx, dword [rbp + 0x664]
lea rax, [r9 + 0xc]
add rcx, qword [rbp + 0x668]
cmp rax, rcx
ja 0x14015f884
mov rax, qword [rbp + 0x5c8]
mov dword [r9], 8
mov rcx, qword [rbp + 0x4a0]
mov qword [rax], rcx
add dword [rbp + 0x660], ebx
lea r8, [rbp + 0x194]
mov edx, r11d
mov ecx, r11d
call fcn.140016278
test eax, eax
js 0x14015f884
mov edi, dword [rbp + 0x194]
lea r8, [rbp + 0x19c]
mov ebx, 8
mov dword [rbp + 0x198], edi
mov edx, ebx
call fcn.140016278
test eax, eax
js 0x14015f884
mov edx, dword [rbp + 0x19c]
mov dword [rbp + 0x1a0], edx
lea r8, [rbp + 0x198]
mov ecx, edi
call fcn.140016278
test eax, eax
js 0x14015f884
mov eax, dword [rbp + 0x198]
mov r10, r15
mov dword [rsp + 0x68], eax
mov r9d, r15d
mov qword [rbp + 0x40], r15
mov r13, r15
mov dword [rsp + 0x70], r15d
mov qword [rbp + 0x4b0], r15
mov qword [rbp + 0x38], r15
mov dword [rbp - 0x80], r15d
mov qword [rbp + 0x30], r15
mov dword [rbp + 0x1a4], r15d
mov qword [rbp + 8], r15
mov qword [rbp + 0x208], r15
mov dword [rbp + 0x1a8], r15d
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x4b8], rax
mov dword [rbp + 0x1ac], ebx
mov edx, dword [rbp + 0x664]
lea r8, [rbp + 0x1ac]
mov ecx, ebx
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015d93d
mov eax, dword [rbp + 0x1ac]
add rax, 7
and eax, 0xfffffff8
cmp eax, dword [rbp + 0x1ac]
jae 0x14015d834
mov edi, 0xc0000095
jmp 0x14015d93d
mov dword [rbp + 0x1ac], eax
mov edi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edx, ebx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rbx, rax
test rax, rax
jne 0x14015d874
mov edi, 0xc0000017
mov r9d, r15d
mov r10, r15
jmp 0x14015d93d
mov eax, dword [rbp + 0x660]
lea r8, [rbp + 0x4c0]
mov r11d, 4
mov qword [rbp + 0x4c0], rbx
mov edx, r11d
mov dword [rbx], eax
mov rcx, rbx
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015d909
mov rcx, qword [rbp + 0x4c0]
lea r8, [rbp + 0x4c0]
mov eax, dword [rbp + 0x664]
mov edx, r11d
mov dword [rcx], eax
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015d909
mov ecx, dword [rbp + 0x1ac]
mov rax, qword [rbp + 0x4b8]
mov qword [rcx + rbx - 8], rax
mov r8d, dword [rbp + 0x664]
mov rdx, qword [rbp + 0x668]
mov rcx, qword [rbp + 0x4c0]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r9d, dword [rbp + 0x1ac]
mov r10, rbx
mov qword [rbp + 0x40], rbx
mov rbx, r15
mov dword [rsp + 0x70], r9d
jmp 0x14015d90f
mov r10, r15
mov r9d, r15d
test rbx, rbx
je 0x14015d93d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov r9d, dword [rsp + 0x70]
mov r10, qword [rbp + 0x40]
or edi, 0x10000000
jl 0x14015f52d
mov qword [rbp + 0x4c8], r15
mov rbx, r15
mov qword [rbp], rbx
test r10, r10
jne 0x14015d966
mov edi, 0xc000000d
jmp 0x14015e1b9
mov edi, r9d
mov qword [rbp - 0x28], rdi
test r9d, r9d
je 0x14015e0d1
lea rax, [rdi + 8]
mov rcx, rax
mov qword [rbp - 8], rax
call fcn.140092328
mov qword [rbp + 0x28], rax
test rax, rax
je 0x14015e0d1
mov r11, qword [rbp + 0x40]
mov dl, r15b
mov byte [rsp + 0x60], dl
mov rcx, r15
test rdi, rdi
je 0x14015d9bc
mov r8d, 1
xor dl, byte [rcx + r11]
add rcx, r8
cmp rcx, rdi
jb 0x14015d9ac
mov byte [rsp + 0x60], dl
mov rbx, rax
mov qword [rbp + 0xb60], rsi
mov rax, rdi
mov dword [rsp + 0x70], r15d
or r9d, 0xffffffff
mov dword [rbp - 0x50], r15d
mov r10d, r15d
and eax, 7
je 0x14015daff
mov dword [rbp - 0x50], r15d
mov ecx, r15d
mov dword [rsp + 0x70], ecx
mov r8d, r15d
test eax, eax
je 0x14015da5e
mov r9d, RestartDialog
mov r14d, ecx
lea esi, [r9 - 0x34]
lea r12d, [r9 - 0x37]
movzx r8d, byte [r11]
inc r11
cmp r10d, esi
jge 0x14015da21
lea ecx, [r9 - 0x20]
shl r8d, cl
mov ecx, dword [rsp + 0x70]
or r14d, r8d
jmp 0x14015da32
mov ecx, r9d
shl r8d, cl
mov ecx, dword [rsp + 0x70]
or ecx, r8d
mov dword [rsp + 0x70], ecx
add r10d, r12d
sub r9d, 8
cmp r10d, eax
jl 0x14015da05
mov r12d, dword [rbp - 0x20]
movabs rsi, 0xc81ecb17b1b54a58
mov dword [rbp - 0x50], r14d
movabs r14, 0x7f1137fab69605e
mov r8d, dword [rbp - 0x50]
mov r10d, r8d
mov r9d, ecx
xor r10d, 0xb17a307a
xor r9d, 0x42f6b18d
mov ecx, r10d
mov r8d, r9d
test eax, eax
je 0x14015dad4
mov r12d, 4
mov r14d, r15d
lea r13d, [r12 - 3]
lea rsi, [rbx + 1]
mov qword [rsp + 0x78], rsi
cmp r14d, r12d
jge 0x14015da9f
rol ecx, 8
mov esi, ecx
jmp 0x14015daa6
rol r8d, 8
mov esi, r8d
mov byte [rbx], sil
add r14d, r13d
mov rsi, qword [rsp + 0x78]
mov rbx, rsi
cmp r14d, eax
jl 0x14015da8a
mov r12d, dword [rbp - 0x20]
movabs rsi, 0xc81ecb17b1b54a58
movabs r14, 0x7f1137fab69605e
mov r13, r15
mov ecx, 4
cmp eax, ecx
jbe 0x14015daef
mov ecx, 8
sub ecx, eax
shl ecx, 3
shr r9d, cl
shl r9d, cl
jmp 0x14015daff
mov r9d, r15d
jae 0x14015daff
sub ecx, eax
shl ecx, 3
shr r10d, cl
shl r10d, cl
mov rax, rdi
shr rax, 3
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14015de4d
movzx eax, word [rbp + 0xb66]
lea rdx, [rbx + 7]
mov ebx, dword [rbp + 0xb64]
lea rcx, [r11 + 2]
mov r11, qword [rbp - 0x30]
mov r14d, dword [rsp + 0x70]
mov r13d, dword [rbp - 0x50]
mov dword [rsp + 0x78], eax
movzx eax, word [rbp + 0xb62]
mov dword [rbp - 0x48], eax
movzx r12d, si
movzx r15d, bx
movzx eax, byte [rcx - 1]
movzx r8d, byte [rcx - 2]
movzx edi, byte [rcx + 2]
shl r8d, 8
or r8d, eax
shl edi, 8
movzx eax, byte [rcx]
shl r8d, 8
or r8d, eax
movzx eax, byte [rcx + 1]
shl r8d, 8
or r8d, eax
movzx eax, byte [rcx + 3]
or edi, eax
movzx eax, byte [rcx + 4]
shl edi, 8
or edi, eax
movzx eax, byte [rcx + 5]
add rcx, 8
shl edi, 8
or edi, eax
mov qword [rsp + 0x70], rcx
xor r9d, edi
mov eax, r9d
sub eax, r12d
xor eax, r8d
xor r10d, eax
movzx eax, word [rbp + 0xb62]
xor r10d, ebx
mov ecx, r10d
xor ecx, ebx
ror ecx, 0xf
imul ecx, eax
mov eax, r10d
ror eax, 7
add ecx, eax
xor r9d, ecx
mov eax, r9d
ror eax, 0xa
lea ecx, [r9 + rsi]
ror ecx, 9
imul ecx, r15d
sub ecx, eax
movzx eax, word [rbp + 0xb66]
xor r10d, ecx
mov ecx, r10d
xor ecx, r15d
rol ecx, 4
imul ecx, eax
mov eax, r10d
rol eax, 5
add ecx, eax
mov eax, ebx
xor r9d, ecx
mov ecx, r9d
xor ecx, esi
sub eax, ecx
xor r10d, eax
movzx eax, word [rbp + 0xb62]
mov ecx, r10d
sub ecx, r12d
imul ecx, eax
mov eax, r10d
shr eax, 6
sub ecx, eax
xor r9d, ecx
movzx ecx, word [rbp + 0xb66]
mov eax, r9d
ror eax, 0xf
xor eax, r15d
imul eax, r12d
xor r10d, eax
mov eax, r10d
not eax
ror eax, 3
add eax, ecx
imul eax, r15d
xor r9d, eax
mov eax, r9d
sub eax, r12d
sub eax, ebx
xor r10d, eax
mov eax, r10d
mov ecx, r10d
xor eax, dword [rsp + 0x78]
imul eax, dword [rbp - 0x48]
ror ecx, 0xa
xor ecx, eax
xor r9d, ecx
mov ecx, r9d
mov eax, r9d
xor ecx, r12d
ror eax, 3
rol ecx, 6
imul ecx, r15d
xor ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0xb66]
mov eax, r10d
ror eax, 0xf
sub eax, ecx
imul eax, r12d
xor r9d, eax
movzx eax, word [rbp + 0xb66]
mov ecx, r9d
xor ecx, eax
mov eax, r9d
imul ecx, r12d
shr eax, 1
xor ecx, eax
mov eax, r9d
xor r10d, ecx
shr eax, 0xf
mov ecx, r9d
sub ecx, r15d
rol ecx, 3
imul ecx, r12d
xor ecx, eax
movzx eax, word [rbp + 0xb62]
xor r10d, ecx
mov ecx, r10d
sub ecx, r15d
imul ecx, eax
mov eax, r10d
shr eax, 0xd
sub ecx, eax
xor r9d, ecx
mov ecx, esi
sub ecx, r9d
mov eax, r9d
ror ecx, 9
ror eax, 0xb
imul ecx, r15d
xor ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0xb66]
mov eax, r10d
sub eax, ecx
sub eax, esi
xor r9d, eax
mov eax, r9d
mov ecx, r9d
xor eax, dword [rbp - 0x48]
ror ecx, 7
imul eax, r12d
sub eax, ecx
xor r10d, eax
movzx eax, word [rbp + 0xb66]
mov ecx, r10d
xor ecx, eax
movzx eax, word [rbp + 0xb62]
rol ecx, 4
imul ecx, eax
mov eax, r10d
ror eax, 0x10
sub ecx, eax
xor r9d, ecx
mov ecx, esi
sub ecx, r9d
mov eax, r9d
ror ecx, 0xa
imul ecx, r15d
ror eax, 4
add ecx, eax
movzx eax, word [rbp + 0xb66]
xor r10d, ecx
mov ecx, r10d
sub ecx, esi
ror ecx, 4
imul ecx, eax
mov eax, r10d
ror eax, 9
xor ecx, eax
xor r9d, ecx
mov ecx, r9d
mov eax, r9d
xor ecx, ebx
rol eax, 2
rol ecx, 8
imul ecx, r12d
sub ecx, eax
movzx eax, word [rbp + 0xb62]
xor r10d, ecx
mov ecx, ebx
sub ecx, r10d
ror ecx, 0xb
imul ecx, eax
mov eax, r10d
ror eax, 0xc
sub ecx, eax
movzx eax, word [rbp + 0xb62]
xor r9d, ecx
mov ecx, r9d
xor ecx, eax
mov eax, r9d
imul ecx, r15d
shr eax, 8
xor ecx, eax
xor r10d, ecx
mov rcx, qword [rsp + 0x70]
xor r9d, r10d
xor r10d, r13d
mov byte [rdx - 4], r10b
xor r9d, esi
xor r9d, ebx
ror r10d, 8
xor r9d, r14d
mov r13d, r8d
mov byte [rdx], r9b
mov r14d, edi
mov byte [rdx - 5], r10b
lea rdx, [rdx + 8]
ror r9d, 8
mov byte [rdx - 9], r9b
ror r10d, 8
mov byte [rdx - 0xe], r10b
ror r9d, 8
mov byte [rdx - 0xa], r9b
ror r10d, 8
ror r9d, 8
mov byte [rdx - 0xf], r10b
mov byte [rdx - 0xb], r9b
ror r9d, 8
ror r10d, 8
sub r11, 1
jne 0x14015db4b
mov dl, byte [rsp + 0x60]
xor r15d, r15d
mov r12d, dword [rbp - 0x20]
mov r13d, r15d
mov rdi, qword [rbp - 0x28]
movabs r14, 0x7f1137fab69605e
mov rsi, qword [rbp + 0x28]
movzx eax, dl
mov qword [rsi + rdi], rax
mov rdi, qword [rbp - 8]
mov qword [rbp + 0x4d0], rdi
mov qword [rbp + 0x4c8], rsi
lea rax, [0x14037a840]
mov qword [rbp + 0x4e0], 8
mov qword [rbp + 0x4d8], rax
lea rax, [0x14037a7a0]
mov qword [rbp + 0x4f0], Ordinal_165
mov qword [rbp + 0x4e8], rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 0x28]
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rbx, rax
test rax, rax
jne 0x14015ded5
mov edi, 0xc0000017
mov rsi, r15
jmp 0x14015e0bb
mov edi, edi
mov dword [rax], edi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
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 0x14015dff4
mov qword [rbx + 8], rax
mov r8d, edi
mov rdx, rsi
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov edi, SHSimpleIDListFromPath
mov dword [rbx + 0x10], edi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edi, 8
mov edx, edi
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 0x14015dff4
mov qword [rbx + 0x18], rax
lea rcx, [0x14037a7a0]
movups xmm0, xmmword [rcx]
lea edx, [rdi + 0x78]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rax + 0x30], xmm1
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [rax + 0x40], xmm0
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [rax + 0x50], xmm1
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [rax + 0x60], xmm0
movups xmm1, xmmword [rcx + 0x70]
movups xmmword [rax + rdx - 0x10], xmm1
movups xmm0, xmmword [rcx + rdx]
movups xmmword [rax + rdx], xmm0
movups xmm1, xmmword [rcx + rdx + 0x10]
movups xmmword [rax + rdx + 0x10], xmm1
mov dword [rbx + 0x20], edi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edx, edi
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rcx, rax
test rax, rax
je 0x14015dff4
mov qword [rbx + 0x28], rax
mov rax, qword [0x14037a840]
mov rsi, rbx
mov qword [rbp], rbx
mov edi, r15d
mov qword [rcx], rax
mov rbx, r15
jmp 0x14015dffc
mov edi, 0xc0000017
mov rsi, r15
test rbx, rbx
je 0x14015e0bb
mov rax, qword [rbx + 8]
mov qword [rbp - 0x28], rax
test rax, rax
je 0x14015e037
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 qword [rbx + 8], r15
mov rax, qword [rbx + 0x18]
mov qword [rbp - 0x28], rax
test rax, rax
je 0x14015e069
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 qword [rbx + 0x18], r15
mov rax, qword [rbx + 0x28]
mov qword [rbp - 0x28], rax
test rax, rax
je 0x14015e09b
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 qword [rbx + 0x28], r15
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
test edi, edi
js 0x14015e0cb
mov qword [rbp + 0x4b0], rsi
mov rbx, r15
jmp 0x14015e0d6
mov rbx, qword [rbp]
jmp 0x14015e0d6
mov edi, 0xc0000001
mov rsi, qword [rbp + 0x4c8]
test rsi, rsi
je 0x14015e109
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 + 0x4c8], r15
test rbx, rbx
je 0x14015e1b9
mov rsi, qword [rbx + 8]
test rsi, rsi
je 0x14015e13f
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], r15
mov rsi, qword [rbx + 0x18]
test rsi, rsi
je 0x14015e16c
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], r15
mov rsi, qword [rbx + 0x28]
test rsi, rsi
je 0x14015e199
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], r15
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
or edi, 0x10000000
jl 0x14015f52d
mov rbx, qword [rbp + 0x4b0]
lea r8, [rbp + 0x1b0]
mov r9d, 4
mov ecx, r9d
mov dword [rbp + 0x1b0], r9d
mov edx, dword [rbx]
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015e26f
mov ecx, dword [rbp + 0x1b0]
lea r8, [rbp + 0x1b0]
mov edx, r9d
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015e26f
mov edx, dword [rbx + 0x10]
lea r8, [rbp + 0x1b0]
mov ecx, dword [rbp + 0x1b0]
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015e26f
mov ecx, dword [rbp + 0x1b0]
lea r8, [rbp + 0x1b0]
mov edx, r9d
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015e26f
mov edx, dword [rbx + 0x20]
lea r8, [rbp + 0x1b0]
mov ecx, dword [rbp + 0x1b0]
call fcn.140016278
mov edi, eax
mov eax, dword [rbp + 0x1b4]
test edi, edi
cmovns eax, dword [rbp + 0x1b0]
mov dword [rbp + 0x1b4], eax
jmp 0x14015e275
mov eax, dword [rbp + 0x1b4]
test edi, edi
js 0x14015e3ee
mov edi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rsi, rax
test rax, rax
jne 0x14015e2b4
mov edi, 0xc0000017
jmp 0x14015e3ee
mov eax, dword [rbx]
lea r8, [rbp + 0x4f8]
mov edx, 4
mov dword [rsi], eax
mov rcx, rsi
mov qword [rbp + 0x4f8], rsi
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015e3c9
mov r8d, dword [rbx]
mov rdx, qword [rbx + 8]
mov rcx, qword [rbp + 0x4f8]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov edx, dword [rbx]
lea r8, [rbp + 0x4f8]
mov rcx, qword [rbp + 0x4f8]
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015e3c9
mov rcx, qword [rbp + 0x4f8]
lea r8, [rbp + 0x4f8]
mov eax, dword [rbx + 0x10]
mov edx, 4
mov dword [rcx], eax
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015e3c9
mov r8d, dword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbp + 0x4f8]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov edx, dword [rbx + 0x10]
lea r8, [rbp + 0x4f8]
mov rcx, qword [rbp + 0x4f8]
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015e3c9
mov rcx, qword [rbp + 0x4f8]
lea r8, [rbp + 0x4f8]
mov eax, dword [rbx + 0x20]
mov edx, 4
mov dword [rcx], eax
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015e3c9
mov r8d, dword [rbx + 0x20]
mov rdx, qword [rbx + 0x28]
mov rcx, qword [rbp + 0x4f8]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov edx, dword [rbx + 0x20]
lea r8, [rbp + 0x4f8]
mov rcx, qword [rbp + 0x4f8]
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015e3c9
mov eax, dword [rbp + 0x1b4]
mov qword [rbp + 0x38], rsi
mov rsi, r15
mov dword [rbp - 0x80], eax
test rsi, rsi
je 0x14015e3ee
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 r9d, 0x10000000
or edi, r9d
jl 0x14015f52d
mov qword [rbp + 0x500], r15
mov r10d, r15d
mov dword [rbp + 0x1b8], r15d
mov r11d, r15d
mov qword [rbp + 0x508], r15
mov dword [rbp + 0x1bc], r15d
mov dword [rbp + 0x1c0], 8
mov edx, dword [rsp + 0x68]
lea r8, [rbp + 0x1c0]
mov ecx, 8
call fcn.140016278
mov edi, eax
or edi, r9d
jl 0x14015e6d2
mov eax, dword [rbp + 0x1c0]
add rax, 7
and eax, 0xfffffff8
cmp eax, dword [rbp + 0x1c0]
jae 0x14015e46c
mov r9d, dword [rbp + 0x1c4]
mov edi, 0xc0000095
jmp 0x14015e49c
mov dword [rbp + 0x1c8], eax
mov edx, ecx
lea r8, [rbp + 0x1c8]
mov ecx, eax
call fcn.140016278
mov r9d, dword [rbp + 0x1c4]
test eax, eax
mov edi, eax
cmovns r9d, dword [rbp + 0x1c8]
mov dword [rbp + 0x1c4], r9d
test edi, edi
js 0x14015e6d2
mov esi, 1
cmp qword [rbp + 0x668], r15
je 0x14015e556
cmp dword [rbp + 0x660], esi
jbe 0x14015e556
mov rcx, qword [rbp + 0x668]
mov ebx, r15d
mov qword [rbp + 0x510], rcx
mov esi, dword [rcx]
lea r8, [rbp + 0x510]
mov edx, 4
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015e560
mov rcx, qword [rbp + 0x510]
lea r8, [rbp + 0x510]
mov edx, esi
call fcn.140016254
mov edi, eax
mov esi, 1
test eax, eax
js 0x14015e565
mov rcx, qword [rbp + 0x510]
add ebx, esi
cmp ebx, esi
jb 0x14015e4d3
mov ebx, dword [rcx]
lea r8, [rbp + 0x510]
lea edx, [rsi + 3]
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015e565
mov rax, qword [rbp + 0x510]
test ebx, ebx
mov r10d, ebx
mov dword [rbp + 0x1b8], ebx
cmove rax, r15
mov qword [rbp + 0x510], rax
mov qword [rbp + 0x500], rax
jmp 0x14015e565
mov edi, 0xc000000d
jmp 0x14015e6d7
mov esi, 1
test edi, edi
js 0x14015f52d
cmp dword [rbp + 0x660], 2
jbe 0x14015e556
mov rcx, qword [rbp + 0x668]
mov ebx, r15d
mov qword [rbp + 0x518], rcx
mov esi, dword [rcx]
lea r8, [rbp + 0x518]
mov edx, 4
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015e60a
mov rcx, qword [rbp + 0x518]
lea r8, [rbp + 0x518]
mov edx, esi
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015e60a
mov rcx, qword [rbp + 0x518]
inc ebx
cmp ebx, 2
jb 0x14015e587
mov ebx, dword [rcx]
lea r8, [rbp + 0x518]
mov esi, 4
mov edx, esi
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015e60f
mov rax, qword [rbp + 0x518]
test ebx, ebx
mov r11d, ebx
mov dword [rbp + 0x1bc], ebx
cmove rax, r15
mov qword [rbp + 0x518], rax
mov qword [rbp + 0x508], rax
jmp 0x14015e60f
mov esi, 4
test edi, edi
js 0x14015e6d2
lea r8, [rbp + 0x1cc]
mov dword [rbp + 0x1cc], esi
mov edx, r9d
mov ecx, esi
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015e6b1
mov ecx, dword [rbp + 0x1cc]
lea r8, [rbp + 0x1cc]
mov edx, esi
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015e6b1
mov ecx, dword [rbp + 0x1cc]
lea r8, [rbp + 0x1cc]
mov edx, r10d
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015e6b1
mov ecx, dword [rbp + 0x1cc]
lea r8, [rbp + 0x1cc]
mov edx, esi
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015e6b1
mov ecx, dword [rbp + 0x1cc]
lea r8, [rbp + 0x1cc]
mov edx, r11d
call fcn.140016278
mov edi, eax
mov eax, dword [rbp + 0x1d0]
test edi, edi
cmovns eax, dword [rbp + 0x1cc]
mov dword [rbp + 0x1d0], eax
jmp 0x14015e6b7
mov eax, dword [rbp + 0x1d0]
test edi, edi
js 0x14015e6d2
cmp eax, 0x400000
jbe 0x14015e6cc
mov edi, 0x8000ffff
jmp 0x14015f52d
mov dword [rbp + 0x1a4], eax
mov esi, 1
test edi, edi
js 0x14015f52d
mov edi, dword [rbp + 0x1a4]
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
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 0x14015e717
mov edi, 0xd0000017
mov rbx, r15
jmp 0x14015e723
mov rbx, rax
mov qword [rbp + 0x30], rax
mov edi, 0x10000000
test edi, edi
js 0x14015f52d
mov rax, qword [rbp + 0x38]
test rax, rax
je 0x14015e7e2
test rbx, rbx
je 0x14015e7e2
mov qword [rbp + 0x6d0], rax
lea r8, [rbp + 0x520]
mov eax, dword [rbp - 0x80]
lea rdx, [0x1403006e0]
mov dword [rbp + 0x6e0], eax
mov ecx, esi
mov eax, dword [rbp + 0x1a4]
mov dword [rbp + 0x6e4], eax
mov qword [rbp + 0x6d8], rbx
mov dword [rbp + 0x6e8], r15d
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
je 0x14015e7ec
mov rcx, qword [rbp + 0x520]
lea rdx, str.NtQuerySystemInformation
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x14015e7ec
xor r9d, r9d
lea rdx, [rbp + 0x6d0]
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call qword [case.0x14006c37f.0]
mov r9d, dword [rbp + 0x1a4]
mov edi, eax
or edi, 0x10000000
cmovge r9d, dword [rbp + 0x6e4]
mov dword [rbp + 0x1a4], r9d
jmp 0x14015e817
mov edi, 0x80070057
jmp 0x14015f52d
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov edi, eax
test eax, eax
jle 0x14015e807
movzx edi, ax
or edi, 0x80070000
test edi, edi
js 0x14015e810
mov edi, 0x80004005
mov r9d, dword [rbp + 0x1a4]
cmp edi, 0xd0000023
jne 0x14015e829
mov edi, 0x8007007a
jmp 0x14015f52d
test edi, edi
js 0x14015f52d
mov esi, 4
mov qword [rbp], r15
mov dword [rbp + 0x1d4], r15d
mov qword [rbp + 0x528], rbx
cmp r9d, esi
jb 0x14015ea63
mov r11d, dword [rbx]
lea r8, [rbp + 0x528]
mov edx, esi
mov dword [rsp + 0x68], r11d
mov rcx, rbx
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015ecff
lea r8, [rbp + 0x1d4]
mov edx, esi
xor ecx, ecx
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015ecff
mov eax, r9d
sub eax, dword [rbp + 0x1d4]
cmp eax, r11d
jb 0x14015ea63
mov rax, qword [rbp + 0x528]
lea r8, [rbp + 0x528]
mov rcx, rax
mov qword [rbp - 0x28], rax
mov edx, r11d
mov qword [rbp - 8], r11
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015ecff
mov ecx, dword [rbp + 0x1d4]
lea r8, [rbp + 0x1d4]
mov edx, r11d
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015ecff
mov eax, r9d
sub eax, dword [rbp + 0x1d4]
cmp eax, esi
jb 0x14015ea63
mov rcx, qword [rbp + 0x528]
lea r8, [rbp + 0x528]
mov ebx, 4
mov edx, ebx
mov esi, dword [rcx]
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015ecff
mov ecx, dword [rbp + 0x1d4]
lea r8, [rbp + 0x1d4]
mov edx, ebx
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015ecff
mov eax, r9d
sub eax, dword [rbp + 0x1d4]
cmp eax, esi
jb 0x14015ea63
mov rax, qword [rbp + 0x528]
lea r8, [rbp + 0x528]
mov rcx, rax
mov qword [rbp + 0x28], rax
mov edx, esi
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015ecff
mov ecx, dword [rbp + 0x1d4]
lea r8, [rbp + 0x1d4]
mov edx, esi
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015ecff
mov eax, r9d
sub eax, dword [rbp + 0x1d4]
cmp eax, ebx
jb 0x14015ea63
mov rcx, qword [rbp + 0x528]
lea r8, [rbp + 0x528]
mov edx, ebx
mov r10d, dword [rcx]
mov dword [rsp + 0x70], r10d
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015ecff
mov ecx, dword [rbp + 0x1d4]
lea r8, [rbp + 0x1d4]
mov edx, ebx
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015ecff
mov ecx, dword [rbp + 0x1d4]
mov eax, r9d
sub eax, ecx
cmp eax, r10d
jb 0x14015ea63
lea r8, [rbp + 0x1d4]
mov edx, r10d
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015ecff
cmp r9d, dword [rbp + 0x1d4]
jne 0x14015ea63
lea ecx, [rsi + r11]
mov eax, r9d
add ecx, r10d
add rcx, 0xc
cmp rcx, rax
jne 0x14015ea63
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov rcx, rax
lea edx, [rbx + 4]
lea r8d, [rbx + 0x2c]
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rbx, rax
test rax, rax
jne 0x14015ea6d
mov edi, 0xc0000017
jmp 0x14015ec35
mov edi, 0xc000003e
jmp 0x14015ecff
mov rdi, qword [rbp - 0x28]
test rdi, rdi
je 0x14015eac6
mov eax, dword [rsp + 0x68]
mov dword [rbx], eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r13, qword [rbp - 8]
mov edx, 8
mov rcx, rax
mov r8, r13
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
je 0x14015eabc
mov qword [rbx + 8], rax
mov r8, r13
mov rdx, rdi
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x14015eacd
mov edi, 0xc0000017
jmp 0x14015eb85
mov dword [rax], r15d
mov qword [rax + 8], r15
mov rdi, qword [rbp + 0x28]
test rdi, rdi
je 0x14015eb15
mov dword [rbx + 0x10], esi
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 0x14015eabc
mov qword [rbx + 0x18], rax
mov r8, rsi
mov rdx, rdi
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x14015eb1d
mov dword [rbx + 0x10], r15d
mov qword [rbx + 0x18], r15
cmp qword [rbp + 0x528], r15
je 0x14015eb73
mov eax, dword [rsp + 0x70]
mov dword [rbx + 0x20], eax
mov edi, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
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 0x14015eabc
mov qword [rbx + 0x28], rax
mov rdx, qword [rbp + 0x528]
mov r8d, edi
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x14015eb7b
mov dword [rbx + 0x20], r15d
mov qword [rbx + 0x28], r15
mov qword [rbp], rbx
mov edi, r15d
mov rbx, r15
test rbx, rbx
je 0x14015ec35
mov rsi, qword [rbx + 8]
test rsi, rsi
je 0x14015ebbb
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], r15
mov rsi, qword [rbx + 0x18]
test rsi, rsi
je 0x14015ebe8
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], r15
mov rsi, qword [rbx + 0x28]
test rsi, rsi
je 0x14015ec15
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], r15
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov r13, qword [rbp]
test edi, edi
mov rbx, r15
cmovs rbx, qword [rbp]
cmovs r13, r15
mov qword [rbp + 8], r13
test rbx, rbx
je 0x14015ecff
mov rsi, qword [rbx + 8]
test rsi, rsi
je 0x14015ec81
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], r15
mov rsi, qword [rbx + 0x18]
test rsi, rsi
je 0x14015ecae
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], r15
mov rsi, qword [rbx + 0x28]
test rsi, rsi
je 0x14015ecdb
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], r15
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 + 8], r13
or edi, 0x10000000
jl 0x14015f52d
mov rbx, r15
mov rsi, r15
mov qword [rbp + 0x530], rbx
test r13, r13
je 0x14015edcc
mov rdi, qword [r13 + 8]
mov qword [rbp], rdi
test rdi, rdi
je 0x14015edcc
cmp dword [r13], r15d
je 0x14015edcc
mov eax, dword [r13]
mov qword [rbp - 0x28], rax
mov dword [rsp + 0x68], r15d
test rax, rax
je 0x14015f27e
lea rbx, [rax - 8]
mov rcx, rbx
mov qword [rbp - 8], rbx
call fcn.140092328
mov qword [rbp + 0x28], rax
mov r8, rax
test rax, rax
je 0x14015f277
mov r9, rdi
mov qword [rbp + 0xb68], r14
mov rdi, rbx
mov dl, r15b
mov byte [rsp + 0x60], dl
mov r11d, r15d
mov r10d, r15d
and edi, 7
je 0x14015eea0
mov dword [rsp + 0x70], r15d
mov ecx, r15d
mov dword [rbp + 0x20], ecx
test edi, edi
je 0x14015ee06
mov r14d, RestartDialog
lea r12d, [r14 - 0x34]
lea r13d, [r14 - 0x37]
movzx eax, byte [r9]
inc r9
cmp r10d, r12d
jge 0x14015edd6
lea ecx, [r14 - 0x20]
shl eax, cl
mov ecx, dword [rbp + 0x20]
or r11d, eax
jmp 0x14015ede3
mov edi, 0xd000000d
jmp 0x14015f52d
mov ecx, r14d
shl eax, cl
mov ecx, dword [rbp + 0x20]
or ecx, eax
mov dword [rbp + 0x20], ecx
add r10d, r13d
sub r14d, 8
cmp r10d, edi
jl 0x14015edb2
mov r12d, dword [rbp - 0x20]
movabs r14, 0x7f1137fab69605e
mov r13, qword [rbp + 8]
mov dword [rsp + 0x70], r11d
mov r10d, r11d
mov r11d, ecx
xor r11d, 0x699a899c
xor r10d, 0x92f65a5
mov eax, r10d
mov ecx, r11d
test edi, edi
je 0x14015ee70
mov r14, r8
mov edx, 1
lea r12, [r14 + 1]
mov qword [rbp - 0x80], r12
cmp esi, 4
jge 0x14015ee41
rol eax, 8
mov r12d, eax
jmp 0x14015ee47
rol ecx, 8
mov r12d, ecx
mov byte [r14], r12b
add esi, edx
mov r12, qword [rbp - 0x80]
mov r14, r12
cmp esi, edi
jl 0x14015ee2c
mov rax, r12
mov dl, r15b
mov r12d, dword [rbp - 0x20]
movabs r14, 0x7f1137fab69605e
mov rsi, r15
jmp 0x14015ee73
mov rax, r8
mov ecx, 4
cmp edi, ecx
jbe 0x14015ee8e
mov ecx, 8
sub ecx, edi
shl ecx, 3
shr r11d, cl
shl r11d, cl
jmp 0x14015eea5
mov r11d, r15d
jae 0x14015eea5
sub ecx, edi
shl ecx, 3
shr r10d, cl
shl r10d, cl
jmp 0x14015eea5
mov dword [rsp + 0x70], r15d
mov rcx, rbx
shr rcx, 3
mov qword [rbp - 0x30], rcx
test rcx, rcx
je 0x14015f1f1
mov esi, dword [rbp + 0xb6c]
lea r15, [rax + 7]
mov edx, dword [rsp + 0x70]
lea r13, [r9 + 2]
mov rbx, qword [rbp - 0x30]
movzx ecx, si
mov dword [rbp - 0x80], ecx
mov ecx, esi
xor ecx, r14d
mov dword [rbp - 0x50], ecx
movzx ecx, word [rbp + 0xb6a]
mov r12d, dword [rbp - 0x50]
mov dword [rsp + 0x78], ecx
movzx ecx, r14w
mov dword [rbp - 0x48], ecx
movzx eax, byte [r13 - 1]
movzx r9d, byte [r13 - 2]
movzx r8d, byte [r13 + 2]
shl r9d, 8
or r9d, eax
shl r8d, 8
movzx eax, byte [r13]
lea r13, [r13 + 8]
shl r9d, 8
or r9d, eax
movzx eax, byte [r13 - 7]
shl r9d, 8
or r9d, eax
movzx eax, byte [r13 - 5]
or r8d, eax
xor r10d, r9d
movzx eax, byte [r13 - 4]
shl r8d, 8
or r8d, eax
movzx eax, byte [r13 - 3]
shl r8d, 8
or r8d, eax
xor r11d, r8d
xor r11d, r10d
xor r11d, r14d
xor r11d, esi
mov eax, r11d
mov edi, r11d
sub eax, r14d
rol r11d, 0xa
rol eax, 5
imul eax, dword [rbp - 0x80]
add eax, r11d
mov r11d, dword [rbp - 0x80]
xor r10d, eax
movzx eax, word [rbp + 0xb6a]
lea ecx, [rsi + r10]
ror ecx, 9
imul ecx, eax
mov eax, r10d
rol eax, 2
sub ecx, eax
xor edi, ecx
mov ecx, edi
mov eax, edi
sub ecx, r11d
shr eax, 0xd
imul ecx, dword [rbp - 0x48]
sub ecx, eax
movzx eax, word [rbp + 0xb6a]
xor r10d, ecx
mov ecx, r10d
xor ecx, eax
movzx eax, word [rbp + 0xb6e]
rol ecx, 6
imul ecx, eax
mov eax, r10d
rol eax, 2
sub ecx, eax
mov eax, esi
xor edi, ecx
mov ecx, r14d
xor ecx, edi
sub eax, ecx
xor r10d, eax
mov eax, r10d
mov ecx, r10d
ror ecx, 6
xor eax, r11d
imul eax, dword [rsp + 0x78]
xor ecx, eax
xor edi, ecx
mov eax, edi
rol eax, 2
lea ecx, [rsi + rdi]
ror ecx, 0xf
imul ecx, dword [rbp - 0x48]
add ecx, eax
xor r10d, ecx
mov ecx, r10d
sub ecx, r14d
movzx eax, word [rbp + 0xb6e]
ror ecx, 0xe
imul ecx, eax
mov eax, r10d
rol eax, 8
sub ecx, eax
xor edi, ecx
mov ecx, r14d
xor ecx, edi
mov eax, edi
ror ecx, 0xc
imul ecx, r11d
movzx r11d, word [rbp + 0xb6e]
ror eax, 0xa
xor ecx, eax
movzx eax, word [rbp + 0xb6a]
xor r10d, ecx
mov ecx, r10d
xor ecx, r11d
imul ecx, eax
mov eax, r10d
shr eax, 0xa
xor ecx, eax
xor edi, ecx
mov eax, edi
not eax
ror eax, 5
add eax, dword [rbp - 0x48]
imul eax, r11d
xor r10d, eax
movzx eax, word [rbp + 0xb6e]
mov r11d, r10d
sub r11d, eax
xor r11d, edi
mov edi, dword [rbp - 0x80]
xor r11d, r14d
mov ecx, r11d
xor ecx, eax
mov eax, r11d
rol ecx, 2
imul ecx, edi
shr eax, 2
add ecx, eax
movzx eax, word [rbp + 0xb6a]
xor r10d, ecx
mov ecx, r10d
sub ecx, esi
ror ecx, 6
imul ecx, eax
mov eax, r10d
rol eax, 7
add ecx, eax
xor r11d, ecx
mov eax, r11d
mov ecx, r11d
xor eax, edi
ror ecx, 9
imul eax, dword [rbp - 0x48]
add ecx, eax
movzx eax, word [rbp + 0xb6a]
xor r10d, ecx
mov ecx, r10d
xor ecx, eax
movzx eax, word [rbp + 0xb6e]
rol ecx, 5
imul ecx, eax
mov eax, r10d
rol eax, 7
add ecx, eax
xor r11d, ecx
movzx ecx, word [rbp + 0xb6a]
xor r10d, r11d
xor r10d, r12d
mov eax, r10d
ror eax, 3
sub eax, ecx
imul eax, edi
xor r11d, eax
mov ecx, r11d
sub ecx, esi
ror ecx, 1
imul ecx, dword [rbp - 0x48]
mov eax, r11d
ror eax, 6
sub ecx, eax
movzx eax, word [rbp + 0xb6e]
xor r10d, ecx
lea ecx, [r10 + r14]
rol ecx, 3
imul ecx, eax
mov eax, r10d
rol eax, 0xe
add ecx, eax
xor r11d, ecx
mov eax, r11d
ror eax, 0xe
lea ecx, [r11 + r14]
rol ecx, 0xf
imul ecx, edi
sub ecx, eax
movzx eax, word [rbp + 0xb6a]
xor r10d, ecx
mov ecx, r10d
xor ecx, dword [rbp - 0x48]
imul ecx, eax
mov eax, r10d
shr eax, 3
xor ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
xor r11d, dword [rbp + 0x20]
xor ecx, esi
rol ecx, 4
imul ecx, dword [rbp - 0x48]
rol eax, 2
mov dword [rbp + 0x20], r8d
xor ecx, eax
xor ecx, edx
mov edx, r9d
xor r10d, ecx
mov ecx, 1
mov byte [r15 - 4], r10b
mov byte [r15], r11b
lea r15, [r15 + 8]
ror r10d, 8
mov byte [r15 - 0xd], r10b
ror r11d, 8
mov byte [r15 - 9], r11b
ror r10d, 8
mov byte [r15 - 0xe], r10b
ror r11d, 8
mov byte [r15 - 0xa], r11b
ror r10d, 8
ror r11d, 8
mov byte [r15 - 0xf], r10b
mov byte [r15 - 0xb], r11b
ror r11d, 8
ror r10d, 8
sub rbx, rcx
jne 0x14015eef3
mov dl, byte [rsp + 0x60]
xor r15d, r15d
mov r12d, dword [rbp - 0x20]
mov esi, r15d
mov r13, qword [rbp + 8]
mov rbx, qword [rbp - 8]
mov r8, qword [rbp + 0x28]
jmp 0x14015f1f6
mov ecx, 1
mov rax, r15
test rbx, rbx
je 0x14015f20a
xor dl, byte [rax + r8]
add rax, rcx
cmp rax, rbx
jb 0x14015f1fe
mov rcx, qword [rbp]
movzx eax, dl
cmp rax, qword [rbx + rcx]
je 0x14015f225
mov rbx, qword [rbp + 0x530]
mov edi, 0xc004d501
jmp 0x14015f23e
mov rsi, qword [rbp - 0x28]
mov rbx, r8
mov edi, dword [rsp + 0x68]
add rsi, 0xfffffffffffffff8
mov qword [rbp + 0x530], rbx
mov r8, r15
test r8, r8
je 0x14015f252
mov rcx, r8
call fcn.14009515c
mov rbx, qword [rbp + 0x530]
test edi, edi
js 0x14015f27e
mov r14, rbx
mov qword [rbp + 0x208], rbx
mov rbx, r15
mov dword [rbp + 0x1a8], esi
mov qword [rbp + 0x530], rbx
mov edi, 0x10000000
jmp 0x14015f28c
mov rbx, qword [rbp + 0x530]
mov esi, dword [rbp + 0x1a8]
mov edi, 0xd0000001
mov r14, r15
test rbx, rbx
je 0x14015f2be
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 esi, dword [rbp + 0x1a8]
mov qword [rbp + 0x530], r15
test edi, edi
js 0x14015f52d
mov r9d, 4
mov dword [rbp + 0x228], r15d
mov qword [rbp + 0x538], r14
cmp esi, r9d
jb 0x14015f524
mov eax, dword [r14]
lea r8, [rbp + 0x538]
mov edx, r9d
mov dword [rsp + 0x68], eax
mov rcx, r14
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015f529
lea r8, [rbp + 0x228]
mov edx, r9d
xor ecx, ecx
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015f529
mov eax, esi
sub eax, dword [rbp + 0x228]
cmp eax, r9d
jb 0x14015f524
mov rcx, qword [rbp + 0x538]
lea r8, [rbp + 0x538]
mov edx, r9d
mov r10d, dword [rcx]
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015f529
mov ecx, dword [rbp + 0x228]
lea r8, [rbp + 0x228]
mov edx, r9d
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015f529
mov ecx, dword [rbp + 0x228]
mov eax, esi
sub eax, ecx
cmp eax, r10d
jb 0x14015f524
lea r8, [rbp + 0x228]
mov edx, r10d
call fcn.140016278
mov edi, eax
test eax, eax
js 0x14015f529
mov rbx, qword [rbp + 0x538]
mov edx, esi
mov esi, r10d
lea rax, [r10 + rbx]
lea rcx, [r14 + rdx]
cmp rcx, rax
jb 0x14015f524
mov rax, r14
sub rax, r10
sub rax, rbx
add rax, rdx
cmp rax, 8
jae 0x14015f524
mov dword [rbp - 0x80], r15d
mov r14, r15
mov edi, r15d
test rbx, rbx
je 0x14015f4b0
lea r8, [rbp + 0x540]
mov edx, r10d
mov rcx, rbx
mov r9, rbx
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015f514
mov r11, qword [rbp + 0x540]
cmp rbx, r11
jae 0x14015f4ab
mov r10d, dword [rbp + 0x1dc]
lea r8, [rbp + 0x548]
mov edx, 4
mov rcx, r9
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015f514
cmp qword [rbp + 0x548], r11
ja 0x14015f4e7
mov edx, dword [r9]
lea r8, [rbp + 0x1e0]
mov ecx, 4
call fcn.140016278
test eax, eax
mov edi, eax
cmovns r10d, dword [rbp + 0x1e0]
mov dword [rbp + 0x1dc], r10d
js 0x14015f514
mov edx, r10d
lea r8, [rbp + 0x550]
mov rcx, r9
call fcn.140016254
mov edi, eax
test eax, eax
js 0x14015f514
mov r9, qword [rbp + 0x550]
cmp r9, r11
ja 0x14015f4e7
inc dword [rbp - 0x80]
cmp r9, r11
jb 0x14015f41c
mov r10d, esi
cmp r9, r11
jne 0x14015f4e7
test r10d, r10d
je 0x14015f4f1
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
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 r14, rax
test rax, rax
jne 0x14015f4ee
mov edi, 0xc0000017
jmp 0x14015f514
mov edi, 0xc000000d
jmp 0x14015f529
mov edi, r15d
test rbx, rbx
je 0x14015f504
mov r8, rsi
mov rdx, rbx
mov rcx, r14
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, dword [rbp - 0x80]
mov dword [rbp + 0x690], eax
mov qword [rbp + 0x698], r14
test edi, edi
js 0x14015f529
mov eax, dword [rsp + 0x68]
cmp eax, dword [rbp + 0x690]
je 0x14015f529
mov edi, 0xc000003e
bts edi, 0x1c
mov rbx, qword [rbp + 0x40]
test rbx, rbx
je 0x14015f556
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 + 0x4b0]
test rbx, rbx
je 0x14015f614
mov rsi, qword [rbx + 8]
test rsi, rsi
je 0x14015f593
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], r15
mov rsi, qword [rbx + 0x18]
test rsi, rsi
je 0x14015f5c0
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], r15
mov rsi, qword [rbx + 0x28]
test rsi, rsi
je 0x14015f5ed
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], r15
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 + 0x4b0], r15
mov rbx, qword [rbp + 0x38]
test rbx, rbx
je 0x14015f63d
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 + 0x30]
test rbx, rbx
je 0x14015f666
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
test r13, r13
je 0x14015f716
mov rbx, qword [r13 + 8]
test rbx, rbx
je 0x14015f69c
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [r13 + 8], r15
mov rbx, qword [r13 + 0x18]
test rbx, rbx
je 0x14015f6c9
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [r13 + 0x18], r15
mov rbx, qword [r13 + 0x28]
test rbx, rbx
je 0x14015f6f6
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [r13 + 0x28], r15
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov rbx, qword [rbp + 0x208]
test rbx, rbx
je 0x14015f742
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
test edi, edi
js 0x14015f87b
mov r9d, dword [rbp + 0x690]
mov ebx, 1
cmp r9d, ebx
jb 0x14015f87b
mov rdi, qword [rbp + 0x698]
test rdi, rdi
je 0x14015f87b
test r9d, r9d
je 0x14015f87b
mov r10d, dword [rdi]
lea r11d, [rbx + 3]
mov edx, r11d
mov qword [rbp + 0x558], rdi
lea r8, [rbp + 0x558]
mov rcx, rdi
call fcn.140016254
test eax, eax
js 0x14015f87b
mov rax, qword [rbp + 0x558]
test r10d, r10d
mov dword [rbp + 0x1e4], r10d
cmove rax, r15
mov qword [rbp + 0x558], rax
mov qword [rbp + 0x560], rax
cmp r10d, r11d
jne 0x14015f87b
mov eax, dword [rax]
mov dword [rbp + 0x1e8], eax
test eax, eax
js 0x14015f87b
cmp r9d, ebx
jbe 0x14015f87b
mov qword [rbp + 0x568], rdi
mov r9d, r15d
lea r8, [rbp + 0x568]
mov rdx, r11
mov rcx, rdi
call fcn.140016254
test eax, eax
js 0x14015f87b
mov edx, dword [rdi]
lea r8, [rbp + 0x568]
mov rcx, qword [rbp + 0x568]
call fcn.140016254
test eax, eax
js 0x14015f87b
add r9d, ebx
cmp r9d, ebx
jae 0x14015f82f
mov rdi, qword [rbp + 0x568]
jmp 0x14015f7ef
mov rcx, qword [rbp + 0x568]
lea r8, [rbp + 0x568]
mov rdx, r11
mov edi, dword [rcx]
call fcn.140016254
test eax, eax
js 0x14015f87b
mov rax, qword [rbp + 0x568]
test edi, edi
mov dword [rbp + 0x1ec], edi
cmove rax, r15
mov qword [rbp + 0x568], rax
mov qword [rbp + 0x570], rax
cmp edi, 8
jne 0x14015f87b
mov rax, qword [rax]
mov qword [rbp + 0x578], rax
mov r13, qword [rbp + 0x10]
jmp 0x14015f884
mov r13, r15
and qword [rbp + 0x660], 0
mov rdi, qword [rbp + 0x668]
test rdi, rdi
je 0x14015f8bf
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x668], r15
and qword [rbp + 0x690], 0
mov rdi, qword [rbp + 0x698]
test rdi, rdi
je 0x14015f8fa
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x698], r15
mov rdi, qword [rbp - 0x10]
test rdi, rdi
je 0x14015f923
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
test r13, r13
je 0x14015f948
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 eax, dword [rbp + 0x130]
mov r13d, 4
mov ebx, dword [rbp + 0x12c]
mov dword [rbp + 0x1f0], eax
mov rax, qword [rbp - 0x58]
mov qword [rbp + 0x308], rax
mov qword [rbp + 0x28], r15
jmp 0x14015f97a
mov r13d, 4
mov ebx, dword [rbp + 0x1c]
mov r14d, 1
xor eax, eax
lock cmpxchg dword [0x14037d0a0], r14d
jne 0x14015f980
mov eax, dword [0x14037bd98]
test eax, eax
jle 0x14015f9f4
sub eax, r14d
mov dword [0x14037bd98], eax
jne 0x14015f9f4
lea rdi, [0x14037c2e0]
mov rsi, r13
cmp qword [rdi], r15
je 0x14015f9c0
mov rcx, qword [rdi]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_FreeLibrary]
nop dword [rax + rax]
add rdi, 0x18
sub rsi, r14
jne 0x14015f9ac
xor edx, edx
lea r8d, [rsi + 0x60]
lea rcx, [0x14037c2e0]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x1402eeca0]
lea rcx, section..data
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, r15d
lea rcx, [rbp + 0x28]
xchg dword [0x14037d0a0], eax
call fcn.14008fc78
test r12d, r12d
jns 0x140017099
cmp r12d, 0xd0000034
jne 0x14015fa20
mov r12d, 0xc004f012
jmp 0x14015fa5f
cmp r12d, 0xd00000e5
je 0x14015fa47
cmp r12d, 0xc004d501
je 0x14015fa47
cmp r12d, 0xd000003e
jne 0x140017090
mov r12d, 0xc004f028
jmp 0x14015fa5f
mov r12d, 0xc004f027
jmp 0x140017090
cmp r12d, 0x8007007a
je 0x140017104
mov dword [rbp + 0x120], r12d
jmp 0x1400170ad