Function at 0x14001268c
Capabilities:
Write file on windows

Disassembly:
mov rax, rsp
mov dword [rax + 0x20], r9d
mov dword [rax + 0x18], r8d
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov eax, r9d
mov r14, rcx
lea r12, str.WmiApRpl
mov qword [rsp + 0x68], r12
mov edi, 0x8000ffff
xor esi, esi
cmp word [str.WmiApRpl], si
je 0x1400138f8
test eax, eax
jne 0x1400126e1
cmp dword [rcx + 0x50], esi
je 0x1400138f8
mov qword [rsp + 0x50], rsi
mov rcx, r12
call qword [sym.imp.msvcrt.dll_wcslen]
nop dword [rax + rax]
lea r15d, [rax + 0xa]
mov eax, 2
mul r15
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.140001284
mov rbx, rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x60], rax
test rax, rax
jne 0x1400128de
mov edi, 0x8007000e
mov r15d, 1
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x50], rbx
test edi, edi
js 0x140012cd1
mov rax, rsi
cmp dword [r14 + 0x5c], 2
jne 0x140012bf5
call fcn.14000c2c0
mov qword [rsp + 0xb8], rax
test rax, rax
je 0x140012bdb
mov r8d, dword [r14 + 0x54]
lea rdx, str.WMI_Objects
call fcn.140013a20
mov r13, rax
test rax, rax
je 0x140012bc0
mov r8d, r15d
mov rdx, rax
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012bc5
mov r8d, r15d
lea rdx, str.NAME
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012bc5
mov r8d, r15d
lea rdx, [0x1400216c8]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012bc5
mov edx, 0xcc
mov rcx, qword [rsp + 0xb8]
call fcn.14000743c
mov r12, rax
test rax, rax
je 0x140012bc0
mov r8d, r15d
mov rdx, rax
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x14001281d
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov rcx, r12
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
test edi, edi
js 0x140012bc5
mov r8d, r15d
mov rdx, r13
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012bc5
mov r8d, r15d
lea rdx, str.HELP
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012bc5
mov r8d, r15d
lea rdx, [0x1400216c8]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012bc5
mov edx, 0xcf
mov rcx, qword [rsp + 0xb8]
call fcn.14000743c
mov r12, rax
test rax, rax
je 0x140012bc0
mov r8d, r15d
mov rdx, rax
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400128ca
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov rcx, r12
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
jmp 0x140012bc5
lea rax, [r15 - 1]
cmp rax, 0x7ffffffe
ja 0x1400128fa
mov r9, r12
mov rdx, r15
mov rcx, rbx
call fcn.14000bec8
jmp 0x14001291a
mov r12d, 0x80070057
mov edi, r12d
mov eax, r12d
test r15, r15
je 0x140012913
mov word [rbx], si
jmp 0x14001272f
lea r12, str.WmiApRpl
mov edi, eax
test eax, eax
js 0x14001272f
lea r8, str._new.ini
mov rdx, r15
mov rcx, rbx
call fcn.14000520c
mov edi, eax
test eax, eax
js 0x14001272f
mov rdx, rbx
mov rcx, r14
call fcn.1400102ec
mov edi, eax
test eax, eax
js 0x14001272f
mov edi, 0x80004005
mov dword [rsp + 0xb8], esi
lea rcx, [0x140021cb4]
call qword [sym.imp.msvcrt.dll_strlen]
nop dword [rax + rax]
mov r15, rax
mov qword [rsp + 0x20], rsi
lea r9, [rsp + 0xb8]
mov r8d, eax
lea rdx, [0x140021cb4]
mov rcx, qword [r14 + 0x68]
call qword [sym.imp.api_ms_win_core_file_l1_1_0.dll_WriteFile]
nop dword [rax + rax]
test eax, eax
je 0x14001272f
cmp r15d, dword [rsp + 0xb8]
jne 0x14001272f
mov edi, esi
lea r13, vtable.CGenerateComment.0
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x40], rsi
lea rcx, [rsp + 0x38]
call fcn.140015a34
xor edx, edx
lea rcx, [rsp + 0x38]
call fcn.140015a9c
lea rdx, str.Copyright__C__2000_Microsoft_Corporation
lea rcx, [rsp + 0x38]
call fcn.140015a9c
xor edx, edx
lea rcx, [rsp + 0x38]
call fcn.140015a9c
lea rdx, str.Module_Name:
lea rcx, [rsp + 0x38]
call fcn.140015a9c
mov rdx, r12
lea rcx, [rsp + 0x38]
call fcn.140015a9c
xor edx, edx
lea rcx, [rsp + 0x38]
call fcn.140015a9c
lea rdx, str.Abstract:
lea rcx, [rsp + 0x38]
call fcn.140015a9c
xor edx, edx
lea rcx, [rsp + 0x38]
call fcn.140015a9c
lea rdx, str.Describes_all_the_counters_supported_via_WMI_Hi_Performance_providers
lea rcx, [rsp + 0x38]
call fcn.140015a9c
xor edx, edx
lea rcx, [rsp + 0x38]
call fcn.140015a9c
lea rcx, [rsp + 0x38]
call fcn.1400159b8
nop
xor edx, edx
lea rcx, [rsp + 0x38]
call fcn.1400158f8
lea rdx, str._info__r_n
lea rcx, [rsp + 0x38]
call fcn.1400158f8
lea rdx, str.drivername
lea rcx, [rsp + 0x38]
call fcn.1400158f8
mov rdx, r12
lea rcx, [rsp + 0x38]
call fcn.1400158f8
xor edx, edx
lea rcx, [rsp + 0x38]
call fcn.1400158f8
lea rdx, str.symbolfile
lea rcx, [rsp + 0x38]
call fcn.1400158f8
mov rdx, r12
lea rcx, [rsp + 0x38]
call fcn.1400158f8
lea rdx, [0x140021c64]
lea rcx, [rsp + 0x38]
call fcn.1400158f8
xor edx, edx
lea rcx, [rsp + 0x38]
call fcn.1400158f8
xor edx, edx
lea rcx, [rsp + 0x38]
call fcn.1400158f8
lea rdx, str._languages__r_n
lea rcx, [rsp + 0x38]
call fcn.1400158f8
mov r12d, esi
mov r15d, 1
cmp r12d, dword [r14 + 0x5c]
jae 0x140012b54
mov eax, r12d
mov edx, dword [r14 + rax*4 + 0x54]
call fcn.14001392c
mov r13, rax
test rax, rax
je 0x140012b4a
mov rdx, rax
lea rcx, [rsp + 0x38]
call fcn.1400158f8
mov rcx, r13
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
jmp 0x140012b4f
mov edi, 0x8007000e
add r12d, r15d
jmp 0x140012b11
xor edx, edx
lea rcx, [rsp + 0x38]
call fcn.1400158f8
nop
test edi, edi
js 0x140012b9e
mov rdx, qword [rsp + 0x40]
mov rcx, r14
call fcn.140010cd8
mov edi, eax
test eax, eax
js 0x140012b9e
mov rcx, r14
call fcn.140012268
mov edi, eax
jmp 0x140012b9e
lea r13, vtable.CGenerateComment.0
mov qword [rsp + 0x38], r13
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
nop dword [rax + rax]
jmp 0x140012735
mov edi, 0x8007000e
mov rcx, qword [rsp + 0xb8]
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_FreeLibrary]
nop dword [rax + rax]
jmp 0x140012be0
mov edi, 0x80004005
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x50], rbx
mov rax, r15
test edi, edi
js 0x140012cd1
mov r8d, dword [r14 + rax*4 + 0x54]
lea rdx, str.WMI_Objects
call fcn.140013a20
mov r12, rax
test rax, rax
je 0x140012eda
mov r8d, r15d
mov rdx, rax
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012c96
mov r8d, r15d
lea rdx, str.NAMEWMI_Objects
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012c96
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012c96
mov r8d, r15d
mov rdx, r12
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012c96
mov r8d, r15d
lea rdx, str.HELPNumber_of_WMI_High_Performance_provider_returned_by_WMI_Adapter
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012c96
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov rcx, r12
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x50], rbx
test edi, edi
js 0x140012cd1
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x50], rbx
mov r8d, esi
mov dword [rsp + 0xb8], esi
test edi, edi
js 0x1400138bb
or r13, 0xffffffffffffffff
cmp dword [rsp + 0xc8], r13d
je 0x140012fc1
mov r12d, esi
mov dword [rsp + 0x48], r12d
mov eax, edi
cmp r12d, dword [r14 + 0x50]
jae 0x140012fb9
test edi, edi
js 0x1400138bb
mov eax, r12d
lea rbx, [rax + rax*4]
cmp qword [r14 + rbx*8 + 0x20], rsi
je 0x140012fb1
mov rbx, qword [r14 + rbx*8 + 0x18]
mov rbx, qword [rbx]
lea rax, [rax + rax*4]
cmp rbx, qword [r14 + rax*8 + 0x18]
je 0x140012f7f
test edi, edi
js 0x140012f7f
mov rax, qword [rbx + 0x28]
mov eax, dword [rax + 0x20]
mov dword [rsp + 0xc0], eax
mov r13d, esi
cmp r13d, dword [r14 + 0x5c]
jae 0x140012f03
test edi, edi
js 0x140012f23
cmp r13d, eax
jae 0x140012f07
mov rdx, qword [rbx + 0x28]
mov rdx, qword [rdx + 8]
call fcn.140010a30
mov rdi, rax
test rax, rax
je 0x140012ee7
mov eax, r13d
mov r8d, dword [r14 + rax*4 + 0x54]
mov rdx, rdi
call fcn.140013a20
mov qword [rsp + 0x58], rax
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x140012ee7
mov r8d, r15d
mov rdx, rax
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012ec7
mov r8d, r15d
lea rdx, str.NAME
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012ec7
mov r8d, r15d
lea rdx, [0x1400216c8]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012ec7
mov rax, qword [rbx + 0x28]
mov rcx, qword [rax + 0x18]
mov edx, r13d
mov rdx, qword [rcx + rdx*8]
mov r8d, r15d
mov rdx, qword [rdx + 8]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012ec7
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012ec7
mov r8d, r15d
mov rdx, qword [rsp + 0x58]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012ec7
mov r8d, r15d
lea rdx, str.HELP
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012ec7
mov r8d, r15d
lea rdx, [0x1400216c8]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012ec7
mov rax, qword [rbx + 0x28]
mov rcx, qword [rax + 0x18]
mov eax, r13d
mov rdx, qword [rcx + rax*8]
mov r8d, r15d
mov rdx, qword [rdx + 0x10]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140012ec7
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
jmp 0x140012eec
mov edi, 0x8007000e
mov r15, rbx
jmp 0x1400138c0
mov edi, 0x8007000e
add r13d, r15d
mov r8d, dword [rsp + 0xb8]
mov eax, dword [rsp + 0xc0]
jmp 0x140012d53
test edi, edi
js 0x140012f23
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov r8d, dword [rsp + 0xb8]
cmp byte [rbx + 0x19], sil
jne 0x140012f6c
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], sil
jne 0x140012f50
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], sil
jne 0x140012f6c
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], sil
je 0x140012f3f
jmp 0x140012f6c
mov rax, qword [rbx + 8]
jmp 0x140012f63
cmp rbx, qword [rax + 0x10]
jne 0x140012f69
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], sil
je 0x140012f56
mov rbx, rax
add r8d, r15d
mov dword [rsp + 0xb8], r8d
mov eax, r12d
jmp 0x140012d2b
jmp 0x140012fad
or r13, 0xffffffffffffffff
add r12d, r15d
jmp 0x140012cf8
test eax, eax
js 0x1400138bb
mov r12, rsi
cmp dword [r14 + 0x5c], 2
jne 0x1400132ef
call fcn.14000c2c0
mov r13, rax
test rax, rax
je 0x1400132db
mov r8d, dword [r14 + 0x54]
lea rdx, str.HiPerf_Classes
call fcn.140013a20
mov r12, rax
test rax, rax
je 0x1400132c5
mov r8d, r15d
mov rdx, rax
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400132ca
mov r8d, r15d
lea rdx, str.NAME
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400132ca
mov r8d, r15d
lea rdx, [0x1400216c8]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400132ca
mov edx, 0xcd
mov rcx, r13
call fcn.14000743c
mov rbx, rax
test rax, rax
je 0x1400132c5
mov r8d, r15d
mov rdx, rax
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x14001308d
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
test edi, edi
js 0x1400132ca
mov r8d, r15d
mov rdx, r12
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400132ca
mov r8d, r15d
lea rdx, str.HELP
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400132ca
mov r8d, r15d
lea rdx, [0x1400216c8]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400132ca
mov edx, 0xd0
mov rcx, r13
call fcn.14000743c
mov rbx, rax
test rax, rax
je 0x140013142
mov r8d, r15d
mov rdx, rax
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140013131
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
jmp 0x140013147
mov edi, 0x8007000e
test edi, edi
js 0x1400132ca
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400132ca
mov r8d, dword [r14 + 0x54]
lea rdx, str.HiPerf_Validity
call fcn.140013a20
mov r12, rax
test rax, rax
je 0x1400132c5
mov r8d, r15d
mov rdx, rax
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400132ca
mov r8d, r15d
lea rdx, str.NAME
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400132ca
mov r8d, r15d
lea rdx, [0x1400216c8]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400132ca
mov edx, 0xce
mov rcx, r13
call fcn.14000743c
mov rbx, rax
test rax, rax
je 0x1400132c5
mov r8d, r15d
mov rdx, rax
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140013218
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
test edi, edi
js 0x1400132ca
mov r8d, r15d
mov rdx, r12
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400132ca
mov r8d, r15d
lea rdx, str.HELP
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400132ca
mov r8d, r15d
lea rdx, [0x1400216c8]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400132ca
mov edx, 0xd1
mov rcx, r13
call fcn.14000743c
mov rbx, rax
test rax, rax
je 0x1400132c5
mov r8d, r15d
mov rdx, rax
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400132b4
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
jmp 0x1400132ca
mov edi, 0x8007000e
mov rcx, r13
call qword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_FreeLibrary]
nop dword [rax + rax]
jmp 0x1400132e0
mov edi, 0x80004005
mov r12, r15
test edi, edi
js 0x1400138bb
or r13, 0xffffffffffffffff
mov r8d, dword [r14 + r12*4 + 0x54]
lea rdx, str.HiPerf_Classes
call fcn.140013a20
mov rbx, rax
test rax, rax
je 0x1400138b6
mov r8d, r15d
mov rdx, rax
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140013378
mov r8d, r15d
lea rdx, str.NAMEHiPerf_Classes
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140013378
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140013378
mov r8d, r15d
mov rdx, rbx
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x140013378
mov r8d, r15d
lea rdx, str.HELPShows_High_Performance_Classes
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
test edi, edi
js 0x1400138bb
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400138bb
mov r8d, dword [r14 + r12*4 + 0x54]
lea rdx, str.HiPerf_Validity
call fcn.140013a20
mov rbx, rax
test rax, rax
je 0x1400138b6
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x14001344c
mov r8d, r15d
mov rdx, rbx
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x14001344c
mov r8d, r15d
lea rdx, str.NAMEHiPerf_Validity
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x14001344c
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x14001344c
mov r8d, r15d
mov rdx, rbx
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x14001344c
mov r8d, r15d
lea rdx, str.HELPShows_if_High_Performance_Classes_are_valid
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
test edi, edi
js 0x1400138bb
cmp dword [rsp + 0xc8], r13d
je 0x1400137b7
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov dword [rsp + 0xb8], esi
mov r13d, esi
mov dword [rsp + 0x48], r13d
mov eax, edi
cmp r13d, dword [r14 + 0x50]
jae 0x1400137ab
test edi, edi
js 0x1400138bb
mov r12d, r13d
lea rbx, [r12 + r12*4]
cmp qword [r14 + rbx*8 + 0x20], rsi
je 0x1400137a3
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov rbx, qword [r14 + rbx*8 + 0x18]
mov rbx, qword [rbx]
lea rax, [r12 + r12*4]
cmp rbx, qword [r14 + rax*8 + 0x18]
je 0x14001377d
test edi, edi
js 0x14001377d
mov ecx, esi
mov dword [rsp + 0xc0], ecx
mov rax, qword [rbx + 0x28]
cmp ecx, dword [rax + 0x38]
jae 0x140013724
test edi, edi
js 0x140013724
mov edx, ecx
mov qword [rsp + 0x38], rdx
mov rax, qword [rax + 0x30]
mov rcx, qword [rax + rdx*8]
cmp qword [rcx + 0x20], rsi
je 0x140013715
mov eax, dword [rcx + 0x28]
mov dword [rsp + 0x58], eax
mov r12d, esi
cmp r12d, dword [r14 + 0x5c]
jae 0x1400136fd
test edi, edi
js 0x140013715
cmp r12d, eax
jae 0x140013701
mov rax, qword [rbx + 0x28]
mov rcx, qword [rax + 0x30]
mov rdx, qword [rcx + rdx*8]
mov r8d, dword [rsp + 0xb8]
mov rdx, qword [rdx + 8]
call fcn.140010a30
mov rdi, rax
test rax, rax
je 0x1400136e7
mov eax, r12d
mov r8d, dword [r14 + rax*4 + 0x54]
mov rdx, rdi
call fcn.140013a20
mov qword [rsp + 0x60], rax
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x1400136e7
mov r8d, r15d
mov rdx, rax
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400136d4
mov r8d, r15d
lea rdx, str.NAME
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400136d4
mov r8d, r15d
lea rdx, [0x1400216c8]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400136d4
mov edx, dword [rsp + 0xc0]
mov rax, qword [rbx + 0x28]
mov rcx, qword [rax + 0x30]
mov rax, qword [rcx + rdx*8]
mov rcx, qword [rax + 0x20]
mov edx, r12d
mov rdx, qword [rcx + rdx*8]
mov r8d, r15d
mov rdx, qword [rdx + 8]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400136d4
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400136d4
mov r8d, r15d
mov rdx, qword [rsp + 0x60]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400136d4
mov r8d, r15d
lea rdx, str.HELP
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400136d4
mov r8d, r15d
lea rdx, [0x1400216c8]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400136d4
mov rax, qword [rbx + 0x28]
mov rcx, qword [rax + 0x30]
mov eax, dword [rsp + 0xc0]
mov rax, qword [rcx + rax*8]
mov rcx, qword [rax + 0x20]
mov eax, r12d
mov rdx, qword [rcx + rax*8]
mov r8d, r15d
mov rdx, qword [rdx + 0x10]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
test eax, eax
js 0x1400136d4
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
jmp 0x1400136ec
mov edi, 0x8007000e
add r12d, r15d
mov rdx, qword [rsp + 0x38]
mov eax, dword [rsp + 0x58]
jmp 0x14001352e
test edi, edi
js 0x140013715
mov r8d, r15d
lea rdx, [0x140021670]
mov rcx, r14
call fcn.1400100ec
mov edi, eax
mov ecx, dword [rsp + 0xc0]
add ecx, r15d
jmp 0x1400134ef
cmp byte [rbx + 0x19], sil
jne 0x14001376d
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], sil
jne 0x140013751
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], sil
jne 0x14001376d
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], sil
je 0x140013740
jmp 0x14001376d
mov rax, qword [rbx + 8]
jmp 0x140013764
cmp rbx, qword [rax + 0x10]
jne 0x14001376a
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], sil
je 0x140013757
mov rbx, rax
add dword [rsp + 0xb8], r15d
mov r12d, r13d
jmp 0x1400134d6
jmp 0x1400137a3
add r13d, r15d
jmp 0x14001348f
test eax, eax
js 0x1400138bb
or r13, 0xffffffffffffffff
mov edx, r15d
mov rcx, r14
call fcn.140010274
mov edi, eax
test eax, eax
js 0x1400138bb
mov qword [rsp + 0xb8], rsi
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.msvcrt.dll_wcslen]
nop dword [rax + rax]
lea r15d, [rax + 6]
mov eax, 2
mul r15
cmovo rax, r13
mov rcx, rax
call fcn.140001284
mov rbx, rax
mov qword [rsp + 0xb8], rax
test rax, rax
jne 0x14001381c
mov edi, 0x8007000e
mov r15, qword [rsp + 0x30]
jmp 0x14001389c
lea rax, [r15 - 1]
cmp rax, 0x7ffffffe
ja 0x14001386d
mov r9, qword [rsp + 0x68]
mov rdx, r15
mov rcx, rbx
call fcn.14000bec8
mov edi, eax
test eax, eax
js 0x140013812
lea r8, str..ini
mov rdx, r15
mov rcx, rbx
call fcn.14000520c
mov edi, eax
test eax, eax
js 0x140013812
mov r8, rbx
mov r15, qword [rsp + 0x30]
mov rdx, r15
mov rcx, r14
call fcn.14001068c
mov edi, eax
jmp 0x140013817
mov eax, 0x80070057
mov edi, eax
test r15, r15
je 0x140013838
mov word [rbx], si
jmp 0x140013812
test rbx, rbx
je 0x1400138b0
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
test edi, edi
jns 0x1400138e4
jmp 0x1400138c0
mov edi, 0x8007000e
mov r15, qword [rsp + 0x30]
mov rax, qword [0x14002d6f0]
test rax, rax
je 0x1400138d9
mov word [rax], si
mov dword [0x14002cfb0], 0x1000
mov rdx, r15
mov rcx, r14
call fcn.140010500
test r15, r15
je 0x1400138f8
mov rcx, r15
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete___void____ptr64_]
nop dword [rax + rax]
mov eax, edi
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret