Function at 0x1400195c0
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 - 0x1110]
mov eax, 0x1210
call fcn.1400614c0
sub rsp, rax
mov rax, qword [0x1400bc288]
xor rax, rsp
mov qword [rbp + 0x1100], rax
xor ebx, ebx
mov qword [rbp + 0x458], r8
mov qword [rbp + 0x60], rdx
mov qword [rbp + 0x238], rbx
test rdx, rdx
jne 0x140019619
mov ebx, 0x80070057
jmp 0x140023472
test r8, r8
je 0x14001960f
mov dword [rbp + 0x170], ebx
mov r14d, 1
mov dword [rbp + 0xe0], ebx
mov qword [rbp + 0x128], rbx
mov dword [rbp + 0x88], ebx
xor eax, eax
lock cmpxchg dword [0x1400bd658], r14d
jne 0x14001963d
mov eax, dword [0x1400bd654]
or r15, 0xffffffffffffffff
mov r12d, 0x338
test eax, eax
jne 0x140019bfd
mov dword [rbp - 0x50], ebx
mov qword [rbp + 0x1a0], rbx
mov qword [rbp + 0x288], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, r12d
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp + 0x30], rax
test rax, rax
je 0x140019b78
mov esi, ebx
mov dword [rbp + 0x18], ebx
or ecx, 0xffffffff
mov dword [rbp + 0x40], ebx
mov edx, ebx
lea r12, [rax + 7]
mov r11d, ebx
lea r13, [0x14008c7a2]
mov r15d, 0x67
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 r8d, r9d
xor r8d, edx
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
xor eax, 0xab69605e
mov edi, 0x7f1
ror eax, 0xc
imul edx, eax, 0x137f
mov eax, r8d
ror eax, 0xa
xor edx, eax
xor r11d, edx
mov eax, r11d
xor eax, edi
imul edx, eax, 0xab69
mov eax, r11d
shr eax, 0xa
xor edx, eax
xor edx, r8d
mov eax, edx
not eax
ror eax, 5
add eax, 0x605e
imul eax, eax, 0x7f1
xor r11d, eax
lea r8d, [r11 - 0x7f1]
xor r8d, edx
xor r8d, 0xab69605e
mov eax, r8d
xor eax, edi
rol eax, 2
imul edx, eax, 0x137f
mov eax, r8d
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 r8d, edx
mov eax, r8d
mov edi, r8d
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 r8d, edx
mov edi, r8d
xor edi, r11d
xor edi, 0xac987321
mov eax, edi
ror eax, 3
sub eax, 0xab69
imul eax, eax, 0x137f
xor r8d, eax
lea eax, [r8 - 0x7f1137f]
ror eax, 1
imul edx, eax, 0x605e
mov eax, r8d
ror eax, 6
sub edx, eax
xor edi, edx
lea eax, [rdi - 0x54969fa2]
rol eax, 3
imul edx, eax, 0x7f1
mov eax, edi
rol eax, 0xe
add edx, eax
xor r8d, edx
lea eax, [r8 - 0x54969fa2]
rol eax, 0xf
imul edx, eax, 0x137f
mov eax, r8d
ror eax, 0xe
sub edx, eax
xor edi, edx
mov eax, edi
xor eax, 0x605e
imul edx, eax, 0xab69
mov eax, edi
shr eax, 3
xor edx, eax
xor r8d, edx
mov eax, r8d
xor eax, 0x7f1137f
rol eax, 4
imul edx, eax, 0x605e
mov eax, r8d
rol eax, 2
xor r8d, ecx
mov dword [rbp + 0x18], r8d
mov ecx, r9d
xor edx, eax
xor edx, esi
mov esi, r10d
xor edi, edx
mov dword [rbp + 0x40], edi
mov byte [r12 - 4], dil
mov al, byte [rbp + 0x18]
ror dword [rbp + 0x40], 8
mov byte [r12], al
lea r12, [r12 + 8]
ror dword [rbp + 0x18], 8
mov al, byte [rbp + 0x40]
mov byte [r12 - 0xd], al
mov al, byte [rbp + 0x18]
ror dword [rbp + 0x40], 8
mov byte [r12 - 9], al
ror dword [rbp + 0x18], 8
mov al, byte [rbp + 0x40]
mov byte [r12 - 0xe], al
ror dword [rbp + 0x40], 8
mov al, byte [rbp + 0x18]
mov byte [r12 - 0xa], al
ror dword [rbp + 0x18], 8
mov al, byte [rbp + 0x40]
mov byte [r12 - 0xf], al
mov al, byte [rbp + 0x18]
mov byte [r12 - 0xb], al
mov r11d, dword [rbp + 0x40]
mov edx, dword [rbp + 0x18]
ror r11d, 8
ror edx, 8
mov dword [rbp + 0x40], r11d
mov dword [rbp + 0x18], edx
sub r15, r14
jne 0x1400196b5
mov r14, qword [rbp + 0x30]
or r15, 0xffffffffffffffff
mov rax, rbx
mov cl, bl
mov esi, ebx
mov r12d, 0x338
lea edx, [r15 + 2]
xor cl, byte [rax + r14]
add rax, rdx
cmp rax, r12
jb 0x1400199ef
movzx eax, cl
cmp rax, qword [0x14008cad8]
je 0x140019a0e
mov edi, 0xc004d501
jmp 0x140019a21
mov qword [rbp + 0x1a0], r14
mov edi, ebx
mov r14, rbx
mov qword [rbp + 0x288], r12
test r14, r14
je 0x140019a3a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test edi, edi
js 0x140019b78
mov rax, qword [rbp + 0x288]
lea r14, [0x1400bd360]
mov rdi, qword [rbp + 0x1a0]
xor edx, edx
mov rcx, r14
lea r8d, [rdx + 0x60]
mov byte [rax + rdi - 1], bl
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
cmp byte [rdi], bl
je 0x140019b7d
mov r13d, ebx
jmp 0x140019a7d
lea r14, [0x1400bd360]
mov rdx, rdi
mov rax, r15
inc rax
cmp word [rdi + rax*2], bx
jne 0x140019a83
lea rdi, [rdi + rax*2]
mov eax, r13d
lea rcx, [rax + rax*2]
lea r14, [r14 + rcx*8]
xor ecx, ecx
mov r8, r14
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
je 0x140019b78
mov rax, qword [r14]
mov ecx, 0x5a4d
mov esi, ebx
cmp word [rax], cx
je 0x140019ac4
mov esi, 0xc000007b
jmp 0x140019b0f
movsxd rcx, dword [rax + 0x3c]
cmp ecx, 0x10000000
jae 0x140019abd
add rcx, qword [r14]
cmp rcx, qword [r14]
jb 0x140019abd
cmp dword [rcx], 0x4550
jne 0x140019abd
movzx eax, word [rcx + 0x18]
mov edx, 0x10b
sub ax, dx
mov edx, 0xfeff
test dx, ax
je 0x140019afd
mov esi, 0xc000000d
jmp 0x140019b0f
mov rax, qword [rcx + 0x88]
mov qword [r14 + 0xc], rax
mov eax, dword [rcx + 0x50]
mov dword [r14 + 8], eax
mov eax, dword [rdi + 2]
mov r12d, ebx
add rdi, 6
mov dword [rbp - 0x78], eax
test eax, eax
je 0x140019b65
mov rdx, rdi
mov rax, r15
inc rax
cmp byte [rdi + rax], bl
jne 0x140019b26
inc rdi
add rdi, rax
test esi, esi
js 0x140019b54
mov rcx, qword [r14]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140019b7d
mov ecx, dword [rbp - 0x50]
lea rdx, [0x1400b6050]
mov qword [rdx + rcx*8], rax
mov eax, 1
add dword [rbp - 0x50], eax
add r12d, eax
cmp r12d, dword [rbp - 0x78]
jb 0x140019b20
mov r14d, 1
add r13d, r14d
cmp byte [rdi], bl
jne 0x140019a76
jmp 0x140019b83
mov esi, 0xc000007a
mov r14d, 1
cmp qword [rbp + 0x1a0], rbx
je 0x140019ba4
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp + 0x1a0]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test esi, esi
jns 0x140019bf7
lea r12, [0x1400bd360]
mov esi, 4
mov rdi, r12
cmp qword [rdi], rbx
je 0x140019bc5
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
add rdi, 0x18
sub rsi, r14
jne 0x140019bb7
xor edx, edx
lea r8d, [rsi + 0x60]
mov rcx, r12
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006f800]
lea rcx, [0x1400b6050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x140019c06
mov eax, dword [0x1400bd654]
add eax, r14d
mov dword [0x1400bd654], eax
mov eax, ebx
mov r14d, ebx
xchg dword [0x1400bd658], eax
mov qword [rbp + 0x210], rbx
mov esi, ebx
mov qword [rbp + 0x218], rbx
mov edi, 0x80004005
mov rax, qword gs:[0x60]
mov r13d, 0x80070000
cmp dword [rax + 0x2c0], ebx
je 0x140019ecb
mov rax, qword [0x1400b6160]
call qword [case.0x14006088e.0]
mov r12, rax
test rax, rax
jne 0x140019c76
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx esi, ax
or esi, r13d
test eax, eax
cmovle esi, eax
test esi, esi
js 0x140019ed2
mov esi, edi
jmp 0x140019ed2
mov qword [rbp + 0xf0], rbx
mov r9d, ebx
mov rdi, rbx
lea rax, [rbp + 0x164]
mov r8, rdi
mov qword [rsp + 0x20], rax
mov edx, 2
mov rax, qword [0x1400b6180]
mov rcx, r12
call qword [case.0x14006088e.0]
test eax, eax
jne 0x140019d23
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x140019d0d
cmp qword [rbp + 0xf0], rbx
jne 0x140019d04
mov edi, dword [rbp + 0x164]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
lea rcx, [rbp + 0xf0]
mov rdi, rax
call fcn.140043808
test rdi, rdi
je 0x140019cfd
mov r9d, dword [rbp + 0x164]
mov qword [rbp + 0xf0], rdi
jmp 0x140019c83
mov esi, 0x8007000e
jmp 0x140019d31
mov edi, 0x80004005
mov esi, edi
jmp 0x140019d3d
mov edi, 0x80004005
test eax, eax
je 0x140019d09
movzx esi, ax
or esi, r13d
test eax, eax
cmovle esi, eax
jmp 0x140019d3d
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x210], rax
mov edi, 0x80004005
mov qword [rbp + 0xf0], rbx
lea rcx, [rbp + 0xf0]
call fcn.140043808
test esi, esi
js 0x140019ed2
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov ecx, eax
mov rax, qword [0x1400b6178]
call qword [case.0x14006088e.0]
mov r12, rax
test rax, rax
je 0x140019c56
mov qword [rbp + 0xf8], rbx
mov esi, ebx
mov r9d, ebx
mov rdi, rbx
lea rax, [rbp + 0x14c]
mov r8, rdi
mov qword [rsp + 0x20], rax
mov edx, 2
mov rax, qword [0x1400b6180]
mov rcx, r12
call qword [case.0x14006088e.0]
test eax, eax
jne 0x140019e21
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x140019e0b
cmp qword [rbp + 0xf8], rbx
jne 0x140019e02
mov edi, dword [rbp + 0x14c]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
lea rcx, [rbp + 0xf8]
mov rdi, rax
call fcn.140043808
test rdi, rdi
je 0x140019dfb
mov r9d, dword [rbp + 0x14c]
mov qword [rbp + 0xf8], rdi
jmp 0x140019d81
mov esi, 0x8007000e
jmp 0x140019e2f
mov edi, 0x80004005
mov esi, edi
jmp 0x140019e3b
mov edi, 0x80004005
test eax, eax
je 0x140019e07
movzx esi, ax
or esi, r13d
test eax, eax
cmovle esi, eax
jmp 0x140019e3b
mov rax, qword [rbp + 0xf8]
mov qword [rbp + 0x218], rax
mov edi, 0x80004005
mov qword [rbp + 0xf8], rbx
lea rcx, [rbp + 0xf8]
call fcn.140043808
test esi, esi
js 0x140019ed2
mov rcx, qword [rbp + 0x210]
test rcx, rcx
je 0x140019ecb
lea rdx, [0x14008a6f0]
call sub.api_ms_win_crt_string_l1_1_0.dll_wcscmp
test eax, eax
jne 0x140019ecb
mov rcx, qword [rbp + 0x218]
test rcx, rcx
je 0x140019ecb
lea rdx, str.Default
call sub.api_ms_win_crt_string_l1_1_0.dll_wcscmp
test eax, eax
jne 0x140019ecb
xor eax, eax
mov dword [rbp + 0x168], eax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov r9d, 4
lea r8, [rbp + 0x168]
mov rcx, rax
lea edx, [r9 + 7]
call qword [sym.imp.KERNEL32.dll_GetProcessMitigationPolicy]
test eax, eax
je 0x140019c56
mov eax, SafeArrayGetDim
test byte [rbp + 0x168], al
mov eax, 1
cmove r14d, eax
mov dword [rbp + 0x88], r14d
lea rcx, [rbp + 0x218]
call fcn.140043808
lea rcx, [rbp + 0x210]
call fcn.140043808
mov eax, dword [rbp + 0x88]
test esi, esi
cmovs eax, ebx
mov dword [rbp + 0x88], eax
mov edx, 4
mov dword [rbp + 0xe0], ebx
lea ecx, [rdx + 0x3c]
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
lea rcx, [rbp + 0x128]
mov qword [rbp + 0x58], rax
mov rdi, rax
call fcn.1400437e4
test rdi, rdi
jne 0x140019fe8
mov qword [rbp + 0x128], rbx
mov esi, 0x8007000e
mov r14d, dword [rbp + 0xe8]
mov r12d, 1
xor eax, eax
lock cmpxchg dword [0x1400bd658], r12d
jne 0x140019f44
mov eax, dword [0x1400bd654]
test eax, eax
jle 0x140019fb4
sub eax, r12d
mov dword [0x1400bd654], eax
jne 0x140019fb4
lea r13, [0x1400bd360]
mov r15d, 4
mov rdi, r13
cmp qword [rdi], rbx
je 0x140019f84
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
add rdi, 0x18
sub r15, r12
jne 0x140019f76
xor edx, edx
lea r8d, [r15 + 0x60]
mov rcx, r13
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006f800]
lea rcx, [0x1400b6050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, ebx
lea rcx, [rbp + 0x128]
xchg dword [0x1400bd658], eax
call fcn.1400437e4
test esi, esi
jns 0x14002345a
cmp esi, 0xd0000034
jne 0x14002341c
mov esi, 0xc004f012
mov ebx, esi
jmp 0x140023472
xor eax, eax
mov qword [rbp + 0x128], rdi
mov qword [rbp - 0x68], rax
mov edi, LoadRegTypeLib
mov qword [rbp - 0x60], rax
mov r12, rbx
mov qword [rbp + 0xa0], rax
mov r14, rbx
mov qword [rbp + 0xa8], rax
lea rax, [0x1400bc3b0]
mov qword [rbp + 0x338], rax
mov dword [rbp + 0x150], ebx
mov dword [rbp + 0x9c], ebx
mov qword [rbp + 0x290], rdi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov esi, 8
mov r8d, edi
mov rcx, rax
mov edx, esi
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp + 0x30], rax
mov rdi, rax
mov r13d, 0xc0000017
test rax, rax
jne 0x14001a06b
mov esi, r13d
mov dword [rsp + 0x60], r13d
jmp 0x14001a224
mov r8, qword [rbp + 0x290]
mov rcx, rdi
mov rdx, qword [rbp + 0x338]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r14d, dword [rbp + 0x290]
mov r12, rdi
mov dword [rbp - 0x80], r14d
mov qword [rsp + 0x70], rdi
lea rax, [0x1400bc2f0]
mov qword [rbp + 0x2c8], rsi
mov qword [rbp + 0x340], rax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
mov edx, esi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp - 0x18], rax
mov rdi, rax
test rax, rax
jne 0x14001a0d9
mov esi, r13d
mov dword [rsp + 0x60], r13d
mov r14, rbx
jmp 0x14001a224
mov r8, qword [rbp + 0x2c8]
mov rcx, rdi
mov rdx, qword [rbp + 0x340]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsp + 0x68], rdi
mov rdi, qword [rbp + 0x2c8]
mov qword [rbp - 0x28], rdi
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x200], rax
mov ecx, esi
mov dword [rbp + 0x8c], ecx
add r14d, 4
or r8d, 0xffffffff
cmp r14d, 4
mov eax, r8d
mov r11d, 0xc0000095
mov edx, ecx
cmovae eax, r14d
sbb r13d, r13d
and r13d, r11d
mov dword [rsp + 0x60], r13d
mov esi, r13d
cmp r14d, 4
jb 0x14001a21f
mov ecx, eax
mov dword [rbp + 0x8c], eax
mov edx, eax
lea eax, [rax + 8]
mov edx, r8d
cmp eax, 8
mov r9d, 0x10000000
cmovae edx, eax
sbb esi, esi
and esi, r11d
add esi, r9d
mov dword [rsp + 0x60], esi
cmp eax, 8
jb 0x14001cc85
lea r12d, [rdi + 4]
mov eax, r8d
cmp r12d, 4
cmovae eax, r12d
sbb esi, esi
and esi, r11d
cmp r12d, 4
mov dword [rsp + 0x60], esi
mov dword [rbp - 0x78], esi
cmovae ecx, eax
mov dword [rbp + 0x8c], ecx
jb 0x14001a21a
lea eax, [rcx + rdx]
mov ecx, r8d
cmp eax, edx
cmovae ecx, eax
sbb esi, esi
and esi, r11d
add esi, r9d
mov dword [rsp + 0x60], esi
cmp eax, edx
jb 0x14001cc80
mov dword [rbp + 0x8c], SafeArrayGetDim
lea eax, [rcx + 0xc]
mov edi, r8d
cmp eax, ecx
cmovae edi, eax
sbb esi, esi
and esi, r11d
add esi, r9d
mov dword [rsp + 0x60], esi
cmp eax, ecx
jb 0x14001cc80
mov rcx, qword [rbp + 0x60]
lea r8, [rbp + 0x1f0]
mov edx, 0x7fffffff
call fcn.140043840
test eax, eax
jns 0x14001a334
mov qword [rbp + 0x1f0], rbx
mov esi, 0xc000003e
mov dword [rsp + 0x60], esi
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
and qword [rbp - 0x68], 0
mov rdi, qword [rbp - 0x60]
test rdi, rdi
je 0x14001a24a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp - 0x60], rbx
and qword [rbp + 0xa0], 0
mov rdi, qword [rbp + 0xa8]
test rdi, rdi
je 0x14001a279
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0xa8], rbx
test r12, r12
je 0x14001a292
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r14, r14
je 0x14001a2ab
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test esi, esi
js 0x140019f37
mov eax, dword [rbp + 0x88]
test eax, eax
je 0x1400233ef
mov edi, 0x104
mov qword [rbp + 0x460], rbx
mov r8d, edi
mov dword [0x1400bd350], eax
lea rdx, [rbp + 0xef0]
lea rcx, [0x140000000]
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x14002109b
cmp eax, edi
jne 0x14001a305
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
je 0x14002109b
mov rax, qword [0x1400b6148]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
call qword [case.0x14006088e.0]
mov qword [rbp + 0x68], rax
test rax, rax
jne 0x14001cca8
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x14002109b
mov rax, qword [rbp + 0x1f0]
or r8d, 0xffffffff
mov edx, dword [rbp + 0x8c]
inc rax
mov qword [rbp + 0x1f0], rax
mov r11d, 0xc0000095
lea ecx, [rax*2 + 4]
mov eax, r8d
cmp ecx, 4
cmovae eax, ecx
sbb esi, esi
and esi, r11d
cmp ecx, 4
mov dword [rsp + 0x60], esi
cmovae edx, eax
mov dword [rbp + 0x8c], edx
jb 0x14001a21a
lea eax, [rdx + rdi]
mov r9d, 0x10000000
cmp eax, edi
mov edx, r8d
cmovae edx, eax
sbb esi, esi
and esi, r11d
add esi, r9d
mov dword [rsp + 0x60], esi
cmp eax, edi
jb 0x14001cc80
mov dword [rbp + 0x8c], 8
lea eax, [rdx + 8]
mov ecx, r8d
cmp eax, edx
cmovae ecx, eax
sbb esi, esi
and esi, r11d
add esi, r9d
mov dword [rsp + 0x60], esi
cmp eax, edx
jb 0x14001cc80
mov dword [rbp + 0x8c], 8
lea eax, [rcx + 8]
mov edx, r8d
cmp eax, ecx
cmovae edx, eax
sbb esi, esi
and esi, r11d
add esi, r9d
mov dword [rsp + 0x60], esi
cmp eax, ecx
jb 0x14001cc80
mov dword [rbp - 0x64], edx
mov edi, edx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdx, rax
test rax, rax
jne 0x14001a425
mov esi, 0xc0000017
jmp 0x14001a216
mov qword [rbp - 0x60], rdx
mov edi, ebx
mov dword [rbp - 0x68], ebx
mov dword [rbp + 0x220], ebx
add rax, 4
mov r8, r15
cmp rax, rdx
mov r11d, 0xc0000095
cmovae r8, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rax, rdx
jb 0x14001a486
mov ecx, dword [rbp - 0x64]
lea rax, [rdx + 8]
add rcx, rdx
cmp rax, rcx
jbe 0x14001a46f
mov esi, 0xc0000023
jmp 0x14001a216
mov dword [rdx], 4
mov eax, dword [rbp + 0x220]
mov dword [r8], eax
mov edi, dword [rbp - 0x68]
inc edi
mov dword [rbp - 0x68], edi
test esi, esi
js 0x14001a21a
mov edx, dword [rbp - 0x80]
test edx, edx
je 0x14001a5ce
cmp qword [rbp - 0x60], rbx
jne 0x14001a4fd
mov edx, dword [rbp + 0x108]
or eax, 0xffffffff
cmp r14d, 4
mov dword [rsp + 0x60], r13d
mov esi, r13d
cmovae eax, r14d
cmovae edx, eax
mov dword [rbp + 0x108], edx
jb 0x14001a5d7
mov ecx, dword [rbp - 0x64]
or r8d, 0xffffffff
mov r13d, 1
lea eax, [rdx + rcx]
cmp eax, ecx
cmovae r8d, eax
sbb esi, esi
and esi, r11d
mov dword [rbp - 0x64], r8d
mov dword [rsp + 0x60], esi
cmp eax, ecx
jb 0x14001a5e1
add edi, r13d
mov dword [rbp - 0x68], edi
jmp 0x14001a5ef
mov r8, qword [rbp - 0x60]
mov r10d, ebx
mov r13d, 1
test edi, edi
je 0x14001a57c
mov r9d, dword [rbp + 0x108]
mov r14d, r11d
mov ecx, dword [r8]
or eax, 0xffffffff
add ecx, 4
mov r11, r8
cmp ecx, 4
cmovae eax, ecx
sbb esi, esi
and esi, r14d
cmp ecx, 4
mov dword [rsp + 0x60], esi
cmovae r9d, eax
mov dword [rbp + 0x108], r9d
jb 0x14001a5d7
mov rcx, r8
mov edx, r9d
add rdx, r8
mov rax, r15
cmp rdx, r8
cmovae rax, rdx
cmp rdx, rcx
mov r8, rax
sbb esi, esi
and esi, r14d
mov dword [rsp + 0x60], esi
cmp rdx, rcx
jb 0x14001a5d7
add r10d, r13d
cmp r10d, edi
jb 0x14001a518
mov edx, dword [rbp - 0x80]
mov r11d, r14d
lea rax, [r8 + 4]
mov r9, r15
cmp rax, r8
cmovae r9, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rax, r8
jb 0x14001a5d7
mov ecx, dword [rbp - 0x64]
lea rax, [r8 + 4]
add rcx, qword [rbp - 0x60]
mov edi, edx
add rax, rdi
cmp rax, rcx
ja 0x14001a465
mov dword [r8], edx
mov rcx, r9
mov rdx, qword [rbp + 0x30]
mov r8d, edi
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov edi, dword [rbp - 0x68]
add edi, r13d
mov dword [rbp - 0x68], edi
jmp 0x14001a5dd
mov esi, 0xc000000d
mov dword [rsp + 0x60], esi
mov r13d, 1
mov r8d, dword [rbp - 0x64]
test esi, esi
js 0x14001a21a
mov r11d, 0xc0000095
mov r14, qword [rbp - 0x28]
test r14d, r14d
je 0x14001a792
cmp qword [rbp - 0x60], rbx
jne 0x14001a668
mov edx, dword [rbp + 0x10c]
or eax, 0xffffffff
mov esi, dword [rbp - 0x78]
cmp r12d, 4
mov dword [rsp + 0x60], esi
cmovae eax, r12d
cmovae edx, eax
mov dword [rbp + 0x10c], edx
jb 0x14001a73f
mov ecx, r8d
lea eax, [rdx + r8]
or r8d, 0xffffffff
cmp eax, ecx
cmovae r8d, eax
sbb esi, esi
and esi, r11d
mov dword [rbp - 0x64], r8d
mov dword [rsp + 0x60], esi
cmp eax, ecx
jb 0x14001a73f
mov rax, qword [rbp + 0x200]
add edi, r13d
mov dword [rbp - 0x68], edi
mov qword [rbp + 0x2d0], rax
jmp 0x14001a75b
mov r9, qword [rbp - 0x60]
mov r11d, ebx
test edi, edi
je 0x14001a6de
mov r10d, dword [rbp + 0x10c]
mov ecx, dword [r9]
or eax, 0xffffffff
add ecx, 4
mov r12, r9
cmp ecx, 4
cmovae eax, ecx
sbb esi, esi
and esi, 0xc0000095
cmp ecx, 4
mov dword [rsp + 0x60], esi
cmovae r10d, eax
mov dword [rbp + 0x10c], r10d
jb 0x14001a739
mov rcx, r9
mov edx, r10d
add rdx, r9
mov rax, r15
cmp rdx, r9
cmovae rax, rdx
cmp rdx, rcx
mov r9, rax
sbb esi, esi
and esi, 0xc0000095
mov dword [rsp + 0x60], esi
cmp rdx, rcx
jb 0x14001a739
add r11d, r13d
cmp r11d, edi
jb 0x14001a67a
lea rax, [r9 + 4]
mov r10, r15
cmp rax, r9
mov r11d, 0xc0000095
cmovae r10, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rax, r9
jb 0x14001a73f
mov edx, r14d
mov ecx, r8d
add rcx, qword [rbp - 0x60]
lea rax, [rdx + 4]
add rax, r9
cmp rax, rcx
ja 0x14001a465
mov r8d, edx
mov dword [r9], r14d
mov rdx, qword [rbp - 0x18]
mov rcx, r10
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov edi, dword [rbp - 0x68]
mov r8d, dword [rbp - 0x64]
add edi, r13d
mov dword [rbp - 0x68], edi
mov r11d, 0xc0000095
test esi, esi
js 0x14001a21a
mov rax, qword [rbp + 0x200]
mov qword [rbp + 0x2d0], rax
cmp qword [rbp - 0x60], rbx
jne 0x14001a79d
mov dword [rbp + 0x16c], SafeArrayGetDim
lea ecx, [r8 + 0xc]
or eax, 0xffffffff
cmp ecx, r8d
cmovae eax, ecx
sbb esi, esi
and esi, r11d
mov dword [rbp - 0x64], eax
mov dword [rsp + 0x60], esi
cmp ecx, r8d
jb 0x14001a856
add edi, r13d
mov dword [rbp - 0x68], edi
jmp 0x14001a85e
mov esi, 0xc000000d
mov dword [rsp + 0x60], esi
jmp 0x14001a73f
mov r9, qword [rbp - 0x60]
mov r11d, ebx
mov r12d, 0xc0000095
test edi, edi
je 0x14001a80f
mov r10d, dword [rbp + 0x16c]
mov ecx, dword [r9]
or eax, 0xffffffff
add ecx, 4
mov r14, r9
cmp ecx, 4
cmovae eax, ecx
sbb esi, esi
and esi, r12d
cmp ecx, 4
mov dword [rsp + 0x60], esi
cmovae r10d, eax
mov dword [rbp + 0x16c], r10d
jb 0x14001a856
mov rcx, r9
mov edx, r10d
add rdx, r9
mov rax, r15
cmp rdx, r9
cmovae rax, rdx
cmp rdx, rcx
mov r9, rax
sbb esi, esi
and esi, r12d
mov dword [rsp + 0x60], esi
cmp rdx, rcx
jb 0x14001a856
add r11d, r13d
cmp r11d, edi
jb 0x14001a7b5
lea rax, [r9 + 4]
mov rdx, r15
cmp rax, r9
cmovae rdx, rax
sbb esi, esi
and esi, r12d
mov dword [rsp + 0x60], esi
cmp rax, r9
jb 0x14001a856
mov ecx, r8d
lea rax, [r9 + 0xc]
add rcx, qword [rbp - 0x60]
cmp rax, rcx
ja 0x14001a465
mov dword [r9], 8
movsd xmm0, qword [rbp + 0x2d0]
movsd qword [rdx], xmm0
add dword [rbp - 0x68], r13d
test esi, esi
js 0x14001a21a
mov r14, qword [rbp + 0x60]
lea r8, [rbp + 0x1f8]
mov rcx, r14
mov edx, 0x7fffffff
call fcn.140043840
test eax, eax
jns 0x14001a886
mov qword [rbp + 0x1f8], rbx
jmp 0x14001a211
mov rcx, qword [rbp + 0x1f8]
mov rdx, r15
mov r11d, 0xc0000095
lea rax, [rcx + 1]
cmp rax, rcx
cmovae rdx, rax
sbb esi, esi
and esi, r11d
mov qword [rbp + 0x1f8], rdx
mov dword [rsp + 0x60], esi
cmp rax, rcx
jb 0x14001aa06
lea r9d, [rdx + rdx]
test r9d, r9d
je 0x14001a9f7
cmp qword [rbp - 0x60], rbx
jne 0x14001a930
mov edi, dword [rbp + 0x110]
lea ecx, [r9 + 4]
or r8d, 0xffffffff
cmp ecx, 4
mov eax, r8d
cmovae eax, ecx
sbb esi, esi
and esi, r11d
cmp ecx, 4
mov dword [rsp + 0x60], esi
cmovae edi, eax
mov dword [rbp + 0x110], edi
jb 0x14001aa00
mov edx, dword [rbp - 0x64]
mov eax, r8d
lea ecx, [rdi + rdx]
cmp ecx, edx
cmovae eax, ecx
sbb esi, esi
and esi, r11d
mov dword [rbp - 0x64], eax
mov dword [rsp + 0x60], esi
cmp ecx, edx
jb 0x14001aa00
add dword [rbp - 0x68], r13d
mov esi, ebx
mov dword [rsp + 0x60], ebx
jmp 0x14001aa00
mov r10d, ebx
mov rdi, qword [rbp - 0x60]
cmp dword [rbp - 0x68], ebx
jbe 0x14001a9aa
mov r8d, dword [rbp + 0x110]
mov r12d, r11d
mov ecx, dword [rdi]
or eax, 0xffffffff
add ecx, 4
mov r11, rdi
cmp ecx, 4
cmovae eax, ecx
sbb esi, esi
and esi, r12d
cmp ecx, 4
mov dword [rsp + 0x60], esi
cmovae r8d, eax
mov dword [rbp + 0x110], r8d
jb 0x14001aa00
mov rcx, rdi
mov edx, r8d
add rdx, rdi
mov rax, r15
cmp rdx, rdi
cmovae rax, rdx
cmp rdx, rcx
mov rdi, rax
sbb esi, esi
and esi, r12d
mov dword [rsp + 0x60], esi
cmp rdx, rcx
jb 0x14001aa00
add r10d, r13d
cmp r10d, dword [rbp - 0x68]
jb 0x14001a946
mov r11d, 0xc0000095
lea rax, [rdi + 4]
mov r10, r15
cmp rax, rdi
cmovae r10, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rax, rdi
jb 0x14001aa00
mov ecx, dword [rbp - 0x64]
lea rax, [rdi + 4]
add rcx, qword [rbp - 0x60]
mov r8d, r9d
add rax, r8
cmp rax, rcx
jbe 0x14001a9e3
mov esi, 0xc0000023
jmp 0x14001a9fc
mov rdx, r14
mov dword [rdi], r9d
mov rcx, r10
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
add dword [rbp - 0x68], r13d
jmp 0x14001aa00
mov esi, 0xc000000d
mov dword [rsp + 0x60], esi
mov r11d, 0xc0000095
test esi, esi
js 0x14001a21a
mov eax, dword [rbp + 0x88]
mov dword [rbp + 0x230], eax
cmp qword [rbp - 0x60], rbx
jne 0x14001aa5f
mov dword [rbp + 0x178], 8
mov edx, dword [rbp - 0x64]
or eax, 0xffffffff
lea ecx, [rdx + 8]
cmp ecx, edx
cmovae eax, ecx
sbb esi, esi
and esi, r11d
mov dword [rbp - 0x64], eax
mov dword [rsp + 0x60], esi
cmp ecx, edx
jb 0x14001ab0e
add dword [rbp - 0x68], r13d
mov dword [rbp + 0x158], 4
jmp 0x14001ab26
mov r9d, ebx
mov rdi, qword [rbp - 0x60]
cmp dword [rbp - 0x68], ebx
jbe 0x14001aacc
mov r8d, dword [rbp + 0x178]
mov ecx, dword [rdi]
or eax, 0xffffffff
add ecx, 4
mov r10, rdi
cmp ecx, 4
cmovae eax, ecx
sbb esi, esi
and esi, r11d
cmp ecx, 4
mov dword [rsp + 0x60], esi
cmovae r8d, eax
mov dword [rbp + 0x178], r8d
jb 0x14001ab0e
mov rcx, rdi
mov edx, r8d
add rdx, rdi
mov rax, r15
cmp rdx, rdi
cmovae rax, rdx
cmp rdx, rcx
mov rdi, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rdx, rcx
jb 0x14001ab0e
add r9d, r13d
cmp r9d, dword [rbp - 0x68]
jb 0x14001aa72
lea rax, [rdi + 4]
mov rdx, r15
cmp rax, rdi
cmovae rdx, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rax, rdi
jb 0x14001ab0e
mov ecx, dword [rbp - 0x64]
lea rax, [rdi + 8]
add rcx, qword [rbp - 0x60]
cmp rax, rcx
ja 0x14001a465
mov dword [rdi], 4
mov eax, dword [rbp + 0x230]
mov dword [rdx], eax
add dword [rbp - 0x68], r13d
test esi, esi
js 0x14001a21a
mov dword [rbp + 0x158], 4
cmp qword [rbp - 0x60], rbx
jne 0x14001ab5b
mov dword [rbp + 0x160], 8
mov edx, dword [rbp - 0x64]
or eax, 0xffffffff
lea ecx, [rdx + 8]
cmp ecx, edx
cmovae eax, ecx
sbb esi, esi
and esi, r11d
mov dword [rbp - 0x64], eax
mov dword [rsp + 0x60], esi
cmp ecx, edx
jb 0x14001ac0a
add dword [rbp - 0x68], r13d
jmp 0x14001ac12
mov r9d, ebx
mov rdi, qword [rbp - 0x60]
cmp dword [rbp - 0x68], ebx
jbe 0x14001abc8
mov r8d, dword [rbp + 0x160]
mov ecx, dword [rdi]
or eax, 0xffffffff
add ecx, 4
mov r10, rdi
cmp ecx, 4
cmovae eax, ecx
sbb esi, esi
and esi, r11d
cmp ecx, 4
mov dword [rsp + 0x60], esi
cmovae r8d, eax
mov dword [rbp + 0x160], r8d
jb 0x14001ac0a
mov rcx, rdi
mov edx, r8d
add rdx, rdi
mov rax, r15
cmp rdx, rdi
cmovae rax, rdx
cmp rdx, rcx
mov rdi, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rdx, rcx
jb 0x14001ac0a
add r9d, r13d
cmp r9d, dword [rbp - 0x68]
jb 0x14001ab6e
lea rax, [rdi + 4]
mov rdx, r15
cmp rax, rdi
cmovae rdx, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rax, rdi
jb 0x14001ac0a
mov ecx, dword [rbp - 0x64]
lea rax, [rdi + 8]
add rcx, qword [rbp - 0x60]
cmp rax, rcx
ja 0x14001a465
mov dword [rdi], 4
mov eax, dword [rbp + 0x158]
mov dword [rdx], eax
add dword [rbp - 0x68], r13d
test esi, esi
js 0x14001a21a
mov dword [rbp + 0x3e4], 8
mov r8, rbx
mov qword [rbp + 0x68], rbx
mov r12d, ebx
mov qword [rbp + 0x1a8], rbx
mov qword [rbp + 0x38], rbx
mov r13d, ebx
mov dword [rbp - 0x80], ebx
mov qword [rbp], rbx
mov dword [rbp + 0x84], ebx
mov qword [rbp + 0x70], rbx
mov qword [rbp + 0xb8], rbx
mov dword [rbp + 0xc4], ebx
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x2f0], rax
mov eax, dword [rbp - 0x64]
or ecx, 0xffffffff
add eax, 8
cmp eax, 8
cmovae ecx, eax
sbb esi, esi
and esi, r11d
mov dword [rbp + 0x114], ecx
cmp eax, 8
jb 0x14001ad60
mov eax, ecx
add rax, 7
and eax, 0xfffffff8
cmp eax, ecx
jae 0x14001ac9a
mov esi, r11d
jmp 0x14001ad60
mov dword [rbp + 0x114], eax
mov edi, eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdi, rax
test rax, rax
jne 0x14001acce
mov esi, 0xc0000017
mov r8, rbx
jmp 0x14001ad60
mov eax, dword [rbp - 0x68]
mov rdx, r15
mov dword [rdi], eax
mov r11d, 0xc0000095
lea rax, [rdi + 4]
cmp rax, rdi
cmovae rdx, rax
sbb esi, esi
and esi, r11d
cmp rax, rdi
jb 0x14001ad40
mov eax, dword [rbp - 0x64]
mov rcx, r15
mov dword [rdx], eax
lea rax, [rdx + 4]
cmp rax, rdx
cmovae rcx, rax
sbb esi, esi
and esi, r11d
cmp rax, rdx
jb 0x14001ad40
mov edx, dword [rbp + 0x114]
mov rax, qword [rbp + 0x2f0]
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 + 0x114]
mov r8, rdi
mov qword [rbp + 0x68], rdi
mov rdi, rbx
jmp 0x14001ad43
mov r8, rbx
test rdi, rdi
je 0x14001ad60
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r8, qword [rbp + 0x68]
or esi, 0x10000000
mov dword [rsp + 0x60], esi
jl 0x14001c7b7
mov qword [rbp + 0x350], rbx
mov r14, rbx
mov qword [rbp + 0x358], rbx
mov qword [rbp + 0x320], rbx
mov qword [rbp + 0x368], rbx
mov qword [rbp + 0x268], rbx
mov qword [rbp + 0x348], rbx
test r8, r8
jne 0x14001adac
mov esi, 0xc000000d
jmp 0x14001b52a
mov esi, r12d
mov qword [rbp - 0x28], rsi
test r12d, r12d
je 0x14001b47e
lea rdi, [rsi + 8]
mov qword [rbp - 0x18], rdi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp + 0x60], rax
mov r13, rax
test rax, rax
je 0x14001b47e
mov rdi, qword [rbp + 0x68]
mov dl, bl
mov byte [rsp + 0x64], bl
mov rcx, rbx
test r12d, r12d
je 0x14001ae0e
mov eax, 1
xor dl, byte [rdi + rcx]
add rcx, rax
cmp rcx, rsi
jb 0x14001adff
mov byte [rsp + 0x64], dl
movabs rax, 0xc81ecb17b1b54a58
mov dword [rbp - 8], ebx
mov qword [rbp + 0x918], rax
or r11d, 0xffffffff
mov rax, rsi
mov dword [rbp - 0x38], r11d
mov dword [rbp - 0x50], ebx
mov r8, r13
mov dword [rbp - 0x70], ebx
mov r10d, ebx
and eax, 7
je 0x14001af2a
mov dword [rbp - 0x50], ebx
mov r11d, ebx
mov dword [rbp - 0x70], ebx
mov r12d, ebx
test eax, eax
je 0x14001ae9e
mov edx, 1
lea r9d, [rdx + 0x37]
lea rcx, [rdi + 1]
movzx edi, byte [rdi]
mov qword [rbp + 0x30], rcx
cmp r10d, 4
jge 0x14001ae77
lea ecx, [r9 - 0x20]
shl edi, cl
or r12d, edi
jmp 0x14001ae7f
mov ecx, r9d
shl edi, cl
or r11d, edi
mov rcx, qword [rbp + 0x30]
add r10d, edx
sub r9d, 8
mov rdi, rcx
cmp r10d, eax
jl 0x14001ae5b
mov dl, byte [rsp + 0x64]
mov dword [rbp - 0x70], r12d
mov dword [rbp - 0x50], r11d
xor r11d, 0x42f6b18d
mov r10d, r12d
xor r10d, 0xb17a307a
mov dword [rbp - 0x38], r11d
mov dword [rbp - 8], r10d
mov ecx, ebx
test eax, eax
jle 0x14001aef2
mov r13d, 1
lea r9, [r8 + 1]
cmp ecx, 4
jge 0x14001aed5
rol r10d, 8
mov byte [r8], r10b
jmp 0x14001aedc
rol r11d, 8
mov byte [r8], r11b
add ecx, r13d
mov r8, r9
cmp ecx, eax
jl 0x14001aec3
mov r10d, dword [rbp - 8]
mov r11d, dword [rbp - 0x38]
mov r13, qword [rbp + 0x60]
add eax, 0xfffffffc
test eax, eax
jle 0x14001af0f
mov ecx, 4
sub ecx, eax
shl ecx, 3
shr r11d, cl
shl r11d, cl
mov dword [rbp - 0x38], r11d
jmp 0x14001af2a
mov dword [rbp - 0x38], ebx
mov r11d, ebx
test eax, eax
jns 0x14001af2a
neg eax
shl eax, 3
mov ecx, eax
shr r10d, cl
shl r10d, cl
mov dword [rbp - 8], r10d
mov r12, rsi
shr r12, 3
test r12, r12
je 0x14001b279
mov edx, dword [rbp + 0x91c]
lea rsi, [r8 + 7]
movzx r13d, word [rbp + 0x91c]
lea rbx, [rdi + 2]
mov r15d, dword [rbp - 0x50]
mov r14d, dword [rbp - 0x70]
shr edx, 0x10
movzx eax, byte [rbx - 1]
movzx r9d, byte [rbx - 2]
movzx edi, word [rbp + 0x91a]
movzx r8d, byte [rbx + 2]
mov ecx, dword [rbp + 0x91c]
shl r9d, 8
or r9d, eax
shl r8d, 8
movzx eax, byte [rbx]
lea rbx, [rbx + 8]
shl r9d, 8
or r9d, eax
movzx eax, byte [rbx - 7]
shl r9d, 8
or r9d, eax
movzx eax, byte [rbx - 5]
or r8d, eax
movzx eax, byte [rbx - 4]
shl r8d, 8
or r8d, eax
movzx eax, byte [rbx - 3]
shl r8d, 8
or r8d, eax
xor r11d, r8d
lea eax, [r11 - 0x4a58]
xor eax, dword [rbp + 0x91c]
xor eax, r9d
xor r10d, eax
xor ecx, r10d
mov eax, r10d
ror eax, 7
ror ecx, 0xf
imul ecx, edi
add ecx, eax
xor r11d, ecx
mov eax, r11d
ror eax, 0xa
lea ecx, [r11 - 0x4e4ab5a8]
ror ecx, 9
imul ecx, r13d
sub ecx, eax
xor r10d, ecx
mov ecx, r13d
xor ecx, r10d
mov eax, r10d
rol eax, 5
rol ecx, 4
imul ecx, edx
add ecx, eax
mov eax, dword [rbp + 0x91c]
xor r11d, ecx
mov ecx, r11d
xor ecx, 0xb1b54a58
sub eax, ecx
xor r10d, eax
mov eax, r10d
shr eax, 6
lea ecx, [r10 - 0x4a58]
imul ecx, edi
sub ecx, eax
xor r11d, ecx
mov eax, r11d
ror eax, 0xf
xor eax, r13d
imul eax, eax, 0x4a58
xor r10d, eax
mov eax, r10d
not eax
ror eax, 3
add eax, edx
imul eax, r13d
xor r11d, eax
mov eax, r11d
sub eax, dword [rbp + 0x91c]
sub eax, 0x4a58
xor r10d, eax
mov eax, edx
mov ecx, r10d
xor eax, r10d
ror ecx, 0xa
imul eax, edi
xor ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
xor ecx, 0x4a58
ror eax, 3
rol ecx, 6
imul ecx, r13d
xor ecx, eax
xor r10d, ecx
mov eax, r10d
ror eax, 0xf
sub eax, edx
imul eax, eax, 0x4a58
xor r11d, eax
mov eax, edx
xor eax, r11d
imul ecx, eax, 0x4a58
mov eax, r11d
shr eax, 1
xor ecx, eax
mov eax, r11d
xor r10d, ecx
sub eax, r13d
rol eax, 3
imul ecx, eax, 0x4a58
mov eax, r11d
shr eax, 0xf
xor ecx, eax
xor r10d, ecx
mov ecx, r10d
mov eax, r10d
sub ecx, r13d
shr eax, 0xd
imul ecx, edi
sub ecx, eax
xor r11d, ecx
mov ecx, 0xb1b54a58
sub ecx, r11d
mov eax, r11d
ror ecx, 9
imul ecx, r13d
ror eax, 0xb
xor ecx, eax
xor r10d, ecx
mov eax, r10d
sub eax, edx
add eax, 0x4e4ab5a8
xor r11d, eax
movzx eax, word [rbp + 0x91a]
xor eax, r11d
mov edi, r11d
imul ecx, eax, 0x4a58
movzx eax, word [rbp + 0x91a]
ror edi, 7
sub ecx, edi
mov edi, dword [rbp + 0x91c]
xor r10d, ecx
mov ecx, edx
xor ecx, r10d
rol ecx, 4
imul ecx, eax
mov eax, r10d
ror eax, 0x10
sub ecx, eax
xor r11d, ecx
mov ecx, 0xb1b54a58
sub ecx, r11d
mov eax, r11d
ror ecx, 0xa
imul ecx, r13d
ror eax, 4
add ecx, eax
xor r10d, ecx
mov eax, r10d
ror eax, 9
lea ecx, [r10 + 0x4e4ab5a8]
ror ecx, 4
imul ecx, edx
xor ecx, eax
xor r11d, ecx
mov eax, edi
xor eax, r11d
rol eax, 8
imul ecx, eax, 0x4a58
mov eax, r11d
rol eax, 2
sub ecx, eax
movzx eax, word [rbp + 0x91a]
xor r10d, ecx
mov ecx, edi
sub ecx, r10d
ror ecx, 0xb
imul ecx, eax
mov eax, r10d
ror eax, 0xc
sub ecx, eax
xor r11d, ecx
movzx ecx, word [rbp + 0x91a]
xor ecx, r11d
mov eax, r11d
shr eax, 8
imul ecx, r13d
xor ecx, eax
xor r10d, ecx
mov ecx, edi
mov eax, r10d
xor r10d, r14d
xor ecx, eax
mov dword [rbp - 8], r10d
xor ecx, r11d
mov r14d, r9d
xor ecx, r15d
mov r15d, r8d
xor ecx, 0xb1b54a58
mov dword [rbp - 0x38], ecx
mov byte [rsi - 4], r10b
mov al, byte [rbp - 0x38]
ror dword [rbp - 8], 8
mov byte [rsi], al
lea rsi, [rsi + 8]
ror dword [rbp - 0x38], 8
mov al, byte [rbp - 8]
mov byte [rsi - 0xd], al
mov al, byte [rbp - 0x38]
ror dword [rbp - 8], 8
mov byte [rsi - 9], al
ror dword [rbp - 0x38], 8
mov al, byte [rbp - 8]
mov byte [rsi - 0xe], al
ror dword [rbp - 8], 8
mov al, byte [rbp - 0x38]
mov byte [rsi - 0xa], al
ror dword [rbp - 0x38], 8
mov al, byte [rbp - 8]
mov byte [rsi - 0xf], al
mov al, byte [rbp - 0x38]
mov byte [rsi - 0xb], al
mov r10d, dword [rbp - 8]
mov r11d, dword [rbp - 0x38]
ror r10d, 8
ror r11d, 8
mov dword [rbp - 8], r10d
mov dword [rbp - 0x38], r11d
sub r12, 1
jne 0x14001af5b
mov dl, byte [rsp + 0x64]
xor ebx, ebx
mov rsi, qword [rbp - 0x28]
or r15, 0xffffffffffffffff
mov r13, qword [rbp + 0x60]
mov r14d, ebx
movzx eax, dl
mov qword [rsi + r13], rax
mov rsi, qword [rbp - 0x18]
mov qword [rbp + 0x348], rsi
mov qword [rbp + 0x268], r13
lea rax, [0x1400bc3a0]
mov qword [rbp + 0x358], 8
mov qword [rbp + 0x350], rax
lea r12, [0x1400bc300]
mov qword [rbp + 0x368], LoadRegTypeLib
mov qword [rbp + 0x320], r12
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 0x28]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdi, rax
test rax, rax
jne 0x14001b2ee
mov esi, 0xc0000017
jmp 0x14001b46e
mov dword [rax], esi
mov esi, esi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, esi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x14001b318
mov esi, 0xc0000017
jmp 0x14001b3f2
mov qword [rdi + 8], rax
mov r8, rsi
mov rdx, r13
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov esi, LoadRegTypeLib
mov dword [rdi + 0x10], esi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, esi
mov esi, 8
mov edx, esi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x14001b30e
mov qword [rdi + 0x18], rax
movups xmm0, xmmword [r12]
lea edx, [rsi + 0x78]
movups xmmword [rax], xmm0
movups xmm1, xmmword [r12 + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [r12 + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [r12 + 0x30]
movups xmmword [rax + 0x30], xmm1
movups xmm0, xmmword [r12 + 0x40]
movups xmmword [rax + 0x40], xmm0
movups xmm1, xmmword [r12 + 0x50]
movups xmmword [rax + 0x50], xmm1
movups xmm0, xmmword [r12 + 0x60]
movups xmmword [rax + 0x60], xmm0
movups xmm1, xmmword [r12 + 0x70]
movups xmmword [rax + rdx - 0x10], xmm1
movups xmm0, xmmword [r12 + rdx]
movups xmmword [rax + rdx], xmm0
movups xmm1, xmmword [r12 + rdx + 0x10]
movups xmmword [rax + rdx + 0x10], xmm1
mov dword [rdi + 0x20], esi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, esi
mov edx, esi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x14001b30e
mov qword [rdi + 0x28], rax
movsd xmm0, qword [0x1400bc3a0]
mov r14, rdi
movsd qword [rax], xmm0
mov esi, ebx
mov rdi, rbx
test rdi, rdi
je 0x14001b46e
mov r12, qword [rdi + 8]
test r12, r12
je 0x14001b418
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rdi + 8], rbx
mov r12, qword [rdi + 0x18]
test r12, r12
je 0x14001b439
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rdi + 0x18], rbx
mov r12, qword [rdi + 0x28]
test r12, r12
je 0x14001b45a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rdi + 0x28], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test esi, esi
js 0x14001b483
mov qword [rbp + 0x1a8], r14
mov r14, rbx
jmp 0x14001b483
mov esi, 0xc0000001
mov rdi, qword [rbp + 0x268]
test rdi, rdi
je 0x14001b4aa
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0x268], rbx
test r14, r14
je 0x14001b526
mov rdi, qword [r14 + 8]
test rdi, rdi
je 0x14001b4d0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 8], rbx
mov rdi, qword [r14 + 0x18]
test rdi, rdi
je 0x14001b4f1
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 0x18], rbx
mov rdi, qword [r14 + 0x28]
test rdi, rdi
je 0x14001b512
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 0x28], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r13d, dword [rbp - 0x80]
or esi, 0x10000000
mov dword [rsp + 0x60], esi
jl 0x14001c7b7
mov r14, qword [rbp + 0x1a8]
or r10d, 0xffffffff
mov ecx, r10d
mov r9d, 0xc0000095
mov eax, dword [r14]
mov r8d, dword [r14 + 0x20]
add eax, 4
mov edi, dword [r14 + 0x10]
cmp eax, 4
cmovae ecx, eax
sbb esi, esi
and esi, r9d
cmp eax, 4
jb 0x14001b5cc
lea eax, [rcx + 4]
mov edx, r10d
cmp eax, ecx
cmovae edx, eax
sbb esi, esi
and esi, r9d
cmp eax, ecx
jb 0x14001b5cc
lea eax, [rdx + rdi]
mov ecx, r10d
cmp eax, edx
cmovae ecx, eax
sbb esi, esi
and esi, r9d
cmp eax, edx
jb 0x14001b5cc
lea eax, [rcx + 4]
mov edx, r10d
cmp eax, ecx
cmovae edx, eax
sbb esi, esi
and esi, r9d
cmp eax, ecx
jb 0x14001b5cc
mov edi, dword [rbp + 0xc0]
lea ecx, [rdx + r8]
cmp ecx, edx
mov eax, r10d
cmovae eax, ecx
sbb esi, esi
and esi, r9d
cmp ecx, edx
cmovae edi, eax
mov dword [rbp + 0xc0], edi
jmp 0x14001b5d2
mov edi, dword [rbp + 0xc0]
test esi, esi
js 0x14001b5fa
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdi, rax
test rax, rax
jne 0x14001b660
mov esi, 0xc0000017
mov r12, rbx
or esi, 0x10000000
mov dword [rsp + 0x60], esi
jl 0x14001babd
mov qword [rbp + 0x370], rbx
mov r9d, ebx
mov dword [rbp + 0x240], ebx
mov r10d, ebx
mov qword [rbp + 0x378], rbx
mov dword [rbp + 0x254], ebx
mov dword [rbp + 0x3b8], 0x3c
mov eax, 0x48
mov dword [rbp + 0x328], eax
mov dword [rbp + 0xb0], eax
cmp qword [rbp - 0x60], rbx
jne 0x14001b787
mov esi, 0xc000000d
mov dword [rsp + 0x60], esi
jmp 0x14001b943
mov eax, dword [r14]
mov r12, r15
mov dword [rdi], eax
lea rax, [rdi + 4]
cmp rax, rdi
cmovae r12, rax
sbb esi, esi
and esi, 0xc0000095
cmp rax, rdi
jb 0x14001b762
mov r8d, dword [r14]
mov rcx, r12
mov rdx, qword [r14 + 8]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov ecx, dword [r14]
mov rdx, r15
add rcx, r12
mov r9d, 0xc0000095
cmp rcx, r12
cmovae rdx, rcx
sbb esi, esi
and esi, r9d
cmp rcx, r12
jb 0x14001b762
mov eax, dword [r14 + 0x10]
mov r12, r15
mov dword [rdx], eax
lea rax, [rdx + 4]
cmp rax, rdx
cmovae r12, rax
sbb esi, esi
and esi, r9d
cmp rax, rdx
jb 0x14001b762
mov r8d, dword [r14 + 0x10]
mov rcx, r12
mov rdx, qword [r14 + 0x18]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov ecx, dword [r14 + 0x10]
mov rdx, r15
add rcx, r12
mov r9d, 0xc0000095
cmp rcx, r12
cmovae rdx, rcx
sbb esi, esi
and esi, r9d
cmp rcx, r12
jb 0x14001b762
mov eax, dword [r14 + 0x20]
mov r12, r15
mov dword [rdx], eax
lea rax, [rdx + 4]
cmp rax, rdx
cmovae r12, rax
sbb esi, esi
and esi, r9d
cmp rax, rdx
jb 0x14001b762
mov r8d, dword [r14 + 0x20]
mov rcx, r12
mov rdx, qword [r14 + 0x28]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov ecx, dword [r14 + 0x20]
add rcx, r12
cmp rcx, r12
sbb esi, esi
and esi, 0xc0000095
cmp rcx, r12
jb 0x14001b762
mov r13d, dword [rbp + 0xc0]
mov r12, rdi
mov qword [rbp + 0x38], rdi
mov rdi, rbx
jmp 0x14001b765
mov r12, rbx
test rdi, rdi
je 0x14001b5fd
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x14001b5fd
mov r11d, 1
cmp dword [rbp - 0x68], r11d
jbe 0x14001b652
mov rdx, qword [rbp - 0x60]
mov r8d, ebx
mov r14d, 0xc0000095
lea rax, [rdx + 4]
mov rdi, r15
cmp rax, rdx
cmovae rdi, rax
sbb esi, esi
and esi, r14d
mov dword [rsp + 0x60], esi
cmp rax, rdx
jb 0x14001b81c
mov ecx, dword [rdx]
mov rdx, r15
add rcx, rdi
cmp rcx, rdi
cmovae rdx, rcx
sbb esi, esi
and esi, r14d
mov dword [rsp + 0x60], esi
cmp rcx, rdi
jb 0x14001b81c
add r8d, r11d
cmp r8d, r11d
jb 0x14001b7a4
mov edi, dword [rdx]
lea rax, [rdx + 4]
cmp rax, rdx
mov rcx, r15
cmovae rcx, rax
sbb esi, esi
and esi, r14d
mov dword [rsp + 0x60], esi
cmp rax, rdx
jb 0x14001b81c
test edi, edi
mov dword [rbp + 0x240], edi
mov rax, rbx
mov r9d, edi
cmovne rax, rcx
mov qword [rbp + 0x370], rax
test esi, esi
js 0x14001babd
cmp dword [rbp - 0x68], 2
jbe 0x14001b652
mov rdx, qword [rbp - 0x60]
mov r8d, ebx
lea rax, [rdx + 4]
mov rdi, r15
cmp rax, rdx
cmovae rdi, rax
sbb esi, esi
and esi, r14d
mov dword [rsp + 0x60], esi
cmp rax, rdx
jb 0x14001b8b3
mov ecx, dword [rdx]
mov rdx, r15
add rcx, rdi
cmp rcx, rdi
cmovae rdx, rcx
sbb esi, esi
and esi, r14d
mov dword [rsp + 0x60], esi
cmp rcx, rdi
jb 0x14001b8b3
add r8d, r11d
cmp r8d, 2
jb 0x14001b835
mov edi, dword [rdx]
lea rax, [rdx + 4]
cmp rax, rdx
mov rcx, r15
mov r11d, r14d
cmovae rcx, rax
sbb esi, esi
and esi, r14d
mov dword [rsp + 0x60], esi
cmp rax, rdx
jb 0x14001b8b6
test edi, edi
mov dword [rbp + 0x254], edi
mov rax, rbx
mov r10d, edi
cmovne rax, rcx
mov qword [rbp + 0x378], rax
jmp 0x14001b8b6
mov r11d, r14d
test esi, esi
js 0x14001babd
lea eax, [r9 + 0x50]
or edx, 0xffffffff
cmp eax, 0x50
mov ecx, edx
cmovae ecx, eax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp eax, 0x50
jb 0x14001b919
lea eax, [rcx + 4]
mov edi, edx
cmp eax, ecx
cmovae edi, eax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp eax, ecx
jb 0x14001b919
lea ecx, [rdi + r10]
mov eax, edx
mov edx, dword [rbp + 0x17c]
cmp ecx, edi
cmovae eax, ecx
sbb esi, esi
and esi, r11d
cmp ecx, edi
mov dword [rsp + 0x60], esi
cmovae edx, eax
mov dword [rbp + 0x17c], edx
jmp 0x14001b91f
mov edx, dword [rbp + 0x17c]
test esi, esi
js 0x14001babd
cmp edx, 0x400000
jbe 0x14001b93d
mov esi, 0x8000ffff
mov dword [rsp + 0x60], esi
jmp 0x14001babd
mov dword [rbp + 0x84], edx
test esi, esi
js 0x14001babd
mov edi, dword [rbp + 0x84]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdi, rax
test rax, rax
jne 0x14001b977
mov esi, 0xd0000017
jmp 0x14001b934
mov qword [rbp], rdi
mov r14, qword [rbp + 0x38]
test r14, r14
jne 0x14001b995
mov esi, 0x80070057
mov dword [rsp + 0x60], esi
mov r12, r14
jmp 0x14001babd
mov eax, dword [rbp + 0x84]
lea r8, [rbp + 0x380]
lea rdx, [0x140086738]
mov dword [rbp + 0x47c], eax
mov ecx, 1
mov qword [rbp + 0x468], r14
mov dword [rbp + 0x478], r13d
mov qword [rbp + 0x470], rdi
mov dword [rbp + 0x480], ebx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
jne 0x14001ba02
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [rbp + 0x84]
movzx esi, ax
or esi, 0x80070000
test eax, eax
cmovle esi, eax
mov dword [rsp + 0x60], esi
test esi, esi
js 0x14001ba52
mov esi, 0x80004005
jmp 0x14001ba4e
mov rcx, qword [rbp + 0x380]
lea rdx, str.NtQuerySystemInformation
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14001b9d9
xor r9d, r9d
lea rdx, [rbp + 0x468]
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call qword [case.0x14006088e.0]
mov edx, dword [rbp + 0x84]
mov esi, eax
or esi, 0x10000000
cmovge edx, dword [rbp + 0x47c]
mov dword [rbp + 0x84], edx
mov dword [rsp + 0x60], esi
cmp esi, 0xd0000023
jne 0x14001ba6d
mov r13d, 0x8007007a
mov r12, r14
mov esi, r13d
mov dword [rsp + 0x60], r13d
jmp 0x14001bac3
test esi, esi
js 0x14001b98d
mov qword [rbp + 0x60], rbx
cmp edx, 4
jae 0x14001bc65
mov esi, 0xc000003e
mov r14, rbx
or esi, 0x10000000
mov dword [rsp + 0x60], esi
jl 0x14001bab9
mov qword [rbp + 0x130], rbx
mov rdi, rbx
mov qword [rbp + 0x2f8], rbx
test r14, r14
jne 0x14001c01e
mov esi, 0xd000000d
mov dword [rsp + 0x60], esi
mov r12, qword [rbp + 0x38]
mov r13d, 0x8007007a
mov rdi, qword [rbp + 0x68]
test rdi, rdi
je 0x14001bae0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r14, qword [rbp + 0x1a8]
test r14, r14
je 0x14001bb6a
mov rdi, qword [r14 + 8]
test rdi, rdi
je 0x14001bb0d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 8], rbx
mov rdi, qword [r14 + 0x18]
test rdi, rdi
je 0x14001bb2e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 0x18], rbx
mov rdi, qword [r14 + 0x28]
test rdi, rdi
je 0x14001bb4f
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 0x28], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0x1a8], rbx
test r12, r12
je 0x14001bb83
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rdi, qword [rbp]
test rdi, rdi
je 0x14001bba0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r14, qword [rbp + 0x70]
test r14, r14
je 0x14001bc20
mov rdi, qword [r14 + 8]
test rdi, rdi
je 0x14001bbca
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 8], rbx
mov rdi, qword [r14 + 0x18]
test rdi, rdi
je 0x14001bbeb
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 0x18], rbx
mov rdi, qword [r14 + 0x28]
test rdi, rdi
je 0x14001bc0c
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 0x28], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rdi, qword [rbp + 0xb8]
test rdi, rdi
je 0x14001bc40
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test esi, esi
js 0x14001a21a
mov r14d, 1
cmp dword [rbp + 0xa0], r14d
jae 0x14001c7bf
mov esi, 0xc004d501
jmp 0x14001a216
mov r13d, dword [rdi]
lea rax, [rdi + 4]
cmp rax, rdi
mov r14, r15
mov r11d, 0xc0000095
cmovae r14, rax
sbb esi, esi
and esi, r11d
cmp rax, rdi
jb 0x14001ba87
lea eax, [rdx - 4]
cmp eax, r13d
jb 0x14001ba82
lea rcx, [r14 + r13]
mov rdi, r15
cmp rcx, r14
cmovae rdi, rcx
sbb esi, esi
and esi, r11d
cmp rcx, r14
jb 0x14001ba87
lea eax, [r13 + 4]
or r9d, 0xffffffff
cmp eax, 4
mov ecx, r9d
cmovae ecx, eax
sbb esi, esi
and esi, r11d
cmp eax, 4
jb 0x14001ba87
mov eax, edx
sub eax, ecx
cmp eax, 4
jb 0x14001ba82
mov r10d, dword [rdi]
lea rax, [rdi + 4]
cmp rax, rdi
mov dword [rbp - 0x78], r10d
mov r12, r15
cmovae r12, rax
sbb esi, esi
and esi, r11d
cmp rax, rdi
jb 0x14001ba87
lea eax, [rcx + 4]
mov r8d, r9d
cmp eax, ecx
cmovae r8d, eax
sbb esi, esi
and esi, r11d
cmp eax, ecx
jb 0x14001ba87
mov eax, edx
sub eax, r8d
cmp eax, r10d
jb 0x14001ba82
lea rcx, [r12 + r10]
mov r9, r15
cmp rcx, r12
cmovae r9, rcx
sbb esi, esi
and esi, r11d
cmp rcx, r12
jb 0x14001ba87
lea eax, [r8 + r10]
or edi, 0xffffffff
cmp eax, r8d
cmovae edi, eax
sbb esi, esi
and esi, r11d
cmp eax, r8d
jb 0x14001ba87
mov eax, edx
sub eax, edi
cmp eax, 4
jb 0x14001ba82
mov r8d, dword [r9]
lea rax, [r9 + 4]
cmp rax, r9
mov dword [rbp - 0x40], r8d
mov rcx, r15
cmovae rcx, rax
sbb esi, esi
and esi, r11d
mov qword [rbp + 0x30], rcx
cmp rax, r9
jb 0x14001ba87
lea eax, [rdi + 4]
or r9d, 0xffffffff
cmp eax, edi
mov ecx, r9d
cmovae ecx, eax
sbb esi, esi
and esi, r11d
cmp eax, edi
jb 0x14001ba87
mov eax, edx
sub eax, ecx
cmp eax, r8d
jb 0x14001ba82
lea eax, [rcx + r8]
mov edi, r9d
cmp eax, ecx
cmovae edi, eax
sbb esi, esi
and esi, r11d
cmp eax, ecx
jb 0x14001ba87
cmp edx, edi
jne 0x14001ba82
lea ecx, [r10 + r13]
mov eax, edx
add ecx, r8d
add rcx, 0xc
cmp rcx, rax
jne 0x14001ba82
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 0x28]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdi, rax
test rax, rax
jne 0x14001be1d
mov esi, 0xc0000017
jmp 0x14001bf7b
test r14, r14
je 0x14001be5f
mov dword [rax], r13d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x14001be4b
mov esi, 0xc0000017
jmp 0x14001beff
mov qword [rdi + 8], rax
mov r8, r13
mov rdx, r14
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x14001be65
mov dword [rax], ebx
mov qword [rax + 8], rbx
test r12, r12
je 0x14001bea2
mov eax, dword [rbp - 0x78]
mov dword [rdi + 0x10], eax
mov esi, eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, esi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x14001be41
mov qword [rdi + 0x18], rax
mov r8d, esi
mov rdx, r12
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x14001bea9
mov dword [rdi + 0x10], ebx
mov qword [rdi + 0x18], rbx
mov rsi, qword [rbp + 0x30]
test rsi, rsi
je 0x14001beef
mov eax, dword [rbp - 0x40]
mov dword [rdi + 0x20], eax
mov r14d, eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, r14d
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x14001be41
mov qword [rdi + 0x28], rax
mov r8d, r14d
mov rdx, rsi
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x14001bef6
mov dword [rdi + 0x20], ebx
mov qword [rdi + 0x28], rbx
mov qword [rbp + 0x60], rdi
mov esi, ebx
mov rdi, rbx
test rdi, rdi
je 0x14001bf7b
mov r14, qword [rdi + 8]
test r14, r14
je 0x14001bf25
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rdi + 8], rbx
mov r14, qword [rdi + 0x18]
test r14, r14
je 0x14001bf46
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rdi + 0x18], rbx
mov r14, qword [rdi + 0x28]
test r14, r14
je 0x14001bf67
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rdi + 0x28], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r14, qword [rbp + 0x60]
test esi, esi
mov rdi, rbx
cmovs rdi, qword [rbp + 0x60]
cmovs r14, rbx
mov qword [rbp + 0x70], r14
test rdi, rdi
je 0x14001ba8a
mov r14, qword [rdi + 8]
test r14, r14
je 0x14001bfbb
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rdi + 8], rbx
mov r14, qword [rdi + 0x18]
test r14, r14
je 0x14001bfdc
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rdi + 0x18], rbx
mov r14, qword [rdi + 0x28]
test r14, r14
je 0x14001bffd
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rdi + 0x28], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r14, qword [rbp + 0x70]
mov qword [rbp + 0x70], r14
jmp 0x14001ba8a
mov r12, qword [r14 + 8]
mov qword [rbp - 0x18], r12
test r12, r12
je 0x14001bab0
cmp dword [r14], ebx
je 0x14001bab0
mov esi, dword [r14]
mov dword [rbp - 0x40], ebx
test rsi, rsi
je 0x14001c582
add rsi, 0xfffffffffffffff8
mov qword [rbp - 0x28], rsi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp + 0x60], rax
mov r14, rax
test rax, rax
je 0x14001c57b
mov rdi, rsi
mov byte [rsp + 0x64], bl
mov dword [rbp - 0x20], ebx
movabs rax, 0x7f1137fab69605e
mov qword [rbp + 0x938], rax
mov dl, bl
mov r13, r12
mov r9, r14
mov r11d, ebx
and edi, 7
je 0x14001c190
or dword [rbp - 0x48], 0xffffffff
mov r12d, ebx
mov dword [rbp - 0x50], ebx
mov r10d, ebx
mov dword [rbp - 0x70], ebx
test edi, edi
je 0x14001c102
mov edx, 1
lea r8d, [rdx + 0x37]
lea rax, [r13 + 1]
mov qword [rbp + 0x30], rax
movzx eax, byte [r13]
cmp r10d, 4
jge 0x14001c0dd
lea ecx, [r8 - 0x20]
shl eax, cl
or r11d, eax
jmp 0x14001c0e5
mov ecx, r8d
shl eax, cl
or r12d, eax
mov rax, qword [rbp + 0x30]
add r10d, edx
sub r8d, 8
mov r13, rax
cmp r10d, edi
jl 0x14001c0bf
mov dword [rbp - 0x70], r11d
mov dl, bl
mov dword [rbp - 0x50], r12d
xor r11d, 0x92f65a5
mov r8d, r12d
xor r8d, 0x699a899c
mov dword [rbp - 0x20], r11d
mov dword [rbp - 0x48], r8d
mov eax, ebx
test edi, edi
jle 0x14001c156
mov r14d, 1
lea rcx, [r9 + 1]
cmp eax, 4
jge 0x14001c139
rol r11d, 8
mov byte [r9], r11b
jmp 0x14001c140
rol r8d, 8
mov byte [r9], r8b
add eax, r14d
mov r9, rcx
cmp eax, edi
jl 0x14001c127
mov r11d, dword [rbp - 0x20]
mov r8d, dword [rbp - 0x48]
mov r14, qword [rbp + 0x60]
lea eax, [rdi - 4]
test eax, eax
jle 0x14001c173
mov ecx, 4
sub ecx, eax
shl ecx, 3
shr r8d, cl
shl r8d, cl
mov dword [rbp - 0x48], r8d
jmp 0x14001c19d
mov dword [rbp - 0x48], ebx
mov r8d, ebx
test eax, eax
jns 0x14001c19d
neg eax
shl eax, 3
mov ecx, eax
shr r11d, cl
shl r11d, cl
mov dword [rbp - 0x20], r11d
jmp 0x14001c19d
or dword [rbp - 0x50], 0xffffffff
mov r8d, ebx
mov dword [rbp - 0x70], ebx
mov dword [rbp - 0x48], ebx
mov r12, rsi
shr r12, 3
test r12, r12
je 0x14001c4e5
mov ecx, dword [rbp + 0x93c]
lea rsi, [r13 + 2]
mov r15d, dword [rbp - 0x50]
lea r14, [r9 + 7]
mov edx, dword [rbp - 0x70]
mov eax, ecx
shr eax, 0x10
mov r13d, ecx
mov dword [rbp - 0x58], eax
movzx eax, word [rbp + 0x93a]
mov dword [rbp - 0x78], eax
movzx ebx, cx
movzx eax, byte [rsi - 1]
movzx r10d, byte [rsi - 2]
movzx r9d, byte [rsi + 2]
shl r10d, 8
or r10d, eax
shl r9d, 8
movzx eax, byte [rsi]
lea rsi, [rsi + 8]
shl r10d, 8
or r10d, eax
movzx eax, byte [rsi - 7]
shl r10d, 8
or r10d, eax
movzx eax, byte [rsi - 5]
or r9d, eax
xor r11d, r10d
movzx eax, byte [rsi - 4]
shl r9d, 8
or r9d, eax
movzx eax, byte [rsi - 3]
shl r9d, 8
or r9d, eax
mov edi, r9d
xor edi, r8d
movzx r8d, word [rbp + 0x93a]
xor edi, r11d
xor edi, r13d
xor edi, 0xab69605e
mov eax, edi
rol eax, 0xa
lea ecx, [rdi + 0x54969fa2]
rol ecx, 5
imul ecx, ebx
add ecx, eax
xor r11d, ecx
mov eax, r11d
rol eax, 2
lea ecx, [r11 + r13]
ror ecx, 9
imul ecx, r8d
sub ecx, eax
xor edi, ecx
mov eax, edi
sub eax, ebx
imul ecx, eax, 0x605e
mov eax, edi
shr eax, 0xd
sub ecx, eax
xor r11d, ecx
mov ecx, r8d
mov r8d, dword [rbp - 0x58]
xor ecx, r11d
rol ecx, 6
mov eax, r11d
rol eax, 2
imul ecx, r8d
sub ecx, eax
mov eax, r13d
xor edi, ecx
mov ecx, edi
xor ecx, 0xab69605e
sub eax, ecx
xor r11d, eax
mov eax, r11d
mov ecx, r11d
xor eax, ebx
ror ecx, 6
imul eax, dword [rbp - 0x78]
xor ecx, eax
xor edi, ecx
lea eax, [rdi + r13]
ror eax, 0xf
imul ecx, eax, 0x605e
mov eax, edi
rol eax, 2
add ecx, eax
xor r11d, ecx
mov eax, r11d
lea ecx, [r11 + 0x54969fa2]
ror ecx, 0xe
imul ecx, r8d
rol eax, 8
sub ecx, eax
xor edi, ecx
mov ecx, edi
mov eax, edi
ror eax, 0xa
xor ecx, 0xab69605e
ror ecx, 0xc
imul ecx, ebx
xor ecx, eax
movzx eax, word [rbp + 0x93a]
xor r11d, ecx
mov ecx, r8d
xor ecx, r11d
imul ecx, eax
mov eax, r11d
shr eax, 0xa
xor ecx, eax
xor edi, ecx
mov ecx, dword [rbp - 0x58]
mov eax, edi
not eax
ror eax, 5
add eax, 0x605e
imul eax, r8d
xor r11d, eax
mov r8d, r11d
sub r8d, dword [rbp - 0x58]
xor r8d, edi
xor r8d, 0xab69605e
xor ecx, r8d
mov eax, r8d
shr eax, 2
rol ecx, 2
imul ecx, ebx
add ecx, eax
movzx eax, word [rbp + 0x93a]
xor r11d, ecx
mov ecx, r11d
sub ecx, r13d
ror ecx, 6
imul ecx, eax
mov eax, r11d
rol eax, 7
add ecx, eax
xor r8d, ecx
mov eax, r8d
mov edi, r8d
xor eax, ebx
ror edi, 9
imul ecx, eax, 0x605e
add edi, ecx
movzx ecx, word [rbp + 0x93a]
xor r11d, edi
xor ecx, r11d
mov eax, r11d
rol eax, 7
rol ecx, 5
imul ecx, dword [rbp - 0x58]
add ecx, eax
xor r8d, ecx
mov edi, r8d
xor edi, r11d
movzx r11d, word [rbp + 0x93a]
xor edi, r13d
xor edi, 0xab69605e
mov eax, edi
ror eax, 3
sub eax, r11d
imul eax, ebx
xor r8d, eax
mov eax, r8d
sub eax, r13d
ror eax, 1
imul ecx, eax, 0x605e
mov eax, r8d
ror eax, 6
sub ecx, eax
xor edi, ecx
lea ecx, [rdi - 0x54969fa2]
rol ecx, 3
imul ecx, dword [rbp - 0x58]
mov eax, edi
rol eax, 0xe
add ecx, eax
xor r8d, ecx
mov eax, r8d
ror eax, 0xe
lea ecx, [r8 - 0x54969fa2]
rol ecx, 0xf
imul ecx, ebx
sub ecx, eax
xor edi, ecx
mov ecx, edi
mov eax, edi
shr eax, 3
xor ecx, 0x605e
imul ecx, r11d
xor ecx, eax
mov eax, r13d
xor r8d, ecx
xor eax, r8d
rol eax, 4
imul ecx, eax, 0x605e
mov eax, r8d
rol eax, 2
xor r8d, r15d
mov dword [rbp - 0x48], r8d
mov r15d, r9d
xor ecx, eax
xor ecx, edx
mov edx, r10d
xor edi, ecx
mov ecx, 1
mov dword [rbp - 0x20], edi
mov byte [r14 - 4], dil
mov al, byte [rbp - 0x48]
ror dword [rbp - 0x20], 8
mov byte [r14], al
lea r14, [r14 + 8]
ror dword [rbp - 0x48], 8
mov al, byte [rbp - 0x20]
mov byte [r14 - 0xd], al
mov al, byte [rbp - 0x48]
ror dword [rbp - 0x20], 8
mov byte [r14 - 9], al
ror dword [rbp - 0x48], 8
mov al, byte [rbp - 0x20]
mov byte [r14 - 0xe], al
ror dword [rbp - 0x20], 8
mov al, byte [rbp - 0x48]
mov byte [r14 - 0xa], al
ror dword [rbp - 0x48], 8
mov al, byte [rbp - 0x20]
mov byte [r14 - 0xf], al
mov al, byte [rbp - 0x48]
mov byte [r14 - 0xb], al
mov r11d, dword [rbp - 0x20]
mov r8d, dword [rbp - 0x48]
ror r11d, 8
ror r8d, 8
mov dword [rbp - 0x20], r11d
mov dword [rbp - 0x48], r8d
sub r12, rcx
jne 0x14001c1da
mov dl, byte [rsp + 0x64]
xor ebx, ebx
mov rsi, qword [rbp - 0x28]
or r15, 0xffffffffffffffff
mov r14, qword [rbp + 0x60]
jmp 0x14001c4ea
mov ecx, 1
mov rax, rbx
test rsi, rsi
je 0x14001c4fe
xor dl, byte [rax + r14]
add rax, rcx
cmp rax, rsi
jb 0x14001c4f2
mov rcx, qword [rbp - 0x18]
movzx eax, dl
cmp rax, qword [rsi + rcx]
je 0x14001c519
mov rdi, qword [rbp + 0x130]
mov esi, 0xc004d501
jmp 0x14001c530
mov rdi, r14
mov qword [rbp + 0x130], r14
mov qword [rbp + 0x2f8], rsi
mov r14, rbx
mov esi, dword [rbp - 0x40]
test r14, r14
je 0x14001c550
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rdi, qword [rbp + 0x130]
test esi, esi
js 0x14001c582
mov ecx, dword [rbp + 0x2f8]
mov r12, rdi
mov qword [rbp + 0xb8], rdi
mov esi, 0x10000000
mov dword [rbp + 0xc4], ecx
mov rdi, rbx
mov qword [rbp + 0x130], rbx
jmp 0x14001c590
mov rdi, qword [rbp + 0x130]
mov ecx, dword [rbp + 0xc4]
mov esi, 0xd0000001
mov r12, rbx
mov dword [rsp + 0x60], esi
test rdi, rdi
je 0x14001c5ba
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [rbp + 0xc4]
mov qword [rbp + 0x130], rbx
test esi, esi
js 0x14001bab9
cmp ecx, 4
jb 0x14001c7a9
mov r11d, dword [r12]
lea rax, [r12 + 4]
cmp rax, r12
mov dword [rsp + 0x78], r11d
mov rdx, r15
mov r8d, 0xc0000095
cmovae rdx, rax
sbb esi, esi
and esi, r8d
cmp rax, r12
jb 0x14001c7ae
lea eax, [rcx - 4]
cmp eax, 4
jb 0x14001c7a9
mov r14d, dword [rdx]
lea rax, [rdx + 4]
cmp rax, rdx
mov rdi, r15
cmovae rdi, rax
sbb esi, esi
and esi, r8d
cmp rax, rdx
jb 0x14001c7ae
lea eax, [rcx - 8]
cmp eax, r14d
jb 0x14001c7a9
lea eax, [r14 + 8]
cmp eax, 8
sbb esi, esi
and esi, r8d
cmp eax, 8
jb 0x14001c7ae
lea r9, [rdi + r14]
lea rax, [rcx + r12]
cmp rax, r9
jb 0x14001c7a9
sub rcx, rdi
sub rcx, r14
add rcx, r12
cmp rcx, 8
jae 0x14001c7a9
mov dword [rbp - 0x80], ebx
mov r12, rbx
mov esi, ebx
mov r10d, ebx
test rdi, rdi
je 0x14001c739
cmp r9, rdi
mov r8, r15
mov rdx, rdi
cmovae r8, r9
sbb esi, esi
and esi, 0xc0000095
cmp r9, rdi
jb 0x14001c79c
cmp rdi, r8
jae 0x14001c734
mov r9d, dword [rbp + 0x258]
lea rax, [rdx + 4]
mov rcx, r15
cmp rax, rdx
cmovae rcx, rax
sbb esi, esi
and esi, 0xc0000095
cmp rax, rdx
jb 0x14001c79c
cmp rcx, r8
ja 0x14001c764
mov ecx, dword [rdx]
or eax, 0xffffffff
add ecx, 4
cmp ecx, 4
cmovae eax, ecx
sbb esi, esi
and esi, 0xc0000095
cmp ecx, 4
cmovae r9d, eax
mov dword [rbp + 0x258], r9d
jb 0x14001c79c
mov ecx, r9d
mov rax, r15
add rcx, rdx
cmp rcx, rdx
cmovae rax, rcx
sbb esi, esi
and esi, 0xc0000095
cmp rcx, rdx
jb 0x14001c79c
cmp rax, r8
ja 0x14001c764
inc r10d
mov rdx, rax
mov dword [rbp - 0x80], r10d
cmp rax, r8
jb 0x14001c6a9
cmp rdx, r8
jne 0x14001c764
test r14d, r14d
je 0x14001c76d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r12, rax
test rax, rax
jne 0x14001c76b
mov esi, 0xc0000017
jmp 0x14001c797
mov esi, 0xc000000d
jmp 0x14001c7ae
mov esi, ebx
test rdi, rdi
je 0x14001c780
mov r8, r14
mov rdx, rdi
mov rcx, r12
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, dword [rbp - 0x80]
mov dword [rbp + 0xa0], eax
mov qword [rbp + 0xa8], r12
mov dword [rbp + 0xa4], r14d
mov r11d, dword [rsp + 0x78]
test esi, esi
js 0x14001c7ae
cmp r11d, dword [rbp + 0xa0]
je 0x14001c7ae
mov esi, 0xc000003e
bts esi, 0x1c
jmp 0x14001bab5
mov r12, rbx
jmp 0x14001babd
mov r11d, 0xc0000095
cmp qword [rbp + 0xa8], rbx
jne 0x14001c7d9
mov esi, 0xc000000d
mov dword [rsp + 0x60], esi
jmp 0x14001c844
cmp dword [rbp + 0xa0], ebx
jbe 0x14001c7ce
mov rdi, qword [rbp + 0xa8]
mov rdx, r15
mov ecx, dword [rdi]
lea rax, [rdi + 4]
cmp rax, rdi
cmovae rdx, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rax, rdi
jb 0x14001c81e
test ecx, ecx
mov dword [rbp + 0x25c], ecx
mov rax, rbx
cmovne rax, rdx
mov qword [rbp + 0x388], rax
jmp 0x14001c82b
mov ecx, dword [rbp + 0x25c]
mov rax, qword [rbp + 0x388]
test esi, esi
js 0x14001a21a
cmp ecx, 4
jne 0x14001a465
mov eax, dword [rax]
mov dword [rbp + 0x9c], eax
test esi, esi
js 0x14001a21a
mov esi, dword [rbp + 0x9c]
cmp esi, 0xd0000023
cmove esi, r13d
mov dword [rsp + 0x60], esi
mov dword [rbp + 0x9c], esi
cmp esi, r13d
je 0x14001c873
test esi, esi
js 0x14001a21a
cmp dword [rbp + 0xa0], 6
jne 0x14001bc5b
cmp qword [rbp + 0xa8], rbx
jne 0x14001c897
mov esi, 0xc000000d
mov dword [rsp + 0x60], esi
jmp 0x14001c940
mov rdx, qword [rbp + 0xa8]
mov r8d, ebx
lea rax, [rdx + 4]
mov rdi, r15
cmp rax, rdx
cmovae rdi, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rax, rdx
jb 0x14001c918
mov ecx, dword [rdx]
mov rdx, r15
add rcx, rdi
cmp rcx, rdi
cmovae rdx, rcx
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rcx, rdi
jb 0x14001c918
add r8d, r14d
cmp r8d, r14d
jb 0x14001c8a1
mov ecx, dword [rdx]
lea rax, [rdx + 4]
cmp rax, rdx
mov rdi, r15
cmovae rdi, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rax, rdx
jb 0x14001c918
test ecx, ecx
mov dword [rbp + 0x260], ecx
mov rax, rbx
cmovne rax, rdi
mov qword [rbp + 0x390], rax
jmp 0x14001c925
mov ecx, dword [rbp + 0x260]
mov rax, qword [rbp + 0x390]
test esi, esi
js 0x14001a21a
cmp ecx, 8
jne 0x14001a465
mov rax, qword [rax]
mov qword [rbp + 0x360], rax
test esi, esi
js 0x14001a21a
cmp qword [rbp + 0xa8], rbx
jne 0x14001c95f
mov esi, 0xc000000d
mov dword [rsp + 0x60], esi
jmp 0x14001ca07
mov rdx, qword [rbp + 0xa8]
mov r8d, ebx
lea rax, [rdx + 4]
mov rdi, r15
cmp rax, rdx
cmovae rdi, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rax, rdx
jb 0x14001c9e1
mov ecx, dword [rdx]
mov rdx, r15
add rcx, rdi
cmp rcx, rdi
cmovae rdx, rcx
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rcx, rdi
jb 0x14001c9e1
add r8d, r14d
cmp r8d, 2
jb 0x14001c969
mov ecx, dword [rdx]
lea rax, [rdx + 4]
cmp rax, rdx
mov rdi, r15
cmovae rdi, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rax, rdx
jb 0x14001c9e1
test ecx, ecx
mov dword [rbp + 0x24c], ecx
mov rax, rbx
cmovne rax, rdi
mov qword [rbp + 0x398], rax
jmp 0x14001c9ee
mov ecx, dword [rbp + 0x24c]
mov rax, qword [rbp + 0x398]
test esi, esi
js 0x14001a21a
cmp ecx, 4
jne 0x14001a465
mov eax, dword [rax]
mov dword [rbp + 0x1d0], eax
test esi, esi
js 0x14001a21a
cmp qword [rbp + 0xa8], rbx
jne 0x14001ca22
mov esi, 0xc000000d
jmp 0x14001a216
mov rdx, qword [rbp + 0xa8]
mov r8d, ebx
lea rax, [rdx + 4]
mov rdi, r15
cmp rax, rdx
cmovae rdi, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rax, rdx
jb 0x14001caa7
mov ecx, dword [rdx]
mov rdx, r15
add rcx, rdi
cmp rcx, rdi
cmovae rdx, rcx
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rcx, rdi
jb 0x14001caa7
add r8d, r14d
cmp r8d, 3
jb 0x14001ca2c
mov r8d, dword [rdx]
lea rax, [rdx + 4]
cmp rax, rdx
mov rcx, r15
cmovae rcx, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rax, rdx
jb 0x14001caa7
test r8d, r8d
mov dword [rbp + 0x1c0], r8d
mov r9, rbx
cmovne r9, rcx
mov qword [rbp + 0x3a0], r9
jmp 0x14001cab5
mov r8d, dword [rbp + 0x1c0]
mov r9, qword [rbp + 0x3a0]
test esi, esi
js 0x14001a21a
mov rdx, qword [rbp + 0xa8]
mov r10d, ebx
lea rax, [rdx + 4]
mov rdi, r15
cmp rax, rdx
cmovae rdi, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rax, rdx
jb 0x14001cb3f
mov ecx, dword [rdx]
mov rdx, r15
add rcx, rdi
cmp rcx, rdi
cmovae rdx, rcx
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rcx, rdi
jb 0x14001cb3f
add r10d, r14d
cmp r10d, 4
jb 0x14001cac7
mov ecx, dword [rdx]
lea rax, [rdx + 4]
cmp rax, rdx
mov rdi, r15
cmovae rdi, rax
sbb esi, esi
and esi, r11d
mov dword [rsp + 0x60], esi
cmp rax, rdx
jb 0x14001cb3f
test ecx, ecx
mov dword [rbp + 0x1c4], ecx
mov rax, rbx
cmovne rax, rdi
mov qword [rbp + 0x3a8], rax
jmp 0x14001cb4c
mov ecx, dword [rbp + 0x1c4]
mov rax, qword [rbp + 0x3a8]
test esi, esi
js 0x14001cb65
cmp ecx, 4
jne 0x14001a465
mov r10d, dword [rax]
mov dword [rbp + 0x1c8], r10d
jmp 0x14001cb6c
mov r10d, dword [rbp + 0x1c8]
test esi, esi
js 0x14001a21a
mov rdx, qword [rbp + 0xa8]
mov r11d, ebx
mov r12d, 0xc0000095
lea rax, [rdx + 4]
mov rdi, r15
cmp rax, rdx
cmovae rdi, rax
sbb esi, esi
and esi, r12d
mov dword [rsp + 0x60], esi
cmp rax, rdx
jb 0x14001cbfc
mov ecx, dword [rdx]
mov rdx, r15
add rcx, rdi
cmp rcx, rdi
cmovae rdx, rcx
sbb esi, esi
and esi, r12d
mov dword [rsp + 0x60], esi
cmp rcx, rdi
jb 0x14001cbfc
add r11d, r14d
cmp r11d, 5
jb 0x14001cb84
mov ecx, dword [rdx]
lea rax, [rdx + 4]
cmp rax, rdx
mov rdi, r15
cmovae rdi, rax
sbb esi, esi
and esi, r12d
mov dword [rsp + 0x60], esi
cmp rax, rdx
jb 0x14001cbfc
test ecx, ecx
mov dword [rbp + 0x1cc], ecx
mov rax, rbx
cmovne rax, rdi
mov qword [rbp + 0x3b0], rax
jmp 0x14001cc09
mov ecx, dword [rbp + 0x1cc]
mov rax, qword [rbp + 0x3b0]
test esi, esi
js 0x14001cc20
cmp ecx, 4
jne 0x14001a465
mov ecx, dword [rax]
mov dword [rbp + 0x150], ecx
jmp 0x14001cc26
mov ecx, dword [rbp + 0x150]
test esi, esi
js 0x14001a21a
mov rax, qword [rbp + 0x360]
cmp qword [rbp + 0x200], rax
jne 0x14001bc5b
mov eax, dword [rbp + 0x1d0]
mov dword [rbp + 0x170], eax
mov dword [rbp + 0xe0], r10d
mov dword [rbp + 0x88], ecx
cmp r10d, 4
jbe 0x14001cc6e
mov esi, r13d
mov dword [rsp + 0x60], r13d
jmp 0x14001a21a
cmp r8d, 4
ja 0x14001cc61
mov rcx, qword [rbp + 0x58]
mov rdx, r9
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
test esi, esi
js 0x14001a224
cmp dword [rbp + 0x9c], ebx
cmovne esi, dword [rbp + 0x9c]
mov dword [rsp + 0x60], esi
jmp 0x14001a224
mov rax, qword [0x1400b60e8]
call qword [case.0x14006088e.0]
mov edi, dword [0x1400bd350]
lea rcx, [rbp + 0x4b0]
xor edx, edx
mov qword [0x1400bd348], rax
mov dword [rsp + 0x78], edi
lea r8d, [rdx + 0x70]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor eax, eax
mov qword [rbp + 0x70], rbx
xor edx, edx
mov qword [rbp + 0x920], rax
lea rcx, [rbp + 0x9e8]
mov qword [rbp + 0x928], rax
mov qword [rbp + 0x30], rbx
lea r13d, [rax + 1]
lea r8d, [rax + 0x2c]
mov dword [rbp + 0x180], r13d
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov qword [rbp + 0x60], rbx
xor eax, eax
lock cmpxchg dword [0x1400bd658], r13d
jne 0x14001cd11
mov eax, dword [0x1400bd654]
test eax, eax
jne 0x14001d2f4
mov dword [rbp - 0x50], ebx
mov dword [rbp - 0x40], ebx
mov dword [rbp - 0x70], ebx
mov qword [rbp + 0x1b0], rbx
mov qword [rbp + 0x300], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
xor edx, edx
mov r8d, 0x338
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp - 0x28], rax
test rax, rax
je 0x14001d26a
or dword [rbp - 0x78], 0xffffffff
lea rsi, [rax + 7]
mov r13d, dword [rbp - 0x78]
lea r15, [0x14008c7a2]
mov r12d, 0x67
mov byte [rsp + 0x64], bl
mov ecx, ebx
mov dword [rbp + 0x1c], ebx
mov edi, ebx
mov dword [rbp + 0x44], ebx
mov r14d, ebx
lea ebx, [r12 - 0x66]
movzx eax, byte [r15 - 1]
mov r9d, 0xab69605e
movzx r11d, byte [r15 - 2]
movzx r10d, byte [r15 + 2]
shl r11d, 8
or r11d, eax
shl r10d, 8
movzx eax, byte [r15]
lea r15, [r15 + 8]
shl r11d, 8
or r11d, eax
movzx eax, byte [r15 - 7]
shl r11d, 8
or r11d, eax
movzx eax, byte [r15 - 5]
or r10d, eax
xor r14d, r11d
movzx eax, byte [r15 - 4]
shl r10d, 8
or r10d, eax
movzx eax, byte [r15 - 3]
shl r10d, 8
or r10d, eax
xor edi, r10d
xor edi, r14d
xor edi, 0xac987321
lea eax, [rdi + 0x54969fa2]
rol eax, 5
imul edx, eax, 0x137f
mov eax, edi
rol eax, 0xa
add edx, eax
xor r14d, edx
lea eax, [r14 + 0x7f1137f]
ror eax, 9
imul edx, eax, 0xab69
mov eax, r14d
rol eax, 2
sub edx, eax
xor edi, edx
imul edx, edi, 0x605e
mov eax, edi
shr eax, 0xd
sub edx, eax
sub edx, 0x756c8a2
xor r14d, edx
mov eax, r14d
xor eax, 0xab69
rol eax, 6
imul edx, eax, 0x7f1
mov eax, r14d
rol eax, 2
sub edx, eax
mov eax, 0x7f1137f
xor edi, edx
mov edx, edi
xor edx, r9d
sub eax, edx
xor r14d, eax
mov eax, r14d
mov r8d, r14d
xor eax, 0x137f
ror r8d, 6
imul edx, eax, 0xab69
xor r8d, edx
xor edi, r8d
lea eax, [rdi + 0x7f1137f]
ror eax, 0xf
imul edx, eax, 0x605e
mov eax, edi
rol eax, 2
add edx, eax
xor r14d, edx
lea eax, [r14 + 0x54969fa2]
ror eax, 0xe
imul edx, eax, 0x7f1
mov eax, r14d
rol eax, 8
sub edx, eax
xor edi, edx
mov eax, edi
xor eax, r9d
mov r8d, 0x7f1
ror eax, 0xc
imul edx, eax, 0x137f
mov eax, edi
ror eax, 0xa
xor edx, eax
xor r14d, edx
mov eax, r14d
xor eax, r8d
imul edx, eax, 0xab69
mov eax, r14d
shr eax, 0xa
xor edx, eax
xor edi, edx
mov eax, edi
not eax
ror eax, 5
add eax, 0x605e
imul eax, eax, 0x7f1
xor r14d, eax
lea r9d, [r14 - 0x7f1]
xor r9d, edi
mov edi, 0xab69
xor r9d, 0xab69605e
mov eax, r9d
xor eax, r8d
rol eax, 2
imul edx, eax, 0x137f
mov eax, r9d
shr eax, 2
add edx, eax
xor r14d, edx
lea eax, [r14 - 0x7f1137f]
ror eax, 6
imul edx, eax, 0xab69
mov eax, r14d
rol eax, 7
add edx, eax
xor r9d, edx
mov eax, r9d
mov r8d, r9d
xor eax, 0x137f
ror r8d, 9
imul edx, eax, 0x605e
add r8d, edx
xor r14d, r8d
mov eax, r14d
xor eax, edi
rol eax, 5
imul edx, eax, 0x7f1
mov eax, r14d
rol eax, 7
add edx, eax
xor r9d, edx
mov r8d, r9d
xor r8d, r14d
xor r8d, 0xac987321
mov eax, r8d
ror eax, 3
sub eax, edi
imul eax, eax, 0x137f
xor r9d, eax
lea eax, [r9 - 0x7f1137f]
ror eax, 1
imul edx, eax, 0x605e
mov eax, r9d
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 r9d, edx
lea eax, [r9 - 0x54969fa2]
rol eax, 0xf
imul edx, eax, 0x137f
mov eax, r9d
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 r9d, edx
mov eax, r9d
xor eax, 0x7f1137f
rol eax, 4
imul edx, eax, 0x605e
mov eax, r9d
rol eax, 2
xor r9d, r13d
mov dword [rbp + 0x1c], r9d
mov r13d, r10d
xor edx, eax
xor edx, ecx
mov ecx, r11d
xor r8d, edx
mov dword [rbp + 0x44], r8d
mov byte [rsi - 4], r8b
mov al, byte [rbp + 0x1c]
ror dword [rbp + 0x44], 8
mov byte [rsi], al
lea rsi, [rsi + 8]
ror dword [rbp + 0x1c], 8
mov al, byte [rbp + 0x44]
mov byte [rsi - 0xd], al
mov al, byte [rbp + 0x1c]
ror dword [rbp + 0x44], 8
mov byte [rsi - 9], al
ror dword [rbp + 0x1c], 8
mov al, byte [rbp + 0x44]
mov byte [rsi - 0xe], al
ror dword [rbp + 0x44], 8
mov al, byte [rbp + 0x1c]
mov byte [rsi - 0xa], al
ror dword [rbp + 0x1c], 8
mov al, byte [rbp + 0x44]
mov byte [rsi - 0xf], al
mov al, byte [rbp + 0x1c]
mov byte [rsi - 0xb], al
mov r14d, dword [rbp + 0x44]
mov edi, dword [rbp + 0x1c]
ror r14d, 8
ror edi, 8
mov dword [rbp + 0x44], r14d
mov dword [rbp + 0x1c], edi
sub r12, rbx
jne 0x14001cd96
mov cl, byte [rsp + 0x64]
xor ebx, ebx
mov edi, dword [rsp + 0x78]
mov eax, ebx
mov esi, dword [rsp + 0x60]
or r15, 0xffffffffffffffff
mov r12d, dword [rbp - 0x40]
mov r8d, 0x338
mov r13, qword [rbp - 0x28]
lea edx, [rbx + 1]
xor cl, byte [rax + r13]
add rax, rdx
cmp rax, r8
jb 0x14001d0cb
movzx eax, cl
cmp rax, qword [0x14008cad8]
je 0x14001d0eb
mov r14d, 0xc004d501
jmp 0x14001d0ff
mov qword [rbp + 0x1b0], r13
mov r14d, r12d
mov r13, rbx
mov qword [rbp + 0x300], r8
test r13, r13
je 0x14001d118
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r14d, r14d
js 0x14001d26a
mov rax, qword [rbp + 0x300]
lea r13, [0x1400bd360]
mov r14, qword [rbp + 0x1b0]
xor edx, edx
mov rcx, r13
lea r8d, [rdx + 0x60]
mov byte [rax + r14 - 1], bl
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
cmp byte [r14], bl
je 0x14001d270
jmp 0x14001d15b
lea r13, [0x1400bd360]
mov rdx, r14
mov rax, r15
inc rax
cmp word [r14 + rax*2], bx
jne 0x14001d161
lea r14, [r14 + rax*2]
mov eax, dword [rbp - 0x70]
lea rcx, [rax + rax*2]
lea r13, [r13 + rcx*8]
xor ecx, ecx
mov r8, r13
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
je 0x14001d26a
mov rax, qword [r13]
mov ecx, 0x5a4d
mov r12d, ebx
cmp word [rax], cx
je 0x14001d1a7
mov r12d, 0xc000007b
jmp 0x14001d1f5
movsxd rcx, dword [rax + 0x3c]
cmp ecx, 0x10000000
jae 0x14001d19f
add rcx, qword [r13]
cmp rcx, qword [r13]
jb 0x14001d19f
cmp dword [rcx], 0x4550
jne 0x14001d19f
movzx eax, word [rcx + 0x18]
mov edx, 0x10b
sub ax, dx
mov edx, 0xfeff
test dx, ax
je 0x14001d1e3
mov r12d, 0xc000000d
jmp 0x14001d1f5
mov rax, qword [rcx + 0x88]
mov qword [r13 + 0xc], rax
mov eax, dword [rcx + 0x50]
mov dword [r13 + 8], eax
mov eax, dword [r14 + 2]
mov ecx, ebx
add r14, 6
mov dword [rbp - 0x78], eax
mov dword [rbp - 0x80], ebx
test eax, eax
je 0x14001d255
mov rdx, r14
mov rax, r15
inc rax
cmp byte [r14 + rax], bl
jne 0x14001d20f
inc r14
add r14, rax
test r12d, r12d
js 0x14001d243
mov rcx, qword [r13]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14001d270
mov ecx, dword [rbp - 0x50]
lea rdx, [0x1400b6050]
mov qword [rdx + rcx*8], rax
mov ecx, dword [rbp - 0x80]
mov eax, 1
add dword [rbp - 0x50], eax
add ecx, eax
mov dword [rbp - 0x80], ecx
cmp ecx, dword [rbp - 0x78]
jb 0x14001d209
mov r13d, 1
add dword [rbp - 0x70], r13d
cmp byte [r14], bl
jne 0x14001d154
jmp 0x14001d276
mov r12d, 0xc000007a
mov r13d, 1
cmp qword [rbp + 0x1b0], rbx
je 0x14001d297
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp + 0x1b0]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r12d, r12d
jns 0x14001d2ee
lea r14, [0x1400bd360]
mov r12d, 4
cmp qword [r14], rbx
je 0x14001d2b7
mov rcx, qword [r14]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
add r14, 0x18
sub r12, r13
jne 0x14001d2a9
xor edx, edx
lea r8d, [r12 + 0x60]
lea rcx, [0x1400bd360]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006f800]
lea rcx, [0x1400b6050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x14001d2fd
mov eax, dword [0x1400bd654]
add eax, r13d
mov dword [0x1400bd654], eax
xor ecx, ecx
mov dword [rbp - 0x58], ebx
mov eax, ebx
mov dword [rbp + 0x38], ebx
xchg dword [0x1400bd658], eax
xor eax, eax
mov dword [rbp + 0xe30], ecx
mov qword [rbp + 0x2d8], rax
mov qword [rbp + 0x2e0], rax
mov qword [rbp + 0x2e8], rax
mov qword [rbp + 0x990], rax
mov qword [rbp + 0x998], rax
mov word [rbp + 0xe34], cx
mov qword [rbp + 0x208], rbx
xor eax, eax
lock cmpxchg dword [0x1400bd658], r13d
jne 0x14001d346
mov eax, dword [0x1400bd654]
test eax, eax
jne 0x14001d930
mov dword [rbp - 0x50], ebx
mov dword [rbp - 0x40], ebx
mov dword [rbp - 0x70], ebx
mov qword [rbp + 0x198], rbx
mov qword [rbp + 0x308], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
xor edx, edx
mov r8d, 0x338
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp - 0x28], rax
test rax, rax
je 0x14001d8ac
or dword [rbp - 0x78], 0xffffffff
lea rsi, [rax + 7]
mov r14d, dword [rbp - 0x78]
lea r15, [0x14008c7a2]
mov r12d, 0x67
mov byte [rsp + 0x64], bl
mov ecx, ebx
mov dword [rbp + 0x20], ebx
mov edi, ebx
mov dword [rbp + 0x50], ebx
mov r13d, ebx
lea ebx, [r12 - 0x66]
movzx eax, byte [r15 - 1]
mov r9d, 0xab69605e
movzx r11d, byte [r15 - 2]
movzx r10d, byte [r15 + 2]
shl r11d, 8
or r11d, eax
shl r10d, 8
movzx eax, byte [r15]
lea r15, [r15 + 8]
shl r11d, 8
or r11d, eax
movzx eax, byte [r15 - 7]
shl r11d, 8
or r11d, eax
movzx eax, byte [r15 - 5]
or r10d, eax
xor r13d, r11d
movzx eax, byte [r15 - 4]
shl r10d, 8
or r10d, eax
movzx eax, byte [r15 - 3]
shl r10d, 8
or r10d, eax
xor edi, r10d
xor edi, r13d
xor edi, 0xac987321
lea eax, [rdi + 0x54969fa2]
rol eax, 5
imul edx, eax, 0x137f
mov eax, edi
rol eax, 0xa
add edx, eax
xor r13d, edx
lea eax, [r13 + 0x7f1137f]
ror eax, 9
imul edx, eax, 0xab69
mov eax, r13d
rol eax, 2
sub edx, eax
xor edi, edx
imul edx, edi, 0x605e
mov eax, edi
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 edi, edx
mov edx, edi
xor edx, r9d
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 edi, r8d
lea eax, [rdi + 0x7f1137f]
ror eax, 0xf
imul edx, eax, 0x605e
mov eax, edi
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 edi, edx
mov eax, edi
xor eax, r9d
mov r8d, 0x7f1
ror eax, 0xc
imul edx, eax, 0x137f
mov eax, edi
ror eax, 0xa
xor edx, eax
xor r13d, edx
mov eax, r13d
xor eax, r8d
imul edx, eax, 0xab69
mov eax, r13d
shr eax, 0xa
xor edx, eax
xor edi, edx
mov eax, edi
not eax
ror eax, 5
add eax, 0x605e
imul eax, eax, 0x7f1
xor r13d, eax
lea r9d, [r13 - 0x7f1]
xor r9d, edi
mov edi, 0xab69
xor r9d, 0xab69605e
mov eax, r9d
xor eax, r8d
rol eax, 2
imul edx, eax, 0x137f
mov eax, r9d
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 r9d, edx
mov eax, r9d
mov r8d, r9d
xor eax, 0x137f
ror r8d, 9
imul edx, eax, 0x605e
add r8d, edx
xor r13d, r8d
mov eax, r13d
xor eax, edi
rol eax, 5
imul edx, eax, 0x7f1
mov eax, r13d
rol eax, 7
add edx, eax
xor r9d, edx
mov r8d, r9d
xor r8d, r13d
xor r8d, 0xac987321
mov eax, r8d
ror eax, 3
sub eax, edi
imul eax, eax, 0x137f
xor r9d, eax
lea eax, [r9 - 0x7f1137f]
ror eax, 1
imul edx, eax, 0x605e
mov eax, r9d
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 r9d, edx
lea eax, [r9 - 0x54969fa2]
rol eax, 0xf
imul edx, eax, 0x137f
mov eax, r9d
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 r9d, edx
mov eax, r9d
xor eax, 0x7f1137f
rol eax, 4
imul edx, eax, 0x605e
mov eax, r9d
rol eax, 2
xor r9d, r14d
mov dword [rbp + 0x20], r9d
mov r14d, r10d
xor edx, eax
xor edx, r8d
xor edx, ecx
mov ecx, r11d
mov dword [rbp + 0x50], edx
mov byte [rsi - 4], dl
mov al, byte [rbp + 0x20]
ror dword [rbp + 0x50], 8
mov byte [rsi], al
lea rsi, [rsi + 8]
ror dword [rbp + 0x20], 8
mov al, byte [rbp + 0x50]
mov byte [rsi - 0xd], al
mov al, byte [rbp + 0x20]
ror dword [rbp + 0x50], 8
mov byte [rsi - 9], al
ror dword [rbp + 0x20], 8
mov al, byte [rbp + 0x50]
mov byte [rsi - 0xe], al
ror dword [rbp + 0x50], 8
mov al, byte [rbp + 0x20]
mov byte [rsi - 0xa], al
ror dword [rbp + 0x20], 8
mov al, byte [rbp + 0x50]
mov byte [rsi - 0xf], al
mov al, byte [rbp + 0x20]
mov byte [rsi - 0xb], al
mov r13d, dword [rbp + 0x50]
mov edi, dword [rbp + 0x20]
ror r13d, 8
ror edi, 8
mov dword [rbp + 0x50], r13d
mov dword [rbp + 0x20], edi
sub r12, rbx
jne 0x14001d3cb
mov cl, byte [rsp + 0x64]
xor ebx, ebx
mov edi, dword [rsp + 0x78]
mov eax, ebx
mov esi, dword [rsp + 0x60]
or r15, 0xffffffffffffffff
mov r12d, dword [rbp - 0x40]
mov r8d, 0x338
mov r14, qword [rbp - 0x28]
lea edx, [rbx + 1]
xor cl, byte [rax + r14]
add rax, rdx
cmp rax, r8
jb 0x14001d6fe
movzx eax, cl
cmp rax, qword [0x14008cad8]
je 0x14001d71e
mov r13d, 0xc004d501
jmp 0x14001d732
mov qword [rbp + 0x198], r14
mov r13d, r12d
mov r14, rbx
mov qword [rbp + 0x308], r8
test r14, r14
je 0x14001d74b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r13d, r13d
js 0x14001d8a6
mov rax, qword [rbp + 0x308]
lea r13, [0x1400bd360]
mov r14, qword [rbp + 0x198]
xor edx, edx
mov rcx, r13
lea r8d, [rdx + 0x60]
mov byte [rax + r14 - 1], bl
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
cmp byte [r14], bl
jne 0x14001d793
mov r13d, 1
jmp 0x14001d8b2
lea r13, [0x1400bd360]
mov rdx, r14
mov rax, r15
inc rax
cmp word [r14 + rax*2], bx
jne 0x14001d799
lea r14, [r14 + rax*2]
mov eax, dword [rbp - 0x70]
lea rcx, [rax + rax*2]
lea r13, [r13 + rcx*8]
xor ecx, ecx
mov r8, r13
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
je 0x14001d8a6
mov rax, qword [r13]
mov ecx, 0x5a4d
mov r12d, ebx
cmp word [rax], cx
je 0x14001d7df
mov r12d, 0xc000007b
jmp 0x14001d82d
movsxd rcx, dword [rax + 0x3c]
cmp ecx, 0x10000000
jae 0x14001d7d7
add rcx, qword [r13]
cmp rcx, qword [r13]
jb 0x14001d7d7
cmp dword [rcx], 0x4550
jne 0x14001d7d7
movzx eax, word [rcx + 0x18]
mov edx, 0x10b
sub ax, dx
mov edx, 0xfeff
test dx, ax
je 0x14001d81b
mov r12d, 0xc000000d
jmp 0x14001d82d
mov rax, qword [rcx + 0x88]
mov qword [r13 + 0xc], rax
mov eax, dword [rcx + 0x50]
mov dword [r13 + 8], eax
mov eax, dword [r14 + 2]
mov ecx, ebx
add r14, 6
mov dword [rbp - 0x78], eax
mov dword [rbp - 0x80], ebx
test eax, eax
je 0x14001d891
mov rdx, r14
mov rax, r15
inc rax
cmp byte [r14 + rax], bl
jne 0x14001d847
inc r14
add r14, rax
test r12d, r12d
js 0x14001d87f
mov rcx, qword [r13]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14001d781
mov ecx, dword [rbp - 0x50]
lea rdx, [0x1400b6050]
mov qword [rdx + rcx*8], rax
mov ecx, dword [rbp - 0x80]
mov eax, 1
add dword [rbp - 0x50], eax
add ecx, eax
mov dword [rbp - 0x80], ecx
cmp ecx, dword [rbp - 0x78]
jb 0x14001d841
mov r13d, 1
add dword [rbp - 0x70], r13d
cmp byte [r14], bl
jne 0x14001d78c
jmp 0x14001d8b2
mov r13d, 1
mov r12d, 0xc000007a
cmp qword [rbp + 0x198], rbx
je 0x14001d8d3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp + 0x198]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r12d, r12d
jns 0x14001d92a
lea r14, [0x1400bd360]
mov r12d, 4
cmp qword [r14], rbx
je 0x14001d8f3
mov rcx, qword [r14]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
add r14, 0x18
sub r12, r13
jne 0x14001d8e5
xor edx, edx
lea r8d, [r12 + 0x60]
lea rcx, [0x1400bd360]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006f800]
lea rcx, [0x1400b6050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x14001d939
mov eax, dword [0x1400bd654]
add eax, r13d
mov dword [0x1400bd654], eax
xor edx, edx
lea rcx, [rbp + 0x4b0]
mov eax, ebx
xchg dword [0x1400bd658], eax
lea r8d, [rdx + 0x70]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor eax, eax
mov r13d, edi
mov qword [rbp + 0x920], rax
xor edx, edx
mov r8d, 0x403
lea ecx, [rax + 0xf]
mov eax, edi
shr eax, 4
and r13d, ecx
and ax, cx
mov dword [rbp - 0x34], r13d
mov word [rbp + 0xe30], ax
mov eax, edi
shr eax, 8
and ax, cx
shr edi, 0xc
and di, cx
mov word [rbp + 0xe32], ax
mov rax, qword [0x1400b6148]
xor ecx, ecx
mov word [rbp + 0xe34], di
call qword [case.0x14006088e.0]
mov qword [rsp + 0x70], rax
mov dword [rbp + 0xb8], 0xffffff
test rax, rax
jne 0x14001d9ea
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r14d, ax
or r14d, 0x80070000
test eax, eax
cmovle r14d, eax
test r14d, r14d
js 0x14001ee9c
mov r14d, 0x80004005
jmp 0x14001ee9c
mov rax, qword [0x1400b60f0]
lea r9, [rbp + 0xc8]
xor r8d, r8d
mov qword [rbp + 0x1e8], rbx
lea rdx, [rbp + 0x98]
mov qword [rbp + 0x1b8], rbx
mov qword [rbp + 0x270], rbx
mov r14d, ebx
mov qword [rbp + 0x90], rbx
lea ecx, [r8 + 8]
mov qword [rbp + 0x140], rbx
mov qword [rbp + 0x100], rbx
mov dword [rbp + 0xc8], ebx
call qword [case.0x14006088e.0]
test eax, eax
jne 0x14001da6e
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r14d, ax
or r14d, 0x80070000
test eax, eax
cmovle r14d, eax
test r14d, r14d
js 0x14001dbb1
mov r14d, 0x80004005
jmp 0x14001dbb1
mov edi, dword [rbp + 0xc8]
add rdi, rdi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
lea rcx, [rbp + 0x140]
mov rdi, rax
call fcn.140043808
test rdi, rdi
jne 0x14001dab1
mov qword [rbp + 0x140], rbx
mov r14d, 0x8007000e
jmp 0x14001dbb1
mov qword [rbp + 0x140], rdi
mov edi, dword [rbp + 0x98]
inc edi
shl rdi, 2
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
lea rcx, [rbp + 0x100]
mov rdi, rax
call fcn.140043808
test rdi, rdi
jne 0x14001daf7
mov r14d, 0x8007000e
jmp 0x14001dbaa
mov r8, qword [rbp + 0x140]
lea r9, [rbp + 0xc8]
mov rax, qword [0x1400b60f0]
lea rdx, [rbp + 0x98]
mov ecx, 8
mov qword [rbp + 0x100], rdi
call qword [case.0x14006088e.0]
test eax, eax
je 0x14001da43
mov r13d, ebx
mov rdi, qword [rbp + 0x140]
mov r12, qword [rbp + 0x100]
cmp dword [rbp + 0x98], ebx
jbe 0x14001db89
mov esi, 1
mov rax, qword [0x1400b6100]
xor edx, edx
mov rcx, rdi
call qword [case.0x14006088e.0]
mov dword [r12], eax
mov rax, r15
inc rax
cmp word [rdi + rax*2], bx
jne 0x14001db64
lea rdi, [rdi + rax*2]
add r12, 4
add rdi, 2
add r13d, esi
cmp r13d, dword [rbp + 0x98]
jb 0x14001db4b
mov esi, dword [rsp + 0x60]
mov dword [r12], 0x409
mov rax, qword [rbp + 0x100]
mov qword [rbp + 0x1e8], rax
mov eax, dword [rbp + 0x98]
inc eax
mov dword [rbp - 0x80], eax
mov qword [rbp + 0x100], rbx
lea rcx, [rbp + 0x100]
call fcn.140043808
lea rcx, [rbp + 0x140]
call fcn.140043808
test r14d, r14d
js 0x14001e318
lea r11, [0x14008c700]
mov r10d, ebx
mov r9d, ebx
mov dword [rsp + 0x78], ebx
cmp dword [rbp - 0x80], ebx
jbe 0x14001dc25
mov rax, qword [rbp + 0x1e8]
mov r8, rbx
mov edx, ebx
mov rdi, r11
mov ecx, dword [rdi]
cmp dword [rax + r8], ecx
je 0x14001dc1e
mov ecx, 1
add rdi, 4
add edx, ecx
cmp edx, 0x26
jb 0x14001dbf7
add r9d, ecx
add r8, 4
cmp r9d, dword [rbp - 0x80]
jae 0x14001dc25
jmp 0x14001dbf2
mov r10d, edx
mov dword [rsp + 0x78], edx
mov rax, qword [0x1400b60f8]
lea rdx, [rbp + 0xe40]
mov edi, r10d
xor r9d, r9d
mov dword [rbp - 0x50], ebx
mov ecx, dword [r11 + rdi*4]
lea r8d, [r9 + 0x55]
call qword [case.0x14006088e.0]
test eax, eax
je 0x14001dc91
mov rax, qword [0x1400b60e0]
lea r8, [rbp + 0xc20]
mov r9d, reloc.OLEAUT32.dll_SafeArrayGetDim
lea rcx, [rbp + 0xe40]
lea edx, [r9 + 0x48]
call qword [case.0x14006088e.0]
mov r9d, 1
test eax, eax
jle 0x14001dc97
mov r14d, dword [rbp + 0xc2c]
shr r14d, 0x1b
and r14d, r9d
mov dword [rbp - 0x50], r14d
jmp 0x14001dc97
mov r9d, 1
lea rcx, str.Segoe_UI_Light
mov r8d, SafeArrayGetElement
lea rdx, [rbp + 0xd90]
mov qword [rdx], rcx
mov rax, r15
inc rax
cmp word [rcx + rax*2], bx
jne 0x14001dcb1
lea rcx, [rcx + rax*2]
add rdx, 8
add rcx, 2
sub r8, r9
jne 0x14001dcab
lea rcx, [rdi + rdi*2]
lea rdx, [0x140000000]
movzx eax, byte [rcx + rdx + 0x8c680]
mov r12, qword [rbp + rax*8 + 0xd90]
movzx eax, byte [rcx + rdx + 0x8c681]
mov qword [rbp + 0x58], r12
mov qword [rbp + 0x2d8], r12
mov r12, qword [rbp + rax*8 + 0xd90]
movzx eax, byte [rcx + rdx + 0x8c682]
mov qword [rbp - 0x18], r12
mov qword [rbp + 0x2e0], r12
mov rdi, qword [rbp + rax*8 + 0xd90]
mov qword [rbp - 0x40], rdi
mov qword [rbp + 0x2e8], rdi
mov r14d, ebx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
xor edx, edx
mov r8d, 0x1c90
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp - 0x28], rax
test rax, rax
je 0x14001e19a
or dword [rbp - 0x78], 0xffffffff
lea r11, [rax + 7]
mov r13d, dword [rbp - 0x78]
lea r12, [0x14008a702]
mov r15d, ebx
mov dword [rbp + 0x24], ebx
mov ecx, ebx
mov dword [rbp + 0x4c], ebx
mov r10d, ebx
mov esi, 0x392
mov ebx, 1
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
mov edi, r8d
xor edi, ecx
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
xor eax, 0xab69605e
mov edx, 0x7f1
ror eax, 0xc
imul ecx, eax, 0x137f
mov eax, edi
ror eax, 0xa
xor ecx, eax
xor r10d, ecx
mov eax, r10d
xor eax, edx
imul ecx, eax, 0xab69
mov eax, r10d
shr eax, 0xa
xor ecx, eax
xor ecx, edi
mov eax, ecx
not eax
ror eax, 5
add eax, 0x605e
imul eax, eax, 0x7f1
xor r10d, eax
lea edi, [r10 - 0x7f1]
xor edi, ecx
xor edi, 0xab69605e
mov eax, edi
xor eax, edx
rol eax, 2
imul ecx, eax, 0x137f
mov eax, edi
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 edi, ecx
mov eax, edi
mov edx, edi
xor eax, 0x137f
ror edx, 9
imul ecx, eax, 0x605e
add edx, ecx
xor r10d, edx
mov eax, r10d
xor eax, 0xab69
rol eax, 5
imul ecx, eax, 0x7f1
mov eax, r10d
rol eax, 7
add ecx, eax
xor edi, ecx
mov edx, edi
xor edx, r10d
xor edx, 0xac987321
mov eax, edx
ror eax, 3
sub eax, 0xab69
imul eax, eax, 0x137f
xor edi, eax
lea eax, [rdi - 0x7f1137f]
ror eax, 1
imul ecx, eax, 0x605e
mov eax, edi
ror eax, 6
sub ecx, eax
xor edx, ecx
lea eax, [rdx - 0x54969fa2]
rol eax, 3
imul ecx, eax, 0x7f1
mov eax, edx
rol eax, 0xe
add ecx, eax
xor edi, ecx
lea eax, [rdi - 0x54969fa2]
rol eax, 0xf
imul ecx, eax, 0x137f
mov eax, edi
ror eax, 0xe
sub ecx, eax
xor edx, ecx
mov eax, edx
xor eax, 0x605e
imul ecx, eax, 0xab69
mov eax, edx
shr eax, 3
xor ecx, eax
xor edi, ecx
mov eax, edi
xor eax, 0x7f1137f
rol eax, 4
imul ecx, eax, 0x605e
mov eax, edi
rol eax, 2
xor edi, r13d
mov dword [rbp + 0x24], edi
mov r13d, r8d
xor ecx, eax
xor ecx, r15d
mov r15d, r9d
xor edx, ecx
mov dword [rbp + 0x4c], edx
mov byte [r11 - 4], dl
mov al, byte [rbp + 0x24]
ror dword [rbp + 0x4c], 8
mov byte [r11], al
lea r11, [r11 + 8]
ror dword [rbp + 0x24], 8
mov al, byte [rbp + 0x4c]
mov byte [r11 - 0xd], al
mov al, byte [rbp + 0x24]
ror dword [rbp + 0x4c], 8
mov byte [r11 - 9], al
ror dword [rbp + 0x24], 8
mov al, byte [rbp + 0x4c]
mov byte [r11 - 0xe], al
ror dword [rbp + 0x4c], 8
mov al, byte [rbp + 0x24]
mov byte [r11 - 0xa], al
ror dword [rbp + 0x24], 8
mov al, byte [rbp + 0x4c]
mov byte [r11 - 0xf], al
mov al, byte [rbp + 0x24]
mov byte [r11 - 0xb], al
mov r10d, dword [rbp + 0x4c]
mov ecx, dword [rbp + 0x24]
ror r10d, 8
ror ecx, 8
mov dword [rbp + 0x4c], r10d
mov dword [rbp + 0x24], ecx
sub rsi, rbx
jne 0x14001dd79
mov esi, dword [rsp + 0x60]
xor ebx, ebx
mov r13, qword [rbp - 0x28]
mov eax, ebx
or r15, 0xffffffffffffffff
xorps xmm1, xmm1
mov ecx, 0x1c90
movdqu xmm0, xmmword [rax + r13]
add rax, 0x10
pxor xmm0, xmm1
movdqa xmm1, xmm0
cmp rax, rcx
jb 0x14001e08f
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 [0x14008c390]
je 0x14001e0ee
mov r14d, 0xc004d501
jmp 0x14001e0ff
mov qword [rbp + 0x1b8], r13
mov r13, rbx
mov qword [rbp + 0x270], rcx
test r13, r13
je 0x14001e118
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r14d, r14d
js 0x14001e339
mov rdx, qword [rbp + 0x1b8]
lea rdi, [rbp + 0xd60]
mov r9d, dword [rsp + 0x78]
mov r8d, 6
lea r13d, [r8 - 5]
mov ecx, ebx
cmp r9d, ecx
jne 0x14001e148
mov qword [rdi], rdx
mov rax, r15
inc rax
cmp byte [rdx + rax], bl
jne 0x14001e14b
inc rdx
add ecx, r13d
add rdx, rax
cmp ecx, 0x26
jb 0x14001e140
add rdi, 8
sub r8, r13
jne 0x14001e13e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
xor edx, edx
mov rcx, rax
lea r8d, [rdx + 0x18]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
lea rcx, [rbp + 0x90]
mov rdi, rax
call fcn.140043808
test rdi, rdi
jne 0x14001e1a5
mov qword [rbp + 0x90], rbx
mov r14d, 0x8007000e
jmp 0x14001e339
xor eax, eax
mov qword [rbp + 0x90], rdi
mov qword [rdi], rax
lea rcx, [rbp + 0xe30]
mov qword [rdi + 8], rax
mov edx, ebx
mov qword [rdi + 0x10], rax
mov r12, rbx
mov dword [rbp - 0x80], ebx
mov qword [rbp], rcx
movzx edi, word [rcx]
lea rcx, [0x14008cae0]
mov eax, ebx
cmp di, word [rcx]
je 0x14001e1ee
add eax, r13d
add rcx, 2
cmp eax, 6
jb 0x14001e1d8
jmp 0x14001e2b5
mov r13, qword [rbp + rax*8 + 0xd60]
mov rax, r15
inc rax
cmp byte [rax + r13], bl
jne 0x14001e1f9
mov r9d, 1
mov dword [rsp + 0x28], ebx
add r9d, eax
mov qword [rsp + 0x20], rbx
mov rax, qword [0x1400b6110]
mov r8, r13
xor edx, edx
mov ecx, 0xfde9
call qword [case.0x14006088e.0]
mov dword [rbp - 0x78], eax
test eax, eax
je 0x14001e2f4
movsxd rdi, eax
add rdi, rdi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rcx, qword [rbp + 0x90]
mov qword [rcx + r12], rax
mov rcx, qword [rbp + 0x90]
cmp qword [rcx + r12], rbx
je 0x14001e19a
mov rax, r15
inc rax
cmp byte [rax + r13], bl
jne 0x14001e26f
mov edx, dword [rbp - 0x78]
mov r9d, 1
mov dword [rsp + 0x28], edx
add r9d, eax
mov rdx, qword [rcx + r12]
mov r8, r13
mov rax, qword [0x1400b6110]
mov ecx, 0xfde9
mov qword [rsp + 0x20], rdx
xor edx, edx
call qword [case.0x14006088e.0]
test eax, eax
je 0x14001e2f4
mov edx, dword [rbp - 0x80]
mov r13d, 1
mov rcx, qword [rbp]
add edx, r13d
add rcx, 2
mov dword [rbp - 0x80], edx
add r12, 8
mov qword [rbp], rcx
cmp edx, 3
jb 0x14001e1cc
mov rax, qword [rbp + 0x90]
mov qword [rbp + 0x208], rax
mov eax, dword [rbp - 0x50]
mov dword [rbp + 0x4b0], eax
mov qword [rbp + 0x90], rbx
jmp 0x14001e339
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r14d, ax
or r14d, 0x80070000
test eax, eax
cmovle r14d, eax
test r14d, r14d
js 0x14001e339
mov r14d, 0x80004005
jmp 0x14001e339
mov rax, qword [rbp + 0x2e8]
mov qword [rbp - 0x40], rax
mov rax, qword [rbp + 0x2e0]
mov qword [rbp - 0x18], rax
mov rax, qword [rbp + 0x2d8]
mov qword [rbp + 0x58], rax
cmp qword [rbp + 0x90], rbx
je 0x14001e3ac
mov eax, 1
mov r12, rbx
lea r13d, [rax + 2]
mov rcx, qword [rbp + 0x90]
cmp qword [rcx + r12], rbx
je 0x14001e3a3
test rcx, rcx
jne 0x14001e363
mov rcx, rbx
mov rdi, qword [rcx + r12]
mov rcx, r15
inc rcx
cmp word [rdi + rcx*2], bx
jne 0x14001e36a
xor eax, eax
lea rcx, [rcx*2 + 2]
rep stosb byte [rdi], al
mov rax, qword [rbp + 0x90]
mov rdi, qword [rax + r12]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, 1
add r12, 8
sub r13, rax
jne 0x14001e34e
mov rdi, qword [rbp + 0x1b8]
test rdi, rdi
je 0x14001e3c3
mov rcx, qword [rbp + 0x270]
xor eax, eax
rep stosb byte [rdi], al
lea rcx, [rbp + 0x90]
call fcn.140043808
lea rcx, [rbp + 0x1b8]
call fcn.140043808
lea rcx, [rbp + 0x1e8]
call fcn.140043808
test r14d, r14d
js 0x14001ee84
mov rax, qword [rbp + 0x208]
lea r8, [rbp + 0x310]
xor r9d, r9d
xor edx, edx
mov edi, ebx
mov r14d, ebx
mov rcx, qword [rax]
mov qword [rbp + 0x4b8], rcx
mov rcx, qword [rax + 8]
mov qword [rbp + 0x4c0], rcx
mov rcx, qword [rax + 0x10]
xor eax, eax
mov qword [rbp + 0x310], rax
mov qword [rbp + 0x4c8], rcx
mov qword [rbp + 0x318], rax
lea ecx, [rax + 0x42]
mov dword [rbp + 0x310], reloc.OLEAUT32.dll_SafeArrayGetDim
mov rax, qword [0x1400b61b8]
call qword [case.0x14006088e.0]
test eax, eax
jne 0x14001e480
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r14d, ax
mov r12d, 1
or r14d, 0x80070000
test eax, eax
cmovle r14d, eax
test r14d, r14d
js 0x14001e48f
mov r14d, 0x80004005
jmp 0x14001e48f
mov edi, dword [rbp + 0x314]
mov r12d, 1
and edi, r12d
mov r13d, dword [rbp - 0x34]
mov dword [rbp + 0x4b4], edi
test r14d, r14d
js 0x14001ee88
mov ecx, r13d
mov eax, reloc.OLEAUT32.dll_SafeArrayCreateVectorEx
mov dword [rsp + 0x68], eax
sub ecx, 1
je 0x14001e4d6
sub ecx, 1
je 0x14001e4cd
cmp ecx, 1
jne 0x14001e4e0
mov r14d, 0xe1
mov dword [rbp - 0x58], r14d
mov dword [rbp + 0x38], r14d
jmp 0x14001e4e0
mov dword [rbp - 0x58], SafeArrayGetDim
jmp 0x14001e4d9
mov dword [rbp - 0x58], eax
mov dword [rbp + 0x38], SafeArrayGetDim
mov edi, 0x60
lea rcx, [rbp + 0xc40]
xor edx, edx
mov dword [rbp - 0x70], edi
lea r14d, [rdi + 0x7c]
mov r8d, r14d
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [0x1400b6130]
lea r8, [rbp + 0xc40]
or edx, 0xffffffff
mov word [rbp + 0xc84], r14w
xor ecx, ecx
call qword [case.0x14006088e.0]
test eax, eax
je 0x14001e555
mov eax, dword [rbp + 0xcec]
movzx edi, word [rbp + 0xce6]
and qword [rbp + 0x990], 0
mov dword [rbp + 0x998], eax
mov eax, dword [rbp + 0xcf0]
mov dword [rbp + 0x99c], eax
lea eax, [r14 - 0x7c]
cmp edi, eax
cmovb edi, eax
mov dword [rbp - 0x70], edi
mov rax, qword [rbp - 0x40]
lea rcx, [rbp + 0xb00]
cmp r13d, r12d
cmove rax, qword [rbp + 0x58]
xor edx, edx
mov qword [rbp - 0x40], rax
lea r8d, [rdx + 0x5c]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [0x1400b6148]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
mov r14d, ebx
call qword [case.0x14006088e.0]
mov r12, rax
test rax, rax
jne 0x14001e5c4
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r14d, ax
or r14d, 0x80070000
test eax, eax
cmovle r14d, eax
test r14d, r14d
js 0x14001ee88
mov r14d, 0x80004005
jmp 0x14001ee88
mov ecx, dword [rbp - 0x58]
mov r8d, 0x48
mov rax, qword [0x1400b6108]
mov edx, edi
call qword [case.0x14006088e.0]
mov r8, qword [rbp - 0x40]
lea rcx, [rbp + 0xb1c]
neg eax
mov dword [rbp + 0xb10], 0x190
mov edx, 0x20
mov dword [rbp + 0xb00], eax
mov byte [rbp + 0xb1a], 5
call fcn.140023918
mov rax, qword [0x1400b6070]
lea rcx, [rbp + 0xb00]
call qword [case.0x14006088e.0]
test rax, rax
jne 0x14001e647
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r14d, ax
or r14d, 0x80070000
test eax, eax
cmovle r14d, eax
test r14d, r14d
js 0x14001e64e
mov r14d, 0x80004005
jmp 0x14001e64e
mov qword [rbp + 0x4d0], rax
mov rax, qword [0x1400b61b0]
mov rdx, r12
xor ecx, ecx
call qword [case.0x14006088e.0]
test r14d, r14d
js 0x14001ee88
xor edx, edx
lea rcx, [rbp + 0xb60]
lea r8d, [rdx + 0x5c]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [0x1400b6148]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
mov r14d, ebx
call qword [case.0x14006088e.0]
mov r12, rax
test rax, rax
jne 0x14001e72f
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r14d, ax
or r14d, 0x80070000
test eax, eax
cmovle r14d, eax
test r14d, r14d
jns 0x14001e5b9
lea edi, [r12 + 0x20]
test r14d, r14d
js 0x14001ee88
mov ecx, r13d
mov r12d, ebx
mov edx, ebx
sub ecx, 1
je 0x14001e6ea
sub ecx, 1
je 0x14001e7d2
cmp ecx, 1
jne 0x14001e6f7
mov r12d, dword [rbp + 0x998]
mov edx, dword [rbp + 0x99c]
mov dword [rbp + 0x928], r12d
mov dword [rbp + 0x92c], edx
mov ecx, 1
cmp r13d, ecx
je 0x14001e810
lea eax, [r13 - 2]
cmp eax, ecx
ja 0x14001e7eb
mov eax, ebx
mov dword [rbp - 0x50], ebx
mov dword [rsp + 0x68], ebx
mov dword [rbp + 0x38], ebx
jmp 0x14001e81b
mov ecx, dword [rbp + 0x38]
mov r8d, 0x48
mov rax, qword [0x1400b6108]
mov edx, edi
call qword [case.0x14006088e.0]
mov r8, qword [rbp - 0x40]
lea rcx, [rbp + 0xb7c]
neg eax
mov dword [rbp + 0xb70], 0x190
mov edi, 0x20
mov dword [rbp + 0xb60], eax
mov edx, edi
mov byte [rbp + 0xb7a], 5
call fcn.140023918
mov rax, qword [0x1400b6070]
lea rcx, [rbp + 0xb60]
call qword [case.0x14006088e.0]
test rax, rax
jne 0x14001e7b4
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r14d, ax
or r14d, 0x80070000
test eax, eax
cmovle r14d, eax
test r14d, r14d
js 0x14001e7bb
mov r14d, 0x80004005
jmp 0x14001e7bb
mov qword [rbp + 0x4d8], rax
mov rax, qword [0x1400b61b0]
mov rdx, r12
xor ecx, ecx
call qword [case.0x14006088e.0]
jmp 0x14001e6c6
mov eax, dword [rbp + 0x998]
cdq
and edx, 3
lea r12d, [rdx + rax]
mov edx, ebx
sar r12d, 2
jmp 0x14001e6f7
mov eax, dword [rbp + 0xb0]
mov r13d, dword [rbp + 0xb0]
mov dword [rbp + 0x38], eax
mov eax, dword [rbp + 0xb0]
mov dword [rsp + 0x68], eax
mov eax, dword [rbp + 0xb0]
mov dword [rbp - 0x50], eax
jmp 0x14001e81e
mov eax, reloc.OLEAUT32.dll_DllRegisterServer
mov dword [rbp + 0x38], edi
mov dword [rbp - 0x50], eax
mov r13d, ebx
mov rdx, qword [rbp + 0x4d0]
sub r12d, eax
mov rcx, qword [rsp + 0x70]
sub r12d, r13d
mov rax, qword [0x1400b60c8]
mov r14d, ebx
mov rdi, qword [rbp + 0x4b8]
mov dword [rbp + 0x504], r12d
mov dword [rbp + 0x4f4], r12d
call qword [case.0x14006088e.0]
mov rdx, rdi
mov qword [rsp + 0x28], rbx
mov rdi, qword [rsp + 0x70]
lea r9, [rbp + 0x4ec]
mov qword [rbp - 0x28], rax
mov rcx, rdi
mov rax, qword [fcn.1400061a0]
mov r8d, r15d
mov dword [rsp + 0x20], 0xc50
call qword [case.0x14006088e.0]
test eax, eax
mov eax, 0x80004005
cmove r14d, eax
mov rax, qword [rbp - 0x28]
test rax, rax
je 0x14001e8af
mov rdx, rax
mov rcx, rdi
mov rax, qword [0x1400b60c8]
call qword [case.0x14006088e.0]
test r14d, r14d
js 0x14001ee84
mov rdx, qword [rbp + 0x4d8]
mov r14d, ebx
mov rcx, qword [rsp + 0x70]
mov rax, qword [0x1400b60c8]
mov rdi, qword [rbp + 0x4c0]
call qword [case.0x14006088e.0]
mov rdx, rdi
mov qword [rsp + 0x28], rbx
mov rdi, qword [rsp + 0x70]
lea r9, [rbp + 0x4fc]
mov qword [rbp - 0x28], rax
mov rcx, rdi
mov rax, qword [fcn.1400061a0]
mov r8d, r15d
mov dword [rsp + 0x20], 0xc50
call qword [case.0x14006088e.0]
test eax, eax
mov eax, 0x80004005
cmove r14d, eax
mov rax, qword [rbp - 0x28]
test rax, rax
je 0x14001e935
mov rdx, rax
mov rcx, rdi
mov rax, qword [0x1400b60c8]
call qword [case.0x14006088e.0]
test r14d, r14d
js 0x14001ee84
mov eax, dword [rbp - 0x34]
mov r14d, 1
mov ecx, dword [rbp + 0x4f4]
add eax, 0xfffffffe
cmp eax, r14d
ja 0x14001e963
mov r12d, dword [rbp + 0x504]
cmp ecx, r12d
cmovg r12d, ecx
mov r8d, dword [rsp + 0x68]
mov rax, qword [fcn.1400061a0]
cmp dword [rbp + 0x4b0], ebx
je 0x14001e999
mov edx, r13d
sub edx, ecx
lea rcx, [rbp + 0x4ec]
add edx, r12d
call qword [case.0x14006088e.0]
sub r13d, dword [rbp + 0x504]
lea edx, [r12 + r13]
jmp 0x14001e9ac
mov edx, dword [rbp - 0x50]
lea rcx, [rbp + 0x4ec]
call qword [case.0x14006088e.0]
mov edx, dword [rbp - 0x50]
mov r8d, dword [rbp + 0x38]
lea rcx, [rbp + 0x4fc]
add r8d, dword [rbp + 0x4f8]
mov rax, qword [fcn.1400061a0]
call qword [case.0x14006088e.0]
mov r13d, dword [rbp - 0x34]
lea eax, [r13 - 2]
cmp eax, r14d
jbe 0x14001ec93
cmp r13d, r14d
jne 0x14001ecb0
xor edx, edx
mov dword [rbp + 0x4e8], 0xffffff
lea rcx, [rbp + 0xbc0]
lea r8d, [rdx + 0x5c]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [0x1400b6148]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
mov r14d, ebx
call qword [case.0x14006088e.0]
mov rdi, rax
test rax, rax
jne 0x14001ebc4
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r14d, ax
or r14d, 0x80070000
test eax, eax
cmovle r14d, eax
test r14d, r14d
jns 0x14001e5b9
mov r13d, dword [rbp - 0x70]
test r14d, r14d
js 0x14001ee84
mov rdx, qword [rbp + 0x4e0]
mov r14d, ebx
mov rcx, qword [rsp + 0x70]
mov rax, qword [0x1400b60c8]
mov rdi, qword [rbp + 0x4c8]
mov dword [rbp + 0x514], r12d
call qword [case.0x14006088e.0]
mov rdx, rdi
mov qword [rsp + 0x28], rbx
mov rdi, qword [rsp + 0x70]
lea r9, [rbp + 0x50c]
mov r12, rax
mov dword [rsp + 0x20], 0x460
mov rax, qword [fcn.1400061a0]
mov rcx, rdi
mov r8d, r15d
call qword [case.0x14006088e.0]
test eax, eax
mov eax, 0x80004005
cmove r14d, eax
test r12, r12
je 0x14001ead3
mov rax, qword [0x1400b60c8]
mov rdx, r12
mov rcx, rdi
call qword [case.0x14006088e.0]
test r14d, r14d
js 0x14001ee84
mov eax, dword [rbp + 0x514]
mov ecx, 0x5a
add eax, 0x18
mov edx, r13d
cmp eax, ecx
cmovl eax, ecx
lea edi, [rcx + 6]
mov dword [rbp + 0x514], eax
mov r8d, edi
lea eax, [rcx - 0x3a]
mov ecx, dword [rbp + 0x50c]
mov dword [rbp + 0x518], eax
mov rax, qword [0x1400b6108]
call qword [case.0x14006088e.0]
mov ecx, dword [rbp + 0x510]
mov r8d, edi
mov dword [rbp + 0x50c], eax
mov edx, r13d
mov rax, qword [0x1400b6108]
call qword [case.0x14006088e.0]
mov ecx, dword [rbp + 0x514]
mov r8d, edi
mov dword [rbp + 0x510], eax
mov edx, r13d
mov rax, qword [0x1400b6108]
call qword [case.0x14006088e.0]
mov ecx, dword [rbp + 0x518]
mov r8d, edi
mov dword [rbp + 0x514], eax
mov edx, r13d
mov rax, qword [0x1400b6108]
call qword [case.0x14006088e.0]
lea rcx, [rbp + 0x50c]
mov r8d, dword [rbp + 0x508]
mov dword [rbp + 0x518], eax
mov rax, qword [fcn.1400061a0]
cmp dword [rbp + 0x4b0], ebx
je 0x14001ec6b
mov edx, dword [rbp + 0x4fc]
cmp dword [rbp + 0x4ec], edx
cmovl edx, dword [rbp + 0x4ec]
add r8d, 0x24
call qword [case.0x14006088e.0]
mov r13d, dword [rbp - 0x34]
jmp 0x14001ecb0
mov r13d, dword [rbp - 0x70]
mov r8d, 0x48
mov rax, qword [0x1400b6108]
mov edx, r13d
lea ecx, [r8 - 0x3d]
call qword [case.0x14006088e.0]
mov r8, qword [rbp - 0x18]
lea rcx, [rbp + 0xbdc]
neg eax
mov dword [rbp + 0xbd0], 0x190
mov edx, 0x20
mov dword [rbp + 0xbc0], eax
mov byte [rbp + 0xbda], 5
call fcn.140023918
mov rax, qword [0x1400b6070]
lea rcx, [rbp + 0xbc0]
call qword [case.0x14006088e.0]
test rax, rax
jne 0x14001ec4d
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r14d, ax
or r14d, 0x80070000
test eax, eax
cmovle r14d, eax
test r14d, r14d
js 0x14001ec54
mov r14d, 0x80004005
jmp 0x14001ec54
mov qword [rbp + 0x4e0], rax
mov rax, qword [0x1400b61b0]
mov rdx, rdi
xor ecx, ecx
call qword [case.0x14006088e.0]
jmp 0x14001ea4b
mov edx, dword [rbp + 0x504]
cmp dword [rbp + 0x4f4], edx
cmovg edx, dword [rbp + 0x4f4]
add r8d, 0x24
sub edx, dword [rbp + 0x514]
add edx, dword [rbp + 0x50c]
jmp 0x14001ebb5
mov eax, dword [rbp + 0x508]
mov dword [rbp + 0x92c], eax
mov dword [rbp + 0x928], r12d
mov dword [rbp + 0x4e8], 0xffa8a8a8
mov r12d, dword [rbp + 0x4b0]
mov ecx, r13d
mov r14d, dword [rbp + 0x92c]
mov edi, dword [rbp + 0x928]
sub ecx, 1
je 0x14001ee77
sub ecx, 1
je 0x14001ed8f
cmp ecx, 1
jne 0x14001ee7f
lea r12d, [rcx + 0x27]
xor edx, edx
mov r8d, r12d
lea rcx, [rbp + 0xad8]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [fcn.1400061a0]
lea edx, [r12 - 0x27]
xor ecx, ecx
call qword [case.0x14006088e.0]
lea rdx, [rbp + 0xad8]
mov dword [rbp + 0xad8], r12d
mov rcx, rax
mov rax, qword [fcn.1400061a0]
call qword [case.0x14006088e.0]
test eax, eax
je 0x14001ee7f
mov rax, qword [fcn.1400061a0]
lea rdx, [rbp + 0xaec]
xor ecx, ecx
call qword [case.0x14006088e.0]
mov rax, qword [fcn.1400061a0]
lea rdx, [rbp + 0xaf4]
xor ecx, ecx
call qword [case.0x14006088e.0]
mov eax, dword [rbp + 0xaf4]
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 + 0xaf4]
shr rcx, 0x20
sub ecx, r14d
imul ecx, ecx, 0x32
jmp 0x14001ee58
xor edx, edx
lea rcx, [rbp + 0x9c0]
lea r8d, [rdx + 0x28]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [fcn.1400061a0]
mov edx, 1
xor ecx, ecx
call qword [case.0x14006088e.0]
lea rdx, [rbp + 0x9c0]
mov dword [rbp + 0x9c0], SafeArrayCreateVectorEx
mov rcx, rax
mov rax, qword [fcn.1400061a0]
call qword [case.0x14006088e.0]
test eax, eax
je 0x14001ee7f
mov rax, qword [fcn.1400061a0]
lea rdx, [rbp + 0x9d4]
xor ecx, ecx
call qword [case.0x14006088e.0]
mov rax, qword [fcn.1400061a0]
lea rdx, [rbp + 0x9dc]
xor ecx, ecx
call qword [case.0x14006088e.0]
mov eax, dword [rbp + 0x9dc]
test r12d, r12d
je 0x14001ee31
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 + 0x9d4]
jmp 0x14001ee47
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 + 0x9dc]
shr rax, 0x20
sub eax, r14d
imul ecx, eax, 0x5f
mov dword [rbp + 0x920], edx
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [rbp + 0x924], edx
jmp 0x14001ee7f
and qword [rbp + 0x920], 0
mov r14d, ebx
jmp 0x14001ee88
mov r13d, dword [rbp - 0x34]
mov rdx, qword [rsp + 0x70]
xor ecx, ecx
mov rax, qword [0x1400b61b0]
call qword [case.0x14006088e.0]
mov r12d, 1
xor eax, eax
lock cmpxchg dword [0x1400bd658], r12d
jne 0x14001eea2
mov eax, dword [0x1400bd654]
test eax, eax
jle 0x14001ef22
sub eax, r12d
mov dword [0x1400bd654], eax
jne 0x14001ef22
mov rax, r12
lea rdi, [0x1400bd360]
mov r12d, 4
cmp qword [rdi], rbx
je 0x14001eee7
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, 1
add rdi, 0x18
sub r12, rax
jne 0x14001eed4
xor edx, edx
lea r8d, [r12 + 0x60]
lea rcx, [0x1400bd360]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006f800]
lea rcx, [0x1400b6050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r12d, 1
mov eax, ebx
lea rcx, [rbp + 0x208]
xchg dword [0x1400bd658], eax
call fcn.140043808
test r14d, r14d
js 0x1400207d4
mov rdi, qword [rbp + 0x920]
lea rcx, [rbp + 0x520]
xor edx, edx
mov qword [rbp + 0x280], rdi
lea r8d, [rdx + 0x68]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rax, qword [0x1400b60a0]
mov r14d, r12d
mov r12, qword [rbp + 0x68]
mov edx, 7
mov rcx, r12
call qword [case.0x14006088e.0]
test rax, rax
je 0x14001efc7
mov rcx, rax
lea r8, [rbp + 0x520]
mov rax, qword [0x1400b60b8]
mov edx, 0x68
call qword [case.0x14006088e.0]
test eax, eax
je 0x14001efc7
mov eax, 0x20
cmp word [rbp + 0x532], ax
jne 0x14001efc7
cmp qword [rbp + 0x538], rbx
je 0x14001efc7
cmp dword [rbp + 0x524], ebx
jle 0x14001efc7
cmp dword [rbp + 0x528], ebx
jg 0x14001efca
mov r14d, ebx
mov dword [rbp + 0x180], r14d
test r14d, r14d
mov r14d, 1
jne 0x14001efe1
cmp r13d, r14d
jne 0x14001f043
mov r8d, dword [rbp + 0x284]
lea rcx, [rbp + 0x4ec]
mov rax, qword [fcn.1400061a0]
mov edx, edi
call qword [case.0x14006088e.0]
mov r8d, dword [rbp + 0x284]
lea rcx, [rbp + 0x4fc]
mov rax, qword [fcn.1400061a0]
mov edx, edi
call qword [case.0x14006088e.0]
cmp r13d, r14d
jne 0x14001f043
mov eax, dword [rbp + 0x4b4]
neg eax
mov rax, qword [0x1400b6078]
sbb ecx, ecx
not ecx
and ecx, 0xb26720
call qword [case.0x14006088e.0]
mov qword [rbp + 0x60], rax
mov rax, qword [fcn.1400061a0]
mov edx, r14d
mov rcx, r12
call qword [case.0x14006088e.0]
cmp dword [rbp + 0x4b0], ebx
mov ecx, 0x20812
mov dword [rsp + 0x70], eax
mov eax, 0x810
cmovne eax, ecx
mov dword [rbp + 0x38], eax
cmp dword [rbp + 0x180], ebx
je 0x14001fa7b
mov eax, dword [rbp + 0x4b4]
lea rcx, [rbp + 0x600]
mov r14, qword [rbp + 0x4b8]
mov r13d, 0x68
mov dword [rbp - 0x78], eax
mov r8d, r13d
mov rax, qword [rbp + 0x4d0]
xor edx, edx
mov qword [rbp - 0x28], rax
mov qword [rbp + 0x58], r14
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, r13d
lea rcx, [rbp + 0x750]
xor edx, edx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor edx, edx
mov qword [rbp - 0x18], rbx
lea r8d, [r13 - 0x3c]
mov dword [rbp - 0x80], ebx
lea rcx, [rbp + 0xaa8]
mov edi, ebx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor eax, eax
mov qword [rbp + 0x960], rax
mov qword [rbp + 0x968], rax
test r14, r14
je 0x1400207bb
lea edx, [rax + 7]
mov rcx, r12
mov rax, qword [0x1400b60a0]
call qword [case.0x14006088e.0]
test rax, rax
je 0x14001facf
mov rcx, rax
lea r8, [rbp + 0x600]
mov rax, qword [0x1400b60b8]
mov edx, r13d
call qword [case.0x14006088e.0]
test eax, eax
je 0x14001f14b
mov rax, qword [rbp + 0x618]
mov edi, dword [rbp + 0x608]
mov qword [rbp - 0x18], rax
mov eax, dword [rbp + 0x604]
mov dword [rbp - 0x80], eax
mov rax, qword [0x1400b6060]
mov rcx, r12
call qword [case.0x14006088e.0]
mov r12, rax
test rax, rax
je 0x14001facf
xor edx, edx
mov qword [rbp + 0x3c0], rbx
lea rcx, [rbp + 0xaa8]
mov r14d, ebx
lea r8d, [rdx + 0x2c]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov eax, dword [rbp + 0x4f4]
lea r9, [rbp + 0x3c0]
sub eax, dword [rbp + 0x4ec]
lea rdx, [rbp + 0xaa8]
mov dword [rbp + 0xaac], eax
xor r8d, r8d
mov eax, dword [rbp + 0x4f0]
mov rcx, r12
sub eax, dword [rbp + 0x4f8]
mov dword [rbp + 0xab0], eax
mov rax, qword [0x1400b6068]
mov dword [rsp + 0x28], ebx
mov dword [rbp + 0xaa8], SafeArrayCreateVectorEx
mov dword [rbp + 0xab4], 0x200001
mov qword [rsp + 0x20], rbx
call qword [case.0x14006088e.0]
mov qword [rsp + 0x78], rax
mov r13, rax
test rax, rax
jne 0x14001f21d
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r14d, ax
or r14d, 0x80070000
test eax, eax
cmovle r14d, eax
test r14d, r14d
js 0x14001f55d
mov r14d, 0x80004005
jmp 0x14001f55d
mov rax, qword [0x1400b60b8]
lea r8, [rbp + 0x750]
mov edx, 0x68
mov rcx, r13
call qword [case.0x14006088e.0]
mov rcx, rbx
mov rdx, r13
test eax, eax
mov eax, dword [rbp + 0x4f4]
cmovne rcx, qword [rbp + 0x768]
sub eax, dword [rbp + 0x4ec]
mov dword [rbp + 0x968], eax
mov eax, dword [rbp + 0x4f8]
sub eax, dword [rbp + 0x4f0]
mov dword [rbp + 0x96c], eax
mov rax, qword [0x1400b60c8]
mov qword [rbp], rcx
mov rcx, r12
call qword [case.0x14006088e.0]
mov rax, qword [fcn.1400061a0]
mov r13d, 1
mov edx, r13d
mov rcx, r12
call qword [case.0x14006088e.0]
mov rdx, qword [rbp - 0x28]
mov rcx, r12
mov rax, qword [0x1400b60c8]
call qword [case.0x14006088e.0]
mov qword [rbp - 0x50], rax
xor ecx, ecx
mov rax, qword [0x1400b60c0]
call qword [case.0x14006088e.0]
lea rdx, [rbp + 0x960]
mov rcx, r12
mov r8, rax
mov rax, qword [0x1400b6138]
call qword [case.0x14006088e.0]
mov eax, dword [rbp + 0x38]
lea r9, [rbp + 0x960]
mov rdx, qword [rbp + 0x58]
mov r8d, r15d
mov qword [rsp + 0x28], rbx
mov rcx, r12
mov dword [rsp + 0x20], eax
mov rax, qword [fcn.1400061a0]
call qword [case.0x14006088e.0]
cmp dword [rbp - 0x34], r13d
jne 0x14001f332
cmp dword [rbp - 0x78], ebx
je 0x14001f32a
mov rax, qword [0x1400b6168]
lea ecx, [r13 + 7]
call qword [case.0x14006088e.0]
mov r13d, eax
mov dword [rsp + 0x68], eax
jmp 0x14001f33d
mov r13d, 0xffffff
jmp 0x14001f338
mov r13d, 0xffa8a8a8
mov dword [rsp + 0x68], r13d
mov eax, dword [rbp + 0x4ec]
mov r9d, ebx
movsxd r10, dword [rbp - 0x80]
mov r8d, eax
neg r8d
mov edx, ebx
test eax, eax
mov r11d, r10d
cmovns r9d, eax
cmovns r8d, ebx
mov eax, dword [rbp + 0x4f0]
mov ecx, eax
neg ecx
test eax, eax
cmovns edx, eax
cmovns ecx, ebx
mov eax, dword [rbp + 0x968]
sub r11d, r9d
sub eax, r8d
cmp eax, r11d
cmovl r11d, eax
mov eax, dword [rbp + 0x96c]
sub eax, ecx
sub edi, edx
cmp eax, edi
cmovl edi, eax
test r11d, r11d
jle 0x14001f52f
test edi, edi
jle 0x14001f52f
imul ecx, dword [rbp + 0x968]
mov esi, 1
movsxd rax, r8d
imul edx, r10d
mov qword [rbp - 0x78], rdi
movsxd rcx, ecx
add rcx, rax
mov rax, qword [rbp]
lea r8, [rax + rcx*4]
movsxd rcx, edx
movsxd rax, r9d
mov rdx, r10
add rcx, rax
mov qword [rbp + 0x58], r8
mov rax, qword [rbp - 0x18]
lea rax, [rax + rcx*4]
movsxd rcx, dword [rbp + 0x968]
shl rcx, 2
shl rdx, 2
mov qword [rbp - 0x40], rdx
mov qword [rbp], rax
mov qword [rbp - 0x28], rcx
test r11d, r11d
jle 0x14001f510
mov r10, rax
mov edi, r11d
sub r10, r8
mov qword [rbp - 0x18], 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 0x14001f4eb
movzx edi, byte [r10 + r9]
mov eax, 0x80808081
movzx r8d, dl
movzx ecx, r13b
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rsp + 0x69]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9], dl
movzx edi, byte [r10 + r9 - 1]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rsp + 0x6a]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9 - 1], dl
movzx edi, byte [r10 + r9 - 2]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
mov ecx, 0xff
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9 - 2], dl
movzx edi, byte [r10 + r9 + 1]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
add dl, dil
mov rdi, qword [rbp - 0x18]
mov byte [r10 + r9 + 1], dl
add r9, 4
sub rdi, rsi
mov qword [rbp - 0x18], rdi
jne 0x14001f416
mov r8, qword [rbp + 0x58]
mov rax, qword [rbp]
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x40]
mov rdi, qword [rbp - 0x78]
add r8, rcx
add rax, rdx
sub rdi, rsi
mov qword [rbp + 0x58], r8
mov qword [rbp - 0x78], rdi
mov qword [rbp], rax
jne 0x14001f3fc
mov esi, dword [rsp + 0x60]
mov rcx, qword [rsp + 0x78]
mov rax, qword [0x1400b6088]
call qword [case.0x14006088e.0]
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x14001f55d
mov rdx, rax
mov rcx, r12
mov rax, qword [0x1400b60c8]
call qword [case.0x14006088e.0]
mov rax, qword [0x1400b6080]
mov rcx, r12
call qword [case.0x14006088e.0]
test r14d, r14d
js 0x1400207bb
mov eax, dword [rbp + 0x4b4]
lea rcx, [rbp + 0x670]
mov r14, qword [rbp + 0x4c0]
mov edi, 0x68
mov dword [rbp - 0x78], eax
mov r8d, edi
mov rax, qword [rbp + 0x4d8]
xor edx, edx
mov qword [rbp - 0x28], rax
mov qword [rbp + 0x58], r14
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, edi
lea rcx, [rbp + 0x7c0]
xor edx, edx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor edx, edx
mov qword [rbp - 0x18], rbx
lea rcx, [rbp + 0xa78]
mov dword [rbp - 0x80], ebx
mov r13d, ebx
mov edi, ebx
lea r8d, [rdx + 0x2c]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor eax, eax
mov qword [rbp + 0x9a0], rax
mov qword [rbp + 0x9a8], rax
test r14, r14
je 0x1400207bb
mov r12, qword [rbp + 0x68]
lea edx, [rax + 7]
mov rax, qword [0x1400b60a0]
mov rcx, r12
call qword [case.0x14006088e.0]
test rax, rax
je 0x14001facf
mov rcx, rax
lea r8, [rbp + 0x670]
mov rax, qword [0x1400b60b8]
mov edx, 0x68
call qword [case.0x14006088e.0]
test eax, eax
je 0x14001f64f
mov rax, qword [rbp + 0x688]
mov r13d, dword [rbp + 0x674]
mov edi, dword [rbp + 0x678]
mov qword [rbp - 0x18], rax
mov dword [rbp - 0x80], r13d
mov rax, qword [0x1400b6060]
mov rcx, r12
call qword [case.0x14006088e.0]
mov r12, rax
test rax, rax
je 0x14001facf
xor edx, edx
mov qword [rbp + 0x3c8], rbx
lea rcx, [rbp + 0xa78]
mov r14d, ebx
lea r8d, [rdx + 0x2c]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov eax, dword [rbp + 0x504]
lea r9, [rbp + 0x3c8]
sub eax, dword [rbp + 0x4fc]
lea rdx, [rbp + 0xa78]
mov dword [rbp + 0xa7c], eax
xor r8d, r8d
mov eax, dword [rbp + 0x500]
mov rcx, r12
sub eax, dword [rbp + 0x508]
mov dword [rbp + 0xa80], eax
mov rax, qword [0x1400b6068]
mov dword [rsp + 0x28], ebx
mov dword [rbp + 0xa78], SafeArrayCreateVectorEx
mov dword [rbp + 0xa84], 0x200001
mov qword [rsp + 0x20], rbx
call qword [case.0x14006088e.0]
mov qword [rbp - 0x40], rax
test rax, rax
jne 0x14001f71d
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r14d, ax
or r14d, 0x80070000
test eax, eax
cmovle r14d, eax
test r14d, r14d
js 0x14001fa59
mov r14d, 0x80004005
jmp 0x14001fa59
mov rcx, rax
lea r8, [rbp + 0x7c0]
mov rax, qword [0x1400b60b8]
mov edx, 0x68
call qword [case.0x14006088e.0]
mov rdx, qword [rbp - 0x40]
mov rcx, rbx
test eax, eax
mov eax, dword [rbp + 0x504]
cmovne rcx, qword [rbp + 0x7d8]
sub eax, dword [rbp + 0x4fc]
mov dword [rbp + 0x9a8], eax
mov eax, dword [rbp + 0x508]
sub eax, dword [rbp + 0x500]
mov dword [rbp + 0x9ac], eax
mov rax, qword [0x1400b60c8]
mov qword [rbp], rcx
mov rcx, r12
call qword [case.0x14006088e.0]
mov rax, qword [fcn.1400061a0]
mov edx, 1
mov rcx, r12
call qword [case.0x14006088e.0]
mov rdx, qword [rbp - 0x28]
mov rcx, r12
mov rax, qword [0x1400b60c8]
call qword [case.0x14006088e.0]
mov qword [rsp + 0x78], rax
xor ecx, ecx
mov rax, qword [0x1400b60c0]
call qword [case.0x14006088e.0]
lea rdx, [rbp + 0x9a0]
mov rcx, r12
mov r8, rax
mov rax, qword [0x1400b6138]
call qword [case.0x14006088e.0]
mov eax, dword [rbp + 0x38]
lea r9, [rbp + 0x9a0]
mov rdx, qword [rbp + 0x58]
mov r8d, r15d
mov qword [rsp + 0x28], rbx
mov rcx, r12
mov dword [rsp + 0x20], eax
mov rax, qword [fcn.1400061a0]
call qword [case.0x14006088e.0]
mov eax, 1
cmp dword [rbp - 0x34], eax
jne 0x14001f82e
cmp dword [rbp - 0x78], ebx
je 0x14001f824
lea ecx, [rax + 7]
mov rax, qword [0x1400b6168]
call qword [case.0x14006088e.0]
jmp 0x14001f833
mov dword [rsp + 0x68], 0xffffff
jmp 0x14001f83d
mov eax, 0xffa8a8a8
mov dword [rsp + 0x68], eax
mov dword [rbp + 0xb8], eax
mov eax, dword [rbp + 0x4fc]
mov r9d, ebx
movsxd r10, dword [rbp + 0x9a8]
mov r8d, eax
neg r8d
mov edx, ebx
test eax, eax
mov r11d, r13d
cmovns r9d, eax
cmovns r8d, ebx
mov eax, dword [rbp + 0x500]
mov ecx, eax
neg ecx
test eax, eax
cmovns edx, eax
cmovns ecx, ebx
sub r11d, r9d
mov eax, r10d
sub eax, r8d
cmp eax, r11d
cmovl r11d, eax
mov eax, dword [rbp + 0x9ac]
sub eax, ecx
sub edi, edx
cmp eax, edi
cmovl edi, eax
test r11d, r11d
jle 0x14001fa2b
test edi, edi
jle 0x14001fa2b
mov esi, dword [rbp + 0xb8]
mov r15d, 1
imul ecx, r10d
movsxd rax, r8d
movsxd r8, dword [rbp - 0x80]
imul edx, r8d
movsxd rcx, ecx
add rcx, rax
mov rax, qword [rbp]
mov qword [rbp], rdi
lea r13, [rax + rcx*4]
movsxd rcx, edx
movsxd rax, r9d
mov rdx, r8
add rcx, rax
mov rax, qword [rbp - 0x18]
lea rax, [rax + rcx*4]
mov rcx, r10
shl rcx, 2
shl rdx, 2
mov qword [rbp - 0x78], rdx
mov qword [rbp + 0x58], rax
mov qword [rbp - 0x28], rcx
test r11d, r11d
jle 0x14001fa0c
mov r10, rax
mov edi, r11d
sub r10, r13
mov qword [rbp - 0x18], rdi
lea r9, [r13 + 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 0x14001f9eb
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 + 0x69]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9], dl
movzx edi, byte [r10 + r9 - 1]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rsp + 0x6a]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9 - 1], dl
movzx edi, byte [r10 + r9 - 2]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
mov ecx, 0xff
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9 - 2], dl
movzx edi, byte [r10 + r9 + 1]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
add dl, dil
mov rdi, qword [rbp - 0x18]
mov byte [r10 + r9 + 1], dl
add r9, 4
sub rdi, r15
mov qword [rbp - 0x18], rdi
jne 0x14001f916
mov rax, qword [rbp + 0x58]
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x78]
mov rdi, qword [rbp]
add rax, rdx
add r13, rcx
sub rdi, r15
mov qword [rbp + 0x58], rax
mov qword [rbp], rdi
jne 0x14001f8fc
mov esi, dword [rsp + 0x60]
or r15, 0xffffffffffffffff
mov rcx, qword [rbp - 0x40]
mov rax, qword [0x1400b6088]
call qword [case.0x14006088e.0]
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x14001fa59
mov rdx, rax
mov rcx, r12
mov rax, qword [0x1400b60c8]
call qword [case.0x14006088e.0]
mov rax, qword [0x1400b6080]
mov rcx, r12
call qword [case.0x14006088e.0]
test r14d, r14d
js 0x1400207bb
mov rdi, qword [rbp + 0x68]
jmp 0x140020775
cmp dword [rbp + 0x4b4], ebx
jne 0x14001fa8a
mov al, 0xc0
cmp r13d, r14d
jne 0x14001fa8c
mov al, 0xff
and word [rbp - 0x70], 0
mov rcx, r12
mov byte [rbp - 0x6e], al
xor eax, eax
mov qword [rbp + 0x940], rax
mov qword [rbp + 0x948], rax
mov qword [rbp + 0x950], rax
mov qword [rbp + 0x958], rax
mov rax, qword [0x1400b6060]
mov byte [rbp - 0x6d], r14b
call qword [case.0x14006088e.0]
mov qword [rbp + 0x70], rax
test rax, rax
jne 0x14001fada
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x1400207bb
cmp r13d, r14d
jne 0x14001fba6
mov r12d, dword [rbp + 0x504]
mov ecx, ebx
mov edi, dword [rbp + 0x4f4]
mov eax, r12d
mov r8d, dword [rbp + 0x4fc]
mov r14d, edi
mov r9d, dword [rbp + 0x4ec]
sub eax, r8d
mov r13d, dword [rbp + 0x508]
sub r14d, r9d
mov r10d, dword [rbp + 0x4f0]
cmp eax, r14d
mov edx, ebx
cmovg r14d, eax
mov eax, r13d
sub eax, r10d
mov dword [rbp - 0x50], eax
cmp dword [rbp + 0x4b0], ebx
je 0x14001fb51
mov ecx, r9d
mov edx, r8d
sub ecx, edi
sub edx, r12d
add ecx, r14d
add edx, r14d
mov dword [rbp + 0x940], ecx
mov dword [rbp + 0x950], edx
sub r13d, dword [rbp + 0x500]
sub edi, r9d
mov eax, dword [rbp + 0x4f8]
sub r12d, r8d
sub eax, r10d
add edi, ecx
mov dword [rsp + 0x68], eax
add r12d, edx
mov dword [rbp + 0x94c], eax
mov eax, dword [rbp + 0x500]
sub eax, r10d
mov dword [rbp + 0x948], edi
add r13d, eax
mov dword [rbp + 0x958], r12d
mov dword [rbp - 0x78], r13d
mov dword [rbp + 0x95c], r13d
mov r13d, dword [rbp - 0x50]
mov dword [rbp + 0x954], eax
jmp 0x14001fbfc
movups xmm0, xmmword [rbp + 0x4ec]
mov r13d, dword [rbp + 0x92c]
movups xmm1, xmmword [rbp + 0x4fc]
mov r14d, dword [rbp + 0x928]
movdqu xmmword [rbp + 0x940], xmm0
mov eax, dword [rbp + 0x94c]
mov edi, dword [rbp + 0x948]
movdqu xmmword [rbp + 0x950], xmm1
mov r12d, dword [rbp + 0x958]
mov dword [rsp + 0x68], eax
mov eax, dword [rbp + 0x95c]
mov dword [rbp - 0x78], eax
mov eax, dword [rbp + 0x954]
mov dword [rbp - 0x50], r13d
xor edx, edx
mov dword [rbp - 0x80], eax
lea rcx, [rbp + 0x9e8]
mov qword [rbp + 0x3d0], rbx
lea r8d, [rdx + 0x2c]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov rcx, qword [rbp + 0x70]
lea r9, [rbp + 0x3d0]
mov eax, r13d
mov dword [rsp + 0x28], ebx
neg eax
mov dword [rbp + 0x9e8], SafeArrayCreateVectorEx
mov dword [rbp + 0x9f0], eax
lea rdx, [rbp + 0x9e8]
mov rax, qword [0x1400b6068]
xor r8d, r8d
mov dword [rbp + 0x9ec], r14d
mov dword [rbp + 0x9f4], 0x200001
mov qword [rsp + 0x20], rbx
call qword [case.0x14006088e.0]
mov qword [rbp + 0x30], rax
test rax, rax
jne 0x14001fc7d
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x1400207a2
mov rcx, qword [rbp + 0x70]
mov rdx, rax
mov rax, qword [0x1400b60c8]
call qword [case.0x14006088e.0]
mov eax, 1
cmp dword [rbp - 0x34], eax
jne 0x14001fcdd
mov rax, qword [rbp + 0x60]
test rax, rax
je 0x14001fcdd
xor ecx, ecx
lea rdx, [rbp + 0x9b0]
mov qword [rbp + 0x9b8], rcx
mov r8, rax
mov rax, qword [0x1400b6138]
mov qword [rbp + 0x9b0], rcx
mov rcx, qword [rbp + 0x70]
mov dword [rbp + 0x9b8], r14d
mov dword [rbp + 0x9bc], r13d
call qword [case.0x14006088e.0]
mov eax, dword [rbp + 0x4b4]
lea rcx, [rbp + 0x590]
mov r13, qword [rbp + 0x4b8]
xor edx, edx
mov dword [rbp - 0x58], eax
mov rax, qword [rbp + 0x4d0]
mov qword [rbp + 0x58], rax
lea r8d, [rdx + 0x68]
mov qword [rbp + 0x78], r13
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 edx, edx
mov qword [rbp - 0x18], rbx
lea rcx, [rbp + 0xa18]
mov dword [rsp + 0x78], ebx
mov dword [rbp - 0x40], ebx
lea r8d, [rdx + 0x2c]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor eax, eax
mov qword [rbp + 0x970], rax
mov qword [rbp + 0x978], rax
test r13, r13
je 0x140020789
mov r13, qword [rbp + 0x70]
lea edx, [rax + 7]
mov rax, qword [0x1400b60a0]
mov rcx, r13
call qword [case.0x14006088e.0]
test rax, rax
jne 0x14001fd7d
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x140020789
mov rcx, rax
lea r8, [rbp + 0x590]
mov rax, qword [0x1400b60b8]
mov edx, 0x68
call qword [case.0x14006088e.0]
test eax, eax
je 0x14001fdbb
mov rax, qword [rbp + 0x5a8]
mov qword [rbp - 0x18], rax
mov eax, dword [rbp + 0x594]
mov dword [rsp + 0x78], eax
mov eax, dword [rbp + 0x598]
mov dword [rbp - 0x40], eax
mov rax, qword [0x1400b6060]
mov rcx, r13
call qword [case.0x14006088e.0]
mov qword [rbp], rax
test rax, rax
je 0x14001fd72
xor edx, edx
mov qword [rbp + 0x3d8], rbx
lea rcx, [rbp + 0xa18]
mov r13d, ebx
lea r8d, [rdx + 0x2c]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov eax, dword [rbp + 0x944]
lea r9, [rbp + 0x3d8]
sub eax, dword [rsp + 0x68]
lea rdx, [rbp + 0xa18]
sub edi, dword [rbp + 0x940]
xor r8d, r8d
mov rcx, qword [rbp]
mov dword [rbp + 0xa20], eax
mov rax, qword [0x1400b6068]
mov dword [rsp + 0x28], ebx
mov dword [rbp + 0xa18], SafeArrayCreateVectorEx
mov dword [rbp + 0xa1c], edi
mov dword [rbp + 0xa24], 0x200001
mov qword [rsp + 0x20], rbx
call qword [case.0x14006088e.0]
mov qword [rbp - 0x28], rax
test rax, rax
jne 0x14001fe7f
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r13d, ax
or r13d, 0x80070000
test eax, eax
cmovle r13d, eax
test r13d, r13d
js 0x1400201c5
mov r13d, 0x80004005
jmp 0x1400201c5
mov rcx, rax
lea r8, [rbp + 0x830]
mov rax, qword [0x1400b60b8]
mov edx, 0x68
call qword [case.0x14006088e.0]
mov rdx, qword [rbp - 0x28]
mov rcx, rbx
test eax, eax
mov dword [rbp + 0x978], edi
mov eax, dword [rsp + 0x68]
cmovne rcx, qword [rbp + 0x848]
sub eax, dword [rbp + 0x944]
mov rdi, qword [rbp]
mov dword [rbp + 0x97c], eax
mov rax, qword [0x1400b60c8]
mov qword [rbp - 0x10], rcx
mov rcx, rdi
call qword [case.0x14006088e.0]
mov rax, qword [fcn.1400061a0]
mov edx, 1
mov rcx, rdi
call qword [case.0x14006088e.0]
mov rdx, qword [rbp + 0x58]
mov rcx, rdi
mov rax, qword [0x1400b60c8]
call qword [case.0x14006088e.0]
mov qword [rsp + 0x68], rax
xor ecx, ecx
mov rax, qword [0x1400b60c0]
call qword [case.0x14006088e.0]
lea rdx, [rbp + 0x970]
mov rcx, rdi
mov r8, rax
mov rax, qword [0x1400b6138]
call qword [case.0x14006088e.0]
mov eax, dword [rbp + 0x38]
lea r9, [rbp + 0x970]
mov rdx, qword [rbp + 0x78]
mov r8d, r15d
mov qword [rsp + 0x28], rbx
mov rcx, rdi
mov dword [rsp + 0x20], eax
mov rax, qword [fcn.1400061a0]
call qword [case.0x14006088e.0]
mov eax, 1
cmp dword [rbp - 0x34], eax
jne 0x14001ff88
cmp dword [rbp - 0x58], ebx
je 0x14001ff7f
lea ecx, [rax + 7]
mov rax, qword [0x1400b6168]
call qword [case.0x14006088e.0]
mov dword [rbp - 0x58], eax
jmp 0x14001ff8f
mov dword [rbp - 0x58], 0xffffff
jmp 0x14001ff8f
mov dword [rbp - 0x58], 0xffa8a8a8
mov eax, dword [rbp + 0x940]
mov r10d, ebx
mov r11d, dword [rsp + 0x78]
mov r9d, eax
mov edx, dword [rbp - 0x40]
neg r9d
test eax, eax
mov r8d, ebx
cmovns r10d, eax
cmovns r9d, ebx
mov eax, dword [rbp + 0x944]
mov ecx, eax
neg ecx
test eax, eax
cmovns r8d, eax
cmovns ecx, ebx
mov eax, dword [rbp + 0x978]
sub r11d, r10d
sub eax, r9d
cmp eax, r11d
cmovl r11d, eax
mov eax, dword [rbp + 0x97c]
sub eax, ecx
sub edx, r8d
cmp eax, edx
cmovl edx, eax
test r11d, r11d
jle 0x140020197
test edx, edx
jle 0x140020197
imul ecx, dword [rbp + 0x978]
mov esi, 1
mov r15d, dword [rbp - 0x58]
movsxd rax, r9d
movsxd r9, dword [rsp + 0x78]
imul r8d, r9d
movsxd rcx, ecx
add rcx, rax
mov qword [rsp + 0x78], rdx
mov rax, qword [rbp - 0x10]
lea rdi, [rax + rcx*4]
movsxd rcx, r8d
movsxd rax, r10d
mov r8, r9
add rcx, rax
mov qword [rbp + 0x58], rdi
mov rax, qword [rbp - 0x18]
lea rax, [rax + rcx*4]
movsxd rcx, dword [rbp + 0x978]
shl rcx, 2
shl r8, 2
mov qword [rbp + 0x78], r8
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x10], rcx
test r11d, r11d
jle 0x14002016f
mov r10, rax
lea r9, [rdi + 2]
sub r10, rdi
mov edi, r11d
mov qword [rbp - 0x18], 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 0x140020149
movzx edi, byte [r10 + r9]
mov eax, 0x80808081
movzx r8d, dl
movzx ecx, r15b
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rbp - 0x57]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x80808081
add dl, dil
mov byte [r10 + r9], dl
movzx edi, byte [r10 + r9 - 1]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rbp - 0x56]
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 - 0x18]
mov byte [r10 + r9 + 1], dl
add r9, 4
sub rdi, rsi
mov qword [rbp - 0x18], rdi
jne 0x140020076
mov rdi, qword [rbp + 0x58]
mov rax, qword [rbp - 0x40]
mov rcx, qword [rbp - 0x10]
mov r8, qword [rbp + 0x78]
mov rdx, qword [rsp + 0x78]
add rdi, rcx
add rax, r8
sub rdx, rsi
mov qword [rbp + 0x58], rdi
mov qword [rsp + 0x78], rdx
mov qword [rbp - 0x40], rax
jne 0x14002005c
mov esi, dword [rsp + 0x60]
or r15, 0xffffffffffffffff
mov rdi, qword [rbp]
mov rcx, qword [rbp - 0x28]
mov rax, qword [0x1400b6088]
call qword [case.0x14006088e.0]
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x1400201c5
mov rdx, rax
mov rcx, rdi
mov rax, qword [0x1400b60c8]
call qword [case.0x14006088e.0]
mov rcx, qword [rbp]
mov rax, qword [0x1400b6080]
call qword [case.0x14006088e.0]
test r13d, r13d
js 0x140020789
mov eax, dword [rbp + 0x4b4]
lea rcx, [rbp + 0x6e0]
mov rdi, qword [rbp + 0x4c0]
mov r13d, 0x68
mov dword [rsp + 0x68], eax
mov r8d, r13d
mov rax, qword [rbp + 0x4d8]
xor edx, edx
mov qword [rbp - 0x10], rax
mov qword [rbp + 0x78], rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, r13d
lea rcx, [rbp + 0x8a0]
xor edx, edx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor edx, edx
mov qword [rbp - 0x28], rbx
lea r8d, [r13 - 0x3c]
mov dword [rbp - 0x40], ebx
lea rcx, [rbp + 0xa48]
mov dword [rsp + 0x78], ebx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor eax, eax
mov qword [rbp + 0x980], rax
mov qword [rbp + 0x988], rax
test rdi, rdi
je 0x140020789
mov r13, qword [rbp + 0x70]
lea edx, [rax + 7]
mov rax, qword [0x1400b60a0]
mov rcx, r13
call qword [case.0x14006088e.0]
test rax, rax
je 0x14001fd72
mov rcx, rax
lea r8, [rbp + 0x6e0]
mov rax, qword [0x1400b60b8]
mov edx, 0x68
call qword [case.0x14006088e.0]
test eax, eax
je 0x1400202bb
mov rax, qword [rbp + 0x6f8]
mov qword [rbp - 0x28], rax
mov eax, dword [rbp + 0x6e4]
mov dword [rbp - 0x40], eax
mov eax, dword [rbp + 0x6e8]
mov dword [rsp + 0x78], eax
mov rax, qword [0x1400b6060]
mov rcx, r13
call qword [case.0x14006088e.0]
mov qword [rbp], rax
test rax, rax
je 0x14001fd72
xor edx, edx
mov qword [rbp + 0x3e8], rbx
lea rcx, [rbp + 0xa48]
mov r13d, ebx
lea r8d, [rdx + 0x2c]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov eax, dword [rbp - 0x80]
lea r9, [rbp + 0x3e8]
mov edi, dword [rbp - 0x78]
lea rdx, [rbp + 0xa48]
sub r12d, dword [rbp + 0x950]
sub eax, edi
mov rcx, qword [rbp]
xor r8d, r8d
mov dword [rbp + 0xa50], eax
mov rax, qword [0x1400b6068]
mov dword [rsp + 0x28], ebx
mov dword [rbp + 0xa48], SafeArrayCreateVectorEx
mov dword [rbp + 0xa4c], r12d
mov dword [rbp + 0xa54], 0x200001
mov qword [rsp + 0x20], rbx
call qword [case.0x14006088e.0]
mov qword [rbp - 0x58], rax
test rax, rax
jne 0x140020383
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r13d, ax
or r13d, 0x80070000
test eax, eax
cmovle r13d, eax
test r13d, r13d
js 0x1400206c6
mov r13d, 0x80004005
jmp 0x1400206c6
mov rcx, rax
lea r8, [rbp + 0x8a0]
mov rax, qword [0x1400b60b8]
mov edx, 0x68
call qword [case.0x14006088e.0]
mov rdx, qword [rbp - 0x58]
mov rcx, rbx
test eax, eax
mov dword [rbp + 0x988], r12d
mov r12d, dword [rbp - 0x80]
cmovne rcx, qword [rbp + 0x8b8]
sub edi, r12d
mov rax, qword [0x1400b60c8]
mov dword [rbp + 0x98c], edi
mov rdi, qword [rbp]
mov qword [rbp - 0x18], rcx
mov rcx, rdi
call qword [case.0x14006088e.0]
mov rax, qword [fcn.1400061a0]
mov edx, 1
mov rcx, rdi
call qword [case.0x14006088e.0]
mov rdx, qword [rbp - 0x10]
mov rcx, rdi
mov rax, qword [0x1400b60c8]
call qword [case.0x14006088e.0]
mov qword [rbp - 0x80], rax
xor ecx, ecx
mov rax, qword [0x1400b60c0]
call qword [case.0x14006088e.0]
lea rdx, [rbp + 0x980]
mov rcx, rdi
mov r8, rax
mov rax, qword [0x1400b6138]
call qword [case.0x14006088e.0]
mov eax, dword [rbp + 0x38]
lea r9, [rbp + 0x980]
mov rdx, qword [rbp + 0x78]
mov r8d, r15d
mov qword [rsp + 0x28], rbx
mov rcx, rdi
mov dword [rsp + 0x20], eax
mov rax, qword [fcn.1400061a0]
call qword [case.0x14006088e.0]
mov eax, 1
cmp dword [rbp - 0x34], eax
jne 0x140020488
cmp dword [rsp + 0x68], ebx
je 0x14002047e
lea ecx, [rax + 7]
mov rax, qword [0x1400b6168]
call qword [case.0x14006088e.0]
jmp 0x14002048d
mov dword [rsp + 0x68], 0xffffff
jmp 0x140020497
mov eax, 0xffa8a8a8
mov dword [rsp + 0x68], eax
mov dword [rbp + 0xb8], eax
mov eax, dword [rbp + 0x950]
mov ecx, r12d
mov edx, dword [rsp + 0x78]
mov r9d, eax
neg r9d
mov r10d, ebx
test eax, eax
mov r8d, ebx
cmovns r10d, eax
cmovns r9d, ebx
mov eax, dword [rbp + 0x988]
neg ecx
test r12d, r12d
cmovns r8d, r12d
cmovns ecx, ebx
movsxd r12, dword [rbp - 0x40]
sub eax, r9d
mov r11d, r12d
sub r11d, r10d
cmp eax, r11d
cmovl r11d, eax
mov eax, dword [rbp + 0x98c]
sub eax, ecx
sub edx, r8d
cmp eax, edx
cmovl edx, eax
test r11d, r11d
jle 0x140020699
test edx, edx
jle 0x140020699
imul ecx, dword [rbp + 0x988]
mov r15d, 1
mov esi, dword [rbp + 0xb8]
imul r8d, r12d
movsxd rax, r9d
mov qword [rbp - 0x78], rdx
movsxd rcx, ecx
add rcx, rax
mov rax, qword [rbp - 0x18]
lea rdi, [rax + rcx*4]
movsxd rcx, r8d
movsxd rax, r10d
mov r8, r12
add rcx, rax
mov qword [rbp - 0x18], rdi
mov rax, qword [rbp - 0x28]
lea rax, [rax + rcx*4]
movsxd rcx, dword [rbp + 0x988]
shl rcx, 2
shl r8, 2
mov qword [rbp + 0x78], r8
mov qword [rbp + 0x58], rax
mov qword [rbp - 0x10], rcx
test r11d, r11d
jle 0x140020672
mov r10, rax
lea r9, [rdi + 2]
sub r10, rdi
mov edi, r11d
mov qword [rbp - 0x28], 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 0x14002064d
movzx edi, byte [r10 + r9]
mov r12d, 0x80808081
movzx r8d, dl
mov eax, r12d
movzx ecx, sil
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rsp + 0x69]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, r12d
add dl, dil
mov byte [r10 + r9], dl
movzx edi, byte [r10 + r9 - 1]
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rsp + 0x6a]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, r12d
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, r12d
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 - 0x28]
mov byte [r10 + r9 + 1], dl
add r9, 4
sub rdi, r15
mov qword [rbp - 0x28], rdi
jne 0x14002057a
mov rdi, qword [rbp - 0x18]
mov rax, qword [rbp + 0x58]
mov rcx, qword [rbp - 0x10]
mov r8, qword [rbp + 0x78]
mov rdx, qword [rbp - 0x78]
add rdi, rcx
add rax, r8
sub rdx, r15
mov qword [rbp - 0x18], rdi
mov qword [rbp - 0x78], rdx
mov qword [rbp + 0x58], rax
jne 0x140020560
mov esi, dword [rsp + 0x60]
or r15, 0xffffffffffffffff
mov rdi, qword [rbp]
mov rcx, qword [rbp - 0x58]
mov rax, qword [0x1400b6088]
call qword [case.0x14006088e.0]
mov rax, qword [rbp - 0x80]
test rax, rax
je 0x1400206c6
mov rdx, rax
mov rcx, rdi
mov rax, qword [0x1400b60c8]
call qword [case.0x14006088e.0]
mov rcx, qword [rbp]
mov rax, qword [0x1400b6080]
call qword [case.0x14006088e.0]
test r13d, r13d
js 0x140020789
mov rdi, qword [rbp + 0x68]
mov eax, 1
mov r9d, r14d
cmp dword [rbp - 0x34], eax
jne 0x140020730
mov rax, qword [rbp + 0x70]
mov rcx, rdi
mov r8d, dword [rbp + 0x4f0]
mov edx, dword [rbp + 0x4ec]
mov dword [rsp + 0x40], 0xcc0020
mov dword [rsp + 0x38], ebx
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], rax
mov eax, dword [rbp - 0x50]
mov dword [rsp + 0x20], eax
mov rax, qword [0x1400b6050]
call qword [case.0x14006088e.0]
jmp 0x140020775
mov eax, dword [rbp - 0x50]
mov ecx, dword [rbp - 0x70]
mov r8d, dword [rbp + 0x924]
mov edx, dword [rbp + 0x920]
mov dword [rsp + 0x50], ecx
mov rcx, qword [rbp + 0x70]
mov dword [rsp + 0x48], eax
mov dword [rsp + 0x40], r14d
mov dword [rsp + 0x38], ebx
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], rcx
mov rcx, rdi
mov dword [rsp + 0x20], eax
mov rax, qword [fcn.1400061a0]
call qword [case.0x14006088e.0]
mov edx, dword [rsp + 0x70]
mov rcx, rdi
mov rax, qword [fcn.1400061a0]
call qword [case.0x14006088e.0]
mov rax, qword [rbp + 0x30]
test rax, rax
je 0x1400207a2
mov rcx, rax
mov rax, qword [0x1400b6088]
call qword [case.0x14006088e.0]
mov rax, qword [rbp + 0x70]
test rax, rax
je 0x1400207bb
mov rcx, rax
mov rax, qword [0x1400b6080]
call qword [case.0x14006088e.0]
mov rax, qword [rbp + 0x60]
test rax, rax
je 0x1400207d4
mov rcx, rax
mov rax, qword [0x1400b6088]
call qword [case.0x14006088e.0]
mov rax, qword [rbp + 0x4b8]
test rax, rax
je 0x140020821
mov rcx, r15
inc rcx
cmp word [rax + rcx*2], bx
jne 0x1400207e3
mov rdi, qword [rbp + 0x4b8]
lea rcx, [rcx*2 + 2]
xor eax, eax
rep stosb byte [rdi], al
mov rdi, qword [rbp + 0x4b8]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0x4b8], rbx
mov rax, qword [rbp + 0x4c0]
test rax, rax
je 0x14002086e
mov rcx, r15
inc rcx
cmp word [rax + rcx*2], bx
jne 0x140020830
mov rdi, qword [rbp + 0x4c0]
lea rcx, [rcx*2 + 2]
xor eax, eax
rep stosb byte [rdi], al
mov rdi, qword [rbp + 0x4c0]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0x4c0], rbx
mov rdi, qword [rbp + 0x4c8]
test rdi, rdi
je 0x1400208b4
mov rcx, r15
inc rcx
cmp word [rdi + rcx*2], bx
jne 0x14002087d
lea rcx, [rcx*2 + 2]
xor eax, eax
rep stosb byte [rdi], al
mov rdi, qword [rbp + 0x4c8]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0x4c8], rbx
mov rcx, qword [rbp + 0x4d0]
test rcx, rcx
je 0x1400208d4
mov rax, qword [0x1400b6088]
call qword [case.0x14006088e.0]
mov qword [rbp + 0x4d0], rbx
mov rcx, qword [rbp + 0x4d8]
test rcx, rcx
je 0x1400208f4
mov rax, qword [0x1400b6088]
call qword [case.0x14006088e.0]
mov qword [rbp + 0x4d8], rbx
mov rcx, qword [rbp + 0x4e0]
test rcx, rcx
je 0x140020914
mov rax, qword [0x1400b6088]
call qword [case.0x14006088e.0]
mov qword [rbp + 0x4e0], rbx
mov r12d, 1
xor eax, eax
lock cmpxchg dword [0x1400bd658], r12d
jne 0x14002091a
mov eax, dword [0x1400bd654]
test eax, eax
jle 0x14002098a
sub eax, r12d
mov dword [0x1400bd654], eax
jne 0x14002098a
lea r13, [0x1400bd360]
mov r14d, 4
mov rdi, r13
cmp qword [rdi], rbx
je 0x14002095a
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
add rdi, 0x18
sub r14, r12
jne 0x14002094c
xor edx, edx
lea r8d, [r14 + 0x60]
mov rcx, r13
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006f800]
lea rcx, [0x1400b6050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, ebx
xchg dword [0x1400bd658], eax
mov eax, dword [0x1400bd350]
mov dword [rbp - 0x40], eax
mov rax, qword [0x1400b60e8]
call qword [case.0x14006088e.0]
xor edx, edx
mov dword [rbp + 0xd20], ebx
sub eax, dword [0x1400bd348]
lea rcx, [rbp + 0xd28]
mov qword [rbp + 0x78], rax
lea r8d, [rdx + 0x38]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
xor eax, eax
lock cmpxchg dword [0x1400bd658], r12d
jne 0x1400209ca
mov eax, dword [0x1400bd654]
test eax, eax
jne 0x140020fa0
mov dword [rbp - 0x80], ebx
mov dword [rsp + 0x78], ebx
mov qword [rbp + 0x188], rbx
mov qword [rbp + 0x298], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
xor edx, edx
mov r8d, 0x338
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp - 0x10], rax
test rax, rax
je 0x140020f19
mov ecx, 0x67
mov dword [rbp + 0x28], ebx
mov esi, ebx
mov dword [rbp + 0x48], ebx
or r15d, 0xffffffff
lea r12, [rax + 7]
mov r8d, ebx
lea r14, [0x14008c7a2]
lea r13d, [rcx - 0x66]
mov r11d, ebx
mov edi, 0xab69
movzx eax, byte [r14 - 1]
movzx r10d, byte [r14 - 2]
movzx r9d, byte [r14 + 2]
shl r10d, 8
or r10d, eax
shl r9d, 8
movzx eax, byte [r14]
lea r14, [r14 + 8]
shl r10d, 8
or r10d, eax
movzx eax, byte [r14 - 7]
shl r10d, 8
or r10d, eax
movzx eax, byte [r14 - 5]
or r9d, eax
xor r11d, r10d
movzx eax, byte [r14 - 4]
shl r9d, 8
or r9d, eax
movzx eax, byte [r14 - 3]
shl r9d, 8
or r9d, eax
xor r8d, r9d
xor r8d, r11d
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, edi
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
xor eax, 0xab69605e
ror eax, 0xc
mov edi, 0x7f1
imul edx, eax, 0x137f
mov eax, r8d
ror eax, 0xa
xor edx, eax
xor r11d, edx
mov eax, r11d
xor eax, edi
imul edx, eax, 0xab69
mov eax, r11d
shr eax, 0xa
xor edx, eax
xor edx, r8d
mov eax, edx
not eax
ror eax, 5
add eax, 0x605e
imul eax, eax, 0x7f1
xor r11d, eax
lea r8d, [r11 - 0x7f1]
xor r8d, edx
xor r8d, 0xab69605e
mov eax, r8d
xor eax, edi
rol eax, 2
imul edx, eax, 0x137f
mov eax, r8d
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 r8d, edx
mov eax, r8d
mov edi, r8d
xor eax, 0x137f
ror edi, 9
imul edx, eax, 0x605e
add edi, edx
xor r11d, edi
mov edi, 0xab69
mov eax, r11d
xor eax, edi
rol eax, 5
imul edx, eax, 0x7f1
mov eax, r11d
rol eax, 7
add edx, eax
xor r8d, edx
xor r11d, r8d
xor r11d, 0xac987321
mov eax, r11d
ror eax, 3
sub eax, edi
imul eax, eax, 0x137f
xor r8d, eax
lea eax, [r8 - 0x7f1137f]
ror eax, 1
imul edx, eax, 0x605e
mov eax, r8d
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 r8d, edx
lea eax, [r8 - 0x54969fa2]
rol eax, 0xf
imul edx, eax, 0x137f
mov eax, r8d
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 r8d, edx
mov eax, r8d
xor eax, 0x7f1137f
rol eax, 4
imul edx, eax, 0x605e
mov eax, r8d
rol eax, 2
xor r8d, r15d
mov dword [rbp + 0x28], r8d
mov r15d, r9d
xor edx, eax
xor edx, esi
mov esi, r10d
xor r11d, edx
mov dword [rbp + 0x48], r11d
mov byte [r12 - 4], r11b
mov al, byte [rbp + 0x28]
ror dword [rbp + 0x48], 8
mov byte [r12], al
lea r12, [r12 + 8]
ror dword [rbp + 0x28], 8
mov al, byte [rbp + 0x48]
mov byte [r12 - 0xd], al
mov al, byte [rbp + 0x28]
ror dword [rbp + 0x48], 8
mov byte [r12 - 9], al
ror dword [rbp + 0x28], 8
mov al, byte [rbp + 0x48]
mov byte [r12 - 0xe], al
ror dword [rbp + 0x48], 8
mov al, byte [rbp + 0x28]
mov byte [r12 - 0xa], al
ror dword [rbp + 0x28], 8
mov al, byte [rbp + 0x48]
mov byte [r12 - 0xf], al
mov al, byte [rbp + 0x28]
mov byte [r12 - 0xb], al
mov r11d, dword [rbp + 0x48]
mov r8d, dword [rbp + 0x28]
ror r11d, 8
ror r8d, 8
mov dword [rbp + 0x48], r11d
mov dword [rbp + 0x28], r8d
sub rcx, r13
jne 0x140020a49
mov esi, dword [rsp + 0x60]
or r15, 0xffffffffffffffff
mov r13, qword [rbp - 0x10]
mov rax, rbx
mov cl, bl
mov r14d, ebx
mov edx, 0x338
lea r12d, [r15 + 2]
xor cl, byte [rax + r13]
add rax, r12
cmp rax, rdx
jb 0x140020d89
movzx eax, cl
cmp rax, qword [0x14008cad8]
je 0x140020da8
mov edi, 0xc004d501
jmp 0x140020dbb
mov qword [rbp + 0x188], r13
mov edi, ebx
mov r13, rbx
mov qword [rbp + 0x298], rdx
test r13, r13
je 0x140020dd4
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test edi, edi
js 0x140020f19
mov rax, qword [rbp + 0x298]
lea r12, [0x1400bd360]
mov rdi, qword [rbp + 0x188]
xor edx, edx
mov rcx, r12
lea r8d, [rdx + 0x60]
mov byte [rax + rdi - 1], bl
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
jmp 0x140020f0f
mov rdx, rdi
mov rax, r15
inc rax
cmp word [rdi + rax*2], bx
jne 0x140020e0e
lea rdi, [rdi + rax*2]
mov eax, dword [rsp + 0x78]
lea rcx, [rax + rax*2]
lea r12, [r12 + rcx*8]
xor ecx, ecx
mov r8, r12
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
je 0x140020f19
mov rax, qword [r12]
mov ecx, 0x5a4d
mov r14d, ebx
cmp word [rax], cx
je 0x140020e53
mov r14d, 0xc000007b
jmp 0x140020ea3
movsxd rcx, dword [rax + 0x3c]
cmp ecx, 0x10000000
jae 0x140020e4b
add rcx, qword [r12]
cmp rcx, qword [r12]
jb 0x140020e4b
cmp dword [rcx], 0x4550
jne 0x140020e4b
movzx eax, word [rcx + 0x18]
mov edx, 0x10b
sub ax, dx
mov edx, 0xfeff
test dx, ax
je 0x140020e8f
mov r14d, 0xc000000d
jmp 0x140020ea3
mov rax, qword [rcx + 0x88]
mov qword [r12 + 0xc], rax
mov eax, dword [rcx + 0x50]
mov dword [r12 + 8], eax
mov eax, dword [rdi + 2]
mov r13d, ebx
add rdi, 6
mov dword [rsp + 0x70], eax
test eax, eax
je 0x140020eff
mov rdx, rdi
mov rax, r15
inc rax
cmp byte [rdi + rax], bl
jne 0x140020ebb
inc rdi
add rdi, rax
test r14d, r14d
js 0x140020eeb
mov rcx, qword [r12]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140020f1f
mov ecx, dword [rbp - 0x80]
lea rdx, [0x1400b6050]
mov qword [rdx + rcx*8], rax
mov eax, 1
add dword [rbp - 0x80], eax
add r13d, eax
cmp r13d, dword [rsp + 0x70]
jb 0x140020eb5
jmp 0x140020f04
mov eax, 1
add dword [rsp + 0x78], eax
lea r12, [0x1400bd360]
cmp byte [rdi], bl
jne 0x140020e08
jmp 0x140020f1f
mov r14d, 0xc000007a
cmp qword [rbp + 0x188], rbx
je 0x140020f40
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp + 0x188]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r12d, 1
test r14d, r14d
jns 0x140020f9a
lea r13, [0x1400bd360]
mov rdi, r13
lea r14d, [r12 + 3]
cmp qword [rdi], rbx
je 0x140020f68
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
add rdi, 0x18
sub r14, r12
jne 0x140020f5a
xor edx, edx
lea r8d, [r14 + 0x60]
mov rcx, r13
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006f800]
lea rcx, [0x1400b6050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x140020fb0
mov eax, dword [0x1400bd654]
add eax, r12d
lea r13, [0x1400bd360]
mov dword [0x1400bd654], eax
mov rcx, qword [rbp + 0x78]
lea r9, [rbp + 0xd20]
mov eax, ebx
mov edx, 0x2021
xchg dword [0x1400bd658], eax
mov eax, dword [rbp - 0x40]
mov dword [rbp + 0xd28], ecx
xor ecx, ecx
mov dword [rbp + 0xd58], eax
mov rax, qword [0x1400b6120]
mov dword [rbp + 0xd20], r12d
lea r8d, [rcx + 4]
mov dword [rbp + 0xd38], 0x9966f291
mov dword [rbp + 0xd30], r12d
mov dword [rbp + 0xd48], r12d
mov dword [rbp + 0xd40], r12d
mov dword [rbp + 0xd50], r12d
call qword [case.0x14006088e.0]
xor eax, eax
lock cmpxchg dword [0x1400bd658], r12d
jne 0x140021017
mov eax, dword [0x1400bd654]
test eax, eax
jle 0x140021080
sub eax, r12d
mov dword [0x1400bd654], eax
jne 0x140021080
mov rdi, r13
mov r14d, 4
cmp qword [rdi], rbx
je 0x140021050
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
add rdi, 0x18
sub r14, r12
jne 0x140021042
xor edx, edx
lea r8d, [r14 + 0x60]
mov rcx, r13
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov r8d, 0x170
lea rdx, [0x14006f800]
lea rcx, [0x1400b6050]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov eax, ebx
xchg dword [0x1400bd658], eax
mov rdx, qword [rbp + 0x68]
xor ecx, ecx
mov rax, qword [0x1400b61b0]
call qword [case.0x14006088e.0]
lea rcx, [rbp + 0x460]
call fcn.14000e780
cmp dword [rbp + 0x88], ebx
je 0x1400233ef
xor eax, eax
mov dword [rbp + 0x244], ebx
mov qword [rbp + 8], rax
mov edi, LoadRegTypeLib
mov qword [rbp + 0x10], rax
mov r14, rbx
mov qword [rbp + 0x118], rax
mov r12, rbx
mov qword [rbp + 0x120], rax
lea rax, [0x1400bc3b0]
mov qword [rbp + 0x3f8], rax
mov qword [rbp + 0x2a0], rdi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp - 0x10], rax
mov rdi, rax
test rax, rax
je 0x140023368
mov r8, qword [rbp + 0x2a0]
mov rcx, rax
mov rdx, qword [rbp + 0x3f8]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r13d, dword [rbp + 0x2a0]
mov r14, rdi
mov qword [rsp + 0x78], rdi
lea rax, [0x1400bc2f0]
mov edi, 8
mov qword [rbp + 0x400], rax
mov qword [rbp + 0x2a8], rdi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, edi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp + 0x30], rax
mov rdi, rax
test rax, rax
je 0x140023368
mov r8, qword [rbp + 0x2a8]
mov rcx, rax
mov rdx, qword [rbp + 0x400]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r12, rdi
mov qword [rbp - 0x70], rdi
mov rdi, qword [rbp + 0x2a8]
mov qword [rbp + 0x78], rdi
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x278], rax
mov ecx, 8
mov dword [rbp + 0xcc], ecx
lea r14d, [r13 + 4]
or r8d, 0xffffffff
cmp r14d, 4
mov eax, r8d
mov edx, ecx
cmovae eax, r14d
jb 0x140023363
mov ecx, eax
mov dword [rbp + 0xcc], eax
mov edx, eax
lea eax, [rax + 8]
mov edx, r8d
cmp eax, 8
cmovae edx, eax
jb 0x140023363
lea r12d, [rdi + 4]
mov eax, r8d
cmp r12d, 4
cmovae eax, r12d
cmovae ecx, eax
mov dword [rbp + 0xcc], ecx
jb 0x14002335f
lea eax, [rcx + rdx]
mov ecx, r8d
cmp eax, edx
cmovae ecx, eax
jb 0x14002335f
mov dword [rbp + SafeArrayGetDimc], 0xc
lea eax, [rcx + 0xc]
mov edx, r8d
cmp eax, ecx
cmovae edx, eax
jb 0x14002335f
mov dword [rbp + 0xc], edx
mov edi, edx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdx, rax
test rax, rax
je 0x14002335f
mov qword [rbp + 0x10], rax
mov r8d, ebx
mov dword [rbp + 8], ebx
mov dword [rbp + 0x1d8], 4
lea rcx, [rax + 4]
mov rdi, r15
cmp rcx, rax
mov r10d, 0xc0000095
cmovae rdi, rcx
sbb r9d, r9d
and r9d, r10d
cmp rcx, rax
jb 0x1400212ce
mov ecx, dword [rbp + 0xc]
add rcx, rax
add rax, 8
cmp rax, rcx
ja 0x14002335f
mov dword [rdx], 4
mov r11d, 1
mov eax, dword [rbp + 0x1d8]
mov dword [rdi], eax
mov r8d, dword [rbp + 8]
add r8d, r11d
mov dword [rbp + 8], r8d
jmp 0x1400212d4
mov r11d, 1
test r9d, r9d
js 0x14002335f
test r13d, r13d
je 0x1400213f8
cmp qword [rbp + 0x10], rbx
jne 0x140021337
mov edx, dword [rbp + 0xd0]
or eax, 0xffffffff
cmp r14d, 4
cmovae eax, r14d
cmovae edx, eax
mov dword [rbp + 0xd0], edx
jb 0x14002335f
mov ecx, dword [rbp + 0xc]
or edi, 0xffffffff
lea eax, [rcx + rdx]
cmp eax, ecx
cmovae edi, eax
sbb r14d, r14d
and r14d, r10d
mov dword [rbp + 0xc], edi
cmp eax, ecx
jb 0x140021401
add r8d, r11d
mov dword [rbp + 8], r8d
jmp 0x14002140a
mov rdi, qword [rbp + 0x10]
mov r10d, ebx
test r8d, r8d
je 0x1400213a2
mov r9d, dword [rbp + 0xd0]
mov ecx, dword [rdi]
or eax, 0xffffffff
add ecx, 4
mov r11, rdi
cmp ecx, 4
cmovae eax, ecx
cmovae r9d, eax
mov dword [rbp + 0xd0], r9d
jb 0x14002335f
mov rcx, rdi
mov edx, r9d
add rdx, rdi
mov rax, r15
cmp rdx, rdi
mov r11d, 1
cmovae rax, rdx
cmp rdx, rcx
mov rdi, rax
sbb r14d, r14d
and r14d, 0xc0000095
cmp rdx, rcx
jb 0x1400213fe
add r10d, r11d
cmp r10d, r8d
jb 0x14002134a
lea rax, [rdi + 4]
mov rcx, r15
cmp rax, rdi
cmovae rcx, rax
sbb r14d, r14d
and r14d, 0xc0000095
cmp rax, rdi
jb 0x1400213fe
mov edx, dword [rbp + 0xc]
lea rax, [r13 + 4]
add rdx, qword [rbp + 0x10]
add rax, rdi
mov r8, r13
cmp rax, rdx
ja 0x14002335f
mov rdx, qword [rbp - 0x10]
mov dword [rdi], r13d
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r8d, dword [rbp + 8]
mov r11d, 1
add r8d, r11d
mov dword [rbp + 8], r8d
jmp 0x1400213fe
mov r14d, 0xc000000d
mov edi, dword [rbp + 0xc]
test r14d, r14d
js 0x14002335f
mov r13, qword [rbp + 0x78]
test r13d, r13d
je 0x140021537
cmp qword [rbp + 0x10], rbx
jne 0x140021479
mov edx, dword [rbp + 0xd4]
or eax, 0xffffffff
cmp r12d, 4
cmovae eax, r12d
cmovae edx, eax
mov dword [rbp + 0xd4], edx
jb 0x14002335f
mov ecx, edi
lea eax, [rdi + rdx]
or edi, 0xffffffff
cmp eax, ecx
cmovae edi, eax
sbb r14d, r14d
and r14d, 0xc0000095
mov dword [rbp + 0xc], edi
cmp eax, ecx
jb 0x140021545
mov rax, qword [rbp + 0x278]
add r8d, r11d
mov dword [rbp + 8], r8d
mov qword [rbp + 0x2b0], rax
jmp 0x140021562
mov r9, qword [rbp + 0x10]
mov r11d, ebx
test r8d, r8d
je 0x1400214df
mov r10d, dword [rbp + 0xd4]
mov ecx, dword [r9]
or eax, 0xffffffff
add ecx, 4
mov r12, r9
cmp ecx, 4
cmovae eax, ecx
cmovae r10d, eax
mov dword [rbp + 0xd4], r10d
jb 0x14002335f
mov rcx, r9
mov edx, r10d
add rdx, r9
mov rax, r15
cmp rdx, r9
cmovae rax, rdx
cmp rdx, rcx
mov r9, rax
sbb r14d, r14d
and r14d, 0xc0000095
cmp rdx, rcx
jb 0x14002153f
inc r11d
cmp r11d, r8d
jb 0x14002148c
lea rax, [r9 + 4]
mov rcx, r15
cmp rax, r9
cmovae rcx, rax
sbb r14d, r14d
and r14d, 0xc0000095
cmp rax, r9
jb 0x14002153f
mov r8d, r13d
mov edx, edi
add rdx, qword [rbp + 0x10]
lea rax, [r8 + 4]
add rax, r9
cmp rax, rdx
ja 0x14002335f
mov rdx, qword [rbp + 0x30]
mov dword [r9], r13d
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r8d, dword [rbp + 8]
mov r11d, 1
mov edi, dword [rbp + 0xc]
add r8d, r11d
mov dword [rbp + 8], r8d
jmp 0x140021545
mov r14d, 0xc000000d
jmp 0x140021545
mov r11d, 1
test r14d, r14d
js 0x14002335f
mov rax, qword [rbp + 0x278]
mov qword [rbp + 0x2b0], rax
cmp qword [rbp + 0x10], rbx
jne 0x14002159a
mov dword [rbp + 0x174], SafeArrayGetDim
mov ecx, edi
lea eax, [rdi + 0xc]
or edi, 0xffffffff
cmp eax, ecx
cmovae edi, eax
sbb r10d, r10d
and r10d, 0xc0000095
mov dword [rbp + 0xc], edi
cmp eax, ecx
jb 0x14002165f
add r8d, r11d
mov dword [rbp + 8], r8d
jmp 0x140021668
mov r9, qword [rbp + 0x10]
mov r14d, ebx
test r8d, r8d
je 0x140021608
mov r11d, dword [rbp + 0x174]
mov ecx, dword [r9]
or eax, 0xffffffff
add ecx, 4
mov r12, r9
cmp ecx, 4
cmovae eax, ecx
cmovae r11d, eax
mov dword [rbp + 0x174], r11d
jb 0x14002335f
mov rcx, r9
mov edx, r11d
add rdx, r9
mov rax, r15
cmp rdx, r9
cmovae rax, rdx
cmp rdx, rcx
mov r9, rax
sbb r10d, r10d
and r10d, 0xc0000095
cmp rdx, rcx
jb 0x14002165f
mov r12d, 1
add r14d, r12d
cmp r14d, r8d
jb 0x1400215ad
jmp 0x14002160e
mov r12d, 1
lea rax, [r9 + 4]
mov rdx, r15
cmp rax, r9
cmovae rdx, rax
sbb r10d, r10d
and r10d, 0xc0000095
cmp rax, r9
jb 0x14002165f
mov ecx, edi
lea rax, [r9 + 0xc]
add rcx, qword [rbp + 0x10]
cmp rax, rcx
ja 0x14002335f
mov dword [r9], 8
movsd xmm0, qword [rbp + 0x2b0]
movsd qword [rdx], xmm0
mov r8d, dword [rbp + 8]
mov edi, dword [rbp + 0xc]
add r8d, r12d
mov dword [rbp + 8], r8d
test r10d, r10d
js 0x14002335f
mov dword [rbp + 0x3f0], SafeArrayGetDim
mov r10, rbx
mov qword [rbp + 0x68], rbx
mov r9d, ebx
mov dword [rbp - 0x58], ebx
mov qword [rbp + 0x190], rbx
mov r13, rbx
mov qword [rbp + 0x70], rbx
mov dword [rbp - 0x40], ebx
mov qword [rbp - 0x28], rbx
mov dword [rbp + 0x80], ebx
mov qword [rbp], rbx
mov qword [rsp + 0x68], rbx
mov dword [rbp + 0xe4], ebx
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x2b8], rax
lea eax, [rdi + 8]
or ecx, 0xffffffff
cmp eax, 8
mov r12d, 0xc0000095
cmovae ecx, eax
sbb edi, edi
and edi, r12d
mov dword [rbp + 0xd8], ecx
cmp eax, 8
jb 0x1400217c7
mov eax, ecx
add rax, 7
and eax, 0xfffffff8
cmp eax, ecx
jae 0x1400216f4
mov edi, r12d
jmp 0x1400217c7
mov dword [rbp + 0xd8], eax
mov edi, eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r14, rax
test rax, rax
jne 0x14002172b
mov edi, 0xc0000017
mov r9d, ebx
mov r10, rbx
jmp 0x1400217c3
mov eax, dword [rbp + 8]
mov rdx, r15
mov dword [r14], eax
lea rax, [r14 + 4]
cmp rax, r14
cmovae rdx, rax
sbb edi, edi
and edi, r12d
cmp rax, r14
jb 0x14002179c
mov eax, dword [rbp + 0xc]
mov rcx, r15
mov dword [rdx], eax
lea rax, [rdx + 4]
cmp rax, rdx
cmovae rcx, rax
sbb edi, edi
and edi, r12d
cmp rax, rdx
jb 0x14002179c
mov edx, dword [rbp + 0xd8]
mov rax, qword [rbp + 0x2b8]
mov qword [rdx + r14 - 8], rax
mov r8d, dword [rbp + 0xc]
mov rdx, qword [rbp + 0x10]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r9d, dword [rbp + 0xd8]
mov r10, r14
mov qword [rbp + 0x68], r14
mov r14, rbx
mov dword [rbp - 0x58], r9d
jmp 0x1400217a2
mov r10, rbx
mov r9d, ebx
test r14, r14
je 0x1400217c3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r9d, dword [rbp - 0x58]
mov r10, qword [rbp + 0x68]
mov r8d, dword [rbp + 8]
or edi, 0x10000000
jl 0x1400230a6
mov qword [rbp + 0x410], rbx
mov r12, rbx
mov qword [rbp + 0x418], rbx
mov qword [rbp + 0x420], rbx
mov qword [rbp + 0x428], rbx
mov qword [rbp + 0x228], rbx
mov qword [rbp + 0x408], rbx
test r10, r10
jne 0x14002180f
mov edi, 0xc000000d
jmp 0x140021fc5
mov r14d, r9d
mov qword [rbp + 0x78], r14
test r9d, r9d
je 0x140021f0b
lea rdi, [r14 + 8]
mov qword [rbp - 0x18], rdi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp + 0x30], rax
test rax, rax
je 0x140021f07
mov r10, qword [rbp + 0x68]
mov dl, bl
mov byte [rsp + 0x64], bl
mov rcx, rbx
test r14, r14
je 0x14002186f
mov edi, 1
xor dl, byte [rcx + r10]
add rcx, rdi
cmp rcx, r14
jb 0x14002185f
mov byte [rsp + 0x64], dl
mov r8, rax
mov dword [rbp - 4], ebx
or r11d, 0xffffffff
mov dword [rbp - 0x80], ebx
mov rax, r14
mov dword [rbp - 0x30], r11d
mov dword [rbp - 0x58], ebx
movabs rcx, 0xc81ecb17b1b54a58
mov qword [rbp + 0x910], rcx
mov edi, ebx
and eax, 7
je 0x140021991
mov dword [rbp - 0x80], ebx
mov r9d, ebx
mov dword [rbp - 0x58], ebx
mov ecx, ebx
mov dword [rbp - 0x78], ebx
test eax, eax
je 0x14002190e
mov r11d, 0x38
mov r13d, ebx
lea esi, [r11 - 0x37]
lea rdi, [r10 + 1]
mov qword [rbp - 0x10], rdi
movzx edi, byte [r10]
cmp ecx, 4
jge 0x1400218dd
lea ecx, [r11 - 0x20]
shl edi, cl
or r13d, edi
jmp 0x1400218e5
mov ecx, r11d
shl edi, cl
or r9d, edi
mov ecx, dword [rbp - 0x78]
sub r11d, 8
mov rdi, qword [rbp - 0x10]
add ecx, esi
mov dword [rbp - 0x78], ecx
mov r10, rdi
cmp ecx, eax
jl 0x1400218c1
mov esi, dword [rsp + 0x60]
mov dword [rbp - 0x58], r13d
mov r13, rbx
mov edi, dword [rbp - 0x58]
mov dword [rbp - 0x80], r9d
xor edi, 0xb17a307a
mov r11d, r9d
xor r11d, 0x42f6b18d
mov dword [rbp - 4], edi
mov dword [rbp - 0x30], r11d
mov ecx, ebx
test eax, eax
jle 0x14002195c
mov edx, 1
lea r9, [r8 + 1]
cmp ecx, 4
jge 0x140021941
rol edi, 8
mov byte [r8], dil
jmp 0x140021948
rol r11d, 8
mov byte [r8], r11b
add ecx, edx
mov r8, r9
cmp ecx, eax
jl 0x140021930
mov edi, dword [rbp - 4]
mov r11d, dword [rbp - 0x30]
mov dl, byte [rsp + 0x64]
add eax, 0xfffffffc
test eax, eax
jle 0x140021979
mov ecx, 4
sub ecx, eax
shl ecx, 3
shr r11d, cl
shl r11d, cl
mov dword [rbp - 0x30], r11d
jmp 0x140021991
mov dword [rbp - 0x30], ebx
mov r11d, ebx
test eax, eax
jns 0x140021991
neg eax
shl eax, 3
mov ecx, eax
shr edi, cl
shl edi, cl
mov dword [rbp - 4], edi
mov rax, r14
shr rax, 3
test rax, rax
je 0x140021ce5
mov edx, dword [rbp + 0x914]
lea r14, [r8 + 7]
movzx esi, word [rbp + 0x914]
lea rbx, [r10 + 2]
mov r13d, dword [rbp - 0x80]
mov r15, rax
mov r12d, dword [rbp - 0x58]
shr edx, 0x10
movzx eax, byte [rbx - 1]
movzx r10d, byte [rbx - 2]
movzx r9d, byte [rbx + 2]
shl r10d, 8
or r10d, eax
shl r9d, 8
movzx eax, byte [rbx]
lea rbx, [rbx + 8]
shl r10d, 8
or r10d, eax
movzx eax, byte [rbx - 7]
shl r10d, 8
or r10d, eax
movzx eax, byte [rbx - 5]
or r9d, eax
movzx eax, byte [rbx - 4]
shl r9d, 8
or r9d, eax
movzx eax, byte [rbx - 3]
shl r9d, 8
or r9d, eax
movzx eax, word [rbp + 0x912]
xor r11d, r9d
lea r8d, [r11 - 0x4a58]
xor r8d, r10d
xor r8d, edi
mov edi, dword [rbp + 0x914]
xor r8d, dword [rbp + 0x914]
mov ecx, r8d
xor ecx, edi
ror ecx, 0xf
imul ecx, eax
mov eax, r8d
ror eax, 7
add ecx, eax
xor r11d, ecx
mov eax, r11d
ror eax, 0xa
lea ecx, [r11 - 0x4e4ab5a8]
ror ecx, 9
imul ecx, esi
sub ecx, eax
xor r8d, ecx
mov ecx, r8d
mov eax, r8d
rol eax, 5
xor ecx, esi
rol ecx, 4
imul ecx, edx
add ecx, eax
mov eax, edi
xor r11d, ecx
mov ecx, r11d
xor ecx, 0xb1b54a58
sub eax, ecx
xor r8d, eax
movzx eax, word [rbp + 0x912]
lea ecx, [r8 - 0x4a58]
imul ecx, eax
mov eax, r8d
shr eax, 6
sub ecx, eax
xor r11d, ecx
mov eax, r11d
ror eax, 0xf
xor eax, esi
imul eax, eax, 0x4a58
xor r8d, eax
mov eax, r8d
not eax
ror eax, 3
add eax, edx
imul eax, esi
xor r11d, eax
mov eax, r11d
sub eax, edi
sub eax, 0x4a58
xor r8d, eax
mov ecx, r8d
mov eax, r8d
ror ecx, 0xa
movzx edi, word [rbp + 0x912]
xor eax, edx
imul eax, edi
xor ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
xor ecx, 0x4a58
ror eax, 3
rol ecx, 6
imul ecx, esi
xor ecx, eax
xor r8d, ecx
mov eax, r8d
ror eax, 0xf
sub eax, edx
imul eax, eax, 0x4a58
xor r11d, eax
mov eax, r11d
xor eax, edx
imul ecx, eax, 0x4a58
mov eax, r11d
shr eax, 1
xor ecx, eax
mov eax, r11d
xor r8d, ecx
sub eax, esi
rol eax, 3
imul ecx, eax, 0x4a58
mov eax, r11d
shr eax, 0xf
xor ecx, eax
xor r8d, ecx
mov ecx, r8d
mov eax, r8d
sub ecx, esi
shr eax, 0xd
imul ecx, edi
sub ecx, eax
xor r11d, ecx
mov ecx, 0xb1b54a58
sub ecx, r11d
mov eax, r11d
ror ecx, 9
imul ecx, esi
ror eax, 0xb
xor ecx, eax
xor r8d, ecx
movzx ecx, word [rbp + 0x912]
mov eax, r8d
sub eax, edx
add eax, 0x4e4ab5a8
xor r11d, eax
mov eax, r11d
mov edi, r11d
xor eax, ecx
ror edi, 7
imul ecx, eax, 0x4a58
sub ecx, edi
movzx edi, word [rbp + 0x912]
xor r8d, ecx
mov ecx, r8d
mov eax, r8d
xor ecx, edx
ror eax, 0x10
rol ecx, 4
imul ecx, edi
sub ecx, eax
xor r11d, ecx
mov ecx, 0xb1b54a58
sub ecx, r11d
mov eax, r11d
ror ecx, 0xa
imul ecx, esi
ror eax, 4
add ecx, eax
xor r8d, ecx
mov eax, r8d
lea ecx, [r8 + 0x4e4ab5a8]
ror ecx, 4
imul ecx, edx
ror eax, 9
xor ecx, eax
xor r11d, ecx
mov eax, r11d
xor eax, dword [rbp + 0x914]
rol eax, 8
imul ecx, eax, 0x4a58
mov eax, r11d
rol eax, 2
sub ecx, eax
xor r8d, ecx
mov ecx, dword [rbp + 0x914]
sub ecx, r8d
mov eax, r8d
ror eax, 0xc
ror ecx, 0xb
imul ecx, edi
sub ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
shr eax, 8
xor ecx, edi
imul ecx, esi
xor ecx, eax
xor r8d, ecx
mov eax, r8d
xor r8d, r12d
xor r13d, eax
mov dword [rbp - 4], r8d
xor r13d, r11d
mov r12d, r10d
xor r13d, dword [rbp + 0x914]
xor r13d, 0xb1b54a58
mov dword [rbp - 0x30], r13d
mov r13d, r9d
mov byte [r14 - 4], r8b
mov al, byte [rbp - 0x30]
ror dword [rbp - 4], 8
mov byte [r14], al
lea r14, [r14 + 8]
ror dword [rbp - 0x30], 8
mov al, byte [rbp - 4]
mov byte [r14 - 0xd], al
mov al, byte [rbp - 0x30]
ror dword [rbp - 4], 8
mov byte [r14 - 9], al
ror dword [rbp - 0x30], 8
mov al, byte [rbp - 4]
mov byte [r14 - 0xe], al
ror dword [rbp - 4], 8
mov al, byte [rbp - 0x30]
mov byte [r14 - 0xa], al
ror dword [rbp - 0x30], 8
mov al, byte [rbp - 4]
mov byte [r14 - 0xf], al
mov al, byte [rbp - 0x30]
mov byte [r14 - 0xb], al
mov edi, dword [rbp - 4]
mov r11d, dword [rbp - 0x30]
ror edi, 8
ror r11d, 8
mov dword [rbp - 4], edi
mov dword [rbp - 0x30], r11d
sub r15, 1
jne 0x1400219c4
mov dl, byte [rsp + 0x64]
xor ebx, ebx
mov esi, dword [rsp + 0x60]
or r15, 0xffffffffffffffff
mov r14, qword [rbp + 0x78]
mov r13d, ebx
mov r12d, ebx
mov rdi, qword [rbp + 0x30]
movzx eax, dl
mov qword [rdi + r14], rax
lea rax, [r14 + 8]
mov qword [rbp + 0x408], rax
mov qword [rbp + 0x228], rdi
lea rax, [0x1400bc3a0]
mov r14d, 8
mov qword [rbp + 0x410], rax
mov qword [rbp + 0x418], r14
lea rax, [0x1400bc300]
mov qword [rbp + 0x428], LoadRegTypeLib
mov qword [rbp + 0x420], rax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
lea r8d, [r14 + 0x28]
mov edx, r14d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r14, rax
test rax, rax
jne 0x140021d5e
mov edi, 0xc0000017
jmp 0x140021ef3
mov rax, qword [rbp - 0x18]
mov dword [r14], eax
mov eax, eax
mov qword [rbp + 0x30], rax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp + 0x30]
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x140021d92
mov edi, 0xc0000017
jmp 0x140021e64
mov qword [r14 + 8], rax
mov r8, qword [rbp + 0x30]
mov rdx, rdi
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov edi, LoadRegTypeLib
mov dword [r14 + 0x10], edi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edi, 8
mov edx, edi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140021d88
mov qword [r14 + 0x18], rax
lea rcx, [0x1400bc300]
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 [r14 + 0x20], edi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, edi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140021d88
mov qword [r14 + 0x28], rax
movsd xmm0, qword [0x1400bc3a0]
mov r12, r14
movsd qword [rax], xmm0
mov edi, ebx
mov r14, rbx
test r14, r14
je 0x140021ef3
mov rax, qword [r14 + 8]
mov qword [rbp - 0x10], rax
test rax, rax
je 0x140021e93
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp - 0x10]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 8], rbx
mov rax, qword [r14 + 0x18]
mov qword [rbp - 0x10], rax
test rax, rax
je 0x140021eb9
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp - 0x10]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 0x18], rbx
mov rax, qword [r14 + 0x28]
mov qword [rbp - 0x10], rax
test rax, rax
je 0x140021edf
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp - 0x10]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 0x28], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r8d, dword [rbp + 8]
test edi, edi
js 0x140021f10
mov qword [rbp + 0x190], r12
mov r12, rbx
jmp 0x140021f10
mov r8d, dword [rbp + 8]
mov edi, 0xc0000001
mov r14, qword [rbp + 0x228]
test r14, r14
je 0x140021f3b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r8d, dword [rbp + 8]
mov qword [rbp + 0x228], rbx
test r12, r12
je 0x140021fc5
mov r14, qword [r12 + 8]
test r14, r14
je 0x140021f67
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r12 + 8], rbx
mov r14, qword [r12 + 0x18]
test r14, r14
je 0x140021f8a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r12 + 0x18], rbx
mov r14, qword [r12 + 0x28]
test r14, r14
je 0x140021fad
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r12 + 0x28], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r8d, dword [rbp + 8]
or edi, 0x10000000
jl 0x1400230a6
mov r14, qword [rbp + 0x190]
or r11d, 0xffffffff
mov ecx, r11d
mov r12d, 0xc0000095
mov eax, dword [r14]
mov r10d, dword [r14 + 0x20]
add eax, 4
mov r9d, dword [r14 + 0x10]
cmp eax, 4
cmovae ecx, eax
sbb edi, edi
and edi, r12d
cmp eax, 4
jb 0x140022067
lea eax, [rcx + 4]
mov edx, r11d
cmp eax, ecx
cmovae edx, eax
sbb edi, edi
and edi, r12d
cmp eax, ecx
jb 0x140022067
lea eax, [rdx + r9]
mov ecx, r11d
cmp eax, edx
cmovae ecx, eax
sbb edi, edi
and edi, r12d
cmp eax, edx
jb 0x140022067
lea eax, [rcx + 4]
mov edx, r11d
cmp eax, ecx
cmovae edx, eax
sbb edi, edi
and edi, r12d
cmp eax, ecx
jb 0x140022067
mov r9d, dword [rbp + 0xdc]
lea ecx, [rdx + r10]
cmp ecx, edx
mov eax, r11d
cmovae eax, ecx
sbb edi, edi
and edi, r12d
cmp ecx, edx
cmovae r9d, eax
mov dword [rbp + 0xdc], r9d
jmp 0x14002206e
mov r9d, dword [rbp + 0xdc]
test edi, edi
js 0x1400221d1
mov edi, r9d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r12, rax
test rax, rax
jne 0x1400220a2
mov edi, 0xc0000017
jmp 0x1400221cd
mov eax, dword [r14]
mov rcx, r15
mov dword [r12], eax
lea rax, [r12 + 4]
cmp rax, r12
cmovae rcx, rax
sbb edi, edi
and edi, 0xc0000095
mov qword [rbp - 0x10], rcx
cmp rax, r12
jb 0x1400221b4
mov r8d, dword [r14]
mov rdx, qword [r14 + 8]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov rdx, qword [rbp - 0x10]
mov r8, r15
mov ecx, dword [r14]
mov r9d, 0xc0000095
add rcx, rdx
cmp rcx, rdx
cmovae r8, rcx
sbb edi, edi
and edi, r9d
cmp rcx, rdx
jb 0x1400221b4
mov eax, dword [r14 + 0x10]
mov rcx, r15
mov dword [r8], eax
lea rax, [r8 + 4]
cmp rax, r8
cmovae rcx, rax
sbb edi, edi
and edi, r9d
mov qword [rbp - 0x10], rcx
cmp rax, r8
jb 0x1400221b4
mov r8d, dword [r14 + 0x10]
mov rdx, qword [r14 + 0x18]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r8, qword [rbp - 0x10]
mov rdx, r15
mov ecx, dword [r14 + 0x10]
mov r9d, 0xc0000095
add rcx, r8
cmp rcx, r8
cmovae rdx, rcx
sbb edi, edi
and edi, r9d
cmp rcx, r8
jb 0x1400221b4
mov eax, dword [r14 + 0x20]
mov rcx, r15
mov dword [rdx], eax
lea rax, [rdx + 4]
cmp rax, rdx
cmovae rcx, rax
sbb edi, edi
and edi, r9d
mov qword [rbp - 0x10], rcx
cmp rax, rdx
jb 0x1400221b4
mov r8d, dword [r14 + 0x20]
mov rdx, qword [r14 + 0x28]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov rdx, qword [rbp - 0x10]
mov ecx, dword [r14 + 0x20]
add rcx, rdx
cmp rcx, rdx
sbb edi, edi
and edi, 0xc0000095
cmp rcx, rdx
jb 0x1400221b4
mov eax, dword [rbp + 0xdc]
mov qword [rbp + 0x70], r12
mov r12, rbx
mov dword [rbp - 0x40], eax
test r12, r12
je 0x1400221cd
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r8d, dword [rbp + 8]
or edi, 0x10000000
jl 0x1400230a6
mov qword [rbp + 0x430], rbx
mov r10d, ebx
mov dword [rbp + 0x1e0], ebx
mov r11d, ebx
mov qword [rbp + 0x438], rbx
mov dword [rbp + 0x1e4], ebx
mov dword [rbp + 0x3e0], 0x1c
mov dword [rbp + 0x334], SafeArrayCreateVectorEx
mov dword [rbp + 0x330], SafeArrayCreateVectorEx
cmp qword [rbp + 0x10], rbx
jne 0x14002222b
mov edi, 0xc000000d
jmp 0x1400223d3
mov r12d, 1
cmp r8d, r12d
jbe 0x140022221
mov rdx, qword [rbp + 0x10]
mov r14d, ebx
lea rax, [rdx + 4]
mov r9, r15
cmp rax, rdx
cmovae r9, rax
sbb edi, edi
and edi, 0xc0000095
cmp rax, rdx
jb 0x1400222b5
mov ecx, dword [rdx]
mov rdx, r15
add rcx, r9
cmp rcx, r9
cmovae rdx, rcx
sbb edi, edi
and edi, 0xc0000095
cmp rcx, r9
jb 0x1400222b5
add r14d, r12d
cmp r14d, r12d
jb 0x14002223d
mov r9d, dword [rdx]
lea rax, [rdx + 4]
cmp rax, rdx
mov rcx, r15
cmovae rcx, rax
sbb edi, edi
and edi, 0xc0000095
cmp rax, rdx
jb 0x1400222b5
test r9d, r9d
mov dword [rbp + 0x1e0], r9d
mov rax, rbx
mov r10d, r9d
cmovne rax, rcx
mov qword [rbp + 0x430], rax
test edi, edi
js 0x1400230a6
cmp r8d, 2
jbe 0x140022221
mov rdx, qword [rbp + 0x10]
mov r9d, ebx
lea rax, [rdx + 4]
mov r8, r15
cmp rax, rdx
cmovae r8, rax
sbb edi, edi
and edi, 0xc0000095
cmp rax, rdx
jb 0x14002234c
mov ecx, dword [rdx]
mov rdx, r15
add rcx, r8
cmp rcx, r8
cmovae rdx, rcx
sbb edi, edi
and edi, 0xc0000095
cmp rcx, r8
jb 0x14002234c
add r9d, r12d
cmp r9d, 2
jb 0x1400222ce
mov r8d, dword [rdx]
lea rax, [rdx + 4]
cmp rax, rdx
mov rcx, r15
mov r12d, 0xc0000095
cmovae rcx, rax
sbb edi, edi
and edi, r12d
cmp rax, rdx
jb 0x140022352
test r8d, r8d
mov dword [rbp + 0x1e4], r8d
mov rax, rbx
mov r11d, r8d
cmovne rax, rcx
mov qword [rbp + 0x438], rax
jmp 0x140022352
mov r12d, 0xc0000095
test edi, edi
js 0x1400230a6
lea eax, [r10 + 0x30]
or edx, 0xffffffff
cmp eax, 0x30
mov ecx, edx
cmovae ecx, eax
sbb edi, edi
and edi, r12d
cmp eax, 0x30
jb 0x1400223ad
lea eax, [rcx + 4]
mov r8d, edx
cmp eax, ecx
cmovae r8d, eax
sbb edi, edi
and edi, r12d
cmp eax, ecx
jb 0x1400223ad
lea ecx, [r8 + r11]
mov eax, edx
mov edx, dword [rbp + 0x148]
cmp ecx, r8d
cmovae eax, ecx
sbb edi, edi
and edi, r12d
cmp ecx, r8d
cmovae edx, eax
mov dword [rbp + 0x148], edx
jmp 0x1400223b3
mov edx, dword [rbp + 0x148]
test edi, edi
js 0x1400230a6
cmp edx, 0x400000
jbe 0x1400223cd
mov edi, 0x8000ffff
jmp 0x1400230a6
mov dword [rbp + 0x80], edx
test edi, edi
js 0x1400230a6
mov edi, dword [rbp + 0x80]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r14, rax
test rax, rax
jne 0x14002240a
mov edi, 0xd0000017
jmp 0x1400230a6
mov qword [rbp - 0x28], r14
mov r12, qword [rbp + 0x70]
test r12, r12
jne 0x140022421
mov edi, 0x80070057
jmp 0x1400230a6
mov eax, dword [rbp - 0x40]
lea r8, [rbp + 0x440]
mov dword [rbp + 0x498], eax
lea rdx, [0x140086738]
mov eax, dword [rbp + 0x80]
mov ecx, 1
mov dword [rbp + 0x49c], eax
mov qword [rbp + 0x488], r12
mov qword [rbp + 0x490], r14
mov dword [rbp + 0x4a0], ebx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
jne 0x14002248c
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
test edi, edi
js 0x140022484
mov edi, 0x80004005
mov edx, dword [rbp + 0x80]
jmp 0x1400224d8
mov rcx, qword [rbp + 0x440]
lea rdx, str.NtQuerySystemInformation
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140022467
xor r9d, r9d
lea rdx, [rbp + 0x488]
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call qword [case.0x14006088e.0]
mov edx, dword [rbp + 0x80]
mov edi, eax
or edi, 0x10000000
cmovge edx, dword [rbp + 0x49c]
mov dword [rbp + 0x80], edx
cmp edi, 0xd0000023
jne 0x1400224ea
mov edi, 0x8007007a
jmp 0x1400230a6
test edi, edi
js 0x1400230a6
mov qword [rbp + 0x30], rbx
cmp edx, 4
jae 0x140022505
mov edi, 0xc000003e
jmp 0x1400228d0
mov r11d, dword [r14]
lea rax, [r14 + 4]
cmp rax, r14
mov dword [rsp + 0x70], r11d
mov r12, r15
mov r10d, 0xc0000095
cmovae r12, rax
sbb edi, edi
and edi, r10d
cmp rax, r14
jb 0x1400228d0
lea eax, [rdx - 4]
cmp eax, r11d
jb 0x1400224fb
lea rcx, [r12 + r11]
mov r9, r15
cmp rcx, r12
cmovae r9, rcx
sbb edi, edi
and edi, r10d
cmp rcx, r12
jb 0x1400228d0
lea eax, [r11 + 4]
or ecx, 0xffffffff
cmp eax, 4
cmovae ecx, eax
sbb edi, edi
and edi, r10d
cmp eax, 4
jb 0x1400228d0
mov eax, edx
sub eax, ecx
cmp eax, 4
jb 0x1400224fb
mov r14d, dword [r9]
lea rax, [r9 + 4]
cmp rax, r9
mov dword [rbp - 0x78], r14d
mov r8, r15
cmovae r8, rax
sbb edi, edi
and edi, r10d
mov qword [rbp - 0x10], r8
cmp rax, r9
jb 0x1400228d0
lea eax, [rcx + 4]
or r9d, 0xffffffff
cmp eax, ecx
cmovae r9d, eax
sbb edi, edi
and edi, r10d
cmp eax, ecx
jb 0x1400228d0
mov eax, edx
sub eax, r9d
cmp eax, r14d
jb 0x1400224fb
lea rcx, [r8 + r14]
mov r10, r15
cmp rcx, r8
cmovae r10, rcx
sbb edi, edi
and edi, 0xc0000095
cmp rcx, r8
jb 0x1400228d0
lea eax, [r14 + r9]
or r8d, 0xffffffff
cmp eax, r9d
cmovae r8d, eax
sbb edi, edi
and edi, 0xc0000095
cmp eax, r9d
jb 0x1400228d0
mov eax, edx
sub eax, r8d
cmp eax, 4
jb 0x1400224fb
mov r9d, dword [r10]
lea rax, [r10 + 4]
cmp rax, r10
mov dword [rbp - 0x40], r9d
mov rcx, r15
cmovae rcx, rax
sbb edi, edi
and edi, 0xc0000095
mov qword [rbp + 0x78], rcx
cmp rax, r10
jb 0x1400228d0
lea eax, [r8 + 4]
or ecx, 0xffffffff
cmp eax, r8d
mov r10d, 0xc0000095
cmovae ecx, eax
sbb edi, edi
and edi, r10d
cmp eax, r8d
jb 0x1400228d0
mov eax, edx
sub eax, ecx
cmp eax, r9d
jb 0x1400224fb
lea eax, [r9 + rcx]
or r8d, 0xffffffff
cmp eax, ecx
cmovae r8d, eax
sbb edi, edi
and edi, r10d
cmp eax, ecx
jb 0x1400228d0
cmp edx, r8d
jne 0x1400224fb
lea ecx, [r9 + r14]
mov eax, edx
add ecx, r11d
add rcx, 0xc
cmp rcx, rax
jne 0x1400224fb
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, 0x30
mov rcx, rax
lea r13d, [r8 - 0x28]
mov edx, r13d
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r14, rax
test rax, rax
jne 0x1400226d3
mov edi, 0xc0000017
jmp 0x14002283a
test r12, r12
je 0x140022719
mov eax, dword [rsp + 0x70]
mov dword [r14], eax
mov edi, eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, r13d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x140022705
mov edi, 0xc0000017
jmp 0x1400227be
mov qword [r14 + 8], rax
mov r8, rdi
mov rdx, r12
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x14002271f
mov dword [rax], ebx
mov qword [rax + 8], rbx
mov rdi, qword [rbp - 0x10]
test rdi, rdi
je 0x140022760
mov eax, dword [rbp - 0x78]
mov dword [r14 + 0x10], eax
mov r12d, eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, r12d
mov edx, r13d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1400226fb
mov qword [r14 + 0x18], rax
mov r8d, r12d
mov rdx, rdi
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x140022768
mov dword [r14 + 0x10], ebx
mov qword [r14 + 0x18], rbx
mov rdi, qword [rbp + 0x78]
test rdi, rdi
je 0x1400227ad
mov eax, dword [rbp - 0x40]
mov dword [r14 + 0x20], eax
mov r12d, eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, r12d
mov edx, r13d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1400226fb
mov qword [r14 + 0x28], rax
mov r8d, r12d
mov rdx, rdi
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
jmp 0x1400227b5
mov dword [r14 + 0x20], ebx
mov qword [r14 + 0x28], rbx
mov qword [rbp + 0x30], r14
mov edi, ebx
mov r14, rbx
test r14, r14
je 0x14002283a
mov r12, qword [r14 + 8]
test r12, r12
je 0x1400227e4
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 8], rbx
mov r12, qword [r14 + 0x18]
test r12, r12
je 0x140022805
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 0x18], rbx
mov r12, qword [r14 + 0x28]
test r12, r12
je 0x140022826
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 0x28], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r13, qword [rbp + 0x30]
test edi, edi
mov r14, rbx
cmovs r14, qword [rbp + 0x30]
cmovs r13, rbx
mov qword [rbp], r13
test r14, r14
je 0x1400228d0
mov r12, qword [r14 + 8]
test r12, r12
je 0x140022876
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 8], rbx
mov r12, qword [r14 + 0x18]
test r12, r12
je 0x140022897
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 0x18], rbx
mov r12, qword [r14 + 0x28]
test r12, r12
je 0x1400228b8
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 0x28], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp], r13
or edi, 0x10000000
jl 0x1400230a6
mov qword [rbp + 0x138], rbx
mov r14, rbx
mov qword [rbp + 0x2c0], rbx
test r13, r13
jne 0x1400228fc
mov edi, 0xd000000d
jmp 0x1400230a6
mov rdi, qword [r13 + 8]
mov qword [rbp + 0x30], rdi
test rdi, rdi
je 0x1400228f2
cmp dword [r13], ebx
je 0x1400228f2
mov r12d, dword [r13]
mov dword [rbp - 0x78], ebx
test r12, r12
je 0x140022e65
add r12, 0xfffffffffffffff8
mov qword [rbp + 0x78], r12
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp + 0x60], rax
mov r9, rax
test rax, rax
je 0x140022e5e
mov r14, rdi
mov byte [rsp + 0x64], bl
mov rdi, r12
mov dword [rbp - 0x1c], ebx
mov dword [rbp - 0x80], ebx
movabs rax, 0x7f1137fab69605e
mov qword [rbp + 0x930], rax
mov dl, bl
mov r10, r9
mov r11d, ebx
mov r8d, ebx
and edi, 7
je 0x140022a62
or dword [rbp - 0x44], 0xffffffff
mov ecx, ebx
mov dword [rbp - 0x58], ebx
test edi, edi
je 0x1400229df
mov esi, 0x38
lea r13d, [rsi - 0x37]
lea rax, [r14 + 1]
mov qword [rbp - 0x10], rax
movzx eax, byte [r14]
cmp r8d, 4
jge 0x1400229b5
lea ecx, [rsi - 0x20]
shl eax, cl
mov ecx, dword [rbp - 0x58]
or r11d, eax
jmp 0x1400229c1
mov ecx, esi
shl eax, cl
mov ecx, dword [rbp - 0x58]
or ecx, eax
mov dword [rbp - 0x58], ecx
mov rax, qword [rbp - 0x10]
add r8d, r13d
sub esi, 8
mov r14, rax
cmp r8d, edi
jl 0x140022996
mov esi, dword [rsp + 0x60]
mov r13, qword [rbp]
mov dword [rbp - 0x80], r11d
xor r11d, 0x92f65a5
mov r8d, ecx
xor r8d, 0x699a899c
mov dword [rbp - 0x1c], r11d
mov dword [rbp - 0x44], r8d
mov eax, ebx
test edi, edi
jle 0x140022a28
lea rcx, [r10 + 1]
cmp eax, 4
jge 0x140022a10
rol r11d, 8
mov byte [r10], r11b
jmp 0x140022a17
rol r8d, 8
mov byte [r10], r8b
inc eax
mov r10, rcx
cmp eax, edi
jl 0x1400229fe
mov r11d, dword [rbp - 0x1c]
mov r8d, dword [rbp - 0x44]
lea eax, [rdi - 4]
test eax, eax
jle 0x140022a45
mov ecx, 4
sub ecx, eax
shl ecx, 3
shr r8d, cl
shl r8d, cl
mov dword [rbp - 0x44], r8d
jmp 0x140022a69
mov dword [rbp - 0x44], ebx
mov r8d, ebx
test eax, eax
jns 0x140022a69
neg eax
shl eax, 3
mov ecx, eax
shr r11d, cl
shl r11d, cl
mov dword [rbp - 0x1c], r11d
jmp 0x140022a69
or dword [rbp - 0x58], 0xffffffff
mov dword [rbp - 0x44], ebx
mov rax, r12
shr rax, 3
mov qword [rbp - 0x10], rax
test rax, rax
je 0x140022dc5
mov ecx, dword [rbp + 0x934]
lea r13, [r14 + 2]
mov r15d, dword [rbp - 0x58]
lea rbx, [r10 + 7]
mov edx, dword [rbp - 0x80]
mov eax, ecx
mov r12, qword [rbp - 0x10]
mov r14d, ecx
shr eax, 0x10
mov dword [rbp - 0x50], eax
movzx eax, word [rbp + 0x932]
mov dword [rsp + 0x70], eax
movzx esi, cx
movzx eax, byte [r13 - 1]
movzx r10d, byte [r13 - 2]
movzx r9d, byte [r13 + 2]
shl r10d, 8
or r10d, eax
shl r9d, 8
movzx eax, byte [r13]
lea r13, [r13 + 8]
shl r10d, 8
or r10d, eax
movzx eax, byte [r13 - 7]
shl r10d, 8
or r10d, eax
movzx eax, byte [r13 - 5]
or r9d, eax
xor r11d, r10d
movzx eax, byte [r13 - 4]
shl r9d, 8
or r9d, eax
movzx eax, byte [r13 - 3]
shl r9d, 8
or r9d, eax
mov edi, r9d
xor edi, r8d
movzx r8d, word [rbp + 0x932]
xor edi, r14d
xor edi, r11d
xor edi, 0xab69605e
mov eax, edi
rol eax, 0xa
lea ecx, [rdi + 0x54969fa2]
rol ecx, 5
imul ecx, esi
add ecx, eax
xor r11d, ecx
mov eax, r11d
rol eax, 2
lea ecx, [r11 + r14]
ror ecx, 9
imul ecx, r8d
sub ecx, eax
xor edi, ecx
mov eax, edi
sub eax, esi
imul ecx, eax, 0x605e
mov eax, edi
shr eax, 0xd
sub ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
xor ecx, r8d
rol eax, 2
mov r8d, dword [rbp - 0x50]
rol ecx, 6
imul ecx, r8d
sub ecx, eax
mov eax, r14d
xor edi, ecx
mov ecx, edi
xor ecx, 0xab69605e
sub eax, ecx
xor r11d, eax
mov eax, r11d
mov ecx, r11d
xor eax, esi
ror ecx, 6
imul eax, dword [rsp + 0x70]
xor ecx, eax
xor edi, ecx
lea eax, [rdi + r14]
ror eax, 0xf
imul ecx, eax, 0x605e
mov eax, edi
rol eax, 2
add ecx, eax
xor r11d, ecx
mov eax, r11d
lea ecx, [r11 + 0x54969fa2]
ror ecx, 0xe
imul ecx, r8d
rol eax, 8
sub ecx, eax
xor edi, ecx
mov ecx, edi
mov eax, edi
ror eax, 0xa
xor ecx, 0xab69605e
ror ecx, 0xc
imul ecx, esi
xor ecx, eax
movzx eax, word [rbp + 0x932]
xor r11d, ecx
mov ecx, r11d
xor ecx, r8d
imul ecx, eax
mov eax, r11d
shr eax, 0xa
xor ecx, eax
xor edi, ecx
mov eax, edi
not eax
ror eax, 5
add eax, 0x605e
imul eax, r8d
xor r11d, eax
mov r8d, r11d
sub r8d, dword [rbp - 0x50]
xor r8d, edi
xor r8d, 0xab69605e
mov ecx, r8d
mov eax, r8d
xor ecx, dword [rbp - 0x50]
shr eax, 2
rol ecx, 2
imul ecx, esi
add ecx, eax
movzx eax, word [rbp + 0x932]
xor r11d, ecx
mov ecx, r11d
sub ecx, r14d
ror ecx, 6
imul ecx, eax
mov eax, r11d
rol eax, 7
add ecx, eax
xor r8d, ecx
mov eax, r8d
mov edi, r8d
xor eax, esi
ror edi, 9
imul ecx, eax, 0x605e
movzx eax, word [rbp + 0x932]
add edi, ecx
xor r11d, edi
mov ecx, r11d
xor ecx, eax
mov eax, r11d
rol eax, 7
rol ecx, 5
imul ecx, dword [rbp - 0x50]
add ecx, eax
xor r8d, ecx
mov edi, r8d
xor edi, r11d
movzx r11d, word [rbp + 0x932]
xor edi, r14d
xor edi, 0xab69605e
mov eax, edi
ror eax, 3
sub eax, r11d
imul eax, esi
xor r8d, eax
mov eax, r8d
sub eax, r14d
ror eax, 1
imul ecx, eax, 0x605e
mov eax, r8d
ror eax, 6
sub ecx, eax
xor edi, ecx
lea ecx, [rdi - 0x54969fa2]
rol ecx, 3
mov eax, edi
imul ecx, dword [rbp - 0x50]
rol eax, 0xe
add ecx, eax
xor r8d, ecx
mov eax, r8d
ror eax, 0xe
lea ecx, [r8 - 0x54969fa2]
rol ecx, 0xf
imul ecx, esi
sub ecx, eax
xor edi, ecx
mov ecx, edi
mov eax, edi
shr eax, 3
xor ecx, 0x605e
imul ecx, r11d
xor ecx, eax
xor r8d, ecx
mov eax, r8d
xor eax, r14d
rol eax, 4
imul ecx, eax, 0x605e
mov eax, r8d
rol eax, 2
xor r8d, r15d
mov dword [rbp - 0x44], r8d
mov r15d, r9d
xor ecx, eax
xor ecx, edx
mov edx, r10d
xor edi, ecx
mov ecx, 1
mov dword [rbp - 0x1c], edi
mov byte [rbx - 4], dil
mov al, byte [rbp - 0x44]
ror dword [rbp - 0x1c], 8
mov byte [rbx], al
lea rbx, [rbx + 8]
ror dword [rbp - 0x44], 8
mov al, byte [rbp - 0x1c]
mov byte [rbx - 0xd], al
mov al, byte [rbp - 0x44]
ror dword [rbp - 0x1c], 8
mov byte [rbx - 9], al
ror dword [rbp - 0x44], 8
mov al, byte [rbp - 0x1c]
mov byte [rbx - 0xe], al
ror dword [rbp - 0x1c], 8
mov al, byte [rbp - 0x44]
mov byte [rbx - 0xa], al
ror dword [rbp - 0x44], 8
mov al, byte [rbp - 0x1c]
mov byte [rbx - 0xf], al
mov al, byte [rbp - 0x44]
mov byte [rbx - 0xb], al
mov r11d, dword [rbp - 0x1c]
mov r8d, dword [rbp - 0x44]
ror r11d, 8
ror r8d, 8
mov dword [rbp - 0x1c], r11d
mov dword [rbp - 0x44], r8d
sub r12, rcx
jne 0x140022aaf
mov dl, byte [rsp + 0x64]
xor ebx, ebx
mov esi, dword [rsp + 0x60]
or r15, 0xffffffffffffffff
mov r13, qword [rbp]
mov r12, qword [rbp + 0x78]
mov r9, qword [rbp + 0x60]
jmp 0x140022dca
mov ecx, 1
mov rax, rbx
test r12, r12
je 0x140022dde
xor dl, byte [rax + r9]
add rax, rcx
cmp rax, r12
jb 0x140022dd2
mov rcx, qword [rbp + 0x30]
movzx eax, dl
cmp rax, qword [r12 + rcx]
je 0x140022df9
mov r14, qword [rbp + 0x138]
mov edi, 0xc004d501
jmp 0x140022e14
mov edi, dword [rbp - 0x78]
mov r14, r9
mov qword [rbp + 0x138], r9
mov r9, rbx
mov qword [rbp + 0x60], rbx
mov qword [rbp + 0x2c0], r12
test r9, r9
je 0x140022e35
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp + 0x60]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r14, qword [rbp + 0x138]
test edi, edi
js 0x140022e65
mov ecx, dword [rbp + 0x2c0]
mov r12, r14
mov qword [rsp + 0x68], r14
mov edi, 0x10000000
mov dword [rbp + 0xe4], ecx
mov r14, rbx
mov qword [rbp + 0x138], rbx
jmp 0x140022e73
mov r14, qword [rbp + 0x138]
mov ecx, dword [rbp + 0xe4]
mov edi, 0xd0000001
mov r12, rbx
test r14, r14
je 0x140022e99
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [rbp + 0xe4]
mov qword [rbp + 0x138], rbx
test edi, edi
js 0x1400230a6
cmp ecx, 4
jb 0x14002309d
mov eax, dword [r12]
mov rdx, r15
mov dword [rsp + 0x70], eax
mov r8d, 0xc0000095
lea rax, [r12 + 4]
cmp rax, r12
cmovae rdx, rax
sbb edi, edi
and edi, r8d
cmp rax, r12
jb 0x1400230a2
lea eax, [rcx - 4]
cmp eax, 4
jb 0x14002309d
mov r12d, dword [rdx]
lea rax, [rdx + 4]
cmp rax, rdx
mov r14, r15
cmovae r14, rax
sbb edi, edi
and edi, r8d
cmp rax, rdx
jb 0x1400230a2
lea eax, [rcx - 8]
cmp eax, r12d
jb 0x14002309d
lea eax, [r12 + 8]
cmp eax, 8
sbb edi, edi
and edi, r8d
cmp eax, 8
jb 0x1400230a2
mov rdx, qword [rsp + 0x68]
lea r9, [r14 + r12]
mov r10d, r12d
lea rax, [rcx + rdx]
cmp rax, r9
jb 0x14002309d
sub rcx, r14
sub rcx, r12
add rcx, rdx
cmp rcx, 8
jae 0x14002309d
mov qword [rbp + 0x30], rbx
mov rax, rbx
mov dword [rbp - 0x78], ebx
mov edi, ebx
mov r11d, ebx
test r14, r14
je 0x140023027
cmp r9, r14
mov r8, r15
mov rdx, r14
cmovae r8, r9
sbb edi, edi
and edi, 0xc0000095
cmp r9, r14
jb 0x14002308d
cmp r14, r8
jae 0x140023022
mov r9d, dword [rbp + 0x250]
lea rax, [rdx + 4]
mov rcx, r15
cmp rax, rdx
cmovae rcx, rax
sbb edi, edi
and edi, 0xc0000095
cmp rax, rdx
jb 0x14002308d
cmp rcx, r8
ja 0x140023053
mov ecx, dword [rdx]
or eax, 0xffffffff
add ecx, 4
cmp ecx, 4
cmovae eax, ecx
sbb edi, edi
and edi, 0xc0000095
cmp ecx, 4
cmovae r9d, eax
mov dword [rbp + 0x250], r9d
jb 0x14002308d
mov ecx, r9d
mov rax, r15
add rcx, rdx
cmp rcx, rdx
cmovae rax, rcx
sbb edi, edi
and edi, 0xc0000095
cmp rcx, rdx
jb 0x14002308d
cmp rax, r8
ja 0x140023053
inc r11d
mov rdx, rax
mov dword [rbp - 0x78], r11d
cmp rax, r8
jb 0x140022f94
mov rax, rbx
cmp rdx, r8
jne 0x140023053
test r12d, r12d
je 0x14002305f
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp + 0x30], rax
test rax, rax
jne 0x14002305a
mov edi, 0xc0000017
jmp 0x14002308d
mov edi, 0xc000000d
jmp 0x1400230a2
mov edi, ebx
mov r10, r12
test r14, r14
je 0x140023076
mov r8, r10
mov rdx, r14
mov rcx, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov rax, qword [rbp + 0x30]
mov qword [rbp + 0x120], rax
mov eax, dword [rbp - 0x78]
mov dword [rbp + 0x118], eax
mov dword [rbp + 0x11c], r12d
test edi, edi
js 0x1400230a2
mov eax, dword [rsp + 0x70]
cmp eax, dword [rbp + 0x118]
je 0x1400230a2
mov edi, 0xc000003e
bts edi, 0x1c
mov r14, qword [rbp + 0x68]
test r14, r14
je 0x1400230c3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r14, qword [rbp + 0x190]
test r14, r14
je 0x14002314d
mov r12, qword [r14 + 8]
test r12, r12
je 0x1400230f0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 8], rbx
mov r12, qword [r14 + 0x18]
test r12, r12
je 0x140023111
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 0x18], rbx
mov r12, qword [r14 + 0x28]
test r12, r12
je 0x140023132
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r14 + 0x28], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0x190], rbx
mov r14, qword [rbp + 0x70]
test r14, r14
je 0x14002316a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r14, qword [rbp - 0x28]
test r14, r14
je 0x140023187
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r13, r13
je 0x140023203
mov r14, qword [r13 + 8]
test r14, r14
je 0x1400231ad
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 8], rbx
mov r14, qword [r13 + 0x18]
test r14, r14
je 0x1400231ce
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x18], rbx
mov r14, qword [r13 + 0x28]
test r14, r14
je 0x1400231ef
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x28], rbx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r14, qword [rsp + 0x68]
test r14, r14
je 0x140023221
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test edi, edi
js 0x14002335f
mov r10d, 1
cmp dword [rbp + 0x118], r10d
jb 0x14002335f
mov rdi, qword [rbp + 0x120]
test rdi, rdi
je 0x14002335f
cmp dword [rbp + 0x118], ebx
jbe 0x14002335f
mov ecx, dword [rdi]
lea rax, [rdi + 4]
cmp rax, rdi
mov rdx, r15
mov r11d, 0xc0000095
cmovae rdx, rax
sbb r8d, r8d
and r8d, r11d
cmp rax, rdi
jb 0x140023291
test ecx, ecx
mov dword [rbp + 0x248], ecx
mov rax, rbx
cmovne rax, rdx
mov qword [rbp + 0x448], rax
jmp 0x14002329e
mov ecx, dword [rbp + 0x248]
mov rax, qword [rbp + 0x448]
test r8d, r8d
js 0x14002335f
cmp ecx, 4
jne 0x14002335f
mov eax, dword [rax]
mov dword [rbp + 0x244], eax
test eax, eax
js 0x14002335f
cmp dword [rbp + 0x118], r10d
jbe 0x14002335f
mov rdx, qword [rbp + 0x120]
mov r9d, ebx
lea rax, [rdx + 4]
mov r8, r15
cmp rax, rdx
cmovae r8, rax
sbb edi, edi
and edi, r11d
cmp rax, rdx
jb 0x14002333f
mov ecx, dword [rdx]
mov rdx, r15
add rcx, r8
cmp rcx, r8
cmovae rdx, rcx
sbb edi, edi
and edi, r11d
cmp rcx, r8
jb 0x14002333f
add r9d, r10d
cmp r9d, r10d
jb 0x1400232d7
mov ecx, dword [rdx]
lea rax, [rdx + 4]
cmp rax, rdx
cmovae r15, rax
sbb edi, edi
and edi, r11d
cmp rax, rdx
jb 0x14002333f
test ecx, ecx
mov dword [rbp + 0xe8], ecx
mov rax, rbx
cmovne rax, r15
mov qword [rbp + 0x450], rax
jmp 0x14002334c
mov ecx, dword [rbp + 0xe8]
mov rax, qword [rbp + 0x450]
test edi, edi
js 0x14002335f
cmp ecx, 8
jne 0x14002335f
mov rax, qword [rax]
mov qword [rbp + 0x4a8], rax
mov r12, qword [rbp - 0x70]
mov r14, qword [rsp + 0x78]
and qword [rbp + 8], 0
mov rdi, qword [rbp + 0x10]
test rdi, rdi
je 0x14002338e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0x10], rbx
and qword [rbp + 0x118], 0
mov rdi, qword [rbp + 0x120]
test rdi, rdi
je 0x1400233bd
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0x120], rbx
test r14, r14
je 0x1400233d6
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r12, r12
je 0x1400233ef
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [rbp + 0xe0]
mov r14d, dword [rbp + 0x170]
mov dword [rbp + 0x32c], eax
mov rax, qword [rbp + 0x128]
mov qword [rbp + 0x238], rax
mov qword [rbp + 0x128], rbx
jmp 0x140019f3e
cmp esi, 0xd00000e5
je 0x14002343e
cmp esi, 0xc004d501
je 0x14002343e
cmp esi, 0xd000003e
jne 0x140023443
mov esi, 0xc004f028
jmp 0x140019fe1
mov esi, 0xc004f027
test esi, esi
jns 0x14002345a
cmp esi, 0x8007007a
jne 0x140019fe1
mov ebx, 0xc004f01e
jmp 0x140023472
cmp r14d, 4
jne 0x140023453
mov rcx, qword [rbp + 0x238]
mov rax, qword [rbp + 0x458]
mov edx, dword [rcx]
mov dword [rax], edx
lea rcx, [rbp + 0x238]
call fcn.1400437e4
mov eax, ebx
mov rcx, qword [rbp + 0x1100]
xor rcx, rsp
call fcn.140060290
mov rbx, qword [rsp + 0x1250]
add rsp, 0x1210
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret