Function at 0x180020880
Capabilities:
Query environment variable
Set console window title

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x740
lea rbp, [rsp + 0x40]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x180131038]
xor rax, rsp
mov qword [rbp + 0x6e8], rax
mov r15, rcx
mov qword [rbp + 0x28], rcx
xor ebx, ebx
mov dword [rbp + 0x10], ebx
mov byte [rcx], bl
mov qword [rcx + 8], rbx
lea rdi, [rcx + 0x10]
mov rcx, rdi
call fcn.180039530
nop
lea rsi, [r15 + 0x118]
movabs rax, 0xf16550d79082beda
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x90], rax
movabs rcx, 0x3da14debb8fd1f64
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x98], rax
movabs rax, 0xf10424b6f4f2cebb
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x5f0], rax
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x5f8], rax
movdqa xmm0, xmmword [rbp + 0x90]
pxor xmm0, xmmword [rbp + 0x5f0]
movdqa xmmword [rbp + 0x90], xmm0
lea rcx, [rbp + 0x90]
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
mov rcx, rax
mov qword [rbp], rax
mov r12, 0xffffffffffffffff
mov rax, r12
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x180020970
mov qword [rbp + 8], rax
call fcn.1800c3948
movaps xmm0, xmmword [rbp]
movdqa xmmword [rbp + 0x2f0], xmm0
lea r8, [rbp + 0x2f0]
mov edx, eax
mov rcx, rsi
call fcn.18001e210
nop
lea r14, [r15 + 0x138]
xorps xmm0, xmm0
movups xmmword [r14], xmm0
mov qword [r14 + 0x10], rbx
mov qword [r14 + 0x18], 7
mov word [r14], bx
lea rcx, [r15 + 0x158]
call fcn.180039530
nop
lea rcx, [r15 + 0x260]
call fcn.180039530
nop
lea r13, [r15 + 0x368]
mov qword [rbp], r13
mov ecx, 0x20
call fcn.1800c44c0
mov rbx, rax
mov qword [rbp], rax
mov qword [rbp + 0x10], rax
xor eax, eax
mov qword [rbx], rax
mov qword [rbx + 8], rax
mov qword [rbx + 0x10], rax
lea rcx, [rbx + 0x18]
call fcn.1800205f0
nop
mov qword [r13], rbx
mov dword [rbp + 0x10], 7
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_AttachConsole]
mov ecx, eax
test eax, eax
setne al
mov byte [r15], al
test ecx, ecx
jne 0x180020a3c
call qword [sym.imp.KERNEL32.dll_AllocConsole]
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov qword [r15 + 8], rax
movabs rbx, 0x977641dd9a93bee8
movabs r13, 0x3da14debdc917a0d
test rax, rax
je 0x180020b86
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x70], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x78], rax
movabs rax, 0xf10424b6f4f2cebb
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x600], rax
movabs rax, 0x3da14debb8fd1f64
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x608], rax
movdqa xmm0, xmmword [rbp + 0x70]
pxor xmm0, xmmword [rbp + 0x600]
movdqa xmmword [rbp + 0x70], xmm0
lea rcx, [rbp + 0x70]
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_SetConsoleOutputCP]
movabs rax, 0xf12070e3bbbc81f8
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x80], rax
movabs rcx, 0x3da14debb8fd1f64
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x88], rax
movabs rax, 0xf10424b6f4f2cebb
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x610], rax
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x618], rax
movdqa xmm0, xmmword [rbp + 0x80]
pxor xmm0, xmmword [rbp + 0x610]
movdqa xmmword [rbp + 0x80], xmm0
lea rcx, [rdi + 8]
lea rdx, [rbp + 0x80]
call fcn.18003c5b0
mov rcx, rax
mov rax, qword [rdi]
movsxd rdx, dword [rax + 4]
xor r8d, r8d
test rcx, rcx
lea rcx, [rdi + rdx]
je 0x180020b7b
xor edx, edx
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::clear_int__bool____ptr64]
jmp 0x180020b86
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x40], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x48], rax
movabs rbx, 0xf10424b6f4f2cebb
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x650], rax
movabs r13, 0x3da14debb8fd1f64
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x658], rax
movdqa xmm0, xmmword [rbp + 0x40]
pxor xmm0, xmmword [rbp + 0x650]
movdqa xmmword [rbp + 0x40], xmm0
lea rax, [rbp + 0x40]
mov qword [rbp], rax
lea rcx, [rbp + 0x40]
mov rax, r12
inc rax
cmp byte [rcx + rax], 0
jne 0x180020bf1
mov qword [rbp + 8], rax
call fcn.1800c3948
movaps xmm0, xmmword [rbp]
movdqa xmmword [rbp + 0x300], xmm0
lea r8, [rbp + 0x300]
mov edx, eax
lea rcx, [rbp + 0x248]
call fcn.18001e210
mov dword [rbp + 0x10], 0x187
lea rdx, [rbp + 0x248]
mov rcx, rsi
call fcn.18001e490
nop
lea rcx, [rbp + 0x248]
call fcn.18003d340
mov rdx, rsi
lea rcx, [rbp + 0x450]
call fcn.18001e810
nop
movabs rax, 0xf10454c39f91aff9
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x50], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x58], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x640], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x648], rax
movdqa xmm0, xmmword [rbp + 0x50]
pxor xmm0, xmmword [rbp + 0x640]
movdqa xmmword [rbp + 0x50], xmm0
lea rax, [rbp + 0x50]
mov qword [rbp + 0x480], rax
lea rcx, [rbp + 0x50]
mov rax, r12
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x180020cc0
mov qword [rbp + 0x488], rax
call fcn.1800c3948
movaps xmm0, xmmword [rbp + 0x480]
movdqa xmmword [rbp + 0x310], xmm0
lea r8, [rbp + 0x310]
mov edx, eax
lea rcx, [rbp + 0x268]
call fcn.18001e210
mov dword [rbp + 0x10], 0x787
lea rdx, [rbp + 0x268]
lea rcx, [rbp + 0x450]
call fcn.18001e490
nop
lea rcx, [rbp + 0x268]
call fcn.18003d340
nop
mov rcx, rsi
call fcn.18001f1f0
test al, al
jne 0x180020d4d
mov rcx, rsi
cmp qword [rsi + 0x18], 8
jb 0x180020d3a
mov rcx, qword [rsi]
call fcn.1800c3d0c
shr rax, 0x20
test eax, eax
jne 0x180021a65
jmp 0x180020dbe
mov rdx, rsi
lea rcx, [rbp + 0x420]
call fcn.18001f280
movsd xmm0, qword [rax]
movsd qword [rbp], xmm0
mov edx, dword [rax + 8]
mov ecx, dword [rbp]
test edx, edx
je 0x180020d7d
lea eax, [rcx - 1]
test eax, 0xfffffff7
jne 0x180021a76
cmp ecx, 3
je 0x180020dbe
mov rcx, rsi
cmp qword [rsi + 0x18], 8
jb 0x180020d8f
mov rcx, qword [rsi]
call fcn.1800c41b8
shr rax, 0x20
test eax, eax
jne 0x180021a85
mov rcx, rsi
cmp qword [rsi + 0x18], 8
jb 0x180020dad
mov rcx, qword [rsi]
call fcn.1800c3d0c
shr rax, 0x20
test eax, eax
jne 0x180021a96
lea rdx, [rbp + 0x450]
lea rcx, [rbp + 0x430]
call fcn.18001f280
movsd xmm0, qword [rax]
movsd qword [rbp], xmm0
mov ecx, dword [rax + 8]
mov dword [rbp + 0x1a0], ecx
lea rdx, [0x180131068]
mov qword [rbp + 0x1a8], rdx
movaps xmm0, xmmword [rbp + 0x1a0]
movdqa xmmword [rbp + 0x480], xmm0
mov eax, dword [rbp]
test eax, eax
je 0x180020eb9
mov dword [rbp + 0x480], 0
mov qword [rbp + 0x488], rdx
cmp eax, 1
setne al
test al, al
je 0x180020ec1
lea rdx, [rbp + 0x450]
lea rcx, [rbp + 0x440]
call fcn.18001f280
movsd xmm0, qword [rax]
movsd qword [rbp], xmm0
mov edx, dword [rax + 8]
mov ecx, dword [rbp]
test edx, edx
je 0x180020e5e
lea eax, [rcx - 1]
test eax, 0xfffffff7
jne 0x180021aa7
cmp ecx, 3
je 0x180020ee9
lea rcx, [rbp + 0x450]
cmp qword [rbp + 0x468], 8
cmovae rcx, qword [rbp + 0x450]
call fcn.1800c41b8
shr rax, 0x20
test eax, eax
jne 0x180021aba
lea rcx, [rbp + 0x450]
cmp qword [rbp + 0x468], 8
cmovae rcx, qword [rbp + 0x450]
call fcn.1800c3d0c
shr rax, 0x20
test eax, eax
jne 0x180021acf
jmp 0x180020ee9
test ecx, ecx
jne 0x180021ae4
lea rcx, [rbp + 0x450]
cmp qword [rbp + 0x468], 8
cmovae rcx, qword [rbp + 0x450]
call fcn.1800c3d0c
shr rax, 0x20
test eax, eax
jne 0x180021afe
mov rdx, rsi
mov rcx, r14
call fcn.18001e6d0
movabs rax, 0x966b48989a9baff6
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x30], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x38], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x620], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x628], rax
movdqa xmm0, xmmword [rbp + 0x30]
pxor xmm0, xmmword [rbp + 0x620]
movdqa xmmword [rbp + 0x30], xmm0
lea rax, [rbp + 0x30]
mov qword [rbp], rax
lea rcx, [rbp + 0x30]
mov rax, r12
inc rax
cmp byte [rcx + rax], 0
jne 0x180020f55
mov qword [rbp + 8], rax
call fcn.1800c3948
movaps xmm0, xmmword [rbp]
movdqa xmmword [rbp + 0x320], xmm0
lea r8, [rbp + 0x320]
mov edx, eax
lea rcx, [rbp + 0x288]
call fcn.18001e210
mov dword [rbp + 0x10], 0x79f
lea rdx, [rbp + 0x288]
mov rcx, rsi
call fcn.18001e490
nop
lea rcx, [rbp + 0x288]
call fcn.18003d340
movabs rax, 0x9d2a57c29a97b8fe
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x60], rax
movabs rax, 0x3da14debb8fd780b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x68], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x630], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x638], rax
movdqa xmm0, xmmword [rbp + 0x60]
pxor xmm0, xmmword [rbp + 0x630]
movdqa xmmword [rbp + 0x60], xmm0
lea rax, [rbp + 0x60]
mov qword [rbp], rax
lea rcx, [rbp + 0x60]
mov rax, r12
inc rax
cmp byte [rcx + rax], 0
jne 0x180021016
mov qword [rbp + 8], rax
call fcn.1800c3948
movaps xmm0, xmmword [rbp]
movdqa xmmword [rbp + 0x330], xmm0
lea r8, [rbp + 0x330]
mov edx, eax
lea rcx, [rbp + 0x2a8]
call fcn.18001e210
mov dword [rbp + 0x10], 0x7ff
lea rdx, [rbp + 0x2a8]
mov rcx, r14
call fcn.18001e490
nop
lea rcx, [rbp + 0x2a8]
call fcn.18003d340
mov rcx, rsi
call fcn.18001f1f0
test al, al
je 0x180021904
mov rcx, rsi
cmp qword [rsi + 0x18], 8
jb 0x180021089
mov rcx, qword [rsi]
mov r9d, 0xffffffff
mov r8d, 0x21
lea rdx, [rbp + 0x5d0]
call fcn.1800c3e38
test eax, eax
jne 0x180021b4f
mov rdi, qword [rbp + 0x5d0]
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
movabs rcx, 0x19db1ded53e8000
add rax, rcx
sub rdi, rax
lea rcx, [rdi + rbx]
movabs rax, 0xd6bf94d5e57a42bd
imul rcx
add rdx, rcx
sar rdx, 0x17
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov qword [rbp + 0x490], rdx
lea rcx, [rbp + 0x490]
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__localtime64]
mov rbx, rax
mov edx, dword [rax + 0x14]
add edx, 0x76c
mov ecx, dword [rax + 0x10]
inc ecx
movabs rax, 0x8a295984cac2f4c0
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x160], rax
movabs rax, 0x40da60968ac32f5e
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x168], rax
movabs rax, 0x295459c646d013b8
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x170], rax
movabs rax, 0xd83bc8b70f08958d
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x178], rax
movabs rax, 0xdefae6cf1a736185
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x180], rax
movabs rax, 0x37049707044b03df
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x188], rax
movabs rdi, 0xf10424b6f4f2cebb
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x660], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x668], rax
movabs rax, 0x4296bf876ea6895
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x670], rax
movabs rax, 0xa316b5853138aff6
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x678], rax
movabs rax, 0xb196c8b2284d51bf
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x680], rax
movabs rax, 0x37049707044b03b8
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x688], rax
vmovdqu ymm0, ymmword [rbp + 0x160]
vpxor ymm1, ymm0, ymmword [rbp + 0x660]
vmovdqa ymmword [rbp + 0x160], ymm1
vmovdqa xmm0, xmmword [rbp + 0x180]
vpxor xmm0, xmm0, xmmword [rbp + 0x680]
vmovdqa xmmword [rbp + 0x180], xmm0
mov dword [rbp + 0x340], ecx
mov eax, dword [rbx + 0xc]
mov dword [rbp + 0x350], eax
mov dword [rbp + 0x360], edx
mov eax, dword [rbx + 8]
mov dword [rbp + 0x370], eax
mov eax, dword [rbx + 4]
mov dword [rbp + 0x380], eax
mov eax, dword [rbx]
mov dword [rbp + 0x390], eax
vmovups xmm0, xmmword [rbp + 0x340]
vmovups xmmword [rbp + 0x510], xmm0
vmovups xmm1, xmmword [rbp + 0x350]
vmovups xmmword [rbp + 0x520], xmm1
vmovups xmm0, xmmword [rbp + 0x360]
vmovups xmmword [rbp + 0x530], xmm0
vmovups xmm1, xmmword [rbp + 0x370]
vmovups xmmword [rbp + 0x540], xmm1
vmovups xmm0, xmmword [rbp + 0x380]
vmovups xmmword [rbp + 0x550], xmm0
vmovups xmm1, xmmword [rbp + 0x390]
vmovups xmmword [rbp + 0x560], xmm1
mov qword [rbp + 0x120], 0x111111
lea rax, [rbp + 0x510]
mov qword [rbp + 0x128], rax
lea rax, [rbp + 0x160]
mov qword [rbp], rax
lea rcx, [rbp + 0x160]
mov rax, r12
vzeroupper
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x180021330
mov qword [rbp + 8], rax
movaps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0x3a0], xmm0
movaps xmm1, xmmword [rbp]
movdqa xmmword [rbp + 0x3b0], xmm1
lea r8, [rbp + 0x3a0]
lea rdx, [rbp + 0x3b0]
lea rcx, [rbp + 0x4d0]
call fcn.1800c3470
mov dword [rbp + 0x10], 0x107ff
mov edx, dword [rbx + 0x14]
add edx, 0x76c
mov ecx, dword [rbx + 0x10]
inc ecx
movabs rax, 0x8a295984cac2f4c0
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xc0], rax
movabs rax, 0x40da60968ac32f5e
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xc8], rax
movabs rax, 0x295459c646d013b8
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xd0], rax
movabs rax, 0xd83bc8b70f08958d
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xd8], rax
movabs rax, 0xc7f397cf1a736185
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xe0], rax
movabs rax, 0x506bfb29773f6ddd
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xe8], rax
movabs r9, 0xe4c8a504f3491729
mov qword [rbp], r9
mov rax, qword [rbp]
mov qword [rbp + 0xf0], rax
movabs r8, 0x25ea19e1154f093a
mov qword [rbp], r8
mov rax, qword [rbp]
mov qword [rbp + 0xf8], rax
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x6a0], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x6a8], rax
movabs rax, 0x4296bf876ea6895
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x6b0], rax
movabs rax, 0xa316b5853138aff6
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x6b8], rax
movabs rax, 0xb196c8b2284d51bf
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x6c0], rax
movabs rax, 0x37049707044b03b8
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x6c8], rax
mov qword [rbp], r9
mov rax, qword [rbp]
mov qword [rbp + 0x6d0], rax
mov qword [rbp], r8
mov rax, qword [rbp]
mov qword [rbp + 0x6d8], rax
vmovdqu ymm0, ymmword [rbp + 0xc0]
vpxor ymm1, ymm0, ymmword [rbp + 0x6a0]
vmovdqa ymmword [rbp + 0xc0], ymm1
vmovdqu ymm0, ymmword [rbp + 0xe0]
vpxor ymm1, ymm0, ymmword [rbp + 0x6c0]
vmovdqa ymmword [rbp + 0xe0], ymm1
mov dword [rbp + 0x3c0], ecx
mov eax, dword [rbx + 0xc]
mov dword [rbp + 0x3d0], eax
mov dword [rbp + 0x3e0], edx
mov eax, dword [rbx + 8]
mov dword [rbp + 0x3f0], eax
mov eax, dword [rbx + 4]
mov dword [rbp + 0x400], eax
mov eax, dword [rbx]
mov dword [rbp + 0x410], eax
vmovups xmm0, xmmword [rbp + 0x3c0]
vmovups xmmword [rbp + 0x570], xmm0
vmovups xmm1, xmmword [rbp + 0x3d0]
vmovups xmmword [rbp + 0x580], xmm1
vmovups xmm0, xmmword [rbp + 0x3e0]
vmovups xmmword [rbp + 0x590], xmm0
vmovups xmm1, xmmword [rbp + 0x3f0]
vmovups xmmword [rbp + 0x5a0], xmm1
vmovups xmm0, xmmword [rbp + 0x400]
vmovups xmmword [rbp + 0x5b0], xmm0
vmovups xmm1, xmmword [rbp + 0x410]
vmovups xmmword [rbp + 0x5c0], xmm1
mov qword [rbp + 0x130], 0x111111
lea rax, [rbp + 0x570]
mov qword [rbp + 0x138], rax
lea rax, [rbp + 0xc0]
mov qword [rbp], rax
lea rcx, [rbp + 0xc0]
mov rax, r12
vzeroupper
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x1800215e0
mov qword [rbp + 8], rax
movaps xmm0, xmmword [rbp + 0x130]
movdqa xmmword [rbp + 0x1b0], xmm0
movaps xmm1, xmmword [rbp]
movdqa xmmword [rbp + 0x1f0], xmm1
lea r8, [rbp + 0x1b0]
lea rdx, [rbp + 0x1f0]
lea rcx, [rbp + 0x4b0]
call fcn.1800c3470
nop
lea rax, [rbp + 0x4d0]
cmp qword [rbp + 0x4e8], 0x10
cmovae rax, qword [rbp + 0x4d0]
mov qword [rbp], rax
mov rax, qword [rbp + 0x4e0]
mov qword [rbp + 8], rax
call fcn.1800c3948
movaps xmm0, xmmword [rbp]
movdqa xmmword [rbp + 0x200], xmm0
lea r8, [rbp + 0x200]
mov edx, eax
lea rcx, [rbp + 0x220]
call fcn.18001e210
mov dword [rbp + 0x10], 0x177ff
lea rdx, [rbp + 0x450]
lea rcx, [rbp + 0xa0]
call fcn.18001e810
mov dword [rbp + 0x10], 0x1f7ff
lea rdx, [rbp + 0x220]
lea rcx, [rbp + 0xa0]
call fcn.18001e490
lea rdx, [rbp + 0xa0]
cmp qword [rbp + 0xb8], 8
cmovae rdx, qword [rbp + 0xa0]
mov rcx, rsi
cmp qword [rsi + 0x18], 8
jb 0x1800216c7
mov rcx, qword [rsi]
xor r8d, r8d
call fcn.1800c3a84
shr rax, 0x20
test eax, eax
jne 0x180021b14
lea rcx, [rbp + 0xa0]
call fcn.18003d340
nop
lea rcx, [rbp + 0x220]
call fcn.18003d340
mov rcx, r14
call fcn.18001f1f0
test al, al
je 0x1800218eb
mov rcx, r14
cmp qword [r14 + 0x18], 8
jb 0x180021711
mov rcx, qword [r14]
mov r9d, 0xffffffff
mov r8d, 0xb
lea rdx, [rbp + 0x4f0]
call fcn.1800c3e38
mov dword [rbp + 0x140], eax
lea rbx, [0x180131068]
mov qword [rbp + 0x148], rbx
movaps xmm0, xmmword [rbp + 0x140]
movdqa xmmword [rbp + 0x4a0], xmm0
test eax, eax
je 0x180021758
xor dil, dil
jmp 0x180021803
test dword [rbp + 0x500], 0x10
jne 0x180021775
cmp qword [rbp + 0x4f8], 0
sete dil
jmp 0x180021803
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x470], xmm1
mov rdx, r14
lea rcx, [rbp + 0x470]
call fcn.180040f80
mov dword [rbp + 0x150], eax
mov qword [rbp + 0x158], rbx
movaps xmm0, xmmword [rbp + 0x150]
movdqa xmmword [rbp + 0x4a0], xmm0
test eax, eax
jne 0x1800217be
cmp qword [rbp + 0x470], 0
jne 0x1800217be
mov dil, 1
jmp 0x1800217c1
xor dil, dil
mov rcx, qword [rbp + 0x478]
test rcx, rcx
je 0x180021803
mov eax, r12d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x180021803
mov rbx, qword [rbp + 0x478]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x180021803
mov rcx, qword [rbp + 0x478]
mov rax, qword [rcx]
call qword [rax + 8]
cmp dword [rbp + 0x4a0], 0
jne 0x180021b26
test dil, dil
jne 0x1800218eb
lea rax, [rbp + 0x4b0]
cmp qword [rbp + 0x4c8], 0x10
cmovae rax, qword [rbp + 0x4b0]
mov qword [rbp], rax
mov rax, qword [rbp + 0x4c0]
mov qword [rbp + 8], rax
call fcn.1800c3948
movaps xmm0, xmmword [rbp]
movdqa xmmword [rbp + 0x210], xmm0
lea r8, [rbp + 0x210]
mov edx, eax
lea rcx, [rbp + 0x2c8]
call fcn.18001e210
mov dword [rbp + 0x10], 0x777ff
lea rdx, [rbp + 0x450]
lea rcx, [rbp + 0x100]
call fcn.18001e810
mov dword [rbp + 0x10], 0xf77ff
lea rdx, [rbp + 0x2c8]
lea rcx, [rbp + 0x100]
call fcn.18001e490
lea rdx, [rbp + 0x100]
cmp qword [rbp + 0x118], 8
cmovae rdx, qword [rbp + 0x100]
mov rcx, r14
cmp qword [r14 + 0x18], 8
jb 0x1800218bd
mov rcx, qword [r14]
xor r8d, r8d
call fcn.1800c3a84
shr rax, 0x20
test eax, eax
jne 0x180021b3d
lea rcx, [rbp + 0x100]
call fcn.18003d340
nop
lea rcx, [rbp + 0x2c8]
call fcn.18003d340
nop
lea rcx, [rbp + 0x4b0]
call fcn.18001d760
nop
lea rcx, [rbp + 0x4d0]
call fcn.18001d760
cmp qword [rsi + 0x18], 8
jb 0x18002190e
mov rsi, qword [rsi]
lea rbx, [r15 + 0x158]
lea rcx, [rbx + 8]
mov r8d, 0x12
mov rdx, rsi
call fcn.180047570
mov rdx, rax
mov rax, qword [rbx]
movsxd rcx, dword [rax + 4]
add rcx, rbx
xor r8d, r8d
test rdx, rdx
je 0x180021946
xor edx, edx
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::clear_int__bool____ptr64]
jmp 0x180021951
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
cmp qword [r14 + 0x18], 8
jb 0x18002195b
mov r14, qword [r14]
lea rbx, [r15 + 0x260]
lea rcx, [rbx + 8]
mov r8d, 0x12
mov rdx, r14
call fcn.180047570
mov rdx, rax
mov rax, qword [rbx]
movsxd rcx, dword [rax + 4]
add rcx, rbx
xor r8d, r8d
test rdx, rdx
je 0x180021993
xor edx, edx
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::clear_int__bool____ptr64]
jmp 0x18002199e
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
mov rbx, qword [r15 + 0x368]
mov ecx, 0x10
call fcn.1800c44c0
mov qword [rbp], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov rcx, rax
call fcn.180045eb0
nop
mov qword [rbp + 0x20], rax
lea r8, [rbp + 0x20]
lea rdx, [rbp + 0x18]
mov rcx, rbx
call fcn.180041190
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x180021a0b
mov rdx, qword [rcx + 8]
test rdx, rdx
je 0x180021a01
lock xadd dword [rdx + 0xc], r12d
cmp r12d, 1
jne 0x1800219fd
mov rax, qword [rdx]
mov rcx, rdx
call qword [rax + 8]
mov rcx, qword [rbp + 0x18]
mov edx, 0x10
call fcn.1800c4884
mov rcx, qword [r15 + 0x368]
call fcn.1800ad710
nop
jmp 0x180021a1e
mov qword [0x180134888], r15
lea rcx, [rbp + 0x450]
call fcn.18003d340
nop
mov rax, r15
mov rcx, qword [rbp + 0x6e8]
xor rcx, rsp
call fcn.1800c44a0
lea r11, [rsp + 0x740]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov r8, rsi
mov edx, eax
lea rcx, str.create_directory
call fcn.18001edd0
mov r8, rsi
lea rcx, str.status
call fcn.18001edd0
mov r8, rsi
mov edx, eax
lea rcx, str.remove
call fcn.18001edd0
mov r8, rsi
mov edx, eax
lea rcx, str.create_directory
call fcn.18001edd0
lea r8, [rbp + 0x450]
lea rcx, str.status
call fcn.18001edd0
lea r8, [rbp + 0x450]
mov edx, eax
lea rcx, str.remove
call fcn.18001edd0
lea r8, [rbp + 0x450]
mov edx, eax
lea rcx, str.create_directory
call fcn.18001edd0
lea r8, [rbp + 0x450]
lea rdx, [rbp + 0x480]
lea rcx, str.exists
call fcn.18001eec0
lea r8, [rbp + 0x450]
mov edx, eax
lea rcx, str.create_directory
call fcn.18001edd0
nop
lea r9, [rbp + 0xa0]
mov r8, rsi
mov edx, eax
call fcn.18001ee40
nop
mov r8, r14
lea rdx, [rbp + 0x4a0]
lea rcx, str.is_empty
call fcn.18001eec0
nop
lea r9, [rbp + 0x100]
mov r8, r14
mov edx, eax
call fcn.18001ee40
nop
mov r8, rsi
mov edx, eax
lea rcx, str.last_write_time
call fcn.18001edd0
int3