Function at 0x140015f60
Capabilities:
Create process on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f0]
sub rsp, 0x2f0
movzx r12d, dl
mov r15, rcx
xor esi, esi
mov dword [rbp + 0x240], esi
call fcn.14001eee0
mov byte [0x1400418db], al
lea rax, [rsp + 0x30]
mov qword [rbp - 0x50], rax
call fcn.140001550
mov rcx, rax
test rax, rax
je 0x140016fec
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [0x140031948]
add rax, 0x18
mov qword [rsp + 0x30], rax
lea rbx, str.LogTransportProcessor.txt
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.14000acc0
lea rdi, [rsi - 1]
test al, al
jne 0x14001600b
mov rax, rdi
nop dword [rax]
inc rax
cmp word [rbx + rax*2], 0
jne 0x140015ff0
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.14000b4a0
nop
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x48]
call fcn.14001e240
nop
mov r8d, 2
mov rdx, qword [rax]
lea rcx, [rbp - 0x30]
call fcn.140009c00
nop
mov rdx, qword [rbp - 0x48]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016052
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140031948]
nop
mov rax, qword [r15]
mov rcx, qword [rax - 0x18]
test rcx, rcx
je 0x140016073
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x140031948]
mov rcx, rax
test rax, rax
jne 0x14001608e
call fcn.140001550
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [0x140031948]
mov rcx, rax
test rcx, rcx
je 0x140016ff7
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x140031948]
add rax, 0x18
mov qword [rsp + 0x38], rax
mov dword [rbp + 0x240], 1
lea r9, [0x140033290]
mov rax, rdi
inc rax
cmp word [r9 + rax*2], 0
jne 0x1400160c1
mov rdx, qword [r15]
mov dword [rsp + 0x20], eax
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x38]
call fcn.14000af60
lea r8, str.CRLogTransport.exe
lea rdx, [rsp + 0x38]
lea rcx, [rbp + 0x248]
call fcn.14000a210
nop
mov dword [rbp + 0x240], esi
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016125
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140031948]
mov dword [rsp + 0x20], 1
mov r9d, 0x40
lea r8d, [r9 - 0x3f]
mov rdx, qword [rbp + 0x248]
lea rcx, [rbp + 0xe0]
call fcn.1400186e0
nop
mov rcx, qword [rbp + 0xe0]
movsxd rax, dword [rcx + 4]
cmp dword [rbp + rax + 0xf0], 0
je 0x14001625a
cmp byte [0x1400418db], 1
jne 0x140016194
lea rdx, str.Log_transport_not_present
lea rcx, [rbp - 0x30]
call fcn.14000bd60
lea rdx, [0x14000c1d0]
mov rcx, rax
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 + 0xe0]
movsxd rax, dword [rcx + 4]
lea rdx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rax + 0xe0], rdx
mov rax, qword [rbp + 0xe0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0xdc], edx
lea rcx, [rbp + 0xf0]
call fcn.140018600
lea rcx, [rbp + 0xf8]
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 + 0x190]
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 + 0x248]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001620e
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140031948]
nop
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rbp + rcx - 0x30], rax
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx - 0x34], edx
lea rcx, [rbp - 0x28]
call fcn.140009b50
lea rcx, [rbp - 0x20]
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 + 0x78]
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 rdx, qword [r15]
jmp 0x140016fa8
mov rax, qword [rbp + 0x248]
mov rcx, qword [rax - 0x18]
test rcx, rcx
je 0x14001627f
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x140031948]
mov rcx, rax
test rax, rax
jne 0x14001629a
call fcn.140001550
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [0x140031948]
mov rcx, rax
test rcx, rcx
je 0x140017002
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x140031948]
add rax, 0x18
mov qword [rsp + 0x50], rax
mov dword [rbp + 0x240], 4
mov r9, qword [rbp + 0x248]
mov ecx, dword [r9 - 0x10]
lea r13, [0x14003597c]
mov rax, rdi
nop dword [rax + rax]
inc rax
cmp word [r13 + rax*2], 0
jne 0x1400162e0
mov dword [rsp + 0x20], ecx
mov r8d, eax
mov rdx, r13
lea rcx, [rsp + 0x50]
call fcn.14000af60
nop
mov rbx, qword [rsp + 0x50]
lea r14, [rbx - 0x18]
mov rcx, qword [r14]
test rcx, rcx
je 0x140016327
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x140031948]
mov rcx, rax
test rax, rax
jne 0x140016342
call fcn.140001550
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [0x140031948]
mov rcx, rax
test rcx, rcx
je 0x14001700d
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x140031948]
add rax, 0x18
mov qword [rsp + 0x58], rax
mov dword [rbp + 0x240], 0xc
mov rax, rdi
nop
inc rax
cmp word [r13 + rax*2], 0
jne 0x140016370
mov dword [rsp + 0x20], eax
mov r9, r13
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rsp + 0x58]
call fcn.14000af60
mov rdx, qword [rsp + 0x58]
lea rbx, [rdx - 0x18]
mov rsi, qword [rbp + 0x248]
add rsi, 0xffffffffffffffe8
cmp rbx, rsi
je 0x14001640e
mov eax, dword [rsi + 0x10]
shr eax, 0x1f
test al, al
jne 0x1400163fd
mov rax, qword [rsi]
cmp qword [rbx], rax
jne 0x1400163fd
mov rcx, rbx
call fcn.14000b3a0
mov r15, rax
mov ecx, edi
lock xadd dword [rsi + 0x10], ecx
sub ecx, 1
jg 0x1400163e9
mov rcx, qword [rsi]
mov r8, qword [rcx]
mov rdx, rsi
mov rax, qword [r8 + 8]
call qword [0x140031948]
lea rax, [r15 + 0x18]
mov qword [rbp + 0x248], rax
mov r15, qword [rbp + 0x230]
jmp 0x14001640e
mov r8d, dword [rdx - 0x10]
lea rcx, [rbp + 0x248]
call fcn.14000b4a0
nop
mov eax, edi
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x14001642d
mov rcx, qword [rbx]
mov rax, qword [rcx]
mov rdx, rbx
mov rax, qword [rax + 8]
call qword [0x140031948]
mov dword [rbp + 0x240], 0
mov eax, edi
lock xadd dword [r14 + 0x10], eax
sub eax, 1
jg 0x140016457
mov rcx, qword [r14]
mov rax, qword [rcx]
mov rdx, r14
mov rax, qword [rax + 8]
call qword [0x140031948]
cmp byte [0x1400418db], 1
jne 0x14001648d
lea rdx, str.bVerifySignatureBeforeLaunching:
lea rcx, [rbp - 0x30]
call fcn.14000bd60
movzx edx, r12b
mov rcx, rax
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]
lea rdx, [0x14000c1d0]
mov rcx, rax
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 0x1400165fe
lea rcx, [rbp - 0x40]
call fcn.140024af0
nop
mov rcx, qword [rax]
call fcn.14002ad70
test eax, eax
setne bl
mov rdx, qword [rbp - 0x40]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400164d2
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140031948]
test bl, bl
jne 0x1400165d1
cmp byte [0x1400418db], 1
jne 0x140016504
lea rdx, str.Verification_failed_for_log_transport_file._Returning
lea rcx, [rbp - 0x30]
call fcn.14000bd60
lea rdx, [0x14000c1d0]
mov rcx, rax
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 + 0xe0]
movsxd rcx, dword [rax + 4]
lea rdx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0xe0], rdx
mov rax, qword [rbp + 0xe0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0xdc], edx
lea rcx, [rbp + 0xf0]
call fcn.140018600
lea rcx, [rbp + 0xf8]
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 + 0x190]
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 + 0x248]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016585
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140031948]
nop
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rbp + rcx - 0x30], rax
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx - 0x34], edx
lea rcx, [rbp - 0x28]
call fcn.140009b50
lea rcx, [rbp - 0x20]
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 + 0x78]
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 rdx, qword [r15]
jmp 0x140016fa8
cmp byte [0x1400418db], 1
jne 0x140016680
lea rdx, str.Signature_verification_successful_for_Log_transport
lea rcx, [rbp - 0x30]
call fcn.14000bd60
lea rdx, [0x14000c1d0]
mov rcx, rax
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 [0x1400418db], 1
jne 0x140016680
lea rdx, str.Going_to_execute_the_log_transport
lea rcx, [rbp - 0x30]
call fcn.14000bd60
lea rdx, [0x14000c1d0]
mov rcx, rax
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 rdx, str.LogTransport_path_is_:
lea rcx, [rbp - 0x30]
call fcn.14000bd60
mov rdx, qword [rbp + 0x248]
mov rcx, rax
call fcn.14000bfe0
lea rdx, [0x14000c1d0]
mov rcx, rax
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.14000aa70
test rax, rax
jne 0x140016680
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea rax, [rbp - 0x30]
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]
lea rcx, [rbp - 0x38]
call fcn.14001e4c0
nop
mov r12, qword [rax]
mov rax, qword [r15]
mov rcx, qword [rax - 0x18]
test rcx, rcx
je 0x1400166ae
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x140031948]
mov rcx, rax
test rax, rax
jne 0x1400166c9
call fcn.140001550
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [0x140031948]
mov rcx, rax
test rcx, rcx
je 0x140017018
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x140031948]
add rax, 0x18
mov qword [rsp + 0x60], rax
mov dword [rbp + 0x240], 0x20
mov r9, qword [r15]
mov ecx, dword [r9 - 0x10]
mov rax, rdi
nop dword [rax]
inc rax
cmp word [r13 + rax*2], 0
jne 0x140016700
mov dword [rsp + 0x20], ecx
mov r8d, eax
mov rdx, r13
lea rcx, [rsp + 0x60]
call fcn.14000af60
nop
mov rbx, qword [rsp + 0x60]
lea r13, [rbx - 0x18]
mov rcx, qword [r13]
test rcx, rcx
je 0x140016748
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x140031948]
mov rcx, rax
test rax, rax
jne 0x140016763
call fcn.140001550
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [0x140031948]
mov rcx, rax
test rcx, rcx
je 0x140017023
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x140031948]
add rax, 0x18
mov qword [rsp + 0x68], rax
mov dword [rbp + 0x240], 0x60
mov rax, rdi
lea rsi, [0x14003597c]
inc rax
cmp word [rsi + rax*2], 0
jne 0x140016796
mov dword [rsp + 0x20], eax
mov r9, rsi
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rsp + 0x68]
call fcn.14000af60
nop
mov rbx, qword [rsp + 0x68]
lea r15, [rbx - 0x18]
mov rcx, qword [r15]
test rcx, rcx
je 0x1400167df
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x140031948]
mov rcx, rax
test rax, rax
jne 0x1400167fa
call fcn.140001550
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [0x140031948]
mov rcx, rax
test rcx, rcx
je 0x14001702e
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x140031948]
add rax, 0x18
mov qword [rsp + 0x70], rax
mov dword [rbp + 0x240], 0xe0
lea rcx, [0x140035a58]
mov rax, rdi
nop dword [rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x140016830
mov dword [rsp + 0x20], eax
mov r9, rcx
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rsp + 0x70]
call fcn.14000af60
nop
mov rbx, qword [rsp + 0x70]
lea r14, [rbx - 0x18]
mov rcx, qword [r14]
test rcx, rcx
je 0x140016879
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x140031948]
mov rcx, rax
test rax, rax
jne 0x140016894
call fcn.140001550
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [0x140031948]
mov rcx, rax
test rcx, rcx
je 0x140017039
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x140031948]
add rax, 0x18
mov qword [rsp + 0x78], rax
mov dword [rbp + 0x240], 0x1e0
mov rax, rdi
inc rax
cmp word [rsi + rax*2], 0
jne 0x1400168c0
mov dword [rsp + 0x20], eax
mov r9, rsi
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rsp + 0x78]
call fcn.14000af60
nop
mov rbx, qword [rsp + 0x78]
mov rcx, qword [rbx - 0x18]
test rcx, rcx
je 0x140016906
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x140031948]
mov rcx, rax
test rax, rax
jne 0x140016921
call fcn.140001550
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [0x140031948]
mov rcx, rax
test rcx, rcx
je 0x140017044
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x140031948]
add rax, 0x18
mov qword [rsp + 0x40], rax
mov dword [rbp + 0x240], 0x1f0
test r12, r12
jne 0x140016953
xor eax, eax
jmp 0x14001696b
mov rax, rdi
nop word [rax + rax]
inc rax
cmp word [r12 + rax*2], 0
jne 0x140016960
mov dword [rsp + 0x20], eax
mov r9, r12
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.14000af60
lea r8, [0x14003597c]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x58]
call fcn.14000a210
nop
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400169bf
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140031948]
nop
mov eax, edi
lock xadd dword [rbx - 8], eax
sub eax, 1
jg 0x1400169e1
mov rcx, qword [rbx - 0x18]
mov rax, qword [rcx]
lea rdx, [rbx - 0x18]
mov rax, qword [rax + 8]
call qword [0x140031948]
nop
mov eax, edi
lock xadd dword [r14 + 0x10], eax
sub eax, 1
jg 0x140016a02
mov rcx, qword [r14]
mov rax, qword [rcx]
mov rdx, r14
mov rax, qword [rax + 8]
call qword [0x140031948]
nop
mov eax, edi
lock xadd dword [r15 + 0x10], eax
sub eax, 1
jg 0x140016a22
mov rcx, qword [r15]
mov rax, qword [rcx]
mov rdx, r15
mov rax, qword [rax + 8]
call qword [0x140031948]
xor ebx, ebx
mov dword [rbp + 0x240], ebx
mov eax, edi
lock xadd dword [r13 + 0x10], eax
sub eax, 1
jg 0x140016a4c
mov rcx, qword [r13]
mov rax, qword [rcx]
mov rdx, r13
mov rax, qword [rax + 8]
call qword [0x140031948]
nop
mov rdx, qword [rbp - 0x38]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016a70
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140031948]
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbx
mov r9, qword [rbp - 0x58]
mov r8, qword [rbp + 0x248]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
lea rcx, [rbp - 0x50]
call fcn.14001e560
nop
mov r13, qword [rax]
mov rbx, qword [rbp + 0x230]
mov rax, qword [rbx]
mov rcx, qword [rax - 0x18]
test rcx, rcx
je 0x140016ac3
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x140031948]
mov rcx, rax
test rax, rax
jne 0x140016ade
call fcn.140001550
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [0x140031948]
mov rcx, rax
test rcx, rcx
je 0x14001704f
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x140031948]
add rax, 0x18
mov qword [rbp - 0x80], rax
mov dword [rbp + 0x240], 0x400
mov r9, qword [rbx]
mov ecx, dword [r9 - 0x10]
mov rax, rdi
lea rsi, [0x14003597c]
nop word [rax + rax]
inc rax
cmp word [rsi + rax*2], 0
jne 0x140016b20
mov dword [rsp + 0x20], ecx
mov r8d, eax
mov rdx, rsi
lea rcx, [rbp - 0x80]
call fcn.14000af60
nop
mov rbx, qword [rbp - 0x80]
lea r12, [rbx - 0x18]
mov rcx, qword [r12]
test rcx, rcx
je 0x140016b64
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x140031948]
mov rcx, rax
test rax, rax
jne 0x140016b7f
call fcn.140001550
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [0x140031948]
mov rcx, rax
test rcx, rcx
je 0x14001705a
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x140031948]
add rax, 0x18
mov qword [rbp - 0x78], rax
mov dword [rbp + 0x240], 0xc00
mov rax, rdi
nop word [rax + rax]
inc rax
cmp word [rsi + rax*2], 0
jne 0x140016bb0
mov dword [rsp + 0x20], eax
mov r9, rsi
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rbp - 0x78]
call fcn.14000af60
nop
mov rbx, qword [rbp - 0x78]
lea r15, [rbx - 0x18]
mov rcx, qword [r15]
test rcx, rcx
je 0x140016bf7
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x140031948]
mov rcx, rax
test rax, rax
jne 0x140016c12
call fcn.140001550
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [0x140031948]
mov rcx, rax
test rcx, rcx
je 0x140017065
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x140031948]
add rax, 0x18
mov qword [rbp - 0x70], rax
mov dword [rbp + 0x240], 0x1c00
mov rax, rdi
lea r9, [0x140035a58]
inc rax
cmp word [r9 + rax*2], 0
jne 0x140016c44
mov dword [rsp + 0x20], eax
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rbp - 0x70]
call fcn.14000af60
nop
mov rbx, qword [rbp - 0x70]
lea r14, [rbx - 0x18]
mov rcx, qword [r14]
test rcx, rcx
je 0x140016c89
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x140031948]
mov rcx, rax
test rax, rax
jne 0x140016ca4
call fcn.140001550
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [0x140031948]
mov rcx, rax
test rcx, rcx
je 0x140017070
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x140031948]
add rax, 0x18
mov qword [rbp - 0x68], rax
mov dword [rbp + 0x240], 0x3c00
mov rax, rdi
nop
inc rax
cmp word [rsi + rax*2], 0
jne 0x140016cd0
mov dword [rsp + 0x20], eax
mov r9, rsi
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rbp - 0x68]
call fcn.14000af60
nop
mov rbx, qword [rbp - 0x68]
mov rcx, qword [rbx - 0x18]
test rcx, rcx
je 0x140016d14
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x140031948]
mov rcx, rax
test rax, rax
jne 0x140016d2f
call fcn.140001550
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [0x140031948]
mov rcx, rax
test rcx, rcx
je 0x140016fe1
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [0x140031948]
add rax, 0x18
mov qword [rsp + 0x48], rax
mov dword [rbp + 0x240], 0x7c00
test r13, r13
jne 0x140016d61
xor eax, eax
jmp 0x140016d70
mov rax, rdi
inc rax
cmp word [r13 + rax*2], 0
jne 0x140016d64
mov dword [rsp + 0x20], eax
mov r9, r13
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rsp + 0x48]
call fcn.14000af60
lea r8, [0x14003597c]
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x60]
call fcn.14000a210
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016dc4
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140031948]
nop
mov eax, edi
lock xadd dword [rbx - 8], eax
sub eax, 1
jg 0x140016de6
mov rcx, qword [rbx - 0x18]
mov rax, qword [rcx]
lea rdx, [rbx - 0x18]
mov rax, qword [rax + 8]
call qword [0x140031948]
nop
mov eax, edi
lock xadd dword [r14 + 0x10], eax
sub eax, 1
jg 0x140016e07
mov rcx, qword [r14]
mov rax, qword [rcx]
mov rdx, r14
mov rax, qword [rax + 8]
call qword [0x140031948]
nop
mov eax, edi
lock xadd dword [r15 + 0x10], eax
sub eax, 1
jg 0x140016e28
mov rcx, qword [r15]
mov rax, qword [rcx]
mov rdx, r15
mov rax, qword [rax + 8]
call qword [0x140031948]
nop
mov eax, edi
lock xadd dword [r12 + 0x10], eax
sub eax, 1
jg 0x140016e4b
mov rcx, qword [r12]
mov rax, qword [rcx]
mov rdx, r12
mov rax, qword [rax + 8]
call qword [0x140031948]
nop
mov rdx, qword [rbp - 0x50]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016e6f
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140031948]
xor eax, eax
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rax
mov r9, qword [rbp - 0x60]
mov r8, qword [rbp + 0x248]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
mov rdx, qword [rbp - 0x60]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016eb4
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140031948]
nop
mov rdx, qword [rbp - 0x58]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016ed9
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140031948]
nop
mov rax, qword [rbp + 0xe0]
movsxd rcx, dword [rax + 4]
lea rdx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0xe0], rdx
mov rax, qword [rbp + 0xe0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0xdc], edx
lea rcx, [rbp + 0xf0]
call fcn.140018600
lea rcx, [rbp + 0xf8]
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 + 0x190]
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 + 0x248]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016f5a
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140031948]
nop
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rbp + rcx - 0x30], rax
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx - 0x34], edx
lea rcx, [rbp - 0x28]
call fcn.140009b50
lea rcx, [rbp - 0x20]
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 + 0x78]
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 rdx, qword [rbp + 0x230]
mov rdx, qword [rdx]
sub rdx, 0x18
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x140016fc6
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140031948]
mov rbx, qword [rsp + 0x338]
add rsp, 0x2f0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x80004005
call fcn.140001300
nop
mov ecx, 0x80004005
call fcn.140001300
nop
mov ecx, 0x80004005
call fcn.140001300
nop
mov ecx, 0x80004005
call fcn.140001300
nop
mov ecx, 0x80004005
call fcn.140001300
nop
mov ecx, 0x80004005
call fcn.140001300
nop
mov ecx, 0x80004005
call fcn.140001300
nop
mov ecx, 0x80004005
call fcn.140001300
nop
mov ecx, 0x80004005
call fcn.140001300
nop
mov ecx, 0x80004005
call fcn.140001300
nop
mov ecx, 0x80004005
call fcn.140001300
nop
mov ecx, 0x80004005
call fcn.140001300
nop
mov ecx, 0x80004005
call fcn.140001300
nop
mov ecx, 0x80004005
call fcn.140001300
int3