Function at 0x140012430
Capabilities:
Create process on windows

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x270]
sub rsp, 0x370
mov qword [rbp - 0x18], 0xfffffffffffffffe
mov qword [rsp + 0x3c0], rbx
mov rax, qword [0x14003e010]
xor rax, rsp
mov qword [rbp + 0x268], rax
movzx r12d, dl
mov r15, rcx
mov qword [rbp - 0x28], rcx
mov qword [rbp - 0x10], rcx
xor r13d, r13d
mov dword [rsp + 0x30], r13d
call fcn.140017b70
mov byte [0x14003f80a], al
xor eax, eax
mov qword [rbp + 0x248], rax
mov qword [rbp + 0x250], rax
lea ecx, [rax + 0x40]
call fcn.140027f98
mov rbx, rax
mov qword [rbp - 0x58], rax
xor edx, edx
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::codecvt_wchar_t__char__struct__Mbstatet_::constructor_unsigned_long_long_unsigned___int64_____ptr64]
lea rax, vtable.std::codecvt_utf8_wchar_t__1114111__0_.0
mov qword [rbx], rax
lea rcx, [rbp - 8]
call qword [sym.imp.MSVCP140.dll_public:_static_class_std::locale___cdecl_std::locale::empty_void_]
nop
mov rcx, qword [rax + 8]
call qword [sym.imp.MSVCP140.dll_private:_static_class_std::locale::_Locimp____ptr64___cdecl_std::locale::_Locimp::_New_Locimp_class_std::locale::_Locimp_const____ptr64_]
mov qword [rbp + 0x250], rax
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::locale::id_std::codecvt_wchar_t__char__struct__Mbstatet_::id]
call qword [sym.imp.MSVCP140.dll_public:_unsigned_long_long_unsigned___int64____cdecl_std::locale::id::operator_unsigned_long_long_unsigned___int64__void____ptr64]
mov r8, rax
mov rdx, rbx
mov rcx, qword [rbp + 0x250]
call qword [sym.imp.MSVCP140.dll_private:_void___cdecl_std::locale::_Locimp::_Addfac_class_std::locale::facet____ptr64__unsigned_long_long_unsigned___int64_____ptr64]
mov rax, qword [rbp + 0x250]
mov dword [rax + 0x20], r13d
mov rcx, qword [rbp + 0x250]
add rcx, 0x28
lea rdx, [0x14002decc]
call qword [sym.imp.MSVCP140.dll_public:_class_std::_Yarn_char_____ptr64___cdecl_std::_Yarn_char_::operator_char_const____ptr64____ptr64]
nop
mov rcx, qword [rbp]
test rcx, rcx
je 0x140012554
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140027f5e.0]
mov r8, rax
test rax, rax
je 0x140012554
mov rcx, qword [rax]
mov rax, qword [rcx]
lea edx, [r13 + 1]
mov rcx, r8
call qword [case.0x140027f5e.0]
nop
xor edx, edx
mov r8d, 0x108
lea rcx, [rbp + 0x20]
call sub.VCRUNTIME140.dll_memset
lea rax, [rsp + 0x38]
mov qword [rbp - 0x58], rax
call fcn.140001540
mov rcx, rax
test rax, rax
je 0x140013629
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140027f5e.0]
add rax, 0x18
mov qword [rsp + 0x38], rax
lea rdx, str.LogTransportProcessor.txt
lea rcx, [rsp + 0x38]
call fcn.14000ae00
test al, al
jne 0x1400125c2
mov r8d, 0x19
lea rdx, str.LogTransportProcessor.txt
lea rcx, [rsp + 0x38]
call fcn.14000b2f0
nop
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x48]
call fcn.140017ce0
nop
mov r8d, 2
mov rdx, qword [rax]
lea rcx, [rbp + 0x20]
call fcn.140009640
nop
mov rdx, qword [rbp - 0x48]
add rdx, 0xffffffffffffffe8
mov edi, 0xffffffff
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001260d
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
mov rax, qword [rbp + 0x20]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x20]
add rcx, rax
lea r8, [rbp + 0x248]
lea rdx, [rbp + 8]
call qword [sym.imp.MSVCP140.dll_public:_class_std::locale___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::imbue_class_std::locale_const____ptr64____ptr64]
nop
mov rcx, qword [rbp + 0x10]
test rcx, rcx
je 0x140012661
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140027f5e.0]
mov r8, rax
test rax, rax
je 0x140012661
mov rcx, qword [rax]
mov rax, qword [rcx]
mov edx, 1
mov rcx, r8
call qword [case.0x140027f5e.0]
nop
mov qword [rbp + 0x240], r13
mov qword [rsp + 0x40], r13
mov rax, qword [r15]
mov rcx, qword [rax - 0x18]
test rcx, rcx
je 0x14001268e
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x140027f5e.0]
mov rcx, rax
test rax, rax
jne 0x1400126a9
call fcn.140001540
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x140027f5e.0]
mov rcx, rax
test rcx, rcx
je 0x140013634
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x140027f5e.0]
add rax, 0x18
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x30], 1
mov rdx, qword [r15]
mov dword [rsp + 0x20], 1
lea r9, [0x14002dea0]
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x40]
call fcn.14000b050
lea r8, str.CRLogTransport.exe
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x240]
call fcn.14000a3f0
nop
mov dword [rsp + 0x30], r13d
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140012733
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
xor edx, edx
mov r8d, pe_nt_image_headers64
lea rcx, [rbp + 0x130]
call sub.VCRUNTIME140.dll_memset
mov rdx, qword [rbp + 0x240]
lea rcx, [rbp + 0x130]
call fcn.140014100
nop
mov rcx, qword [rbp + 0x130]
movsxd rax, dword [rcx + 4]
cmp dword [rbp + rax + 0x140], 0
je 0x1400128a3
cmp byte [0x14003f80a], 1
jne 0x1400127a4
lea rdx, str.Log_transport_not_present
lea rcx, [rbp + 0x20]
call fcn.14000ba70
mov rcx, rax
lea rdx, [0x14000bef0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
mov rcx, qword [rbp + 0x130]
movsxd rax, dword [rcx + 4]
lea rdx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rax + 0x130], rdx
mov rax, qword [rbp + 0x130]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x12c], edx
lea rcx, [rbp + 0x140]
call fcn.140014d50
lea rcx, [rbp + 0x148]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x1e0]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
nop
mov rdx, qword [rbp + 0x240]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001281e
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
nop
mov rax, qword [rbp + 0x20]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rbp + rcx + 0x20], rax
mov rax, qword [rbp + 0x20]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0x1c], edx
lea rcx, [rbp + 0x28]
call fcn.14000a1a0
lea rcx, [rbp + 0x30]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::destructor_void____ptr64]
lea rcx, [rbp + 0xc8]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::destructor_void____ptr64]
nop
mov rcx, qword [rbp + 0x250]
test rcx, rcx
je 0x14001289b
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140027f5e.0]
mov r8, rax
test rax, rax
je 0x14001289b
mov rcx, qword [rax]
mov rax, qword [rcx]
mov edx, 1
mov rcx, r8
call qword [case.0x140027f5e.0]
nop
mov rdx, qword [r15]
jmp 0x1400135d6
mov qword [rsp + 0x68], r13
mov rax, qword [rbp + 0x240]
mov rcx, qword [rax - 0x18]
test rcx, rcx
je 0x1400128cd
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x140027f5e.0]
mov rcx, rax
test rax, rax
jne 0x1400128e8
call fcn.140001540
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x140027f5e.0]
mov rcx, rax
test rcx, rcx
je 0x14001363f
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x140027f5e.0]
add rax, 0x18
mov qword [rsp + 0x68], rax
mov dword [rsp + 0x30], 4
mov r9, qword [rbp + 0x240]
mov eax, dword [r9 - 0x10]
mov dword [rsp + 0x20], eax
mov r8d, 1
lea rdx, [0x14002fad4]
lea rcx, [rsp + 0x68]
call fcn.14000b050
nop
mov qword [rsp + 0x70], r13
mov rbx, qword [rsp + 0x68]
lea r14, [rbx - 0x18]
mov rcx, qword [r14]
test rcx, rcx
je 0x140012961
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x140027f5e.0]
mov rcx, rax
test rax, rax
jne 0x14001297c
call fcn.140001540
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x140027f5e.0]
mov rcx, rax
test rcx, rcx
je 0x14001364a
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x140027f5e.0]
add rax, 0x18
mov qword [rsp + 0x70], rax
mov dword [rsp + 0x30], 0xc
mov dword [rsp + 0x20], 1
lea r9, [0x14002fad4]
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rsp + 0x70]
call fcn.14000b050
mov rdx, qword [rsp + 0x70]
lea rbx, [rdx - 0x18]
mov rsi, qword [rbp + 0x240]
add rsi, 0xffffffffffffffe8
cmp rbx, rsi
je 0x140012a34
cmp dword [rsi + 0x10], 0
jl 0x140012a24
mov rax, qword [rsi]
cmp qword [rbx], rax
jne 0x140012a24
mov rcx, rbx
call fcn.14000b250
mov r13, rax
mov ecx, edi
lock xadd dword [rsi + 0x10], ecx
sub ecx, 1
jg 0x140012a14
mov rcx, qword [rsi]
mov r8, qword [rcx]
mov rdx, rsi
mov rax, qword [r8 + 8]
call qword [case.0x140027f5e.0]
lea rax, [r13 + 0x18]
mov qword [rbp + 0x240], rax
xor r13d, r13d
jmp 0x140012a34
mov r8d, dword [rdx - 0x10]
lea rcx, [rbp + 0x240]
call fcn.14000b2f0
mov dword [rsp + 0x30], 4
mov eax, edi
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x140012a5b
mov rcx, qword [rbx]
mov rax, qword [rcx]
mov rdx, rbx
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
mov dword [rsp + 0x30], r13d
mov eax, edi
lock xadd dword [r14 + 0x10], eax
sub eax, 1
jg 0x140012a80
mov rcx, qword [r14]
mov rax, qword [rcx]
mov rdx, r14
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
cmp byte [0x14003f80a], 1
jne 0x140012ab6
lea rdx, str.bVerifySignatureBeforeLaunching:
lea rcx, [rbp + 0x20]
call fcn.14000ba70
mov rcx, rax
movzx edx, r12b
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___bool____ptr64]
mov rcx, rax
lea rdx, [0x14000bef0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
cmp r12b, 1
jne 0x140012cd8
lea rax, [rsp + 0x48]
mov qword [rsp + 0x60], rax
call fcn.140001540
mov rcx, rax
test rax, rax
je 0x140013655
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140027f5e.0]
add rax, 0x18
mov qword [rsp + 0x48], rax
lea rdx, str.CRLogTransport.exe
lea rcx, [rsp + 0x48]
call fcn.14000ae00
test al, al
jne 0x140012b1e
mov r8d, 0x12
lea rdx, str.CRLogTransport.exe
lea rcx, [rsp + 0x48]
call fcn.14000b2f0
nop
lea rcx, [rbp - 0x40]
call fcn.140026390
nop
lea r8, [rsp + 0x48]
mov rdx, rax
lea rcx, [rbp - 0x50]
call fcn.1400185e0
mov dword [rsp + 0x30], 0x10
mov rcx, qword [rbp - 0x50]
call fcn.1400271b0
test eax, eax
setne bl
mov rdx, qword [rbp - 0x50]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140012b73
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
test bl, bl
jne 0x140012cab
cmp byte [0x14003f80a], 1
jne 0x140012ba5
lea rdx, str.Verification_failed_for_log_transport_file._Returning
lea rcx, [rbp + 0x20]
call fcn.14000ba70
mov rcx, rax
lea rdx, [0x14000bef0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
nop
mov rax, qword [rbp + 0x130]
movsxd rcx, dword [rax + 4]
lea rdx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x130], rdx
mov rax, qword [rbp + 0x130]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x12c], edx
lea rcx, [rbp + 0x140]
call fcn.140014d50
lea rcx, [rbp + 0x148]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x1e0]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
nop
mov rdx, qword [rbp + 0x240]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140012c26
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
nop
mov rax, qword [rbp + 0x20]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rbp + rcx + 0x20], rax
mov rax, qword [rbp + 0x20]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0x1c], edx
lea rcx, [rbp + 0x28]
call fcn.14000a1a0
lea rcx, [rbp + 0x30]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::destructor_void____ptr64]
lea rcx, [rbp + 0xc8]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::destructor_void____ptr64]
nop
mov rcx, qword [rbp + 0x250]
test rcx, rcx
je 0x140012ca3
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140027f5e.0]
mov r8, rax
test rax, rax
je 0x140012ca3
mov rcx, qword [rax]
mov rax, qword [rcx]
mov edx, 1
mov rcx, r8
call qword [case.0x140027f5e.0]
nop
mov rdx, qword [r15]
jmp 0x1400135d6
cmp byte [0x14003f80a], 1
jne 0x140012d5d
lea rdx, str.Signature_verification_successful_for_Log_transport
lea rcx, [rbp + 0x20]
call fcn.14000ba70
mov rcx, rax
lea rdx, [0x14000bef0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
cmp byte [0x14003f80a], 1
jne 0x140012d5d
lea rdx, str.Going_to_execute_the_log_transport
lea rcx, [rbp + 0x20]
call fcn.14000ba70
mov rcx, rax
lea rdx, [0x14000bef0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
mov rbx, qword [rbp + 0x240]
lea rdx, str.LogTransport_path_is_:
lea rcx, [rbp + 0x20]
call fcn.14000ba70
mov rcx, rax
mov rdx, rbx
call fcn.14000bcf0
mov rcx, rax
lea rdx, [0x14000bef0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
lea rcx, [rbp + 0x28]
call fcn.14000ac70
test rax, rax
jne 0x140012d5d
mov rax, qword [rbp + 0x20]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x20]
add rcx, rax
xor r8d, r8d
lea edx, [r8 + 2]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::setstate_int__bool____ptr64]
mov ebx, dword [rsp + 0x30]
mov esi, ebx
mov qword [rbp + 0x260], r13
lea rcx, [rbp - 0x30]
call fcn.1400177b0
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x78], r13
mov rcx, qword [r15]
mov rcx, qword [rcx - 0x18]
test rcx, rcx
je 0x140012d9e
mov rdx, qword [rcx]
mov rax, qword [rdx + 0x20]
call qword [case.0x140027f5e.0]
mov rcx, rax
test rax, rax
jne 0x140012db9
call fcn.140001540
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x140027f5e.0]
mov rcx, rax
test rcx, rcx
je 0x140013660
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x140027f5e.0]
add rax, 0x18
mov qword [rsp + 0x78], rax
or ebx, 0x20
mov dword [rsp + 0x30], ebx
mov r9, qword [r15]
mov eax, dword [r9 - 0x10]
mov dword [rsp + 0x20], eax
mov r8d, 1
lea rdx, [0x14002fad4]
lea rcx, [rsp + 0x78]
call fcn.14000b050
nop
mov qword [rbp - 0x80], r13
mov rbx, qword [rsp + 0x78]
lea r13, [rbx - 0x18]
mov rcx, qword [r13]
test rcx, rcx
je 0x140012e2d
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x140027f5e.0]
mov rcx, rax
test rax, rax
jne 0x140012e48
call fcn.140001540
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x140027f5e.0]
mov rcx, rax
test rcx, rcx
je 0x14001366b
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x140027f5e.0]
add rax, 0x18
mov qword [rbp - 0x80], rax
mov eax, esi
or eax, 0x60
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x20], 1
lea r9, [0x14002fad4]
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rbp - 0x80]
call fcn.14000b050
nop
xor r14d, r14d
mov qword [rbp - 0x78], r14
mov rbx, qword [rbp - 0x80]
lea r12, [rbx - 0x18]
mov rcx, qword [r12]
test rcx, rcx
je 0x140012ebc
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x140027f5e.0]
mov rcx, rax
test rax, rax
jne 0x140012ed7
call fcn.140001540
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x140027f5e.0]
mov rcx, rax
test rcx, rcx
je 0x140013676
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x140027f5e.0]
add rax, 0x18
mov qword [rbp - 0x78], rax
mov eax, esi
or eax, 0xe0
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x20], 1
lea r9, [0x14002fbb0]
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rbp - 0x78]
call fcn.14000b050
nop
mov qword [rsp + 0x50], r14
mov rbx, qword [rbp - 0x78]
mov rcx, qword [rbx - 0x18]
test rcx, rcx
je 0x140012f47
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x140027f5e.0]
mov rcx, rax
test rax, rax
jne 0x140012f62
call fcn.140001540
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x140027f5e.0]
mov rcx, rax
test rcx, rcx
je 0x140013681
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x140027f5e.0]
add rax, 0x18
mov qword [rsp + 0x50], rax
mov r14d, esi
or r14d, 0x1e0
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x20], 1
lea r9, [0x14002fad4]
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rsp + 0x50]
call fcn.14000b050
mov r8, qword [rsp + 0x60]
mov r8, qword [r8]
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x38]
call fcn.14000a3f0
nop
lea r8, [0x14002fad4]
mov rdx, rax
lea rcx, [rbp + 0x260]
call fcn.14000a3f0
nop
mov rdx, qword [rbp - 0x38]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140013002
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
and dword [rsp + 0x30], 0xfffffeff
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001302f
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
mov eax, r14d
and eax, 0xfffffe7f
mov dword [rsp + 0x30], eax
mov eax, edi
lock xadd dword [rbx - 8], eax
sub eax, 1
jg 0x14001305c
mov rcx, qword [rbx - 0x18]
mov rax, qword [rcx]
lea rdx, [rbx - 0x18]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
and r14d, 0xfffffe3f
mov dword [rsp + 0x30], r14d
mov eax, edi
lock xadd dword [r12 + 0x10], eax
sub eax, 1
jg 0x14001308a
mov rcx, qword [r12]
mov rax, qword [rcx]
mov rdx, r12
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
mov dword [rsp + 0x30], esi
mov eax, edi
lock xadd dword [r13 + 0x10], eax
sub eax, 1
jg 0x1400130b0
mov rcx, qword [r13]
mov rax, qword [rcx]
mov rdx, r13
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
nop
mov rdx, qword [rbp - 0x30]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400130d4
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
xor r14d, r14d
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
mov r9, qword [rbp + 0x260]
mov r8, qword [rbp + 0x240]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
mov qword [rbp + 0x258], r14
lea rcx, [rbp - 0x58]
call fcn.140017910
mov qword [rsp + 0x60], rax
mov qword [rbp - 0x70], r14
mov r13, qword [rbp - 0x28]
mov rcx, qword [r13]
mov rcx, qword [rcx - 0x18]
test rcx, rcx
je 0x140013138
mov rdx, qword [rcx]
mov rax, qword [rdx + 0x20]
call qword [case.0x140027f5e.0]
mov rcx, rax
test rax, rax
jne 0x140013153
call fcn.140001540
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x140027f5e.0]
mov rcx, rax
test rcx, rcx
je 0x14001368c
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x140027f5e.0]
add rax, 0x18
mov qword [rbp - 0x70], rax
or dword [rsp + 0x30], 0x400
mov r9, qword [r13]
mov eax, dword [r9 - 0x10]
mov dword [rsp + 0x20], eax
mov r8d, 1
lea rdx, [0x14002fad4]
lea rcx, [rbp - 0x70]
call fcn.14000b050
nop
mov qword [rbp - 0x68], r14
mov rbx, qword [rbp - 0x70]
lea r12, [rbx - 0x18]
mov rcx, qword [r12]
test rcx, rcx
je 0x1400131c6
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x140027f5e.0]
mov rcx, rax
test rax, rax
jne 0x1400131e1
call fcn.140001540
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x140027f5e.0]
mov rcx, rax
test rcx, rcx
je 0x140013697
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x140027f5e.0]
add rax, 0x18
mov qword [rbp - 0x68], rax
mov eax, esi
or eax, 0xc00
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x20], 1
lea r9, [0x14002fad4]
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rbp - 0x68]
call fcn.14000b050
nop
mov qword [rbp - 0x60], r14
mov rbx, qword [rbp - 0x68]
lea r15, [rbx - 0x18]
mov rcx, qword [r15]
test rcx, rcx
je 0x140013253
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x140027f5e.0]
mov rcx, rax
test rax, rax
jne 0x14001326e
call fcn.140001540
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x140027f5e.0]
mov rcx, rax
test rcx, rcx
je 0x1400136a2
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x140027f5e.0]
add rax, 0x18
mov qword [rbp - 0x60], rax
mov eax, esi
or eax, 0x1c00
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x20], 1
lea r9, [0x14002fbb0]
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rbp - 0x60]
call fcn.14000b050
nop
mov qword [rsp + 0x58], r14
mov rbx, qword [rbp - 0x60]
mov rcx, qword [rbx - 0x18]
test rcx, rcx
je 0x1400132de
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x140027f5e.0]
mov rcx, rax
test rax, rax
jne 0x1400132f9
call fcn.140001540
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x140027f5e.0]
mov rcx, rax
test rcx, rcx
je 0x14001361e
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x140027f5e.0]
add rax, 0x18
mov qword [rsp + 0x58], rax
or esi, 0x3c00
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x20], 1
lea r9, [0x14002fad4]
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rsp + 0x58]
call fcn.14000b050
mov r8, qword [rsp + 0x60]
mov r8, qword [r8]
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x20]
call fcn.14000a3f0
nop
lea r8, [0x14002fad4]
mov rdx, rax
lea rcx, [rbp + 0x258]
call fcn.14000a3f0
nop
mov rdx, qword [rbp - 0x20]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140013394
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
and dword [rsp + 0x30], 0xffffdfff
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400133c1
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
mov eax, esi
and eax, 0xffffcfff
mov dword [rsp + 0x30], eax
mov eax, edi
lock xadd dword [rbx - 8], eax
sub eax, 1
jg 0x1400133ed
mov rcx, qword [rbx - 0x18]
mov rax, qword [rcx]
lea rdx, [rbx - 0x18]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
and esi, 0xffffc7ff
mov dword [rsp + 0x30], esi
mov eax, edi
lock xadd dword [r15 + 0x10], eax
sub eax, 1
jg 0x140013418
mov rcx, qword [r15]
mov rax, qword [rcx]
mov rdx, r15
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
nop
mov eax, edi
lock xadd dword [r12 + 0x10], eax
sub eax, 1
jg 0x14001343b
mov rcx, qword [r12]
mov rax, qword [rcx]
mov rdx, r12
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
nop
mov rdx, qword [rbp - 0x58]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001345f
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
xor r14d, r14d
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
mov r9, qword [rbp + 0x258]
mov r8, qword [rbp + 0x240]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
mov rdx, qword [rbp + 0x258]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400134ac
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
nop
mov rdx, qword [rbp + 0x260]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400134d4
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
nop
mov rax, qword [rbp + 0x130]
movsxd rcx, dword [rax + 4]
lea rdx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x130], rdx
mov rax, qword [rbp + 0x130]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x12c], edx
lea rcx, [rbp + 0x140]
call fcn.140014d50
lea rcx, [rbp + 0x148]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x1e0]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
nop
mov rdx, qword [rbp + 0x240]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140013555
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
nop
mov rax, qword [rbp + 0x20]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rbp + rcx + 0x20], rax
mov rax, qword [rbp + 0x20]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0x1c], edx
lea rcx, [rbp + 0x28]
call fcn.14000a1a0
lea rcx, [rbp + 0x30]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::destructor_void____ptr64]
lea rcx, [rbp + 0xc8]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::destructor_void____ptr64]
nop
mov rcx, qword [rbp + 0x250]
test rcx, rcx
je 0x1400135d2
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140027f5e.0]
mov r8, rax
test rax, rax
je 0x1400135d2
mov rcx, qword [rax]
mov rax, qword [rcx]
mov edx, 1
mov rcx, r8
call qword [case.0x140027f5e.0]
nop
mov rdx, qword [r13]
sub rdx, 0x18
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x1400135f4
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140027f5e.0]
mov rcx, qword [rbp + 0x268]
xor rcx, rsp
call fcn.140027890
mov rbx, qword [rsp + 0x3c0]
add rsp, 0x370
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x80004005
call fcn.140001280
nop
mov ecx, 0x80004005
call fcn.140001280
nop
mov ecx, 0x80004005
call fcn.140001280
nop
mov ecx, 0x80004005
call fcn.140001280
nop
mov ecx, 0x80004005
call fcn.140001280
nop
mov ecx, 0x80004005
call fcn.140001280
nop
mov ecx, 0x80004005
call fcn.140001280
nop
mov ecx, 0x80004005
call fcn.140001280
nop
mov ecx, 0x80004005
call fcn.140001280
nop
mov ecx, 0x80004005
call fcn.140001280
nop
mov ecx, 0x80004005
call fcn.140001280
nop
mov ecx, 0x80004005
call fcn.140001280
nop
mov ecx, 0x80004005
call fcn.140001280
int3