Function at 0x140029a00
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.1400b7760
sub rsp, rax
mov rax, qword [0x140119ad0]
xor rax, rsp
mov qword [rbp + 0x1100], rax
xor r14d, r14d
mov qword [rbp + 0x418], r8
mov qword [rbp + 0x78], rdx
mov qword [rbp + 0x1a0], r14
test rdx, rdx
jne 0x140029a5b
mov r14d, 0x80070057
jmp 0x140032f34
test r8, r8
je 0x140029a50
mov dword [rbp + 0x128], r14d
mov esi, 1
mov dword [rbp + 0xd8], r14d
mov qword [rbp + 0x110], r14
mov dword [rbp + 0x88], r14d
xor eax, eax
lock cmpxchg dword [0x14011b404], esi
jne 0x140029a81
mov eax, dword [0x14011b400]
or edi, 0xffffffff
mov dword [rbp + 0x8c], edi
mov r15d, 0x338
test eax, eax
jne 0x14002a04f
mov dword [rbp - 0x38], r14d
mov qword [rbp + 0x170], r14
mov qword [rbp + 0x268], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, r15d
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp + 0x50], rax
test rax, rax
je 0x140029fcb
mov edx, r14d
mov dword [rbp + 0x3c], r14d
mov dword [rbp - 8], edx
lea r15, [rax + 7]
mov ebx, r14d
lea r12, [0x1400ddba2]
mov ecx, edi
mov r11d, r14d
mov r13d, 0x67
movzx eax, byte [r12 - 1]
movzx r10d, byte [r12 - 2]
movzx r9d, byte [r12 + 2]
shl r10d, 8
or r10d, eax
shl r9d, 8
movzx eax, byte [r12]
lea r12, [r12 + 8]
shl r10d, 8
or r10d, eax
movzx eax, byte [r12 - 7]
shl r10d, 8
or r10d, eax
movzx eax, byte [r12 - 5]
or r9d, eax
xor r11d, r10d
movzx eax, byte [r12 - 4]
mov r8d, r11d
shl r9d, 8
or r9d, eax
movzx eax, byte [r12 - 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
mov edi, 0xab69605e
xor eax, edi
ror eax, 0xc
imul edx, eax, 0x137f
mov eax, r8d
ror eax, 0xa
xor edx, eax
xor r11d, edx
mov eax, r11d
xor eax, 0x7f1
imul edx, eax, 0xab69
mov eax, r11d
shr eax, 0xa
xor edx, eax
xor edx, r8d
mov 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, edi
mov eax, r8d
xor eax, 0x7f1
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
xor r11d, r8d
xor r11d, 0xac987321
mov eax, r11d
ror eax, 3
imul edx, eax, 0x137f
sub edx, 0xd0dd417
xor r8d, edx
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, ecx
mov dword [rbp - 8], r8d
mov ecx, r9d
xor edx, eax
xor edx, ebx
mov ebx, r10d
xor r11d, edx
mov dword [rbp + 0x3c], r11d
mov byte [r15 - 4], r11b
mov al, byte [rbp - 8]
ror dword [rbp + 0x3c], 8
mov byte [r15], al
lea r15, [r15 + 8]
ror dword [rbp - 8], 8
mov al, byte [rbp + 0x3c]
mov byte [r15 - 0xd], al
mov al, byte [rbp - 8]
ror dword [rbp + 0x3c], 8
mov byte [r15 - 9], al
ror dword [rbp - 8], 8
mov al, byte [rbp + 0x3c]
mov byte [r15 - 0xe], al
ror dword [rbp + 0x3c], 8
mov al, byte [rbp - 8]
mov byte [r15 - 0xa], al
ror dword [rbp - 8], 8
mov al, byte [rbp + 0x3c]
mov byte [r15 - 0xf], al
mov al, byte [rbp - 8]
mov byte [r15 - 0xb], al
mov r11d, dword [rbp + 0x3c]
mov edx, dword [rbp - 8]
ror r11d, 8
ror edx, 8
mov dword [rbp + 0x3c], r11d
mov dword [rbp - 8], edx
sub r13, rsi
jne 0x140029b00
mov rsi, qword [rbp + 0x50]
mov rax, r14
mov cl, r14b
mov ebx, r14d
mov r13d, r14d
mov edx, 1
mov r15d, 0x338
xor cl, byte [rax + rsi]
add rax, rdx
cmp rax, r15
jb 0x140029e42
movzx eax, cl
cmp rax, qword [0x1400dded8]
je 0x140029e60
mov edi, 0xc004d501
jmp 0x140029e73
mov qword [rbp + 0x170], rsi
mov edi, ebx
mov rsi, r14
mov qword [rbp + 0x268], r15
test rsi, rsi
je 0x140029e8c
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test edi, edi
js 0x140029fcb
mov rax, qword [rbp + 0x268]
lea rsi, [0x14011aa20]
mov rdi, qword [rbp + 0x170]
xor edx, edx
mov rcx, rsi
lea r8d, [rdx + 0x60]
mov byte [rax + rdi - 1], r14b
call sub.msvcrt.dll_memset
cmp byte [rdi], r14b
je 0x140029fd0
jmp 0x140029ece
lea rsi, [0x14011aa20]
mov rdx, rdi
or rax, 0xffffffffffffffff
inc rax
cmp word [rdi + rax*2], r14w
jne 0x140029ed5
lea rdi, [rdi + rax*2]
mov eax, r13d
lea rcx, [rax + rax*2]
lea rsi, [rsi + rcx*8]
xor ecx, ecx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
je 0x140029fcb
mov rax, qword [rsi]
mov ecx, 0x5a4d
mov ebx, r14d
cmp word [rax], cx
je 0x140029f18
mov ebx, 0xc000007b
jmp 0x140029f62
movsxd rcx, dword [rax + 0x3c]
cmp ecx, 0x10000000
jae 0x140029f11
add rcx, qword [rsi]
cmp rcx, qword [rsi]
jb 0x140029f11
cmp dword [rcx], 0x4550
jne 0x140029f11
movzx eax, word [rcx + 0x18]
mov edx, 0x10b
sub ax, dx
mov edx, 0xfeff
test dx, ax
je 0x140029f51
mov ebx, 0xc000000d
jmp 0x140029f62
mov rax, qword [rcx + 0x88]
mov qword [rsi + 0xc], rax
mov eax, dword [rcx + 0x50]
mov dword [rsi + 8], eax
mov r12d, dword [rdi + 2]
mov r15d, r14d
add rdi, 6
test r12d, r12d
je 0x140029fb8
mov rdx, rdi
or rax, 0xffffffffffffffff
inc rax
cmp byte [rdi + rax], r14b
jne 0x140029f79
inc rdi
add rdi, rax
test ebx, ebx
js 0x140029fa8
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140029fd0
mov ecx, dword [rbp - 0x38]
lea rdx, [0x1401130a0]
mov qword [rdx + rcx*8], rax
mov eax, 1
add dword [rbp - 0x38], eax
add r15d, eax
cmp r15d, r12d
jb 0x140029f72
mov esi, 1
add r13d, esi
cmp byte [rdi], r14b
jne 0x140029ec7
jmp 0x140029fd5
mov ebx, 0xc000007a
mov esi, 1
cmp qword [rbp + 0x170], r14
je 0x140029ff6
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp + 0x170]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test ebx, ebx
jns 0x14002a049
lea r15, [0x14011aa20]
mov ebx, 4
mov rdi, r15
cmp qword [rdi], r14
je 0x14002a017
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
add rdi, 0x18
sub rbx, rsi
jne 0x14002a009
xor edx, edx
lea r8d, [rbx + 0x60]
mov rcx, r15
call sub.msvcrt.dll_memset
mov r8d, 0x170
lea rdx, [0x1400c92d0]
lea rcx, [0x1401130a0]
call sub.msvcrt.dll_memcpy
jmp 0x14002a057
mov eax, dword [0x14011b400]
add eax, esi
mov dword [0x14011b400], eax
mov eax, r14d
mov r13d, 0x8007000e
xchg dword [0x14011b404], eax
mov qword [rbp + 0x1e0], r14
mov esi, r14d
mov qword [rbp + 0x1e8], r14
mov ebx, r14d
mov rax, qword gs:[0x60]
lea r12d, [r13 - 0xe]
mov edi, 0x80004005
cmp dword [rax + 0x2c0], r14d
je 0x14002a31f
mov rax, qword [0x1401131b0]
call qword [str._w_v_]
mov r15, rax
test rax, rax
jne 0x14002a0ce
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, r12d
test eax, eax
cmovle ebx, eax
test ebx, ebx
js 0x14002a325
mov ebx, edi
jmp 0x14002a325
mov qword [rbp + 0xe0], r14
mov r9d, r14d
mov rdi, r14
lea rax, [rbp + 0x140]
mov r8, rdi
mov qword [rsp + 0x20], rax
mov edx, 2
mov rax, qword [0x1401131d0]
mov rcx, r15
call qword [str._w_v_]
test eax, eax
jne 0x14002a179
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x14002a163
cmp qword [rbp + 0xe0], r14
jne 0x14002a15a
mov edi, dword [rbp + 0x140]
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 + 0xe0]
mov rdi, rax
call fcn.14008a6d4
test rdi, rdi
je 0x14002a155
mov r9d, dword [rbp + 0x140]
mov qword [rbp + 0xe0], rdi
jmp 0x14002a0db
mov ebx, r13d
jmp 0x14002a187
mov edi, 0x80004005
mov ebx, edi
jmp 0x14002a193
mov edi, 0x80004005
test eax, eax
je 0x14002a15f
movzx ebx, ax
or ebx, r12d
test eax, eax
cmovle ebx, eax
jmp 0x14002a193
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x1e0], rax
mov edi, 0x80004005
mov qword [rbp + 0xe0], r14
lea rcx, [rbp + 0xe0]
call fcn.14008a6d4
test ebx, ebx
js 0x14002a325
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov ecx, eax
mov rax, qword [0x1401131c8]
call qword [str._w_v_]
mov r15, rax
test rax, rax
je 0x14002a0ae
mov qword [rbp + 0xe8], r14
mov ebx, r14d
mov r9d, r14d
mov rdi, r14
lea rax, [rbp + 0x144]
mov r8, rdi
mov qword [rsp + 0x20], rax
mov edx, 2
mov rax, qword [0x1401131d0]
mov rcx, r15
call qword [str._w_v_]
test eax, eax
jne 0x14002a276
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x14002a260
cmp qword [rbp + 0xe8], r14
jne 0x14002a257
mov edi, dword [rbp + 0x144]
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 + 0xe8]
mov rdi, rax
call fcn.14008a6d4
test rdi, rdi
je 0x14002a252
mov r9d, dword [rbp + 0x144]
mov qword [rbp + 0xe8], rdi
jmp 0x14002a1d8
mov ebx, r13d
jmp 0x14002a284
mov edi, 0x80004005
mov ebx, edi
jmp 0x14002a290
mov edi, 0x80004005
test eax, eax
je 0x14002a25c
movzx ebx, ax
or ebx, r12d
test eax, eax
cmovle ebx, eax
jmp 0x14002a290
mov rax, qword [rbp + 0xe8]
mov qword [rbp + 0x1e8], rax
mov edi, 0x80004005
mov qword [rbp + 0xe8], r14
lea rcx, [rbp + 0xe8]
call fcn.14008a6d4
test ebx, ebx
js 0x14002a325
mov rcx, qword [rbp + 0x1e0]
test rcx, rcx
je 0x14002a31f
lea rdx, str.WinSta0
call sub.msvcrt.dll_wcscmp
test eax, eax
jne 0x14002a31f
mov rcx, qword [rbp + 0x1e8]
test rcx, rcx
je 0x14002a31f
lea rdx, str.Default
call sub.msvcrt.dll_wcscmp
test eax, eax
jne 0x14002a31f
xor eax, eax
mov dword [rbp + 0x148], eax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov r9d, 4
lea r8, [rbp + 0x148]
mov rcx, rax
lea edx, [r9 + 7]
call qword [sym.imp.KERNEL32.dll_GetProcessMitigationPolicy]
test eax, eax
je 0x14002a0ae
mov eax, 0xf
test byte [rbp + 0x148], al
mov eax, 1
cmove esi, eax
mov dword [rbp + 0x88], esi
lea rcx, [rbp + 0x1e8]
call fcn.14008a6d4
lea rcx, [rbp + 0x1e0]
call fcn.14008a6d4
mov eax, dword [rbp + 0x88]
test ebx, ebx
cmovs eax, r14d
mov dword [rbp + 0x88], eax
mov edx, 4
mov dword [rbp + 0xd8], r14d
lea ecx, [rdx + 0x3c]
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
lea rcx, [rbp + 0x110]
mov qword [rbp + 0x80], rax
mov rdi, rax
call fcn.14008a6ac
test rdi, rdi
jne 0x14002a441
mov qword [rbp + 0x110], r14
mov r15d, r13d
mov ebx, dword [rbp + 0xc4]
mov r12d, 1
xor eax, eax
lock cmpxchg dword [0x14011b404], r12d
jne 0x14002a399
mov eax, dword [0x14011b400]
test eax, eax
jle 0x14002a408
sub eax, r12d
mov dword [0x14011b400], eax
jne 0x14002a408
lea r13, [0x14011aa20]
mov esi, 4
mov rdi, r13
cmp qword [rdi], r14
je 0x14002a3d8
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
add rdi, 0x18
sub rsi, r12
jne 0x14002a3ca
xor edx, edx
lea r8d, [rsi + 0x60]
mov rcx, r13
call sub.msvcrt.dll_memset
mov r8d, 0x170
lea rdx, [0x1400c92d0]
lea rcx, [0x1401130a0]
call sub.msvcrt.dll_memcpy
mov eax, r14d
lea rcx, [rbp + 0x110]
xchg dword [0x14011b404], eax
call fcn.14008a6ac
test r15d, r15d
jns 0x140032f1d
cmp r15d, 0xd0000034
jne 0x140032ed6
mov r15d, 0xc004f012
mov r14d, r15d
jmp 0x140032f34
xor eax, eax
mov qword [rbp + 0x110], rdi
mov qword [rbp - 0x60], rax
mov edi, 0xa0
mov qword [rbp - 0x58], rax
mov r12, r14
mov qword [rbp + 0xa8], rax
mov r13, r14
mov qword [rbp + 0xb0], rax
lea rax, [0x140119bb0]
mov qword [rbp + 0x338], rax
mov dword [rbp + 0x120], r14d
mov dword [rbp + 0x98], r14d
mov qword [rbp + 0x270], rdi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r15d, 8
mov r8d, edi
mov rcx, rax
mov edx, r15d
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp + 0x50], rax
movabs rbx, 0xc81ecb17b1b54a58
movabs rsi, 0x7f1137fab69605e
mov rdi, rax
test rax, rax
jne 0x14002a4d4
mov r15d, 0xc0000017
jmp 0x14002a7c3
mov r8, qword [rbp + 0x270]
mov rcx, rdi
mov rdx, qword [rbp + 0x338]
call sub.msvcrt.dll_memcpy
mov r12, rdi
mov qword [rsp + 0x70], rdi
mov edi, dword [rbp + 0x270]
mov dword [rbp - 0x78], edi
lea rax, [0x140119af8]
mov qword [rbp + 0x278], r15
mov qword [rbp + 0x340], rax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
mov edx, r15d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp - 0x68], rax
mov r15, rax
test rax, rax
je 0x14002a4c9
mov r8, qword [rbp + 0x278]
mov rcx, rax
mov rdx, qword [rbp + 0x340]
call sub.msvcrt.dll_memcpy
mov ecx, dword [rbp + 0x278]
mov dword [rbp - 0x30], ecx
mov qword [rsp + 0x68], r15
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x1c8], rax
mov dword [rbp + 0x90], 8
lea r13d, [rdi + 4]
cmp r13d, 4
jb 0x14002a7b8
mov dword [rbp + 0x90], r13d
lea eax, [r13 + 8]
or r8d, 0xffffffff
cmp eax, 8
mov edx, r8d
mov r10d, 0xc0000095
mov r9d, 0x10000000
cmovae edx, eax
sbb r15d, r15d
and r15d, r10d
add r15d, r9d
mov dword [rsp + 0x60], r15d
cmp eax, 8
jb 0x14002cad5
lea r12d, [rcx + 4]
cmp r12d, 4
jb 0x14002cb04
mov dword [rbp + 0x90], r12d
lea eax, [r12 + rdx]
mov ecx, r8d
cmp eax, edx
cmovae ecx, eax
sbb r15d, r15d
and r15d, r10d
add r15d, r9d
mov dword [rsp + 0x60], r15d
cmp eax, edx
jb 0x14002cad0
mov dword [rbp + 0x90], 0xc
lea eax, [rcx + 0xc]
mov edi, r8d
cmp eax, ecx
cmovae edi, eax
sbb r15d, r15d
and r15d, r10d
add r15d, r9d
mov dword [rsp + 0x60], r15d
cmp eax, ecx
jb 0x14002cad0
mov rcx, qword [rbp + 0x78]
lea r8, [rbp + 0x1d8]
mov edx, 0x7fffffff
call fcn.14008a73c
test eax, eax
jns 0x14002a64a
mov qword [rbp + 0x1d8], r14
mov r15d, 0xc000003e
mov r12, qword [rsp + 0x70]
jmp 0x14002a7be
mov rax, qword [rbp + 0x1d8]
mov r10d, 0xc0000095
inc rax
mov qword [rbp + 0x1d8], rax
lea ecx, [rax*2 + 4]
cmp ecx, 4
jb 0x14002a678
mov r15d, r14d
mov dword [rbp + 0x90], ecx
jmp 0x14002a681
mov ecx, dword [rbp + 0x90]
mov r15d, r10d
mov dword [rsp + 0x60], r15d
test r15d, r15d
js 0x14002caaa
lea eax, [rcx + rdi]
or r8d, 0xffffffff
cmp eax, edi
mov edx, r8d
mov r9d, 0x10000000
cmovae edx, eax
sbb r15d, r15d
and r15d, r10d
add r15d, r9d
mov dword [rsp + 0x60], r15d
cmp eax, edi
jb 0x14002cad0
mov dword [rbp + 0x90], 8
lea eax, [rdx + 8]
mov ecx, r8d
cmp eax, edx
cmovae ecx, eax
sbb r15d, r15d
and r15d, r10d
add r15d, r9d
mov dword [rsp + 0x60], r15d
cmp eax, edx
jb 0x14002cad0
lea eax, [rcx + 8]
mov edx, r8d
cmp eax, ecx
cmovae edx, eax
sbb r15d, r15d
and r15d, r10d
add r15d, r9d
mov dword [rsp + 0x60], r15d
cmp eax, ecx
jb 0x14002cad0
mov dword [rbp - 0x5c], 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 0x14002a735
mov r15d, 0xc0000017
jmp 0x14002a640
mov qword [rbp - 0x58], rdx
mov dword [rbp - 0x60], r14d
mov dword [rbp + 0x218], r14d
lea rdi, [rax + 4]
cmp rdi, rdx
jb 0x14002a7b3
mov ecx, dword [rbp - 0x5c]
add rax, 8
add rcx, rdx
cmp rax, rcx
jbe 0x14002a767
mov r15d, 0xc0000023
jmp 0x14002a640
mov dword [rdx], 4
mov eax, dword [rbp + 0x218]
mov dword [rdi], eax
mov ecx, dword [rbp - 0x60]
inc ecx
mov dword [rbp - 0x60], ecx
mov r8d, dword [rbp - 0x78]
test r8d, r8d
je 0x14002a961
cmp qword [rbp - 0x58], r14
jne 0x14002a8d9
mov dword [rbp + 0x210], r13d
mov eax, dword [rbp - 0x5c]
lea edx, [rax + r13]
cmp edx, eax
jb 0x14002a7b3
inc ecx
mov dword [rbp - 0x5c], edx
mov dword [rbp - 0x60], ecx
jmp 0x14002a978
mov r12, qword [rsp + 0x70]
mov r15d, 0xc0000095
mov r13, qword [rsp + 0x68]
mov dword [rsp + 0x60], r15d
and qword [rbp - 0x60], 0
mov rdi, qword [rbp - 0x58]
test rdi, rdi
je 0x14002a7ee
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 - 0x58], r14
and qword [rbp + 0xa8], 0
mov rdi, qword [rbp + 0xb0]
test rdi, rdi
je 0x14002a81d
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 + 0xb0], r14
test r12, r12
je 0x14002a836
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r13, r13
je 0x14002a84f
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r15d, r15d
js 0x14002a38d
mov eax, dword [rbp + 0x88]
test eax, eax
je 0x140032e9a
mov edi, 0x104
mov qword [rbp + 0x3c0], r14
mov r8d, edi
mov dword [0x14011aa18], eax
lea rdx, [rbp + 0xef0]
lea rcx, [0x140000000]
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x140031017
cmp eax, edi
jne 0x14002a8aa
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
je 0x140031017
mov rax, qword [0x140113198]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
call qword [str._w_v_]
mov qword [rbp + 0x60], rax
test rax, rax
jne 0x14002cb0e
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x140031017
mov rdx, qword [rbp - 0x58]
mov edi, r14d
mov r13d, 1
test ecx, ecx
je 0x14002a913
mov eax, dword [rdx]
add eax, 4
cmp eax, 4
jb 0x14002a959
mov dword [rbp + 0x210], eax
mov r9d, eax
add r9, rdx
cmp r9, rdx
jb 0x14002a7b3
add edi, r13d
mov rdx, r9
cmp edi, ecx
jb 0x14002a8ea
lea r9, [rdx + 4]
cmp r9, rdx
jb 0x14002a7b3
mov ecx, dword [rbp - 0x5c]
lea rax, [r8 + 4]
add rcx, qword [rbp - 0x58]
add rax, rdx
mov dword [rsp + 0x60], r14d
mov r15d, r14d
cmp rax, rcx
ja 0x14002a75c
mov dword [rdx], r8d
mov rcx, r9
mov rdx, qword [rbp + 0x50]
call sub.msvcrt.dll_memcpy
mov ecx, dword [rbp - 0x60]
add ecx, r13d
mov dword [rbp - 0x60], ecx
jmp 0x14002a96c
mov r15d, 0xc0000095
jmp 0x14002a967
mov r15d, 0xc000000d
mov dword [rsp + 0x60], r15d
test r15d, r15d
js 0x14002caaa
mov edx, dword [rbp - 0x5c]
mov r10d, dword [rbp - 0x30]
test r10d, r10d
je 0x14002aa52
cmp qword [rbp - 0x58], r14
jne 0x14002a9bc
mov dword [rbp + 0x1fc], r12d
lea eax, [rdx + r12]
cmp eax, edx
jb 0x14002a7b3
mov edx, eax
mov r13d, 1
mov rax, qword [rbp + 0x1c8]
add ecx, r13d
mov qword [rbp + 0x280], rax
jmp 0x14002aa86
mov rdi, qword [rbp - 0x58]
mov r8d, r14d
mov r12d, 1
test ecx, ecx
je 0x14002a9f7
mov eax, dword [rdi]
add eax, 4
cmp eax, 4
jb 0x14002aa42
mov dword [rbp + 0x1fc], eax
mov r9d, eax
add r9, rdi
cmp r9, rdi
jb 0x14002a7b3
add r8d, r12d
mov rdi, r9
cmp r8d, ecx
jb 0x14002a9cd
lea r9, [rdi + 4]
cmp r9, rdi
jb 0x14002a7b3
mov ecx, edx
lea rax, [r10 + 4]
add rcx, qword [rbp - 0x58]
add rax, rdi
mov dword [rsp + 0x60], r14d
mov r15d, r14d
mov r8, r10
cmp rax, rcx
ja 0x14002a75c
mov rdx, qword [rbp - 0x68]
mov rcx, r9
mov dword [rdi], r10d
call sub.msvcrt.dll_memcpy
mov ecx, dword [rbp - 0x60]
mov edx, dword [rbp - 0x5c]
add ecx, r12d
mov dword [rbp - 0x60], ecx
jmp 0x14002aa5d
mov r10d, 0xc0000095
mov r15d, r10d
mov dword [rsp + 0x60], r10d
jmp 0x14002aa63
mov r15d, 0xc000000d
mov dword [rsp + 0x60], r15d
mov r10d, 0xc0000095
test r15d, r15d
js 0x14002caaa
mov r13d, 1
mov rax, qword [rbp + 0x1c8]
mov qword [rbp + 0x280], rax
cmp qword [rbp - 0x58], r14
jne 0x14002aaa9
mov dword [rbp + 0x238], 0xc
lea eax, [rdx + 0xc]
cmp eax, edx
jb 0x14002a7b3
add ecx, r13d
mov dword [rbp - 0x5c], eax
mov dword [rbp - 0x60], ecx
jmp 0x14002ab2a
mov rdi, qword [rbp - 0x58]
mov r8d, r14d
test ecx, ecx
je 0x14002aae2
mov eax, dword [rdi]
add eax, 4
cmp eax, 4
jb 0x14002ab52
mov dword [rbp + 0x238], eax
mov r9d, eax
add r9, rdi
cmp r9, rdi
jb 0x14002cb04
add r8d, r13d
mov rdi, r9
cmp r8d, ecx
jb 0x14002aab4
lea r8, [rdi + 4]
cmp r8, rdi
jb 0x14002cb04
mov ecx, edx
lea rax, [rdi + 0xc]
add rcx, qword [rbp - 0x58]
mov r15d, r14d
mov dword [rsp + 0x60], r14d
cmp rax, rcx
ja 0x14002a75c
mov dword [rdi], 8
movsd xmm0, qword [rbp + 0x280]
movsd qword [r8], xmm0
add dword [rbp - 0x60], r13d
test r15d, r15d
js 0x14002caaa
mov r12, qword [rbp + 0x78]
lea r8, [rbp + 0x180]
mov rcx, r12
mov edx, 0x7fffffff
call fcn.14008a73c
test eax, eax
jns 0x14002ab5c
mov qword [rbp + 0x180], r14
jmp 0x14002a63a
mov r15d, r10d
mov dword [rsp + 0x60], r10d
jmp 0x14002ab21
mov rax, qword [rbp + 0x180]
lea rcx, [rax + 1]
cmp rcx, rax
jb 0x14002caf7
lea r8d, [rcx + rcx]
mov qword [rbp + 0x180], rcx
test r8d, r8d
je 0x14002ac67
cmp qword [rbp - 0x58], r14
jne 0x14002abe6
add r8d, 4
cmp r8d, 4
jb 0x14002abd3
mov dword [rbp + 0x1f0], r8d
mov eax, dword [rbp - 0x5c]
mov r10d, 0xc0000095
lea edi, [rax + r8]
cmp edi, eax
jb 0x14002abc0
add dword [rbp - 0x60], r13d
mov r15d, r14d
mov dword [rbp - 0x5c], edi
mov dword [rsp + 0x60], r14d
jmp 0x14002ac7b
or edi, 0xffffffff
mov dword [rsp + 0x60], r10d
mov dword [rbp - 0x5c], edi
mov r15d, r10d
jmp 0x14002ac7b
mov r10d, 0xc0000095
mov r15d, r10d
mov dword [rsp + 0x60], r10d
jmp 0x14002ac78
mov ecx, r14d
mov rdx, qword [rbp - 0x58]
cmp dword [rbp - 0x60], r14d
jbe 0x14002ac16
mov eax, dword [rdx]
add eax, 4
cmp eax, 4
jb 0x14002abd3
mov dword [rbp + 0x1f0], eax
add rax, rdx
cmp rax, rdx
jb 0x14002abd3
add ecx, r13d
mov rdx, rax
cmp ecx, dword [rbp - 0x60]
jb 0x14002abf3
lea r9, [rdx + 4]
cmp r9, rdx
jb 0x14002abd3
mov edi, dword [rbp - 0x5c]
lea rax, [r8 + 4]
mov ecx, edi
mov dword [rsp + 0x60], r14d
add rcx, qword [rbp - 0x58]
add rax, rdx
mov r10d, r8d
mov r15d, r14d
cmp rax, rcx
jbe 0x14002ac50
mov r15d, 0xc0000023
mov dword [rsp + 0x60], r15d
lea r10d, [r15 + 0x72]
jmp 0x14002ac7b
mov dword [rdx], r8d
mov rcx, r9
mov r8, r10
mov rdx, r12
call sub.msvcrt.dll_memcpy
add dword [rbp - 0x60], r13d
jmp 0x14002ac72
mov r15d, 0xc000000d
mov dword [rsp + 0x60], r15d
mov r10d, 0xc0000095
mov edi, dword [rbp - 0x5c]
test r15d, r15d
js 0x14002caaa
mov eax, dword [rbp + 0x88]
mov dword [rbp + 0x208], eax
cmp qword [rbp - 0x58], r14
jne 0x14002acc0
mov dword [rbp + 0x200], 8
lea eax, [rdi + 8]
cmp eax, edi
jb 0x14002cb04
add dword [rbp - 0x60], r13d
mov edi, eax
mov dword [rbp + 0x118], 4
jmp 0x14002ad52
mov ecx, r14d
mov rdx, qword [rbp - 0x58]
cmp dword [rbp - 0x60], r14d
jbe 0x14002acfb
mov eax, dword [rdx]
add eax, 4
cmp eax, 4
jb 0x14002ad75
mov dword [rbp + 0x200], eax
mov r8d, eax
add r8, rdx
cmp r8, rdx
jb 0x14002cb04
add ecx, r13d
mov rdx, r8
cmp ecx, dword [rbp - 0x60]
jb 0x14002accd
lea r8, [rdx + 4]
cmp r8, rdx
jb 0x14002cb04
mov ecx, edi
lea rax, [rdx + 8]
add rcx, qword [rbp - 0x58]
mov r15d, r14d
mov dword [rsp + 0x60], r14d
cmp rax, rcx
ja 0x14002a75c
mov dword [rdx], 4
mov eax, dword [rbp + 0x208]
mov dword [r8], eax
add dword [rbp - 0x60], r13d
mov edi, dword [rbp - 0x5c]
test r15d, r15d
js 0x14002caaa
mov dword [rbp + 0x118], 4
cmp qword [rbp - 0x58], r14
jne 0x14002ad7f
mov dword [rbp + 0x220], 8
lea eax, [rdi + 8]
cmp eax, edi
jb 0x14002cb04
add dword [rbp - 0x60], r13d
mov edi, eax
mov dword [rbp - 0x5c], eax
jmp 0x14002ae01
mov r15d, r10d
mov dword [rsp + 0x60], r10d
jmp 0x14002ad39
mov ecx, r14d
mov rdx, qword [rbp - 0x58]
cmp dword [rbp - 0x60], r14d
jbe 0x14002adba
mov eax, dword [rdx]
add eax, 4
cmp eax, 4
jb 0x14002ae84
mov dword [rbp + 0x220], eax
mov r8d, eax
add r8, rdx
cmp r8, rdx
jb 0x14002cb04
add ecx, r13d
mov rdx, r8
cmp ecx, dword [rbp - 0x60]
jb 0x14002ad8c
lea r8, [rdx + 4]
cmp r8, rdx
jb 0x14002cb04
mov ecx, edi
lea rax, [rdx + 8]
add rcx, qword [rbp - 0x58]
mov r15d, r14d
mov dword [rsp + 0x60], r14d
cmp rax, rcx
ja 0x14002a75c
mov dword [rdx], 4
mov eax, dword [rbp + 0x118]
mov dword [r8], eax
add dword [rbp - 0x60], r13d
mov edi, dword [rbp - 0x5c]
test r15d, r15d
js 0x14002caaa
mov dword [rbp + 0x2f0], 8
mov r8, r14
mov qword [rbp + 0x60], r14
mov r12d, r14d
mov qword [rbp + 0x178], r14
mov qword [rbp + 0x58], r14
mov r13, r14
mov dword [rbp - 0x50], r14d
mov qword [rbp - 0x70], r14
mov dword [rbp + 0x70], r14d
mov qword [rbp + 0x48], r14
mov qword [rbp - 0x20], r14
mov dword [rbp + 0xc0], r14d
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x288], rax
lea eax, [rdi + 8]
or ecx, 0xffffffff
cmp eax, 8
cmovae ecx, eax
sbb r15d, r15d
and r15d, r10d
mov dword [rbp + 0xc8], ecx
cmp eax, 8
jb 0x14002af3a
mov eax, ecx
add rax, 7
and eax, 0xfffffff8
cmp eax, ecx
jae 0x14002ae91
mov r15d, r10d
jmp 0x14002af3a
mov r15d, r10d
mov dword [rsp + 0x60], r10d
jmp 0x14002adf8
mov dword [rbp + 0xc8], 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 0x14002aec3
mov r15d, 0xc0000017
mov r8, r14
jmp 0x14002af3a
mov eax, dword [rbp - 0x60]
lea rdx, [rdi + 4]
mov dword [rdi], eax
cmp rdx, rdi
jb 0x14002af14
mov eax, dword [rbp - 0x5c]
lea rcx, [rdx + 4]
mov dword [rdx], eax
cmp rcx, rdx
jb 0x14002af14
mov edx, dword [rbp + 0xc8]
mov r15d, r14d
mov rax, qword [rbp + 0x288]
mov qword [rdx + rdi - 8], rax
mov r8d, dword [rbp - 0x5c]
mov rdx, qword [rbp - 0x58]
call sub.msvcrt.dll_memcpy
mov r12d, dword [rbp + 0xc8]
mov r8, rdi
mov qword [rbp + 0x60], rdi
mov rdi, r14
jmp 0x14002af1d
mov r8, r14
mov r15d, 0xc0000095
test rdi, rdi
je 0x14002af3a
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 + 0x60]
or r15d, 0x10000000
mov dword [rsp + 0x60], r15d
jl 0x14002be89
mov qword [rbp + 0x350], r14
mov qword [rbp + 0x358], r14
mov qword [rbp + 0x360], r14
mov qword [rbp + 0x368], r14
mov qword [rbp + 0x1d0], r14
mov qword [rbp + 0x348], r14
test r8, r8
jne 0x14002af86
mov r15d, 0xc000000d
jmp 0x14002b71e
mov r15d, r12d
mov qword [rbp - 0x68], r15
test r12d, r12d
je 0x14002b675
lea rdi, [r15 + 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 + 0x10], rax
test rax, rax
je 0x14002b675
mov r8, qword [rbp + 0x60]
mov dl, r14b
mov byte [rsp + 0x64], dl
mov rcx, r14
test r12d, r12d
je 0x14002afe7
mov edi, 1
xor dl, byte [r8 + rcx]
add rcx, rdi
cmp rcx, r15
jb 0x14002afd7
mov byte [rsp + 0x64], dl
mov r11, rax
mov qword [rbp + 0x910], rbx
or r10d, 0xffffffff
mov dword [rbp - 0x18], r14d
mov rax, r15
mov dword [rbp - 0x40], r10d
mov dword [rbp - 0x38], r14d
mov r9d, r14d
mov dword [rbp - 0x7c], r14d
and eax, 7
je 0x14002b0fb
mov dword [rbp - 0x38], r14d
mov ecx, r14d
mov dword [rbp - 0x7c], ecx
mov r12d, r14d
mov r10d, r14d
test eax, eax
je 0x14002b073
mov esi, 1
lea r9d, [rsi + 0x37]
movzx edi, byte [r8]
inc r8
cmp r10d, 4
jge 0x14002b04e
lea ecx, [r9 - 0x20]
shl edi, cl
mov ecx, dword [rbp - 0x7c]
or ecx, edi
mov dword [rbp - 0x7c], ecx
jmp 0x14002b059
mov ecx, r9d
shl edi, cl
mov ecx, dword [rbp - 0x7c]
or r12d, edi
add r10d, esi
sub r9d, 8
cmp r10d, eax
jl 0x14002b031
mov dword [rbp - 0x38], r12d
movabs rsi, 0x7f1137fab69605e
mov r9d, ecx
mov r10d, r12d
xor r9d, 0xb17a307a
xor r10d, 0x42f6b18d
mov dword [rbp - 0x18], r9d
mov ecx, r14d
mov dword [rbp - 0x40], r10d
test eax, eax
je 0x14002b0c3
lea r12, [r11 + 1]
cmp ecx, 4
jge 0x14002b0a8
rol r9d, 8
mov edi, r9d
jmp 0x14002b0af
rol r10d, 8
mov edi, r10d
inc ecx
mov byte [r11], dil
mov r11, r12
cmp ecx, eax
jl 0x14002b096
mov r9d, dword [rbp - 0x18]
mov r10d, dword [rbp - 0x40]
cmp eax, 4
jbe 0x14002b0de
mov ecx, 8
sub ecx, eax
shl ecx, 3
shr r10d, cl
shl r10d, cl
mov dword [rbp - 0x40], r10d
jmp 0x14002b0fb
mov r10d, r14d
mov dword [rbp - 0x40], r14d
jae 0x14002b0fb
mov ecx, 4
sub ecx, eax
shl ecx, 3
shr r9d, cl
shl r9d, cl
mov dword [rbp - 0x18], r9d
mov r12, r15
shr r12, 3
test r12, r12
je 0x14002b467
movzx eax, word [rbp + 0x912]
lea rcx, [r8 + 2]
mov esi, dword [rbp - 0x38]
mov r13d, dword [rbp - 0x7c]
movzx edx, word [rbp + 0x914]
mov dword [rbp - 0x30], eax
mov eax, ebx
xor eax, dword [rbp + 0x914]
add r11, 7
movzx r14d, bx
mov qword [rbp + 0x78], r11
mov r15d, eax
movzx r11d, word [rbp + 0x912]
movzx eax, byte [rcx - 1]
movzx r8d, byte [rcx - 2]
movzx edi, byte [rcx + 2]
shl r8d, 8
or r8d, eax
shl edi, 8
movzx eax, byte [rcx]
shl r8d, 8
or r8d, eax
movzx eax, byte [rcx + 1]
shl r8d, 8
or r8d, eax
movzx eax, byte [rcx + 3]
or edi, eax
movzx eax, byte [rcx + 4]
shl edi, 8
or edi, eax
movzx eax, byte [rcx + 5]
add rcx, 8
shl edi, 8
or edi, eax
mov qword [rbp + 0x50], rcx
mov ecx, dword [rbp + 0x914]
xor r10d, edi
mov eax, r10d
sub eax, r14d
xor eax, dword [rbp + 0x914]
xor eax, r8d
xor r9d, eax
xor ecx, r9d
mov eax, r9d
ror eax, 7
ror ecx, 0xf
imul ecx, r11d
mov r11d, dword [rbp + 0x914]
add ecx, eax
xor r10d, ecx
mov eax, r10d
ror eax, 0xa
lea ecx, [rbx + r10]
ror ecx, 9
imul ecx, edx
sub ecx, eax
movzx eax, word [rbp + 0x916]
xor r9d, ecx
mov ecx, edx
xor ecx, r9d
rol ecx, 4
imul ecx, eax
mov eax, r9d
rol eax, 5
add ecx, eax
mov eax, r11d
xor r10d, ecx
mov ecx, ebx
xor ecx, r10d
sub eax, ecx
xor r9d, eax
movzx eax, word [rbp + 0x912]
mov ecx, r9d
sub ecx, r14d
imul ecx, eax
mov eax, r9d
shr eax, 6
sub ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0x916]
mov eax, r10d
ror eax, 0xf
xor eax, edx
imul eax, r14d
xor r9d, eax
mov eax, r9d
not eax
ror eax, 3
add eax, ecx
imul eax, edx
xor r10d, eax
mov eax, r10d
sub eax, r14d
sub eax, r11d
xor r9d, eax
movzx eax, word [rbp + 0x916]
xor eax, r9d
mov ecx, r9d
imul eax, dword [rbp - 0x30]
ror ecx, 0xa
xor ecx, eax
xor r10d, ecx
mov ecx, r14d
xor ecx, r10d
mov eax, r10d
rol ecx, 6
imul ecx, edx
ror eax, 3
xor ecx, eax
xor r9d, ecx
movzx ecx, word [rbp + 0x916]
mov eax, r9d
ror eax, 0xf
sub eax, ecx
imul eax, r14d
xor r10d, eax
xor ecx, r10d
mov eax, r10d
imul ecx, r14d
shr eax, 1
xor ecx, eax
mov eax, r10d
xor r9d, ecx
shr eax, 0xf
mov ecx, r10d
sub ecx, edx
rol ecx, 3
imul ecx, r14d
xor ecx, eax
movzx eax, word [rbp + 0x912]
xor r9d, ecx
mov ecx, r9d
sub ecx, edx
imul ecx, eax
mov eax, r9d
shr eax, 0xd
sub ecx, eax
xor r10d, ecx
mov ecx, ebx
sub ecx, r10d
mov eax, r10d
ror ecx, 9
imul ecx, edx
ror eax, 0xb
xor ecx, eax
xor r9d, ecx
movzx ecx, word [rbp + 0x916]
mov eax, r9d
sub eax, ebx
sub eax, ecx
xor r10d, eax
movzx eax, word [rbp + 0x912]
xor eax, r10d
mov ecx, r10d
ror ecx, 7
imul eax, r14d
sub eax, ecx
movzx ecx, word [rbp + 0x916]
xor r9d, eax
movzx eax, word [rbp + 0x912]
xor ecx, r9d
rol ecx, 4
imul ecx, eax
mov eax, r9d
ror eax, 0x10
sub ecx, eax
xor r10d, ecx
mov ecx, ebx
sub ecx, r10d
mov eax, r10d
ror ecx, 0xa
imul ecx, edx
ror eax, 4
add ecx, eax
xor r9d, ecx
movzx eax, word [rbp + 0x916]
mov ecx, r9d
sub ecx, ebx
ror ecx, 4
imul ecx, eax
mov eax, r9d
ror eax, 9
xor ecx, eax
xor r10d, ecx
mov ecx, r11d
xor ecx, r10d
mov eax, r10d
rol eax, 2
rol ecx, 8
imul ecx, r14d
sub ecx, eax
xor r9d, ecx
mov ecx, r11d
movzx r11d, word [rbp + 0x912]
sub ecx, r9d
ror ecx, 0xb
mov eax, r9d
ror eax, 0xc
imul ecx, r11d
sub ecx, eax
xor r10d, ecx
mov ecx, r11d
xor ecx, r10d
mov eax, r10d
shr eax, 8
imul ecx, edx
xor ecx, eax
mov eax, r15d
xor eax, r10d
xor r9d, ecx
mov rcx, qword [rbp + 0x78]
xor eax, r9d
xor eax, esi
xor r9d, r13d
mov dword [rbp - 0x40], eax
mov r13d, r8d
mov dword [rbp - 0x18], r9d
mov esi, edi
mov byte [rcx - 4], r9b
mov al, byte [rbp - 0x40]
ror dword [rbp - 0x18], 8
mov byte [rcx], al
ror dword [rbp - 0x40], 8
mov al, byte [rbp - 0x18]
mov byte [rcx - 5], al
mov al, byte [rbp - 0x40]
ror dword [rbp - 0x18], 8
mov byte [rcx - 1], al
ror dword [rbp - 0x40], 8
mov al, byte [rbp - 0x18]
mov byte [rcx - 6], al
ror dword [rbp - 0x18], 8
mov al, byte [rbp - 0x40]
mov byte [rcx - 2], al
ror dword [rbp - 0x40], 8
mov al, byte [rbp - 0x18]
mov byte [rcx - 7], al
mov al, byte [rbp - 0x40]
mov byte [rcx - 3], al
add rcx, 8
mov r9d, dword [rbp - 0x18]
mov r10d, dword [rbp - 0x40]
ror r9d, 8
ror r10d, 8
mov qword [rbp + 0x78], rcx
mov rcx, qword [rbp + 0x50]
mov dword [rbp - 0x18], r9d
mov dword [rbp - 0x40], r10d
sub r12, 1
jne 0x14002b146
mov dl, byte [rsp + 0x64]
xor r14d, r14d
mov r15, qword [rbp - 0x68]
mov r13d, r14d
movabs rsi, 0x7f1137fab69605e
mov r12, qword [rbp + 0x10]
movzx eax, dl
mov qword [r12 + r15], rax
mov r15, qword [rbp + 0x18]
mov qword [rbp + 0x348], r15
mov qword [rbp + 0x1d0], r12
lea rax, [0x140119ba0]
mov qword [rbp + 0x358], 8
mov qword [rbp + 0x350], rax
lea rax, [0x140119b00]
mov qword [rbp + 0x368], 0xa0
mov qword [rbp + 0x360], rax
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 0x14002b4e1
mov r15d, 0xc0000017
jmp 0x14002b664
mov dword [rax], r15d
mov r15d, r15d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, r15d
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x14002b50e
mov r15d, 0xc0000017
jmp 0x14002b5e8
mov qword [rdi + 8], rax
mov r8, r15
mov rdx, r12
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov r15d, 0xa0
mov dword [rdi + 0x10], r15d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, r15d
mov r15d, 8
mov edx, r15d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rcx, rax
test rax, rax
je 0x14002b503
mov qword [rdi + 0x18], rax
lea rax, [0x140119b00]
movups xmm0, xmmword [rax]
lea edx, [r15 + 0x78]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx + rdx - 0x10], xmm1
movups xmm0, xmmword [rax + rdx]
movups xmmword [rcx + rdx], xmm0
movups xmm1, xmmword [rax + rdx + 0x10]
movups xmmword [rcx + rdx + 0x10], xmm1
mov dword [rdi + 0x20], r15d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, r15d
mov edx, r15d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x14002b503
mov qword [rdi + 0x28], rax
movsd xmm0, qword [0x140119ba0]
mov r13, rdi
movsd qword [rax], xmm0
mov r15d, r14d
mov rdi, r14
test rdi, rdi
je 0x14002b664
mov r12, qword [rdi + 8]
test r12, r12
je 0x14002b60e
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], r14
mov r12, qword [rdi + 0x18]
test r12, r12
je 0x14002b62f
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], r14
mov r12, qword [rdi + 0x28]
test r12, r12
je 0x14002b650
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], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r15d, r15d
js 0x14002b67b
mov qword [rbp + 0x178], r13
mov r13, r14
jmp 0x14002b67b
mov r15d, 0xc0000001
mov rdi, qword [rbp + 0x1d0]
test rdi, rdi
je 0x14002b6a2
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 + 0x1d0], r14
test r13, r13
je 0x14002b71e
mov rdi, qword [r13 + 8]
test rdi, rdi
je 0x14002b6c8
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 [r13 + 8], r14
mov rdi, qword [r13 + 0x18]
test rdi, rdi
je 0x14002b6e9
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 [r13 + 0x18], r14
mov rdi, qword [r13 + 0x28]
test rdi, rdi
je 0x14002b70a
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 [r13 + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r13d, 0x10000000
or r15d, r13d
mov dword [rsp + 0x60], r15d
jl 0x14002bafa
mov r12, qword [rbp + 0x178]
mov ecx, dword [r12]
mov edi, dword [r12 + 0x20]
add ecx, 4
mov edx, dword [r12 + 0x10]
cmp ecx, 4
jb 0x14002b882
lea eax, [rcx + 4]
cmp eax, ecx
jb 0x14002b882
lea ecx, [rax + rdx]
cmp ecx, eax
jb 0x14002b882
lea eax, [rcx + 4]
cmp eax, ecx
jb 0x14002b882
lea ecx, [rax + rdi]
cmp ecx, eax
jb 0x14002b882
mov dword [rbp + 0x224], ecx
mov edi, ecx
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 0x14002b7b7
mov r15d, 0xc0000017
mov r8d, 0xc0000095
jmp 0x14002b88b
mov eax, dword [r12]
lea r15, [rdi + 4]
mov dword [rdi], eax
cmp r15, rdi
jb 0x14002b85a
mov r8d, dword [r12]
mov rcx, r15
mov rdx, qword [r12 + 8]
call sub.msvcrt.dll_memcpy
mov ecx, dword [r12]
add rcx, r15
cmp rcx, r15
jb 0x14002b85a
mov eax, dword [r12 + 0x10]
lea r15, [rcx + 4]
mov dword [rcx], eax
cmp r15, rcx
jb 0x14002b85a
mov r8d, dword [r12 + 0x10]
mov rcx, r15
mov rdx, qword [r12 + 0x18]
call sub.msvcrt.dll_memcpy
mov ecx, dword [r12 + 0x10]
add rcx, r15
cmp rcx, r15
jb 0x14002b85a
mov eax, dword [r12 + 0x20]
lea r15, [rcx + 4]
mov dword [rcx], eax
cmp r15, rcx
jb 0x14002b85a
mov r8d, dword [r12 + 0x20]
mov rcx, r15
mov rdx, qword [r12 + 0x28]
call sub.msvcrt.dll_memcpy
mov eax, dword [r12 + 0x20]
add rax, r15
cmp rax, r15
jb 0x14002b85a
mov eax, dword [rbp + 0x224]
mov r15d, r14d
mov qword [rbp + 0x58], rdi
mov rdi, r14
mov dword [rbp - 0x50], eax
jmp 0x14002b860
mov r15d, 0xc0000095
test rdi, rdi
je 0x14002b7ac
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x14002b7ac
mov r8d, 0xc0000095
mov r15d, r8d
or r15d, r13d
mov dword [rsp + 0x60], r15d
jl 0x14002bafa
mov qword [rbp + 0x370], r14
mov dword [rbp + 0x228], r14d
mov qword [rbp + 0x378], r14
mov dword [rbp + 0x22c], r14d
mov dword [rbp + 0x2f4], 0x3c
mov eax, 0x48
mov dword [rbp + 0x328], eax
mov dword [rbp + 0x32c], eax
lea r12d, [rax - 0x47]
cmp qword [rbp - 0x58], r14
jne 0x14002b8ea
mov r15d, 0xc000000d
mov dword [rsp + 0x60], r15d
jmp 0x14002b9cb
cmp dword [rbp - 0x60], r12d
jbe 0x14002b8da
mov rax, qword [rbp - 0x58]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14002b9c3
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x14002b9c3
add edx, r12d
cmp edx, r12d
jb 0x14002b8f7
mov edi, dword [rax]
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14002b9c3
test edi, edi
mov dword [rbp + 0x228], edi
mov rax, r14
cmovne rax, rcx
mov qword [rbp + 0x370], rax
cmp dword [rbp - 0x60], 2
jbe 0x14002b8da
mov rax, qword [rbp - 0x58]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14002b9c3
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x14002b9c3
add edx, r12d
cmp edx, 2
jb 0x14002b94c
mov edx, dword [rax]
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14002b9c3
test edx, edx
mov dword [rbp + 0x22c], edx
mov rax, r14
cmovne rax, rcx
mov qword [rbp + 0x378], rax
lea eax, [rdi + 0x50]
cmp eax, 0x50
jb 0x14002b9c3
lea ecx, [rax + 4]
cmp ecx, eax
jb 0x14002b9c3
lea eax, [rcx + rdx]
cmp eax, ecx
jb 0x14002b9c3
mov dword [rbp + 0x330], eax
mov dword [rsp + 0x60], r14d
mov r15d, r14d
cmp eax, 0x400000
jbe 0x14002b9be
mov r15d, 0x8000ffff
jmp 0x14002baf5
mov dword [rbp + 0x70], eax
jmp 0x14002b9cb
mov r15d, r8d
mov dword [rsp + 0x60], r8d
test r15d, r15d
js 0x14002bafa
mov edi, dword [rbp + 0x70]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x14002b9fe
mov r15d, 0xd0000017
mov rdi, r14
jmp 0x14002ba08
mov rdi, rax
mov qword [rbp - 0x70], rax
mov r15d, r13d
mov dword [rsp + 0x60], r15d
test r15d, r15d
js 0x14002bafa
mov rax, qword [rbp + 0x58]
test rax, rax
jne 0x14002ba2a
mov r15d, 0x80070057
jmp 0x14002baf5
test rdi, rdi
je 0x14002ba1f
mov qword [rbp + 0x428], rax
lea r8, [rbp + 0x380]
mov eax, dword [rbp - 0x50]
lea rdx, [0x1400d6248]
mov dword [rbp + 0x438], eax
mov ecx, r12d
mov eax, dword [rbp + 0x70]
mov dword [rbp + 0x43c], eax
mov qword [rbp + 0x430], rdi
mov dword [rbp + 0x440], r14d
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
jne 0x14002ba9d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [rbp + 0x70]
movzx r15d, ax
or r15d, 0x80070000
test eax, eax
cmovle r15d, eax
mov dword [rsp + 0x60], r15d
test r15d, r15d
js 0x14002bae6
mov r15d, 0x80004005
jmp 0x14002bae1
mov rcx, qword [rbp + 0x380]
lea rdx, str.NtQuerySystemInformation
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14002ba71
xor r9d, r9d
lea rdx, [rbp + 0x428]
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call qword [str._w_v_]
mov edx, dword [rbp + 0x70]
mov r15d, eax
or r15d, r13d
cmovge edx, dword [rbp + 0x43c]
mov dword [rbp + 0x70], edx
mov dword [rsp + 0x60], r15d
cmp r15d, 0xd0000023
jne 0x14002bb02
mov r15d, 0x8007007a
mov dword [rsp + 0x60], r15d
mov r13, r14
jmp 0x14002be89
test r15d, r15d
js 0x14002bafa
mov qword [rbp + 0x78], r14
cmp edx, 4
jae 0x14002bb1b
mov r15d, 0xc000003e
jmp 0x14002be35
mov r13d, dword [rdi]
lea rcx, [rdi + 4]
cmp rcx, rdi
jb 0x14002be2f
lea eax, [rdx - 4]
cmp eax, r13d
jb 0x14002bb10
lea rdi, [rcx + r13]
mov qword [rbp - 0x68], rdi
cmp rdi, rcx
jb 0x14002be2f
lea ecx, [r13 + 4]
cmp ecx, 4
jb 0x14002be2f
mov eax, edx
sub eax, ecx
cmp eax, 4
jb 0x14002bb10
mov r15d, dword [rdi]
lea r8, [rdi + 4]
cmp r8, rdi
jb 0x14002be2f
lea edi, [rcx + 4]
cmp edi, ecx
jb 0x14002be2f
mov eax, edx
sub eax, edi
cmp eax, r15d
jb 0x14002bb10
lea rcx, [r8 + r15]
cmp rcx, r8
jb 0x14002be2f
lea r8d, [r15 + rdi]
cmp r8d, edi
jb 0x14002be2f
mov eax, edx
sub eax, r8d
cmp eax, 4
jb 0x14002bb10
mov r12d, dword [rcx]
lea rax, [rcx + 4]
mov qword [rbp + 0x10], rax
cmp rax, rcx
jb 0x14002be2f
lea ecx, [r8 + 4]
cmp ecx, r8d
jb 0x14002be2f
mov eax, edx
sub eax, ecx
cmp eax, r12d
jb 0x14002bb10
lea edi, [r12 + rcx]
cmp edi, ecx
jb 0x14002be2f
cmp edx, edi
jne 0x14002bb10
lea ecx, [r12 + r15]
mov eax, edx
add ecx, r13d
add rcx, 0xc
cmp rcx, rax
jne 0x14002bb10
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 0x14002bc29
mov r15d, 0xc0000017
jmp 0x14002bd92
mov rax, qword [rbp - 0x70]
add rax, 4
je 0x14002bc76
mov dword [rdi], r13d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rcx, rax
test rax, rax
jne 0x14002bc60
mov r15d, 0xc0000017
jmp 0x14002bd16
mov qword [rdi + 8], rcx
mov rdx, qword [rbp - 0x70]
mov r8, r13
add rdx, 4
call sub.msvcrt.dll_memcpy
jmp 0x14002bc7d
mov dword [rdi], r14d
mov qword [rdi + 8], r14
mov r13, qword [rbp - 0x68]
add r13, 4
je 0x14002bcbb
mov dword [rdi + 0x10], r15d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x14002bc55
mov qword [rdi + 0x18], rax
mov r8, r15
mov rdx, r13
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x14002bcc3
mov dword [rdi + 0x10], r14d
mov qword [rdi + 0x18], r14
mov r15, qword [rbp + 0x10]
test r15, r15
je 0x14002bd04
mov dword [rdi + 0x20], r12d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x14002bc55
mov qword [rdi + 0x28], rax
mov r8, r12
mov rdx, r15
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x14002bd0c
mov dword [rdi + 0x20], r14d
mov qword [rdi + 0x28], r14
mov qword [rbp + 0x78], rdi
mov r15d, r14d
mov rdi, r14
test rdi, rdi
je 0x14002bd92
mov r12, qword [rdi + 8]
test r12, r12
je 0x14002bd3c
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], r14
mov r12, qword [rdi + 0x18]
test r12, r12
je 0x14002bd5d
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], r14
mov r12, qword [rdi + 0x28]
test r12, r12
je 0x14002bd7e
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], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r13, qword [rbp + 0x78]
test r15d, r15d
mov rdi, r14
cmovs rdi, qword [rbp + 0x78]
cmovs r13, r14
mov qword [rbp + 0x48], r13
test rdi, rdi
je 0x14002be38
mov r12, qword [rdi + 8]
test r12, r12
je 0x14002bdd3
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], r14
mov r12, qword [rdi + 0x18]
test r12, r12
je 0x14002bdf4
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], r14
mov r12, qword [rdi + 0x28]
test r12, r12
je 0x14002be15
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], r14
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 + 0x48], r13
jmp 0x14002be38
mov r15d, 0xc0000095
mov r13, r14
or r15d, 0x10000000
mov dword [rsp + 0x60], r15d
jl 0x14002be89
mov qword [rbp + 0xf8], r14
mov rdi, r14
mov qword [rbp + 0x290], r14
test r13, r13
jne 0x14002be69
mov r15d, 0xd000000d
mov dword [rsp + 0x60], r15d
jmp 0x14002be89
mov r13, qword [r13 + 8]
mov qword [rbp + 0x18], r13
test r13, r13
jne 0x14002c034
mov r15d, 0xd000000d
mov dword [rsp + 0x60], r15d
mov r13, qword [rbp + 0x48]
mov rdi, qword [rbp + 0x60]
test rdi, rdi
je 0x14002bea6
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r12, qword [rbp + 0x178]
test r12, r12
je 0x14002bf3a
mov rdi, qword [r12 + 8]
test rdi, rdi
je 0x14002bed9
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 [r12 + 8], r14
mov rdi, qword [r12 + 0x18]
test rdi, rdi
je 0x14002befc
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 [r12 + 0x18], r14
mov rdi, qword [r12 + 0x28]
test rdi, rdi
je 0x14002bf1f
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 [r12 + 0x28], r14
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 [rbp + 0x178], r14
mov rdi, qword [rbp + 0x58]
test rdi, rdi
je 0x14002bf57
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rdi, qword [rbp - 0x70]
test rdi, rdi
je 0x14002bf74
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r13, r13
je 0x14002bff0
mov rdi, qword [r13 + 8]
test rdi, rdi
je 0x14002bf9a
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 [r13 + 8], r14
mov rdi, qword [r13 + 0x18]
test rdi, rdi
je 0x14002bfbb
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 [r13 + 0x18], r14
mov rdi, qword [r13 + 0x28]
test rdi, rdi
je 0x14002bfdc
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 [r13 + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rdi, qword [rbp - 0x20]
test rdi, rdi
je 0x14002c00d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r15d, r15d
js 0x14002caaa
mov r8d, 1
cmp dword [rbp + 0xa8], r8d
jae 0x14002c74f
mov r15d, 0xc004d501
jmp 0x14002a640
mov rax, qword [rbp + 0x48]
cmp dword [rax], r14d
jne 0x14002c050
mov r15d, 0xd000000d
mov r13, rax
mov dword [rsp + 0x60], r15d
jmp 0x14002be89
mov r15d, dword [rax]
mov dword [rbp - 0x30], r14d
test r15, r15
je 0x14002c59d
add r15, 0xfffffffffffffff8
mov qword [rbp - 0x68], r15
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp + 0x10], rax
mov r12, rax
test rax, rax
je 0x14002c596
mov r8, r15
mov qword [rbp + 0x920], rsi
mov dword [rbp - 0x28], r14d
mov dl, r14b
mov byte [rsp + 0x64], dl
mov r9, r13
mov r13, rax
mov r11d, r14d
and r8d, 7
je 0x14002c195
or dword [rbp - 0x48], 0xffffffff
mov ecx, r14d
mov dword [rbp - 0x7c], ecx
mov r10d, r14d
mov dword [rbp - 0x38], r14d
test r8d, r8d
je 0x14002c111
mov edi, 0x38
lea ebx, [rdi - 0x37]
movzx eax, byte [r9]
inc r9
cmp r10d, 4
jge 0x14002c0ec
lea ecx, [rdi - 0x20]
shl eax, cl
mov ecx, dword [rbp - 0x7c]
or r11d, eax
jmp 0x14002c0f8
mov ecx, edi
shl eax, cl
mov ecx, dword [rbp - 0x7c]
or ecx, eax
mov dword [rbp - 0x7c], ecx
add r10d, ebx
sub edi, 8
cmp r10d, r8d
jl 0x14002c0d2
mov dword [rbp - 0x38], r11d
movabs rbx, 0xc81ecb17b1b54a58
xor r11d, 0x92f65a5
mov edi, ecx
xor edi, 0x699a899c
mov dword [rbp - 0x28], r11d
mov dword [rbp - 0x48], edi
mov eax, r14d
test r8d, r8d
je 0x14002c15b
lea r10, [r13 + 1]
cmp eax, 4
jge 0x14002c141
rol r11d, 8
mov ecx, r11d
jmp 0x14002c146
rol edi, 8
mov ecx, edi
inc eax
mov byte [r13], cl
mov r13, r10
cmp eax, r8d
jl 0x14002c12f
mov r11d, dword [rbp - 0x28]
mov edi, dword [rbp - 0x48]
cmp r8d, 4
jbe 0x14002c175
mov ecx, 8
sub ecx, r8d
shl ecx, 3
shr edi, cl
shl edi, cl
mov dword [rbp - 0x48], edi
jmp 0x14002c1a1
mov edi, r14d
mov dword [rbp - 0x48], r14d
jae 0x14002c1a1
mov ecx, 4
sub ecx, r8d
shl ecx, 3
shr r11d, cl
shl r11d, cl
mov dword [rbp - 0x28], r11d
jmp 0x14002c1a1
or dword [rbp - 0x7c], 0xffffffff
mov dword [rbp - 0x38], r14d
mov dword [rbp - 0x48], r14d
mov rax, r15
shr rax, 3
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14002c4ff
movzx eax, word [rbp + 0x922]
lea r15, [r13 + 7]
mov r12d, dword [rbp + 0x924]
lea r14, [r9 + 2]
mov r13, qword [rbp + 0x50]
mov ebx, dword [rbp - 0x7c]
mov edx, dword [rbp - 0x38]
mov dword [rbp - 0x78], eax
movzx eax, si
movzx r8d, r12w
mov dword [rsp + 0x78], eax
mov dword [rbp - 0x80], r8d
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 edi, r9d
xor edi, r11d
xor edi, esi
xor edi, r12d
mov ecx, edi
mov eax, edi
sub ecx, esi
rol eax, 0xa
rol ecx, 5
imul ecx, r8d
add ecx, eax
movzx eax, word [rbp + 0x922]
xor r11d, ecx
lea ecx, [r11 + r12]
ror ecx, 9
imul ecx, eax
mov eax, r11d
rol eax, 2
sub ecx, eax
xor edi, ecx
mov ecx, edi
mov eax, edi
sub ecx, r8d
shr eax, 0xd
imul ecx, dword [rsp + 0x78]
sub ecx, eax
movzx eax, word [rbp + 0x926]
xor r11d, ecx
movzx ecx, word [rbp + 0x922]
xor ecx, r11d
rol ecx, 6
imul ecx, eax
mov eax, r11d
rol eax, 2
sub ecx, eax
mov eax, r12d
xor edi, ecx
mov ecx, edi
xor ecx, esi
sub eax, ecx
xor r11d, eax
mov eax, r8d
xor eax, r11d
mov ecx, r11d
imul eax, dword [rbp - 0x78]
ror ecx, 6
xor ecx, eax
xor edi, ecx
mov eax, edi
rol eax, 2
lea ecx, [rdi + r12]
ror ecx, 0xf
imul ecx, dword [rsp + 0x78]
add ecx, eax
movzx eax, word [rbp + 0x926]
xor r11d, ecx
mov ecx, r11d
sub ecx, esi
ror ecx, 0xe
imul ecx, eax
mov eax, r11d
rol eax, 8
sub ecx, eax
xor edi, ecx
mov ecx, edi
mov eax, edi
xor ecx, esi
ror eax, 0xa
ror ecx, 0xc
imul ecx, r8d
xor ecx, eax
movzx eax, word [rbp + 0x922]
xor r11d, ecx
movzx ecx, word [rbp + 0x926]
xor ecx, r11d
imul ecx, eax
mov eax, r11d
shr eax, 0xa
xor ecx, eax
xor edi, ecx
movzx ecx, word [rbp + 0x926]
mov eax, edi
not eax
ror eax, 5
add eax, dword [rsp + 0x78]
imul eax, ecx
xor r11d, eax
mov r8d, r11d
sub r8d, ecx
xor r8d, edi
xor r8d, esi
xor ecx, r8d
mov eax, r8d
rol ecx, 2
imul ecx, dword [rbp - 0x80]
shr eax, 2
add ecx, eax
movzx eax, word [rbp + 0x922]
xor r11d, ecx
mov ecx, r11d
sub ecx, r12d
ror ecx, 6
imul ecx, eax
mov eax, r11d
rol eax, 7
add ecx, eax
mov eax, dword [rbp - 0x80]
xor r8d, ecx
xor eax, r8d
mov ecx, r8d
imul eax, dword [rsp + 0x78]
ror ecx, 9
add ecx, eax
movzx eax, word [rbp + 0x926]
xor r11d, ecx
movzx ecx, word [rbp + 0x922]
xor ecx, r11d
rol ecx, 5
imul ecx, eax
mov eax, r11d
rol eax, 7
add ecx, eax
xor r8d, ecx
movzx ecx, word [rbp + 0x922]
mov edi, r8d
xor edi, r11d
xor edi, esi
xor edi, r12d
mov eax, edi
ror eax, 3
sub eax, ecx
imul eax, dword [rbp - 0x80]
xor r8d, eax
mov ecx, r8d
mov eax, r8d
sub ecx, r12d
ror eax, 6
ror ecx, 1
imul ecx, dword [rsp + 0x78]
sub ecx, eax
movzx eax, word [rbp + 0x926]
xor edi, ecx
lea ecx, [rdi + rsi]
rol ecx, 3
imul ecx, eax
mov eax, edi
rol eax, 0xe
add ecx, eax
xor r8d, ecx
mov eax, r8d
ror eax, 0xe
lea ecx, [r8 + rsi]
rol ecx, 0xf
imul ecx, dword [rbp - 0x80]
sub ecx, eax
movzx eax, word [rbp + 0x922]
xor edi, ecx
mov ecx, edi
xor ecx, dword [rsp + 0x78]
imul ecx, eax
mov eax, edi
shr eax, 3
xor ecx, eax
xor r8d, ecx
mov ecx, r8d
mov eax, r8d
rol eax, 2
xor ecx, r12d
rol ecx, 4
xor r8d, ebx
imul ecx, dword [rsp + 0x78]
mov ebx, r9d
mov dword [rbp - 0x48], r8d
mov r8d, dword [rbp - 0x80]
xor ecx, eax
xor ecx, edx
mov edx, r10d
xor edi, ecx
mov ecx, 1
mov dword [rbp - 0x28], edi
mov byte [r15 - 4], dil
mov al, byte [rbp - 0x48]
ror dword [rbp - 0x28], 8
mov byte [r15], al
lea r15, [r15 + 8]
ror dword [rbp - 0x48], 8
mov al, byte [rbp - 0x28]
mov byte [r15 - 0xd], al
mov al, byte [rbp - 0x48]
ror dword [rbp - 0x28], 8
mov byte [r15 - 9], al
ror dword [rbp - 0x48], 8
mov al, byte [rbp - 0x28]
mov byte [r15 - 0xe], al
ror dword [rbp - 0x28], 8
mov al, byte [rbp - 0x48]
mov byte [r15 - 0xa], al
ror dword [rbp - 0x48], 8
mov al, byte [rbp - 0x28]
mov byte [r15 - 0xf], al
mov al, byte [rbp - 0x48]
mov byte [r15 - 0xb], al
mov r11d, dword [rbp - 0x28]
mov edi, dword [rbp - 0x48]
ror r11d, 8
ror edi, 8
mov dword [rbp - 0x28], r11d
mov dword [rbp - 0x48], edi
sub r13, rcx
jne 0x14002c1e7
mov dl, byte [rsp + 0x64]
movabs rbx, 0xc81ecb17b1b54a58
mov r15, qword [rbp - 0x68]
xor r14d, r14d
mov r12, qword [rbp + 0x10]
jmp 0x14002c504
mov ecx, 1
mov rax, r14
test r15, r15
je 0x14002c518
xor dl, byte [rax + r12]
add rax, rcx
cmp rax, r15
jb 0x14002c50c
mov rcx, qword [rbp + 0x18]
movzx eax, dl
cmp rax, qword [r15 + rcx]
je 0x14002c534
mov rdi, qword [rbp + 0xf8]
mov r15d, 0xc004d501
jmp 0x14002c54c
mov rdi, r12
mov qword [rbp + 0xf8], r12
mov qword [rbp + 0x290], r15
mov r12, r14
mov r15d, dword [rbp - 0x30]
test r12, r12
je 0x14002c56c
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 + 0xf8]
test r15d, r15d
js 0x14002c59d
mov ecx, dword [rbp + 0x290]
mov r12, rdi
mov qword [rbp - 0x20], rdi
mov r15d, 0x10000000
mov rdi, r14
mov dword [rbp + 0xc0], ecx
mov qword [rbp + 0xf8], r14
jmp 0x14002c5ac
mov rdi, qword [rbp + 0xf8]
mov ecx, dword [rbp + 0xc0]
mov r15d, 0xd0000001
mov r12, r14
mov dword [rsp + 0x60], r15d
test rdi, rdi
je 0x14002c5d7
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 + 0xc0]
mov qword [rbp + 0xf8], r14
test r15d, r15d
js 0x14002be85
cmp ecx, 4
jae 0x14002c5f0
mov r15d, 0xc000003e
jmp 0x14002c745
mov r9d, dword [r12]
lea rdx, [r12 + 4]
mov dword [rbp - 0x78], r9d
cmp rdx, r12
jb 0x14002c73f
lea eax, [rcx - 4]
cmp eax, 4
jb 0x14002c5e5
mov r15d, dword [rdx]
lea rdi, [rdx + 4]
cmp rdi, rdx
jb 0x14002c73f
lea eax, [rcx - 8]
cmp eax, r15d
jb 0x14002c5e5
lea eax, [r15 + 8]
cmp eax, 8
jb 0x14002c73f
mov r8d, ecx
lea rdx, [rdi + r15]
lea rax, [r12 + r8]
cmp rax, rdx
jb 0x14002c5e5
mov rax, r12
sub rax, r15
sub rax, rdi
add rax, r8
cmp rax, 8
jae 0x14002c5e5
mov dword [rbp - 0x50], r14d
mov r12, r14
mov r8d, r14d
test rdi, rdi
je 0x14002c6d1
mov rcx, rdi
cmp rdx, rdi
jb 0x14002c73f
jbe 0x14002c6cc
lea rax, [rcx + 4]
cmp rax, rcx
jb 0x14002c73f
cmp rax, rdx
ja 0x14002c6b9
mov eax, dword [rcx]
add eax, 4
cmp eax, 4
jb 0x14002c6c4
mov dword [rbp + 0x3f0], eax
mov r9d, eax
add r9, rcx
cmp r9, rcx
jb 0x14002c73f
mov rcx, r9
cmp r9, rdx
ja 0x14002c6b9
inc r8d
mov dword [rbp - 0x50], r8d
cmp rcx, rdx
jae 0x14002c6cf
jmp 0x14002c672
mov r15d, 0xc000000d
jmp 0x14002c745
mov r15d, 0xc0000095
jmp 0x14002c72a
cmp rcx, rdx
jne 0x14002c6b9
test r15d, r15d
je 0x14002c6fd
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r12, rax
test rax, rax
jne 0x14002c6fd
mov r15d, 0xc0000017
jmp 0x14002c72a
test rdi, rdi
je 0x14002c710
mov r8, r15
mov rdx, rdi
mov rcx, r12
call sub.msvcrt.dll_memcpy
mov eax, dword [rbp - 0x50]
mov dword [rbp + 0xa8], eax
mov qword [rbp + 0xb0], r12
mov dword [rbp + 0xac], r15d
mov r15d, r14d
test r15d, r15d
js 0x14002c745
mov eax, dword [rbp - 0x78]
cmp eax, dword [rbp + 0xa8]
je 0x14002c745
jmp 0x14002c5e5
mov r15d, 0xc0000095
bts r15d, 0x1c
jmp 0x14002be80
cmp qword [rbp + 0xb0], r14
jne 0x14002c76b
mov r15d, 0xc000000d
mov dword [rsp + 0x60], r15d
mov r10d, 0xc0000095
jmp 0x14002c7c5
cmp dword [rbp + 0xa8], r14d
jbe 0x14002c758
mov rdi, qword [rbp + 0xb0]
mov ecx, dword [rdi]
lea rdx, [rdi + 4]
cmp rdx, rdi
jb 0x14002c7b7
test ecx, ecx
mov dword [rbp + 0x3b4], ecx
mov rax, r14
cmovne rax, rdx
mov qword [rbp + 0x498], rax
mov dword [rsp + 0x60], r14d
mov r15d, r14d
cmp ecx, 4
jne 0x14002a75c
mov eax, dword [rax]
mov dword [rbp + 0x98], eax
jmp 0x14002c763
mov r10d, 0xc0000095
mov r15d, r10d
mov dword [rsp + 0x60], r10d
test r15d, r15d
js 0x14002caaa
mov r15d, dword [rbp + 0x98]
mov r11d, 0x8007007a
cmp r15d, 0xd0000023
cmove r15d, r11d
mov dword [rsp + 0x60], r15d
mov dword [rbp + 0x98], r15d
cmp r15d, r11d
je 0x14002c800
test r15d, r15d
js 0x14002caaa
cmp dword [rbp + 0xa8], 6
jne 0x14002c029
cmp qword [rbp + 0xb0], r14
jne 0x14002c823
mov r15d, 0xc000000d
mov dword [rsp + 0x60], r15d
jmp 0x14002c88e
mov rax, qword [rbp + 0xb0]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14002c886
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x14002c886
add edx, r8d
cmp edx, r8d
jb 0x14002c82d
mov ecx, dword [rax]
lea rdx, [rax + 4]
cmp rdx, rax
jb 0x14002c886
test ecx, ecx
mov dword [rbp + 0x3b0], ecx
mov rax, r14
cmovne rax, rdx
mov qword [rbp + 0x4a0], rax
mov dword [rsp + 0x60], r14d
mov r15d, r14d
cmp ecx, 8
jne 0x14002a75c
mov rax, qword [rax]
mov qword [rbp + 0x388], rax
jmp 0x14002c88e
mov r15d, r10d
mov dword [rsp + 0x60], r10d
test r15d, r15d
js 0x14002caaa
cmp qword [rbp + 0xb0], r14
jne 0x14002c8ad
mov r15d, 0xc000000d
mov dword [rsp + 0x60], r15d
jmp 0x14002c916
mov rax, qword [rbp + 0xb0]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14002c90e
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x14002c90e
add edx, r8d
cmp edx, 2
jb 0x14002c8b7
mov ecx, dword [rax]
lea rdx, [rax + 4]
cmp rdx, rax
jb 0x14002c90e
test ecx, ecx
mov dword [rbp + 0x318], ecx
mov rax, r14
cmovne rax, rdx
mov qword [rbp + 0x4a8], rax
mov dword [rsp + 0x60], r14d
mov r15d, r14d
cmp ecx, 4
jne 0x14002a75c
mov eax, dword [rax]
mov dword [rbp + 0x234], eax
jmp 0x14002c916
mov r15d, r10d
mov dword [rsp + 0x60], r10d
test r15d, r15d
js 0x14002caaa
cmp qword [rbp + 0xb0], r14
jne 0x14002c933
mov r15d, 0xc000000d
jmp 0x14002a640
mov rax, qword [rbp + 0xb0]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14002cb04
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x14002cb04
add edx, r8d
cmp edx, 3
jb 0x14002c93d
mov edi, dword [rax]
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14002cb04
test edi, edi
mov dword [rbp + 0x314], edi
mov r9, r14
cmovne r9, rcx
mov qword [rbp + 0x468], r9
mov rax, qword [rbp + 0xb0]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14002c9e6
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x14002c9e6
add edx, r8d
cmp edx, 4
jb 0x14002c98f
mov ecx, dword [rax]
lea rdx, [rax + 4]
cmp rdx, rax
jb 0x14002c9e6
test ecx, ecx
mov dword [rbp + 0x310], ecx
mov rax, r14
cmovne rax, rdx
mov qword [rbp + 0x470], rax
mov dword [rsp + 0x60], r14d
mov r15d, r14d
cmp ecx, 4
jne 0x14002a75c
mov eax, dword [rax]
mov dword [rbp + 0x230], eax
jmp 0x14002c9ee
mov r15d, r10d
mov dword [rsp + 0x60], r10d
test r15d, r15d
js 0x14002caaa
mov rax, qword [rbp + 0xb0]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14002ca58
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x14002ca58
add edx, r8d
cmp edx, 5
jb 0x14002ca01
mov ecx, dword [rax]
lea rdx, [rax + 4]
cmp rdx, rax
jb 0x14002ca58
test ecx, ecx
mov dword [rbp + 0xb8], ecx
mov rax, r14
cmovne rax, rdx
mov qword [rbp + 0x478], rax
mov dword [rsp + 0x60], r14d
mov r15d, r14d
cmp ecx, 4
jne 0x14002a75c
mov eax, dword [rax]
mov dword [rbp + 0x120], eax
jmp 0x14002ca60
mov r15d, r10d
mov dword [rsp + 0x60], r10d
test r15d, r15d
js 0x14002caaa
mov rax, qword [rbp + 0x388]
cmp qword [rbp + 0x1c8], rax
jne 0x14002c029
mov eax, dword [rbp + 0x120]
mov ecx, dword [rbp + 0x230]
mov dword [rbp + 0x88], eax
mov eax, dword [rbp + 0x234]
mov dword [rbp + 0x128], eax
mov dword [rbp + 0xd8], ecx
cmp ecx, 4
jbe 0x14002cab9
mov r15d, r11d
mov dword [rsp + 0x60], r11d
mov r12, qword [rsp + 0x70]
mov r13, qword [rsp + 0x68]
jmp 0x14002a7c8
cmp edi, 4
ja 0x14002caa2
mov rcx, qword [rbp + 0x80]
mov r8, rdi
mov rdx, r9
call sub.msvcrt.dll_memcpy
mov r12, qword [rsp + 0x70]
mov r13, qword [rsp + 0x68]
test r15d, r15d
js 0x14002a7c8
cmp dword [rbp + 0x98], r14d
cmovne r15d, dword [rbp + 0x98]
jmp 0x14002a7c3
or qword [rbp + 0x180], 0xffffffffffffffff
jmp 0x14002a7b3
mov r15d, r10d
mov dword [rsp + 0x60], r10d
jmp 0x14002caaa
mov rax, qword [0x140113138]
call qword [str._w_v_]
mov edi, dword [0x14011aa18]
lea rcx, [rbp + 0x4b0]
xor edx, edx
mov qword [0x14011b3f8], rax
mov dword [rsp + 0x68], edi
lea r8d, [rdx + 0x70]
call sub.msvcrt.dll_memset
xor eax, eax
mov qword [rbp + 0x48], r14
xor edx, edx
mov qword [rbp + 0x930], rax
lea rcx, [rbp + 0x9f0]
mov qword [rbp + 0x938], rax
mov qword [rbp + 0x50], r14
lea r12d, [rax + 1]
lea r8d, [rax + 0x2c]
mov dword [rbp + 0x124], r12d
call sub.msvcrt.dll_memset
mov qword [rbp + 0x78], r14
xor eax, eax
lock cmpxchg dword [0x14011b404], r12d
jne 0x14002cb77
mov eax, dword [0x14011b400]
test eax, eax
jne 0x14002d1a0
mov dword [rbp - 0x38], r14d
mov dword [rsp + 0x78], r14d
mov dword [rbp - 0x80], r14d
mov qword [rbp + 0x188], r14
mov qword [rbp + 0x298], r14
mov dword [rbp - 0x78], r14d
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 - 0x68], rax
test rax, rax
je 0x14002d109
mov r15d, 0x67
mov byte [rsp + 0x64], r14b
mov edi, r14d
mov dword [rbp - 4], r14d
mov r12d, r14d
mov dword [rbp + 0x40], r14d
mov r13d, r14d
lea rsi, [rax + 7]
lea r14d, [r15 - 0x66]
or ecx, 0xffffffff
lea rbx, [0x1400ddba2]
movzx eax, byte [rbx - 1]
movzx r11d, byte [rbx - 2]
movzx r10d, byte [rbx + 2]
shl r11d, 8
or r11d, eax
shl r10d, 8
movzx eax, byte [rbx]
lea rbx, [rbx + 8]
shl r11d, 8
or r11d, eax
movzx eax, byte [rbx - 7]
shl r11d, 8
or r11d, eax
movzx eax, byte [rbx - 5]
or r10d, eax
xor r13d, r11d
movzx eax, byte [rbx - 4]
shl r10d, 8
or r10d, eax
movzx eax, byte [rbx - 3]
shl r10d, 8
or r10d, eax
xor r12d, r10d
xor r12d, r13d
xor r12d, 0xac987321
lea eax, [r12 + 0x54969fa2]
rol eax, 5
imul edx, eax, 0x137f
mov eax, r12d
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 r12d, edx
imul edx, r12d, 0x605e
mov eax, r12d
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 r12d, edx
mov edx, r12d
xor edx, 0xab69605e
sub eax, edx
xor r13d, eax
mov eax, r13d
mov r8d, r13d
xor eax, 0x137f
ror r8d, 6
imul edx, eax, 0xab69
xor r8d, edx
xor r12d, r8d
mov r8d, 0xab69605e
lea eax, [r12 + 0x7f1137f]
ror eax, 0xf
imul edx, eax, 0x605e
mov eax, r12d
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 r12d, edx
mov eax, r12d
xor eax, r8d
ror eax, 0xc
imul edx, eax, 0x137f
mov eax, r12d
ror eax, 0xa
xor edx, eax
xor r13d, edx
mov eax, r13d
xor eax, 0x7f1
imul edx, eax, 0xab69
mov eax, r13d
shr eax, 0xa
xor edx, eax
xor r12d, edx
mov eax, r12d
not eax
ror eax, 5
add eax, 0x605e
imul eax, eax, 0x7f1
xor r13d, eax
lea r9d, [r13 - 0x7f1]
xor r9d, r12d
xor r9d, r8d
mov eax, r9d
xor eax, 0x7f1
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, 0xab69
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
imul edx, eax, 0x137f
sub edx, 0xd0dd417
xor r9d, edx
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, ecx
mov dword [rbp - 4], r9d
mov ecx, r10d
xor edx, eax
xor edx, edi
mov edi, r11d
xor r8d, edx
mov dword [rbp + 0x40], r8d
mov byte [rsi - 4], r8b
mov al, byte [rbp - 4]
ror dword [rbp + 0x40], 8
mov byte [rsi], al
lea rsi, [rsi + 8]
ror dword [rbp - 4], 8
mov al, byte [rbp + 0x40]
mov byte [rsi - 0xd], al
mov al, byte [rbp - 4]
ror dword [rbp + 0x40], 8
mov byte [rsi - 9], al
ror dword [rbp - 4], 8
mov al, byte [rbp + 0x40]
mov byte [rsi - 0xe], al
ror dword [rbp + 0x40], 8
mov al, byte [rbp - 4]
mov byte [rsi - 0xa], al
ror dword [rbp - 4], 8
mov al, byte [rbp + 0x40]
mov byte [rsi - 0xf], al
mov al, byte [rbp - 4]
mov byte [rsi - 0xb], al
mov r13d, dword [rbp + 0x40]
mov r12d, dword [rbp - 4]
ror r13d, 8
ror r12d, 8
mov dword [rbp + 0x40], r13d
mov dword [rbp - 4], r12d
sub r15, r14
jne 0x14002cc03
mov cl, byte [rsp + 0x64]
xor r14d, r14d
mov edi, dword [rsp + 0x68]
mov eax, r14d
mov r15d, dword [rsp + 0x60]
movabs rbx, 0xc81ecb17b1b54a58
mov r13, qword [rbp - 0x68]
movabs rsi, 0x7f1137fab69605e
lea edx, [r14 + 1]
mov r8d, 0x338
xor cl, byte [rax + r13]
add rax, rdx
cmp rax, r8
jb 0x14002cf55
movzx eax, cl
cmp rax, qword [0x1400dded8]
je 0x14002cf75
mov r12d, 0xc004d501
jmp 0x14002cf8a
mov r12d, dword [rbp - 0x78]
mov qword [rbp + 0x188], r13
mov r13, r14
mov qword [rbp + 0x298], r8
test r13, r13
je 0x14002cfa3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r12d, r12d
js 0x14002d109
mov rax, qword [rbp + 0x298]
lea r13, [0x14011aa20]
mov r12, qword [rbp + 0x188]
xor edx, edx
mov rcx, r13
lea r8d, [rdx + 0x60]
mov byte [rax + r12 - 1], r14b
call sub.msvcrt.dll_memset
cmp byte [r12], r14b
je 0x14002d102
mov rdx, r12
or rax, 0xffffffffffffffff
inc rax
cmp word [r12 + rax*2], r14w
jne 0x14002cfe5
lea r12, [r12 + rax*2]
mov eax, dword [rbp - 0x80]
lea rcx, [rax + rax*2]
lea r13, [r13 + rcx*8]
xor ecx, ecx
mov r8, r13
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
je 0x14002d109
mov rax, qword [r13]
mov edx, 0x5a4d
mov ecx, r14d
mov dword [rsp + 0x78], ecx
cmp word [rax], dx
je 0x14002d032
mov ecx, 0xc000007b
mov dword [rsp + 0x78], ecx
jmp 0x14002d083
movsxd rdx, dword [rax + 0x3c]
cmp edx, 0x10000000
jae 0x14002d027
add rdx, qword [r13]
cmp rdx, qword [r13]
jb 0x14002d027
cmp dword [rdx], 0x4550
jne 0x14002d027
movzx eax, word [rdx + 0x18]
mov r8d, 0x10b
sub ax, r8w
mov r8d, 0xfeff
test r8w, ax
je 0x14002d071
mov ecx, 0xc000000d
jmp 0x14002d02c
mov rax, qword [rdx + 0x88]
mov qword [r13 + 0xc], rax
mov eax, dword [rdx + 0x50]
mov dword [r13 + 8], eax
mov eax, dword [r12 + 2]
mov edx, r14d
add r12, 6
mov dword [rbp - 0x78], eax
mov dword [rbp - 0x50], edx
test eax, eax
je 0x14002d0ee
mov r8, r12
or rax, 0xffffffffffffffff
inc rax
cmp byte [r12 + rax], r14b
jne 0x14002d0a0
inc r12
add r12, rax
test ecx, ecx
js 0x14002d0da
mov rcx, qword [r13]
mov rdx, r8
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14002d102
mov ecx, dword [rbp - 0x38]
lea rdx, [0x1401130a0]
mov qword [rdx + rcx*8], rax
mov ecx, dword [rsp + 0x78]
mov edx, dword [rbp - 0x50]
mov eax, 1
add dword [rbp - 0x38], eax
add edx, eax
mov dword [rbp - 0x50], edx
cmp edx, dword [rbp - 0x78]
jb 0x14002d099
jmp 0x14002d0f3
mov eax, 1
add dword [rbp - 0x80], eax
lea r13, [0x14011aa20]
jmp 0x14002cfd4
mov r12d, dword [rsp + 0x78]
jmp 0x14002d10f
mov r12d, 0xc000007a
cmp qword [rbp + 0x188], r14
je 0x14002d130
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]
test r12d, r12d
jns 0x14002d194
mov eax, 1
lea r12, [0x14011aa20]
lea r13d, [rax + 3]
cmp qword [r12], r14
je 0x14002d15a
mov rcx, qword [r12]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, 1
add r12, 0x18
sub r13, rax
jne 0x14002d145
xor edx, edx
lea r8d, [r13 + 0x60]
lea rcx, [0x14011aa20]
call sub.msvcrt.dll_memset
mov r8d, 0x170
lea rdx, [0x1400c92d0]
lea rcx, [0x1401130a0]
call sub.msvcrt.dll_memcpy
lea r12d, [r13 + 1]
jmp 0x14002d1a9
mov eax, dword [0x14011b400]
mov r12d, 1
add eax, r12d
mov dword [0x14011b400], eax
xor ecx, ecx
mov dword [rsp + 0x7c], r14d
mov eax, r14d
mov dword [rbp + 0x80], r14d
xchg dword [0x14011b404], eax
xor eax, eax
mov dword [rbp + 0xe30], ecx
mov qword [rbp + 0x248], rax
mov qword [rbp + 0x250], rax
mov qword [rbp + 0x258], rax
mov qword [rbp + 0x9a0], rax
mov qword [rbp + 0x9a8], rax
mov word [rbp + 0xe34], cx
mov qword [rbp + 0x1b8], r14
xor eax, eax
lock cmpxchg dword [0x14011b404], r12d
jne 0x14002d1f9
mov eax, dword [0x14011b400]
test eax, eax
jne 0x14002d81c
mov dword [rbp - 0x38], r14d
mov dword [rsp + 0x78], r14d
mov dword [rbp - 0x80], r14d
mov qword [rbp + 0x158], r14
mov qword [rbp + 0x2a0], r14
mov dword [rbp - 0x78], r14d
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 - 0x68], rax
test rax, rax
je 0x14002d789
mov r15d, 0x67
mov byte [rsp + 0x64], r14b
mov edi, r14d
mov dword [rbp + 8], r14d
mov r12d, r14d
mov dword [rbp + 0x38], r14d
mov r13d, r14d
lea rsi, [rax + 7]
lea r14d, [r15 - 0x66]
or ecx, 0xffffffff
lea rbx, [0x1400ddba2]
movzx eax, byte [rbx - 1]
movzx r11d, byte [rbx - 2]
movzx r10d, byte [rbx + 2]
shl r11d, 8
or r11d, eax
shl r10d, 8
movzx eax, byte [rbx]
lea rbx, [rbx + 8]
shl r11d, 8
or r11d, eax
movzx eax, byte [rbx - 7]
shl r11d, 8
or r11d, eax
movzx eax, byte [rbx - 5]
or r10d, eax
xor r13d, r11d
movzx eax, byte [rbx - 4]
shl r10d, 8
or r10d, eax
movzx eax, byte [rbx - 3]
shl r10d, 8
or r10d, eax
xor r12d, r10d
xor r12d, r13d
xor r12d, 0xac987321
lea eax, [r12 + 0x54969fa2]
rol eax, 5
imul edx, eax, 0x137f
mov eax, r12d
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 r12d, edx
imul edx, r12d, 0x605e
mov eax, r12d
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 r12d, edx
mov edx, r12d
xor edx, 0xab69605e
sub eax, edx
xor r13d, eax
mov eax, r13d
mov r8d, r13d
xor eax, 0x137f
ror r8d, 6
imul edx, eax, 0xab69
xor r8d, edx
xor r12d, r8d
mov r8d, 0xab69605e
lea eax, [r12 + 0x7f1137f]
ror eax, 0xf
imul edx, eax, 0x605e
mov eax, r12d
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 r12d, edx
mov eax, r12d
xor eax, r8d
ror eax, 0xc
imul edx, eax, 0x137f
mov eax, r12d
ror eax, 0xa
xor edx, eax
xor r13d, edx
mov eax, r13d
xor eax, 0x7f1
imul edx, eax, 0xab69
mov eax, r13d
shr eax, 0xa
xor edx, eax
xor r12d, edx
mov eax, r12d
not eax
ror eax, 5
add eax, 0x605e
imul eax, eax, 0x7f1
xor r13d, eax
lea r9d, [r13 - 0x7f1]
xor r9d, r12d
xor r9d, r8d
mov eax, r9d
xor eax, 0x7f1
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, 0xab69
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
imul edx, eax, 0x137f
sub edx, 0xd0dd417
xor r9d, edx
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, ecx
mov dword [rbp + 8], r9d
mov ecx, r10d
xor edx, eax
xor edx, r8d
xor edx, edi
mov edi, r11d
mov dword [rbp + 0x38], edx
mov byte [rsi - 4], dl
mov al, byte [rbp + 8]
ror dword [rbp + 0x38], 8
mov byte [rsi], al
lea rsi, [rsi + 8]
ror dword [rbp + 8], 8
mov al, byte [rbp + 0x38]
mov byte [rsi - 0xd], al
mov al, byte [rbp + 8]
ror dword [rbp + 0x38], 8
mov byte [rsi - 9], al
ror dword [rbp + 8], 8
mov al, byte [rbp + 0x38]
mov byte [rsi - 0xe], al
ror dword [rbp + 0x38], 8
mov al, byte [rbp + 8]
mov byte [rsi - 0xa], al
ror dword [rbp + 8], 8
mov al, byte [rbp + 0x38]
mov byte [rsi - 0xf], al
mov al, byte [rbp + 8]
mov byte [rsi - 0xb], al
mov r13d, dword [rbp + 0x38]
mov r12d, dword [rbp + 8]
ror r13d, 8
ror r12d, 8
mov dword [rbp + 0x38], r13d
mov dword [rbp + 8], r12d
sub r15, r14
jne 0x14002d285
mov cl, byte [rsp + 0x64]
xor r14d, r14d
mov edi, dword [rsp + 0x68]
mov eax, r14d
mov r15d, dword [rsp + 0x60]
movabs rbx, 0xc81ecb17b1b54a58
mov r13, qword [rbp - 0x68]
movabs rsi, 0x7f1137fab69605e
lea edx, [r14 + 1]
mov r8d, 0x338
xor cl, byte [rax + r13]
add rax, rdx
cmp rax, r8
jb 0x14002d5d5
movzx eax, cl
cmp rax, qword [0x1400dded8]
je 0x14002d5f5
mov r12d, 0xc004d501
jmp 0x14002d60a
mov r12d, dword [rbp - 0x78]
mov qword [rbp + 0x158], r13
mov r13, r14
mov qword [rbp + 0x2a0], r8
test r13, r13
je 0x14002d623
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r12d, r12d
js 0x14002d789
mov rax, qword [rbp + 0x2a0]
lea r13, [0x14011aa20]
mov r12, qword [rbp + 0x158]
xor edx, edx
mov rcx, r13
lea r8d, [rdx + 0x60]
mov byte [rax + r12 - 1], r14b
call sub.msvcrt.dll_memset
cmp byte [r12], r14b
je 0x14002d782
mov rdx, r12
or rax, 0xffffffffffffffff
inc rax
cmp word [r12 + rax*2], r14w
jne 0x14002d665
lea r12, [r12 + rax*2]
mov eax, dword [rbp - 0x80]
lea rcx, [rax + rax*2]
lea r13, [r13 + rcx*8]
xor ecx, ecx
mov r8, r13
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
je 0x14002d789
mov rax, qword [r13]
mov edx, 0x5a4d
mov ecx, r14d
mov dword [rsp + 0x78], ecx
cmp word [rax], dx
je 0x14002d6b2
mov ecx, 0xc000007b
mov dword [rsp + 0x78], ecx
jmp 0x14002d703
movsxd rdx, dword [rax + 0x3c]
cmp edx, 0x10000000
jae 0x14002d6a7
add rdx, qword [r13]
cmp rdx, qword [r13]
jb 0x14002d6a7
cmp dword [rdx], 0x4550
jne 0x14002d6a7
movzx eax, word [rdx + 0x18]
mov r8d, 0x10b
sub ax, r8w
mov r8d, 0xfeff
test r8w, ax
je 0x14002d6f1
mov ecx, 0xc000000d
jmp 0x14002d6ac
mov rax, qword [rdx + 0x88]
mov qword [r13 + 0xc], rax
mov eax, dword [rdx + 0x50]
mov dword [r13 + 8], eax
mov eax, dword [r12 + 2]
mov edx, r14d
add r12, 6
mov dword [rbp - 0x78], eax
mov dword [rbp - 0x50], edx
test eax, eax
je 0x14002d76e
mov r8, r12
or rax, 0xffffffffffffffff
inc rax
cmp byte [r12 + rax], r14b
jne 0x14002d720
inc r12
add r12, rax
test ecx, ecx
js 0x14002d75a
mov rcx, qword [r13]
mov rdx, r8
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14002d782
mov ecx, dword [rbp - 0x38]
lea rdx, [0x1401130a0]
mov qword [rdx + rcx*8], rax
mov ecx, dword [rsp + 0x78]
mov edx, dword [rbp - 0x50]
mov eax, 1
add dword [rbp - 0x38], eax
add edx, eax
mov dword [rbp - 0x50], edx
cmp edx, dword [rbp - 0x78]
jb 0x14002d719
jmp 0x14002d773
mov eax, 1
add dword [rbp - 0x80], eax
lea r13, [0x14011aa20]
jmp 0x14002d654
mov r12d, dword [rsp + 0x78]
jmp 0x14002d78f
mov r12d, 0xc000007a
cmp qword [rbp + 0x158], r14
je 0x14002d7b0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp + 0x158]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r12d, r12d
jns 0x14002d810
mov eax, 1
lea r12, [0x14011aa20]
lea r13d, [rax + 3]
cmp qword [r12], r14
je 0x14002d7da
mov rcx, qword [r12]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, 1
add r12, 0x18
sub r13, rax
jne 0x14002d7c5
xor edx, edx
lea r8d, [r13 + 0x60]
lea rcx, [0x14011aa20]
call sub.msvcrt.dll_memset
mov r8d, 0x170
lea rdx, [0x1400c92d0]
lea rcx, [0x1401130a0]
call sub.msvcrt.dll_memcpy
jmp 0x14002d825
mov eax, dword [0x14011b400]
mov r12d, 1
add eax, r12d
mov dword [0x14011b400], eax
xor edx, edx
lea rcx, [rbp + 0x4b0]
mov eax, r14d
xchg dword [0x14011b404], eax
lea r8d, [rdx + 0x70]
call sub.msvcrt.dll_memset
xor eax, eax
mov ecx, 0xf
mov qword [rbp + 0x930], rax
xor edx, edx
mov eax, edi
mov r8d, 0x403
and eax, ecx
mov dword [rsp + 0x78], eax
mov eax, edi
shr eax, 4
and ax, cx
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 [0x140113198]
xor ecx, ecx
mov word [rbp + 0xe34], di
call qword [str._w_v_]
mov qword [rsp + 0x70], rax
mov dword [rbp - 0x7c], 0xffffff
test rax, rax
jne 0x14002d8d4
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x14002ed6b
mov r12d, 0x80004005
jmp 0x14002ed6b
mov rax, qword [0x140113140]
lea r9, [rbp + 0xbc]
xor r8d, r8d
mov qword [rbp + 0x1c0], r14
lea rdx, [rbp + 0x94]
mov qword [rbp + 0x160], r14
mov qword [rbp + 0x2a8], r14
mov r12d, r14d
mov qword [rbp + 0xa0], r14
lea ecx, [r8 + 8]
mov qword [rbp + 0x100], r14
mov qword [rbp + 0xf0], r14
mov dword [rbp + 0xbc], r14d
call qword [str._w_v_]
test eax, eax
jne 0x14002d959
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x14002daad
mov r12d, 0x80004005
jmp 0x14002daad
mov edi, dword [rbp + 0xbc]
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 + 0x100]
mov rdi, rax
call fcn.14008a6d4
test rdi, rdi
jne 0x14002d99c
mov qword [rbp + 0x100], r14
mov r12d, 0x8007000e
jmp 0x14002daad
mov qword [rbp + 0x100], rdi
mov edi, dword [rbp + 0x94]
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 + 0xf0]
mov rdi, rax
call fcn.14008a6d4
test rdi, rdi
jne 0x14002d9e2
mov r12d, 0x8007000e
jmp 0x14002daa6
mov r8, qword [rbp + 0x100]
lea r9, [rbp + 0xbc]
mov rax, qword [0x140113140]
lea rdx, [rbp + 0x94]
mov ecx, 8
mov qword [rbp + 0xf0], rdi
call qword [str._w_v_]
test eax, eax
je 0x14002d92e
mov rdi, qword [rbp + 0x100]
mov r13, qword [rbp + 0xf0]
cmp dword [rbp + 0x94], r14d
jbe 0x14002da85
mov ebx, r14d
mov esi, 1
mov rax, qword [0x140113150]
xor edx, edx
mov rcx, rdi
call qword [str._w_v_]
mov dword [r13], eax
or rax, 0xffffffffffffffff
inc rax
cmp word [rdi + rax*2], r14w
jne 0x14002da51
lea rdi, [rdi + rax*2]
add r13, 4
add rdi, 2
add ebx, esi
cmp ebx, dword [rbp + 0x94]
jb 0x14002da37
movabs rbx, 0xc81ecb17b1b54a58
movabs rsi, 0x7f1137fab69605e
mov dword [r13], 0x409
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x1c0], rax
mov eax, dword [rbp + 0x94]
inc eax
mov dword [rbp - 0x50], eax
mov qword [rbp + 0xf0], r14
lea rcx, [rbp + 0xf0]
call fcn.14008a6d4
lea rcx, [rbp + 0x100]
call fcn.14008a6d4
test r12d, r12d
js 0x14002e236
lea r11, [0x1400ddb00]
mov r10d, r14d
mov r9d, r14d
mov dword [rsp + 0x68], r14d
cmp dword [rbp - 0x50], r14d
jbe 0x14002db24
mov rax, qword [rbp + 0x1c0]
mov r8, r14
mov edx, r14d
mov rdi, r11
mov ecx, dword [rdi]
cmp dword [r8 + rax], ecx
je 0x14002db1d
mov ecx, 1
add rdi, 4
add edx, ecx
cmp edx, 0x26
jb 0x14002daf6
add r9d, ecx
add r8, 4
cmp r9d, dword [rbp - 0x50]
jae 0x14002db24
jmp 0x14002daf0
mov r10d, edx
mov dword [rsp + 0x68], edx
mov rax, qword [0x140113148]
lea rdx, [rbp + 0xe40]
mov edi, r10d
xor r9d, r9d
mov dword [rbp - 0x70], r14d
mov ecx, dword [r11 + rdi*4]
lea r8d, [r9 + 0x55]
call qword [str._w_v_]
test eax, eax
je 0x14002db91
mov rax, qword [0x140113130]
lea r8, [rbp + 0xc20]
mov r9d, 0x10
lea rcx, [rbp + 0xe40]
lea edx, [r9 + 0x48]
call qword [str._w_v_]
mov r9d, 1
test eax, eax
jle 0x14002db97
mov r12d, dword [rbp + 0xc2c]
shr r12d, 0x1b
and r12d, r9d
mov dword [rbp - 0x70], r12d
jmp 0x14002db97
mov r9d, 1
lea rcx, str.Segoe_UI_Light
mov r8d, 0x13
lea rdx, [rbp + 0xd90]
mov qword [rdx], rcx
or rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], r14w
jne 0x14002dbb2
lea rcx, [rcx + rax*2]
add rdx, 8
add rcx, 2
sub r8, r9
jne 0x14002dbab
lea rcx, [rdi + rdi*2]
lea rdx, [0x140000000]
movzx eax, byte [rcx + rdx + 0xdda80]
mov rax, qword [rbp + rax*8 + 0xd90]
mov qword [rbp - 0x38], rax
mov qword [rbp + 0x248], rax
movzx eax, byte [rcx + rdx + 0xdda81]
mov rax, qword [rbp + rax*8 + 0xd90]
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x250], rax
movzx eax, byte [rcx + rdx + 0xdda82]
mov rdi, qword [rbp + rax*8 + 0xd90]
mov qword [rbp - 0x30], rdi
mov qword [rbp + 0x258], rdi
mov r12d, r14d
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 - 0x68], rax
test rax, rax
jne 0x14002dc57
mov r12d, 0x8007000e
jmp 0x14002e257
or dword [rbp - 0x78], 0xffffffff
lea r11, [rax + 7]
mov r13d, dword [rbp - 0x78]
lea rsi, [0x1400dbb02]
mov ecx, r14d
mov dword [rbp + 0x34], r14d
mov r15d, r14d
mov dword [rbp + 4], ecx
mov r10d, r14d
mov ebx, 0x392
mov r14d, 1
movzx eax, byte [rsi - 1]
movzx r9d, byte [rsi - 2]
movzx r8d, byte [rsi + 2]
shl r9d, 8
or r9d, eax
shl r8d, 8
movzx eax, byte [rsi]
lea rsi, [rsi + 8]
shl r9d, 8
or r9d, eax
movzx eax, byte [rsi - 7]
shl r9d, 8
or r9d, eax
movzx eax, byte [rsi - 5]
or r8d, eax
xor r10d, r9d
movzx eax, byte [rsi - 4]
shl r8d, 8
or r8d, eax
movzx eax, byte [rsi - 3]
shl r8d, 8
or r8d, eax
mov edi, r8d
xor edi, 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
mov edx, 0xab69605e
xor eax, edx
ror eax, 0xc
imul ecx, eax, 0x137f
mov eax, edi
ror eax, 0xa
xor ecx, eax
xor r10d, ecx
mov eax, r10d
xor eax, 0x7f1
imul ecx, eax, 0xab69
mov eax, r10d
shr eax, 0xa
xor ecx, eax
xor ecx, edi
mov 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, edx
mov eax, edi
xor eax, 0x7f1
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
imul ecx, eax, 0x137f
sub ecx, 0xd0dd417
xor edi, ecx
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 + 4], edi
mov r13d, r8d
xor ecx, eax
xor ecx, r15d
mov r15d, r9d
xor edx, ecx
mov dword [rbp + 0x34], edx
mov byte [r11 - 4], dl
mov al, byte [rbp + 4]
ror dword [rbp + 0x34], 8
mov byte [r11], al
lea r11, [r11 + 8]
ror dword [rbp + 4], 8
mov al, byte [rbp + 0x34]
mov byte [r11 - 0xd], al
mov al, byte [rbp + 4]
ror dword [rbp + 0x34], 8
mov byte [r11 - 9], al
ror dword [rbp + 4], 8
mov al, byte [rbp + 0x34]
mov byte [r11 - 0xe], al
ror dword [rbp + 0x34], 8
mov al, byte [rbp + 4]
mov byte [r11 - 0xa], al
ror dword [rbp + 4], 8
mov al, byte [rbp + 0x34]
mov byte [r11 - 0xf], al
mov al, byte [rbp + 4]
mov byte [r11 - 0xb], al
mov r10d, dword [rbp + 0x34]
mov ecx, dword [rbp + 4]
ror r10d, 8
ror ecx, 8
mov dword [rbp + 0x34], r10d
mov dword [rbp + 4], ecx
sub rbx, r14
jne 0x14002dc85
mov r15d, dword [rsp + 0x60]
xor r14d, r14d
mov r13, qword [rbp - 0x68]
mov eax, r14d
xorps xmm1, xmm1
movabs rbx, 0xc81ecb17b1b54a58
movabs rsi, 0x7f1137fab69605e
mov ecx, 0x1c90
movdqu xmm0, xmmword [rax + r13]
add rax, 0x10
pxor xmm0, xmm1
movdqa xmm1, xmm0
cmp rax, rcx
jb 0x14002df9f
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 [0x1400dd790]
je 0x14002dffe
mov r12d, 0xc004d501
jmp 0x14002e00f
mov qword [rbp + 0x160], r13
mov r13, r14
mov qword [rbp + 0x2a8], rcx
test r13, r13
je 0x14002e028
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r12d, r12d
js 0x14002e257
mov rdx, qword [rbp + 0x160]
lea rdi, [rbp + 0xd60]
mov r9d, dword [rsp + 0x68]
mov r8d, 6
mov ecx, r14d
cmp r9d, ecx
jne 0x14002e055
mov qword [rdi], rdx
or rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], r14b
jne 0x14002e059
inc rax
add rdx, rax
mov eax, 1
add ecx, eax
cmp ecx, 0x26
jb 0x14002e04d
add rdi, 8
sub r8, rax
jne 0x14002e04a
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 + 0xa0]
mov rdi, rax
call fcn.14008a6d4
mov r8d, 1
test rdi, rdi
jne 0x14002e0be
mov qword [rbp + 0xa0], r14
mov r12d, 0x8007000e
jmp 0x14002e25d
xor eax, eax
mov qword [rbp + 0xa0], rdi
mov qword [rdi], rax
lea rcx, [rbp + 0xe30]
mov edx, r14d
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rax
mov r13, r14
mov dword [rbp - 0x50], edx
mov qword [rbp - 0x20], rcx
movzx edi, word [rcx]
lea rcx, [0x1400ddee0]
mov eax, r14d
cmp di, word [rcx]
je 0x14002e109
add eax, r8d
add rcx, 2
cmp eax, 6
jb 0x14002e0f3
jmp 0x14002e1d3
mov rcx, qword [rbp + rax*8 + 0xd60]
or rax, 0xffffffffffffffff
mov qword [rbp - 0x68], rcx
inc rax
cmp byte [rcx + rax], r14b
jne 0x14002e119
lea r9d, [r8 + rax]
mov dword [rsp + 0x28], r14d
mov rax, qword [0x140113160]
mov r8, rcx
mov ecx, 0xfde9
mov qword [rsp + 0x20], r14
xor edx, edx
call qword [str._w_v_]
mov dword [rbp - 0x78], eax
test eax, eax
je 0x14002e212
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 + 0xa0]
mov qword [rcx + r13], rax
mov rcx, qword [rbp + 0xa0]
cmp qword [rcx + r13], r14
je 0x14002dc4c
mov r8, qword [rbp - 0x68]
or rax, 0xffffffffffffffff
inc rax
cmp byte [r8 + rax], r14b
jne 0x14002e190
mov edx, dword [rbp - 0x78]
mov r9d, 1
mov dword [rsp + 0x28], edx
add r9d, eax
mov rdx, qword [rcx + r13]
mov ecx, 0xfde9
mov rax, qword [0x140113160]
mov qword [rsp + 0x20], rdx
xor edx, edx
call qword [str._w_v_]
test eax, eax
je 0x14002e212
mov edx, dword [rbp - 0x50]
mov r8d, 1
mov rcx, qword [rbp - 0x20]
add edx, r8d
add rcx, 2
mov dword [rbp - 0x50], edx
add r13, 8
mov qword [rbp - 0x20], rcx
cmp edx, 3
jb 0x14002e0e6
mov rax, qword [rbp + 0xa0]
mov qword [rbp + 0x1b8], rax
mov eax, dword [rbp - 0x70]
mov dword [rbp + 0x4b0], eax
mov qword [rbp + 0xa0], r14
jmp 0x14002e25d
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x14002e257
mov r12d, 0x80004005
jmp 0x14002e257
mov rax, qword [rbp + 0x258]
mov qword [rbp - 0x30], rax
mov rax, qword [rbp + 0x250]
mov qword [rbp + 0x18], rax
mov rax, qword [rbp + 0x248]
mov qword [rbp - 0x38], rax
mov r8d, 1
cmp qword [rbp + 0xa0], r14
je 0x14002e2db
mov eax, 3
mov r13, r14
mov qword [rbp - 0x20], rax
mov rcx, qword [rbp + 0xa0]
cmp qword [rcx + r13], r14
je 0x14002e2ce
test rcx, rcx
jne 0x14002e287
mov rcx, r14
mov rdi, qword [rcx + r13]
or rcx, 0xffffffffffffffff
inc rcx
cmp word [rdi + rcx*2], r14w
jne 0x14002e28f
xor eax, eax
lea rcx, [rcx*2 + 2]
rep stosb byte [rdi], al
mov rax, qword [rbp + 0xa0]
mov rdi, qword [rax + r13]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rbp - 0x20]
mov r8d, 1
add r13, 8
sub rax, r8
mov qword [rbp - 0x20], rax
jne 0x14002e272
mov rdi, qword [rbp + 0x160]
test rdi, rdi
je 0x14002e2f2
mov rcx, qword [rbp + 0x2a8]
xor eax, eax
rep stosb byte [rdi], al
lea rcx, [rbp + 0xa0]
call fcn.14008a6d4
lea rcx, [rbp + 0x160]
call fcn.14008a6d4
lea rcx, [rbp + 0x1c0]
call fcn.14008a6d4
test r12d, r12d
js 0x14002ed57
mov rax, qword [rbp + 0x1b8]
lea r8, [rbp + 0x2e0]
xor r9d, r9d
xor edx, edx
mov edi, r14d
mov r12d, r14d
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 + 0x2e0], rax
mov qword [rbp + 0x4c8], rcx
mov qword [rbp + 0x2e8], rax
lea ecx, [rax + 0x42]
mov dword [rbp + 0x2e0], 0x10
mov rax, qword [0x140113208]
call qword [str._w_v_]
test eax, eax
jne 0x14002e3aa
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x14002e3b3
mov r12d, 0x80004005
jmp 0x14002e3b3
mov edi, dword [rbp + 0x2e4]
and edi, 1
mov dword [rbp + 0x4b4], edi
test r12d, r12d
js 0x14002ed57
mov r13d, dword [rsp + 0x78]
mov eax, 0x2a
mov ecx, r13d
mov dword [rbp - 0x80], eax
sub ecx, 1
je 0x14002e3ff
sub ecx, 1
je 0x14002e3f5
cmp ecx, 1
jne 0x14002e40d
mov r12d, 0xe1
mov dword [rsp + 0x7c], r12d
mov dword [rbp + 0x80], r12d
jmp 0x14002e40d
mov dword [rsp + 0x7c], 0xf
jmp 0x14002e403
mov dword [rsp + 0x7c], eax
mov dword [rbp + 0x80], 0xb
mov edi, 0x60
lea rcx, [rbp + 0xc40]
xor edx, edx
mov dword [rbp + 0x58], edi
lea r12d, [rdi + 0x7c]
mov r8d, r12d
call sub.msvcrt.dll_memset
mov rax, qword [0x140113180]
lea r8, [rbp + 0xc40]
or edx, 0xffffffff
mov word [rbp + 0xc84], r12w
xor ecx, ecx
call qword [str._w_v_]
test eax, eax
je 0x14002e483
mov eax, dword [rbp + 0xcec]
movzx edi, word [rbp + 0xce6]
and qword [rbp + 0x9a0], 0
mov dword [rbp + 0x9a8], eax
mov eax, dword [rbp + 0xcf0]
mov dword [rbp + 0x9ac], eax
lea eax, [r12 - 0x7c]
cmp edi, eax
cmovb edi, eax
mov dword [rbp + 0x58], edi
mov eax, 1
lea rcx, [rbp + 0xb00]
cmp r13d, eax
mov rax, qword [rbp - 0x30]
cmove rax, qword [rbp - 0x38]
xor edx, edx
mov qword [rbp - 0x30], rax
lea r8d, [rdx + 0x5c]
call sub.msvcrt.dll_memset
mov rax, qword [0x140113198]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
mov r12d, r14d
call qword [str._w_v_]
mov r13, rax
test rax, rax
jne 0x14002e4f7
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x14002ed57
mov r12d, 0x80004005
jmp 0x14002ed57
mov ecx, dword [rsp + 0x7c]
mov r8d, 0x48
mov rax, qword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_24]
mov edx, edi
call qword [str._w_v_]
mov r8, qword [rbp - 0x30]
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.14001bc6c
mov rax, qword [0x1401130c0]
lea rcx, [rbp + 0xb00]
call qword [str._w_v_]
test rax, rax
jne 0x14002e57b
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x14002e582
mov r12d, 0x80004005
jmp 0x14002e582
mov qword [rbp + 0x4d0], rax
mov rax, qword [0x140113200]
mov rdx, r13
xor ecx, ecx
call qword [str._w_v_]
test r12d, r12d
js 0x14002ed57
xor edx, edx
lea rcx, [rbp + 0xb60]
lea r8d, [rdx + 0x5c]
call sub.msvcrt.dll_memset
mov rax, qword [0x140113198]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
mov r12d, r14d
call qword [str._w_v_]
mov r13, rax
test rax, rax
je 0x14002e4cc
mov ecx, dword [rbp + 0x80]
mov r8d, 0x48
mov rax, qword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_24]
mov edx, edi
call qword [str._w_v_]
mov r8, qword [rbp - 0x30]
lea rcx, [rbp + 0xb7c]
neg eax
mov dword [rbp + 0xb70], 0x190
mov edx, 0x20
mov dword [rbp + 0xb60], eax
mov byte [rbp + 0xb7a], 5
call fcn.14001bc6c
mov rax, qword [0x1401130c0]
lea rcx, [rbp + 0xb60]
call qword [str._w_v_]
test rax, rax
jne 0x14002e65b
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x14002e662
mov r12d, 0x80004005
jmp 0x14002e662
mov qword [rbp + 0x4d8], rax
mov rax, qword [0x140113200]
mov rdx, r13
xor ecx, ecx
call qword [str._w_v_]
test r12d, r12d
js 0x14002ed57
mov edi, dword [rsp + 0x78]
mov r13d, r14d
mov ecx, edi
mov edx, r14d
sub ecx, 1
je 0x14002e698
sub ecx, 1
je 0x14002e6d2
cmp ecx, 1
jne 0x14002e6a5
mov r13d, dword [rbp + 0x9a8]
mov edx, dword [rbp + 0x9ac]
mov dword [rbp + 0x938], r13d
mov dword [rbp + 0x93c], edx
mov ecx, 1
cmp edi, ecx
je 0x14002e70c
lea eax, [rdi - 2]
cmp eax, ecx
ja 0x14002e6e9
mov ecx, r14d
mov dword [rbp - 0x80], r14d
mov dword [rbp + 0x80], r14d
jmp 0x14002e71b
mov eax, dword [rbp + 0x9a8]
cdq
and edx, 3
lea r13d, [rdx + rax]
mov edx, r14d
sar r13d, 2
jmp 0x14002e6a5
mov eax, dword [rbp + 0xb8]
mov ecx, dword [rbp + 0xb8]
mov dword [rbp + 0x80], eax
mov eax, dword [rbp + 0xb8]
mov dword [rbp - 0x80], eax
mov eax, dword [rbp + 0xb8]
jmp 0x14002e71e
mov ecx, reloc.OLEAUT32.dll_DllRegisterServer
mov dword [rbp + 0x80], 0x20
mov eax, r14d
mov dword [rsp + 0x7c], ecx
mov dword [rbp - 0x38], eax
mov rdx, qword [rbp + 0x4d0]
sub r13d, ecx
mov rcx, qword [rsp + 0x70]
sub r13d, eax
mov rax, qword [0x140113118]
mov r12d, r14d
mov rdi, qword [rbp + 0x4b8]
mov dword [rbp + 0x504], r13d
mov dword [rbp + 0x4f4], r13d
call qword [str._w_v_]
mov rdx, rdi
mov qword [rsp + 0x28], r14
mov rdi, qword [rsp + 0x70]
lea r9, [rbp + 0x4ec]
mov qword [rbp - 0x68], rax
mov rcx, rdi
mov rax, qword [fcn.1400058c0]
or r8d, 0xffffffff
mov dword [rsp + 0x20], 0xc50
call qword [str._w_v_]
test eax, eax
mov eax, 0x80004005
cmove r12d, eax
mov rax, qword [rbp - 0x68]
test rax, rax
je 0x14002e7b7
mov rdx, rax
mov rcx, rdi
mov rax, qword [0x140113118]
call qword [str._w_v_]
test r12d, r12d
js 0x14002ed57
mov rdx, qword [rbp + 0x4d8]
mov r12d, r14d
mov rcx, qword [rsp + 0x70]
mov rax, qword [0x140113118]
mov rdi, qword [rbp + 0x4c0]
call qword [str._w_v_]
mov rdx, rdi
mov qword [rsp + 0x28], r14
mov rdi, qword [rsp + 0x70]
lea r9, [rbp + 0x4fc]
mov qword [rbp - 0x68], rax
mov rcx, rdi
mov rax, qword [fcn.1400058c0]
or r8d, 0xffffffff
mov dword [rsp + 0x20], 0xc50
call qword [str._w_v_]
test eax, eax
mov eax, 0x80004005
cmove r12d, eax
mov rax, qword [rbp - 0x68]
test rax, rax
je 0x14002e83e
mov rdx, rax
mov rcx, rdi
mov rax, qword [0x140113118]
call qword [str._w_v_]
test r12d, r12d
js 0x14002ed57
mov r12d, dword [rsp + 0x78]
mov edx, 1
mov ecx, dword [rbp + 0x4f4]
lea eax, [r12 - 2]
cmp eax, edx
ja 0x14002e86e
mov r13d, dword [rbp + 0x504]
cmp ecx, r13d
cmovg r13d, ecx
mov r8d, dword [rbp - 0x80]
mov rax, qword [fcn.1400058c0]
cmp dword [rbp + 0x4b0], r14d
je 0x14002e8a5
mov edi, dword [rbp - 0x38]
mov edx, edi
sub edx, ecx
lea rcx, [rbp + 0x4ec]
add edx, r13d
call qword [str._w_v_]
sub edi, dword [rbp + 0x504]
lea edx, [rdi + r13]
jmp 0x14002e8ba
mov edx, dword [rsp + 0x7c]
lea rcx, [rbp + 0x4ec]
call qword [str._w_v_]
mov edx, dword [rsp + 0x7c]
mov r8d, dword [rbp + 0x80]
lea rcx, [rbp + 0x4fc]
add r8d, dword [rbp + 0x4f8]
mov rax, qword [fcn.1400058c0]
call qword [str._w_v_]
lea eax, [r12 - 2]
mov ecx, 1
cmp eax, ecx
jbe 0x14002eb68
cmp r12d, ecx
jne 0x14002eb85
lea r8d, [rcx + 0x5b]
mov dword [rbp + 0x4e8], 0xffffff
lea rcx, [rbp + 0xbc0]
xor edx, edx
call sub.msvcrt.dll_memset
mov rax, qword [0x140113198]
xor edx, edx
xor ecx, ecx
mov r8d, 0x403
mov r12d, r14d
call qword [str._w_v_]
mov rdi, rax
test rax, rax
je 0x14002e4cc
mov edx, dword [rbp + 0x58]
mov r8d, 0x48
mov rax, qword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_24]
lea ecx, [r8 - 0x3d]
call qword [str._w_v_]
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.14001bc6c
mov rax, qword [0x1401130c0]
lea rcx, [rbp + 0xbc0]
call qword [str._w_v_]
test rax, rax
jne 0x14002e9be
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x14002e9c5
mov r12d, 0x80004005
jmp 0x14002e9c5
mov qword [rbp + 0x4e0], rax
mov rax, qword [0x140113200]
mov rdx, rdi
xor ecx, ecx
call qword [str._w_v_]
test r12d, r12d
js 0x14002ed57
mov rdx, qword [rbp + 0x4e0]
mov r12d, r14d
mov rcx, qword [rsp + 0x70]
mov rax, qword [0x140113118]
mov rdi, qword [rbp + 0x4c8]
mov dword [rbp + 0x514], r13d
call qword [str._w_v_]
mov rdx, rdi
mov qword [rsp + 0x28], r14
mov rdi, qword [rsp + 0x70]
lea r9, [rbp + 0x50c]
mov r13, rax
mov dword [rsp + 0x20], 0x460
mov rax, qword [fcn.1400058c0]
mov rcx, rdi
or r8d, 0xffffffff
call qword [str._w_v_]
test eax, eax
mov eax, 0x80004005
cmove r12d, eax
test r13, r13
je 0x14002ea60
mov rax, qword [0x140113118]
mov rdx, r13
mov rcx, rdi
call qword [str._w_v_]
test r12d, r12d
js 0x14002ed57
mov eax, dword [rbp + 0x514]
mov ecx, 0x5a
mov edi, dword [rbp + 0x58]
add eax, 0x18
cmp eax, ecx
mov edx, edi
cmovl eax, ecx
lea r12d, [rcx + 6]
mov dword [rbp + 0x514], eax
mov r8d, r12d
lea eax, [rcx - 0x3a]
mov ecx, dword [rbp + 0x50c]
mov dword [rbp + 0x518], eax
mov rax, qword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_24]
call qword [str._w_v_]
mov ecx, dword [rbp + 0x510]
mov r8d, r12d
mov dword [rbp + 0x50c], eax
mov edx, edi
mov rax, qword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_24]
call qword [str._w_v_]
mov ecx, dword [rbp + 0x514]
mov r8d, r12d
mov dword [rbp + 0x510], eax
mov edx, edi
mov rax, qword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_24]
call qword [str._w_v_]
mov ecx, dword [rbp + 0x518]
mov r8d, r12d
mov dword [rbp + 0x514], eax
mov edx, edi
mov rax, qword [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_24]
call qword [str._w_v_]
mov r8d, dword [rbp + 0x508]
lea rcx, [rbp + 0x50c]
add r8d, 0x24
mov dword [rbp + 0x518], eax
mov rax, qword [fcn.1400058c0]
cmp dword [rbp + 0x4b0], r14d
je 0x14002eb47
mov edx, dword [rbp + 0x4ec]
cmp edx, dword [rbp + 0x4fc]
cmovge edx, dword [rbp + 0x4fc]
call qword [str._w_v_]
jmp 0x14002eb85
mov edx, dword [rbp + 0x4f4]
cmp edx, dword [rbp + 0x504]
cmovle edx, dword [rbp + 0x504]
sub edx, dword [rbp + 0x514]
add edx, dword [rbp + 0x50c]
jmp 0x14002eb3f
mov eax, dword [rbp + 0x508]
mov dword [rbp + 0x93c], eax
mov dword [rbp + 0x938], r13d
mov dword [rbp + 0x4e8], 0xffa8a8a8
mov ecx, dword [rsp + 0x78]
mov r13d, dword [rbp + 0x4b0]
mov r12d, dword [rbp + 0x93c]
mov edi, dword [rbp + 0x938]
sub ecx, 1
je 0x14002ed4c
sub ecx, 1
je 0x14002ec64
cmp ecx, 1
jne 0x14002ed54
lea r13d, [rcx + 0x27]
xor edx, edx
mov r8d, r13d
lea rcx, [rbp + 0xad8]
call sub.msvcrt.dll_memset
mov rax, qword [fcn.1400058c0]
lea edx, [r13 - 0x27]
xor ecx, ecx
call qword [str._w_v_]
lea rdx, [rbp + 0xad8]
mov dword [rbp + 0xad8], r13d
mov rcx, rax
mov rax, qword [fcn.1400058c0]
call qword [str._w_v_]
test eax, eax
je 0x14002ed54
mov rax, qword [fcn.1400058c0]
lea rdx, [rbp + 0xaec]
xor ecx, ecx
call qword [str._w_v_]
mov rax, qword [fcn.1400058c0]
lea rdx, [rbp + 0xaf4]
xor ecx, ecx
call qword [str._w_v_]
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, r12d
imul ecx, ecx, 0x32
jmp 0x14002ed2d
xor edx, edx
lea rcx, [rbp + 0xab0]
lea r8d, [rdx + 0x28]
call sub.msvcrt.dll_memset
mov rax, qword [fcn.1400058c0]
mov edx, 1
xor ecx, ecx
call qword [str._w_v_]
lea rdx, [rbp + 0xab0]
mov dword [rbp + 0xab0], 0x28
mov rcx, rax
mov rax, qword [fcn.1400058c0]
call qword [str._w_v_]
test eax, eax
je 0x14002ed54
mov rax, qword [fcn.1400058c0]
lea rdx, [rbp + 0xac4]
xor ecx, ecx
call qword [str._w_v_]
mov rax, qword [fcn.1400058c0]
lea rdx, [rbp + 0xacc]
xor ecx, ecx
call qword [str._w_v_]
mov eax, dword [rbp + 0xacc]
test r13d, r13d
je 0x14002ed06
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 + 0xac4]
jmp 0x14002ed1c
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 + 0xacc]
shr rax, 0x20
sub eax, r12d
imul ecx, eax, 0x5f
mov dword [rbp + 0x930], edx
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [rbp + 0x934], edx
jmp 0x14002ed54
and qword [rbp + 0x930], 0
mov r12d, r14d
mov rdx, qword [rsp + 0x70]
xor ecx, ecx
mov rax, qword [0x140113200]
call qword [str._w_v_]
mov r13d, 1
xor eax, eax
lock cmpxchg dword [0x14011b404], r13d
jne 0x14002ed71
mov eax, dword [0x14011b400]
test eax, eax
jle 0x14002edf0
sub eax, r13d
mov dword [0x14011b400], eax
jne 0x14002edf0
mov rax, r13
lea rdi, [0x14011aa20]
mov r13d, 4
cmp qword [rdi], r14
je 0x14002edb6
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, 1
add rdi, 0x18
sub r13, rax
jne 0x14002eda3
xor edx, edx
lea r8d, [r13 + 0x60]
lea rcx, [0x14011aa20]
call sub.msvcrt.dll_memset
mov r8d, 0x170
lea rdx, [0x1400c92d0]
lea rcx, [0x1401130a0]
call sub.msvcrt.dll_memcpy
mov r13d, 1
mov eax, r14d
lea rcx, [rbp + 0x1b8]
xchg dword [0x14011b404], eax
call fcn.14008a6d4
test r12d, r12d
js 0x14003071d
mov rdi, qword [rbp + 0x930]
lea rcx, [rbp + 0x520]
xor edx, edx
mov qword [rbp + 0x2b0], rdi
lea r8d, [rdx + 0x68]
call sub.msvcrt.dll_memset
mov rax, qword [0x1401130f0]
mov r12d, r13d
mov r13, qword [rbp + 0x60]
mov edx, 7
mov rcx, r13
call qword [str._w_v_]
test rax, rax
je 0x14002ee98
mov rcx, rax
lea r8, [rbp + 0x520]
mov rax, qword [0x140113108]
mov edx, 0x68
call qword [str._w_v_]
test eax, eax
je 0x14002ee98
mov eax, 0x20
cmp word [rbp + 0x532], ax
jne 0x14002ee98
cmp qword [rbp + 0x538], r14
je 0x14002ee98
cmp dword [rbp + 0x524], r14d
jle 0x14002ee98
cmp dword [rbp + 0x528], r14d
jg 0x14002ee9b
mov r12d, r14d
mov dword [rbp + 0x124], r12d
test r12d, r12d
mov r12d, 1
jne 0x14002eeb4
cmp dword [rsp + 0x78], r12d
jne 0x14002ef1c
mov r8d, dword [rbp + 0x2b4]
lea rcx, [rbp + 0x4ec]
mov rax, qword [fcn.1400058c0]
mov edx, edi
call qword [str._w_v_]
mov r8d, dword [rbp + 0x2b4]
lea rcx, [rbp + 0x4fc]
mov rax, qword [fcn.1400058c0]
mov edx, edi
call qword [str._w_v_]
mov edi, dword [rsp + 0x78]
cmp edi, r12d
jne 0x14002ef20
mov eax, dword [rbp + 0x4b4]
neg eax
mov rax, qword [0x1401130c8]
sbb ecx, ecx
not ecx
and ecx, 0xb26720
call qword [str._w_v_]
mov qword [rbp + 0x78], rax
jmp 0x14002ef20
mov edi, dword [rsp + 0x78]
mov rax, qword [fcn.1400058c0]
mov edx, r12d
mov rcx, r13
call qword [str._w_v_]
cmp dword [rbp + 0x4b0], r14d
mov ecx, 0x20812
mov dword [rsp + 0x70], eax
mov eax, 0x810
cmovne eax, ecx
mov dword [rbp - 0x80], eax
cmp dword [rbp + 0x124], r14d
je 0x14002f992
mov eax, dword [rbp + 0x4b4]
lea rcx, [rbp + 0x670]
mov r12, qword [rbp + 0x4b8]
mov edi, 0x68
mov dword [rbp - 0x78], eax
mov r8d, edi
mov rax, qword [rbp + 0x4d0]
xor edx, edx
mov qword [rbp - 0x68], rax
mov qword [rbp + 0x10], r12
call sub.msvcrt.dll_memset
mov r8d, edi
lea rcx, [rbp + 0x750]
xor edx, edx
call sub.msvcrt.dll_memset
xor edx, edx
mov qword [rbp + 0x18], r14
lea rcx, [rbp + 0xa80]
mov dword [rbp - 0x50], r14d
mov edi, r14d
lea r8d, [rdx + 0x2c]
call sub.msvcrt.dll_memset
xor eax, eax
mov qword [rbp + 0x960], rax
mov qword [rbp + 0x968], rax
test r12, r12
je 0x140030704
lea edx, [rax + 7]
mov rcx, r13
mov rax, qword [0x1401130f0]
call qword [str._w_v_]
test rax, rax
je 0x14002f9f0
mov rcx, rax
lea r8, [rbp + 0x670]
mov rax, qword [0x140113108]
mov edx, 0x68
call qword [str._w_v_]
test eax, eax
je 0x14002f02d
mov rax, qword [rbp + 0x688]
mov edi, dword [rbp + 0x678]
mov qword [rbp + 0x18], rax
mov eax, dword [rbp + 0x674]
mov dword [rbp - 0x50], eax
mov rax, qword [0x1401130b0]
mov rcx, r13
call qword [str._w_v_]
mov r13, rax
test rax, rax
je 0x14002f9f0
mov eax, dword [rbp + 0x4f4]
lea r9, [rbp + 0x390]
sub eax, dword [rbp + 0x4ec]
lea rdx, [rbp + 0xa80]
mov dword [rbp + 0xa84], eax
xorps xmm0, xmm0
mov eax, dword [rbp + 0x4f0]
xor r8d, r8d
sub eax, dword [rbp + 0x4f8]
mov rcx, r13
mov dword [rbp + 0xa88], eax
mov r12d, r14d
mov rax, qword [0x1401130b8]
mov dword [rsp + 0x28], r14d
mov qword [rbp + 0x390], r14
movdqu xmmword [rbp + 0xa90], xmm0
mov qword [rbp + 0xaa0], r14
mov dword [rbp + 0xaa8], r14d
mov dword [rbp + 0xa80], 0x28
mov dword [rbp + 0xa8c], 0x200001
mov qword [rsp + 0x20], r14
call qword [str._w_v_]
mov qword [rsp + 0x68], rax
test rax, rax
jne 0x14002f104
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x14002f459
mov r12d, 0x80004005
jmp 0x14002f459
mov rcx, rax
lea r8, [rbp + 0x750]
mov rax, qword [0x140113108]
mov edx, 0x68
call qword [str._w_v_]
mov rdx, qword [rsp + 0x68]
mov rcx, r14
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 [0x140113118]
mov qword [rbp - 0x20], rcx
mov rcx, r13
call qword [str._w_v_]
mov rax, qword [fcn.1400058c0]
mov edx, 1
mov rcx, r13
call qword [str._w_v_]
mov rdx, qword [rbp - 0x68]
mov rcx, r13
mov rax, qword [0x140113118]
call qword [str._w_v_]
mov qword [rbp - 0x70], rax
xor ecx, ecx
mov rax, qword [0x140113110]
call qword [str._w_v_]
lea rdx, [rbp + 0x960]
mov rcx, r13
mov r8, rax
mov rax, qword [0x140113188]
call qword [str._w_v_]
mov eax, dword [rbp - 0x80]
lea r9, [rbp + 0x960]
mov rdx, qword [rbp + 0x10]
or r8d, 0xffffffff
mov qword [rsp + 0x28], r14
mov rcx, r13
mov dword [rsp + 0x20], eax
mov rax, qword [fcn.1400058c0]
call qword [str._w_v_]
mov eax, 1
cmp dword [rsp + 0x78], eax
jne 0x14002f21c
cmp dword [rbp - 0x78], r14d
je 0x14002f212
lea ecx, [rax + 7]
mov rax, qword [0x1401131b8]
call qword [str._w_v_]
mov dword [rsp + 0x7c], eax
jmp 0x14002f224
mov dword [rsp + 0x7c], 0xffffff
jmp 0x14002f224
mov dword [rsp + 0x7c], 0xffa8a8a8
mov eax, dword [rbp + 0x4ec]
mov r9d, r14d
movsxd r10, dword [rbp - 0x50]
mov r8d, eax
neg r8d
mov edx, r14d
test eax, eax
mov r11d, r10d
cmovns r9d, eax
cmovns r8d, r14d
mov eax, dword [rbp + 0x4f0]
mov ecx, eax
neg ecx
test eax, eax
cmovns edx, eax
cmovns ecx, r14d
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 0x14002f42b
test edi, edi
jle 0x14002f42b
imul ecx, dword [rbp + 0x968]
mov esi, 1
mov ebx, dword [rsp + 0x7c]
movsxd rax, r8d
imul edx, r10d
mov qword [rbp - 0x30], rdi
movsxd rcx, ecx
add rcx, rax
mov rax, qword [rbp - 0x20]
lea r8, [rax + rcx*4]
movsxd rcx, edx
movsxd rax, r9d
mov rdx, r10
add rcx, rax
mov qword [rbp - 0x20], 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 + 0x10], rdx
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x68], rcx
test r11d, r11d
jle 0x14002f3fc
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 0x14002f3d7
movzx edi, byte [r10 + r9]
mov eax, 0x80808081
movzx r8d, dl
movzx ecx, bl
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rsp + 0x7d]
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 + 0x7e]
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 0x14002f303
mov r8, qword [rbp - 0x20]
mov rax, qword [rbp - 0x78]
mov rcx, qword [rbp - 0x68]
mov rdx, qword [rbp + 0x10]
mov rdi, qword [rbp - 0x30]
add r8, rcx
add rax, rdx
sub rdi, rsi
mov qword [rbp - 0x20], r8
mov qword [rbp - 0x30], rdi
mov qword [rbp - 0x78], rax
jne 0x14002f2e9
movabs rbx, 0xc81ecb17b1b54a58
movabs rsi, 0x7f1137fab69605e
mov rcx, qword [rsp + 0x68]
mov rax, qword [0x1401130d8]
call qword [str._w_v_]
mov rax, qword [rbp - 0x70]
test rax, rax
je 0x14002f459
mov rdx, rax
mov rcx, r13
mov rax, qword [0x140113118]
call qword [str._w_v_]
mov rax, qword [0x1401130d0]
mov rcx, r13
call qword [str._w_v_]
test r12d, r12d
js 0x140030704
mov eax, dword [rbp + 0x4b4]
lea rcx, [rbp + 0x600]
mov r12, 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 - 0x68], rax
mov qword [rbp + 0x10], r12
call sub.msvcrt.dll_memset
mov r8d, edi
lea rcx, [rbp + 0x7c0]
xor edx, edx
call sub.msvcrt.dll_memset
xor edx, edx
mov qword [rbp + 0x18], r14
lea rcx, [rbp + 0x9c0]
mov dword [rbp - 0x50], r14d
mov edi, r14d
lea r8d, [rdx + 0x2c]
call sub.msvcrt.dll_memset
xor eax, eax
mov qword [rbp + 0x970], rax
mov qword [rbp + 0x978], rax
test r12, r12
je 0x140030704
mov r13, qword [rbp + 0x60]
lea edx, [rax + 7]
mov rax, qword [0x1401130f0]
mov rcx, r13
call qword [str._w_v_]
test rax, rax
je 0x14002f9f0
mov rcx, rax
lea r8, [rbp + 0x600]
mov rax, qword [0x140113108]
mov edx, 0x68
call qword [str._w_v_]
test eax, eax
je 0x14002f548
mov rax, qword [rbp + 0x618]
mov edi, dword [rbp + 0x608]
mov qword [rbp + 0x18], rax
mov eax, dword [rbp + 0x604]
mov dword [rbp - 0x50], eax
mov rax, qword [0x1401130b0]
mov rcx, r13
call qword [str._w_v_]
mov r13, rax
test rax, rax
je 0x14002f9f0
mov eax, dword [rbp + 0x504]
lea r9, [rbp + 0x398]
sub eax, dword [rbp + 0x4fc]
lea rdx, [rbp + 0x9c0]
mov dword [rbp + 0x9c4], eax
xorps xmm0, xmm0
mov eax, dword [rbp + 0x500]
xor r8d, r8d
sub eax, dword [rbp + 0x508]
mov rcx, r13
mov dword [rbp + 0x9c8], eax
mov r12d, r14d
mov rax, qword [0x1401130b8]
mov dword [rsp + 0x28], r14d
mov qword [rbp + 0x398], r14
movdqu xmmword [rbp + 0x9d0], xmm0
mov qword [rbp + 0x9e0], r14
mov dword [rbp + 0x9e8], r14d
mov dword [rbp + 0x9c0], 0x28
mov dword [rbp + 0x9cc], 0x200001
mov qword [rsp + 0x20], r14
call qword [str._w_v_]
mov qword [rsp + 0x68], rax
test rax, rax
jne 0x14002f61f
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r12d, ax
or r12d, 0x80070000
test eax, eax
cmovle r12d, eax
test r12d, r12d
js 0x14002f970
mov r12d, 0x80004005
jmp 0x14002f970
mov rcx, rax
lea r8, [rbp + 0x7c0]
mov rax, qword [0x140113108]
mov edx, 0x68
call qword [str._w_v_]
mov rdx, qword [rsp + 0x68]
mov rcx, r14
test eax, eax
mov eax, dword [rbp + 0x504]
cmovne rcx, qword [rbp + 0x7d8]
sub eax, dword [rbp + 0x4fc]
mov dword [rbp + 0x978], eax
mov eax, dword [rbp + 0x508]
sub eax, dword [rbp + 0x500]
mov dword [rbp + 0x97c], eax
mov rax, qword [0x140113118]
mov qword [rbp - 0x20], rcx
mov rcx, r13
call qword [str._w_v_]
mov rax, qword [fcn.1400058c0]
mov edx, 1
mov rcx, r13
call qword [str._w_v_]
mov rdx, qword [rbp - 0x68]
mov rcx, r13
mov rax, qword [0x140113118]
call qword [str._w_v_]
mov qword [rbp - 0x70], rax
xor ecx, ecx
mov rax, qword [0x140113110]
call qword [str._w_v_]
lea rdx, [rbp + 0x970]
mov rcx, r13
mov r8, rax
mov rax, qword [0x140113188]
call qword [str._w_v_]
mov eax, dword [rbp - 0x80]
lea r9, [rbp + 0x970]
mov rdx, qword [rbp + 0x10]
or r8d, 0xffffffff
mov qword [rsp + 0x28], r14
mov rcx, r13
mov dword [rsp + 0x20], eax
mov rax, qword [fcn.1400058c0]
call qword [str._w_v_]
mov eax, 1
cmp dword [rsp + 0x78], eax
jne 0x14002f732
cmp dword [rbp - 0x78], r14d
je 0x14002f729
lea ecx, [rax + 7]
mov rax, qword [0x1401131b8]
call qword [str._w_v_]
jmp 0x14002f737
mov dword [rbp - 0x80], 0xffffff
jmp 0x14002f73d
mov eax, 0xffa8a8a8
mov dword [rbp - 0x80], eax
mov dword [rbp - 0x7c], eax
mov eax, dword [rbp + 0x4fc]
mov r9d, r14d
movsxd r10, dword [rbp - 0x50]
mov r8d, eax
neg r8d
mov edx, r14d
test eax, eax
mov r11d, r10d
cmovns r9d, eax
cmovns r8d, r14d
mov eax, dword [rbp + 0x500]
mov ecx, eax
neg ecx
test eax, eax
cmovns edx, eax
cmovns ecx, r14d
mov eax, dword [rbp + 0x978]
sub r11d, r9d
sub eax, r8d
cmp eax, r11d
cmovl r11d, eax
mov eax, dword [rbp + 0x97c]
sub eax, ecx
sub edi, edx
cmp eax, edi
cmovl edi, eax
test r11d, r11d
jle 0x14002f942
test edi, edi
jle 0x14002f942
imul ecx, dword [rbp + 0x978]
mov ebx, 1
mov esi, dword [rbp - 0x7c]
movsxd rax, r8d
imul edx, r10d
mov qword [rbp - 0x30], rdi
movsxd rcx, ecx
add rcx, rax
mov rax, qword [rbp - 0x20]
lea r8, [rax + rcx*4]
movsxd rcx, edx
movsxd rax, r9d
mov rdx, r10
add rcx, rax
mov qword [rbp - 0x20], r8
mov rax, qword [rbp + 0x18]
lea rax, [rax + rcx*4]
movsxd rcx, dword [rbp + 0x978]
shl rcx, 2
shl rdx, 2
mov qword [rbp + 0x10], rdx
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x68], rcx
test r11d, r11d
jle 0x14002f913
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 0x14002f8ee
movzx edi, byte [r10 + r9]
mov eax, 0x80808081
movzx r8d, dl
movzx ecx, sil
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rbp - 0x7f]
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 - 0x7e]
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, rbx
mov qword [rbp + 0x18], rdi
jne 0x14002f81b
mov r8, qword [rbp - 0x20]
mov rax, qword [rbp - 0x78]
mov rcx, qword [rbp - 0x68]
mov rdx, qword [rbp + 0x10]
mov rdi, qword [rbp - 0x30]
add r8, rcx
add rax, rdx
sub rdi, rbx
mov qword [rbp - 0x20], r8
mov qword [rbp - 0x30], rdi
mov qword [rbp - 0x78], rax
jne 0x14002f801
movabs rbx, 0xc81ecb17b1b54a58
movabs rsi, 0x7f1137fab69605e
mov rcx, qword [rsp + 0x68]
mov rax, qword [0x1401130d8]
call qword [str._w_v_]
mov rax, qword [rbp - 0x70]
test rax, rax
je 0x14002f970
mov rdx, rax
mov rcx, r13
mov rax, qword [0x140113118]
call qword [str._w_v_]
mov rax, qword [0x1401130d0]
mov rcx, r13
call qword [str._w_v_]
test r12d, r12d
js 0x140030704
mov rdi, qword [rbp + 0x60]
jmp 0x1400306be
cmp dword [rbp + 0x4b4], r14d
jne 0x14002f9a2
mov al, 0xc0
cmp edi, r12d
jne 0x14002f9a4
mov al, 0xff
and word [rbp + 0x80], 0
mov rcx, r13
mov byte [rbp + 0x82], 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 [0x1401130b0]
mov byte [rbp + 0x83], r12b
call qword [str._w_v_]
mov qword [rbp + 0x48], rax
test rax, rax
jne 0x14002f9fb
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x140030704
cmp edi, r12d
jne 0x14002fac5
mov r13d, dword [rbp + 0x504]
mov edx, r14d
mov edi, dword [rbp + 0x4f4]
mov eax, r13d
mov r9d, dword [rbp + 0x4fc]
mov r12d, edi
mov r10d, dword [rbp + 0x4ec]
sub eax, r9d
mov ecx, dword [rbp + 0x508]
sub r12d, r10d
mov r11d, dword [rbp + 0x4f0]
cmp eax, r12d
mov r8d, r14d
cmovg r12d, eax
sub ecx, r11d
mov dword [rbp - 0x38], ecx
cmp dword [rbp + 0x4b0], r14d
je 0x14002fa72
mov edx, r10d
mov r8d, r9d
sub edx, edi
sub r8d, r13d
add edx, r12d
add r8d, r12d
mov dword [rbp + 0x940], edx
mov dword [rbp + 0x950], r8d
mov eax, dword [rbp + 0x4f8]
sub edi, r10d
sub eax, r11d
sub r13d, r9d
mov dword [rbp + 0x58], eax
add edi, edx
mov dword [rbp + 0x94c], eax
add r13d, r8d
mov eax, dword [rbp + 0x500]
sub eax, r11d
mov dword [rbp + 0x948], edi
mov dword [rbp - 0x78], eax
mov dword [rbp + 0x954], eax
sub eax, dword [rbp + 0x500]
add eax, dword [rbp + 0x508]
mov dword [rbp - 0x50], eax
mov dword [rbp + 0x95c], eax
mov dword [rbp + 0x958], r13d
jmp 0x14002fb1b
movups xmm0, xmmword [rbp + 0x4ec]
mov ecx, dword [rbp + 0x93c]
movups xmm1, xmmword [rbp + 0x4fc]
mov r12d, dword [rbp + 0x938]
movdqu xmmword [rbp + 0x940], xmm0
mov eax, dword [rbp + 0x94c]
mov edi, dword [rbp + 0x948]
movdqu xmmword [rbp + 0x950], xmm1
mov r13d, dword [rbp + 0x958]
mov dword [rbp + 0x58], eax
mov eax, dword [rbp + 0x95c]
mov dword [rbp - 0x50], eax
mov eax, dword [rbp + 0x954]
mov dword [rbp - 0x78], eax
mov dword [rbp - 0x38], ecx
mov eax, ecx
mov dword [rsp + 0x28], r14d
mov rcx, qword [rbp + 0x48]
lea r9, [rbp + 0x3a0]
neg eax
mov qword [rbp + 0x3a0], r14
mov dword [rbp + 0x9f8], eax
lea rdx, [rbp + 0x9f0]
mov rax, qword [0x1401130b8]
xorps xmm0, xmm0
xor r8d, r8d
mov qword [rbp + 0xa10], r14
movdqu xmmword [rbp + 0xa00], xmm0
mov dword [rbp + 0xa18], r14d
mov dword [rbp + 0x9f0], 0x28
mov dword [rbp + 0x9f4], r12d
mov dword [rbp + 0x9fc], 0x200001
mov qword [rsp + 0x20], r14
call qword [str._w_v_]
mov qword [rbp + 0x50], rax
test rax, rax
jne 0x14002fba0
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x1400306eb
mov rcx, qword [rbp + 0x48]
mov rdx, rax
mov rax, qword [0x140113118]
call qword [str._w_v_]
mov eax, 1
cmp dword [rsp + 0x78], eax
jne 0x14002fbf8
mov r8, qword [rbp + 0x78]
test r8, r8
je 0x14002fbf8
mov eax, dword [rbp - 0x38]
lea rdx, [rbp + 0x9b0]
and qword [rbp + 0x9b0], 0
mov rcx, qword [rbp + 0x48]
mov dword [rbp + 0x9bc], eax
mov rax, qword [0x140113188]
mov dword [rbp + 0x9b8], r12d
call qword [str._w_v_]
mov eax, dword [rbp + 0x4b4]
lea rcx, [rbp + 0x590]
mov dword [rsp + 0x7c], eax
xor edx, edx
mov rax, qword [rbp + 0x4d0]
mov qword [rbp + 0x68], rax
mov rax, qword [rbp + 0x4b8]
lea r8d, [rdx + 0x68]
mov qword [rbp + 0x18], rax
call sub.msvcrt.dll_memset
xor edx, edx
lea rcx, [rbp + 0x830]
lea r8d, [rdx + 0x68]
call sub.msvcrt.dll_memset
xor edx, edx
mov qword [rbp + 0x10], r14
lea rcx, [rbp + 0xa20]
mov dword [rbp - 0x70], r14d
mov dword [rbp - 0x30], r14d
lea r8d, [rdx + 0x2c]
call sub.msvcrt.dll_memset
xor eax, eax
mov qword [rbp + 0x980], rax
mov qword [rbp + 0x988], rax
cmp qword [rbp + 0x18], r14
je 0x1400306d2
mov rcx, qword [rbp + 0x48]
lea edx, [rax + 7]
mov rax, qword [0x1401130f0]
call qword [str._w_v_]
test rax, rax
jne 0x14002fc98
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x1400306d2
mov rcx, rax
lea r8, [rbp + 0x590]
mov rax, qword [0x140113108]
mov edx, 0x68
call qword [str._w_v_]
test eax, eax
je 0x14002fcd5
mov rax, qword [rbp + 0x5a8]
mov qword [rbp + 0x10], rax
mov eax, dword [rbp + 0x594]
mov dword [rbp - 0x70], eax
mov eax, dword [rbp + 0x598]
mov dword [rbp - 0x30], eax
mov rcx, qword [rbp + 0x48]
mov rax, qword [0x1401130b0]
call qword [str._w_v_]
mov qword [rbp - 0x20], rax
mov rcx, rax
test rax, rax
je 0x14002fc8d
mov eax, dword [rbp + 0x944]
lea r9, [rbp + 0x3a8]
sub eax, dword [rbp + 0x58]
lea rdx, [rbp + 0xa20]
sub edi, dword [rbp + 0x940]
xorps xmm0, xmm0
mov dword [rbp + 0xa28], eax
xor r8d, r8d
mov rax, qword [0x1401130b8]
mov dword [rsp + 0x28], r14d
mov qword [rbp + 0x3a8], r14
mov dword [rsp + 0x68], r14d
movdqu xmmword [rbp + 0xa30], xmm0
mov qword [rbp + 0xa40], r14
mov dword [rbp + 0xa48], r14d
mov dword [rbp + 0xa20], 0x28
mov dword [rbp + 0xa24], edi
mov dword [rbp + 0xa2c], 0x200001
mov qword [rsp + 0x20], r14
call qword [str._w_v_]
mov qword [rbp - 0x68], rax
test rax, rax
jne 0x14002fda4
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov dword [rsp + 0x68], ecx
test ecx, ecx
js 0x1400300fa
mov dword [rsp + 0x68], 0x80004005
jmp 0x1400300fa
mov rcx, rax
lea r8, [rbp + 0x830]
mov rax, qword [0x140113108]
mov edx, 0x68
call qword [str._w_v_]
mov rdx, qword [rbp - 0x68]
mov rcx, r14
test eax, eax
mov dword [rbp + 0x988], edi
mov eax, dword [rbp + 0x58]
cmovne rcx, qword [rbp + 0x848]
sub eax, dword [rbp + 0x944]
mov rdi, qword [rbp - 0x20]
mov dword [rbp + 0x98c], eax
mov rax, qword [0x140113118]
mov qword [rbp - 0x10], rcx
mov rcx, rdi
call qword [str._w_v_]
mov rax, qword [fcn.1400058c0]
mov edx, 1
mov rcx, rdi
call qword [str._w_v_]
mov rdx, qword [rbp + 0x68]
mov rcx, rdi
mov rax, qword [0x140113118]
call qword [str._w_v_]
mov qword [rbp + 0x58], rax
xor ecx, ecx
mov rax, qword [0x140113110]
call qword [str._w_v_]
lea rdx, [rbp + 0x980]
mov rcx, rdi
mov r8, rax
mov rax, qword [0x140113188]
call qword [str._w_v_]
mov eax, dword [rbp - 0x80]
lea r9, [rbp + 0x980]
mov rdx, qword [rbp + 0x18]
or r8d, 0xffffffff
mov qword [rsp + 0x28], r14
mov rcx, rdi
mov dword [rsp + 0x20], eax
mov rax, qword [fcn.1400058c0]
call qword [str._w_v_]
mov eax, 1
cmp dword [rsp + 0x78], eax
jne 0x14002feb1
cmp dword [rsp + 0x7c], r14d
je 0x14002fea7
lea ecx, [rax + 7]
mov rax, qword [0x1401131b8]
call qword [str._w_v_]
mov dword [rsp + 0x7c], eax
jmp 0x14002feb9
mov dword [rsp + 0x7c], 0xffffff
jmp 0x14002feb9
mov dword [rsp + 0x7c], 0xffa8a8a8
mov eax, dword [rbp + 0x940]
mov r10d, r14d
mov r11d, dword [rbp - 0x70]
mov r9d, eax
mov edx, dword [rbp - 0x30]
neg r9d
test eax, eax
mov r8d, r14d
cmovns r10d, eax
cmovns r9d, r14d
mov eax, dword [rbp + 0x944]
mov ecx, eax
neg ecx
test eax, eax
cmovns r8d, eax
cmovns ecx, r14d
mov eax, dword [rbp + 0x988]
sub r11d, r10d
sub eax, r9d
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 0x1400300cd
test edx, edx
jle 0x1400300cd
mov eax, dword [rbp + 0x988]
mov ebx, 1
mov esi, dword [rsp + 0x7c]
imul eax, ecx
movsxd rcx, eax
movsxd rax, r9d
movsxd r9, dword [rbp - 0x70]
add rcx, rax
mov rax, qword [rbp - 0x10]
imul r8d, r9d
mov qword [rbp - 0x70], rdx
lea rdi, [rax + rcx*4]
movsxd rax, r10d
mov qword [rbp + 0x18], rdi
movsxd rcx, r8d
mov r8, r9
add rcx, rax
mov rax, qword [rbp + 0x10]
lea rax, [rax + rcx*4]
movsxd rcx, dword [rbp + 0x988]
shl rcx, 2
shl r8, 2
mov qword [rbp + 0x68], r8
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x10], rcx
test r11d, r11d
jle 0x14003009a
mov r10, rax
lea r9, [rdi + 2]
sub r10, rdi
mov edi, r11d
mov qword [rbp + 0x10], 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 0x140030075
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 + 0x7d]
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 + 0x7e]
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 + 0x10]
mov byte [r10 + r9 + 1], dl
add r9, 4
sub rdi, rbx
mov qword [rbp + 0x10], rdi
jne 0x14002ffa0
mov rdi, qword [rbp + 0x18]
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x10]
mov r8, qword [rbp + 0x68]
mov rdx, qword [rbp - 0x70]
add rdi, rcx
add rax, r8
sub rdx, rbx
mov qword [rbp + 0x18], rdi
mov qword [rbp - 0x70], rdx
mov qword [rbp - 0x30], rax
jne 0x14002ff86
mov rdi, qword [rbp - 0x20]
movabs rbx, 0xc81ecb17b1b54a58
movabs rsi, 0x7f1137fab69605e
mov rcx, qword [rbp - 0x68]
mov rax, qword [0x1401130d8]
call qword [str._w_v_]
mov rax, qword [rbp + 0x58]
test rax, rax
je 0x1400300fa
mov rdx, rax
mov rcx, rdi
mov rax, qword [0x140113118]
call qword [str._w_v_]
mov rcx, qword [rbp - 0x20]
mov rax, qword [0x1401130d0]
call qword [str._w_v_]
cmp dword [rsp + 0x68], r14d
jl 0x1400306d2
mov eax, dword [rbp + 0x4b4]
lea rcx, [rbp + 0x6e0]
mov rdi, qword [rbp + 0x4c0]
xor edx, edx
mov dword [rbp + 0x58], eax
mov rax, qword [rbp + 0x4d8]
mov qword [rbp - 0x10], rax
lea r8d, [rdx + 0x68]
mov qword [rbp + 0x68], rdi
call sub.msvcrt.dll_memset
xor edx, edx
lea rcx, [rbp + 0x8a0]
lea r8d, [rdx + 0x68]
call sub.msvcrt.dll_memset
xor edx, edx
mov qword [rbp - 0x68], r14
lea rcx, [rbp + 0xa50]
mov dword [rsp + 0x68], r14d
mov dword [rbp - 0x30], r14d
lea r8d, [rdx + 0x2c]
call sub.msvcrt.dll_memset
xor eax, eax
mov qword [rbp + 0x990], rax
mov qword [rbp + 0x998], rax
test rdi, rdi
je 0x1400306d2
mov rdi, qword [rbp + 0x48]
lea edx, [rax + 7]
mov rax, qword [0x1401130f0]
mov rcx, rdi
call qword [str._w_v_]
test rax, rax
je 0x14002fc8d
mov rcx, rax
lea r8, [rbp + 0x6e0]
mov rax, qword [0x140113108]
mov edx, 0x68
call qword [str._w_v_]
test eax, eax
je 0x1400301ef
mov rax, qword [rbp + 0x6f8]
mov qword [rbp - 0x68], rax
mov eax, dword [rbp + 0x6e4]
mov dword [rsp + 0x68], eax
mov eax, dword [rbp + 0x6e8]
mov dword [rbp - 0x30], eax
mov rax, qword [0x1401130b0]
mov rcx, rdi
call qword [str._w_v_]
mov qword [rbp - 0x20], rax
mov rcx, rax
test rax, rax
je 0x14002fc8d
mov edi, dword [rbp - 0x78]
lea r9, [rbp + 0x3b8]
sub r13d, dword [rbp + 0x950]
lea rdx, [rbp + 0xa50]
mov eax, edi
mov dword [rsp + 0x28], r14d
sub eax, dword [rbp - 0x50]
xorps xmm0, xmm0
mov dword [rbp + 0xa58], eax
xor r8d, r8d
mov rax, qword [0x1401130b8]
mov qword [rbp + 0x3b8], r14
mov dword [rbp - 0x70], r14d
movdqu xmmword [rbp + 0xa60], xmm0
mov qword [rbp + 0xa70], r14
mov dword [rbp + 0xa78], r14d
mov dword [rbp + 0xa50], 0x28
mov dword [rbp + 0xa54], r13d
mov dword [rbp + 0xa5c], 0x200001
mov qword [rsp + 0x20], r14
call qword [str._w_v_]
mov qword [rbp - 0x78], rax
test rax, rax
jne 0x1400302c3
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov dword [rbp - 0x70], ecx
mov r13, qword [rbp - 0x20]
test ecx, ecx
js 0x140030607
mov dword [rbp - 0x70], 0x80004005
jmp 0x140030607
mov rcx, rax
lea r8, [rbp + 0x8a0]
mov rax, qword [0x140113108]
mov edx, 0x68
call qword [str._w_v_]
mov rdx, qword [rbp - 0x78]
mov rcx, r14
test eax, eax
mov dword [rbp + 0x998], r13d
mov eax, dword [rbp - 0x50]
cmovne rcx, qword [rbp + 0x8b8]
sub eax, edi
mov r13, qword [rbp - 0x20]
mov dword [rbp + 0x99c], eax
mov rax, qword [0x140113118]
mov qword [rbp + 0x10], rcx
mov rcx, r13
call qword [str._w_v_]
mov rax, qword [fcn.1400058c0]
mov edx, 1
mov rcx, r13
call qword [str._w_v_]
mov rdx, qword [rbp - 0x10]
mov rcx, r13
mov rax, qword [0x140113118]
call qword [str._w_v_]
mov qword [rbp - 0x50], rax
xor ecx, ecx
mov rax, qword [0x140113110]
call qword [str._w_v_]
lea rdx, [rbp + 0x990]
mov rcx, r13
mov r8, rax
mov rax, qword [0x140113188]
call qword [str._w_v_]
mov eax, dword [rbp - 0x80]
lea r9, [rbp + 0x990]
mov rdx, qword [rbp + 0x68]
or r8d, 0xffffffff
mov qword [rsp + 0x28], r14
mov rcx, r13
mov dword [rsp + 0x20], eax
mov rax, qword [fcn.1400058c0]
call qword [str._w_v_]
mov eax, 1
cmp dword [rsp + 0x78], eax
jne 0x1400303c7
cmp dword [rbp + 0x58], r14d
je 0x1400303be
lea ecx, [rax + 7]
mov rax, qword [0x1401131b8]
call qword [str._w_v_]
jmp 0x1400303cc
mov dword [rbp - 0x80], 0xffffff
jmp 0x1400303d2
mov eax, 0xffa8a8a8
mov dword [rbp - 0x80], eax
mov dword [rbp - 0x7c], eax
mov eax, dword [rbp + 0x950]
mov r9d, r14d
mov r11d, dword [rsp + 0x68]
mov r8d, eax
mov edx, dword [rbp - 0x30]
neg r8d
test eax, eax
mov ecx, edi
mov r10d, r14d
cmovns r9d, eax
cmovns r8d, r14d
mov eax, dword [rbp + 0x998]
neg ecx
test edi, edi
cmovns ecx, r14d
cmovns r10d, edi
sub eax, r8d
sub r11d, r9d
cmp eax, r11d
cmovl r11d, eax
mov eax, dword [rbp + 0x99c]
sub eax, ecx
sub edx, r10d
cmp eax, edx
cmovl edx, eax
test r11d, r11d
jle 0x1400305da
test edx, edx
jle 0x1400305da
mov eax, dword [rbp + 0x998]
mov esi, 1
mov ebx, dword [rbp - 0x7c]
imul eax, ecx
mov qword [rbp - 0x20], rdx
movsxd rcx, eax
movsxd rax, r8d
movsxd r8, dword [rsp + 0x68]
add rcx, rax
mov rax, qword [rbp + 0x10]
lea rdi, [rax + rcx*4]
mov eax, r8d
imul eax, r10d
mov qword [rbp + 0x10], rdi
movsxd rcx, eax
movsxd rax, r9d
add rcx, rax
mov rax, qword [rbp - 0x68]
lea rax, [rax + rcx*4]
movsxd rcx, dword [rbp + 0x998]
shl rcx, 2
shl r8, 2
mov qword [rbp + 0x68], r8
mov qword [rbp + 0x18], rax
mov qword [rbp - 0x10], rcx
test r11d, r11d
jle 0x1400305ab
mov r10, rax
lea r9, [rdi + 2]
sub r10, rdi
mov edi, r11d
mov qword [rbp - 0x68], 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 0x140030586
movzx edi, byte [r10 + r9]
mov eax, 0x80808081
movzx r8d, dl
movzx ecx, bl
sub ecx, edi
imul ecx, r8d
imul ecx
add edx, ecx
movzx ecx, byte [rbp - 0x7f]
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 - 0x7e]
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 - 0x68]
mov byte [r10 + r9 + 1], dl
add r9, 4
sub rdi, rsi
mov qword [rbp - 0x68], rdi
jne 0x1400304b4
mov rdi, qword [rbp + 0x10]
mov rax, qword [rbp + 0x18]
mov rcx, qword [rbp - 0x10]
mov r8, qword [rbp + 0x68]
mov rdx, qword [rbp - 0x20]
add rdi, rcx
add rax, r8
sub rdx, rsi
mov qword [rbp + 0x10], rdi
mov qword [rbp - 0x20], rdx
mov qword [rbp + 0x18], rax
jne 0x14003049a
movabs rbx, 0xc81ecb17b1b54a58
movabs rsi, 0x7f1137fab69605e
mov rcx, qword [rbp - 0x78]
mov rax, qword [0x1401130d8]
call qword [str._w_v_]
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x140030607
mov rdx, rax
mov rcx, r13
mov rax, qword [0x140113118]
call qword [str._w_v_]
mov rax, qword [0x1401130d0]
mov rcx, r13
call qword [str._w_v_]
cmp dword [rbp - 0x70], r14d
jl 0x1400306d2
mov rdi, qword [rbp + 0x60]
mov eax, 1
mov r9d, r12d
cmp dword [rsp + 0x78], eax
jne 0x140030674
mov rax, qword [rbp + 0x48]
mov rcx, rdi
mov r8d, dword [rbp + 0x4f0]
mov edx, dword [rbp + 0x4ec]
mov dword [rsp + 0x40], 0xcc0020
mov dword [rsp + 0x38], r14d
mov dword [rsp + 0x30], r14d
mov qword [rsp + 0x28], rax
mov eax, dword [rbp - 0x38]
mov dword [rsp + 0x20], eax
mov rax, qword [0x1401130a0]
call qword [str._w_v_]
jmp 0x1400306be
mov eax, dword [rbp - 0x38]
mov ecx, dword [rbp + 0x80]
mov r8d, dword [rbp + 0x934]
mov edx, dword [rbp + 0x930]
mov dword [rsp + 0x50], ecx
mov rcx, qword [rbp + 0x48]
mov dword [rsp + 0x48], eax
mov dword [rsp + 0x40], r12d
mov dword [rsp + 0x38], r14d
mov dword [rsp + 0x30], r14d
mov qword [rsp + 0x28], rcx
mov rcx, rdi
mov dword [rsp + 0x20], eax
mov rax, qword [fcn.1400058c0]
call qword [str._w_v_]
mov edx, dword [rsp + 0x70]
mov rcx, rdi
mov rax, qword [fcn.1400058c0]
call qword [str._w_v_]
mov rax, qword [rbp + 0x50]
test rax, rax
je 0x1400306eb
mov rcx, rax
mov rax, qword [0x1401130d8]
call qword [str._w_v_]
mov rax, qword [rbp + 0x48]
test rax, rax
je 0x140030704
mov rcx, rax
mov rax, qword [0x1401130d0]
call qword [str._w_v_]
mov rax, qword [rbp + 0x78]
test rax, rax
je 0x14003071d
mov rcx, rax
mov rax, qword [0x1401130d8]
call qword [str._w_v_]
mov rax, qword [rbp + 0x4b8]
or r12, 0xffffffffffffffff
test rax, rax
je 0x14003076f
mov rcx, r12
inc rcx
cmp word [rax + rcx*2], r14w
jne 0x140030730
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], r14
mov rax, qword [rbp + 0x4c0]
test rax, rax
je 0x1400307bd
mov rcx, r12
inc rcx
cmp word [rax + rcx*2], r14w
jne 0x14003077e
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], r14
mov rdi, qword [rbp + 0x4c8]
test rdi, rdi
je 0x140030804
mov rcx, r12
inc rcx
cmp word [rdi + rcx*2], r14w
jne 0x1400307cc
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], r14
mov rcx, qword [rbp + 0x4d0]
test rcx, rcx
je 0x140030824
mov rax, qword [0x1401130d8]
call qword [str._w_v_]
mov qword [rbp + 0x4d0], r14
mov rcx, qword [rbp + 0x4d8]
test rcx, rcx
je 0x140030844
mov rax, qword [0x1401130d8]
call qword [str._w_v_]
mov qword [rbp + 0x4d8], r14
mov rcx, qword [rbp + 0x4e0]
test rcx, rcx
je 0x140030864
mov rax, qword [0x1401130d8]
call qword [str._w_v_]
mov qword [rbp + 0x4e0], r14
mov r13d, 1
xor eax, eax
lock cmpxchg dword [0x14011b404], r13d
jne 0x14003086a
mov eax, dword [0x14011b400]
test eax, eax
jle 0x1400308dc
sub eax, r13d
mov dword [0x14011b400], eax
jne 0x1400308dc
lea rdi, [0x14011aa20]
mov r12d, 4
cmp qword [rdi], r14
je 0x1400308a7
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
add rdi, 0x18
sub r12, r13
jne 0x140030899
xor edx, edx
lea r8d, [r12 + 0x60]
lea rcx, [0x14011aa20]
call sub.msvcrt.dll_memset
mov r8d, 0x170
lea rdx, [0x1400c92d0]
lea rcx, [0x1401130a0]
call sub.msvcrt.dll_memcpy
mov eax, r14d
xchg dword [0x14011b404], eax
mov eax, dword [0x14011aa18]
mov dword [rbp - 0x30], eax
mov rax, qword [0x140113138]
call qword [str._w_v_]
xor edx, edx
mov dword [rbp + 0xd20], r14d
sub eax, dword [0x14011b3f8]
lea rcx, [rbp + 0xd28]
mov qword [rbp + 0x68], rax
lea r8d, [rdx + 0x38]
call sub.msvcrt.dll_memset
xor eax, eax
lock cmpxchg dword [0x14011b404], r13d
jne 0x14003091e
mov eax, dword [0x14011b400]
test eax, eax
jne 0x140030f19
mov dword [rbp - 0x50], r14d
mov dword [rsp + 0x68], r14d
mov qword [rbp + 0x168], r14
mov qword [rbp + 0x2b8], r14
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 0x140030e8c
mov esi, r14d
mov dword [rbp], r14d
or r15d, 0xffffffff
mov dword [rbp + 0x30], r14d
mov r8d, r14d
lea rbx, [rax + 7]
mov r11d, r14d
lea r12, [0x1400ddba2]
mov ecx, 0x67
movzx eax, byte [r12 - 1]
movzx r10d, byte [r12 - 2]
movzx r9d, byte [r12 + 2]
shl r10d, 8
or r10d, eax
shl r9d, 8
movzx eax, byte [r12]
lea r12, [r12 + 8]
shl r10d, 8
or r10d, eax
movzx eax, byte [r12 - 7]
shl r10d, 8
or r10d, eax
movzx eax, byte [r12 - 5]
or r9d, eax
xor r11d, r10d
movzx eax, byte [r12 - 4]
shl r9d, 8
or r9d, eax
movzx eax, byte [r12 - 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, 0xab69
rol eax, 6
imul edx, eax, 0x7f1
mov eax, r11d
rol eax, 2
sub edx, eax
mov eax, 0x7f1137f
xor r8d, edx
mov edx, r8d
xor edx, 0xab69605e
sub eax, edx
xor r11d, eax
mov eax, r11d
mov edi, r11d
xor eax, 0x137f
ror edi, 6
imul edx, eax, 0xab69
xor edi, edx
xor r8d, edi
mov edi, 0xab69605e
lea eax, [r8 + 0x7f1137f]
ror eax, 0xf
imul edx, eax, 0x605e
mov eax, r8d
rol eax, 2
add edx, eax
xor r11d, edx
lea eax, [r11 + 0x54969fa2]
ror eax, 0xe
imul edx, eax, 0x7f1
mov eax, r11d
rol eax, 8
sub edx, eax
xor r8d, edx
mov eax, r8d
xor eax, edi
ror eax, 0xc
imul edx, eax, 0x137f
mov eax, r8d
ror eax, 0xa
xor edx, eax
xor r11d, edx
mov eax, r11d
xor eax, 0x7f1
imul edx, eax, 0xab69
mov eax, r11d
shr eax, 0xa
xor edx, eax
xor 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, edi
mov eax, r8d
xor eax, 0x7f1
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
xor r11d, r8d
xor r11d, 0xac987321
mov eax, r11d
ror eax, 3
imul edx, eax, 0x137f
sub edx, 0xd0dd417
xor r8d, edx
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], r8d
mov r15d, r9d
xor edx, eax
xor edx, esi
mov esi, r10d
xor r11d, edx
mov dword [rbp + 0x30], r11d
mov byte [rbx - 4], r11b
mov al, byte [rbp]
ror dword [rbp + 0x30], 8
mov byte [rbx], al
lea rbx, [rbx + 8]
ror dword [rbp], 8
mov al, byte [rbp + 0x30]
mov byte [rbx - 0xd], al
mov al, byte [rbp]
ror dword [rbp + 0x30], 8
mov byte [rbx - 9], al
ror dword [rbp], 8
mov al, byte [rbp + 0x30]
mov byte [rbx - 0xe], al
ror dword [rbp + 0x30], 8
mov al, byte [rbp]
mov byte [rbx - 0xa], al
ror dword [rbp], 8
mov al, byte [rbp + 0x30]
mov byte [rbx - 0xf], al
mov al, byte [rbp]
mov byte [rbx - 0xb], al
mov r11d, dword [rbp + 0x30]
mov r8d, dword [rbp]
ror r11d, 8
ror r8d, 8
mov dword [rbp + 0x30], r11d
mov dword [rbp], r8d
sub rcx, r13
jne 0x140030999
mov r15d, dword [rsp + 0x60]
mov rax, r14
mov r13, qword [rbp - 0x10]
mov cl, r14b
movabs rbx, 0xc81ecb17b1b54a58
movabs rsi, 0x7f1137fab69605e
mov r12d, r14d
mov edx, 1
mov edi, 0x338
xor cl, byte [rax + r13]
add rax, rdx
cmp rax, rdi
jb 0x140030ce9
movzx eax, cl
cmp rax, qword [0x1400dded8]
je 0x140030d08
mov edi, 0xc004d501
jmp 0x140030d1c
mov qword [rbp + 0x168], r13
mov r13, r14
mov qword [rbp + 0x2b8], rdi
mov edi, r14d
test r13, r13
je 0x140030d35
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 0x140030e8c
mov rax, qword [rbp + 0x2b8]
lea r13, [0x14011aa20]
mov rdi, qword [rbp + 0x168]
xor edx, edx
mov rcx, r13
lea r8d, [rdx + 0x60]
mov byte [rax + rdi - 1], r14b
call sub.msvcrt.dll_memset
cmp byte [rdi], r14b
je 0x140030e92
jmp 0x140030d77
lea r13, [0x14011aa20]
mov rdx, rdi
or rax, 0xffffffffffffffff
inc rax
cmp word [rdi + rax*2], r14w
jne 0x140030d7e
lea rdi, [rdi + rax*2]
mov eax, dword [rsp + 0x68]
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 0x140030e8c
mov rax, qword [r13]
mov ecx, 0x5a4d
mov r12d, r14d
cmp word [rax], cx
je 0x140030dc5
mov r12d, 0xc000007b
jmp 0x140030e13
movsxd rcx, dword [rax + 0x3c]
cmp ecx, 0x10000000
jae 0x140030dbd
add rcx, qword [r13]
cmp rcx, qword [r13]
jb 0x140030dbd
cmp dword [rcx], 0x4550
jne 0x140030dbd
movzx eax, word [rcx + 0x18]
mov edx, 0x10b
sub ax, dx
mov edx, 0xfeff
test dx, ax
je 0x140030e01
mov r12d, 0xc000000d
jmp 0x140030e13
mov rax, qword [rcx + 0x88]
mov qword [r13 + 0xc], rax
mov eax, dword [rcx + 0x50]
mov dword [r13 + 8], eax
mov eax, dword [rdi + 2]
mov ecx, r14d
add rdi, 6
mov dword [rsp + 0x70], eax
mov dword [rbp - 0x78], ecx
test eax, eax
je 0x140030e76
mov rdx, rdi
or rax, 0xffffffffffffffff
inc rax
cmp byte [rdi + rax], r14b
jne 0x140030e2f
inc rdi
add rdi, rax
test r12d, r12d
js 0x140030e63
mov rcx, qword [r13]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140030e92
mov ecx, dword [rbp - 0x50]
lea rdx, [0x1401130a0]
mov qword [rdx + rcx*8], rax
mov ecx, dword [rbp - 0x78]
mov eax, 1
add dword [rbp - 0x50], eax
add ecx, eax
mov dword [rbp - 0x78], ecx
cmp ecx, dword [rsp + 0x70]
jb 0x140030e28
mov r13d, 1
add dword [rsp + 0x68], r13d
cmp byte [rdi], r14b
jne 0x140030d70
jmp 0x140030e98
mov r12d, 0xc000007a
mov r13d, 1
cmp qword [rbp + 0x168], r14
je 0x140030eb9
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp + 0x168]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r12d, r12d
jns 0x140030f13
lea rdi, [0x14011aa20]
mov r12d, 4
cmp qword [rdi], r14
je 0x140030ed9
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
add rdi, 0x18
sub r12, r13
jne 0x140030ecb
lea rdi, [0x14011aa20]
xor edx, edx
mov rcx, rdi
lea r8d, [r12 + 0x60]
call sub.msvcrt.dll_memset
mov r8d, 0x170
lea rdx, [0x1400c92d0]
lea rcx, [0x1401130a0]
call sub.msvcrt.dll_memcpy
jmp 0x140030f29
mov eax, dword [0x14011b400]
add eax, r13d
lea rdi, [0x14011aa20]
mov dword [0x14011b400], eax
mov rcx, qword [rbp + 0x68]
lea r9, [rbp + 0xd20]
mov eax, r14d
mov r12d, 4
xchg dword [0x14011b404], eax
mov eax, dword [rbp - 0x30]
mov r8d, r12d
mov dword [rbp + 0xd58], eax
mov edx, 0x2021
mov rax, qword [0x140113170]
mov dword [rbp + 0xd28], ecx
xor ecx, ecx
mov dword [rbp + 0xd20], r13d
mov dword [rbp + 0xd38], 0x9966f291
mov dword [rbp + 0xd30], r13d
mov dword [rbp + 0xd48], r13d
mov dword [rbp + 0xd40], r13d
mov dword [rbp + 0xd50], r13d
call qword [str._w_v_]
xor eax, eax
lock cmpxchg dword [0x14011b404], r13d
jne 0x140030f96
mov eax, dword [0x14011b400]
test eax, eax
jle 0x140030ffb
sub eax, r13d
mov dword [0x14011b400], eax
jne 0x140030ffb
cmp qword [rdi], r14
je 0x140030fc6
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
add rdi, 0x18
sub r12, r13
jne 0x140030fb8
xor edx, edx
lea r8d, [r12 + 0x60]
lea rcx, [0x14011aa20]
call sub.msvcrt.dll_memset
mov r8d, 0x170
lea rdx, [0x1400c92d0]
lea rcx, [0x1401130a0]
call sub.msvcrt.dll_memcpy
mov eax, r14d
xchg dword [0x14011b404], eax
mov rdx, qword [rbp + 0x60]
xor ecx, ecx
mov rax, qword [0x140113200]
call qword [str._w_v_]
lea rcx, [rbp + 0x3c0]
call fcn.14008a714
cmp dword [rbp + 0x88], r14d
je 0x140032e9a
xor eax, eax
mov dword [rbp + 0xc4], r14d
mov qword [rbp + 0x20], rax
mov edi, 0xa0
mov qword [rbp + 0x28], rax
mov r12, r14
mov qword [rbp + 0x130], rax
mov r13, r14
mov qword [rbp + 0x138], rax
lea rax, [0x140119bb0]
mov qword [rbp + 0x3c8], rax
mov qword [rbp + 0x2c0], 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 0x140032e13
mov r8, qword [rbp + 0x2c0]
mov rcx, rax
mov rdx, qword [rbp + 0x3c8]
call sub.msvcrt.dll_memcpy
mov r13d, dword [rbp + 0x2c0]
mov r12, rdi
mov dword [rsp + 0x70], r13d
mov qword [rbp - 0x70], rdi
lea rax, [0x140119af8]
mov edi, 8
mov qword [rbp + 0x3d0], rax
mov qword [rbp + 0x260], 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 + 0x68], rax
mov rdi, rax
test rax, rax
je 0x140032ec6
mov r8, qword [rbp + 0x260]
mov rcx, rax
mov rdx, qword [rbp + 0x3d0]
call sub.msvcrt.dll_memcpy
mov ecx, dword [rbp + 0x260]
mov dword [rbp - 0x78], ecx
mov qword [rsp + 0x68], rdi
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x2c8], rax
mov dword [rbp + 0xcc], 8
add r13d, 4
cmp r13d, 4
jb 0x140032ece
mov dword [rbp + 0xcc], r13d
lea eax, [r13 + 8]
or edi, 0xffffffff
cmp eax, 8
mov edx, edi
cmovae edx, eax
jb 0x140032e0e
lea r12d, [rcx + 4]
cmp r12d, 4
jb 0x140032e0a
mov dword [rbp + 0xcc], r12d
lea eax, [r12 + rdx]
mov ecx, edi
cmp eax, edx
cmovae ecx, eax
jb 0x140032e0a
mov dword [rbp + 0xcc], 0xc
lea eax, [rcx + 0xc]
mov edx, edi
cmp eax, ecx
cmovae edx, eax
jb 0x140032e0a
mov dword [rbp + 0x24], 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 0x140032e0a
mov qword [rbp + 0x28], rax
mov dword [rbp + 0x20], r14d
mov dword [rbp + 0x190], 4
lea rdi, [rax + 4]
cmp rdi, rax
jb 0x140032e0a
mov ecx, dword [rbp + 0x24]
add rcx, rax
add rax, 8
cmp rax, rcx
ja 0x140032e0a
mov dword [rdx], 4
mov eax, dword [rbp + 0x190]
mov dword [rdi], eax
mov r8d, dword [rbp + 0x20]
inc r8d
mov dword [rbp + 0x20], r8d
mov edi, dword [rsp + 0x70]
test edi, edi
je 0x1400312ca
cmp qword [rbp + 0x28], r14
jne 0x14003124f
mov dword [rbp + 0x198], r13d
mov eax, dword [rbp + 0x24]
lea ecx, [rax + r13]
cmp ecx, eax
jb 0x140032e0a
lea eax, [r8 + 1]
mov dword [rbp + 0x24], ecx
mov dword [rbp + 0x20], eax
jmp 0x1400312dc
mov rcx, qword [rbp + 0x28]
mov edx, r14d
test r8d, r8d
je 0x140031288
mov eax, dword [rcx]
add eax, 4
cmp eax, 4
jb 0x140032e0a
mov dword [rbp + 0x198], eax
mov r8d, eax
add r8, rcx
cmp r8, rcx
jb 0x140032e0a
inc edx
mov rcx, r8
cmp edx, dword [rbp + 0x20]
jb 0x14003125b
lea r9, [rcx + 4]
cmp r9, rcx
jb 0x140032e0a
mov edx, dword [rbp + 0x24]
lea rax, [rdi + 4]
add rdx, qword [rbp + 0x28]
add rax, rcx
mov r13d, r14d
mov r8, rdi
cmp rax, rdx
ja 0x140032e0a
mov rdx, qword [rbp - 0x10]
mov dword [rcx], edi
mov rcx, r9
call sub.msvcrt.dll_memcpy
mov eax, 1
add dword [rbp + 0x20], eax
jmp 0x1400312d0
mov r13d, 0xc000000d
test r13d, r13d
js 0x140032e0a
mov ecx, dword [rbp + 0x24]
mov r8d, dword [rbp - 0x78]
test r8d, r8d
je 0x1400313a0
cmp qword [rbp + 0x28], r14
jne 0x140031321
mov dword [rbp + 0x19c], r12d
lea eax, [rcx + r12]
cmp eax, ecx
jb 0x140032e0a
mov ecx, eax
mov r13d, 1
mov rax, qword [rbp + 0x2c8]
add dword [rbp + 0x20], r13d
mov qword [rbp + 0x2d0], rax
jmp 0x1400313c9
mov edx, r14d
mov rdi, qword [rbp + 0x28]
mov r13d, 1
cmp dword [rbp + 0x20], r14d
jbe 0x140031362
mov eax, dword [rdi]
add eax, 4
cmp eax, 4
jb 0x140032e0a
mov dword [rbp + 0x19c], eax
mov r9d, eax
add r9, rdi
cmp r9, rdi
jb 0x140032e0a
add edx, r13d
mov rdi, r9
cmp edx, dword [rbp + 0x20]
jb 0x140031334
lea r9, [rdi + 4]
cmp r9, rdi
jb 0x140032e0a
mov edx, ecx
lea rax, [r8 + 4]
add rdx, qword [rbp + 0x28]
add rax, rdi
mov r12d, r14d
cmp rax, rdx
ja 0x140032e0a
mov rdx, qword [rbp + 0x68]
mov rcx, r9
mov dword [rdi], r8d
call sub.msvcrt.dll_memcpy
add dword [rbp + 0x20], r13d
mov ecx, dword [rbp + 0x24]
jmp 0x1400313ac
mov r12d, 0xc000000d
mov r13d, 1
test r12d, r12d
js 0x140032e0a
mov rax, qword [rbp + 0x2c8]
mov qword [rbp + 0x2d0], rax
cmp qword [rbp + 0x28], r14
jne 0x1400313e3
mov dword [rbp + 0x1b0], 0xc
lea edi, [rcx + 0xc]
cmp edi, ecx
jb 0x140032e0a
mov dword [rbp + 0x24], edi
jmp 0x140031451
mov edi, r14d
mov rdx, qword [rbp + 0x28]
cmp dword [rbp + 0x20], r14d
jbe 0x14003141e
mov eax, dword [rdx]
add eax, 4
cmp eax, 4
jb 0x140032e0a
mov dword [rbp + 0x1b0], eax
mov r8d, eax
add r8, rdx
cmp r8, rdx
jb 0x140032e0a
add edi, r13d
mov rdx, r8
cmp edi, dword [rbp + 0x20]
jb 0x1400313f0
lea rdi, [rdx + 4]
cmp rdi, rdx
jb 0x140032e0a
add rcx, qword [rbp + 0x28]
lea rax, [rdx + 0xc]
cmp rax, rcx
ja 0x140032e0a
mov dword [rdx], 8
movsd xmm0, qword [rbp + 0x2d0]
movsd qword [rdi], xmm0
mov edi, dword [rbp + 0x24]
add dword [rbp + 0x20], r13d
mov dword [rbp + 0x308], 0xc
mov r9, r14
mov qword [rbp + 0x60], r14
mov r8d, r14d
mov dword [rsp + 0x7c], r14d
mov qword [rbp + 0x150], r14
mov r12, r14
mov qword [rbp + 0x58], r14
mov dword [rbp - 0x78], r14d
mov qword [rbp - 0x38], r14
mov dword [rbp + 0x74], r14d
mov qword [rbp + 0x78], r14
mov qword [rbp + 0x10], r14
mov dword [rbp + 0xd4], r14d
rdtsc
shl rdx, 0x20
or rax, rdx
mov qword [rbp + 0x2d8], rax
lea eax, [rdi + 8]
or ecx, 0xffffffff
cmp eax, 8
mov edx, 0xc0000095
cmovae ecx, eax
sbb edi, edi
and edi, edx
mov dword [rbp + 0xd0], ecx
cmp eax, 8
jb 0x14003159b
mov eax, ecx
add rax, 7
and eax, 0xfffffff8
cmp eax, ecx
jae 0x1400314df
mov edi, edx
jmp 0x14003159b
mov dword [rbp + 0xd0], 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 r13, rax
test rax, rax
jne 0x140031516
mov edi, 0xc0000017
mov r8d, r14d
mov r9, r14
jmp 0x14003159b
mov eax, dword [rbp + 0x20]
lea rdx, [r13 + 4]
mov dword [r13], eax
cmp rdx, r13
jb 0x14003156e
mov eax, dword [rbp + 0x24]
lea rcx, [rdx + 4]
mov dword [rdx], eax
cmp rcx, rdx
jb 0x14003156e
mov edx, dword [rbp + 0xd0]
mov edi, r14d
mov rax, qword [rbp + 0x2d8]
mov qword [rdx + r13 - 8], rax
mov r8d, dword [rbp + 0x24]
mov rdx, qword [rbp + 0x28]
call sub.msvcrt.dll_memcpy
mov r8d, dword [rbp + 0xd0]
mov r9, r13
mov qword [rbp + 0x60], r13
mov r13, r14
mov dword [rsp + 0x7c], r8d
jmp 0x140031579
mov r9, r14
mov r8d, r14d
mov edi, 0xc0000095
test r13, r13
je 0x14003159b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r8d, dword [rsp + 0x7c]
mov r9, qword [rbp + 0x60]
or edi, 0x10000000
jl 0x140032bd0
mov qword [rbp + 0x3e0], r14
mov r13, r14
mov qword [rbp + 0x3e8], r14
mov qword [rbp + 0x420], r14
mov qword [rbp + 0x3f8], r14
mov qword [rbp + 0x1a8], r14
mov qword [rbp + 0x3d8], r14
test r9, r9
jne 0x1400315e3
mov edi, 0xc000000d
jmp 0x140031db2
mov edi, r8d
mov qword [rbp + 0x68], rdi
test r8d, r8d
je 0x140031d0a
lea rax, [rdi + 8]
mov qword [rbp - 0x68], rax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
lea r8, [rdi + 8]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp + 0x50], rax
test rax, rax
je 0x140031d0a
mov r9, qword [rbp + 0x60]
mov dl, r14b
mov byte [rsp + 0x64], dl
mov rcx, r14
test rdi, rdi
je 0x140031640
xor dl, byte [rcx + r9]
inc rcx
cmp rcx, rdi
jb 0x140031630
mov byte [rsp + 0x64], dl
mov rcx, rax
mov qword [rbp + 0x48], rax
or r10d, 0xffffffff
mov qword [rbp + 0x918], rbx
mov rax, rdi
mov dword [rbp - 0x14], r14d
mov dword [rbp - 0x3c], r10d
mov r11d, r14d
mov dword [rsp + 0x7c], r14d
mov dword [rbp - 0x7c], r14d
and eax, 7
je 0x140031797
mov dword [rsp + 0x7c], r14d
mov r10d, r14d
mov dword [rbp - 0x7c], r14d
mov r8d, r14d
test eax, eax
je 0x1400316e7
mov r10d, 0x38
mov esi, r14d
mov ebx, r14d
movzx r8d, byte [r9]
inc r9
cmp r11d, 4
jge 0x1400316aa
lea ecx, [r10 - 0x20]
shl r8d, cl
or ebx, r8d
jmp 0x1400316b3
mov ecx, r10d
shl r8d, cl
or esi, r8d
inc r11d
sub r10d, 8
cmp r11d, eax
jl 0x140031691
mov rcx, qword [rbp + 0x48]
mov dword [rbp - 0x7c], ebx
movabs rbx, 0xc81ecb17b1b54a58
mov r8d, dword [rbp - 0x7c]
mov dword [rsp + 0x7c], esi
movabs rsi, 0x7f1137fab69605e
mov r10d, dword [rsp + 0x7c]
mov r11d, r8d
xor r10d, 0x42f6b18d
xor r11d, 0xb17a307a
mov dword [rbp - 0x3c], r10d
mov dword [rbp - 0x14], r11d
mov r8d, r14d
test eax, eax
je 0x14003175b
mov esi, 1
lea rbx, [rcx + 1]
mov qword [rbp - 0x10], rbx
cmp r8d, 4
jge 0x140031723
rol r11d, 8
mov ebx, r11d
jmp 0x14003172a
rol r10d, 8
mov ebx, r10d
mov byte [rcx], bl
add r8d, esi
mov rbx, qword [rbp - 0x10]
mov rcx, rbx
cmp r8d, eax
jl 0x14003170c
mov r11d, dword [rbp - 0x14]
movabs rsi, 0x7f1137fab69605e
mov r10d, dword [rbp - 0x3c]
mov qword [rbp + 0x48], rbx
movabs rbx, 0xc81ecb17b1b54a58
cmp eax, 4
jbe 0x140031776
mov ecx, 8
sub ecx, eax
shl ecx, 3
shr r10d, cl
shl r10d, cl
mov dword [rbp - 0x3c], r10d
jmp 0x140031793
mov r10d, r14d
mov dword [rbp - 0x3c], r14d
jae 0x140031797
mov ecx, 4
sub ecx, eax
shl ecx, 3
shr r11d, cl
shl r11d, cl
mov dword [rbp - 0x14], r11d
mov rcx, qword [rbp + 0x48]
mov rax, rdi
shr rax, 3
mov qword [rbp - 0x10], rax
test rax, rax
je 0x140031af7
mov rsi, qword [rbp - 0x10]
lea rdx, [rcx + 7]
mov r12d, dword [rsp + 0x7c]
lea rcx, [r9 + 2]
mov r13d, dword [rbp - 0x7c]
movzx r14d, word [rbp + 0x91c]
movzx eax, bx
mov dword [rsp + 0x70], eax
movzx eax, word [rbp + 0x91a]
mov r15d, dword [rsp + 0x70]
mov dword [rbp - 0x30], eax
movzx eax, byte [rcx - 1]
movzx r9d, byte [rcx - 2]
movzx r8d, byte [rcx + 2]
shl r9d, 8
or r9d, eax
shl r8d, 8
movzx eax, byte [rcx]
shl r9d, 8
or r9d, eax
movzx eax, byte [rcx + 1]
shl r9d, 8
or r9d, eax
movzx eax, byte [rcx + 3]
or r8d, eax
movzx eax, byte [rcx + 4]
shl r8d, 8
or r8d, eax
movzx eax, byte [rcx + 5]
add rcx, 8
shl r8d, 8
or r8d, eax
mov qword [rbp - 0x10], rcx
movzx eax, word [rbp + 0x91a]
xor r10d, r8d
mov edi, r10d
sub edi, r15d
xor edi, r9d
xor edi, r11d
mov r11d, dword [rbp + 0x91c]
xor edi, r11d
mov ecx, edi
xor ecx, r11d
ror ecx, 0xf
imul ecx, eax
mov eax, edi
ror eax, 7
add ecx, eax
xor r10d, ecx
mov eax, r10d
ror eax, 0xa
lea ecx, [r10 + rbx]
ror ecx, 9
imul ecx, r14d
sub ecx, eax
movzx eax, word [rbp + 0x91e]
xor edi, ecx
mov ecx, r14d
xor ecx, edi
rol ecx, 4
imul ecx, eax
mov eax, edi
rol eax, 5
add ecx, eax
mov eax, r11d
xor r10d, ecx
mov ecx, r10d
xor ecx, ebx
sub eax, ecx
xor edi, eax
movzx eax, word [rbp + 0x91a]
mov ecx, edi
sub ecx, r15d
imul ecx, eax
mov eax, edi
shr eax, 6
sub ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0x91e]
mov eax, r10d
ror eax, 0xf
xor eax, r14d
imul eax, r15d
xor edi, eax
mov eax, edi
not eax
ror eax, 3
add eax, ecx
imul eax, r14d
xor r10d, eax
mov eax, r10d
sub eax, r15d
sub eax, r11d
xor edi, eax
movzx eax, word [rbp + 0x91e]
xor eax, edi
mov ecx, edi
imul eax, dword [rbp - 0x30]
ror ecx, 0xa
xor ecx, eax
xor r10d, ecx
mov ecx, r10d
mov eax, r10d
xor ecx, r15d
ror eax, 3
rol ecx, 6
imul ecx, r14d
xor ecx, eax
xor edi, ecx
movzx ecx, word [rbp + 0x91e]
mov eax, edi
ror eax, 0xf
sub eax, ecx
imul eax, r15d
xor r10d, eax
xor ecx, r10d
mov eax, r10d
imul ecx, r15d
shr eax, 1
xor ecx, eax
mov eax, r10d
xor edi, ecx
shr eax, 0xf
mov ecx, r10d
sub ecx, r14d
rol ecx, 3
imul ecx, r15d
xor ecx, eax
movzx eax, word [rbp + 0x91a]
xor edi, ecx
mov ecx, edi
sub ecx, r14d
imul ecx, eax
mov eax, edi
shr eax, 0xd
sub ecx, eax
xor r10d, ecx
mov ecx, ebx
sub ecx, r10d
mov eax, r10d
ror ecx, 9
imul ecx, r14d
ror eax, 0xb
xor ecx, eax
xor edi, ecx
movzx ecx, word [rbp + 0x91e]
mov eax, edi
sub eax, ecx
sub eax, ebx
xor r10d, eax
movzx eax, word [rbp + 0x91a]
xor eax, r10d
mov ecx, r10d
ror ecx, 7
imul eax, r15d
sub eax, ecx
movzx ecx, word [rbp + 0x91e]
xor edi, eax
movzx eax, word [rbp + 0x91a]
xor ecx, edi
rol ecx, 4
imul ecx, eax
mov eax, edi
ror eax, 0x10
sub ecx, eax
xor r10d, ecx
mov ecx, ebx
sub ecx, r10d
mov eax, r10d
ror ecx, 0xa
imul ecx, r14d
ror eax, 4
add ecx, eax
movzx eax, word [rbp + 0x91e]
xor edi, ecx
mov ecx, edi
sub ecx, ebx
ror ecx, 4
imul ecx, eax
mov eax, edi
ror eax, 9
xor ecx, eax
xor r10d, ecx
mov ecx, r10d
mov eax, r10d
xor ecx, r11d
rol eax, 2
rol ecx, 8
imul ecx, r15d
sub ecx, eax
movzx eax, word [rbp + 0x91a]
xor edi, ecx
mov ecx, r11d
sub ecx, edi
ror ecx, 0xb
imul ecx, eax
mov eax, edi
ror eax, 0xc
sub ecx, eax
movzx eax, word [rbp + 0x91a]
xor r10d, ecx
mov ecx, r10d
xor ecx, eax
mov eax, r10d
shr eax, 8
imul ecx, r14d
xor ecx, eax
xor edi, ecx
mov rcx, qword [rbp - 0x10]
xor r10d, edi
xor edi, r13d
mov dword [rbp - 0x14], edi
xor r10d, ebx
xor r10d, r11d
mov r13d, r9d
xor r10d, r12d
mov r12d, r8d
mov dword [rbp - 0x3c], r10d
mov byte [rdx - 4], dil
mov al, byte [rbp - 0x3c]
ror dword [rbp - 0x14], 8
mov byte [rdx], al
ror dword [rbp - 0x3c], 8
mov al, byte [rbp - 0x14]
mov byte [rdx - 5], al
mov al, byte [rbp - 0x3c]
ror dword [rbp - 0x14], 8
mov byte [rdx - 1], al
ror dword [rbp - 0x3c], 8
mov al, byte [rbp - 0x14]
mov byte [rdx - 6], al
ror dword [rbp - 0x14], 8
mov al, byte [rbp - 0x3c]
mov byte [rdx - 2], al
ror dword [rbp - 0x3c], 8
mov al, byte [rbp - 0x14]
mov byte [rdx - 7], al
mov al, byte [rbp - 0x3c]
mov byte [rdx - 3], al
add rdx, 8
mov r11d, dword [rbp - 0x14]
mov r10d, dword [rbp - 0x3c]
ror r11d, 8
ror r10d, 8
mov dword [rbp - 0x14], r11d
mov dword [rbp - 0x3c], r10d
sub rsi, 1
jne 0x1400317de
mov dl, byte [rsp + 0x64]
xor r14d, r14d
mov r15d, dword [rsp + 0x60]
mov r12d, r14d
mov rdi, qword [rbp + 0x68]
mov r13d, r14d
movabs rsi, 0x7f1137fab69605e
mov rcx, qword [rbp + 0x50]
movzx eax, dl
mov qword [rcx + rdi], rax
mov rdi, qword [rbp - 0x68]
mov qword [rbp + 0x3d8], rdi
mov qword [rbp + 0x1a8], rcx
lea rax, [0x140119ba0]
mov qword [rbp + 0x3e8], 8
mov qword [rbp + 0x3e0], rax
lea rax, [0x140119b00]
mov qword [rbp + 0x3f8], 0xa0
mov qword [rbp + 0x420], rax
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 rbx, rax
test rax, rax
jne 0x140031b70
mov edi, 0xc0000017
jmp 0x140031cfa
mov dword [rax], edi
mov edi, edi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x140031b9a
mov edi, 0xc0000017
jmp 0x140031c6b
mov qword [rbx + 8], rax
mov rdx, qword [rbp + 0x50]
mov r8, rdi
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov edi, 0xa0
mov dword [rbx + 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 0x140031b90
mov qword [rbx + 0x18], rax
lea rcx, [0x140119b00]
movups xmm0, xmmword [rcx]
lea edx, [rdi + 0x78]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rax + 0x30], xmm1
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [rax + 0x40], xmm0
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [rax + 0x50], xmm1
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [rax + 0x60], xmm0
movups xmm1, xmmword [rcx + 0x70]
movups xmmword [rax + rdx - 0x10], xmm1
movups xmm0, xmmword [rcx + rdx]
movups xmmword [rax + rdx], xmm0
movups xmm1, xmmword [rcx + rdx + 0x10]
movups xmmword [rax + rdx + 0x10], xmm1
mov dword [rbx + 0x20], edi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, edi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140031b90
mov qword [rbx + 0x28], rax
movsd xmm0, qword [0x140119ba0]
mov r13, rbx
movsd qword [rax], xmm0
mov edi, r14d
mov rbx, r14
test rbx, rbx
je 0x140031cfa
mov rax, qword [rbx + 8]
mov qword [rbp - 0x10], rax
test rax, rax
je 0x140031c9a
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 [rbx + 8], r14
mov rax, qword [rbx + 0x18]
mov qword [rbp - 0x10], rax
test rax, rax
je 0x140031cc0
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 [rbx + 0x18], r14
mov rax, qword [rbx + 0x28]
mov qword [rbp - 0x10], rax
test rax, rax
je 0x140031ce6
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 [rbx + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test edi, edi
js 0x140031d0f
mov qword [rbp + 0x150], r13
mov r13, r14
jmp 0x140031d0f
mov edi, 0xc0000001
mov rbx, qword [rbp + 0x1a8]
test rbx, rbx
je 0x140031d36
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0x1a8], r14
test r13, r13
je 0x140031db2
mov rbx, qword [r13 + 8]
test rbx, rbx
je 0x140031d5c
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 8], r14
mov rbx, qword [r13 + 0x18]
test rbx, rbx
je 0x140031d7d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x18], r14
mov rbx, qword [r13 + 0x28]
test rbx, rbx
je 0x140031d9e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
or edi, 0x10000000
jl 0x140032bd0
mov rbx, qword [rbp + 0x150]
mov ecx, dword [rbx]
mov edi, dword [rbx + 0x20]
add ecx, 4
mov edx, dword [rbx + 0x10]
cmp ecx, 4
jb 0x140031ef6
lea eax, [rcx + 4]
cmp eax, ecx
jb 0x140031ef6
lea ecx, [rax + rdx]
cmp ecx, eax
jb 0x140031ef6
lea eax, [rcx + 4]
cmp eax, ecx
jb 0x140031ef6
lea ecx, [rax + rdi]
cmp ecx, eax
jb 0x140031ef6
mov dword [rbp + 0x1b4], ecx
mov edi, ecx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r13, rax
test rax, rax
jne 0x140031e3c
mov edi, 0xc0000017
mov r8d, 0xc0000095
jmp 0x140031eff
mov eax, dword [rbx]
lea rdi, [r13 + 4]
mov dword [r13], eax
cmp rdi, r13
jb 0x140031ecf
mov r8d, dword [rbx]
mov rcx, rdi
mov rdx, qword [rbx + 8]
call sub.msvcrt.dll_memcpy
mov ecx, dword [rbx]
add rcx, rdi
cmp rcx, rdi
jb 0x140031ecf
mov eax, dword [rbx + 0x10]
lea rdi, [rcx + 4]
mov dword [rcx], eax
cmp rdi, rcx
jb 0x140031ecf
mov r8d, dword [rbx + 0x10]
mov rcx, rdi
mov rdx, qword [rbx + 0x18]
call sub.msvcrt.dll_memcpy
mov ecx, dword [rbx + 0x10]
add rcx, rdi
cmp rcx, rdi
jb 0x140031ecf
mov eax, dword [rbx + 0x20]
lea rdi, [rcx + 4]
mov dword [rcx], eax
cmp rdi, rcx
jb 0x140031ecf
mov r8d, dword [rbx + 0x20]
mov rcx, rdi
mov rdx, qword [rbx + 0x28]
call sub.msvcrt.dll_memcpy
mov eax, dword [rbx + 0x20]
add rax, rdi
cmp rax, rdi
jb 0x140031ecf
mov eax, dword [rbp + 0x1b4]
mov edi, r14d
mov qword [rbp + 0x58], r13
mov r13, r14
mov dword [rbp - 0x78], eax
jmp 0x140031ed4
mov edi, 0xc0000095
test r13, r13
je 0x140031e31
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x140031e31
mov r8d, 0xc0000095
mov edi, r8d
or edi, 0x10000000
jl 0x140032bd0
mov qword [rbp + 0x400], r14
mov dword [rbp + 0x1f4], r14d
mov qword [rbp + 0x408], r14
mov dword [rbp + 0x1f8], r14d
mov dword [rbp + 0x324], 0x1c
mov dword [rbp + 0x320], 0x28
mov dword [rbp + 0x31c], 0x28
mov r13d, 1
cmp qword [rbp + 0x28], r14
jne 0x140031f5b
mov edi, 0xc000000d
jmp 0x140032031
cmp dword [rbp + 0x20], r13d
jbe 0x140031f51
mov rax, qword [rbp + 0x28]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14003202e
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x14003202e
add edx, r13d
cmp edx, r13d
jb 0x140031f68
mov edi, dword [rax]
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14003202e
test edi, edi
mov dword [rbp + 0x1f4], edi
mov rax, r14
cmovne rax, rcx
mov qword [rbp + 0x400], rax
cmp dword [rbp + 0x20], 2
jbe 0x140031f51
mov rax, qword [rbp + 0x28]
mov edx, r14d
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14003202e
mov eax, dword [rax]
add rax, rcx
cmp rax, rcx
jb 0x14003202e
add edx, r13d
cmp edx, 2
jb 0x140031fbd
mov edx, dword [rax]
lea rcx, [rax + 4]
cmp rcx, rax
jb 0x14003202e
test edx, edx
mov dword [rbp + 0x1f8], edx
mov rax, r14
cmovne rax, rcx
mov qword [rbp + 0x408], rax
lea eax, [rdi + 0x30]
cmp eax, 0x30
jb 0x14003202e
lea ecx, [rax + 4]
cmp ecx, eax
jb 0x14003202e
lea eax, [rcx + rdx]
cmp eax, ecx
jb 0x14003202e
mov dword [rbp + 0x30c], eax
mov edi, r14d
cmp eax, 0x400000
jbe 0x140032029
mov edi, 0x8000ffff
jmp 0x140032bd0
mov dword [rbp + 0x74], eax
jmp 0x140032031
mov edi, r8d
test edi, edi
js 0x140032bd0
mov edi, dword [rbp + 0x74]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, edi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x140032062
mov edi, 0xd0000017
mov rbx, r14
jmp 0x14003206e
mov rbx, rax
mov qword [rbp - 0x38], rax
mov edi, 0x10000000
test edi, edi
js 0x140032bd0
mov rax, qword [rbp + 0x58]
test rax, rax
jne 0x140032089
mov edi, 0x80070057
jmp 0x140032bd0
test rbx, rbx
je 0x14003207f
mov qword [rbp + 0x448], rax
lea r8, [rbp + 0x410]
mov eax, dword [rbp - 0x78]
lea rdx, [0x1400d6248]
mov dword [rbp + 0x458], eax
mov ecx, r13d
mov eax, dword [rbp + 0x74]
mov dword [rbp + 0x45c], eax
mov qword [rbp + 0x450], rbx
mov dword [rbp + 0x460], r14d
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
jne 0x1400320f2
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
test edi, edi
js 0x1400320ed
mov edi, 0x80004005
mov edx, dword [rbp + 0x74]
jmp 0x140032138
mov rcx, qword [rbp + 0x410]
lea rdx, str.NtQuerySystemInformation
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x1400320d0
xor r9d, r9d
lea rdx, [rbp + 0x448]
lea r8d, [r9 + 0x20]
lea ecx, [r8 + 0x66]
call qword [str._w_v_]
mov edx, dword [rbp + 0x74]
mov edi, eax
or edi, 0x10000000
cmovge edx, dword [rbp + 0x45c]
mov dword [rbp + 0x74], edx
cmp edi, 0xd0000023
jne 0x14003214a
mov edi, 0x8007007a
jmp 0x140032bd0
test edi, edi
js 0x140032bd0
mov qword [rbp - 0x68], r14
cmp edx, 4
jae 0x140032165
mov edi, 0xc000003e
jmp 0x140032485
mov ecx, dword [rbx]
lea rdi, [rbx + 4]
mov dword [rsp + 0x70], ecx
cmp rdi, rbx
jb 0x140032480
lea eax, [rdx - 4]
cmp eax, ecx
jb 0x14003215b
lea r10, [rdi + rcx]
mov qword [rbp + 0x50], rcx
mov qword [rbp - 0x10], r10
cmp r10, rdi
jb 0x140032480
lea r9d, [rcx + 4]
cmp r9d, 4
jb 0x140032480
mov eax, edx
sub eax, r9d
cmp eax, 4
jb 0x14003215b
mov edi, dword [r10]
lea r8, [r10 + 4]
cmp r8, r10
jb 0x140032480
lea r10d, [r9 + 4]
cmp r10d, r9d
jb 0x140032480
mov eax, edx
sub eax, r10d
cmp eax, edi
jb 0x14003215b
lea r11, [r8 + rdi]
cmp r11, r8
jb 0x140032480
lea r9d, [r10 + rdi]
cmp r9d, r10d
jb 0x140032480
mov eax, edx
sub eax, r9d
cmp eax, 4
jb 0x14003215b
mov r13d, dword [r11]
lea rax, [r11 + 4]
mov qword [rbp + 0x68], rax
cmp rax, r11
jb 0x140032480
lea r8d, [r9 + 4]
cmp r8d, r9d
jb 0x140032480
mov eax, edx
sub eax, r8d
cmp eax, r13d
jb 0x14003215b
lea r9d, [r8 + r13]
cmp r9d, r8d
jb 0x140032480
cmp edx, r9d
jne 0x14003215b
add ecx, edi
mov eax, edx
add ecx, r13d
add rcx, 0xc
cmp rcx, rax
jne 0x14003215b
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 rbx, rax
test rax, rax
jne 0x14003227d
mov edi, 0xc0000017
jmp 0x1400323e4
mov r12, qword [rbp - 0x38]
add r12, 4
je 0x1400322c9
mov eax, dword [rsp + 0x70]
mov dword [rbx], eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp + 0x50]
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x1400322b4
mov edi, 0xc0000017
jmp 0x140032368
mov qword [rbx + 8], rax
mov r8, qword [rbp + 0x50]
mov rdx, r12
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x1400322d0
mov dword [rax], r14d
mov qword [rax + 8], r14
mov r12, qword [rbp - 0x10]
add r12, 4
je 0x14003230d
mov dword [rbx + 0x10], edi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1400322aa
mov qword [rbx + 0x18], rax
mov r8, rdi
mov rdx, r12
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x140032315
mov dword [rbx + 0x10], r14d
mov qword [rbx + 0x18], r14
mov rdi, qword [rbp + 0x68]
test rdi, rdi
je 0x140032356
mov dword [rbx + 0x20], 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
je 0x1400322aa
mov qword [rbx + 0x28], rax
mov r8, r13
mov rdx, rdi
mov rcx, rax
call sub.msvcrt.dll_memcpy
jmp 0x14003235e
mov dword [rbx + 0x20], r14d
mov qword [rbx + 0x28], r14
mov qword [rbp - 0x68], rbx
mov edi, r14d
mov rbx, r14
test rbx, rbx
je 0x1400323e4
mov r12, qword [rbx + 8]
test r12, r12
je 0x14003238e
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 [rbx + 8], r14
mov r12, qword [rbx + 0x18]
test r12, r12
je 0x1400323af
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 [rbx + 0x18], r14
mov r12, qword [rbx + 0x28]
test r12, r12
je 0x1400323d0
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 [rbx + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r12, qword [rbp - 0x68]
test edi, edi
mov rbx, r14
cmovs rbx, qword [rbp - 0x68]
cmovs r12, r14
mov qword [rbp + 0x78], r12
test rbx, rbx
je 0x140032485
mov r13, qword [rbx + 8]
test r13, r13
je 0x140032424
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 8], r14
mov r13, qword [rbx + 0x18]
test r13, r13
je 0x140032445
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 0x18], r14
mov r13, qword [rbx + 0x28]
test r13, r13
je 0x140032466
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0x78], r12
jmp 0x140032485
mov edi, 0xc0000095
or edi, 0x10000000
jl 0x140032bd0
mov qword [rbp + 0x240], r14
mov rbx, r14
mov qword [rbp + 0x108], rbx
test r12, r12
jne 0x1400324b1
mov edi, 0xd000000d
jmp 0x140032bd0
mov rdi, qword [r12 + 8]
mov qword [rbp + 0x50], rdi
test rdi, rdi
je 0x1400324a7
cmp dword [r12], r14d
je 0x1400324a7
mov r13d, dword [r12]
mov dword [rbp - 0x30], r14d
test r13, r13
je 0x140032a3f
add r13, 0xfffffffffffffff8
mov qword [rbp + 0x68], r13
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbp - 0x20], rax
mov r8, rax
test rax, rax
je 0x140032a38
mov r9, rdi
mov qword [rbp + 0x928], rsi
mov rdi, r13
mov dword [rbp - 0x24], r14d
mov dl, r14b
mov rbx, rax
mov byte [rsp + 0x64], dl
mov r10d, r14d
mov r11d, r14d
and edi, 7
je 0x140032636
or ecx, 0xffffffff
mov dword [rbp - 0x50], r14d
mov dword [rbp - 0x44], ecx
mov ecx, r14d
mov dword [rbp + 0x8c], ecx
test edi, edi
je 0x140032599
mov esi, 0x38
lea r15d, [rsi - 0x37]
movzx eax, byte [r9]
inc r9
cmp r11d, 4
jge 0x140032569
lea ecx, [rsi - 0x20]
shl eax, cl
mov ecx, dword [rbp + 0x8c]
or r10d, eax
jmp 0x14003257b
mov ecx, esi
shl eax, cl
mov ecx, dword [rbp + 0x8c]
or ecx, eax
mov dword [rbp + 0x8c], ecx
add r11d, r15d
sub esi, 8
cmp r11d, edi
jl 0x14003254c
mov r15d, dword [rsp + 0x60]
movabs rsi, 0x7f1137fab69605e
mov dword [rbp - 0x50], r10d
xor r10d, 0x92f65a5
mov r11d, ecx
xor r11d, 0x699a899c
mov dword [rbp - 0x24], r10d
mov dword [rbp - 0x44], r11d
mov eax, r14d
test edi, edi
je 0x1400325fc
mov esi, 1
lea rcx, [rbx + 1]
mov qword [rbp - 0x10], rcx
cmp eax, 4
jge 0x1400325d4
rol r10d, 8
mov ecx, r10d
jmp 0x1400325db
rol r11d, 8
mov ecx, r11d
mov byte [rbx], cl
add eax, esi
mov rcx, qword [rbp - 0x10]
mov rbx, rcx
cmp eax, edi
jl 0x1400325be
mov r10d, dword [rbp - 0x24]
movabs rsi, 0x7f1137fab69605e
mov r11d, dword [rbp - 0x44]
cmp edi, 4
jbe 0x140032617
mov ecx, 8
sub ecx, edi
shl ecx, 3
shr r11d, cl
shl r11d, cl
mov dword [rbp - 0x44], r11d
jmp 0x14003263e
mov r11d, r14d
mov dword [rbp - 0x44], r14d
jae 0x14003263e
mov ecx, 4
sub ecx, edi
shl ecx, 3
shr r10d, cl
shl r10d, cl
mov dword [rbp - 0x24], r10d
jmp 0x14003263e
mov dword [rbp - 0x50], r14d
mov dword [rbp - 0x44], r14d
mov rax, r13
shr rax, 3
mov qword [rbp - 0x10], rax
test rax, rax
je 0x1400329a0
mov eax, dword [rbp + 0x92c]
lea r14, [rbx + 7]
movzx edi, word [rbp + 0x92e]
lea r12, [r9 + 2]
mov edx, dword [rbp - 0x50]
mov ebx, dword [rbp + 0x92c]
mov r13, qword [rbp - 0x10]
movzx r15d, ax
xor eax, esi
mov dword [rbp - 0x78], eax
movzx eax, word [rbp + 0x92a]
mov dword [rsp + 0x70], eax
movzx eax, si
mov dword [rbp - 0x7c], eax
movzx eax, byte [r12 - 1]
movzx r9d, byte [r12 - 2]
movzx r8d, byte [r12 + 2]
shl r9d, 8
or r9d, eax
shl r8d, 8
movzx eax, byte [r12]
lea r12, [r12 + 8]
shl r9d, 8
or r9d, eax
movzx eax, byte [r12 - 7]
shl r9d, 8
or r9d, eax
movzx eax, byte [r12 - 5]
or r8d, eax
xor r10d, r9d
movzx eax, byte [r12 - 4]
shl r8d, 8
or r8d, eax
movzx eax, byte [r12 - 3]
shl r8d, 8
or r8d, eax
xor r11d, r8d
xor r11d, r10d
xor r11d, esi
xor r11d, ebx
mov ecx, r11d
mov eax, r11d
sub ecx, esi
rol eax, 0xa
rol ecx, 5
imul ecx, r15d
add ecx, eax
movzx eax, word [rbp + 0x92a]
xor r10d, ecx
lea ecx, [rbx + r10]
ror ecx, 9
imul ecx, eax
mov eax, r10d
rol eax, 2
sub ecx, eax
xor r11d, ecx
mov ecx, r11d
mov eax, r11d
sub ecx, r15d
shr eax, 0xd
imul ecx, dword [rbp - 0x7c]
sub ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0x92a]
xor ecx, r10d
mov eax, r10d
rol ecx, 6
imul ecx, edi
rol eax, 2
sub ecx, eax
mov eax, ebx
xor r11d, ecx
mov ecx, r11d
xor ecx, esi
sub eax, ecx
xor r10d, eax
mov eax, r10d
mov ecx, r10d
ror ecx, 6
xor eax, r15d
imul eax, dword [rsp + 0x70]
xor ecx, eax
xor r11d, ecx
mov eax, r11d
rol eax, 2
lea ecx, [rbx + r11]
ror ecx, 0xf
imul ecx, dword [rbp - 0x7c]
add ecx, eax
xor r10d, ecx
mov ecx, r10d
mov eax, r10d
sub ecx, esi
ror ecx, 0xe
imul ecx, edi
rol eax, 8
sub ecx, eax
xor r11d, ecx
mov ecx, esi
xor ecx, r11d
mov eax, r11d
ror ecx, 0xc
imul ecx, r15d
ror eax, 0xa
xor ecx, eax
movzx eax, word [rbp + 0x92a]
xor r10d, ecx
mov ecx, edi
xor ecx, r10d
imul ecx, eax
mov eax, r10d
shr eax, 0xa
xor ecx, eax
xor r11d, ecx
mov eax, r11d
not eax
ror eax, 5
add eax, dword [rbp - 0x7c]
imul eax, edi
xor r10d, eax
movzx eax, word [rbp + 0x92e]
mov edi, r10d
sub edi, eax
xor edi, r11d
movzx r11d, word [rbp + 0x92e]
xor edi, esi
mov ecx, r11d
xor ecx, edi
mov eax, edi
rol ecx, 2
imul ecx, r15d
shr eax, 2
add ecx, eax
movzx eax, word [rbp + 0x92a]
xor r10d, ecx
mov ecx, r10d
sub ecx, ebx
ror ecx, 6
imul ecx, eax
mov eax, r10d
rol eax, 7
add ecx, eax
xor edi, ecx
mov eax, edi
mov ecx, edi
ror ecx, 9
xor eax, r15d
imul eax, dword [rbp - 0x7c]
add ecx, eax
xor r10d, ecx
movzx ecx, word [rbp + 0x92a]
xor ecx, r10d
mov eax, r10d
rol ecx, 5
rol eax, 7
imul ecx, r11d
add ecx, eax
mov eax, dword [rbp - 0x78]
xor edi, ecx
movzx ecx, word [rbp + 0x92a]
xor eax, edi
xor r10d, eax
mov eax, r10d
ror eax, 3
sub eax, ecx
imul eax, r15d
xor edi, eax
mov ecx, edi
mov eax, edi
sub ecx, ebx
ror eax, 6
ror ecx, 1
imul ecx, dword [rbp - 0x7c]
sub ecx, eax
xor r10d, ecx
lea ecx, [r10 + rsi]
rol ecx, 3
mov eax, r10d
imul ecx, r11d
rol eax, 0xe
add ecx, eax
xor edi, ecx
mov eax, edi
ror eax, 0xe
lea ecx, [rdi + rsi]
rol ecx, 0xf
imul ecx, r15d
sub ecx, eax
movzx eax, word [rbp + 0x92a]
xor r10d, ecx
mov ecx, r10d
xor ecx, dword [rbp - 0x7c]
imul ecx, eax
mov eax, r10d
shr eax, 3
xor ecx, eax
xor edi, ecx
mov ecx, ebx
xor ecx, edi
mov eax, edi
xor edi, dword [rbp + 0x8c]
mov dword [rbp - 0x44], edi
movzx edi, word [rbp + 0x92e]
rol eax, 2
rol ecx, 4
imul ecx, dword [rbp - 0x7c]
mov dword [rbp + 0x8c], r8d
xor ecx, eax
xor ecx, edx
mov edx, r9d
xor r10d, ecx
mov ecx, 1
mov dword [rbp - 0x24], r10d
mov byte [r14 - 4], r10b
mov al, byte [rbp - 0x44]
ror dword [rbp - 0x24], 8
mov byte [r14], al
lea r14, [r14 + 8]
ror dword [rbp - 0x44], 8
mov al, byte [rbp - 0x24]
mov byte [r14 - 0xd], al
mov al, byte [rbp - 0x44]
ror dword [rbp - 0x24], 8
mov byte [r14 - 9], al
ror dword [rbp - 0x44], 8
mov al, byte [rbp - 0x24]
mov byte [r14 - 0xe], al
ror dword [rbp - 0x24], 8
mov al, byte [rbp - 0x44]
mov byte [r14 - 0xa], al
ror dword [rbp - 0x44], 8
mov al, byte [rbp - 0x24]
mov byte [r14 - 0xf], al
mov al, byte [rbp - 0x44]
mov byte [r14 - 0xb], al
mov r10d, dword [rbp - 0x24]
mov r11d, dword [rbp - 0x44]
ror r10d, 8
ror r11d, 8
mov dword [rbp - 0x24], r10d
mov dword [rbp - 0x44], r11d
sub r13, rcx
jne 0x14003268e
mov dl, byte [rsp + 0x64]
xor r14d, r14d
mov r15d, dword [rsp + 0x60]
mov r12, qword [rbp + 0x78]
mov r13, qword [rbp + 0x68]
mov r8, qword [rbp - 0x20]
jmp 0x1400329a5
mov ecx, 1
mov rax, r14
test r13, r13
je 0x1400329b9
xor dl, byte [rax + r8]
add rax, rcx
cmp rax, r13
jb 0x1400329ad
mov rcx, qword [rbp + 0x50]
movzx eax, dl
cmp rax, qword [rcx + r13]
je 0x1400329d4
mov rbx, qword [rbp + 0x108]
mov edi, 0xc004d501
jmp 0x1400329ef
mov edi, dword [rbp - 0x30]
mov rbx, r8
mov qword [rbp + 0x108], rbx
mov r8, r14
mov qword [rbp - 0x20], r14
mov qword [rbp + 0x240], r13
test r8, r8
je 0x140032a10
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp - 0x20]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [rbp + 0x108]
test edi, edi
js 0x140032a3f
mov ecx, dword [rbp + 0x240]
mov rsi, rbx
mov qword [rbp + 0x10], rbx
mov edi, 0x10000000
mov rbx, r14
mov dword [rbp + 0xd4], ecx
mov qword [rbp + 0x108], rbx
jmp 0x140032a4d
mov rbx, qword [rbp + 0x108]
mov ecx, dword [rbp + 0xd4]
mov edi, 0xd0000001
mov rsi, r14
test rbx, rbx
je 0x140032a73
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [rbp + 0xd4]
mov qword [rbp + 0x108], r14
test edi, edi
js 0x140032bd0
cmp ecx, 4
jae 0x140032a8a
mov edi, 0xc000003e
jmp 0x140032bcc
mov r9d, dword [rsi]
lea rdx, [rsi + 4]
mov dword [rsp + 0x70], r9d
cmp rdx, rsi
jb 0x140032bc7
lea eax, [rcx - 4]
cmp eax, 4
jb 0x140032a80
mov ebx, dword [rdx]
lea rdi, [rdx + 4]
cmp rdi, rdx
jb 0x140032bc7
lea eax, [rcx - 8]
cmp eax, ebx
jb 0x140032a80
lea eax, [rbx + 8]
cmp eax, 8
jb 0x140032bc7
lea rdx, [rdi + rbx]
lea rax, [rcx + rsi]
cmp rax, rdx
jb 0x140032a80
sub rcx, rbx
sub rcx, rdi
add rcx, rsi
cmp rcx, 8
jae 0x140032a80
mov dword [rbp - 0x78], r14d
mov rsi, r14
mov r8d, r14d
test rdi, rdi
je 0x140032b5c
mov rcx, rdi
cmp rdx, rdi
jb 0x140032bc7
jbe 0x140032b57
lea rax, [rcx + 4]
cmp rax, rcx
jb 0x140032bc7
cmp rax, rdx
ja 0x140032b49
mov eax, dword [rcx]
add eax, 4
cmp eax, 4
jb 0x140032b50
mov dword [rbp + 0x304], eax
mov r9d, eax
add r9, rcx
cmp r9, rcx
jb 0x140032bc7
mov rcx, r9
cmp r9, rdx
ja 0x140032b49
inc r8d
mov dword [rbp - 0x78], r8d
cmp rcx, rdx
jae 0x140032b5a
jmp 0x140032b02
mov edi, 0xc000000d
jmp 0x140032bcc
mov edi, 0xc0000095
jmp 0x140032bb2
cmp rcx, rdx
jne 0x140032b49
test ebx, ebx
je 0x140032b86
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rsi, rax
test rax, rax
jne 0x140032b86
mov edi, 0xc0000017
jmp 0x140032bb2
test rdi, rdi
je 0x140032b99
mov r8, rbx
mov rdx, rdi
mov rcx, rsi
call sub.msvcrt.dll_memcpy
mov eax, dword [rbp - 0x78]
mov dword [rbp + 0x130], eax
mov qword [rbp + 0x138], rsi
mov dword [rbp + 0x134], ebx
mov edi, r14d
test edi, edi
js 0x140032bcc
mov eax, dword [rsp + 0x70]
cmp eax, dword [rbp + 0x130]
je 0x140032bcc
jmp 0x140032a80
mov edi, 0xc0000095
bts edi, 0x1c
mov rbx, qword [rbp + 0x60]
test rbx, rbx
je 0x140032bed
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [rbp + 0x150]
test rbx, rbx
je 0x140032c77
mov rsi, qword [rbx + 8]
test rsi, rsi
je 0x140032c1a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 8], r14
mov rsi, qword [rbx + 0x18]
test rsi, rsi
je 0x140032c3b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 0x18], r14
mov rsi, qword [rbx + 0x28]
test rsi, rsi
je 0x140032c5c
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbp + 0x150], r14
mov rbx, qword [rbp + 0x58]
test rbx, rbx
je 0x140032c94
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [rbp - 0x38]
test rbx, rbx
je 0x140032cb1
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r12, r12
je 0x140032d33
mov rbx, qword [r12 + 8]
test rbx, rbx
je 0x140032cd9
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r12 + 8], r14
mov rbx, qword [r12 + 0x18]
test rbx, rbx
je 0x140032cfc
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r12 + 0x18], r14
mov rbx, qword [r12 + 0x28]
test rbx, rbx
je 0x140032d1f
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r12 + 0x28], r14
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [rbp + 0x10]
test rbx, rbx
je 0x140032d50
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test edi, edi
js 0x140032e0a
mov ecx, dword [rbp + 0x130]
mov r9d, 1
cmp ecx, r9d
jb 0x140032e0a
mov rdi, qword [rbp + 0x138]
test rdi, rdi
je 0x140032e0a
test ecx, ecx
je 0x140032e0a
mov edx, dword [rdi]
lea r8, [rdi + 4]
cmp r8, rdi
jb 0x140032e0a
test edx, edx
mov dword [rbp + 0x300], edx
mov rax, r14
cmovne rax, r8
mov qword [rbp + 0x480], rax
cmp edx, 4
jne 0x140032e0a
mov eax, dword [rax]
mov dword [rbp + 0xc4], eax
test eax, eax
js 0x140032e0a
cmp ecx, r9d
jbe 0x140032e0a
mov ecx, r14d
lea rdx, [rdi + 4]
cmp rdx, rdi
jb 0x140032e0a
mov edi, dword [rdi]
add rdi, rdx
cmp rdi, rdx
jb 0x140032e0a
add ecx, r9d
cmp ecx, r9d
jb 0x140032dbf
mov ecx, dword [rdi]
lea rdx, [rdi + 4]
cmp rdx, rdi
jb 0x140032e0a
test ecx, ecx
mov dword [rbp + 0x2fc], ecx
mov rax, r14
cmovne rax, rdx
mov qword [rbp + 0x488], rax
cmp ecx, 8
jne 0x140032e0a
mov rax, qword [rax]
mov qword [rbp + 0x490], rax
mov r12, qword [rbp - 0x70]
mov r13, qword [rsp + 0x68]
and qword [rbp + 0x20], 0
mov rdi, qword [rbp + 0x28]
test rdi, rdi
je 0x140032e39
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 + 0x28], r14
and qword [rbp + 0x130], 0
mov rdi, qword [rbp + 0x138]
test rdi, rdi
je 0x140032e68
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 + 0x138], r14
test r12, r12
je 0x140032e81
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r13, r13
je 0x140032e9a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r13
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [rbp + 0xd8]
mov ebx, dword [rbp + 0x128]
mov dword [rbp + 0x2f8], eax
mov rax, qword [rbp + 0x110]
mov qword [rbp + 0x1a0], rax
mov qword [rbp + 0x110], r14
jmp 0x14002a393
mov r13, r14
jmp 0x140032e13
mov r13, rdi
jmp 0x140032e13
cmp r15d, 0xd00000e5
je 0x140032efc
cmp r15d, 0xc004d501
je 0x140032efc
cmp r15d, 0xd000003e
jne 0x140032f02
mov r15d, 0xc004f028
jmp 0x14002a439
mov r15d, 0xc004f027
test r15d, r15d
jns 0x140032f1d
mov eax, 0x8007007a
cmp r15d, eax
jne 0x14002a439
mov r14d, 0xc004f01e
jmp 0x140032f34
cmp ebx, 4
jne 0x140032f15
mov rcx, qword [rbp + 0x1a0]
mov rax, qword [rbp + 0x418]
mov edx, dword [rcx]
mov dword [rax], edx
lea rcx, [rbp + 0x1a0]
call fcn.14008a6ac
mov eax, r14d
mov rcx, qword [rbp + 0x1100]
xor rcx, rsp
call fcn.1400b6b90
mov rbx, qword [rsp + 0x1250]
add rsp, 0x1210
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret