Function at 0x140022c00
Capabilities:
Encode data using xor
Execute anti-debugging instructions
Link many functions at runtime
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x10a0]
mov eax, 0x11a0
call fcn.140068a60
sub rsp, rax
mov rax, qword [0x1400b35a8]
xor rax, rsp
mov qword [rbp + 0x1090], rax
xor r14d, r14d
mov qword [rbp + 0x318], r8
mov qword [rbp + 0x18], rdx
mov qword [rbp + 0x1a8], r14
test rdx, rdx
jne 0x140022c5b
mov r14d, 0x80070057
jmp 0x14002c50a
test r8, r8
je 0x140022c50
mov dword [rbp + 0xd8], r14d
mov r13d, 1
mov dword [rbp + 0xd4], r14d
mov qword [rbp + 0xb8], r14
mov dword [rbp + 0x30], r14d
xor eax, eax
lock cmpxchg dword [0x1400b4a2c], r13d
jne 0x140022c7f
mov eax, dword [0x1400b4a28]
or edi, 0xffffffff
mov dword [rbp + 0x48], edi
mov ebx, 0x338
test eax, eax
jne 0x140023246
mov dword [rbp - 0x40], r14d
mov qword [rbp + 0x118], r14
mov qword [rbp + 0x218], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, ebx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov qword [rbp], rax
test rax, rax
je 0x1400231b5
mov esi, 0x67
lea r12, [rax + 7]
mov ecx, r14d
lea r13, [0x140091c62]
mov ebx, r14d
mov r11d, r14d
mov r15d, edi
lea r14d, [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, r15d
rol eax, 2
mov r15d, 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, r14
jne 0x140022d04
mov r15, qword [rbp]
xor r14d, r14d
mov eax, r14d
mov cl, r14b
mov esi, r14d
mov ebx, 0x338
lea r13d, [r14 + 1]
xor cl, byte [rax + r15]
add rax, r13
cmp rax, rbx
jb 0x140023008
movzx eax, cl
cmp rax, qword [0x140091f98]
je 0x140023027
mov edi, 0xc004d501
jmp 0x14002303b
mov qword [rbp + 0x118], r15
mov edi, r14d
mov r15, r14
mov qword [rbp + 0x218], rbx
test r15, r15
je 0x140023060
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test edi, edi
js 0x1400231b5
mov rax, qword [rbp + 0x218]
lea rbx, [0x1400b4820]
mov rdi, qword [rbp + 0x118]
xor edx, edx
mov rcx, rbx
lea r8d, [rdx + 0x60]
mov byte [rax + rdi - 1], r14b
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
cmp byte [rdi], r14b
je 0x1400231ba
mov r12d, r14d
mov rdx, rdi
or rax, 0xffffffffffffffff
inc rax
cmp word [rdi + rax*2], r14w
jne 0x1400230a3
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.KERNEL32.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
je 0x1400231b5
mov rax, qword [rbx]
mov ecx, 0x5a4d
mov esi, r14d
cmp word [rax], cx
je 0x1400230ec
mov esi, 0xc000007b
jmp 0x140023136
movsxd rcx, dword [rax + 0x3c]
cmp ecx, 0x10000000
jae 0x1400230e5
add rcx, qword [rbx]
cmp rcx, qword [rbx]
jb 0x1400230e5
cmp dword [rcx], 0x4550
jne 0x1400230e5
movzx eax, word [rcx + 0x18]
mov edx, 0x10b
sub ax, dx
mov edx, 0xfeff
test dx, ax
je 0x140023125
mov esi, 0xc000000d
jmp 0x140023136
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 r15d, r14d
add rdi, 6
test r13d, r13d
je 0x140023192
mov rdx, rdi
or rax, 0xffffffffffffffff
inc rax
cmp byte [rdi + rax], r14b
jne 0x14002314d
inc rdi
add rdi, rax
test esi, esi
js 0x140023182
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x1400231ad
mov ecx, dword [rbp - 0x40]
lea rdx, [0x1400ad050]
mov qword [rdx + rcx*8], rax
mov eax, 1
add dword [rbp - 0x40], eax
add r15d, eax
cmp r15d, r13d
jb 0x140023146
mov r13d, 1
lea rbx, [0x1400b4820]
add r12d, r13d
cmp byte [rdi], r14b
jne 0x14002309c
jmp 0x1400231ba
mov r13d, 1
jmp 0x1400231ba
mov esi, 0xc000007a
cmp qword [rbp + 0x118], r14
je 0x1400231e7
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x118]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test esi, esi
jns 0x140023240
lea r15, [0x1400b4820]
mov ebx, 4
mov rdi, r15
cmp qword [rdi], r14
je 0x14002320e
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop dword [rax + rax]
add rdi, 0x18
sub rbx, r13
jne 0x1400231fa
xor edx, edx
lea r8d, [rbx + 0x60]
mov rcx, r15
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006ee60]
lea rcx, [0x1400ad050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x14002324f
mov eax, dword [0x1400b4a28]
add eax, r13d
mov dword [0x1400b4a28], eax
mov eax, r14d
mov esi, r14d
xchg dword [0x1400b4a2c], eax
mov qword [rbp + 0x180], r14
mov ebx, r14d
mov qword [rbp + 0x1f8], r14
mov edi, 0x80004005
mov rax, qword gs:[0x60]
mov r12d, 0x80070000
cmp dword [rax + 0x2c0], r14d
je 0x14002355d
mov rax, qword [0x1400ad160]
call qword [case.0x140067cae.0]
mov r15, rax
test rax, rax
jne 0x1400232c8
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
movzx ebx, ax
or ebx, r12d
test eax, eax
cmovle ebx, eax
test ebx, ebx
js 0x140023560
mov ebx, edi
jmp 0x140023560
mov qword [rbp + 0x90], r14
mov r9d, r14d
mov rdi, r14
lea rax, [rbp + 0xf4]
mov r8, rdi
mov qword [rsp + 0x20], rax
mov edx, 2
mov rax, qword [0x1400ad180]
mov rcx, r15
call qword [case.0x140067cae.0]
test eax, eax
jne 0x14002338e
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
cmp eax, 0x7a
jne 0x140023378
cmp qword [rbp + 0x90], r14
jne 0x14002336f
mov edi, dword [rbp + 0xf4]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
lea rcx, [rbp + 0x90]
mov rdi, rax
call fcn.14004a23c
test rdi, rdi
je 0x140023368
mov r9d, dword [rbp + 0xf4]
mov qword [rbp + 0x90], rdi
jmp 0x1400232d5
mov ebx, 0x8007000e
jmp 0x14002339c
mov edi, 0x80004005
mov ebx, edi
jmp 0x1400233a8
mov edi, 0x80004005
test eax, eax
je 0x140023374
movzx ebx, ax
or ebx, r12d
test eax, eax
cmovle ebx, eax
jmp 0x1400233a8
mov rax, qword [rbp + 0x90]
mov qword [rbp + 0x180], rax
mov edi, 0x80004005
mov qword [rbp + 0x90], r14
lea rcx, [rbp + 0x90]
call fcn.14004a23c
test ebx, ebx
js 0x140023560
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
nop dword [rax + rax]
mov ecx, eax
mov rax, qword [0x1400ad178]
call qword [case.0x140067cae.0]
mov r15, rax
test rax, rax
je 0x1400232a2
mov qword [rbp + 0x80], r14
mov ebx, r14d
mov r9d, r14d
mov rdi, r14
lea rax, [rbp + 0xe4]
mov r8, rdi
mov qword [rsp + 0x20], rax
mov edx, 2
mov rax, qword [0x1400ad180]
mov rcx, r15
call qword [case.0x140067cae.0]
test eax, eax
jne 0x1400234ac
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
cmp eax, 0x7a
jne 0x140023496
cmp qword [rbp + 0x80], r14
jne 0x14002348d
mov edi, dword [rbp + 0xe4]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
lea rcx, [rbp + 0x80]
mov rdi, rax
call fcn.14004a23c
test rdi, rdi
je 0x140023486
mov r9d, dword [rbp + 0xe4]
mov qword [rbp + 0x80], rdi
jmp 0x1400233f3
mov ebx, 0x8007000e
jmp 0x1400234ba
mov edi, 0x80004005
mov ebx, edi
jmp 0x1400234c6
mov edi, 0x80004005
test eax, eax
je 0x140023492
movzx ebx, ax
or ebx, r12d
test eax, eax
cmovle ebx, eax
jmp 0x1400234c6
mov rax, qword [rbp + 0x80]
mov qword [rbp + 0x1f8], rax
mov edi, 0x80004005
mov qword [rbp + 0x80], r14
lea rcx, [rbp + 0x80]
call fcn.14004a23c
test ebx, ebx
js 0x140023560
mov rcx, qword [rbp + 0x180]
test rcx, rcx
je 0x14002355d
lea rdx, [0x14008fbb0]
call sub.api_ms_win_crt_string_l1_1_0.dll_wcscmp
test eax, eax
jne 0x14002355d
mov rcx, qword [rbp + 0x1f8]
test rcx, rcx
je 0x14002355d
lea rdx, str.Default
call sub.api_ms_win_crt_string_l1_1_0.dll_wcscmp
test eax, eax
jne 0x14002355d
xor eax, eax
mov dword [rbp + 0xf0], eax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
nop dword [rax + rax]
mov r9d, 4
lea r8, [rbp + 0xf0]
mov rcx, rax
lea edx, [r9 + 7]
call qword [sym.imp.KERNEL32.dll_GetProcessMitigationPolicy]
nop dword [rax + rax]
test eax, eax
je 0x1400232a2
mov eax, SafeArrayGetDim
test byte [rbp + 0xf0], al
cmove esi, r13d
mov dword [rbp + 0x30], esi
lea rcx, [rbp + 0x1f8]
call fcn.14004a23c
lea rcx, [rbp + 0x180]
call fcn.14004a23c
mov eax, dword [rbp + 0x30]
test ebx, ebx
cmovs eax, r14d
mov dword [rbp + 0x30], eax
mov edx, 4
lea ecx, [rdx + 0x3c]
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
nop dword [rax + rax]
lea rcx, [rbp + 0xb8]
mov qword [rbp + 0x40], rax
mov rdi, rax
call fcn.14004a20c
test rdi, rdi
jne 0x14002367b
mov qword [rbp + 0xb8], r14
mov r15d, 0x8007000e
mov ebx, dword [rbp + 0x9c]
mov r12d, 1
xor eax, eax
lock cmpxchg dword [0x1400b4a2c], r12d
jne 0x1400235cd
mov eax, dword [0x1400b4a28]
test eax, eax
jle 0x140023642
sub eax, r12d
mov dword [0x1400b4a28], eax
jne 0x140023642
lea r13, [0x1400b4820]
mov esi, 4
mov rdi, r13
cmp qword [rdi], r14
je 0x140023612
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop dword [rax + rax]
add rdi, 0x18
sub rsi, r12
jne 0x1400235fe
xor edx, edx
lea r8d, [rsi + 0x60]
mov rcx, r13
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006ee60]
lea rcx, [0x1400ad050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, r14d
lea rcx, [rbp + 0xb8]
xchg dword [0x1400b4a2c], eax
call fcn.14004a20c
test r15d, r15d
jns 0x14002c4f3
cmp r15d, 0xd0000034
jne 0x14002c4ac
mov r15d, 0xc004f012
mov r14d, r15d
jmp 0x14002c50a
xorps xmm0, xmm0
mov qword [rbp + 0xb8], rdi
lea rax, [0x1400b36d0]
mov qword [rbp + 8], r14
movups xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x298], rax
mov r13, r14
mov qword [rbp - 0x60], r14
mov dword [rbp + 0xdc], r14d
mov dword [rbp + 0x5c], r14d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov edi, 8
mov r8d, LoadRegTypeLib
mov rcx, rax
mov edx, edi
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
movabs rbx, 0xc81ecb17b1b54a58
lea edx, [rdi + 0x78]
lea r8, [0x1400b3618]
mov r12, rax
movabs rsi, 0x7f1137fab69605e
mov r15d, 0xc0000017
test rax, rax
jne 0x14002370b
mov dword [rsp + 0x60], r15d
jmp 0x1400237b4
mov rax, qword [rbp + 0x298]
mov qword [rsp + 0x68], r12
movups xmm0, xmmword [rax]
movups xmmword [r12], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r12 + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [r12 + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [r12 + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [r12 + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [r12 + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [r12 + 0x60], xmm0
movups xmm1, xmmword [rax + 0x70]
movups xmmword [r12 + rdx - 0x10], xmm1
movups xmm0, xmmword [rax + rdx]
movups xmmword [r12 + rdx], xmm0
movups xmm1, xmmword [rax + rdx + 0x10]
movups xmmword [r12 + rdx + 0x10], xmm1
mov qword [rbp + 0x2a0], r8
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
mov edx, edi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov r13, rax
test rax, rax
jne 0x1400238ff
mov dword [rsp + 0x60], r15d
mov r13, r12
and qword [rbp - 0x68], 0
mov rdi, qword [rbp - 0x60]
test rdi, rdi
je 0x1400237e6
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp - 0x60], r14
and qword [rbp + 0x60], 0
mov rdi, qword [rbp + 0x68]
test rdi, rdi
je 0x140023818
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x68], r14
test r13, r13
je 0x14002383d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov rdi, qword [rbp + 8]
test rdi, rdi
je 0x140023866
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test r15d, r15d
js 0x1400235c1
mov eax, dword [rbp + 0x30]
test eax, eax
je 0x14002c478
mov edi, 0x104
mov qword [rbp + 0x2f0], r14
mov r8d, edi
mov dword [0x1400b4810], eax
lea rdx, [rbp + 0xe80]
lea rcx, [0x140000000]
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
nop dword [rax + rax]
test eax, eax
je 0x14002a42e
cmp eax, edi
jne 0x1400238ca
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
cmp eax, 0x7a
je 0x14002a42e
mov rax, qword [0x1400ad148]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
call qword [case.0x140067cae.0]
mov qword [rbp + 0x20], rax
test rax, rax
jne 0x140025eb3
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
jmp 0x14002a42e
mov rax, qword [rbp + 0x2a0]
mov qword [rbp + 8], r13
mov rcx, qword [rax]
mov qword [r13], rcx
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x1c8], rax
mov dword [rbp + 0xa4], SafeArrayGetDim
mov rcx, qword [rbp + 0x18]
lea r8, [rbp + 0x188]
mov edx, 0x7fffffff
call fcn.14004a288
test eax, eax
jns 0x140023956
mov qword [rbp + 0x188], r14
mov r15d, 0xc000003e
jmp 0x1400237ac
mov rax, qword [rbp + 0x188]
mov r10d, 0xc0000095
inc rax
mov qword [rbp + 0x188], rax
lea eax, [rax*2 + 4]
cmp eax, 4
jb 0x140023984
mov r15d, r14d
mov dword [rbp + 0xa4], eax
jmp 0x14002398d
mov eax, dword [rbp + 0xa4]
mov r15d, r10d
mov dword [rsp + 0x60], r15d
test r15d, r15d
js 0x1400237b1
add eax, 0xc4
or edi, 0xffffffff
mov ecx, 0xc4
mov edx, edi
cmp eax, ecx
mov r8d, 0x10000000
cmovae edx, eax
sbb r15d, r15d
and r15d, r10d
add r15d, r8d
mov dword [rsp + 0x60], r15d
cmp eax, ecx
jb 0x140025e70
lea eax, [rdx + 8]
mov ecx, edi
cmp eax, edx
cmovae ecx, eax
sbb r15d, r15d
and r15d, r10d
add r15d, r8d
mov dword [rsp + 0x60], r15d
cmp eax, edx
jb 0x140025e70
mov dword [rbp + 0xa4], 8
lea eax, [rcx + 8]
mov edx, edi
cmp eax, ecx
cmovae edx, eax
sbb r15d, r15d
and r15d, r10d
add r15d, r8d
mov dword [rsp + 0x60], r15d
cmp eax, ecx
jb 0x140025e70
mov dword [rbp - 0x64], edx
mov edi, edx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov rdx, rax
test rax, rax
jne 0x140023a50
mov r15d, 0xc0000017
jmp 0x1400237ac
mov qword [rbp - 0x60], rdx
mov dword [rbp - 0x68], r14d
mov dword [rbp + 0x1b0], r14d
lea rdi, [rax + 4]
cmp rdi, rdx
jb 0x140023ac2
mov ecx, dword [rbp - 0x64]
add rax, 8
add rcx, rdx
cmp rax, rcx
jbe 0x140023a82
mov r15d, 0xc0000023
jmp 0x1400237ac
mov dword [rdx], 4
mov eax, dword [rbp + 0x1b0]
mov dword [rdi], eax
mov ecx, dword [rbp - 0x68]
inc ecx
mov dword [rbp - 0x68], ecx
cmp qword [rbp - 0x60], r14
jne 0x140023acd
mov dword [rbp + 0x198], 0xa4
mov eax, dword [rbp - 0x64]
lea edx, [rax + 0xa4]
cmp edx, eax
jb 0x140023ac2
inc ecx
mov dword [rbp - 0x64], edx
mov dword [rbp - 0x68], ecx
jmp 0x140023bc6
mov r15d, 0xc0000095
jmp 0x1400237ac
mov rdi, qword [rbp - 0x60]
mov edx, r14d
test ecx, ecx
je 0x140023b15
mov eax, dword [rdi]
add eax, 4
cmp eax, 4
jb 0x140023b05
mov dword [rbp + 0x198], eax
mov r8d, eax
add r8, rdi
cmp r8, rdi
jb 0x140023ac2
mov rdi, r8
mov r8d, 1
add edx, r8d
cmp edx, ecx
jae 0x140023b1b
jmp 0x140023ad8
mov r15d, 0xc0000095
mov dword [rsp + 0x60], r15d
jmp 0x140023bba
mov r8d, 1
lea rdx, [rdi + 4]
cmp rdx, rdi
jb 0x140023ac2
mov ecx, dword [rbp - 0x64]
lea rax, [rdi + 0xa4]
add rcx, qword [rbp - 0x60]
mov r15d, r14d
mov dword [rsp + 0x60], r14d
cmp rax, rcx
ja 0x140023a77
mov dword [rdi], LoadRegTypeLib
mov eax, 0x80
movups xmm0, xmmword [r12]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [r12 + 0x10]
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [r12 + 0x20]
movups xmmword [rdx + 0x20], xmm0
movups xmm1, xmmword [r12 + 0x30]
movups xmmword [rdx + 0x30], xmm1
movups xmm0, xmmword [r12 + 0x40]
movups xmmword [rdx + 0x40], xmm0
movups xmm1, xmmword [r12 + 0x50]
movups xmmword [rdx + 0x50], xmm1
movups xmm0, xmmword [r12 + 0x60]
movups xmmword [rdx + 0x60], xmm0
movups xmm1, xmmword [r12 + 0x70]
movups xmmword [rdx + rax - 0x10], xmm1
movups xmm0, xmmword [r12 + rax]
movups xmmword [rdx + rax], xmm0
movups xmm1, xmmword [r12 + rax + 0x10]
movups xmmword [rdx + rax + 0x10], xmm1
mov ecx, dword [rbp - 0x68]
add ecx, r8d
mov dword [rbp - 0x68], ecx
test r15d, r15d
js 0x140025ea9
mov edx, dword [rbp - 0x64]
cmp qword [rbp - 0x60], r14
jne 0x140023bff
mov dword [rbp + 0x178], SafeArrayGetDim
lea eax, [rdx + 0xc]
cmp eax, edx
jb 0x140023ac2
mov edx, eax
mov r13d, 1
mov rax, qword [rbp + 0x1c8]
add ecx, r13d
mov qword [rbp + 0x220], rax
jmp 0x140023ca2
mov rdi, qword [rbp - 0x60]
mov r8d, r14d
test ecx, ecx
je 0x140023c38
mov eax, dword [rdi]
add eax, 4
cmp eax, 4
jb 0x140023cc5
mov dword [rbp + 0x178], eax
mov r9d, eax
add r9, rdi
cmp r9, rdi
jb 0x140023ac2
inc r8d
mov rdi, r9
cmp r8d, ecx
jb 0x140023c0a
lea r8, [rdi + 4]
cmp r8, rdi
jb 0x140023ac2
mov ecx, edx
lea rax, [rdi + 0xc]
add rcx, qword [rbp - 0x60]
mov r15d, r14d
mov dword [rsp + 0x60], r14d
cmp rax, rcx
ja 0x140023a77
mov dword [rdi], 8
mov r10d, 0xc0000095
mov rax, qword [r13]
mov r13d, 1
mov qword [r8], rax
mov ecx, dword [rbp - 0x68]
mov edx, dword [rbp - 0x64]
add ecx, r13d
mov dword [rbp - 0x68], ecx
test r15d, r15d
js 0x140025ea9
mov rax, qword [rbp + 0x1c8]
mov qword [rbp + 0x220], rax
cmp qword [rbp - 0x60], r14
jne 0x140023cdb
mov dword [rbp + 0x168], SafeArrayGetDim
lea eax, [rdx + 0xc]
cmp eax, edx
jb 0x140023ac2
add ecx, r13d
mov dword [rbp - 0x64], eax
mov dword [rbp - 0x68], ecx
jmp 0x140023d51
mov r10d, 0xc0000095
mov r13d, 1
mov r15d, r10d
mov dword [rsp + 0x60], r10d
jmp 0x140023c85
mov rdi, qword [rbp - 0x60]
mov r8d, r14d
test ecx, ecx
je 0x140023d10
mov eax, dword [rdi]
add eax, 4
cmp eax, 4
jb 0x140023d8c
mov dword [rbp + 0x168], eax
mov r9d, eax
add r9, rdi
cmp r9, rdi
jb 0x140023d7f
add r8d, r13d
mov rdi, r9
cmp r8d, ecx
jb 0x140023ce6
lea r8, [rdi + 4]
cmp r8, rdi
jb 0x140023d7f
mov ecx, edx
lea rax, [rdi + 0xc]
add rcx, qword [rbp - 0x60]
mov r15d, r14d
mov dword [rsp + 0x60], r14d
cmp rax, rcx
ja 0x140023a77
mov dword [rdi], 8
mov rax, qword [rbp + 0x220]
mov qword [r8], rax
add dword [rbp - 0x68], r13d
test r15d, r15d
js 0x140025ea9
mov r12, qword [rbp + 0x18]
lea r8, [rbp + 0x110]
mov rcx, r12
mov edx, 0x7fffffff
call fcn.14004a288
test eax, eax
jns 0x140023d96
mov qword [rbp + 0x110], r14
mov r15d, 0xc000003e
jmp 0x140025ea4
mov r15d, r10d
mov dword [rsp + 0x60], r10d
jmp 0x1400237b1
mov r15d, r10d
mov dword [rsp + 0x60], r10d
jmp 0x140023d48
mov rax, qword [rbp + 0x110]
lea rcx, [rax + 1]
cmp rcx, rax
jb 0x140025e96
lea r8d, [rcx + rcx]
mov qword [rbp + 0x110], rcx
test r8d, r8d
je 0x140023ea1
cmp qword [rbp - 0x60], r14
jne 0x140023e20
add r8d, 4
cmp r8d, 4
jb 0x140023e0d
mov dword [rbp + 0x1b8], r8d
mov eax, dword [rbp - 0x64]
mov r10d, 0xc0000095
lea edi, [rax + r8]
cmp edi, eax
jb 0x140023dfa
add dword [rbp - 0x68], r13d
mov r15d, r14d
mov dword [rbp - 0x64], edi
mov dword [rsp + 0x60], r14d
jmp 0x140023eb5
or edi, 0xffffffff
mov dword [rsp + 0x60], r10d
mov dword [rbp - 0x64], edi
mov r15d, r10d
jmp 0x140023eb5
mov r10d, 0xc0000095
mov r15d, r10d
mov dword [rsp + 0x60], r10d
jmp 0x140023eb2
mov ecx, r14d
mov rdx, qword [rbp - 0x60]
cmp dword [rbp - 0x68], r14d
jbe 0x140023e50
mov eax, dword [rdx]
add eax, 4
cmp eax, 4
jb 0x140023e0d
mov dword [rbp + 0x1b8], eax
add rax, rdx
cmp rax, rdx
jb 0x140023e0d
add ecx, r13d
mov rdx, rax
cmp ecx, dword [rbp - 0x68]
jb 0x140023e2d
lea r9, [rdx + 4]
cmp r9, rdx
jb 0x140023e0d
mov edi, dword [rbp - 0x64]
lea rax, [r8 + 4]
mov ecx, edi
mov dword [rsp + 0x60], r14d
add rcx, qword [rbp - 0x60]
add rax, rdx
mov r10d, r8d
mov r15d, r14d
cmp rax, rcx
jbe 0x140023e8a
mov r15d, 0xc0000023
mov dword [rsp + 0x60], r15d
lea r10d, [r15 + 0x72]
jmp 0x140023eb5
mov dword [rdx], r8d
mov rcx, r9
mov r8, r10
mov rdx, r12
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
add dword [rbp - 0x68], r13d
jmp 0x140023eac
mov r15d, 0xc000000d
mov dword [rsp + 0x60], r15d
mov r10d, 0xc0000095
mov edi, dword [rbp - 0x64]
test r15d, r15d
js 0x140025ea9
mov eax, dword [rbp + 0x30]
mov dword [rbp + 0x170], eax
cmp qword [rbp - 0x60], r14
jne 0x140023ef7
mov dword [rbp + 0x164], 8
lea eax, [rdi + 8]
cmp eax, edi
jb 0x140025e8c
add dword [rbp - 0x68], r13d
mov edi, eax
mov dword [rbp + 0xe8], 4
jmp 0x140023f89
mov ecx, r14d
mov rdx, qword [rbp - 0x60]
cmp dword [rbp - 0x68], r14d
jbe 0x140023f32
mov eax, dword [rdx]
add eax, 4
cmp eax, 4
jb 0x140023fac
mov dword [rbp + 0x164], eax
mov r8d, eax
add r8, rdx
cmp r8, rdx
jb 0x140025e8c
add ecx, r13d
mov rdx, r8
cmp ecx, dword [rbp - 0x68]
jb 0x140023f04
lea r8, [rdx + 4]
cmp r8, rdx
jb 0x140025e8c
mov ecx, edi
lea rax, [rdx + 8]
add rcx, qword [rbp - 0x60]
mov r15d, r14d
mov dword [rsp + 0x60], r14d
cmp rax, rcx
ja 0x140025dee
mov dword [rdx], 4
mov eax, dword [rbp + 0x170]
mov dword [r8], eax
add dword [rbp - 0x68], r13d
mov edi, dword [rbp - 0x64]
test r15d, r15d
js 0x140025ea9
mov dword [rbp + 0xe8], 4
cmp qword [rbp - 0x60], r14
jne 0x140023fb6
mov dword [rbp + 0x158], 8
lea eax, [rdi + 8]
cmp eax, edi
jb 0x140025e8c
add dword [rbp - 0x68], r13d
mov edi, eax
mov dword [rbp - 0x64], eax
jmp 0x140024038
mov r15d, r10d
mov dword [rsp + 0x60], r10d
jmp 0x140023f70
mov ecx, r14d
mov rdx, qword [rbp - 0x60]
cmp dword [rbp - 0x68], r14d
jbe 0x140023ff1
mov eax, dword [rdx]
add eax, 4
cmp eax, 4
jb 0x1400240b5
mov dword [rbp + 0x158], eax
mov r8d, eax
add r8, rdx
cmp r8, rdx
jb 0x140025e8c
add ecx, r13d
mov rdx, r8
cmp ecx, dword [rbp - 0x68]
jb 0x140023fc3
lea r8, [rdx + 4]
cmp r8, rdx
jb 0x140025e8c
mov ecx, edi
lea rax, [rdx + 8]
add rcx, qword [rbp - 0x60]
mov r15d, r14d
mov dword [rsp + 0x60], r14d
cmp rax, rcx
ja 0x140025dee
mov dword [rdx], 4
mov eax, dword [rbp + 0xe8]
mov dword [r8], eax
add dword [rbp - 0x68], r13d
mov edi, dword [rbp - 0x64]
test r15d, r15d
js 0x140025ea9
mov dword [rbp + 0x258], 8
mov r8, r14
mov qword [rbp + 0x20], r14
mov r12d, r14d
mov qword [rbp + 0x120], r14
mov qword [rbp + 0x10], r14
mov r13, r14
mov dword [rbp - 0x58], r14d
mov qword [rbp - 0x18], r14
mov dword [rbp + 0x28], r14d
mov qword [rbp - 0x48], r14
mov qword [rbp - 0x80], r14
mov dword [rbp + 0xa0], r14d
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x2a8], rax
lea eax, [rdi + 8]
or ecx, 0xffffffff
cmp eax, 8
cmovae ecx, eax
sbb r15d, r15d
and r15d, r10d
cmp eax, 8
jb 0x140024186
mov eax, ecx
add rax, 7
and eax, 0xfffffff8
cmp eax, ecx
jae 0x1400240c2
mov r15d, r10d
jmp 0x140024186
mov r15d, r10d
mov dword [rsp + 0x60], r10d
jmp 0x14002402f
mov dword [rbp + 0xe0], eax
mov edi, eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
jne 0x140024103
mov r15d, 0xc0000017
mov r8, r14
jmp 0x140024186
mov eax, dword [rbp - 0x68]
lea rdx, [rdi + 4]
mov dword [rdi], eax
cmp rdx, rdi
jb 0x140024154
mov eax, dword [rbp - 0x64]
lea rcx, [rdx + 4]
mov dword [rdx], eax
cmp rcx, rdx
jb 0x140024154
mov edx, dword [rbp + 0xe0]
mov r15d, r14d
mov rax, qword [rbp + 0x2a8]
mov qword [rdx + rdi - 8], rax
mov r8d, dword [rbp - 0x64]
mov rdx, qword [rbp - 0x60]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r12d, dword [rbp + 0xe0]
mov r8, rdi
mov qword [rbp + 0x20], rdi
mov rdi, r14
jmp 0x14002415d
mov r8, r14
mov r15d, 0xc0000095
test rdi, rdi
je 0x140024186
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov r8, qword [rbp + 0x20]
or r15d, 0x10000000
mov dword [rsp + 0x60], r15d
jl 0x1400258f6
mov qword [rbp + 0x1d8], r14
test r8, r8
jne 0x1400241af
mov r15d, 0xc000000d
jmp 0x1400249c6
mov r15d, r12d
mov qword [rbp - 0x50], r15
test r12d, r12d
je 0x1400248dd
lea rdi, [r15 + 8]
mov qword [rbp - 8], rdi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov qword [rbp - 0x38], rax
test rax, rax
je 0x1400248dd
mov r8, qword [rbp + 0x20]
mov dl, r14b
mov byte [rsp + 0x64], dl
mov rcx, r14
test r12d, r12d
je 0x14002421c
mov edi, 1
xor dl, byte [r8 + rcx]
add rcx, rdi
cmp rcx, r15
jb 0x14002420c
mov byte [rsp + 0x64], dl
mov r12, rax
mov qword [rbp + 0x8a8], rbx
mov rax, r15
mov dword [rbp - 0x40], r14d
or r10d, 0xffffffff
mov dword [rbp - 0x70], r14d
mov r9d, r14d
and eax, 7
je 0x140024325
mov dword [rbp - 0x40], r14d
mov ecx, r14d
mov dword [rbp - 0x70], ecx
mov r11d, r14d
mov r10d, r14d
test eax, eax
je 0x1400242a0
mov esi, 1
lea r9d, [rsi + 0x37]
movzx edi, byte [r8]
inc r8
cmp r10d, 4
jge 0x14002427b
lea ecx, [r9 - 0x20]
shl edi, cl
mov ecx, dword [rbp - 0x70]
or ecx, edi
mov dword [rbp - 0x70], ecx
jmp 0x140024286
mov ecx, r9d
shl edi, cl
mov ecx, dword [rbp - 0x70]
or r11d, edi
add r10d, esi
sub r9d, 8
cmp r10d, eax
jl 0x14002425e
mov dword [rbp - 0x40], r11d
movabs rsi, 0x7f1137fab69605e
mov r9d, ecx
mov r10d, r11d
xor r9d, 0xb17a307a
xor r10d, 0x42f6b18d
mov ecx, r9d
mov edi, r10d
mov r11d, r14d
test eax, eax
je 0x1400242f9
lea rsi, [r12 + 1]
mov qword [rbp], rsi
cmp r11d, 4
jge 0x1400242d7
rol ecx, 8
mov esi, ecx
jmp 0x1400242dc
rol edi, 8
mov esi, edi
mov byte [r12], sil
inc r11d
mov rsi, qword [rbp]
mov r12, rsi
cmp r11d, eax
jl 0x1400242c1
movabs rsi, 0x7f1137fab69605e
cmp eax, 4
jbe 0x140024310
mov ecx, 8
sub ecx, eax
shl ecx, 3
shr r10d, cl
shl r10d, cl
jmp 0x140024325
mov r10d, r14d
jae 0x140024325
mov ecx, 4
sub ecx, eax
shl ecx, 3
shr r9d, cl
shl r9d, cl
mov r11, r15
shr r11, 3
test r11, r11
je 0x14002466a
movzx eax, word [rbp + 0x8aa]
lea rcx, [r8 + 2]
mov esi, dword [rbp - 0x40]
mov r13d, dword [rbp - 0x70]
movzx edx, word [rbp + 0x8ac]
mov dword [rbp - 0x30], eax
mov eax, dword [rbp + 0x8ac]
xor eax, ebx
movzx r14d, bx
add r12, 7
mov r15d, eax
mov qword [rbp + 0x18], r12
movzx r12d, word [rbp + 0x8aa]
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], rcx
mov ecx, dword [rbp + 0x8ac]
xor r10d, edi
mov eax, r10d
sub eax, r14d
xor eax, dword [rbp + 0x8ac]
xor eax, r8d
xor r9d, eax
xor ecx, r9d
mov eax, r9d
ror eax, 7
ror ecx, 0xf
imul ecx, r12d
mov r12d, dword [rbp + 0x8ac]
add ecx, eax
xor r10d, ecx
mov eax, r10d
ror eax, 0xa
lea ecx, [rbx + r10]
ror ecx, 9
imul ecx, edx
sub ecx, eax
movzx eax, word [rbp + 0x8ae]
xor r9d, ecx
mov ecx, edx
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, ebx
xor ecx, r10d
sub eax, ecx
xor r9d, eax
movzx eax, word [rbp + 0x8aa]
mov ecx, r9d
sub ecx, r14d
imul ecx, eax
mov eax, r9d
shr eax, 6
sub ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0x8ae]
mov eax, r10d
ror eax, 0xf
xor eax, edx
imul eax, r14d
xor r9d, eax
mov eax, r9d
not eax
ror eax, 3
add eax, ecx
imul eax, edx
xor r10d, eax
mov eax, r10d
sub eax, r14d
sub eax, r12d
xor r9d, eax
movzx eax, word [rbp + 0x8ae]
xor eax, r9d
mov ecx, r9d
imul eax, dword [rbp - 0x30]
ror ecx, 0xa
xor ecx, eax
xor r10d, ecx
mov ecx, r14d
xor ecx, r10d
mov eax, r10d
rol ecx, 6
imul ecx, edx
ror eax, 3
xor ecx, eax
xor r9d, ecx
movzx ecx, word [rbp + 0x8ae]
mov eax, r9d
ror eax, 0xf
sub eax, ecx
imul eax, r14d
xor r10d, eax
xor ecx, r10d
mov eax, r10d
imul ecx, r14d
shr eax, 1
xor ecx, eax
mov eax, r10d
xor r9d, ecx
shr eax, 0xf
mov ecx, r10d
sub ecx, edx
rol ecx, 3
imul ecx, r14d
xor ecx, eax
movzx eax, word [rbp + 0x8aa]
xor r9d, ecx
mov ecx, r9d
sub ecx, edx
imul ecx, eax
mov eax, r9d
shr eax, 0xd
sub ecx, eax
xor r10d, ecx
mov ecx, ebx
sub ecx, r10d
mov eax, r10d
ror ecx, 9
imul ecx, edx
ror eax, 0xb
xor ecx, eax
xor r9d, ecx
movzx ecx, word [rbp + 0x8ae]
mov eax, r9d
sub eax, ebx
sub eax, ecx
xor r10d, eax
movzx eax, word [rbp + 0x8aa]
xor eax, r10d
mov ecx, r10d
ror ecx, 7
imul eax, r14d
sub eax, ecx
movzx ecx, word [rbp + 0x8ae]
xor r9d, eax
movzx eax, word [rbp + 0x8aa]
xor ecx, r9d
rol ecx, 4
imul ecx, eax
mov eax, r9d
ror eax, 0x10
sub ecx, eax
xor r10d, ecx
mov ecx, ebx
sub ecx, r10d
mov eax, r10d
ror ecx, 0xa
imul ecx, edx
ror eax, 4
add ecx, eax
xor r9d, ecx
movzx eax, word [rbp + 0x8ae]
mov ecx, r9d
sub ecx, ebx
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, r14d
rol eax, 2
sub ecx, eax
xor r9d, ecx
mov ecx, r12d
movzx r12d, word [rbp + 0x8aa]
sub ecx, r9d
ror ecx, 0xb
mov eax, r9d
imul ecx, r12d
ror eax, 0xc
sub ecx, eax
xor r10d, ecx
mov ecx, r12d
xor ecx, r10d
mov eax, r10d
xor r10d, r15d
shr eax, 8
imul ecx, edx
xor ecx, eax
mov rax, qword [rbp + 0x18]
xor r9d, ecx
mov rcx, qword [rbp]
xor r10d, r9d
xor r9d, r13d
xor r10d, esi
mov r13d, r8d
mov byte [rax - 4], r9b
mov esi, edi
mov byte [rax], r10b
ror r9d, 8
mov byte [rax - 5], r9b
ror r10d, 8
mov byte [rax - 1], r10b
ror r9d, 8
mov byte [rax - 6], r9b
ror r10d, 8
mov byte [rax - 2], r10b
ror r9d, 8
ror r10d, 8
mov byte [rax - 7], r9b
mov byte [rax - 3], r10b
add rax, 8
ror r10d, 8
ror r9d, 8
mov qword [rbp + 0x18], rax
sub r11, 1
jne 0x140024370
mov dl, byte [rsp + 0x64]
xor r14d, r14d
mov r15, qword [rbp - 0x50]
mov r13d, r14d
movabs rsi, 0x7f1137fab69605e
mov r12, qword [rbp - 0x38]
movzx eax, dl
mov qword [r12 + r15], rax
mov r15, qword [rbp - 8]
mov qword [rbp + 0x428], r15
mov qword [rbp + 0x1d8], r12
lea rax, [0x1400b36c0]
mov qword [rbp + 0x380], 8
mov qword [rbp + 0x430], rax
lea rax, [0x1400b3620]
mov qword [rbp + 0x390], LoadRegTypeLib
mov qword [rbp + 0x388], rax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 0x28]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
jne 0x1400246f0
mov r15d, 0xc0000017
jmp 0x1400248cc
mov r15d, r15d
mov dword [rax], r15d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, r15d
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
jne 0x140024729
mov r15d, 0xc0000017
jmp 0x14002481c
mov qword [rdi + 8], rax
mov r8, r15
mov rdx, r12
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r15d, LoadRegTypeLib
mov dword [rdi + 0x10], r15d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, r15d
mov r15d, 8
mov edx, r15d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov rcx, rax
test rax, rax
je 0x14002471e
mov qword [rdi + 0x18], rax
lea rax, [0x1400b3620]
movups xmm0, xmmword [rax]
lea edx, [r15 + 0x78]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx + rdx - 0x10], xmm1
movups xmm0, xmmword [rax + rdx]
movups xmmword [rcx + rdx], xmm0
movups xmm1, xmmword [rax + rdx + 0x10]
movups xmmword [rcx + rdx + 0x10], xmm1
mov dword [rdi + 0x20], r15d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, r15d
mov edx, r15d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov rcx, rax
test rax, rax
je 0x14002471e
mov qword [rdi + 0x28], rax
mov rax, qword [0x1400b36c0]
mov r13, rdi
mov qword [rcx], rax
mov r15d, r14d
mov rdi, r14
test rdi, rdi
je 0x1400248cc
mov r12, qword [rdi + 8]
test r12, r12
je 0x140024852
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rdi + 8], r14
mov r12, qword [rdi + 0x18]
test r12, r12
je 0x14002487f
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rdi + 0x18], r14
mov r12, qword [rdi + 0x28]
test r12, r12
je 0x1400248ac
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rdi + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test r15d, r15d
js 0x1400248e3
mov qword [rbp + 0x120], r13
mov r13, r14
jmp 0x1400248e3
mov r15d, 0xc0000001
mov rdi, qword [rbp + 0x1d8]
test rdi, rdi
je 0x140024916
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x1d8], r14
test r13, r13
je 0x1400249c6
mov rdi, qword [r13 + 8]
test rdi, rdi
je 0x14002494c
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [r13 + 8], r14
mov rdi, qword [r13 + 0x18]
test rdi, rdi
je 0x140024979
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [r13 + 0x18], r14
mov rdi, qword [r13 + 0x28]
test rdi, rdi
je 0x1400249a6
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [r13 + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov r13d, 0x10000000
or r15d, r13d
mov dword [rsp + 0x60], r15d
jl 0x140024dc3
mov r12, qword [rbp + 0x120]
mov ecx, dword [r12]
mov edi, dword [r12 + 0x20]
add ecx, 4
mov edx, dword [r12 + 0x10]
cmp ecx, 4
jb 0x140024b42
lea eax, [rcx + 4]
cmp eax, ecx
jb 0x140024b42
lea ecx, [rax + rdx]
cmp ecx, eax
jb 0x140024b42
lea eax, [rcx + 4]
cmp eax, ecx
jb 0x140024b42
lea ecx, [rax + rdi]
cmp ecx, eax
jb 0x140024b42
mov dword [rbp + 0x154], ecx
mov edi, ecx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
jne 0x140024a6b
mov r15d, 0xc0000017
mov r8d, 0xc0000095
jmp 0x140024b4b
mov eax, dword [r12]
lea r15, [rdi + 4]
mov dword [rdi], eax
cmp r15, rdi
jb 0x140024b0e
mov r8d, dword [r12]
mov rcx, r15
mov rdx, qword [r12 + 8]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov ecx, dword [r12]
add rcx, r15
cmp rcx, r15
jb 0x140024b0e
mov eax, dword [r12 + 0x10]
lea r15, [rcx + 4]
mov dword [rcx], eax
cmp r15, rcx
jb 0x140024b0e
mov r8d, dword [r12 + 0x10]
mov rcx, r15
mov rdx, qword [r12 + 0x18]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov ecx, dword [r12 + 0x10]
add rcx, r15
cmp rcx, r15
jb 0x140024b0e
mov eax, dword [r12 + 0x20]
lea r15, [rcx + 4]
mov dword [rcx], eax
cmp r15, rcx
jb 0x140024b0e
mov r8d, dword [r12 + 0x20]
mov rcx, r15
mov rdx, qword [r12 + 0x28]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, dword [r12 + 0x20]
add rax, r15
cmp rax, r15
jb 0x140024b0e
mov eax, dword [rbp + 0x154]
mov r15d, r14d
mov qword [rbp + 0x10], rdi
mov rdi, r14
mov dword [rbp - 0x58], eax
jmp 0x140024b14
mov r15d, 0xc0000095
test rdi, rdi
je 0x140024a60
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
jmp 0x140024a60
mov r8d, 0xc0000095
mov r15d, r8d
or r15d, r13d
mov dword [rsp + 0x60], r15d
jl 0x140024dc3
mov dword [rbp + 0x150], r14d
mov dword [rbp + 0x25c], 0x3c
mov eax, 0x48
mov dword [rbp + 0x260], eax
mov dword [rbp + 0x264], eax
lea r12d, [rax - 0x47]
cmp qword [rbp - 0x60], r14
jne 0x140024b95
mov r15d, 0xc000000d
mov dword [rsp + 0x60], r15d
jmp 0x140024c76
cmp dword [rbp - 0x68], r12d
jbe 0x140024b85
mov rax, qword [rbp - 0x60]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x140024c6e
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x140024c6e
add edx, r12d
cmp edx, r12d
jb 0x140024ba2
mov edi, dword [rax]
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x140024c6e
test edi, edi
mov dword [rbp + 0x150], edi
mov rax, r14
cmovne rax, rcx
mov qword [rbp + 0x398], rax
cmp dword [rbp - 0x68], 2
jbe 0x140024b85
mov rax, qword [rbp - 0x60]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x140024c6e
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x140024c6e
add edx, r12d
cmp edx, 2
jb 0x140024bf7
mov edx, dword [rax]
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x140024c6e
test edx, edx
mov dword [rbp + 0x268], edx
mov rax, r14
cmovne rax, rcx
mov qword [rbp + 0x3a0], rax
lea eax, [rdi + 0x50]
cmp eax, 0x50
jb 0x140024c6e
lea ecx, [rax + 4]
cmp ecx, eax
jb 0x140024c6e
lea eax, [rcx + rdx]
cmp eax, ecx
jb 0x140024c6e
mov dword [rbp + 0x26c], eax
mov dword [rsp + 0x60], r14d
mov r15d, r14d
cmp eax, 0x400000
jbe 0x140024c69
mov r15d, 0x8000ffff
jmp 0x140024dbe
mov dword [rbp + 0x28], eax
jmp 0x140024c76
mov r15d, r8d
mov dword [rsp + 0x60], r8d
test r15d, r15d
js 0x140024dc3
mov edi, dword [rbp + 0x28]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
jne 0x140024cb5
mov r15d, 0xd0000017
mov rdi, r14
jmp 0x140024cbf
mov rdi, rax
mov qword [rbp - 0x18], rax
mov r15d, r13d
mov dword [rsp + 0x60], r15d
test r15d, r15d
js 0x140024dc3
mov rax, qword [rbp + 0x10]
test rax, rax
jne 0x140024ce1
mov r15d, 0x80070057
jmp 0x140024dbe
test rdi, rdi
je 0x140024cd6
mov qword [rbp + 0x340], rax
lea r8, [rbp + 0x2b0]
mov eax, dword [rbp - 0x58]
lea rdx, [0x140088998]
mov dword [rbp + 0x350], eax
mov ecx, r12d
mov eax, dword [rbp + 0x28]
mov dword [rbp + 0x354], eax
mov qword [rbp + 0x348], rdi
mov dword [rbp + 0x358], r14d
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
jne 0x140024d60
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov edx, dword [rbp + 0x28]
movzx r15d, ax
or r15d, 0x80070000
test eax, eax
cmovle r15d, eax
mov dword [rsp + 0x60], r15d
test r15d, r15d
js 0x140024daf
mov r15d, 0x80004005
jmp 0x140024daa
mov rcx, qword [rbp + 0x2b0]
lea rdx, str.NtQuerySystemInformation
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x140024d2e
xor r9d, r9d
lea rdx, [rbp + 0x340]
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call qword [case.0x140067cae.0]
mov edx, dword [rbp + 0x28]
mov r15d, eax
or r15d, r13d
cmovge edx, dword [rbp + 0x354]
mov dword [rbp + 0x28], edx
mov dword [rsp + 0x60], r15d
cmp r15d, 0xd0000023
jne 0x140024dcb
mov r15d, 0x8007007a
mov dword [rsp + 0x60], r15d
mov r13, r14
jmp 0x1400258f6
test r15d, r15d
js 0x140024dc3
mov qword [rbp + 0x18], r14
cmp edx, 4
jae 0x140024de4
mov r15d, 0xc000003e
jmp 0x140025191
mov r13d, dword [rdi]
lea rcx, [rdi + 4]
cmp rcx, rdi
jb 0x14002518b
lea eax, [rdx - 4]
cmp eax, r13d
jb 0x140024dd9
lea rdi, [rcx + r13]
cmp rdi, rcx
jb 0x14002518b
lea ecx, [r13 + 4]
cmp ecx, 4
jb 0x14002518b
mov eax, edx
sub eax, ecx
cmp eax, 4
jb 0x140024dd9
mov r15d, dword [rdi]
lea r8, [rdi + 4]
mov qword [rbp - 0x50], r8
cmp r8, rdi
jb 0x14002518b
lea edi, [rcx + 4]
cmp edi, ecx
jb 0x14002518b
mov eax, edx
sub eax, edi
cmp eax, r15d
jb 0x140024dd9
lea rcx, [r8 + r15]
cmp rcx, r8
jb 0x14002518b
lea r8d, [r15 + rdi]
cmp r8d, edi
jb 0x14002518b
mov eax, edx
sub eax, r8d
cmp eax, 4
jb 0x140024dd9
mov r12d, dword [rcx]
lea rax, [rcx + 4]
mov qword [rbp - 0x38], rax
cmp rax, rcx
jb 0x14002518b
lea ecx, [r8 + 4]
cmp ecx, r8d
jb 0x14002518b
mov eax, edx
sub eax, ecx
cmp eax, r12d
jb 0x140024dd9
lea edi, [r12 + rcx]
cmp edi, ecx
jb 0x14002518b
cmp edx, edi
jne 0x140024dd9
lea ecx, [r12 + r15]
mov eax, edx
add ecx, r13d
add rcx, 0xc
cmp rcx, rax
jne 0x140024dd9
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 0x28]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
jne 0x140024efe
mov r15d, 0xc0000017
jmp 0x1400250be
mov rax, qword [rbp - 0x18]
add rax, 4
je 0x140024f57
mov dword [rdi], r13d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov rcx, rax
test rax, rax
jne 0x140024f41
mov r15d, 0xc0000017
jmp 0x14002500e
mov qword [rdi + 8], rcx
mov rdx, qword [rbp - 0x18]
mov r8, r13
add rdx, 4
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x140024f5e
mov dword [rdi], r14d
mov qword [rdi + 8], r14
mov r13, qword [rbp - 0x50]
test r13, r13
je 0x140024fa7
mov dword [rdi + 0x10], r15d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r15
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
je 0x140024f36
mov qword [rdi + 0x18], rax
mov r8, r15
mov rdx, r13
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x140024faf
mov dword [rdi + 0x10], r14d
mov qword [rdi + 0x18], r14
mov r13, qword [rbp - 0x38]
test r13, r13
je 0x140024ffc
mov dword [rdi + 0x20], r12d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
je 0x140024f36
mov qword [rdi + 0x28], rax
mov r8, r12
mov rdx, r13
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x140025004
mov dword [rdi + 0x20], r14d
mov qword [rdi + 0x28], r14
mov qword [rbp + 0x18], rdi
mov r15d, r14d
mov rdi, r14
test rdi, rdi
je 0x1400250be
mov r12, qword [rdi + 8]
test r12, r12
je 0x140025044
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rdi + 8], r14
mov r12, qword [rdi + 0x18]
test r12, r12
je 0x140025071
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rdi + 0x18], r14
mov r12, qword [rdi + 0x28]
test r12, r12
je 0x14002509e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rdi + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov r13, qword [rbp + 0x18]
test r15d, r15d
mov rdi, r14
cmovs rdi, qword [rbp + 0x18]
cmovs r13, r14
mov qword [rbp - 0x48], r13
test rdi, rdi
je 0x140025194
mov r12, qword [rdi + 8]
test r12, r12
je 0x14002510b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rdi + 8], r14
mov r12, qword [rdi + 0x18]
test r12, r12
je 0x140025138
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rdi + 0x18], r14
mov r12, qword [rdi + 0x28]
test r12, r12
je 0x140025165
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rdi + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp - 0x48], r13
jmp 0x140025194
mov r15d, 0xc0000095
mov r13, r14
or r15d, 0x10000000
mov dword [rsp + 0x60], r15d
jl 0x1400258f6
mov qword [rbp + 0xc8], r14
mov rdi, r14
mov r12, r14
test r13, r13
jne 0x1400251c8
mov r15d, 0xd000000d
mov dword [rsp + 0x60], r15d
jmp 0x1400258f6
mov rax, qword [r13 + 8]
mov qword [rbp + 0x18], rax
test rax, rax
je 0x1400251b8
cmp dword [r13], r14d
je 0x1400251b8
mov r15d, dword [r13]
mov dword [rbp - 0x30], r14d
test r15, r15
je 0x14002572e
add r15, 0xfffffffffffffff8
mov qword [rbp - 0x50], r15
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov qword [rbp - 0x38], rax
mov r13, rax
test rax, rax
je 0x140025727
mov r8, qword [rbp + 0x18]
mov rdi, r15
mov qword [rbp + 0x8b0], rsi
mov dl, r14b
mov byte [rsp + 0x64], dl
mov r11d, r14d
mov r10d, r14d
and edi, 7
je 0x140025340
mov dword [rbp - 0x40], r14d
mov ecx, r14d
mov dword [rbp - 0x70], ecx
test edi, edi
je 0x1400252a1
mov ebx, 1
lea r9d, [rbx + 0x37]
movzx eax, byte [r8]
inc r8
cmp r10d, 4
jge 0x14002527c
lea ecx, [r9 - 0x20]
shl eax, cl
mov ecx, dword [rbp - 0x70]
or ecx, eax
mov dword [rbp - 0x70], ecx
jmp 0x140025287
mov ecx, r9d
shl eax, cl
mov ecx, dword [rbp - 0x70]
or r11d, eax
add r10d, ebx
sub r9d, 8
cmp r10d, edi
jl 0x14002525f
mov dword [rbp - 0x40], r11d
movabs rbx, 0xc81ecb17b1b54a58
mov r10d, ecx
xor r11d, 0x699a899c
xor r10d, 0x92f65a5
mov ecx, r11d
mov eax, r10d
mov r9d, r14d
test edi, edi
je 0x14002530f
mov rbx, r13
mov edx, 1
lea rsi, [rbx + 1]
mov qword [rbp], rsi
cmp r9d, 4
jge 0x1400252dc
rol eax, 8
mov esi, eax
jmp 0x1400252e1
rol ecx, 8
mov esi, ecx
mov byte [rbx], sil
add r9d, edx
mov rsi, qword [rbp]
mov rbx, rsi
cmp r9d, edi
jl 0x1400252c7
mov rax, rsi
mov dl, r12b
movabs rsi, 0x7f1137fab69605e
movabs rbx, 0xc81ecb17b1b54a58
jmp 0x140025312
mov rax, r13
cmp edi, 4
jbe 0x140025329
mov ecx, 8
sub ecx, edi
shl ecx, 3
shr r11d, cl
shl r11d, cl
jmp 0x140025348
mov r11d, r14d
jae 0x140025348
mov ecx, 4
sub ecx, edi
shl ecx, 3
shr r10d, cl
shl r10d, cl
jmp 0x140025348
or dword [rbp - 0x40], 0xffffffff
mov dword [rbp - 0x70], r14d
mov rcx, r15
shr rcx, 3
mov qword [rbp], rcx
test rcx, rcx
je 0x140025690
movzx edx, word [rbp + 0x8b2]
lea r15, [rax + 7]
mov r13d, dword [rbp + 0x8b4]
lea r14, [r8 + 2]
mov rbx, qword [rbp]
mov r12d, dword [rbp - 0x40]
mov dword [rbp - 0x78], edx
movzx edx, si
movzx ecx, r13w
mov dword [rsp + 0x70], edx
mov edx, dword [rbp - 0x70]
mov dword [rsp + 0x74], ecx
movzx eax, byte [r14 - 1]
movzx r9d, byte [r14 - 2]
movzx r8d, byte [r14 + 2]
shl r9d, 8
or r9d, eax
shl r8d, 8
movzx eax, byte [r14]
lea r14, [r14 + 8]
shl r9d, 8
or r9d, eax
movzx eax, byte [r14 - 7]
shl r9d, 8
or r9d, eax
movzx eax, byte [r14 - 5]
or r8d, eax
xor r10d, r9d
movzx eax, byte [r14 - 4]
shl r8d, 8
or r8d, eax
movzx eax, byte [r14 - 3]
shl r8d, 8
or r8d, eax
xor r11d, r8d
xor r11d, r10d
xor r11d, r13d
xor r11d, esi
mov eax, r11d
mov edi, r11d
sub eax, esi
rol r11d, 0xa
rol eax, 5
imul eax, ecx
add eax, r11d
mov r11d, dword [rsp + 0x74]
xor r10d, eax
movzx eax, word [rbp + 0x8b2]
lea ecx, [r10 + r13]
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 [rsp + 0x70]
sub ecx, eax
movzx eax, word [rbp + 0x8b6]
xor r10d, ecx
movzx ecx, word [rbp + 0x8b2]
xor ecx, r10d
rol ecx, 6
imul ecx, eax
mov eax, r10d
rol eax, 2
sub ecx, eax
mov eax, r13d
xor edi, ecx
mov ecx, edi
xor ecx, esi
sub eax, ecx
xor r10d, eax
mov eax, r10d
mov ecx, r10d
ror ecx, 6
xor eax, r11d
imul eax, dword [rbp - 0x78]
xor ecx, eax
xor edi, ecx
mov eax, edi
rol eax, 2
lea ecx, [rdi + r13]
ror ecx, 0xf
imul ecx, dword [rsp + 0x70]
add ecx, eax
xor r10d, ecx
mov ecx, r10d
sub ecx, esi
ror ecx, 0xe
movzx eax, word [rbp + 0x8b6]
imul ecx, eax
mov eax, r10d
rol eax, 8
sub ecx, eax
xor edi, ecx
mov ecx, edi
mov eax, edi
xor ecx, esi
ror eax, 0xa
ror ecx, 0xc
imul ecx, r11d
xor ecx, eax
movzx eax, word [rbp + 0x8b2]
xor r10d, ecx
movzx ecx, word [rbp + 0x8b6]
xor ecx, r10d
imul ecx, eax
mov eax, r10d
shr eax, 0xa
xor ecx, eax
xor edi, ecx
movzx ecx, word [rbp + 0x8b6]
mov eax, edi
not eax
ror eax, 5
add eax, dword [rsp + 0x70]
imul eax, ecx
xor r10d, eax
mov r11d, r10d
sub r11d, ecx
xor r11d, edi
mov edi, dword [rsp + 0x74]
xor r11d, esi
xor ecx, r11d
mov eax, r11d
rol ecx, 2
imul ecx, edi
shr eax, 2
add ecx, eax
movzx eax, word [rbp + 0x8b2]
xor r10d, ecx
mov ecx, r10d
sub ecx, r13d
ror ecx, 6
imul ecx, eax
mov eax, r10d
rol eax, 7
add ecx, eax
xor r11d, ecx
mov eax, r11d
mov ecx, r11d
ror ecx, 9
xor eax, edi
imul eax, dword [rsp + 0x70]
add ecx, eax
movzx eax, word [rbp + 0x8b6]
xor r10d, ecx
movzx ecx, word [rbp + 0x8b2]
xor ecx, r10d
rol ecx, 5
imul ecx, eax
mov eax, r10d
rol eax, 7
add ecx, eax
xor r11d, ecx
movzx ecx, word [rbp + 0x8b2]
xor r10d, r11d
xor r10d, esi
xor r10d, r13d
mov eax, r10d
ror eax, 3
sub eax, ecx
imul eax, edi
xor r11d, eax
mov ecx, r11d
mov eax, r11d
sub ecx, r13d
ror ecx, 1
imul ecx, dword [rsp + 0x70]
ror eax, 6
sub ecx, eax
movzx eax, word [rbp + 0x8b6]
xor r10d, ecx
lea ecx, [r10 + rsi]
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 + rsi]
rol ecx, 0xf
imul ecx, edi
mov edi, 1
sub ecx, eax
movzx eax, word [rbp + 0x8b2]
xor r10d, ecx
mov ecx, r10d
xor ecx, dword [rsp + 0x70]
imul ecx, eax
mov eax, r10d
shr eax, 3
xor ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
xor r11d, r12d
rol eax, 2
xor ecx, r13d
mov r12d, r8d
rol ecx, 4
imul ecx, dword [rsp + 0x70]
xor ecx, eax
xor ecx, edx
mov edx, r9d
xor r10d, ecx
mov ecx, dword [rsp + 0x74]
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, rdi
jne 0x14002538f
mov dl, byte [rsp + 0x64]
xor r14d, r14d
mov r15, qword [rbp - 0x50]
mov r12d, r14d
mov r13, qword [rbp - 0x38]
movabs rbx, 0xc81ecb17b1b54a58
jmp 0x140025695
mov edi, 1
mov rax, r14
test r15, r15
je 0x1400256a9
xor dl, byte [rax + r13]
add rax, rdi
cmp rax, r15
jb 0x14002569d
mov rcx, qword [rbp + 0x18]
movzx eax, dl
cmp rax, qword [r15 + rcx]
je 0x1400256c5
mov rdi, qword [rbp + 0xc8]
mov r15d, 0xc004d501
jmp 0x1400256d9
mov rdi, r13
mov qword [rbp + 0xc8], r13
mov r12, r15
mov r13, r14
mov r15d, dword [rbp - 0x30]
test r13, r13
je 0x140025705
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov rdi, qword [rbp + 0xc8]
test r15d, r15d
js 0x14002572e
mov qword [rbp - 0x80], rdi
mov r15d, 0x10000000
mov rdi, r14
mov qword [rbp + 0xc8], r14
mov dword [rbp + 0xa0], r12d
jmp 0x14002573b
mov rdi, qword [rbp + 0xc8]
mov r12d, dword [rbp + 0xa0]
mov r15d, 0xd0000001
mov dword [rsp + 0x60], r15d
test rdi, rdi
je 0x140025773
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov r12d, dword [rbp + 0xa0]
mov qword [rbp + 0xc8], r14
test r15d, r15d
js 0x1400258f2
cmp r12d, 4
jae 0x14002578d
mov r15d, 0xc000003e
jmp 0x1400258e8
mov r8, qword [rbp - 0x80]
mov r9d, dword [r8]
lea rcx, [r8 + 4]
mov dword [rbp - 0x78], r9d
cmp rcx, r8
jb 0x1400258e2
lea eax, [r12 - 4]
cmp eax, 4
jb 0x140025782
mov r15d, dword [rcx]
lea rdi, [rcx + 4]
cmp rdi, rcx
jb 0x1400258e2
lea eax, [r12 - 8]
cmp eax, r15d
jb 0x140025782
lea eax, [r15 + 8]
cmp eax, 8
jb 0x1400258e2
mov ecx, r12d
lea rdx, [rdi + r15]
lea rax, [r8 + rcx]
cmp rax, rdx
jb 0x140025782
mov rax, r8
sub rax, r15
sub rax, rdi
add rax, rcx
cmp rax, 8
jae 0x140025782
mov dword [rbp - 0x58], r14d
mov r12, r14
mov r8d, r14d
test rdi, rdi
je 0x140025874
mov rcx, rdi
cmp rdx, rdi
jb 0x1400258e2
jbe 0x14002586f
lea rax, [rcx + 4]
cmp rax, rcx
jb 0x1400258e2
cmp rax, rdx
ja 0x14002585c
mov eax, dword [rcx]
add eax, 4
cmp eax, 4
jb 0x140025867
mov dword [rbp + 0x270], eax
mov r9d, eax
add r9, rcx
cmp r9, rcx
jb 0x1400258e2
mov rcx, r9
cmp r9, rdx
ja 0x14002585c
inc r8d
mov dword [rbp - 0x58], r8d
cmp rcx, rdx
jae 0x140025872
jmp 0x140025815
mov r15d, 0xc000000d
jmp 0x1400258e8
mov r15d, 0xc0000095
jmp 0x1400258d0
cmp rcx, rdx
jne 0x14002585c
test r15d, r15d
je 0x1400258ac
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r15
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov r12, rax
test rax, rax
jne 0x1400258ac
mov r15d, 0xc0000017
jmp 0x1400258d0
test rdi, rdi
je 0x1400258bf
mov r8, r15
mov rdx, rdi
mov rcx, r12
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, dword [rbp - 0x58]
mov dword [rbp + 0x60], eax
mov qword [rbp + 0x68], r12
mov dword [rbp + 0x64], r15d
mov r15d, r14d
test r15d, r15d
js 0x1400258e8
mov eax, dword [rbp - 0x78]
cmp eax, dword [rbp + 0x60]
je 0x1400258e8
jmp 0x140025782
mov r15d, 0xc0000095
bts r15d, 0x1c
mov dword [rsp + 0x60], r15d
mov r13, qword [rbp - 0x48]
mov rdi, qword [rbp + 0x20]
test rdi, rdi
je 0x14002591f
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov r12, qword [rbp + 0x120]
test r12, r12
je 0x1400259e3
mov rdi, qword [r12 + 8]
test rdi, rdi
je 0x14002595e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [r12 + 8], r14
mov rdi, qword [r12 + 0x18]
test rdi, rdi
je 0x14002598d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [r12 + 0x18], r14
mov rdi, qword [r12 + 0x28]
test rdi, rdi
je 0x1400259bc
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [r12 + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x120], r14
mov rdi, qword [rbp + 0x10]
test rdi, rdi
je 0x140025a0c
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov rdi, qword [rbp - 0x18]
test rdi, rdi
je 0x140025a35
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test r13, r13
je 0x140025ae5
mov rdi, qword [r13 + 8]
test rdi, rdi
je 0x140025a6b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [r13 + 8], r14
mov rdi, qword [r13 + 0x18]
test rdi, rdi
je 0x140025a98
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [r13 + 0x18], r14
mov rdi, qword [r13 + 0x28]
test rdi, rdi
je 0x140025ac5
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [r13 + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov rdi, qword [rbp - 0x80]
test rdi, rdi
je 0x140025b0e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test r15d, r15d
js 0x140025ea9
mov r8d, 1
cmp dword [rbp + 0x60], r8d
jb 0x140025e24
cmp qword [rbp + 0x68], r14
jne 0x140025b40
mov r15d, 0xc000000d
mov dword [rsp + 0x60], r15d
mov r10d, 0xc0000095
jmp 0x140025b91
cmp dword [rbp + 0x60], r14d
jbe 0x140025b2d
mov rdi, qword [rbp + 0x68]
mov ecx, dword [rdi]
lea rdx, [rdi + 4]
cmp rdx, rdi
jb 0x140025b83
test ecx, ecx
mov dword [rbp + 0x274], ecx
mov rax, r14
cmovne rax, rdx
mov qword [rbp + 0x3a8], rax
mov dword [rsp + 0x60], r14d
mov r15d, r14d
cmp ecx, 4
jne 0x140025dee
mov eax, dword [rax]
mov dword [rbp + 0x5c], eax
jmp 0x140025b38
mov r10d, 0xc0000095
mov r15d, r10d
mov dword [rsp + 0x60], r10d
test r15d, r15d
js 0x140025ea9
mov r15d, dword [rbp + 0x5c]
mov r11d, 0x8007007a
cmp r15d, 0xd0000023
cmove r15d, r11d
mov dword [rsp + 0x60], r15d
mov dword [rbp + 0x5c], r15d
cmp r15d, r11d
je 0x140025bc6
test r15d, r15d
js 0x140025ea9
cmp dword [rbp + 0x60], 6
jne 0x140025e24
cmp qword [rbp + 0x68], r14
jne 0x140025be3
mov r15d, 0xc000000d
mov dword [rsp + 0x60], r15d
jmp 0x140025c4b
mov rax, qword [rbp + 0x68]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x140025c43
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x140025c43
add edx, r8d
cmp edx, r8d
jb 0x140025bea
mov ecx, dword [rax]
lea rdx, [rax + 4]
cmp rdx, rax
jb 0x140025c43
test ecx, ecx
mov dword [rbp + 0x278], ecx
mov rax, r14
cmovne rax, rdx
mov qword [rbp + 0x3b0], rax
mov dword [rsp + 0x60], r14d
mov r15d, r14d
cmp ecx, 8
jne 0x140025dee
mov rax, qword [rax]
mov qword [rbp + 0x2b8], rax
jmp 0x140025c4b
mov r15d, r10d
mov dword [rsp + 0x60], r10d
test r15d, r15d
js 0x140025ea9
cmp qword [rbp + 0x68], r14
jne 0x140025c67
mov r15d, 0xc000000d
mov dword [rsp + 0x60], r15d
jmp 0x140025ccd
mov rax, qword [rbp + 0x68]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x140025cc5
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x140025cc5
add edx, r8d
cmp edx, 2
jb 0x140025c6e
mov ecx, dword [rax]
lea rdx, [rax + 4]
cmp rdx, rax
jb 0x140025cc5
test ecx, ecx
mov dword [rbp + 0x27c], ecx
mov rax, r14
cmovne rax, rdx
mov qword [rbp + 0x3b8], rax
mov dword [rsp + 0x60], r14d
mov r15d, r14d
cmp ecx, 4
jne 0x140025dee
mov eax, dword [rax]
mov dword [rbp + 0x1f0], eax
jmp 0x140025ccd
mov r15d, r10d
mov dword [rsp + 0x60], r10d
test r15d, r15d
js 0x140025ea9
cmp qword [rbp + 0x68], r14
jne 0x140025ce7
mov r15d, 0xc000000d
jmp 0x140025ea4
mov rax, qword [rbp + 0x68]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x140025e8c
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x140025e8c
add edx, r8d
cmp edx, 3
jb 0x140025cee
mov edi, dword [rax]
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x140025e8c
test edi, edi
mov dword [rbp + 0x280], edi
mov r9, r14
cmovne r9, rcx
mov qword [rbp + 0x3c0], r9
mov rax, qword [rbp + 0x68]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x140025d90
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x140025d90
add edx, r8d
cmp edx, 4
jb 0x140025d3d
mov ecx, dword [rax]
lea rdx, [rax + 4]
cmp rdx, rax
jb 0x140025d90
test ecx, ecx
mov dword [rbp + 0x284], ecx
mov rax, r14
cmovne rax, rdx
mov qword [rbp + 0x3c8], rax
mov dword [rsp + 0x60], r14d
mov r15d, r14d
cmp ecx, 4
jne 0x140025dee
mov eax, dword [rax]
mov dword [rbp + 0x160], eax
jmp 0x140025d98
mov r15d, r10d
mov dword [rsp + 0x60], r10d
test r15d, r15d
js 0x140025ea9
mov rax, qword [rbp + 0x68]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x140025e03
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x140025e03
add edx, r8d
cmp edx, 5
jb 0x140025da8
mov ecx, dword [rax]
lea rdx, [rax + 4]
cmp rdx, rax
jb 0x140025e03
test ecx, ecx
mov dword [rbp + 0x70], ecx
mov rax, r14
cmovne rax, rdx
mov qword [rbp + 0x3d0], rax
mov dword [rsp + 0x60], r14d
mov r15d, r14d
cmp ecx, 4
je 0x140025df9
mov r15d, 0xc0000023
jmp 0x140025ea4
mov eax, dword [rax]
mov dword [rbp + 0xdc], eax
jmp 0x140025e0b
mov r15d, r10d
mov dword [rsp + 0x60], r10d
test r15d, r15d
js 0x140025ea9
mov rax, qword [rbp + 0x2b8]
cmp qword [rbp + 0x1c8], rax
je 0x140025e2c
mov r15d, 0xc004d501
jmp 0x140025ea4
mov eax, dword [rbp + 0xdc]
mov ecx, dword [rbp + 0x160]
mov dword [rbp + 0x30], eax
mov eax, dword [rbp + 0x1f0]
mov dword [rbp + 0xd8], eax
mov dword [rbp + 0xd4], ecx
cmp ecx, 4
ja 0x140025e57
cmp edi, 4
jbe 0x140025e61
mov r15d, r11d
mov dword [rsp + 0x60], r11d
jmp 0x140025ea9
mov rcx, qword [rbp + 0x40]
mov r8, rdi
mov rdx, r9
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r13, qword [rsp + 0x68]
test r15d, r15d
js 0x1400237b4
cmp dword [rbp + 0x5c], r14d
cmovne r15d, dword [rbp + 0x5c]
jmp 0x140023701
mov r15d, r10d
mov dword [rsp + 0x60], r10d
jmp 0x140025ea9
or qword [rbp + 0x110], 0xffffffffffffffff
mov r15d, 0xc0000095
mov dword [rsp + 0x60], r15d
mov r13, qword [rsp + 0x68]
jmp 0x1400237b4
mov rax, qword [0x1400ad0e8]
call qword [case.0x140067cae.0]
mov edi, dword [0x1400b4810]
lea rcx, [rbp + 0x440]
xor edx, edx
mov qword [0x1400b4808], rax
mov dword [rbp - 0x80], edi
lea r8d, [rdx + 0x70]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xorps xmm0, xmm0
mov qword [rbp - 0x18], r14
xor eax, eax
mov qword [rbp], r14
mov ecx, 1
mov qword [rbp + 0xa00], rax
movups xmmword [rbp + 0x8c0], xmm0
mov dword [rbp + 0xf8], ecx
movups xmmword [rbp + 0x9e0], xmm0
mov dword [rbp + 0xa08], eax
movups xmmword [rbp + 0x9f0], xmm0
mov qword [rbp + 0x18], r14
xor eax, eax
lock cmpxchg dword [0x1400b4a2c], ecx
jne 0x140025f20
mov eax, dword [0x1400b4a28]
test eax, eax
jne 0x140026551
mov dword [rbp - 0x40], r14d
mov dword [rsp + 0x70], r14d
mov dword [rsp + 0x74], r14d
mov qword [rbp + 0x130], r14
mov qword [rbp + 0x230], r14
mov dword [rbp - 0x78], r14d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
xor edx, edx
mov r8d, 0x338
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov qword [rbp - 0x50], rax
test rax, rax
je 0x1400264a9
mov r15d, 0x67
mov byte [rsp + 0x64], r14b
mov edi, r14d
lea rbx, [rax + 7]
mov r12d, r14d
lea rsi, [0x140091c62]
mov r13d, r14d
or ecx, 0xffffffff
lea r14d, [r15 - 0x66]
movzx eax, byte [rsi - 1]
movzx r11d, byte [rsi - 2]
movzx r10d, byte [rsi + 2]
shl r11d, 8
or r11d, eax
shl r10d, 8
movzx eax, byte [rsi]
lea rsi, [rsi + 8]
shl r11d, 8
or r11d, eax
movzx eax, byte [rsi - 7]
shl r11d, 8
or r11d, eax
movzx eax, byte [rsi - 5]
or r10d, eax
xor r13d, r11d
movzx eax, byte [rsi - 4]
shl r10d, 8
or r10d, eax
movzx eax, byte [rsi - 3]
shl r10d, 8
or r10d, eax
xor r12d, r10d
xor r12d, r13d
xor r12d, 0xac987321
mov r9d, r12d
lea eax, [r12 + 0x54969fa2]
rol r12d, 0xa
rol eax, 5
imul edx, eax, 0x137f
add edx, r12d
xor r13d, edx
lea eax, [r13 + 0x7f1137f]
ror eax, 9
imul edx, eax, 0xab69
mov eax, r13d
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 r13d, edx
mov eax, r13d
xor eax, 0xab69
rol eax, 6
imul edx, eax, 0x7f1
mov eax, r13d
rol eax, 2
sub edx, eax
mov eax, 0x7f1137f
xor r9d, edx
mov edx, r9d
xor edx, 0xab69605e
sub eax, edx
xor r13d, eax
mov eax, r13d
mov r8d, r13d
xor eax, 0x137f
ror r8d, 6
imul edx, eax, 0xab69
xor r8d, edx
xor r9d, r8d
mov r8d, 0xab69605e
lea eax, [r9 + 0x7f1137f]
ror eax, 0xf
imul edx, eax, 0x605e
mov eax, r9d
rol eax, 2
add edx, eax
xor r13d, edx
lea eax, [r13 + 0x54969fa2]
ror eax, 0xe
imul edx, eax, 0x7f1
mov eax, r13d
rol eax, 8
sub edx, eax
xor r9d, edx
mov eax, r9d
xor eax, r8d
ror eax, 0xc
imul edx, eax, 0x137f
mov eax, r9d
ror eax, 0xa
xor edx, eax
xor r13d, edx
mov eax, r13d
xor eax, 0x7f1
imul edx, eax, 0xab69
mov eax, r13d
shr eax, 0xa
xor edx, eax
xor r9d, edx
mov eax, r9d
not eax
ror eax, 5
add eax, 0x605e
imul eax, eax, 0x7f1
xor r13d, eax
lea r12d, [r13 - 0x7f1]
xor r12d, r9d
xor r12d, r8d
mov eax, r12d
xor eax, 0x7f1
rol eax, 2
imul edx, eax, 0x137f
mov eax, r12d
shr eax, 2
add edx, eax
xor r13d, edx
lea eax, [r13 - 0x7f1137f]
ror eax, 6
imul edx, eax, 0xab69
mov eax, r13d
rol eax, 7
add edx, eax
xor r12d, edx
mov eax, r12d
mov r8d, r12d
xor eax, 0x137f
ror r8d, 9
imul edx, eax, 0x605e
add r8d, edx
xor r13d, r8d
mov eax, r13d
xor eax, 0xab69
rol eax, 5
imul edx, eax, 0x7f1
mov eax, r13d
rol eax, 7
add edx, eax
xor r12d, edx
xor r13d, r12d
xor r13d, 0xac987321
mov eax, r13d
ror eax, 3
imul edx, eax, 0x137f
sub edx, 0xd0dd417
xor r12d, edx
lea eax, [r12 - 0x7f1137f]
ror eax, 1
imul edx, eax, 0x605e
mov eax, r12d
ror eax, 6
sub edx, eax
xor r13d, edx
lea eax, [r13 - 0x54969fa2]
rol eax, 3
imul edx, eax, 0x7f1
mov eax, r13d
rol eax, 0xe
add edx, eax
xor r12d, edx
lea eax, [r12 - 0x54969fa2]
rol eax, 0xf
imul edx, eax, 0x137f
mov eax, r12d
ror eax, 0xe
sub edx, eax
xor r13d, edx
mov eax, r13d
xor eax, 0x605e
imul edx, eax, 0xab69
mov eax, r13d
shr eax, 3
xor edx, eax
xor r12d, edx
mov eax, r12d
xor eax, 0x7f1137f
rol eax, 4
imul edx, eax, 0x605e
mov eax, r12d
xor r12d, ecx
rol eax, 2
mov ecx, r10d
xor edx, eax
xor edx, edi
mov edi, r11d
xor r13d, edx
mov byte [rbx - 4], r13b
mov byte [rbx], r12b
lea rbx, [rbx + 8]
ror r13d, 8
mov byte [rbx - 0xd], r13b
ror r12d, 8
mov byte [rbx - 9], r12b
ror r13d, 8
mov byte [rbx - 0xe], r13b
ror r12d, 8
mov byte [rbx - 0xa], r12b
ror r13d, 8
ror r12d, 8
mov byte [rbx - 0xf], r13b
mov byte [rbx - 0xb], r12b
ror r12d, 8
ror r13d, 8
sub r15, r14
jne 0x140025fb0
mov cl, byte [rsp + 0x64]
xor r14d, r14d
mov edi, dword [rbp - 0x80]
mov eax, r14d
mov r15d, dword [rsp + 0x60]
movabs rbx, 0xc81ecb17b1b54a58
mov r13, qword [rbp - 0x50]
movabs rsi, 0x7f1137fab69605e
lea edx, [r14 + 1]
mov r8d, 0x338
xor cl, byte [rax + r13]
add rax, rdx
cmp rax, r8
jb 0x1400262db
movzx eax, cl
cmp rax, qword [0x140091f98]
je 0x1400262fb
mov r12d, 0xc004d501
jmp 0x140026310
mov r12d, dword [rbp - 0x78]
mov qword [rbp + 0x130], r13
mov r13, r14
mov qword [rbp + 0x230], r8
test r13, r13
je 0x140026335
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test r12d, r12d
js 0x1400264a9
mov rax, qword [rbp + 0x230]
lea r13, [0x1400b4820]
mov r12, qword [rbp + 0x130]
xor edx, edx
mov rcx, r13
lea r8d, [rdx + 0x60]
mov byte [rax + r12 - 1], r14b
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
cmp byte [r12], r14b
je 0x1400264a2
mov rdx, r12
or rax, 0xffffffffffffffff
inc rax
cmp word [r12 + rax*2], r14w
jne 0x140026377
lea r12, [r12 + rax*2]
mov eax, dword [rsp + 0x74]
lea rcx, [rax + rax*2]
lea r13, [r13 + rcx*8]
xor ecx, ecx
mov r8, r13
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
je 0x1400264a9
mov rax, qword [r13]
mov edx, 0x5a4d
mov ecx, r14d
mov dword [rsp + 0x70], ecx
cmp word [rax], dx
je 0x1400263cb
mov ecx, 0xc000007b
mov dword [rsp + 0x70], ecx
jmp 0x14002641c
movsxd rdx, dword [rax + 0x3c]
cmp edx, 0x10000000
jae 0x1400263c0
add rdx, qword [r13]
cmp rdx, qword [r13]
jb 0x1400263c0
cmp dword [rdx], 0x4550
jne 0x1400263c0
movzx eax, word [rdx + 0x18]
mov r8d, 0x10b
sub ax, r8w
mov r8d, 0xfeff
test r8w, ax
je 0x14002640a
mov ecx, 0xc000000d
jmp 0x1400263c5
mov rax, qword [rdx + 0x88]
mov qword [r13 + 0xc], rax
mov eax, dword [rdx + 0x50]
mov dword [r13 + 8], eax
mov eax, dword [r12 + 2]
mov edx, r14d
add r12, 6
mov dword [rbp - 0x78], eax
mov dword [rbp - 0x58], edx
test eax, eax
je 0x14002648d
mov r8, r12
or rax, 0xffffffffffffffff
inc rax
cmp byte [r12 + rax], r14b
jne 0x140026439
inc r12
add r12, rax
test ecx, ecx
js 0x140026479
mov rcx, qword [r13]
mov rdx, r8
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x1400264a2
mov ecx, dword [rbp - 0x40]
lea rdx, [0x1400ad050]
mov qword [rdx + rcx*8], rax
mov ecx, dword [rsp + 0x70]
mov edx, dword [rbp - 0x58]
mov eax, 1
add dword [rbp - 0x40], eax
add edx, eax
mov dword [rbp - 0x58], edx
cmp edx, dword [rbp - 0x78]
jb 0x140026432
jmp 0x140026492
mov eax, 1
add dword [rsp + 0x74], eax
lea r13, [0x1400b4820]
jmp 0x140026366
mov r12d, dword [rsp + 0x70]
jmp 0x1400264af
mov r12d, 0xc000007a
cmp qword [rbp + 0x130], r14
je 0x1400264dc
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x130]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test r12d, r12d
jns 0x140026546
mov eax, 1
lea r12, [0x1400b4820]
lea r13d, [rax + 3]
cmp qword [r12], r14
je 0x14002650c
mov rcx, qword [r12]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop dword [rax + rax]
mov eax, 1
add r12, 0x18
sub r13, rax
jne 0x1400264f1
xor edx, edx
lea r8d, [r13 + 0x60]
lea rcx, [0x1400b4820]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006ee60]
lea rcx, [0x1400ad050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
lea ecx, [r13 + 1]
jmp 0x140026559
mov eax, dword [0x1400b4a28]
mov ecx, 1
add eax, ecx
mov dword [0x1400b4a28], eax
mov eax, r14d
mov dword [rsp + 0x7c], r14d
xchg dword [0x1400b4a2c], eax
xorps xmm0, xmm0
mov qword [rbp + 0x190], r14
movups xmmword [rbp + 0x930], xmm0
mov dword [rsp + 0x78], r14d
mov qword [rbp - 8], r14
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x48], r14
xor eax, eax
lock cmpxchg dword [0x1400b4a2c], ecx
jne 0x140026589
mov eax, dword [0x1400b4a28]
test eax, eax
jne 0x140026bbc
mov dword [rbp - 0x40], r14d
mov dword [rsp + 0x70], r14d
mov dword [rsp + 0x74], r14d
mov qword [rbp + 0x138], r14
mov qword [rbp + 0x238], r14
mov dword [rbp - 0x78], r14d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
xor edx, edx
mov r8d, 0x338
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov qword [rbp - 0x50], rax
test rax, rax
je 0x140026b18
mov r15d, 0x67
mov byte [rsp + 0x64], r14b
mov edi, r14d
lea rbx, [rax + 7]
mov r12d, r14d
lea rsi, [0x140091c62]
mov r13d, r14d
or ecx, 0xffffffff
lea r14d, [r15 - 0x66]
movzx eax, byte [rsi - 1]
movzx r11d, byte [rsi - 2]
movzx r10d, byte [rsi + 2]
shl r11d, 8
or r11d, eax
shl r10d, 8
movzx eax, byte [rsi]
lea rsi, [rsi + 8]
shl r11d, 8
or r11d, eax
movzx eax, byte [rsi - 7]
shl r11d, 8
or r11d, eax
movzx eax, byte [rsi - 5]
or r10d, eax
xor r13d, r11d
movzx eax, byte [rsi - 4]
shl r10d, 8
or r10d, eax
movzx eax, byte [rsi - 3]
shl r10d, 8
or r10d, eax
xor r12d, r10d
xor r12d, r13d
xor r12d, 0xac987321
mov r9d, r12d
lea eax, [r12 + 0x54969fa2]
rol r12d, 0xa
rol eax, 5
imul edx, eax, 0x137f
add edx, r12d
xor r13d, edx
lea eax, [r13 + 0x7f1137f]
ror eax, 9
imul edx, eax, 0xab69
mov eax, r13d
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 r13d, edx
mov eax, r13d
xor eax, 0xab69
rol eax, 6
imul edx, eax, 0x7f1
mov eax, r13d
rol eax, 2
sub edx, eax
mov eax, 0x7f1137f
xor r9d, edx
mov edx, r9d
xor edx, 0xab69605e
sub eax, edx
xor r13d, eax
mov eax, r13d
mov r8d, r13d
xor eax, 0x137f
ror r8d, 6
imul edx, eax, 0xab69
xor r8d, edx
xor r9d, r8d
mov r8d, 0xab69605e
lea eax, [r9 + 0x7f1137f]
ror eax, 0xf
imul edx, eax, 0x605e
mov eax, r9d
rol eax, 2
add edx, eax
xor r13d, edx
lea eax, [r13 + 0x54969fa2]
ror eax, 0xe
imul edx, eax, 0x7f1
mov eax, r13d
rol eax, 8
sub edx, eax
xor r9d, edx
mov eax, r9d
xor eax, r8d
ror eax, 0xc
imul edx, eax, 0x137f
mov eax, r9d
ror eax, 0xa
xor edx, eax
xor r13d, edx
mov eax, r13d
xor eax, 0x7f1
imul edx, eax, 0xab69
mov eax, r13d
shr eax, 0xa
xor edx, eax
xor r9d, edx
mov eax, r9d
not eax
ror eax, 5
add eax, 0x605e
imul eax, eax, 0x7f1
xor r13d, eax
lea r12d, [r13 - 0x7f1]
xor r12d, r9d
xor r12d, r8d
mov eax, r12d
xor eax, 0x7f1
rol eax, 2
imul edx, eax, 0x137f
mov eax, r12d
shr eax, 2
add edx, eax
xor r13d, edx
lea eax, [r13 - 0x7f1137f]
ror eax, 6
imul edx, eax, 0xab69
mov eax, r13d
rol eax, 7
add edx, eax
xor r12d, edx
mov eax, r12d
mov r8d, r12d
xor eax, 0x137f
ror r8d, 9
imul edx, eax, 0x605e
add r8d, edx
xor r13d, r8d
mov eax, r13d
xor eax, 0xab69
rol eax, 5
imul edx, eax, 0x7f1
mov eax, r13d
rol eax, 7
add edx, eax
xor r12d, edx
mov r8d, r12d
xor r8d, r13d
xor r8d, 0xac987321
mov eax, r8d
ror eax, 3
imul edx, eax, 0x137f
sub edx, 0xd0dd417
xor r12d, edx
lea eax, [r12 - 0x7f1137f]
ror eax, 1
imul edx, eax, 0x605e
mov eax, r12d
ror eax, 6
sub edx, eax
xor r8d, edx
lea eax, [r8 - 0x54969fa2]
rol eax, 3
imul edx, eax, 0x7f1
mov eax, r8d
rol eax, 0xe
add edx, eax
xor r12d, edx
lea eax, [r12 - 0x54969fa2]
rol eax, 0xf
imul edx, eax, 0x137f
mov eax, r12d
ror eax, 0xe
sub edx, eax
xor r8d, edx
mov eax, r8d
xor eax, 0x605e
imul edx, eax, 0xab69
mov eax, r8d
shr eax, 3
xor edx, eax
xor r12d, edx
mov eax, r12d
xor eax, 0x7f1137f
rol eax, 4
imul r13d, eax, 0x605e
mov eax, r12d
xor r12d, ecx
rol eax, 2
mov ecx, r10d
xor r13d, eax
xor r13d, r8d
xor r13d, edi
mov edi, r11d
mov byte [rbx - 4], r13b
mov byte [rbx], r12b
lea rbx, [rbx + 8]
ror r13d, 8
mov byte [rbx - 0xd], r13b
ror r12d, 8
mov byte [rbx - 9], r12b
ror r13d, 8
mov byte [rbx - 0xe], r13b
ror r12d, 8
mov byte [rbx - 0xa], r12b
ror r13d, 8
ror r12d, 8
mov byte [rbx - 0xf], r13b
mov byte [rbx - 0xb], r12b
ror r12d, 8
ror r13d, 8
sub r15, r14
jne 0x140026619
mov cl, byte [rsp + 0x64]
xor r14d, r14d
mov edi, dword [rbp - 0x80]
mov eax, r14d
mov r15d, dword [rsp + 0x60]
movabs rbx, 0xc81ecb17b1b54a58
mov r13, qword [rbp - 0x50]
movabs rsi, 0x7f1137fab69605e
lea edx, [r14 + 1]
mov r8d, 0x338
xor cl, byte [rax + r13]
add rax, rdx
cmp rax, r8
jb 0x14002694a
movzx eax, cl
cmp rax, qword [0x140091f98]
je 0x14002696a
mov r12d, 0xc004d501
jmp 0x14002697f
mov r12d, dword [rbp - 0x78]
mov qword [rbp + 0x138], r13
mov r13, r14
mov qword [rbp + 0x238], r8
test r13, r13
je 0x1400269a4
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test r12d, r12d
js 0x140026b18
mov rax, qword [rbp + 0x238]
lea r13, [0x1400b4820]
mov r12, qword [rbp + 0x138]
xor edx, edx
mov rcx, r13
lea r8d, [rdx + 0x60]
mov byte [rax + r12 - 1], r14b
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
cmp byte [r12], r14b
je 0x140026b11
mov rdx, r12
or rax, 0xffffffffffffffff
inc rax
cmp word [r12 + rax*2], r14w
jne 0x1400269e6
lea r12, [r12 + rax*2]
mov eax, dword [rsp + 0x74]
lea rcx, [rax + rax*2]
lea r13, [r13 + rcx*8]
xor ecx, ecx
mov r8, r13
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
je 0x140026b18
mov rax, qword [r13]
mov edx, 0x5a4d
mov ecx, r14d
mov dword [rsp + 0x70], ecx
cmp word [rax], dx
je 0x140026a3a
mov ecx, 0xc000007b
mov dword [rsp + 0x70], ecx
jmp 0x140026a8b
movsxd rdx, dword [rax + 0x3c]
cmp edx, 0x10000000
jae 0x140026a2f
add rdx, qword [r13]
cmp rdx, qword [r13]
jb 0x140026a2f
cmp dword [rdx], 0x4550
jne 0x140026a2f
movzx eax, word [rdx + 0x18]
mov r8d, 0x10b
sub ax, r8w
mov r8d, 0xfeff
test r8w, ax
je 0x140026a79
mov ecx, 0xc000000d
jmp 0x140026a34
mov rax, qword [rdx + 0x88]
mov qword [r13 + 0xc], rax
mov eax, dword [rdx + 0x50]
mov dword [r13 + 8], eax
mov eax, dword [r12 + 2]
mov edx, r14d
add r12, 6
mov dword [rbp - 0x78], eax
mov dword [rbp - 0x58], edx
test eax, eax
je 0x140026afc
mov r8, r12
or rax, 0xffffffffffffffff
inc rax
cmp byte [r12 + rax], r14b
jne 0x140026aa8
inc r12
add r12, rax
test ecx, ecx
js 0x140026ae8
mov rcx, qword [r13]
mov rdx, r8
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x140026b11
mov ecx, dword [rbp - 0x40]
lea rdx, [0x1400ad050]
mov qword [rdx + rcx*8], rax
mov ecx, dword [rsp + 0x70]
mov edx, dword [rbp - 0x58]
mov eax, 1
add dword [rbp - 0x40], eax
add edx, eax
mov dword [rbp - 0x58], edx
cmp edx, dword [rbp - 0x78]
jb 0x140026aa1
jmp 0x140026b01
mov eax, 1
add dword [rsp + 0x74], eax
lea r13, [0x1400b4820]
jmp 0x1400269d5
mov r12d, dword [rsp + 0x70]
jmp 0x140026b1e
mov r12d, 0xc000007a
cmp qword [rbp + 0x138], r14
je 0x140026b4b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x138]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test r12d, r12d
jns 0x140026bb1
mov eax, 1
lea r12, [0x1400b4820]
lea r13d, [rax + 3]
cmp qword [r12], r14
je 0x140026b7b
mov rcx, qword [r12]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop dword [rax + rax]
mov eax, 1
add r12, 0x18
sub r13, rax
jne 0x140026b60
xor edx, edx
lea r8d, [r13 + 0x60]
lea rcx, [0x1400b4820]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006ee60]
lea rcx, [0x1400ad050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x140026bc4
mov eax, dword [0x1400b4a28]
mov ecx, 1
add eax, ecx
mov dword [0x1400b4a28], eax
mov ecx, SafeArrayGetDim
mov eax, r14d
xchg dword [0x1400b4a2c], eax
mov eax, edi
xorps xmm0, xmm0
and eax, ecx
xor edx, edx
mov dword [rsp + 0x70], eax
mov r8d, 0x403
mov eax, edi
shr eax, 4
and ax, cx
mov word [rbp + 0xdc0], ax
mov eax, edi
shr eax, 8
and ax, cx
shr edi, 0xc
and di, cx
mov word [rbp + 0xdc2], ax
mov rax, qword [0x1400ad148]
xor ecx, ecx
movups xmmword [rbp + 0x8c0], xmm0
mov word [rbp + 0xdc4], di
call qword [case.0x140067cae.0]
mov qword [rsp + 0x68], rax
mov dword [rbp - 0x70], 0xffffff
test rax, rax
jne 0x140026c68
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x140028134
mov r12d, 0x80004005
jmp 0x140028134
mov rax, qword [0x1400ad0f0]
lea r9, [rbp + 0x98]
xor r8d, r8d
mov qword [rbp + 0x1c0], r14
lea rdx, [rbp + 0x58]
mov qword [rbp + 0x140], r14
mov qword [rbp + 0x210], r14
mov r12d, r14d
mov qword [rbp + 0x50], r14
lea ecx, [r8 + 8]
mov qword [rbp + 0xc0], r14
mov qword [rbp + 0xa8], r14
mov dword [rbp + 0x98], r14d
call qword [case.0x140067cae.0]
test eax, eax
jne 0x140026ced
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x140026e4a
mov r12d, 0x80004005
jmp 0x140026e4a
mov edi, dword [rbp + 0x98]
add rdi, rdi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
lea rcx, [rbp + 0xc0]
mov rdi, rax
call fcn.14004a23c
test rdi, rdi
jne 0x140026d3c
mov qword [rbp + 0xc0], r14
mov r12d, 0x8007000e
jmp 0x140026e4a
mov qword [rbp + 0xc0], rdi
mov edi, dword [rbp + 0x58]
inc edi
shl rdi, 2
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
lea rcx, [rbp + 0xa8]
mov rdi, rax
call fcn.14004a23c
test rdi, rdi
jne 0x140026d8b
mov r12d, 0x8007000e
jmp 0x140026e43
mov r8, qword [rbp + 0xc0]
lea r9, [rbp + 0x98]
mov rax, qword [0x1400ad0f0]
lea rdx, [rbp + 0x58]
mov ecx, 8
mov qword [rbp + 0xa8], rdi
call qword [case.0x140067cae.0]
test eax, eax
je 0x140026cbc
mov rdi, qword [rbp + 0xc0]
mov r13, qword [rbp + 0xa8]
cmp dword [rbp + 0x58], r14d
jbe 0x140026e25
mov esi, r14d
mov ebx, 1
mov rax, qword [0x1400ad100]
xor edx, edx
mov rcx, rdi
call qword [case.0x140067cae.0]
mov dword [r13], eax
or rax, 0xffffffffffffffff
inc rax
cmp word [rdi + rax*2], r14w
jne 0x140026df4
lea rdi, [rdi + rax*2]
add r13, 4
add rdi, 2
add esi, ebx
cmp esi, dword [rbp + 0x58]
jb 0x140026dda
movabs rbx, 0xc81ecb17b1b54a58
movabs rsi, 0x7f1137fab69605e
mov dword [r13], 0x409
mov rax, qword [rbp + 0xa8]
mov qword [rbp + 0x1c0], rax
mov eax, dword [rbp + 0x58]
inc eax
mov dword [rbp - 0x58], eax
mov qword [rbp + 0xa8], r14
lea rcx, [rbp + 0xa8]
call fcn.14004a23c
lea rcx, [rbp + 0xc0]
call fcn.14004a23c
test r12d, r12d
js 0x140026fe9
lea r11, [0x140091bc0]
mov r10d, r14d
mov r9d, r14d
mov dword [rbp - 0x80], r14d
cmp dword [rbp - 0x58], r14d
jbe 0x140026ebf
mov rax, qword [rbp + 0x1c0]
mov r8, r14
mov edx, r14d
mov rdi, r11
mov ecx, dword [rdi]
cmp dword [r8 + rax], ecx
je 0x140026eb9
mov ecx, 1
add rdi, 4
add edx, ecx
cmp edx, 0x26
jb 0x140026e92
add r9d, ecx
add r8, 4
cmp r9d, dword [rbp - 0x58]
jae 0x140026ebf
jmp 0x140026e8c
mov r10d, edx
mov dword [rbp - 0x80], edx
mov rax, qword [0x1400ad0f8]
lea rdx, [rbp + 0xdd0]
mov edi, r10d
xor r9d, r9d
mov dword [rbp + 8], r14d
mov ecx, dword [r11 + rdi*4]
lea r8d, [r9 + 0x55]
call qword [case.0x140067cae.0]
test eax, eax
je 0x140026f2c
mov rax, qword [0x1400ad0e0]
lea r8, [rbp + 0xbb0]
mov r9d, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rcx, [rbp + 0xdd0]
lea edx, [r9 + 0x48]
call qword [case.0x140067cae.0]
mov r9d, 1
test eax, eax
jle 0x140026f32
mov r12d, dword [rbp + 0xbbc]
shr r12d, 0x1b
and r12d, r9d
mov dword [rbp + 8], r12d
jmp 0x140026f32
mov r9d, 1
lea rcx, str.Segoe_UI_Light
mov r8d, SafeArrayGetElement
lea rdx, [rbp + 0xd20]
mov qword [rdx], rcx
or rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], r14w
jne 0x140026f4d
lea rcx, [rcx + rax*2]
add rdx, 8
add rcx, 2
sub r8, r9
jne 0x140026f46
lea rcx, [rdi + rdi*2]
lea rdx, [0x140000000]
movzx eax, byte [rcx + rdx + 0x91b40]
mov rax, qword [rbp + rax*8 + 0xd20]
mov qword [rbp - 8], rax
movzx eax, byte [rcx + rdx + 0x91b41]
mov rax, qword [rbp + rax*8 + 0xd20]
mov qword [rbp - 0x38], rax
movzx eax, byte [rcx + rdx + 0x91b42]
mov rax, qword [rbp + rax*8 + 0xd20]
mov qword [rbp - 0x48], rax
mov dword [rbp + 0x10], r14d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
xor edx, edx
mov r8d, 0x1c90
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov qword [rbp - 0x50], rax
test rax, rax
jne 0x140027147
mov r12d, 0x8007000e
mov r8d, 1
cmp qword [rbp + 0x50], r14
je 0x140027070
mov eax, 3
mov r13, r14
mov qword [rbp - 0x78], rax
mov rcx, qword [rbp + 0x50]
cmp qword [rcx + r13], r14
je 0x140027063
test rcx, rcx
jne 0x140027013
mov rcx, r14
mov rdi, qword [rcx + r13]
or rcx, 0xffffffffffffffff
inc rcx
cmp word [rdi + rcx*2], r14w
jne 0x14002701b
xor eax, eax
lea rcx, [rcx*2 + 2]
rep stosb byte [rdi], al
mov rax, qword [rbp + 0x50]
mov rdi, qword [rax + r13]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov rax, qword [rbp - 0x78]
mov r8d, 1
add r13, 8
sub rax, r8
mov qword [rbp - 0x78], rax
jne 0x140027001
mov rdi, qword [rbp + 0x140]
test rdi, rdi
je 0x140027087
mov rcx, qword [rbp + 0x210]
xor eax, eax
rep stosb byte [rdi], al
lea rcx, [rbp + 0x50]
call fcn.14004a23c
lea rcx, [rbp + 0x140]
call fcn.14004a23c
lea rcx, [rbp + 0x1c0]
call fcn.14004a23c
test r12d, r12d
js 0x140028120
mov rax, qword [rbp + 0x190]
lea r8, [rbp + 0x330]
xor edx, edx
xorps xmm0, xmm0
xor r9d, r9d
mov edi, r14d
mov r12d, r14d
mov rcx, qword [rax]
mov qword [rbp + 0x448], rcx
mov rcx, qword [rax + 8]
mov qword [rbp + 0x450], rcx
mov rcx, qword [rax + 0x10]
mov rax, qword [0x1400ad1b8]
mov qword [rbp + 0x458], rcx
lea ecx, [rdx + 0x42]
movups xmmword [rbp + 0x330], xmm0
mov dword [rbp + 0x330], reloc.OLEAUT32.dll_SafeArrayGetDim
call qword [case.0x140067cae.0]
test eax, eax
jne 0x14002776d
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x140027776
mov r12d, 0x80004005
jmp 0x140027776
or dword [rbp - 0x30], 0xffffffff
lea rbx, [rax + 7]
mov r11d, r14d
lea rsi, [0x14008fbc2]
mov r10d, r14d
mov r13d, r14d
mov r14d, dword [rbp - 0x30]
mov r15d, 0x392
mov r12d, 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
mov edi, r8d
xor edi, r11d
xor edi, r10d
xor edi, 0xac987321
lea eax, [rdi + 0x54969fa2]
rol eax, 5
imul ecx, eax, 0x137f
mov eax, edi
rol eax, 0xa
add ecx, eax
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
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
mov edx, 0xab69605e
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 ecx, edi
mov edi, 0x605e
mov eax, ecx
not eax
ror eax, 5
add eax, edi
imul eax, eax, 0x7f1
xor r10d, eax
lea r11d, [r10 - 0x7f1]
xor r11d, ecx
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
mov edx, r10d
xor eax, 0xab69
rol r10d, 7
rol eax, 5
imul ecx, eax, 0x7f1
add ecx, r10d
xor r11d, ecx
mov r10d, r11d
xor r10d, edx
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, edi
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, r14d
rol eax, 2
mov r14d, r8d
xor ecx, eax
xor ecx, r13d
mov r13d, r9d
xor r10d, ecx
mov byte [rbx - 4], r10b
mov byte [rbx], r11b
lea rbx, [rbx + 8]
ror r10d, 8
mov byte [rbx - 0xd], r10b
ror r11d, 8
mov byte [rbx - 9], r11b
ror r10d, 8
mov byte [rbx - 0xe], r10b
ror r11d, 8
mov byte [rbx - 0xa], r11b
ror r10d, 8
ror r11d, 8
mov byte [rbx - 0xf], r10b
mov byte [rbx - 0xb], r11b
ror r11d, 8
ror r10d, 8
sub r15, r12
jne 0x14002716f
mov r15d, dword [rsp + 0x60]
xor r14d, r14d
mov r12d, dword [rbp + 0x10]
mov eax, r14d
mov r13, qword [rbp - 0x50]
xorps xmm1, xmm1
movabs rbx, 0xc81ecb17b1b54a58
movabs rsi, 0x7f1137fab69605e
mov ecx, 0x1c90
movdqu xmm0, xmmword [rax + r13]
add rax, 0x10
pxor xmm0, xmm1
movdqa xmm1, xmm0
cmp rax, rcx
jb 0x140027482
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 [0x140091850]
je 0x1400274e1
mov r12d, 0xc004d501
jmp 0x1400274f2
mov qword [rbp + 0x140], r13
mov r13, r14
mov qword [rbp + 0x210], rcx
test r13, r13
je 0x140027517
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test r12d, r12d
js 0x140026fe9
mov rdx, qword [rbp + 0x140]
lea rdi, [rbp + 0xcf0]
mov r9d, dword [rbp - 0x80]
mov r8d, 6
mov ecx, r14d
cmp r9d, ecx
jne 0x140027543
mov qword [rdi], rdx
or rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], r14b
jne 0x140027547
inc rax
add rdx, rax
mov eax, 1
add ecx, eax
cmp ecx, 0x26
jb 0x14002753b
add rdi, 8
sub r8, rax
jne 0x140027538
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
xor edx, edx
mov rcx, rax
lea r8d, [rdx + 0x18]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
lea rcx, [rbp + 0x50]
mov rdi, rax
call fcn.14004a23c
mov r8d, 1
test rdi, rdi
jne 0x1400275b2
mov qword [rbp + 0x50], r14
mov r12d, 0x8007000e
jmp 0x140026fef
mov qword [rbp + 0x50], rdi
lea rcx, [rbp + 0xdc0]
xorps xmm0, xmm0
mov qword [rbp - 0x30], rcx
xor eax, eax
mov edx, r14d
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rax
mov r13, r14
mov dword [rbp - 0x58], edx
movzx edi, word [rcx]
lea rcx, [0x140091fa0]
mov eax, r14d
cmp di, word [rcx]
je 0x1400275f9
add eax, r8d
add rcx, 2
cmp eax, 6
jb 0x1400275e3
jmp 0x1400276c9
mov rcx, qword [rbp + rax*8 + 0xcf0]
or rax, 0xffffffffffffffff
mov qword [rbp - 0x50], rcx
inc rax
cmp byte [rcx + rax], r14b
jne 0x140027609
lea r9d, [r8 + rax]
mov dword [rsp + 0x28], r14d
mov rax, qword [0x1400ad110]
mov r8, rcx
mov ecx, 0xfde9
mov qword [rsp + 0x20], r14
xor edx, edx
call qword [case.0x140067cae.0]
mov dword [rbp - 0x78], eax
test eax, eax
je 0x140027736
movsxd rdi, eax
add rdi, rdi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov rcx, qword [rbp + 0x50]
mov qword [rcx + r13], rax
mov rcx, qword [rbp + 0x50]
cmp qword [rcx + r13], r14
je 0x140026fe3
mov r8, qword [rbp - 0x50]
or rax, 0xffffffffffffffff
inc rax
cmp byte [r8 + rax], r14b
jne 0x140027686
mov edx, dword [rbp - 0x78]
mov r9d, 1
mov dword [rsp + 0x28], edx
add r9d, eax
mov rdx, qword [rcx + r13]
mov ecx, 0xfde9
mov rax, qword [0x1400ad110]
mov qword [rsp + 0x20], rdx
xor edx, edx
call qword [case.0x140067cae.0]
test eax, eax
je 0x140027705
mov edx, dword [rbp - 0x58]
mov r8d, 1
mov rcx, qword [rbp - 0x30]
add edx, r8d
add rcx, 2
mov dword [rbp - 0x58], edx
add r13, 8
mov qword [rbp - 0x30], rcx
cmp edx, 3
jb 0x1400275d6
mov rax, qword [rbp + 0x50]
mov qword [rbp + 0x190], rax
mov eax, dword [rbp + 8]
mov dword [rbp + 0x440], eax
mov qword [rbp + 0x50], r14
jmp 0x140026fef
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x140026fe9
mov r12d, 0x80004005
jmp 0x140026fe9
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
movzx r12d, ax
mov r8d, 1
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x140026fef
mov r12d, 0x80004005
jmp 0x140026fef
mov edi, dword [rbp + 0x334]
and edi, 1
mov dword [rbp + 0x444], edi
test r12d, r12d
js 0x140028120
mov r13d, dword [rsp + 0x70]
mov eax, reloc.OLEAUT32.dll_SafeArrayCreateVectorEx
mov ecx, r13d
mov dword [rsp + 0x74], eax
sub ecx, 1
je 0x1400277c1
sub ecx, 1
je 0x1400277b7
cmp ecx, 1
jne 0x1400277cd
mov r12d, 0xe1
mov dword [rsp + 0x7c], r12d
mov dword [rsp + 0x78], r12d
jmp 0x1400277cd
mov dword [rsp + 0x7c], SafeArrayGetDim
jmp 0x1400277c5
mov dword [rsp + 0x7c], eax
mov dword [rsp + 0x78], SafeArrayGetDim
mov edi, 0x60
lea rcx, [rbp + 0xbd0]
xor edx, edx
mov dword [rbp + 0x40], edi
lea r12d, [rdi + 0x7c]
mov r8d, r12d
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [0x1400ad130]
lea r8, [rbp + 0xbd0]
or edx, 0xffffffff
mov word [rbp + 0xc14], r12w
xor ecx, ecx
call qword [case.0x140067cae.0]
test eax, eax
je 0x14002783b
mov eax, dword [rbp + 0xc7c]
movzx edi, word [rbp + 0xc76]
mov dword [rbp + 0x938], eax
mov eax, dword [rbp + 0xc80]
mov dword [rbp + 0x93c], eax
lea eax, [r12 - 0x7c]
cmp edi, eax
cmovb edi, eax
mov dword [rbp + 0x40], edi
mov eax, 1
lea rcx, [rbp + 0xb50]
cmp r13d, eax
mov rax, qword [rbp - 0x48]
cmove rax, qword [rbp - 8]
xor edx, edx
mov qword [rbp - 0x48], rax
lea r8d, [rdx + 0x5c]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [0x1400ad148]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
mov r12d, r14d
call qword [case.0x140067cae.0]
mov r13, rax
test rax, rax
jne 0x1400278b5
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x140028120
mov r12d, 0x80004005
jmp 0x140028120
mov ecx, dword [rsp + 0x7c]
mov r8d, 0x48
mov rax, qword [0x1400ad108]
mov edx, edi
call qword [case.0x140067cae.0]
mov r8, qword [rbp - 0x48]
lea rcx, [rbp + 0xb6c]
neg eax
mov dword [rbp + 0xb60], 0x190
mov edx, 0x20
mov dword [rbp + 0xb50], eax
mov byte [rbp + 0xb6a], 5
call fcn.140007b70
mov rax, qword [0x1400ad070]
lea rcx, [rbp + 0xb50]
call qword [case.0x140067cae.0]
test rax, rax
jne 0x14002793f
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x140027946
mov r12d, 0x80004005
jmp 0x140027946
mov qword [rbp + 0x460], rax
mov rax, qword [0x1400ad1b0]
mov rdx, r13
xor ecx, ecx
call qword [case.0x140067cae.0]
test r12d, r12d
js 0x140028120
xor edx, edx
lea rcx, [rbp + 0xa90]
lea r8d, [rdx + 0x5c]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [0x1400ad148]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
mov r12d, r14d
call qword [case.0x140067cae.0]
mov r13, rax
test rax, rax
je 0x140027884
mov ecx, dword [rsp + 0x78]
mov r8d, 0x48
mov rax, qword [0x1400ad108]
mov edx, edi
call qword [case.0x140067cae.0]
mov r8, qword [rbp - 0x48]
lea rcx, [rbp + 0xaac]
neg eax
mov dword [rbp + 0xaa0], 0x190
mov edx, 0x20
mov dword [rbp + 0xa90], eax
mov byte [rbp + 0xaaa], 5
call fcn.140007b70
mov rax, qword [0x1400ad070]
lea rcx, [rbp + 0xa90]
call qword [case.0x140067cae.0]
test rax, rax
jne 0x140027a23
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x140027a2a
mov r12d, 0x80004005
jmp 0x140027a2a
mov qword [rbp + 0x468], rax
mov rax, qword [0x1400ad1b0]
mov rdx, r13
xor ecx, ecx
call qword [case.0x140067cae.0]
test r12d, r12d
js 0x140028120
mov edi, dword [rsp + 0x70]
mov r13d, r14d
mov ecx, edi
mov edx, r14d
sub ecx, 1
je 0x140027a60
sub ecx, 1
je 0x140027a99
cmp ecx, 1
jne 0x140027a6d
mov r13d, dword [rbp + 0x938]
mov edx, dword [rbp + 0x93c]
mov dword [rbp + 0x8c8], r13d
mov dword [rbp + 0x8cc], edx
mov ecx, 1
cmp edi, ecx
je 0x140027ac6
lea eax, [rdi - 2]
cmp eax, ecx
ja 0x140027ab0
mov ecx, r14d
mov dword [rsp + 0x74], r14d
mov dword [rsp + 0x7c], r14d
jmp 0x140027ad3
mov eax, dword [rbp + 0x938]
cdq
and edx, 3
lea r13d, [rdx + rax]
mov edx, r14d
sar r13d, 2
jmp 0x140027a6d
mov eax, dword [rbp + 0x70]
mov ecx, dword [rbp + 0x70]
mov dword [rsp + 0x7c], eax
mov eax, dword [rbp + 0x70]
mov dword [rsp + 0x74], eax
mov eax, dword [rbp + 0x70]
jmp 0x140027ad6
mov ecx, reloc.OLEAUT32.dll_DllRegisterServer
mov dword [rsp + 0x7c], 0x20
mov eax, r14d
mov dword [rsp + 0x78], ecx
mov dword [rbp - 0x40], eax
mov rdx, qword [rbp + 0x460]
sub r13d, ecx
mov rcx, qword [rsp + 0x68]
sub r13d, eax
mov rax, qword [0x1400ad0c8]
mov r12d, r14d
mov rdi, qword [rbp + 0x448]
mov dword [rbp + 0x494], r13d
mov dword [rbp + 0x484], r13d
call qword [case.0x140067cae.0]
mov rdx, rdi
mov qword [rsp + 0x28], r14
mov rdi, qword [rsp + 0x68]
lea r9, [rbp + 0x47c]
mov qword [rbp - 0x50], rax
mov rcx, rdi
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
or r8d, 0xffffffff
mov dword [rsp + 0x20], 0xc50
call qword [case.0x140067cae.0]
test eax, eax
mov eax, 0x80004005
cmove r12d, eax
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x140027b6f
mov rdx, rax
mov rcx, rdi
mov rax, qword [0x1400ad0c8]
call qword [case.0x140067cae.0]
test r12d, r12d
js 0x140028120
mov rdx, qword [rbp + 0x468]
mov r12d, r14d
mov rcx, qword [rsp + 0x68]
mov rax, qword [0x1400ad0c8]
mov rdi, qword [rbp + 0x450]
call qword [case.0x140067cae.0]
mov rdx, rdi
mov qword [rsp + 0x28], r14
mov rdi, qword [rsp + 0x68]
lea r9, [rbp + 0x48c]
mov qword [rbp - 0x50], rax
mov rcx, rdi
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
or r8d, 0xffffffff
mov dword [rsp + 0x20], 0xc50
call qword [case.0x140067cae.0]
test eax, eax
mov eax, 0x80004005
cmove r12d, eax
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x140027bf6
mov rdx, rax
mov rcx, rdi
mov rax, qword [0x1400ad0c8]
call qword [case.0x140067cae.0]
test r12d, r12d
js 0x140028120
mov r12d, dword [rsp + 0x70]
mov edx, 1
mov ecx, dword [rbp + 0x484]
lea eax, [r12 - 2]
cmp eax, edx
ja 0x140027c26
mov r13d, dword [rbp + 0x494]
cmp ecx, r13d
cmovg r13d, ecx
mov r8d, dword [rsp + 0x74]
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
cmp dword [rbp + 0x440], r14d
je 0x140027c5e
mov edi, dword [rbp - 0x40]
mov edx, edi
sub edx, ecx
lea rcx, [rbp + 0x47c]
add edx, r13d
call qword [case.0x140067cae.0]
sub edi, dword [rbp + 0x494]
lea edx, [rdi + r13]
jmp 0x140027c73
mov edx, dword [rsp + 0x78]
lea rcx, [rbp + 0x47c]
call qword [case.0x140067cae.0]
mov edx, dword [rsp + 0x78]
mov r8d, dword [rsp + 0x7c]
lea rcx, [rbp + 0x48c]
add r8d, dword [rbp + 0x488]
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
call qword [case.0x140067cae.0]
lea eax, [r12 - 2]
mov edx, 1
cmp eax, edx
jbe 0x140027f2a
cmp r12d, edx
jne 0x140027f47
xor edx, edx
mov dword [rbp + 0x478], 0xffffff
lea rcx, [rbp + 0xaf0]
lea r8d, [rdx + 0x5c]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [0x1400ad148]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
mov r12d, r14d
call qword [case.0x140067cae.0]
mov rdi, rax
test rax, rax
je 0x140027884
mov edx, dword [rbp + 0x40]
mov r8d, 0x48
mov rax, qword [0x1400ad108]
lea ecx, [r8 - 0x3d]
call qword [case.0x140067cae.0]
mov r8, qword [rbp - 0x38]
lea rcx, [rbp + 0xb0c]
neg eax
mov dword [rbp + 0xb00], 0x190
mov edx, 0x20
mov dword [rbp + 0xaf0], eax
mov byte [rbp + 0xb0a], 5
call fcn.140007b70
mov rax, qword [0x1400ad070]
lea rcx, [rbp + 0xaf0]
call qword [case.0x140067cae.0]
test rax, rax
jne 0x140027d7b
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x140027d82
mov r12d, 0x80004005
jmp 0x140027d82
mov qword [rbp + 0x470], rax
mov rax, qword [0x1400ad1b0]
mov rdx, rdi
xor ecx, ecx
call qword [case.0x140067cae.0]
test r12d, r12d
js 0x140028120
mov rdx, qword [rbp + 0x470]
mov r12d, r14d
mov rcx, qword [rsp + 0x68]
mov rax, qword [0x1400ad0c8]
mov rdi, qword [rbp + 0x458]
mov dword [rbp + 0x4a4], r13d
call qword [case.0x140067cae.0]
mov rdx, rdi
mov qword [rsp + 0x28], r14
mov rdi, qword [rsp + 0x68]
lea r9, [rbp + 0x49c]
mov r13, rax
mov dword [rsp + 0x20], 0x460
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
mov rcx, rdi
or r8d, 0xffffffff
call qword [case.0x140067cae.0]
test eax, eax
mov eax, 0x80004005
cmove r12d, eax
test r13, r13
je 0x140027e1d
mov rax, qword [0x1400ad0c8]
mov rdx, r13
mov rcx, rdi
call qword [case.0x140067cae.0]
test r12d, r12d
js 0x140028120
mov eax, dword [rbp + 0x4a4]
mov ecx, 0x5a
mov edi, dword [rbp + 0x40]
add eax, 0x18
cmp eax, ecx
mov edx, edi
cmovl eax, ecx
lea r12d, [rcx + 6]
mov dword [rbp + 0x4a4], eax
mov r8d, r12d
lea eax, [rcx - 0x3a]
mov ecx, dword [rbp + 0x49c]
mov dword [rbp + 0x4a8], eax
mov rax, qword [0x1400ad108]
call qword [case.0x140067cae.0]
mov ecx, dword [rbp + 0x4a0]
mov r8d, r12d
mov dword [rbp + 0x49c], eax
mov edx, edi
mov rax, qword [0x1400ad108]
call qword [case.0x140067cae.0]
mov ecx, dword [rbp + 0x4a4]
mov r8d, r12d
mov dword [rbp + 0x4a0], eax
mov edx, edi
mov rax, qword [0x1400ad108]
call qword [case.0x140067cae.0]
mov ecx, dword [rbp + 0x4a8]
mov r8d, r12d
mov dword [rbp + 0x4a4], eax
mov edx, edi
mov rax, qword [0x1400ad108]
call qword [case.0x140067cae.0]
mov r8d, dword [rbp + 0x498]
lea rcx, [rbp + 0x49c]
add r8d, 0x24
mov dword [rbp + 0x4a8], eax
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
cmp dword [rbp + 0x440], r14d
je 0x140027f09
mov edx, dword [rbp + 0x47c]
cmp edx, dword [rbp + 0x48c]
cmovge edx, dword [rbp + 0x48c]
call qword [case.0x140067cae.0]
mov edx, 1
jmp 0x140027f47
mov edx, dword [rbp + 0x484]
cmp edx, dword [rbp + 0x494]
cmovle edx, dword [rbp + 0x494]
sub edx, dword [rbp + 0x4a4]
add edx, dword [rbp + 0x49c]
jmp 0x140027efc
mov eax, dword [rbp + 0x498]
mov dword [rbp + 0x8cc], eax
mov dword [rbp + 0x8c8], r13d
mov dword [rbp + 0x478], 0xffa8a8a8
mov ecx, dword [rsp + 0x70]
mov r13d, dword [rbp + 0x440]
mov r12d, dword [rbp + 0x8cc]
mov edi, dword [rbp + 0x8c8]
sub ecx, 1
je 0x140028115
sub ecx, 1
je 0x14002802a
cmp ecx, 1
jne 0x14002811d
xor eax, eax
xorps xmm0, xmm0
mov qword [rbp + 0xa88], rax
xor ecx, ecx
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
movups xmmword [rbp + 0xa68], xmm0
movups xmmword [rbp + 0xa78], xmm0
call qword [case.0x140067cae.0]
lea rdx, [rbp + 0xa68]
mov dword [rbp + 0xa68], SafeArrayCreateVectorEx
mov rcx, rax
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
call qword [case.0x140067cae.0]
test eax, eax
je 0x14002811d
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
lea rdx, [rbp + 0xa7c]
xor ecx, ecx
call qword [case.0x140067cae.0]
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
lea rdx, [rbp + 0xa84]
xor ecx, ecx
call qword [case.0x140067cae.0]
mov eax, dword [rbp + 0xa84]
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 + 0xa84]
shr rcx, 0x20
sub ecx, r12d
imul ecx, ecx, 0x32
jmp 0x1400280f6
xor eax, eax
xorps xmm0, xmm0
mov qword [rbp + 0xa60], rax
xor ecx, ecx
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
movups xmmword [rbp + 0xa40], xmm0
movups xmmword [rbp + 0xa50], xmm0
call qword [case.0x140067cae.0]
lea rdx, [rbp + 0xa40]
mov dword [rbp + 0xa40], SafeArrayCreateVectorEx
mov rcx, rax
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
call qword [case.0x140067cae.0]
test eax, eax
je 0x14002811d
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
lea rdx, [rbp + 0xa54]
xor ecx, ecx
call qword [case.0x140067cae.0]
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
lea rdx, [rbp + 0xa5c]
xor ecx, ecx
call qword [case.0x140067cae.0]
mov eax, dword [rbp + 0xa5c]
test r13d, r13d
je 0x1400280cf
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 + 0xa54]
jmp 0x1400280e5
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 + 0xa5c]
shr rax, 0x20
sub eax, r12d
imul ecx, eax, 0x5f
mov dword [rbp + 0x8c0], edx
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [rbp + 0x8c4], edx
jmp 0x14002811d
and qword [rbp + 0x8c0], 0
mov r12d, r14d
mov rdx, qword [rsp + 0x68]
xor ecx, ecx
mov rax, qword [0x1400ad1b0]
call qword [case.0x140067cae.0]
mov r13d, 1
xor eax, eax
lock cmpxchg dword [0x1400b4a2c], r13d
jne 0x14002813a
mov eax, dword [0x1400b4a28]
test eax, eax
jle 0x1400281bf
sub eax, r13d
mov dword [0x1400b4a28], eax
jne 0x1400281bf
mov rax, r13
lea rdi, [0x1400b4820]
mov r13d, 4
cmp qword [rdi], r14
je 0x140028185
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop dword [rax + rax]
mov eax, 1
add rdi, 0x18
sub r13, rax
jne 0x14002816c
xor edx, edx
lea r8d, [r13 + 0x60]
lea rcx, [0x1400b4820]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006ee60]
lea rcx, [0x1400ad050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r13d, 1
mov eax, r14d
lea rcx, [rbp + 0x190]
xchg dword [0x1400b4a2c], eax
call fcn.14004a23c
test r12d, r12d
js 0x140029af7
mov rdi, qword [rbp + 0x8c0]
lea rcx, [rbp + 0x4b0]
xor edx, edx
mov qword [rbp + 0x228], rdi
lea r8d, [rdx + 0x68]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [0x1400ad0a0]
mov r12d, r13d
mov r13, qword [rbp + 0x20]
mov edx, 7
mov rcx, r13
call qword [case.0x140067cae.0]
test rax, rax
je 0x140028267
mov rcx, rax
lea r8, [rbp + 0x4b0]
mov rax, qword [0x1400ad0b8]
mov edx, 0x68
call qword [case.0x140067cae.0]
test eax, eax
je 0x140028267
mov eax, 0x20
cmp word [rbp + 0x4c2], ax
jne 0x140028267
cmp qword [rbp + 0x4c8], r14
je 0x140028267
cmp dword [rbp + 0x4b4], r14d
jle 0x140028267
cmp dword [rbp + 0x4b8], r14d
jg 0x14002826a
mov r12d, r14d
mov dword [rbp + 0xf8], r12d
test r12d, r12d
mov r12d, 1
jne 0x140028283
cmp dword [rsp + 0x70], r12d
jne 0x1400282eb
mov r8d, dword [rbp + 0x22c]
lea rcx, [rbp + 0x47c]
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
mov edx, edi
call qword [case.0x140067cae.0]
mov r8d, dword [rbp + 0x22c]
lea rcx, [rbp + 0x48c]
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
mov edx, edi
call qword [case.0x140067cae.0]
mov edi, dword [rsp + 0x70]
cmp edi, r12d
jne 0x1400282ef
mov eax, dword [rbp + 0x444]
neg eax
mov rax, qword [0x1400ad078]
sbb ecx, ecx
not ecx
and ecx, 0xb26720
call qword [case.0x140067cae.0]
mov qword [rbp + 0x18], rax
jmp 0x1400282ef
mov edi, dword [rsp + 0x70]
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
mov edx, r12d
mov rcx, r13
call qword [case.0x140067cae.0]
cmp dword [rbp + 0x440], r14d
mov ecx, 0x20812
mov dword [rsp + 0x68], eax
mov eax, 0x810
cmovne eax, ecx
mov dword [rsp + 0x74], eax
cmp dword [rbp + 0xf8], r14d
je 0x140028d61
mov eax, dword [rbp + 0x444]
lea rcx, [rbp + 0x520]
mov r12, qword [rbp + 0x448]
mov edi, 0x68
mov dword [rbp - 0x78], eax
mov r8d, edi
mov rax, qword [rbp + 0x460]
xor edx, edx
mov qword [rbp - 0x50], rax
mov qword [rbp - 8], r12
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, edi
lea rcx, [rbp + 0x6e0]
xor edx, edx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor eax, eax
mov qword [rbp - 0x38], r14
mov dword [rbp - 0x58], r14d
xorps xmm0, xmm0
mov qword [rbp + 0x9a0], rax
mov edi, r14d
mov dword [rbp + 0x9a8], eax
movups xmmword [rbp + 0x980], xmm0
movups xmmword [rbp + 0x990], xmm0
movups xmmword [rbp + 0x8f0], xmm0
test r12, r12
je 0x140029ade
lea edx, [rax + 7]
mov rcx, r13
mov rax, qword [0x1400ad0a0]
call qword [case.0x140067cae.0]
test rax, rax
je 0x140028da7
mov rcx, rax
lea r8, [rbp + 0x520]
mov rax, qword [0x1400ad0b8]
mov edx, 0x68
call qword [case.0x140067cae.0]
test eax, eax
je 0x140028402
mov rax, qword [rbp + 0x538]
mov edi, dword [rbp + 0x528]
mov qword [rbp - 0x38], rax
mov eax, dword [rbp + 0x524]
mov dword [rbp - 0x58], eax
mov rax, qword [0x1400ad060]
mov rcx, r13
call qword [case.0x140067cae.0]
mov r13, rax
test rax, rax
je 0x140028da7
mov eax, dword [rbp + 0x484]
lea r9, [rbp + 0x250]
sub eax, dword [rbp + 0x47c]
lea rdx, [rbp + 0x980]
mov dword [rbp + 0x984], eax
xorps xmm0, xmm0
mov eax, dword [rbp + 0x480]
xor r8d, r8d
sub eax, dword [rbp + 0x488]
mov rcx, r13
mov dword [rbp + 0x988], eax
mov r12d, r14d
mov rax, qword [0x1400ad068]
mov dword [rsp + 0x28], r14d
mov qword [rbp + 0x250], r14
movdqu xmmword [rbp + 0x990], xmm0
mov qword [rbp + 0x9a0], r14
mov dword [rbp + 0x9a8], r14d
mov dword [rbp + 0x980], SafeArrayCreateVectorEx
mov dword [rbp + 0x98c], 0x200001
mov qword [rsp + 0x20], r14
call qword [case.0x140067cae.0]
mov qword [rbp - 0x30], rax
test rax, rax
jne 0x1400284de
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x140028827
mov r12d, 0x80004005
jmp 0x140028827
mov rcx, rax
lea r8, [rbp + 0x6e0]
mov rax, qword [0x1400ad0b8]
mov edx, 0x68
call qword [case.0x140067cae.0]
mov rdx, qword [rbp - 0x30]
mov rcx, r14
test eax, eax
mov eax, dword [rbp + 0x484]
cmovne rcx, qword [rbp + 0x6f8]
sub eax, dword [rbp + 0x47c]
mov dword [rbp + 0x8f8], eax
mov eax, dword [rbp + 0x488]
sub eax, dword [rbp + 0x480]
mov dword [rbp + 0x8fc], eax
mov rax, qword [0x1400ad0c8]
mov qword [rbp - 0x48], rcx
mov rcx, r13
call qword [case.0x140067cae.0]
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
mov edx, 1
mov rcx, r13
call qword [case.0x140067cae.0]
mov rdx, qword [rbp - 0x50]
mov rcx, r13
mov rax, qword [0x1400ad0c8]
call qword [case.0x140067cae.0]
mov qword [rbp - 0x80], rax
xor ecx, ecx
mov rax, qword [0x1400ad0c0]
call qword [case.0x140067cae.0]
lea rdx, [rbp + 0x8f0]
mov rcx, r13
mov r8, rax
mov rax, qword [0x1400ad138]
call qword [case.0x140067cae.0]
mov eax, dword [rsp + 0x74]
lea r9, [rbp + 0x8f0]
mov rdx, qword [rbp - 8]
or r8d, 0xffffffff
mov qword [rsp + 0x28], r14
mov rcx, r13
mov dword [rsp + 0x20], eax
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
call qword [case.0x140067cae.0]
mov eax, 1
cmp dword [rsp + 0x70], eax
jne 0x1400285f6
cmp dword [rbp - 0x78], r14d
je 0x1400285ec
lea ecx, [rax + 7]
mov rax, qword [0x1400ad168]
call qword [case.0x140067cae.0]
mov dword [rsp + 0x78], eax
jmp 0x1400285fe
mov dword [rsp + 0x78], 0xffffff
jmp 0x1400285fe
mov dword [rsp + 0x78], 0xffa8a8a8
mov eax, dword [rbp + 0x47c]
mov r9d, r14d
movsxd r10, dword [rbp - 0x58]
mov r8d, eax
neg r8d
mov edx, r14d
test eax, eax
mov r11d, r10d
cmovns r9d, eax
cmovns r8d, r14d
mov eax, dword [rbp + 0x480]
mov ecx, eax
neg ecx
test eax, eax
cmovns edx, eax
cmovns ecx, r14d
mov eax, dword [rbp + 0x8f8]
sub r11d, r9d
sub eax, r8d
cmp eax, r11d
cmovl r11d, eax
mov eax, dword [rbp + 0x8fc]
sub eax, ecx
sub edi, edx
cmp eax, edi
cmovl edi, eax
test r11d, r11d
jle 0x1400287fa
test edi, edi
jle 0x1400287fa
imul ecx, dword [rbp + 0x8f8]
mov r15d, 1
mov ebx, dword [rsp + 0x78]
movsxd rax, r8d
imul edx, r10d
movsxd rcx, ecx
add rcx, rax
mov rax, qword [rbp - 0x48]
lea r8, [rax + rcx*4]
movsxd rax, r9d
movsxd rcx, edx
add rcx, rax
mov qword [rbp - 8], r8
mov rax, qword [rbp - 0x38]
lea rax, [rax + rcx*4]
movsxd rcx, dword [rbp + 0x8f8]
shl rcx, 2
mov qword [rbp - 0x50], rcx
mov rcx, r10
mov rsi, qword [rbp - 0x50]
shl rcx, 2
mov qword [rbp + 0x10], rcx
mov ecx, edi
mov qword [rbp - 0x78], rcx
mov qword [rbp - 0x48], rax
mov r10, rax
mov edi, r11d
sub r10, r8
mov qword [rbp - 0x38], rdi
lea r9, [r8 + 2]
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 0x1400287af
movzx edi, byte [r10 + r9]
mov eax, 0x80808081
movzx r8d, dl
movzx ecx, bl
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rsp + 0x79]
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 + 0x7a]
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
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
add dl, dil
mov rdi, qword [rbp - 0x38]
mov byte [r10 + r9 + 1], dl
add r9, 4
sub rdi, r15
mov qword [rbp - 0x38], rdi
jne 0x1400286db
mov r8, qword [rbp - 8]
mov rax, qword [rbp - 0x48]
add r8, rsi
add rax, qword [rbp + 0x10]
sub qword [rbp - 0x78], r15
mov qword [rbp - 8], r8
mov qword [rbp - 0x48], rax
jne 0x1400286ca
mov r15d, dword [rsp + 0x60]
movabs rbx, 0xc81ecb17b1b54a58
movabs rsi, 0x7f1137fab69605e
mov rcx, qword [rbp - 0x30]
mov rax, qword [0x1400ad088]
call qword [case.0x140067cae.0]
mov rax, qword [rbp - 0x80]
test rax, rax
je 0x140028827
mov rdx, rax
mov rcx, r13
mov rax, qword [0x1400ad0c8]
call qword [case.0x140067cae.0]
mov rax, qword [0x1400ad080]
mov rcx, r13
call qword [case.0x140067cae.0]
test r12d, r12d
js 0x140029ade
mov eax, dword [rbp + 0x444]
lea rcx, [rbp + 0x590]
mov r12, qword [rbp + 0x450]
mov edi, 0x68
mov dword [rbp - 0x78], eax
mov r8d, edi
mov rax, qword [rbp + 0x468]
xor edx, edx
mov qword [rbp - 0x50], rax
mov qword [rbp - 8], r12
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, edi
lea rcx, [rbp + 0x750]
xor edx, edx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor eax, eax
mov qword [rbp - 0x38], r14
mov dword [rbp - 0x58], r14d
xorps xmm0, xmm0
mov qword [rbp + 0x9d0], rax
mov edi, r14d
mov dword [rbp + 0x9d8], eax
movups xmmword [rbp + 0x9b0], xmm0
movups xmmword [rbp + 0x9c0], xmm0
movups xmmword [rbp + 0x900], xmm0
test r12, r12
je 0x140029ade
mov r13, qword [rbp + 0x20]
lea edx, [rax + 7]
mov rax, qword [0x1400ad0a0]
mov rcx, r13
call qword [case.0x140067cae.0]
test rax, rax
je 0x140028da7
mov rcx, rax
lea r8, [rbp + 0x590]
mov rax, qword [0x1400ad0b8]
mov edx, 0x68
call qword [case.0x140067cae.0]
test eax, eax
je 0x14002891b
mov rax, qword [rbp + 0x5a8]
mov edi, dword [rbp + 0x598]
mov qword [rbp - 0x38], rax
mov eax, dword [rbp + 0x594]
mov dword [rbp - 0x58], eax
mov rax, qword [0x1400ad060]
mov rcx, r13
call qword [case.0x140067cae.0]
mov r13, rax
test rax, rax
je 0x140028da7
mov eax, dword [rbp + 0x494]
lea r9, [rbp + 0x2c0]
sub eax, dword [rbp + 0x48c]
lea rdx, [rbp + 0x9b0]
mov dword [rbp + 0x9b4], eax
xorps xmm0, xmm0
mov eax, dword [rbp + 0x490]
xor r8d, r8d
sub eax, dword [rbp + 0x498]
mov rcx, r13
mov dword [rbp + 0x9b8], eax
mov r12d, r14d
mov rax, qword [0x1400ad068]
mov dword [rsp + 0x28], r14d
mov qword [rbp + 0x2c0], r14
movdqu xmmword [rbp + 0x9c0], xmm0
mov qword [rbp + 0x9d0], r14
mov dword [rbp + 0x9d8], r14d
mov dword [rbp + 0x9b0], SafeArrayCreateVectorEx
mov dword [rbp + 0x9bc], 0x200001
mov qword [rsp + 0x20], r14
call qword [case.0x140067cae.0]
mov qword [rbp - 0x30], rax
test rax, rax
jne 0x1400289f7
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x140028d3f
mov r12d, 0x80004005
jmp 0x140028d3f
mov rcx, rax
lea r8, [rbp + 0x750]
mov rax, qword [0x1400ad0b8]
mov edx, 0x68
call qword [case.0x140067cae.0]
mov rdx, qword [rbp - 0x30]
mov rcx, r14
test eax, eax
mov eax, dword [rbp + 0x494]
cmovne rcx, qword [rbp + 0x768]
sub eax, dword [rbp + 0x48c]
mov dword [rbp + 0x908], eax
mov eax, dword [rbp + 0x498]
sub eax, dword [rbp + 0x490]
mov dword [rbp + 0x90c], eax
mov rax, qword [0x1400ad0c8]
mov qword [rbp - 0x48], rcx
mov rcx, r13
call qword [case.0x140067cae.0]
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
mov edx, 1
mov rcx, r13
call qword [case.0x140067cae.0]
mov rdx, qword [rbp - 0x50]
mov rcx, r13
mov rax, qword [0x1400ad0c8]
call qword [case.0x140067cae.0]
mov qword [rbp - 0x80], rax
xor ecx, ecx
mov rax, qword [0x1400ad0c0]
call qword [case.0x140067cae.0]
lea rdx, [rbp + 0x900]
mov rcx, r13
mov r8, rax
mov rax, qword [0x1400ad138]
call qword [case.0x140067cae.0]
mov eax, dword [rsp + 0x74]
lea r9, [rbp + 0x900]
mov rdx, qword [rbp - 8]
or r8d, 0xffffffff
mov qword [rsp + 0x28], r14
mov rcx, r13
mov dword [rsp + 0x20], eax
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
call qword [case.0x140067cae.0]
mov eax, 1
cmp dword [rsp + 0x70], eax
jne 0x140028b0b
cmp dword [rbp - 0x78], r14d
je 0x140028b01
lea ecx, [rax + 7]
mov rax, qword [0x1400ad168]
call qword [case.0x140067cae.0]
jmp 0x140028b10
mov dword [rsp + 0x74], 0xffffff
jmp 0x140028b17
mov eax, 0xffa8a8a8
mov dword [rsp + 0x74], eax
mov dword [rbp - 0x70], eax
mov eax, dword [rbp + 0x48c]
mov r9d, r14d
movsxd r10, dword [rbp - 0x58]
mov r8d, eax
neg r8d
mov edx, r14d
test eax, eax
mov r11d, r10d
cmovns r9d, eax
cmovns r8d, r14d
mov eax, dword [rbp + 0x490]
mov ecx, eax
neg ecx
test eax, eax
cmovns edx, eax
cmovns ecx, r14d
mov eax, dword [rbp + 0x908]
sub r11d, r9d
sub eax, r8d
cmp eax, r11d
cmovl r11d, eax
mov eax, dword [rbp + 0x90c]
sub eax, ecx
sub edi, edx
cmp eax, edi
cmovl edi, eax
test r11d, r11d
jle 0x140028d12
test edi, edi
jle 0x140028d12
imul ecx, dword [rbp + 0x908]
mov r15d, 1
mov ebx, dword [rbp - 0x70]
movsxd rax, r8d
imul edx, r10d
movsxd rcx, ecx
add rcx, rax
mov rax, qword [rbp - 0x48]
lea r8, [rax + rcx*4]
movsxd rax, r9d
movsxd rcx, edx
add rcx, rax
mov qword [rbp - 8], r8
mov rax, qword [rbp - 0x38]
lea rax, [rax + rcx*4]
movsxd rcx, dword [rbp + 0x908]
shl rcx, 2
mov qword [rbp - 0x50], rcx
mov rcx, r10
mov rsi, qword [rbp - 0x50]
shl rcx, 2
mov qword [rbp + 0x10], rcx
mov ecx, edi
mov qword [rbp - 0x78], rcx
mov qword [rbp - 0x48], rax
mov r10, rax
mov edi, r11d
sub r10, r8
mov qword [rbp - 0x38], rdi
lea r9, [r8 + 2]
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 0x140028cc7
movzx edi, byte [r10 + r9]
mov eax, 0x80808081
movzx r8d, dl
movzx ecx, bl
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rsp + 0x75]
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 + 0x76]
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
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
add dl, dil
mov rdi, qword [rbp - 0x38]
mov byte [r10 + r9 + 1], dl
add r9, 4
sub rdi, r15
mov qword [rbp - 0x38], rdi
jne 0x140028bf3
mov r8, qword [rbp - 8]
mov rax, qword [rbp - 0x48]
add r8, rsi
add rax, qword [rbp + 0x10]
sub qword [rbp - 0x78], r15
mov qword [rbp - 8], r8
mov qword [rbp - 0x48], rax
jne 0x140028be2
mov r15d, dword [rsp + 0x60]
movabs rbx, 0xc81ecb17b1b54a58
movabs rsi, 0x7f1137fab69605e
mov rcx, qword [rbp - 0x30]
mov rax, qword [0x1400ad088]
call qword [case.0x140067cae.0]
mov rax, qword [rbp - 0x80]
test rax, rax
je 0x140028d3f
mov rdx, rax
mov rcx, r13
mov rax, qword [0x1400ad0c8]
call qword [case.0x140067cae.0]
mov rax, qword [0x1400ad080]
mov rcx, r13
call qword [case.0x140067cae.0]
test r12d, r12d
js 0x140029ade
mov rdi, qword [rbp + 0x20]
jmp 0x140029a98
cmp dword [rbp + 0x444], r14d
jne 0x140028d71
mov al, 0xc0
cmp edi, r12d
jne 0x140028d73
mov al, 0xff
and word [rbp - 0x40], 0
mov rcx, r13
and qword [rbp + 0x8d0], 0
mov byte [rbp - 0x3e], al
mov rax, qword [0x1400ad060]
mov byte [rbp - 0x3d], r12b
mov dword [rbp + 0x8e0], r14d
call qword [case.0x140067cae.0]
mov qword [rbp - 0x18], rax
test rax, rax
jne 0x140028db8
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
jmp 0x140029ade
cmp edi, r12d
jne 0x140028e8e
mov r13d, dword [rbp + 0x494]
mov r10d, r14d
mov edi, dword [rbp + 0x484]
mov eax, r13d
mov edx, dword [rbp + 0x48c]
mov r12d, edi
mov r8d, dword [rbp + 0x47c]
sub eax, edx
mov ecx, dword [rbp + 0x498]
sub r12d, r8d
mov r9d, dword [rbp + 0x480]
cmp eax, r12d
mov r11d, r14d
cmovg r12d, eax
sub ecx, r9d
mov dword [rbp - 0x30], r12d
mov dword [rsp + 0x7c], ecx
cmp dword [rbp + 0x440], r14d
je 0x140028e3a
mov ecx, r8d
mov eax, edx
sub ecx, edi
sub eax, r13d
add ecx, r12d
add eax, r12d
mov dword [rbp + 0x8d0], ecx
mov r10d, ecx
mov dword [rbp + 0x8e0], eax
mov ecx, dword [rsp + 0x7c]
mov r11d, eax
mov eax, dword [rbp + 0x488]
sub edi, r8d
sub eax, r9d
sub r13d, edx
mov dword [rbp + 0x40], eax
add edi, r10d
mov dword [rbp + 0x8dc], eax
add r13d, r11d
mov eax, dword [rbp + 0x490]
sub eax, r9d
mov dword [rbp + 0x8d8], edi
mov dword [rbp - 0x78], eax
mov dword [rbp + 0x8e4], eax
sub eax, dword [rbp + 0x490]
add eax, dword [rbp + 0x498]
mov dword [rbp - 0x58], eax
mov dword [rbp + 0x8ec], eax
mov dword [rbp + 0x8e8], r13d
jmp 0x140028ee9
movups xmm0, xmmword [rbp + 0x47c]
mov r12d, dword [rbp + 0x8c8]
movups xmm1, xmmword [rbp + 0x48c]
mov ecx, dword [rbp + 0x8cc]
movdqu xmmword [rbp + 0x8d0], xmm0
mov eax, dword [rbp + 0x8dc]
mov edi, dword [rbp + 0x8d8]
movdqu xmmword [rbp + 0x8e0], xmm1
mov r13d, dword [rbp + 0x8e8]
mov dword [rbp + 0x40], eax
mov eax, dword [rbp + 0x8ec]
mov dword [rbp - 0x58], eax
mov eax, dword [rbp + 0x8e4]
mov dword [rbp - 0x78], eax
mov dword [rbp - 0x30], r12d
mov dword [rsp + 0x7c], ecx
mov eax, ecx
mov dword [rsp + 0x28], r14d
mov rcx, qword [rbp - 0x18]
lea r9, [rbp + 0x2c8]
neg eax
mov qword [rbp + 0x2c8], r14
mov dword [rbp + 0x9e8], eax
lea rdx, [rbp + 0x9e0]
mov rax, qword [0x1400ad068]
xorps xmm0, xmm0
xor r8d, r8d
mov qword [rbp + 0xa00], r14
movdqu xmmword [rbp + 0x9f0], xmm0
mov dword [rbp + 0xa08], r14d
mov dword [rbp + 0x9e0], SafeArrayCreateVectorEx
mov dword [rbp + 0x9e4], r12d
mov dword [rbp + 0x9ec], 0x200001
mov qword [rsp + 0x20], r14
call qword [case.0x140067cae.0]
mov qword [rbp], rax
test rax, rax
jne 0x140028f74
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
jmp 0x140029ac5
mov rcx, qword [rbp - 0x18]
mov rdx, rax
mov rax, qword [0x1400ad0c8]
call qword [case.0x140067cae.0]
mov eax, 1
cmp dword [rsp + 0x70], eax
jne 0x140028fcd
mov r8, qword [rbp + 0x18]
test r8, r8
je 0x140028fcd
mov eax, dword [rsp + 0x7c]
lea rdx, [rbp + 0x940]
and qword [rbp + 0x940], 0
mov rcx, qword [rbp - 0x18]
mov dword [rbp + 0x94c], eax
mov rax, qword [0x1400ad138]
mov dword [rbp + 0x948], r12d
call qword [case.0x140067cae.0]
mov eax, dword [rbp + 0x444]
lea rcx, [rbp + 0x670]
mov dword [rsp + 0x78], eax
xor edx, edx
mov rax, qword [rbp + 0x460]
mov qword [rbp + 0x78], rax
mov rax, qword [rbp + 0x448]
lea r8d, [rdx + 0x68]
mov qword [rbp - 0x38], rax
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor edx, edx
lea rcx, [rbp + 0x7c0]
lea r8d, [rdx + 0x68]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor eax, eax
mov qword [rbp - 8], r14
xorps xmm0, xmm0
mov dword [rbp + 8], r14d
mov dword [rbp + 0x10], r14d
movups xmmword [rbp + 0xa10], xmm0
mov qword [rbp + 0xa30], rax
movups xmmword [rbp + 0xa20], xmm0
mov dword [rbp + 0xa38], eax
movups xmmword [rbp + 0x910], xmm0
cmp qword [rbp - 0x38], r14
je 0x140029aac
mov rcx, qword [rbp - 0x18]
lea edx, [rax + 7]
mov rax, qword [0x1400ad0a0]
call qword [case.0x140067cae.0]
test rax, rax
jne 0x140029078
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
jmp 0x140029aac
mov rcx, rax
lea r8, [rbp + 0x670]
mov rax, qword [0x1400ad0b8]
mov edx, 0x68
call qword [case.0x140067cae.0]
test eax, eax
je 0x1400290b5
mov rax, qword [rbp + 0x688]
mov qword [rbp - 8], rax
mov eax, dword [rbp + 0x674]
mov dword [rbp + 8], eax
mov eax, dword [rbp + 0x678]
mov dword [rbp + 0x10], eax
mov rcx, qword [rbp - 0x18]
mov rax, qword [0x1400ad060]
call qword [case.0x140067cae.0]
mov qword [rbp - 0x48], rax
mov rcx, rax
test rax, rax
je 0x140029067
mov eax, dword [rbp + 0x8d4]
lea r9, [rbp + 0x2d0]
sub eax, dword [rbp + 0x40]
lea rdx, [rbp + 0xa10]
sub edi, dword [rbp + 0x8d0]
xorps xmm0, xmm0
mov dword [rbp + 0xa18], eax
xor r8d, r8d
mov rax, qword [0x1400ad068]
mov dword [rsp + 0x28], r14d
mov qword [rbp + 0x2d0], r14
mov dword [rbp - 0x80], r14d
movdqu xmmword [rbp + 0xa20], xmm0
mov qword [rbp + 0xa30], r14
mov dword [rbp + 0xa38], r14d
mov dword [rbp + 0xa10], SafeArrayCreateVectorEx
mov dword [rbp + 0xa14], edi
mov dword [rbp + 0xa1c], 0x200001
mov qword [rsp + 0x20], r14
call qword [case.0x140067cae.0]
mov qword [rbp - 0x50], rax
test rax, rax
jne 0x140029187
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov dword [rbp - 0x80], ecx
test ecx, ecx
js 0x1400294d1
mov dword [rbp - 0x80], 0x80004005
jmp 0x1400294d1
mov rcx, rax
lea r8, [rbp + 0x7c0]
mov rax, qword [0x1400ad0b8]
mov edx, 0x68
call qword [case.0x140067cae.0]
mov rdx, qword [rbp - 0x50]
mov rcx, r14
test eax, eax
mov dword [rbp + 0x918], edi
mov eax, dword [rbp + 0x40]
cmovne rcx, qword [rbp + 0x7d8]
sub eax, dword [rbp + 0x8d4]
mov rdi, qword [rbp - 0x48]
mov dword [rbp + 0x91c], eax
mov rax, qword [0x1400ad0c8]
mov qword [rbp + 0x38], rcx
mov rcx, rdi
call qword [case.0x140067cae.0]
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
mov edx, 1
mov rcx, rdi
call qword [case.0x140067cae.0]
mov rdx, qword [rbp + 0x78]
mov rcx, rdi
mov rax, qword [0x1400ad0c8]
call qword [case.0x140067cae.0]
mov qword [rbp - 0x10], rax
xor ecx, ecx
mov rax, qword [0x1400ad0c0]
call qword [case.0x140067cae.0]
lea rdx, [rbp + 0x910]
mov rcx, rdi
mov r8, rax
mov rax, qword [0x1400ad138]
call qword [case.0x140067cae.0]
mov eax, dword [rsp + 0x74]
lea r9, [rbp + 0x910]
mov rdx, qword [rbp - 0x38]
or r8d, 0xffffffff
mov qword [rsp + 0x28], r14
mov rcx, rdi
mov dword [rsp + 0x20], eax
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
call qword [case.0x140067cae.0]
mov eax, 1
cmp dword [rsp + 0x70], eax
jne 0x14002928e
cmp dword [rsp + 0x78], r14d
je 0x140029287
lea ecx, [rax + 7]
mov rax, qword [0x1400ad168]
call qword [case.0x140067cae.0]
jmp 0x140029293
mov eax, 0xffffff
jmp 0x140029293
mov eax, 0xffa8a8a8
mov ecx, dword [rbp + 8]
mov r11d, r14d
mov edx, dword [rbp + 0x10]
mov r8d, r14d
mov dword [rsp + 0x78], eax
mov eax, dword [rbp + 0x8d0]
mov r9d, eax
neg r9d
test eax, eax
cmovns r11d, eax
cmovns r9d, r14d
mov eax, dword [rbp + 0x8d4]
mov r10d, eax
neg r10d
test eax, eax
cmovns r8d, eax
cmovns r10d, r14d
mov eax, dword [rbp + 0x918]
sub ecx, r11d
sub eax, r9d
cmp eax, ecx
cmovl ecx, eax
mov eax, dword [rbp + 0x91c]
sub eax, r10d
mov dword [rbp + 0x40], ecx
sub edx, r8d
cmp eax, edx
cmovl edx, eax
test ecx, ecx
jle 0x1400294a4
test edx, edx
jle 0x1400294a4
mov eax, dword [rbp + 0x918]
mov esi, dword [rbp + 0x40]
mov ebx, dword [rsp + 0x78]
imul eax, r10d
movsxd rcx, eax
movsxd rax, r9d
movsxd r9, dword [rbp + 8]
add rcx, rax
mov rax, qword [rbp + 0x38]
imul r8d, r9d
lea rdi, [rax + rcx*4]
movsxd rax, r11d
mov qword [rbp + 0x10], rdi
movsxd rcx, r8d
add rcx, rax
mov rax, qword [rbp - 8]
lea rax, [rax + rcx*4]
movsxd rcx, dword [rbp + 0x918]
shl rcx, 2
mov qword [rbp + 0x38], rcx
mov rcx, r9
shl rcx, 2
mov qword [rbp + 0x78], rcx
mov ecx, edx
mov qword [rbp + 8], rcx
mov qword [rbp - 8], rax
mov r10, rax
mov qword [rbp - 0x38], rsi
sub r10, rdi
lea r9, [rdi + 2]
mov rdi, rsi
mov r15d, 1
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 0x140029450
movzx edi, byte [r10 + r9]
mov r11d, 0x80808081
movzx r8d, dl
mov eax, r11d
movzx ecx, bl
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rsp + 0x79]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, r11d
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 + 0x7a]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, r11d
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, r11d
add dl, dil
mov byte [r10 + r9 - 2], dl
movzx edi, byte [r10 + r9 + 1]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
add dl, dil
mov rdi, qword [rbp - 0x38]
mov byte [r10 + r9 + 1], dl
add r9, 4
sub rdi, r15
mov qword [rbp - 0x38], rdi
jne 0x14002937e
mov rdi, qword [rbp + 0x10]
mov rax, qword [rbp - 8]
add rdi, qword [rbp + 0x38]
add rax, qword [rbp + 0x78]
sub qword [rbp + 8], r15
mov qword [rbp + 0x10], rdi
mov qword [rbp - 8], rax
jne 0x140029367
mov r15d, dword [rsp + 0x60]
movabs rbx, 0xc81ecb17b1b54a58
mov r12d, dword [rbp - 0x30]
movabs rsi, 0x7f1137fab69605e
mov rdi, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x50]
mov rax, qword [0x1400ad088]
call qword [case.0x140067cae.0]
mov rax, qword [rbp - 0x10]
test rax, rax
je 0x1400294d1
mov rdx, rax
mov rcx, rdi
mov rax, qword [0x1400ad0c8]
call qword [case.0x140067cae.0]
mov rcx, qword [rbp - 0x48]
mov rax, qword [0x1400ad080]
call qword [case.0x140067cae.0]
cmp dword [rbp - 0x80], r14d
jl 0x140029aac
mov eax, dword [rbp + 0x444]
lea rcx, [rbp + 0x600]
mov rdi, qword [rbp + 0x450]
xor edx, edx
mov dword [rbp + 0x10], eax
mov rax, qword [rbp + 0x468]
mov qword [rbp - 0x10], rax
lea r8d, [rdx + 0x68]
mov qword [rbp + 0x38], rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor edx, edx
lea rcx, [rbp + 0x830]
lea r8d, [rdx + 0x68]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor eax, eax
mov qword [rbp - 0x50], r14
mov dword [rbp - 0x80], r14d
xorps xmm0, xmm0
mov dword [rbp - 0x30], r14d
mov qword [rbp + 0x970], rax
mov dword [rbp + 0x978], eax
movups xmmword [rbp + 0x950], xmm0
movups xmmword [rbp + 0x960], xmm0
movups xmmword [rbp + 0x920], xmm0
test rdi, rdi
je 0x140029aac
mov rdi, qword [rbp - 0x18]
lea edx, [rax + 7]
mov rax, qword [0x1400ad0a0]
mov rcx, rdi
call qword [case.0x140067cae.0]
test rax, rax
je 0x140029067
mov rcx, rax
lea r8, [rbp + 0x600]
mov rax, qword [0x1400ad0b8]
mov edx, 0x68
call qword [case.0x140067cae.0]
test eax, eax
je 0x1400295c8
mov rax, qword [rbp + 0x618]
mov qword [rbp - 0x50], rax
mov eax, dword [rbp + 0x604]
mov dword [rbp - 0x80], eax
mov eax, dword [rbp + 0x608]
mov dword [rbp - 0x30], eax
mov rax, qword [0x1400ad060]
mov rcx, rdi
call qword [case.0x140067cae.0]
mov qword [rbp - 0x48], rax
mov rcx, rax
test rax, rax
je 0x140029067
mov edi, dword [rbp - 0x78]
lea r9, [rbp + 0x2e8]
sub r13d, dword [rbp + 0x8e0]
lea rdx, [rbp + 0x950]
mov eax, edi
mov dword [rsp + 0x28], r14d
sub eax, dword [rbp - 0x58]
xorps xmm0, xmm0
mov dword [rbp + 0x958], eax
xor r8d, r8d
mov rax, qword [0x1400ad068]
mov qword [rbp + 0x2e8], r14
mov dword [rbp + 8], r14d
movdqu xmmword [rbp + 0x960], xmm0
mov qword [rbp + 0x970], r14
mov dword [rbp + 0x978], r14d
mov dword [rbp + 0x950], SafeArrayCreateVectorEx
mov dword [rbp + 0x954], r13d
mov dword [rbp + 0x95c], 0x200001
mov qword [rsp + 0x20], r14
call qword [case.0x140067cae.0]
mov qword [rbp - 0x78], rax
test rax, rax
jne 0x1400296a2
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov dword [rbp + 8], ecx
mov r13, qword [rbp - 0x48]
test ecx, ecx
js 0x1400299e2
mov dword [rbp + 8], 0x80004005
jmp 0x1400299e2
mov rcx, rax
lea r8, [rbp + 0x830]
mov rax, qword [0x1400ad0b8]
mov edx, 0x68
call qword [case.0x140067cae.0]
mov rdx, qword [rbp - 0x78]
mov rcx, r14
test eax, eax
mov dword [rbp + 0x928], r13d
mov eax, dword [rbp - 0x58]
cmovne rcx, qword [rbp + 0x848]
sub eax, edi
mov r13, qword [rbp - 0x48]
mov dword [rbp + 0x92c], eax
mov rax, qword [0x1400ad0c8]
mov qword [rbp + 0x78], rcx
mov rcx, r13
call qword [case.0x140067cae.0]
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
mov edx, 1
mov rcx, r13
call qword [case.0x140067cae.0]
mov rdx, qword [rbp - 0x10]
mov rcx, r13
mov rax, qword [0x1400ad0c8]
call qword [case.0x140067cae.0]
mov qword [rbp - 0x58], rax
xor ecx, ecx
mov rax, qword [0x1400ad0c0]
call qword [case.0x140067cae.0]
lea rdx, [rbp + 0x920]
mov rcx, r13
mov r8, rax
mov rax, qword [0x1400ad138]
call qword [case.0x140067cae.0]
mov eax, dword [rsp + 0x74]
lea r9, [rbp + 0x920]
mov rdx, qword [rbp + 0x38]
or r8d, 0xffffffff
mov qword [rsp + 0x28], r14
mov rcx, r13
mov dword [rsp + 0x20], eax
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
call qword [case.0x140067cae.0]
mov eax, 1
cmp dword [rsp + 0x70], eax
jne 0x1400297a8
cmp dword [rbp + 0x10], r14d
je 0x14002979e
lea ecx, [rax + 7]
mov rax, qword [0x1400ad168]
call qword [case.0x140067cae.0]
jmp 0x1400297ad
mov dword [rsp + 0x74], 0xffffff
jmp 0x1400297b4
mov eax, 0xffa8a8a8
mov dword [rsp + 0x74], eax
mov dword [rbp - 0x70], eax
mov eax, dword [rbp + 0x8e0]
mov r9d, r14d
mov r11d, dword [rbp - 0x80]
mov r8d, eax
mov edx, dword [rbp - 0x30]
neg r8d
test eax, eax
mov ecx, edi
mov r10d, r14d
cmovns r9d, eax
cmovns r8d, r14d
mov eax, dword [rbp + 0x928]
neg ecx
test edi, edi
cmovns ecx, r14d
cmovns r10d, edi
sub eax, r8d
sub r11d, r9d
cmp eax, r11d
cmovl r11d, eax
mov eax, dword [rbp + 0x92c]
sub eax, ecx
sub edx, r10d
cmp eax, edx
cmovl edx, eax
test r11d, r11d
jle 0x1400299b5
test edx, edx
jle 0x1400299b5
mov eax, dword [rbp + 0x928]
mov r15d, 1
mov esi, dword [rbp - 0x70]
imul eax, ecx
movsxd rcx, eax
movsxd rax, r8d
movsxd r8, dword [rbp - 0x80]
add rcx, rax
mov rax, qword [rbp + 0x78]
lea rdi, [rax + rcx*4]
mov eax, r8d
imul eax, r10d
mov qword [rbp - 0x38], rdi
movsxd rcx, eax
movsxd rax, r9d
add rcx, rax
mov rax, qword [rbp - 0x50]
lea rax, [rax + rcx*4]
movsxd rcx, dword [rbp + 0x928]
shl rcx, 2
mov qword [rbp - 0x10], rcx
mov rcx, r8
mov rbx, qword [rbp - 0x10]
shl rcx, 2
mov qword [rbp + 0x38], rcx
mov ecx, edx
mov qword [rbp - 0x48], rcx
mov qword [rbp - 8], rax
mov r10, rax
lea r9, [rdi + 2]
sub r10, rdi
mov edi, r11d
mov qword [rbp - 0x50], rdi
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 0x14002996a
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 [rsp + 0x75]
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 + 0x76]
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
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
add dl, dil
mov rdi, qword [rbp - 0x50]
mov byte [r10 + r9 + 1], dl
add r9, 4
sub rdi, r15
mov qword [rbp - 0x50], rdi
jne 0x140029895
mov rdi, qword [rbp - 0x38]
mov rax, qword [rbp - 8]
add rdi, rbx
add rax, qword [rbp + 0x38]
sub qword [rbp - 0x48], r15
mov qword [rbp - 0x38], rdi
mov qword [rbp - 8], rax
jne 0x140029884
mov r15d, dword [rsp + 0x60]
movabs rbx, 0xc81ecb17b1b54a58
movabs rsi, 0x7f1137fab69605e
mov rcx, qword [rbp - 0x78]
mov rax, qword [0x1400ad088]
call qword [case.0x140067cae.0]
mov rax, qword [rbp - 0x58]
test rax, rax
je 0x1400299e2
mov rdx, rax
mov rcx, r13
mov rax, qword [0x1400ad0c8]
call qword [case.0x140067cae.0]
mov rax, qword [0x1400ad080]
mov rcx, r13
call qword [case.0x140067cae.0]
cmp dword [rbp + 8], r14d
jl 0x140029aac
mov rdi, qword [rbp + 0x20]
mov eax, 1
mov r9d, r12d
cmp dword [rsp + 0x70], eax
jne 0x140029a50
mov rax, qword [rbp - 0x18]
mov rcx, rdi
mov r8d, dword [rbp + 0x480]
mov edx, dword [rbp + 0x47c]
mov dword [rsp + 0x40], 0xcc0020
mov dword [rsp + 0x38], r14d
mov dword [rsp + 0x30], r14d
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x7c]
mov dword [rsp + 0x20], eax
mov rax, qword [0x1400ad050]
call qword [case.0x140067cae.0]
jmp 0x140029a98
mov eax, dword [rsp + 0x7c]
mov ecx, dword [rbp - 0x40]
mov r8d, dword [rbp + 0x8c4]
mov edx, dword [rbp + 0x8c0]
mov dword [rsp + 0x50], ecx
mov rcx, qword [rbp - 0x18]
mov dword [rsp + 0x48], eax
mov dword [rsp + 0x40], r12d
mov dword [rsp + 0x38], r14d
mov dword [rsp + 0x30], r14d
mov qword [rsp + 0x28], rcx
mov rcx, rdi
mov dword [rsp + 0x20], eax
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
call qword [case.0x140067cae.0]
mov edx, dword [rsp + 0x68]
mov rcx, rdi
mov rax, qword [method.std::_Ref_count_class_AppV::Client::Service::NotificationManagerImpl_.virtual_24]
call qword [case.0x140067cae.0]
mov rax, qword [rbp]
test rax, rax
je 0x140029ac5
mov rcx, rax
mov rax, qword [0x1400ad088]
call qword [case.0x140067cae.0]
mov rax, qword [rbp - 0x18]
test rax, rax
je 0x140029ade
mov rcx, rax
mov rax, qword [0x1400ad080]
call qword [case.0x140067cae.0]
mov rax, qword [rbp + 0x18]
test rax, rax
je 0x140029af7
mov rcx, rax
mov rax, qword [0x1400ad088]
call qword [case.0x140067cae.0]
mov rax, qword [rbp + 0x448]
or r12, 0xffffffffffffffff
test rax, rax
je 0x140029b55
mov rcx, r12
inc rcx
cmp word [rax + rcx*2], r14w
jne 0x140029b0a
mov rdi, qword [rbp + 0x448]
lea rcx, [rcx*2 + 2]
xor eax, eax
rep stosb byte [rdi], al
mov rdi, qword [rbp + 0x448]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x448], r14
mov rax, qword [rbp + 0x450]
test rax, rax
je 0x140029baf
mov rcx, r12
inc rcx
cmp word [rax + rcx*2], r14w
jne 0x140029b64
mov rdi, qword [rbp + 0x450]
lea rcx, [rcx*2 + 2]
xor eax, eax
rep stosb byte [rdi], al
mov rdi, qword [rbp + 0x450]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x450], r14
mov rdi, qword [rbp + 0x458]
test rdi, rdi
je 0x140029c02
mov rcx, r12
inc rcx
cmp word [rdi + rcx*2], r14w
jne 0x140029bbe
lea rcx, [rcx*2 + 2]
xor eax, eax
rep stosb byte [rdi], al
mov rdi, qword [rbp + 0x458]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x458], r14
mov rcx, qword [rbp + 0x460]
test rcx, rcx
je 0x140029c22
mov rax, qword [0x1400ad088]
call qword [case.0x140067cae.0]
mov qword [rbp + 0x460], r14
mov rcx, qword [rbp + 0x468]
test rcx, rcx
je 0x140029c42
mov rax, qword [0x1400ad088]
call qword [case.0x140067cae.0]
mov qword [rbp + 0x468], r14
mov rcx, qword [rbp + 0x470]
test rcx, rcx
je 0x140029c62
mov rax, qword [0x1400ad088]
call qword [case.0x140067cae.0]
mov qword [rbp + 0x470], r14
mov r13d, 1
xor eax, eax
lock cmpxchg dword [0x1400b4a2c], r13d
jne 0x140029c68
mov eax, dword [0x1400b4a28]
test eax, eax
jle 0x140029ce0
sub eax, r13d
mov dword [0x1400b4a28], eax
jne 0x140029ce0
lea rdi, [0x1400b4820]
mov r12d, 4
cmp qword [rdi], r14
je 0x140029cab
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop dword [rax + rax]
add rdi, 0x18
sub r12, r13
jne 0x140029c97
xor edx, edx
lea r8d, [r12 + 0x60]
lea rcx, [0x1400b4820]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006ee60]
lea rcx, [0x1400ad050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, r14d
xchg dword [0x1400b4a2c], eax
mov eax, dword [0x1400b4810]
mov dword [rbp - 0x30], eax
mov rax, qword [0x1400ad0e8]
call qword [case.0x140067cae.0]
sub eax, dword [0x1400b4808]
xorps xmm0, xmm0
mov qword [rbp + 0x38], rax
xor eax, eax
mov qword [rbp + 0xce8], rax
movups xmmword [rbp + 0xcb8], xmm0
movups xmmword [rbp + 0xcc8], xmm0
movups xmmword [rbp + 0xcd8], xmm0
xor eax, eax
lock cmpxchg dword [0x1400b4a2c], r13d
jne 0x140029d2a
mov eax, dword [0x1400b4a28]
test eax, eax
jne 0x14002a32a
mov dword [rbp - 0x58], r14d
mov dword [rbp - 0x80], r14d
mov qword [rbp + 0x148], r14
mov qword [rbp + 0x240], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
xor edx, edx
mov r8d, 0x338
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov qword [rbp - 0x10], rax
test rax, rax
je 0x14002a28b
mov ebx, r14d
lea rsi, [rax + 7]
or r15d, 0xffffffff
lea r12, [0x140091c62]
mov r10d, r14d
mov r11d, r14d
mov ecx, 0x67
movzx eax, byte [r12 - 1]
movzx r9d, byte [r12 - 2]
movzx r8d, byte [r12 + 2]
shl r9d, 8
or r9d, eax
shl r8d, 8
movzx eax, byte [r12]
lea r12, [r12 + 8]
shl r9d, 8
or r9d, eax
movzx eax, byte [r12 - 7]
shl r9d, 8
or r9d, eax
movzx eax, byte [r12 - 5]
or r8d, eax
xor r11d, r9d
movzx eax, byte [r12 - 4]
shl r8d, 8
or r8d, eax
movzx eax, byte [r12 - 3]
shl r8d, 8
or r8d, eax
xor r10d, r8d
xor r10d, r11d
xor r10d, 0xac987321
lea eax, [r10 + 0x54969fa2]
rol eax, 5
imul edx, eax, 0x137f
mov eax, r10d
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 r10d, edx
imul edx, r10d, 0x605e
mov eax, r10d
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 r10d, edx
mov edx, r10d
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 r10d, edi
mov edi, 0xab69605e
lea eax, [r10 + 0x7f1137f]
ror eax, 0xf
imul edx, eax, 0x605e
mov eax, r10d
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 r10d, edx
mov eax, r10d
xor eax, edi
ror eax, 0xc
imul edx, eax, 0x137f
mov eax, r10d
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, r10d
mov eax, edx
not eax
ror eax, 5
add eax, 0x605e
imul eax, eax, 0x7f1
xor r11d, eax
lea r10d, [r11 - 0x7f1]
xor r10d, edx
xor r10d, edi
mov eax, r10d
xor eax, 0x7f1
rol eax, 2
imul edx, eax, 0x137f
mov eax, r10d
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 r10d, edx
mov eax, r10d
mov edi, r10d
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 r10d, edx
xor r11d, r10d
xor r11d, 0xac987321
mov eax, r11d
ror eax, 3
imul edx, eax, 0x137f
sub edx, 0xd0dd417
xor r10d, edx
lea eax, [r10 - 0x7f1137f]
ror eax, 1
imul edx, eax, 0x605e
mov eax, r10d
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 r10d, edx
lea eax, [r10 - 0x54969fa2]
rol eax, 0xf
imul edx, eax, 0x137f
mov eax, r10d
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 r10d, edx
mov eax, r10d
xor eax, 0x7f1137f
rol eax, 4
imul edx, eax, 0x605e
mov eax, r10d
xor r10d, r15d
rol eax, 2
mov r15d, r8d
xor edx, eax
xor edx, ebx
mov ebx, r9d
xor r11d, edx
mov byte [rsi - 4], r11b
mov byte [rsi], r10b
lea rsi, [rsi + 8]
ror r11d, 8
mov byte [rsi - 0xd], r11b
ror r10d, 8
mov byte [rsi - 9], r10b
ror r11d, 8
mov byte [rsi - 0xe], r11b
ror r10d, 8
mov byte [rsi - 0xa], r10b
ror r11d, 8
ror r10d, 8
mov byte [rsi - 0xf], r11b
mov byte [rsi - 0xb], r10b
ror r10d, 8
ror r11d, 8
sub rcx, r13
jne 0x140029da8
mov r15d, dword [rsp + 0x60]
mov rax, r14
mov r13, qword [rbp - 0x10]
mov cl, r14b
movabs rbx, 0xc81ecb17b1b54a58
movabs rsi, 0x7f1137fab69605e
mov r12d, r14d
mov edx, 1
mov edi, 0x338
xor cl, byte [rax + r13]
add rax, rdx
cmp rax, rdi
jb 0x14002a0d2
movzx eax, cl
cmp rax, qword [0x140091f98]
je 0x14002a0f1
mov edi, 0xc004d501
jmp 0x14002a105
mov qword [rbp + 0x148], r13
mov r13, r14
mov qword [rbp + 0x240], rdi
mov edi, r14d
test r13, r13
je 0x14002a12a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test edi, edi
js 0x14002a28b
mov rax, qword [rbp + 0x240]
lea r13, [0x1400b4820]
mov rdi, qword [rbp + 0x148]
xor edx, edx
mov rcx, r13
lea r8d, [rdx + 0x60]
mov byte [rax + rdi - 1], r14b
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
cmp byte [rdi], r14b
je 0x14002a291
jmp 0x14002a16c
lea r13, [0x1400b4820]
mov rdx, rdi
or rax, 0xffffffffffffffff
inc rax
cmp word [rdi + rax*2], r14w
jne 0x14002a173
lea rdi, [rdi + rax*2]
mov eax, dword [rbp - 0x80]
lea rcx, [rax + rax*2]
lea r13, [r13 + rcx*8]
xor ecx, ecx
mov r8, r13
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
je 0x14002a28b
mov rax, qword [r13]
mov ecx, 0x5a4d
mov r12d, r14d
cmp word [rax], cx
je 0x14002a1bf
mov r12d, 0xc000007b
jmp 0x14002a20d
movsxd rcx, dword [rax + 0x3c]
cmp ecx, 0x10000000
jae 0x14002a1b7
add rcx, qword [r13]
cmp rcx, qword [r13]
jb 0x14002a1b7
cmp dword [rcx], 0x4550
jne 0x14002a1b7
movzx eax, word [rcx + 0x18]
mov edx, 0x10b
sub ax, dx
mov edx, 0xfeff
test dx, ax
je 0x14002a1fb
mov r12d, 0xc000000d
jmp 0x14002a20d
mov rax, qword [rcx + 0x88]
mov qword [r13 + 0xc], rax
mov eax, dword [rcx + 0x50]
mov dword [r13 + 8], eax
mov eax, dword [rdi + 2]
mov ecx, r14d
add rdi, 6
mov dword [rsp + 0x68], eax
mov dword [rbp - 0x78], ecx
test eax, eax
je 0x14002a276
mov rdx, rdi
or rax, 0xffffffffffffffff
inc rax
cmp byte [rdi + rax], r14b
jne 0x14002a229
inc rdi
add rdi, rax
test r12d, r12d
js 0x14002a263
mov rcx, qword [r13]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x14002a291
mov ecx, dword [rbp - 0x58]
lea rdx, [0x1400ad050]
mov qword [rdx + rcx*8], rax
mov ecx, dword [rbp - 0x78]
mov eax, 1
add dword [rbp - 0x58], eax
add ecx, eax
mov dword [rbp - 0x78], ecx
cmp ecx, dword [rsp + 0x68]
jb 0x14002a222
mov r13d, 1
add dword [rbp - 0x80], r13d
cmp byte [rdi], r14b
jne 0x14002a165
jmp 0x14002a297
mov r12d, 0xc000007a
mov r13d, 1
cmp qword [rbp + 0x148], r14
je 0x14002a2c4
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x148]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test r12d, r12d
jns 0x14002a324
lea rdi, [0x1400b4820]
mov r12d, 4
cmp qword [rdi], r14
je 0x14002a2ea
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop dword [rax + rax]
add rdi, 0x18
sub r12, r13
jne 0x14002a2d6
lea rdi, [0x1400b4820]
xor edx, edx
mov rcx, rdi
lea r8d, [r12 + 0x60]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006ee60]
lea rcx, [0x1400ad050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x14002a33a
mov eax, dword [0x1400b4a28]
add eax, r13d
lea rdi, [0x1400b4820]
mov dword [0x1400b4a28], eax
mov rcx, qword [rbp + 0x38]
lea r9, [rbp + 0xcb0]
mov eax, r14d
mov r12d, 4
xchg dword [0x1400b4a2c], eax
mov eax, dword [rbp - 0x30]
mov r8d, r12d
mov dword [rbp + 0xce8], eax
mov edx, 0x2021
mov rax, qword [0x1400ad120]
mov dword [rbp + 0xcb8], ecx
xor ecx, ecx
mov dword [rbp + 0xcb0], r13d
mov dword [rbp + 0xcc8], 0x9966f291
mov dword [rbp + 0xcc0], r13d
mov dword [rbp + 0xcd8], r13d
mov dword [rbp + 0xcd0], r13d
mov dword [rbp + 0xce0], r13d
call qword [case.0x140067cae.0]
xor eax, eax
lock cmpxchg dword [0x1400b4a2c], r13d
jne 0x14002a3a7
mov eax, dword [0x1400b4a28]
test eax, eax
jle 0x14002a412
sub eax, r13d
mov dword [0x1400b4a28], eax
jne 0x14002a412
cmp qword [rdi], r14
je 0x14002a3dd
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop dword [rax + rax]
add rdi, 0x18
sub r12, r13
jne 0x14002a3c9
xor edx, edx
lea r8d, [r12 + 0x60]
lea rcx, [0x1400b4820]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006ee60]
lea rcx, [0x1400ad050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, r14d
xchg dword [0x1400b4a2c], eax
mov rdx, qword [rbp + 0x20]
xor ecx, ecx
mov rax, qword [0x1400ad1b0]
call qword [case.0x140067cae.0]
lea rcx, [rbp + 0x2f0]
call fcn.1400176c0
cmp dword [rbp + 0x30], r14d
je 0x14002c478
xorps xmm0, xmm0
mov qword [rbp - 0x20], r14
lea rax, [0x1400b36d0]
mov r12, r14
movups xmmword [rbp + 0x100], xmm0
mov qword [rbp + 0x2f8], rax
mov r13, r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov edx, 8
mov r8d, LoadRegTypeLib
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
je 0x14002c3c1
mov rcx, qword [rbp + 0x2f8]
mov qword [rbp - 0x80], rdi
movups xmm0, xmmword [rcx]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rax + 0x30], xmm1
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [rax + 0x40], xmm0
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [rax + 0x50], xmm1
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [rax + 0x60], xmm0
mov eax, 0x80
movups xmm1, xmmword [rcx + 0x70]
movups xmmword [rdi + rax - 0x10], xmm1
movups xmm0, xmmword [rcx + rax]
movups xmmword [rdi + rax], xmm0
movups xmm1, xmmword [rcx + rax + 0x10]
movups xmmword [rdi + rax + 0x10], xmm1
lea rax, [0x1400b3618]
mov qword [rbp + 0x300], rax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov rcx, rax
mov eax, 8
mov r8d, eax
mov edx, eax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov r12, rax
test rax, rax
je 0x14002c4a4
mov rcx, qword [rbp + 0x300]
mov r13, rax
mov qword [rbp - 0x18], rax
mov rdx, qword [rcx]
mov qword [rax], rdx
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x200], rax
mov dword [rbp + 0x288], SafeArrayGetDim
mov dword [rbp - 0x24], 0xc4
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov edx, 8
mov r8d, 0xc4
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov rdx, rax
test rax, rax
je 0x14002c4a4
mov qword [rbp - 0x20], rax
mov dword [rbp - 0x28], r14d
mov dword [rbp + 0x1e8], 4
lea r8, [rax + 4]
cmp r8, rax
jb 0x14002c4a4
mov ecx, dword [rbp - 0x24]
add rcx, rax
add rax, 8
cmp rax, rcx
ja 0x14002c4a4
mov dword [rdx], 4
mov eax, dword [rbp + 0x1e8]
mov dword [r8], eax
mov edx, dword [rbp - 0x28]
inc edx
mov dword [rbp - 0x28], edx
cmp qword [rbp - 0x20], r14
jne 0x14002a61d
mov dword [rbp + 0x1e0], 0xa4
mov eax, dword [rbp - 0x24]
lea ecx, [rax + 0xa4]
cmp ecx, eax
jb 0x14002c4a4
lea eax, [rdx + 1]
mov dword [rbp - 0x24], ecx
mov dword [rbp - 0x28], eax
mov r9d, 1
jmp 0x14002a6ec
mov r8, qword [rbp - 0x20]
mov ecx, r14d
test edx, edx
je 0x14002a65e
mov eax, dword [r8]
add eax, 4
cmp eax, 4
jb 0x14002c4a4
mov dword [rbp + 0x1e0], eax
mov r9d, eax
add r9, r8
cmp r9, r8
jb 0x14002c4a4
mov r8, r9
mov r9d, 1
add ecx, r9d
cmp ecx, edx
jb 0x14002a628
jmp 0x14002a664
mov r9d, 1
lea rdx, [r8 + 4]
cmp rdx, r8
jb 0x14002c4a4
mov ecx, dword [rbp - 0x24]
lea rax, [r8 + 0xa4]
add rcx, qword [rbp - 0x20]
cmp rax, rcx
ja 0x14002c4a4
mov dword [r8], LoadRegTypeLib
mov eax, 0x80
movups xmm0, xmmword [rdi]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rdx + 0x20], xmm0
movups xmm1, xmmword [rdi + 0x30]
movups xmmword [rdx + 0x30], xmm1
movups xmm0, xmmword [rdi + 0x40]
movups xmmword [rdx + 0x40], xmm0
movups xmm1, xmmword [rdi + 0x50]
movups xmmword [rdx + 0x50], xmm1
movups xmm0, xmmword [rdi + 0x60]
movups xmmword [rdx + 0x60], xmm0
movups xmm1, xmmword [rdi + 0x70]
movups xmmword [rdx + rax - 0x10], xmm1
movups xmm0, xmmword [rdi + rax]
movups xmmword [rdx + rax], xmm0
movups xmm1, xmmword [rdi + rax + 0x10]
movups xmmword [rdx + rax + 0x10], xmm1
add dword [rbp - 0x28], r9d
mov ecx, dword [rbp - 0x24]
cmp qword [rbp - 0x20], r14
jne 0x14002a71e
mov dword [rbp + 0x1d0], SafeArrayGetDim
lea edx, [rcx + 0xc]
cmp edx, ecx
jb 0x14002c4a4
mov rax, qword [rbp + 0x200]
add dword [rbp - 0x28], r9d
mov qword [rbp + 0x208], rax
jmp 0x14002a79f
mov edi, r14d
mov rdx, qword [rbp - 0x20]
cmp dword [rbp - 0x28], r14d
jbe 0x14002a759
mov eax, dword [rdx]
add eax, 4
cmp eax, 4
jb 0x14002c3bd
mov dword [rbp + 0x1d0], eax
mov r8d, eax
add r8, rdx
cmp r8, rdx
jb 0x14002c3bd
add edi, r9d
mov rdx, r8
cmp edi, dword [rbp - 0x28]
jb 0x14002a72b
lea rdi, [rdx + 4]
cmp rdi, rdx
jb 0x14002c3bd
add rcx, qword [rbp - 0x20]
lea rax, [rdx + 0xc]
cmp rax, rcx
ja 0x14002c3bd
mov dword [rdx], 8
mov rax, qword [r12]
mov qword [rdi], rax
add dword [rbp - 0x28], r9d
mov rax, qword [rbp + 0x200]
mov qword [rbp + 0x208], rax
cmp qword [rbp - 0x20], r14
jne 0x14002a7b9
mov edx, dword [rbp - 0x24]
mov dword [rbp + 0x1bc], SafeArrayGetDim
lea ecx, [rdx + 0xc]
cmp ecx, edx
jb 0x14002c3bd
mov dword [rbp - 0x24], ecx
jmp 0x14002a825
mov ecx, r14d
mov rdx, qword [rbp - 0x20]
cmp dword [rbp - 0x28], r14d
jbe 0x14002a7f1
mov eax, dword [rdx]
add eax, 4
cmp eax, 4
jb 0x14002c3bd
mov dword [rbp + 0x1bc], eax
add rax, rdx
cmp rax, rdx
jb 0x14002c3bd
add ecx, r9d
mov rdx, rax
cmp ecx, dword [rbp - 0x28]
jb 0x14002a7c6
lea rdi, [rdx + 4]
cmp rdi, rdx
jb 0x14002c3bd
mov ecx, dword [rbp - 0x24]
lea rax, [rdx + 0xc]
add rcx, qword [rbp - 0x20]
cmp rax, rcx
ja 0x14002c3bd
mov dword [rdx], 8
mov rax, qword [rbp + 0x208]
mov qword [rdi], rax
mov ecx, dword [rbp - 0x24]
add dword [rbp - 0x28], r9d
mov dword [rbp + 0x28c], SafeArrayGetDim
mov r9, r14
mov qword [rbp + 0x20], r14
mov r8d, r14d
mov dword [rsp + 0x7c], r14d
mov qword [rbp + 0x128], r14
mov r12, r14
mov qword [rbp + 0x40], r14
mov dword [rbp - 0x78], r14d
mov qword [rbp - 0x40], r14
mov dword [rbp + 0x2c], r14d
mov qword [rbp + 8], r14
mov qword [rbp - 0x38], r14
mov dword [rbp + 0x88], r14d
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x308], rax
lea eax, [rcx + 8]
mov edx, 0xc0000095
or ecx, 0xffffffff
cmp eax, 8
cmovae ecx, eax
sbb edi, edi
and edi, edx
cmp eax, 8
jb 0x14002a981
mov eax, ecx
add rax, 7
and eax, 0xfffffff8
cmp eax, ecx
jae 0x14002a8ad
mov edi, edx
jmp 0x14002a981
mov dword [rbp + 0xd0], eax
mov edi, eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov r13, rax
test rax, rax
jne 0x14002a8f0
mov edi, 0xc0000017
mov r8d, r14d
mov r9, r14
jmp 0x14002a981
mov eax, dword [rbp - 0x28]
lea rdx, [r13 + 4]
mov dword [r13], eax
cmp rdx, r13
jb 0x14002a948
mov eax, dword [rbp - 0x24]
lea rcx, [rdx + 4]
mov dword [rdx], eax
cmp rcx, rdx
jb 0x14002a948
mov edx, dword [rbp + 0xd0]
mov edi, r14d
mov rax, qword [rbp + 0x308]
mov qword [rdx + r13 - 8], rax
mov r8d, dword [rbp - 0x24]
mov rdx, qword [rbp - 0x20]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r8d, dword [rbp + 0xd0]
mov r9, r13
mov qword [rbp + 0x20], r13
mov r13, r14
mov dword [rsp + 0x7c], r8d
jmp 0x14002a953
mov r9, r14
mov r8d, r14d
mov edi, 0xc0000095
test r13, r13
je 0x14002a981
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov r8d, dword [rsp + 0x7c]
mov r9, qword [rbp + 0x20]
or edi, 0x10000000
jl 0x14002c0e7
mov qword [rbp + 0x1a0], r14
mov r13, r14
test r9, r9
jne 0x14002a9a6
mov edi, 0xc000000d
jmp 0x14002b22e
mov edi, r8d
mov qword [rbp + 0x38], rdi
test r8d, r8d
je 0x14002b146
lea rax, [rdi + 8]
mov qword [rbp + 0x78], rax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
lea r8, [rdi + 8]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov qword [rbp], rax
test rax, rax
je 0x14002b146
mov r11, qword [rbp + 0x20]
mov dl, r14b
mov byte [rsp + 0x64], dl
mov rcx, r14
test rdi, rdi
je 0x14002aa15
mov r8d, 1
xor dl, byte [rcx + r11]
add rcx, r8
cmp rcx, rdi
jb 0x14002aa05
mov byte [rsp + 0x64], dl
mov rcx, rax
mov qword [rbp - 0x48], rax
mov rax, rdi
mov qword [rbp + 0x8a0], rbx
or r9d, 0xffffffff
mov dword [rsp + 0x7c], r14d
mov dword [rsp + 0x78], r14d
mov r10d, r14d
and eax, 7
je 0x14002ab67
mov dword [rsp + 0x78], r14d
mov ecx, r14d
mov dword [rsp + 0x7c], ecx
mov r8d, r14d
test eax, eax
je 0x14002aab6
mov r9d, 0x38
mov esi, ecx
lea ebx, [r9 - 0x37]
movzx r8d, byte [r11]
inc r11
cmp r10d, 4
jge 0x14002aa7c
lea ecx, [r9 - 0x20]
shl r8d, cl
mov ecx, dword [rsp + 0x7c]
or esi, r8d
jmp 0x14002aa8d
mov ecx, r9d
shl r8d, cl
mov ecx, dword [rsp + 0x7c]
or ecx, r8d
mov dword [rsp + 0x7c], ecx
add r10d, ebx
sub r9d, 8
cmp r10d, eax
jl 0x14002aa5f
mov dword [rsp + 0x78], esi
movabs rbx, 0xc81ecb17b1b54a58
mov r8d, dword [rsp + 0x78]
movabs rsi, 0x7f1137fab69605e
mov r10d, r8d
mov r9d, ecx
xor r10d, 0xb17a307a
xor r9d, 0x42f6b18d
mov ecx, r10d
mov r8d, r9d
test eax, eax
je 0x14002ab33
mov rsi, qword [rbp - 0x48]
mov ebx, r14d
mov r12d, 1
lea r15, [rsi + 1]
mov qword [rbp - 0x10], r15
cmp ebx, 4
jge 0x14002aaf6
rol ecx, 8
mov r15d, ecx
jmp 0x14002aafd
rol r8d, 8
mov r15d, r8d
mov byte [rsi], r15b
add ebx, r12d
mov r15, qword [rbp - 0x10]
mov rsi, r15
cmp ebx, eax
jl 0x14002aae1
mov rcx, r15
movabs rbx, 0xc81ecb17b1b54a58
mov r15d, dword [rsp + 0x60]
movabs rsi, 0x7f1137fab69605e
mov qword [rbp - 0x48], rcx
mov r12, r14
jmp 0x14002ab37
mov rcx, qword [rbp - 0x48]
cmp eax, 4
jbe 0x14002ab4e
mov ecx, 8
sub ecx, eax
shl ecx, 3
shr r9d, cl
shl r9d, cl
jmp 0x14002ab63
mov r9d, r14d
jae 0x14002ab67
mov ecx, 4
sub ecx, eax
shl ecx, 3
shr r10d, cl
shl r10d, cl
mov rcx, qword [rbp - 0x48]
mov rax, rdi
shr rax, 3
mov qword [rbp - 0x10], rax
test rax, rax
je 0x14002aed2
movzx eax, word [rbp + 0x8a6]
lea rdx, [r11 + 2]
mov r11, qword [rbp - 0x10]
lea r14, [rcx + 7]
mov esi, dword [rsp + 0x7c]
mov r12d, dword [rsp + 0x78]
movzx r13d, word [rbp + 0x8a4]
mov dword [rbp - 0x30], eax
movzx eax, bx
mov dword [rsp + 0x68], eax
movzx eax, word [rbp + 0x8a2]
mov r15d, dword [rsp + 0x68]
mov dword [rbp + 0x10], eax
movzx eax, byte [rdx - 1]
movzx r8d, byte [rdx - 2]
movzx edi, byte [rdx + 2]
shl r8d, 8
or r8d, eax
shl edi, 8
movzx eax, byte [rdx]
lea rdx, [rdx + 8]
shl r8d, 8
or r8d, eax
movzx eax, byte [rdx - 7]
shl r8d, 8
or r8d, eax
movzx eax, byte [rdx - 5]
or edi, eax
movzx eax, byte [rdx - 4]
shl edi, 8
or edi, eax
movzx eax, byte [rdx - 3]
shl edi, 8
or edi, eax
xor r9d, edi
mov eax, r9d
sub eax, r15d
xor eax, r8d
xor r10d, eax
movzx eax, word [rbp + 0x8a2]
xor r10d, dword [rbp + 0x8a4]
mov ecx, r10d
xor ecx, dword [rbp + 0x8a4]
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 + rbx]
ror ecx, 9
imul ecx, r13d
sub ecx, eax
movzx eax, word [rbp + 0x8a6]
xor r10d, ecx
mov ecx, r10d
xor ecx, r13d
rol ecx, 4
imul ecx, eax
mov eax, r10d
rol eax, 5
add ecx, eax
mov eax, dword [rbp + 0x8a4]
xor r9d, ecx
mov ecx, r9d
xor ecx, ebx
sub eax, ecx
xor r10d, eax
movzx eax, word [rbp + 0x8a2]
mov ecx, r10d
sub ecx, r15d
imul ecx, eax
mov eax, r10d
shr eax, 6
sub ecx, eax
xor r9d, ecx
movzx ecx, word [rbp + 0x8a6]
mov eax, r9d
ror eax, 0xf
xor eax, r13d
imul eax, r15d
xor r10d, eax
mov eax, r10d
not eax
ror eax, 3
add eax, ecx
imul eax, r13d
xor r9d, eax
mov eax, r9d
sub eax, r15d
sub eax, dword [rbp + 0x8a4]
xor r10d, eax
mov eax, r10d
mov ecx, r10d
xor eax, dword [rbp - 0x30]
imul eax, dword [rbp + 0x10]
ror ecx, 0xa
xor ecx, eax
xor r9d, ecx
mov ecx, r15d
xor ecx, r9d
mov eax, r9d
rol ecx, 6
imul ecx, r13d
ror eax, 3
xor ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0x8a6]
mov eax, r10d
ror eax, 0xf
sub eax, ecx
imul eax, r15d
xor r9d, eax
movzx eax, word [rbp + 0x8a6]
mov ecx, r9d
xor ecx, eax
mov eax, r9d
imul ecx, r15d
shr eax, 1
xor ecx, eax
mov eax, r9d
xor r10d, ecx
shr eax, 0xf
mov ecx, r9d
sub ecx, r13d
rol ecx, 3
imul ecx, r15d
xor ecx, eax
movzx eax, word [rbp + 0x8a2]
xor r10d, ecx
mov ecx, r10d
sub ecx, r13d
imul ecx, eax
mov eax, r10d
shr eax, 0xd
sub ecx, eax
xor r9d, ecx
mov ecx, ebx
sub ecx, r9d
mov eax, r9d
ror ecx, 9
imul ecx, r13d
ror eax, 0xb
xor ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0x8a6]
mov eax, r10d
sub eax, ebx
sub eax, ecx
xor r9d, eax
movzx eax, word [rbp + 0x8a2]
xor eax, r9d
mov ecx, r9d
ror ecx, 7
imul eax, r15d
sub eax, ecx
xor r10d, eax
movzx eax, word [rbp + 0x8a6]
mov ecx, r10d
xor ecx, eax
movzx eax, word [rbp + 0x8a2]
rol ecx, 4
imul ecx, eax
mov eax, r10d
ror eax, 0x10
sub ecx, eax
xor r9d, ecx
mov ecx, ebx
sub ecx, r9d
mov eax, r9d
ror ecx, 0xa
imul ecx, r13d
ror eax, 4
add ecx, eax
movzx eax, word [rbp + 0x8a6]
xor r10d, ecx
mov ecx, r10d
sub ecx, ebx
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, dword [rbp + 0x8a4]
rol ecx, 8
imul ecx, r15d
rol eax, 2
sub ecx, eax
movzx eax, word [rbp + 0x8a2]
xor r10d, ecx
mov ecx, dword [rbp + 0x8a4]
sub ecx, r10d
ror ecx, 0xb
imul ecx, eax
mov eax, r10d
ror eax, 0xc
sub ecx, eax
movzx eax, word [rbp + 0x8a2]
xor r9d, ecx
mov ecx, r9d
xor ecx, eax
mov eax, r9d
imul ecx, r13d
shr eax, 8
xor ecx, eax
xor r10d, ecx
xor r9d, r10d
xor r10d, r12d
xor r9d, dword [rbp + 0x8a4]
mov r12d, r8d
mov byte [r14 - 4], r10b
xor r9d, ebx
xor r9d, esi
ror r10d, 8
mov byte [r14], r9b
mov esi, edi
mov byte [r14 - 5], r10b
lea r14, [r14 + 8]
ror r9d, 8
mov byte [r14 - 9], r9b
ror r10d, 8
mov byte [r14 - 0xe], r10b
ror r9d, 8
mov byte [r14 - 0xa], r9b
ror r10d, 8
ror r9d, 8
mov byte [r14 - 0xf], r10b
mov byte [r14 - 0xb], r9b
ror r9d, 8
ror r10d, 8
sub r11, 1
jne 0x14002abb8
mov dl, byte [rsp + 0x64]
xor r14d, r14d
mov r15d, dword [rsp + 0x60]
mov r12d, r14d
mov rdi, qword [rbp + 0x38]
mov r13d, r14d
movabs rsi, 0x7f1137fab69605e
mov rcx, qword [rbp]
movzx eax, dl
mov qword [rcx + rdi], rax
mov rdi, qword [rbp + 0x78]
mov qword [rbp + 0x3d8], rdi
mov qword [rbp + 0x1a0], rcx
lea rax, [0x1400b36c0]
mov qword [rbp + 0x3e8], 8
mov qword [rbp + 0x3e0], rax
lea rax, [0x1400b3620]
mov qword [rbp + 0x3f8], LoadRegTypeLib
mov qword [rbp + 0x3f0], rax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 0x28]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov rbx, rax
test rax, rax
jne 0x14002af57
mov edi, 0xc0000017
jmp 0x14002b136
mov edi, edi
mov dword [rax], edi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
jne 0x14002af8d
mov edi, 0xc0000017
jmp 0x14002b077
mov qword [rbx + 8], rax
mov rdx, qword [rbp]
mov r8, rdi
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov edi, LoadRegTypeLib
mov dword [rbx + 0x10], edi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edi, 8
mov edx, edi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
je 0x14002af83
mov qword [rbx + 0x18], rax
lea rcx, [0x1400b3620]
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.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edx, edi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov rcx, rax
test rax, rax
je 0x14002af83
mov qword [rbx + 0x28], rax
mov rax, qword [0x1400b36c0]
mov r13, rbx
mov qword [rcx], rax
mov edi, r14d
mov rbx, r14
test rbx, rbx
je 0x14002b136
mov rax, qword [rbx + 8]
mov qword [rbp - 0x10], rax
test rax, rax
je 0x14002b0b2
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x10]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 8], r14
mov rax, qword [rbx + 0x18]
mov qword [rbp - 0x10], rax
test rax, rax
je 0x14002b0e4
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x10]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 0x18], r14
mov rax, qword [rbx + 0x28]
mov qword [rbp - 0x10], rax
test rax, rax
je 0x14002b116
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp - 0x10]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test edi, edi
js 0x14002b14b
mov qword [rbp + 0x128], r13
mov r13, r14
jmp 0x14002b14b
mov edi, 0xc0000001
mov rbx, qword [rbp + 0x1a0]
test rbx, rbx
je 0x14002b17e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x1a0], r14
test r13, r13
je 0x14002b22e
mov rbx, qword [r13 + 8]
test rbx, rbx
je 0x14002b1b4
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [r13 + 8], r14
mov rbx, qword [r13 + 0x18]
test rbx, rbx
je 0x14002b1e1
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [r13 + 0x18], r14
mov rbx, qword [r13 + 0x28]
test rbx, rbx
je 0x14002b20e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [r13 + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
or edi, 0x10000000
jl 0x14002c0e7
mov rbx, qword [rbp + 0x128]
mov ecx, dword [rbx]
mov edi, dword [rbx + 0x20]
add ecx, 4
mov edx, dword [rbx + 0x10]
cmp ecx, 4
jb 0x14002b38a
lea eax, [rcx + 4]
cmp eax, ecx
jb 0x14002b38a
lea ecx, [rax + rdx]
cmp ecx, eax
jb 0x14002b38a
lea eax, [rcx + 4]
cmp eax, ecx
jb 0x14002b38a
lea ecx, [rax + rdi]
cmp ecx, eax
jb 0x14002b38a
mov dword [rbp + 0x15c], ecx
mov edi, ecx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov r13, rax
test rax, rax
jne 0x14002b2c4
mov edi, 0xc0000017
mov r8d, 0xc0000095
jmp 0x14002b393
mov eax, dword [rbx]
lea rdi, [r13 + 4]
mov dword [r13], eax
cmp rdi, r13
jb 0x14002b357
mov r8d, dword [rbx]
mov rcx, rdi
mov rdx, qword [rbx + 8]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov ecx, dword [rbx]
add rcx, rdi
cmp rcx, rdi
jb 0x14002b357
mov eax, dword [rbx + 0x10]
lea rdi, [rcx + 4]
mov dword [rcx], eax
cmp rdi, rcx
jb 0x14002b357
mov r8d, dword [rbx + 0x10]
mov rcx, rdi
mov rdx, qword [rbx + 0x18]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov ecx, dword [rbx + 0x10]
add rcx, rdi
cmp rcx, rdi
jb 0x14002b357
mov eax, dword [rbx + 0x20]
lea rdi, [rcx + 4]
mov dword [rcx], eax
cmp rdi, rcx
jb 0x14002b357
mov r8d, dword [rbx + 0x20]
mov rcx, rdi
mov rdx, qword [rbx + 0x28]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, dword [rbx + 0x20]
add rax, rdi
cmp rax, rdi
jb 0x14002b357
mov eax, dword [rbp + 0x15c]
mov edi, r14d
mov qword [rbp + 0x40], r13
mov r13, r14
mov dword [rbp - 0x78], eax
jmp 0x14002b35c
mov edi, 0xc0000095
test r13, r13
je 0x14002b2b9
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
jmp 0x14002b2b9
mov r8d, 0xc0000095
mov edi, r8d
or edi, 0x10000000
jl 0x14002c0e7
mov dword [rbp + 0x9c], r14d
mov dword [rbp + 0x290], 0x1c
mov eax, SafeArrayCreateVectorEx
mov dword [rbp + 0x294], eax
mov dword [rbp + 0x2d8], eax
lea r13d, [rax - 0x27]
cmp qword [rbp - 0x20], r14
jne 0x14002b3d5
mov edi, 0xc000000d
jmp 0x14002b4ab
cmp dword [rbp - 0x28], r13d
jbe 0x14002b3cb
mov rax, qword [rbp - 0x20]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14002b4a8
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x14002b4a8
add edx, r13d
cmp edx, r13d
jb 0x14002b3e2
mov edi, dword [rax]
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14002b4a8
test edi, edi
mov dword [rbp + 0x9c], edi
mov rax, r14
cmovne rax, rcx
mov qword [rbp + 0x400], rax
cmp dword [rbp - 0x28], 2
jbe 0x14002b3cb
mov rax, qword [rbp - 0x20]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14002b4a8
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x14002b4a8
add edx, r13d
cmp edx, 2
jb 0x14002b437
mov edx, dword [rax]
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14002b4a8
test edx, edx
mov dword [rbp + 0x2dc], edx
mov rax, r14
cmovne rax, rcx
mov qword [rbp + 0x408], rax
lea eax, [rdi + 0x30]
cmp eax, 0x30
jb 0x14002b4a8
lea ecx, [rax + 4]
cmp ecx, eax
jb 0x14002b4a8
lea eax, [rcx + rdx]
cmp eax, ecx
jb 0x14002b4a8
mov dword [rbp + 0x2e0], eax
mov edi, r14d
cmp eax, 0x400000
jbe 0x14002b4a3
mov edi, 0x8000ffff
jmp 0x14002c0e7
mov dword [rbp + 0x2c], eax
jmp 0x14002b4ab
mov edi, r8d
test edi, edi
js 0x14002c0e7
mov edi, dword [rbp + 0x2c]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
jne 0x14002b4e8
mov edi, 0xd0000017
mov rbx, r14
jmp 0x14002b4f4
mov rbx, rax
mov qword [rbp - 0x40], rax
mov edi, 0x10000000
test edi, edi
js 0x14002c0e7
mov rax, qword [rbp + 0x40]
test rax, rax
jne 0x14002b50f
mov edi, 0x80070057
jmp 0x14002c0e7
test rbx, rbx
je 0x14002b505
mov qword [rbp + 0x360], rax
lea r8, [rbp + 0x310]
mov eax, dword [rbp - 0x78]
lea rdx, [0x140088998]
mov dword [rbp + 0x370], eax
mov ecx, r13d
mov eax, dword [rbp + 0x2c]
mov dword [rbp + 0x374], eax
mov qword [rbp + 0x368], rbx
mov dword [rbp + 0x378], r14d
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
nop dword [rax + rax]
test eax, eax
jne 0x14002b584
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
test edi, edi
js 0x14002b57f
mov edi, 0x80004005
mov edx, dword [rbp + 0x2c]
jmp 0x14002b5d0
mov rcx, qword [rbp + 0x310]
lea rdx, str.NtQuerySystemInformation
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
nop dword [rax + rax]
test rax, rax
je 0x14002b55c
xor r9d, r9d
lea rdx, [rbp + 0x360]
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call qword [case.0x140067cae.0]
mov edx, dword [rbp + 0x2c]
mov edi, eax
or edi, 0x10000000
cmovge edx, dword [rbp + 0x374]
mov dword [rbp + 0x2c], edx
cmp edi, 0xd0000023
jne 0x14002b5e2
mov edi, 0x8007007a
jmp 0x14002c0e7
test edi, edi
js 0x14002c0e7
mov qword [rbp - 0x50], r14
cmp edx, 4
jae 0x14002b5fd
mov edi, 0xc000003e
jmp 0x14002b9b1
mov ecx, dword [rbx]
lea rdi, [rbx + 4]
mov dword [rsp + 0x68], ecx
cmp rdi, rbx
jb 0x14002b9ac
lea eax, [rdx - 4]
cmp eax, ecx
jb 0x14002b5f3
lea r10, [rdi + rcx]
mov qword [rbp], rcx
mov qword [rbp - 0x10], r10
cmp r10, rdi
jb 0x14002b9ac
lea r9d, [rcx + 4]
cmp r9d, 4
jb 0x14002b9ac
mov eax, edx
sub eax, r9d
cmp eax, 4
jb 0x14002b5f3
mov edi, dword [r10]
lea r8, [r10 + 4]
cmp r8, r10
jb 0x14002b9ac
lea r10d, [r9 + 4]
cmp r10d, r9d
jb 0x14002b9ac
mov eax, edx
sub eax, r10d
cmp eax, edi
jb 0x14002b5f3
lea r11, [r8 + rdi]
cmp r11, r8
jb 0x14002b9ac
lea r9d, [r10 + rdi]
cmp r9d, r10d
jb 0x14002b9ac
mov eax, edx
sub eax, r9d
cmp eax, 4
jb 0x14002b5f3
mov r13d, dword [r11]
lea rax, [r11 + 4]
mov qword [rbp + 0x38], rax
cmp rax, r11
jb 0x14002b9ac
lea r8d, [r9 + 4]
cmp r8d, r9d
jb 0x14002b9ac
mov eax, edx
sub eax, r8d
cmp eax, r13d
jb 0x14002b5f3
lea r9d, [r8 + r13]
cmp r9d, r8d
jb 0x14002b9ac
cmp edx, r9d
jne 0x14002b5f3
add ecx, edi
mov eax, edx
add ecx, r13d
add rcx, 0xc
cmp rcx, rax
jne 0x14002b5f3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 0x28]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov rbx, rax
test rax, rax
jne 0x14002b721
mov edi, 0xc0000017
jmp 0x14002b8e0
mov r12, qword [rbp - 0x40]
add r12, 4
je 0x14002b779
mov eax, dword [rsp + 0x68]
mov dword [rbx], eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp]
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
jne 0x14002b764
mov edi, 0xc0000017
jmp 0x14002b830
mov qword [rbx + 8], rax
mov r8, qword [rbp]
mov rdx, r12
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x14002b780
mov dword [rax], r14d
mov qword [rax + 8], r14
mov r12, qword [rbp - 0x10]
add r12, 4
je 0x14002b7c9
mov dword [rbx + 0x10], edi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
je 0x14002b75a
mov qword [rbx + 0x18], rax
mov r8, rdi
mov rdx, r12
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x14002b7d1
mov dword [rbx + 0x10], r14d
mov qword [rbx + 0x18], r14
mov rdi, qword [rbp + 0x38]
test rdi, rdi
je 0x14002b81e
mov dword [rbx + 0x20], r13d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
test rax, rax
je 0x14002b75a
mov qword [rbx + 0x28], rax
mov r8, r13
mov rdx, rdi
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x14002b826
mov dword [rbx + 0x20], r14d
mov qword [rbx + 0x28], r14
mov qword [rbp - 0x50], rbx
mov edi, r14d
mov rbx, r14
test rbx, rbx
je 0x14002b8e0
mov r12, qword [rbx + 8]
test r12, r12
je 0x14002b866
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 8], r14
mov r12, qword [rbx + 0x18]
test r12, r12
je 0x14002b893
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 0x18], r14
mov r12, qword [rbx + 0x28]
test r12, r12
je 0x14002b8c0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov r12, qword [rbp - 0x50]
test edi, edi
mov rbx, r14
cmovs rbx, qword [rbp - 0x50]
cmovs r12, r14
mov qword [rbp + 8], r12
test rbx, rbx
je 0x14002b9b1
mov r13, qword [rbx + 8]
test r13, r13
je 0x14002b92c
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 8], r14
mov r13, qword [rbx + 0x18]
test r13, r13
je 0x14002b959
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 0x18], r14
mov r13, qword [rbx + 0x28]
test r13, r13
je 0x14002b986
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 8], r12
jmp 0x14002b9b1
mov edi, 0xc0000095
or edi, 0x10000000
jl 0x14002c0e7
mov rbx, r14
mov r13, r14
mov qword [rbp + 0xb0], rbx
test r12, r12
jne 0x14002b9d9
mov edi, 0xd000000d
jmp 0x14002c0e7
mov rdi, qword [r12 + 8]
mov qword [rbp + 0x78], rdi
test rdi, rdi
je 0x14002b9cf
cmp dword [r12], r14d
je 0x14002b9cf
mov eax, dword [r12]
mov qword [rbp], rax
mov dword [rbp - 0x30], r14d
test rax, rax
je 0x14002bf33
lea rbx, [rax - 8]
mov qword [rbp + 0x38], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov qword [rbp + 0x18], rax
mov r8, rax
test rax, rax
je 0x14002bf2c
mov r9, rdi
mov qword [rbp + 0x8b8], rsi
mov rdi, rbx
mov dl, r14b
mov byte [rsp + 0x64], dl
mov r10d, r14d
mov r11d, r14d
and edi, 7
je 0x14002bb57
mov dword [rbp - 0x58], r14d
mov ecx, r14d
mov dword [rbp + 0x48], ecx
test edi, edi
je 0x14002bab8
mov esi, 0x38
lea r15d, [rsi - 0x37]
movzx eax, byte [r9]
inc r9
cmp r11d, 4
jge 0x14002ba8e
lea ecx, [rsi - 0x20]
shl eax, cl
mov ecx, dword [rbp + 0x48]
or r10d, eax
jmp 0x14002ba9a
mov ecx, esi
shl eax, cl
mov ecx, dword [rbp + 0x48]
or ecx, eax
mov dword [rbp + 0x48], ecx
add r11d, r15d
sub esi, 8
cmp r11d, edi
jl 0x14002ba74
mov r15d, dword [rsp + 0x60]
movabs rsi, 0x7f1137fab69605e
mov dword [rbp - 0x58], r10d
mov r11d, ecx
xor r10d, 0x92f65a5
xor r11d, 0x699a899c
mov eax, r10d
mov ecx, r11d
test edi, edi
je 0x14002bb26
mov rsi, r8
mov edx, r13d
mov r12d, 1
lea r15, [rsi + 1]
mov qword [rbp - 0x10], r15
cmp edx, 4
jge 0x14002baf4
rol eax, 8
mov r15d, eax
jmp 0x14002bafa
rol ecx, 8
mov r15d, ecx
mov byte [rsi], r15b
add edx, r12d
mov r15, qword [rbp - 0x10]
mov rsi, r15
cmp edx, edi
jl 0x14002badf
mov r12, qword [rbp + 8]
mov rax, r15
mov r15d, dword [rsp + 0x60]
mov dl, r13b
movabs rsi, 0x7f1137fab69605e
jmp 0x14002bb29
mov rax, r8
cmp edi, 4
jbe 0x14002bb40
mov ecx, 8
sub ecx, edi
shl ecx, 3
shr r11d, cl
shl r11d, cl
jmp 0x14002bb5b
mov r11d, r14d
jae 0x14002bb5b
mov ecx, 4
sub ecx, edi
shl ecx, 3
shr r10d, cl
shl r10d, cl
jmp 0x14002bb5b
mov dword [rbp - 0x58], r14d
mov rcx, rbx
shr rcx, 3
mov qword [rbp - 0x10], rcx
test rcx, rcx
je 0x14002be8c
mov edx, dword [rbp + 0x8bc]
lea r14, [rax + 7]
mov r13d, dword [rbp - 0x58]
lea r12, [r9 + 2]
mov rbx, qword [rbp - 0x10]
mov ecx, edx
xor ecx, esi
movzx r15d, dx
mov dword [rbp - 0x78], ecx
movzx ecx, word [rbp + 0x8ba]
mov dword [rsp + 0x68], ecx
movzx ecx, si
mov dword [rbp - 0x70], ecx
movzx eax, byte [r12 - 1]
movzx r9d, byte [r12 - 2]
movzx r8d, byte [r12 + 2]
shl r9d, 8
or r9d, eax
shl r8d, 8
movzx eax, byte [r12]
lea r12, [r12 + 8]
shl r9d, 8
or r9d, eax
movzx eax, byte [r12 - 7]
shl r9d, 8
or r9d, eax
movzx eax, byte [r12 - 5]
or r8d, eax
xor r10d, r9d
movzx eax, byte [r12 - 4]
shl r8d, 8
or r8d, eax
movzx eax, byte [r12 - 3]
shl r8d, 8
or r8d, eax
xor r11d, r8d
xor r11d, r10d
xor r11d, esi
xor r11d, edx
mov eax, r11d
mov edi, r11d
sub eax, esi
rol r11d, 0xa
rol eax, 5
imul eax, r15d
add eax, r11d
movzx r11d, word [rbp + 0x8ba]
xor r10d, eax
mov eax, r10d
rol eax, 2
lea ecx, [rdx + r10]
ror ecx, 9
imul ecx, r11d
sub ecx, eax
xor edi, ecx
mov ecx, edi
mov eax, edi
sub ecx, r15d
shr eax, 0xd
imul ecx, dword [rbp - 0x70]
sub ecx, eax
xor r10d, ecx
mov ecx, r11d
movzx r11d, word [rbp + 0x8be]
xor ecx, r10d
rol ecx, 6
mov eax, r10d
imul ecx, r11d
rol eax, 2
sub ecx, eax
mov eax, edx
xor edi, ecx
mov ecx, edi
xor ecx, esi
sub eax, ecx
xor r10d, eax
mov eax, r10d
mov ecx, r10d
ror ecx, 6
xor eax, r15d
imul eax, dword [rsp + 0x68]
xor ecx, eax
xor edi, ecx
mov eax, edi
rol eax, 2
lea ecx, [rdx + rdi]
ror ecx, 0xf
imul ecx, dword [rbp - 0x70]
add ecx, eax
xor r10d, ecx
mov ecx, r10d
sub ecx, esi
ror ecx, 0xe
imul ecx, r11d
mov eax, r10d
rol eax, 8
sub ecx, eax
xor edi, ecx
mov ecx, esi
xor ecx, edi
mov eax, edi
ror ecx, 0xc
imul ecx, r15d
ror eax, 0xa
xor ecx, eax
movzx eax, word [rbp + 0x8ba]
xor r10d, ecx
mov ecx, r11d
xor ecx, r10d
imul ecx, eax
mov eax, r10d
shr eax, 0xa
xor ecx, eax
xor edi, ecx
movzx ecx, word [rbp + 0x8be]
mov eax, edi
not eax
ror eax, 5
add eax, dword [rbp - 0x70]
imul eax, r11d
xor r10d, eax
mov r11d, r10d
sub r11d, ecx
xor r11d, edi
movzx edi, word [rbp + 0x8be]
xor r11d, esi
mov ecx, edi
xor ecx, r11d
mov eax, r11d
rol ecx, 2
imul ecx, r15d
shr eax, 2
add ecx, eax
movzx eax, word [rbp + 0x8ba]
xor r10d, ecx
mov ecx, r10d
sub ecx, edx
ror ecx, 6
imul ecx, eax
mov eax, r10d
rol eax, 7
add ecx, eax
xor r11d, ecx
mov eax, r11d
mov ecx, r11d
ror ecx, 9
xor eax, r15d
imul eax, dword [rbp - 0x70]
add ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0x8ba]
xor ecx, r10d
mov eax, r10d
rol eax, 7
rol ecx, 5
imul ecx, edi
add ecx, eax
mov eax, dword [rbp - 0x78]
xor r11d, ecx
movzx ecx, word [rbp + 0x8ba]
xor eax, r11d
xor r10d, eax
mov eax, r10d
ror eax, 3
sub eax, ecx
imul eax, r15d
xor r11d, eax
mov ecx, r11d
mov eax, r11d
sub ecx, edx
ror eax, 6
ror ecx, 1
imul ecx, dword [rbp - 0x70]
sub ecx, eax
xor r10d, ecx
lea ecx, [r10 + rsi]
mov eax, r10d
rol ecx, 3
imul ecx, edi
rol eax, 0xe
add ecx, eax
xor r11d, ecx
mov eax, r11d
ror eax, 0xe
lea ecx, [r11 + rsi]
rol ecx, 0xf
imul ecx, r15d
sub ecx, eax
movzx eax, word [rbp + 0x8ba]
xor r10d, ecx
mov ecx, r10d
xor ecx, dword [rbp - 0x70]
imul ecx, eax
mov eax, r10d
shr eax, 3
xor ecx, eax
xor r11d, ecx
mov ecx, edx
xor ecx, r11d
mov eax, r11d
xor r11d, dword [rbp + 0x48]
rol ecx, 4
imul ecx, dword [rbp - 0x70]
rol eax, 2
mov dword [rbp + 0x48], r8d
xor ecx, eax
xor ecx, r13d
mov r13d, r9d
xor r10d, ecx
mov ecx, 1
mov byte [r14 - 4], r10b
mov byte [r14], r11b
lea r14, [r14 + 8]
ror r10d, 8
mov byte [r14 - 0xd], r10b
ror r11d, 8
mov byte [r14 - 9], r11b
ror r10d, 8
mov byte [r14 - 0xe], r10b
ror r11d, 8
mov byte [r14 - 0xa], r11b
ror r10d, 8
ror r11d, 8
mov byte [r14 - 0xf], r10b
mov byte [r14 - 0xb], r11b
ror r11d, 8
ror r10d, 8
sub rbx, rcx
jne 0x14002bba1
mov dl, byte [rsp + 0x64]
xor r14d, r14d
mov r15d, dword [rsp + 0x60]
mov r13d, r14d
mov r12, qword [rbp + 8]
mov rbx, qword [rbp + 0x38]
mov r8, qword [rbp + 0x18]
jmp 0x14002be91
mov ecx, 1
mov rax, r14
test rbx, rbx
je 0x14002bea5
xor dl, byte [rax + r8]
add rax, rcx
cmp rax, rbx
jb 0x14002be99
mov rcx, qword [rbp + 0x78]
movzx eax, dl
cmp rax, qword [rbx + rcx]
je 0x14002bec0
mov rbx, qword [rbp + 0xb0]
mov edi, 0xc004d501
jmp 0x14002bedc
mov r13, qword [rbp]
mov rbx, r8
mov edi, dword [rbp - 0x30]
add r13, 0xfffffffffffffff8
mov qword [rbp + 0xb0], rbx
mov r8, r14
mov qword [rbp + 0x18], r14
test r8, r8
je 0x14002bf09
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, qword [rbp + 0x18]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov rbx, qword [rbp + 0xb0]
test edi, edi
js 0x14002bf33
mov rsi, rbx
mov qword [rbp - 0x38], rbx
mov rbx, r14
mov dword [rbp + 0x88], r13d
mov qword [rbp + 0xb0], rbx
mov edi, 0x10000000
jmp 0x14002bf42
mov rbx, qword [rbp + 0xb0]
mov r13d, dword [rbp + 0x88]
mov edi, 0xd0000001
mov rsi, r14
test rbx, rbx
je 0x14002bf75
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov r13d, dword [rbp + 0x88]
mov qword [rbp + 0xb0], r14
test edi, edi
js 0x14002c0e7
cmp r13d, 4
jae 0x14002bf8d
mov edi, 0xc000003e
jmp 0x14002c0e3
mov r9d, dword [rsi]
lea rcx, [rsi + 4]
mov dword [rsp + 0x68], r9d
cmp rcx, rsi
jb 0x14002c0de
lea eax, [r13 - 4]
cmp eax, 4
jb 0x14002bf83
mov ebx, dword [rcx]
lea rdi, [rcx + 4]
cmp rdi, rcx
jb 0x14002c0de
lea eax, [r13 - 8]
cmp eax, ebx
jb 0x14002bf83
lea eax, [rbx + 8]
cmp eax, 8
jb 0x14002c0de
mov ecx, r13d
lea rdx, [rdi + rbx]
lea rax, [rcx + rsi]
cmp rax, rdx
jb 0x14002bf83
sub rcx, rbx
sub rcx, rdi
add rcx, rsi
cmp rcx, 8
jae 0x14002bf83
mov dword [rbp - 0x78], r14d
mov rsi, r14
mov r8d, r14d
test rdi, rdi
je 0x14002c067
mov rcx, rdi
cmp rdx, rdi
jb 0x14002c0de
jbe 0x14002c062
lea rax, [rcx + 4]
cmp rax, rcx
jb 0x14002c0de
cmp rax, rdx
ja 0x14002c051
mov eax, dword [rcx]
add eax, 4
cmp eax, 4
jb 0x14002c05b
mov dword [rbp + 0x320], eax
mov r9d, eax
add r9, rcx
cmp r9, rcx
jb 0x14002c0de
mov rcx, r9
cmp r9, rdx
ja 0x14002c051
inc r8d
mov dword [rbp - 0x78], r8d
cmp rcx, rdx
jae 0x14002c065
jmp 0x14002c00a
mov edi, 0xc000000d
jmp 0x14002c0e3
mov edi, 0xc0000095
jmp 0x14002c0c9
cmp rcx, rdx
jne 0x14002c051
test ebx, ebx
je 0x14002c09d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
nop dword [rax + rax]
mov rsi, rax
test rax, rax
jne 0x14002c09d
mov edi, 0xc0000017
jmp 0x14002c0c9
test rdi, rdi
je 0x14002c0b0
mov r8, rbx
mov rdx, rdi
mov rcx, rsi
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, dword [rbp - 0x78]
mov dword [rbp + 0x100], eax
mov qword [rbp + 0x108], rsi
mov dword [rbp + 0x104], ebx
mov edi, r14d
test edi, edi
js 0x14002c0e3
mov eax, dword [rsp + 0x68]
cmp eax, dword [rbp + 0x100]
je 0x14002c0e3
jmp 0x14002bf83
mov edi, 0xc0000095
bts edi, 0x1c
mov rbx, qword [rbp + 0x20]
test rbx, rbx
je 0x14002c110
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov rbx, qword [rbp + 0x128]
test rbx, rbx
je 0x14002c1ce
mov rsi, qword [rbx + 8]
test rsi, rsi
je 0x14002c14d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 8], r14
mov rsi, qword [rbx + 0x18]
test rsi, rsi
je 0x14002c17a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 0x18], r14
mov rsi, qword [rbx + 0x28]
test rsi, rsi
je 0x14002c1a7
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbx + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x128], r14
mov rbx, qword [rbp + 0x40]
test rbx, rbx
je 0x14002c1f7
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov rbx, qword [rbp - 0x40]
test rbx, rbx
je 0x14002c220
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test r12, r12
je 0x14002c2d6
mov rbx, qword [r12 + 8]
test rbx, rbx
je 0x14002c258
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [r12 + 8], r14
mov rbx, qword [r12 + 0x18]
test rbx, rbx
je 0x14002c287
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [r12 + 0x18], r14
mov rbx, qword [r12 + 0x28]
test rbx, rbx
je 0x14002c2b6
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [r12 + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov rbx, qword [rbp - 0x38]
test rbx, rbx
je 0x14002c2ff
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test edi, edi
js 0x14002c3b9
mov ecx, dword [rbp + 0x100]
mov r9d, 1
cmp ecx, r9d
jb 0x14002c3b9
mov rdi, qword [rbp + 0x108]
test rdi, rdi
je 0x14002c3b9
test ecx, ecx
je 0x14002c3b9
mov edx, dword [rdi]
lea r8, [rdi + 4]
cmp r8, rdi
jb 0x14002c3b9
test edx, edx
mov dword [rbp + 0x324], edx
mov rax, r14
cmovne rax, r8
mov qword [rbp + 0x410], rax
cmp edx, 4
jne 0x14002c3b9
mov eax, dword [rax]
mov dword [rbp + 0x328], eax
test eax, eax
js 0x14002c3b9
cmp ecx, r9d
jbe 0x14002c3b9
mov ecx, r14d
lea rdx, [rdi + 4]
cmp rdx, rdi
jb 0x14002c3b9
mov edi, dword [rdi]
add rdi, rdx
cmp rdi, rdx
jb 0x14002c3b9
add ecx, r9d
cmp ecx, r9d
jb 0x14002c36e
mov ecx, dword [rdi]
lea rdx, [rdi + 4]
cmp rdx, rdi
jb 0x14002c3b9
test ecx, ecx
mov dword [rbp + 0x32c], ecx
mov rax, r14
cmovne rax, rdx
mov qword [rbp + 0x418], rax
cmp ecx, 8
jne 0x14002c3b9
mov rax, qword [rax]
mov qword [rbp + 0x420], rax
mov r13, qword [rbp - 0x18]
mov r12, qword [rbp - 0x80]
and qword [rbp - 0x28], 0
mov rdi, qword [rbp - 0x20]
test rdi, rdi
je 0x14002c3f3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp - 0x20], r14
and qword [rbp + 0x100], 0
mov rdi, qword [rbp + 0x108]
test rdi, rdi
je 0x14002c42e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x108], r14
test r12, r12
je 0x14002c453
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
test r13, r13
je 0x14002c478
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov eax, dword [rbp + 0xd4]
mov ebx, dword [rbp + 0xd8]
mov dword [rbp + 0x248], eax
mov rax, qword [rbp + 0xb8]
mov qword [rbp + 0x1a8], rax
mov qword [rbp + 0xb8], r14
jmp 0x1400235c7
mov r12, rdi
jmp 0x14002c3c1
cmp r15d, 0xd00000e5
je 0x14002c4d2
cmp r15d, 0xc004d501
je 0x14002c4d2
cmp r15d, 0xd000003e
jne 0x14002c4d8
mov r15d, 0xc004f028
jmp 0x140023673
mov r15d, 0xc004f027
test r15d, r15d
jns 0x14002c4f3
mov eax, 0x8007007a
cmp r15d, eax
jne 0x140023673
mov r14d, 0xc004f01e
jmp 0x14002c50a
cmp ebx, 4
jne 0x14002c4eb
mov rcx, qword [rbp + 0x1a8]
mov rax, qword [rbp + 0x318]
mov edx, dword [rcx]
mov dword [rax], edx
lea rcx, [rbp + 0x1a8]
call fcn.14004a20c
mov eax, r14d
mov rcx, qword [rbp + 0x1090]
xor rcx, rsp
call fcn.140067670
mov rbx, qword [rsp + 0x11e0]
add rsp, 0x11a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret