Function at 0x18007f510
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r14
push rbp
lea rbp, [rsp - 0xc0]
sub rsp, 0x1c0
mov rax, qword [0x18018a040]
xor rax, rsp
mov qword [rbp + 0xb0], rax
xor esi, esi
xor edx, edx
mov r8d, 0x402
lea rcx, str.asuna___lua
call fcn.180017600
movabs r14, 0x2aaaaaaaaaaaaaab
test al, al
je 0x18007fbad
xor bl, bl
xor dil, dil
lea r8, [0x18018be90]
lea rdx, [rsp + 0x50]
call fcn.1800580b0
mov r10, qword [str.unknown.lua]
lea r11, [0x18018bf88]
cmp qword [0x18018bfa0], 0xf
cmova r11, qword [0x18018bf88]
mov rcx, qword [0x18018be70]
sub rcx, qword [0x18018be68]
mov rax, r14
imul rcx
mov r9, rdx
sar r9, 2
mov rax, r9
shr rax, 0x3f
add r9, rax
mov r8d, dword [rsp + 0x54]
inc r8d
mov edx, dword [rsp + 0x50]
inc edx
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x20], r11
lea rcx, str._6d___6d__6d_lines___s___s
call fcn.18003c370
call fcn.180046a80
test al, al
je 0x18007f778
mov r8b, 1
xor edx, edx
lea rcx, str.File
call fcn.180047000
test al, al
je 0x18007f62f
lea rcx, str.Save
call fcn.180047e40
movzx edi, al
lea rcx, str.Open
call fcn.180047e40
movzx ebx, al
call fcn.180047d90
mov r8b, 1
xor edx, edx
lea rcx, str.View
call fcn.180047000
test al, al
je 0x18007f773
lea rcx, str.Dark_Theme
call fcn.180047e40
test al, al
je 0x18007f6aa
movaps xmm0, xmmword [0x18016c8b0]
movups xmmword [0x18018bedc], xmm0
movaps xmm1, xmmword [0x18016c8c0]
movups xmmword [0x18018beec], xmm1
movaps xmm0, xmmword [0x18016c8d0]
movups xmmword [0x18018befc], xmm0
movaps xmm1, xmmword [0x18016c8e0]
movups xmmword [0x18018bf0c], xmm1
movaps xmm0, xmmword [0x18016c8f0]
movups xmmword [0x18018bf1c], xmm0
mov eax, dword [0x18016c900]
mov dword [0x18018bf2c], eax
lea rcx, str.Light_Theme
call fcn.180047e40
test al, al
je 0x18007f70c
movaps xmm0, xmmword [0x1801700b0]
movups xmmword [0x18018bedc], xmm0
movaps xmm1, xmmword [0x1801700c0]
movups xmmword [0x18018beec], xmm1
movaps xmm0, xmmword [0x1801700d0]
movups xmmword [0x18018befc], xmm0
movaps xmm1, xmmword [0x1801700e0]
movups xmmword [0x18018bf0c], xmm1
movaps xmm0, xmmword [0x1801700f0]
movups xmmword [0x18018bf1c], xmm0
mov eax, dword [0x180170100]
mov dword [0x18018bf2c], eax
lea rcx, str.Retro_Blue_Theme
call fcn.180047e40
test al, al
je 0x18007f76e
movaps xmm0, xmmword [0x18016fd70]
movups xmmword [0x18018bedc], xmm0
movaps xmm1, xmmword [0x18016fd80]
movups xmmword [0x18018beec], xmm1
movaps xmm0, xmmword [0x18016fd90]
movups xmmword [0x18018befc], xmm0
movaps xmm1, xmmword [0x18016fda0]
movups xmmword [0x18018bf0c], xmm1
movaps xmm0, xmmword [0x18016fdb0]
movups xmmword [0x18018bf1c], xmm0
mov eax, dword [0x18016fdc0]
mov dword [0x18018bf2c], eax
call fcn.180047d90
call fcn.180046d40
mov qword [rsp + 0x50], 0x42c80000
lea rdx, [rsp + 0x50]
lea rcx, str.Execute
call fcn.18003d160
test al, al
je 0x18007f883
mov rcx, qword [0x18018be70]
sub rcx, qword [0x18018be68]
mov rax, r14
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsp + 0x50], edx
mov dword [rsp + 0x54], esi
mov qword [rbp - 0x80], rsi
lea r9, [rsp + 0x50]
lea r8, [rbp - 0x80]
lea rdx, [rsp + 0x58]
call fcn.180057e00
nop
mov ecx, 0x28
call fcn.1800da3c8
movups xmm0, xmmword [rsp + 0x58]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rsp + 0x68]
movups xmmword [rax + 0x10], xmm1
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], 0xf
mov byte [rsp + 0x58], 0
lea rcx, [0x18007ec10]
mov qword [rax + 0x20], rcx
mov qword [rbp - 0x80], rax
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], esi
mov r9, rax
lea r8, [0x1800ceaa0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rsp + 0x30], rax
test rax, rax
je 0x18007f9ad
cmp dword [rsp + 0x38], 0
je 0x18007f9a1
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call qword [sym.imp.MSVCP140.dll__Thrd_detach]
test eax, eax
jne 0x18007f9a1
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x30], xmm0
lea rcx, [rsp + 0x58]
call fcn.180009390
test bl, bl
je 0x18007f895
xor edx, edx
lea rcx, str.Open_File
call fcn.18001ec50
test dil, dil
je 0x18007f8a8
xor edx, edx
lea rcx, str.Save_File
call fcn.18001ec50
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], rsi
mov r8d, 4
lea rdx, str..lua
lea rcx, [rsp + 0x30]
call fcn.1800097a0
nop
mov dword [rbp - 0x80], 0x442f0000
mov dword [rbp - 0x7c], 0x439b0000
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], rsi
mov r8d, 9
lea rdx, str.Open_File
lea rcx, [rsp + 0x58]
call fcn.1800097a0
nop
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x80]
mov r8d, 1
lea rdx, [rsp + 0x58]
lea rdi, [0x18018ba30]
mov rcx, rdi
call fcn.180002320
movzx ebx, al
lea rcx, [rsp + 0x58]
call fcn.180009390
nop
lea rcx, [rsp + 0x30]
call fcn.180009390
test bl, bl
je 0x18007f9bd
cmp qword [0x18018ba48], 0xf
cmova rdi, qword [0x18018ba30]
mov qword [str.unknown.lua], rdi
lea rdx, [0x18018ba50]
cmp qword [0x18018ba68], 0xf
cmova rdx, qword [0x18018ba50]
lea rcx, [rsp + 0x58]
call fcn.18007a100
nop
lea rdx, [rsp + 0x58]
call fcn.18005cf40
nop
lea rcx, [rsp + 0x58]
call fcn.180009390
jmp 0x18007fb82
mov ecx, 1
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
mov dword [rsp + 0x38], esi
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], rsi
mov r8d, 4
lea rdx, str..lua
lea rcx, [rsp + 0x30]
call fcn.1800097a0
nop
mov dword [rbp - 0x80], 0x442f0000
mov dword [rbp - 0x7c], 0x439b0000
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], rsi
mov r8d, 9
lea rdx, str.Save_File
lea rcx, [rsp + 0x58]
call fcn.1800097a0
nop
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x80]
mov r8d, 2
lea rdx, [rsp + 0x58]
mov rcx, rdi
call fcn.180002320
movzx ebx, al
lea rcx, [rsp + 0x58]
call fcn.180009390
nop
lea rcx, [rsp + 0x30]
call fcn.180009390
test bl, bl
je 0x18007fb82
cmp qword [0x18018ba48], 0xf
cmova rdi, qword [0x18018ba30]
mov qword [str.unknown.lua], rdi
xor edx, edx
mov r8d, 0x108
lea rcx, [rbp - 0x60]
call sub.VCRUNTIME140.dll_memset
lea rdx, [0x18018ba50]
cmp qword [0x18018ba68], 0xf
cmova rdx, qword [0x18018ba50]
lea rcx, [rbp - 0x60]
call fcn.18009e840
nop
mov rcx, qword [0x18018be70]
sub rcx, qword [0x18018be68]
mov rax, r14
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rbp - 0x80], edx
mov dword [rbp - 0x7c], esi
mov qword [rsp + 0x50], rsi
lea r9, [rbp - 0x80]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x58]
call fcn.180057e00
nop
lea rdx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0xf
cmova rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x68]
lea rcx, [rbp - 0x60]
call fcn.1800baab0
nop
lea rcx, [rsp + 0x58]
call fcn.180009390
lea rcx, [rbp - 0x58]
call fcn.18007b470
test rax, rax
jne 0x18007fb3f
mov rax, qword [rbp - 0x60]
movsxd rcx, dword [rax + 4]
lea rax, [rbp - 0x60]
add rcx, rax
xor r8d, r8d
lea edx, [r8 + 2]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
nop
mov rax, qword [rbp - 0x60]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx - 0x60], rax
mov rax, qword [rbp - 0x60]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx - 0x64], edx
lea rcx, [rbp - 0x58]
call fcn.18007af50
lea rcx, [rbp - 0x50]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x48]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
call fcn.180061880
mov rdx, rax
call fcn.1800578d0
mov byte [0x18018bebe], 1
mov dword [rbp - 0x80], 0x44610000
mov dword [rbp - 0x7c], 0x43fa0000
lea r8, [rbp - 0x80]
call fcn.18005cd00
mov rcx, qword [0x18018be70]
sub rcx, qword [0x18018be68]
mov rax, r14
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rbp - 0x80], edx
mov dword [rbp - 0x7c], esi
mov qword [rsp + 0x50], rsi
lea r9, [rbp - 0x80]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x58]
call fcn.180057e00
nop
xor r9d, r9d
lea r8, [rsp + 0x50]
xor edx, edx
lea rbx, [0x18018b930]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_InitOnceBeginInitialize]
test eax, eax
jne 0x18007fc13
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
cmp dword [rsp + 0x50], 0
je 0x18007fc68
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x38], 4
movups xmm0, xmmword [rsp + 0x58]
movups xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [rsp + 0x68]
movups xmmword [rbp - 0x70], xmm1
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], 0xf
mov byte [rsp + 0x58], 0
lea rcx, [rbp - 0x80]
call fcn.18007f480
nop
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_InitOnceComplete]
test eax, eax
je 0x18007fca3
lea rcx, [rsp + 0x58]
call fcn.180009390
call fcn.1800199a0
mov rcx, qword [rbp + 0xb0]
xor rcx, rsp
call fcn.1800da3a0
lea r11, [rsp + 0x1c0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
call fcn.1800da380
nop
int3