Function at 0x140025680
Capabilities:
Create directory

Disassembly:
push rbp
push rsi
push rdi
lea rbp, [rsp - 0xc0]
sub rsp, 0x1c0
mov rax, qword [0x1400b2d98]
xor rax, rsp
mov qword [rbp + 0xa0], rax
mov esi, r8d
mov rdi, rcx
test rcx, rcx
jne 0x1400256b7
lea eax, [rcx - 2]
jmp 0x14002614a
mov rcx, qword [rcx + 0x30]
call fcn.140036820
mov rcx, qword [rdi + 0x30]
test rax, rax
je 0x1400256d6
call qword [rdi + 8]
mov eax, 0xfffffffb
jmp 0x14002614a
xorps xmm0, xmm0
mov qword [rsp + 0x1f0], rbx
lea rdx, [rsp + 0x58]
movups xmmword [rsp + 0x58], xmm0
movups xmmword [rsp + 0x68], xmm0
call fcn.140036e50
mov ebx, eax
bt eax, 0x13
jae 0x140025718
mov r9, qword [rsp + 0x70]
lea rdx, str.Option___s__is_invalid_for___s_._n
mov r8, qword [rsp + 0x68]
mov ecx, 2
call fcn.14001ac00
bt ebx, 0x11
jae 0x14002572c
mov rdx, qword [rsp + 0x58]
lea rcx, str.Option___s__is_not_recognized._n
jmp 0x14002573e
bt ebx, 0x12
jae 0x140025753
mov rdx, qword [rsp + 0x60]
lea rcx, str.Option___s__is_missing_its_value._n
call fcn.1400013f0
mov rcx, qword [rdi + 0x30]
call qword [rdi]
mov eax, 0xffffffff
jmp 0x140026142
mov qword [rsp + 0x1f8], r12
mov qword [rsp + 0x1b8], r14
mov qword [rsp + 0x1b0], r15
test esi, esi
je 0x140025e65
cmp esi, 1
je 0x140025cb4
jbe 0x140025b60
cmp esi, 3
jbe 0x140025b30
cmp esi, 5
jne 0x140025b60
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x30]
xor ebx, ebx
mov qword [rsp + 0x30], rbx
mov esi, ebx
mov qword [rsp + 0x48], rbx
mov r14d, ebx
mov qword [rsp + 0x20], rbx
lea edx, [rbx + 2]
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x40], ebx
mov dword [rsp + 0x50], ebx
call fcn.140036860
test eax, eax
jne 0x1400257e7
lea rcx, str.Input_File_Name_must_be_specified_n
mov qword [rsp + 0x30], rbx
call fcn.1400013f0
jmp 0x14002611f
mov rcx, qword [rsp + 0x30]
test rcx, rcx
jne 0x140025802
lea rcx, str.Input_File_Name_must_be_specified_n
call fcn.1400013f0
jmp 0x14002611f
lea rdx, [rsp + 0x58]
call fcn.14005f054
cmp eax, 0xffffffff
je 0x140025b1f
mov eax, 0x8000
test word [rsp + 0x5e], ax
je 0x140025b1f
mov rcx, qword [rsp + 0x30]
call fcn.140055248
mov qword [rdi + 0x58], rax
test rax, rax
je 0x140026125
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x20]
mov edx, 1
call fcn.140036860
test eax, eax
lea rcx, [0x140091a80]
mov r8d, 5
cmovne rcx, qword [rsp + 0x20]
mov qword [rsp + 0x20], rcx
mov rdx, rcx
mov rcx, rdi
call fcn.140026410
mov r15d, eax
test eax, eax
je 0x14002588f
lea rcx, str.Failed_to_find_any_metric_to_display_n
call fcn.1400013f0
mov eax, r15d
jmp 0x14002612a
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x38]
mov edx, 3
mov dword [rdi + 0x48], 5
call fcn.140036860
test eax, eax
jne 0x1400258b4
mov qword [rsp + 0x38], rbx
jmp 0x1400258d7
mov rdx, qword [rsp + 0x38]
test rdx, rdx
je 0x1400258d7
lea r8, [rsp + 0x40]
mov rcx, rdi
call fcn.140025230
test eax, eax
jne 0x140026125
mov esi, dword [rsp + 0x40]
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x28]
mov edx, 4
call fcn.140036860
test eax, eax
jne 0x1400258f5
mov qword [rsp + 0x28], rbx
jmp 0x140025919
mov rdx, qword [rsp + 0x28]
test rdx, rdx
je 0x140025919
lea r8, [rsp + 0x50]
mov rcx, rdi
call fcn.140025230
test eax, eax
jne 0x140026125
mov r14d, dword [rsp + 0x50]
test esi, esi
je 0x140025938
test r14d, r14d
je 0x140025938
cmp r14d, esi
ja 0x140025938
lea rcx, str.Invalid_begin_end_time_combination_n
call fcn.1400013f0
jmp 0x140026125
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x48]
mov edx, 5
mov dword [rdi + 0x68], esi
mov dword [rdi + 0x6c], r14d
call fcn.140036860
mov rcx, qword [rsp + 0x48]
test eax, eax
cmove rcx, rbx
mov qword [rsp + 0x48], rcx
call fcn.140001230
test eax, eax
je 0x140026125
cmp qword [rsp + 0x48], rbx
je 0x14002597d
mov dword [rdi + 0x70], 1
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x50]
mov esi, dword [rdi + 0x6c]
xorps xmm0, xmm0
mov r14d, dword [rdi + 0x68]
xor eax, eax
mov r12, qword [rsp + 0x30]
xor edx, edx
movups xmmword [rbp - 0x70], xmm0
mov qword [rbp + 0x10], rax
xor r15b, r15b
movups xmmword [rbp - 0x60], xmm0
mov qword [rsp + 0x50], rbx
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x10], xmm0
movups xmmword [rbp], xmm0
movups xmmword [rbp + 0x20], xmm0
movups xmmword [rbp + 0x30], xmm0
movups xmmword [rbp + 0x40], xmm0
movups xmmword [rbp + 0x50], xmm0
movups xmmword [rbp + 0x60], xmm0
movups xmmword [rbp + 0x70], xmm0
movups xmmword [rbp + 0x80], xmm0
movups xmmword [rbp + 0x90], xmm0
call fcn.140036860
test eax, eax
jne 0x1400259fb
mov qword [rsp + 0x50], rbx
jmp 0x140025a05
mov rcx, qword [rsp + 0x50]
test rcx, rcx
jne 0x140025a46
lea rcx, str.Identifying_devices_from_the_log_file_n
call fcn.1400013f0
lea rdx, [rbp - 0x70]
mov dword [rbp - 0x70], r14d
mov rcx, r12
mov dword [rbp - 0x6c], esi
call fcn.140021220
mov esi, eax
test eax, eax
je 0x140025a3d
lea rcx, str.Failed_to_identify_any_devices_from_the_log_file_n
call fcn.1400013f0
mov eax, esi
jmp 0x14002612a
lea rsi, [rbp - 0x68]
jmp 0x140025aed
call fcn.140055248
mov r12, rax
test rax, rax
jne 0x140025a5f
mov esi, 0xfffffffc
mov eax, esi
jmp 0x14002612a
lea rdx, [0x140076a9c]
mov rcx, r12
call fcn.140054960
mov rsi, rax
test rax, rax
je 0x140025ac4
nop word [rax + rax]
xor r8d, r8d
xor edx, edx
mov rcx, rsi
call fcn.1400548dc
mov rcx, rsi
mov r14d, eax
call fcn.140037ba0
test eax, eax
je 0x140025aae
cmp r14d, 0x20
jae 0x140025aae
mov dword [rbp + r14*4 + 0x20], 1
mov r15b, 1
lea rdx, [0x140076a9c]
xor ecx, ecx
call fcn.140054960
mov rsi, rax
test rax, rax
jne 0x140025a80
mov rcx, r12
call fcn.140053784
test r15b, r15b
jne 0x140025ae9
lea rcx, str.Failed_to_identify_any_devices_from_command_line_args_n
call fcn.1400013f0
mov esi, 0xffffffff
mov eax, esi
jmp 0x14002612a
lea rsi, [rbp + 0x20]
mov dword [rsp + 0x40], ebx
mov eax, ebx
cmp dword [rsi + rax*4], 0
je 0x140025b0b
mov rcx, qword [rdi + 0x10]
lea rdx, [rsp + 0x40]
call fcn.14001dbb0
mov ebx, dword [rsp + 0x40]
inc ebx
mov dword [rsp + 0x40], ebx
mov eax, ebx
cmp ebx, 0x20
jb 0x140025af3
xor eax, eax
jmp 0x14002612a
lea rcx, str.Failed_to_validate_log_file_n
call fcn.1400013f0
jmp 0x140026125
mov rcx, qword [rdi + 0x30]
xor ebx, ebx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x38], rbx
lea edx, [rbx + 5]
mov dword [rdi + 0x48], 2
call fcn.140036820
test rax, rax
je 0x140025b67
mov dword [rdi + 0x74], 1
xor eax, eax
jmp 0x14002612a
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x30]
mov edx, 3
call fcn.140036860
test eax, eax
lea rcx, str.C:Program_FilesNVIDIA_CorporationNVSMI
cmovne rcx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rcx
test rcx, rcx
je 0x140025bb3
lea rdx, [rsp + 0x58]
call fcn.14005f054
cmp eax, 0xffffffff
je 0x140025bae
mov eax, 0x4000
test word [rsp + 0x5e], ax
jne 0x140025bc6
mov rcx, qword [rsp + 0x30]
call fcn.14005e898
test eax, eax
je 0x140025bc6
mov eax, 0xfffffff8
jmp 0x14002612a
mov rcx, qword [rsp + 0x30]
call fcn.140055248
mov qword [rdi + 0x58], rax
test rax, rax
je 0x140026125
lea rbx, [rdi + 0x38]
test rbx, rbx
je 0x14002610e
mov rcx, qword [rdi + 0x30]
mov edx, 1
call fcn.140036820
test rax, rax
jne 0x140025c05
mov dword [rbx], 0xa
jmp 0x140025c37
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x20]
mov edx, 1
call fcn.140036860
test eax, eax
je 0x14002610e
mov rcx, qword [rsp + 0x20]
lea rax, [rcx - 1]
cmp rax, 0x257
ja 0x14002610e
mov dword [rbx], ecx
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x28]
mov edx, 2
call fcn.140036860
test eax, eax
lea rcx, [0x140091a80]
mov r8d, esi
cmovne rcx, qword [rsp + 0x28]
mov qword [rsp + 0x28], rcx
mov rdx, rcx
mov rcx, rdi
call fcn.140026410
mov ebx, eax
test eax, eax
jne 0x140025e12
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x38]
lea edx, [rax + 4]
call fcn.140036860
test eax, eax
je 0x140025b60
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x140025b60
call fcn.140055248
mov qword [rdi + 0x60], rax
test rax, rax
jne 0x140025b60
jmp 0x140026125
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x28]
xor ebx, ebx
mov dword [rdi + 0x48], 1
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x20], rbx
lea edx, [rbx + 5]
call fcn.140036860
mov rcx, qword [rsp + 0x28]
test eax, eax
cmove rcx, rbx
mov qword [rsp + 0x28], rcx
call fcn.140001230
test eax, eax
je 0x140026125
lea rbx, [rdi + 0x38]
test rbx, rbx
je 0x140025e5b
mov rcx, qword [rdi + 0x30]
mov edx, 1
call fcn.140036820
test rax, rax
jne 0x140025d22
mov dword [rbx], 1
jmp 0x140025d52
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x48]
mov edx, 1
call fcn.140036860
test eax, eax
je 0x140025e5b
mov rcx, qword [rsp + 0x48]
lea rax, [rcx - 1]
cmp rax, 9
ja 0x140025e5b
mov dword [rbx], ecx
lea rbx, [rdi + 0x3c]
test rbx, rbx
je 0x140025e4a
mov rcx, qword [rdi + 0x30]
mov edx, 2
call fcn.140036820
test rax, rax
jne 0x140025d7b
mov esi, 0xffffffff
mov dword [rbx], esi
jmp 0x140025da7
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x48]
mov edx, 2
call fcn.140036860
test eax, eax
je 0x140025e4a
mov rax, qword [rsp + 0x48]
cmp rax, 1
jb 0x140025e4a
mov dword [rbx], eax
xor edx, edx
mov rcx, rdi
lea r8d, [rdx + 0x10]
call fcn.140026170
mov ebx, eax
test eax, eax
je 0x140025dd7
cmp eax, 0xfffffffe
je 0x140025f74
lea rcx, str.Not_supported_on_the_device_s__n
call fcn.1400013f0
mov eax, ebx
jmp 0x14002612a
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x38]
mov edx, 3
call fcn.140036860
test eax, eax
lea rdx, [0x140091aec]
mov r8d, 1
mov rcx, rdi
cmovne rdx, qword [rsp + 0x38]
mov qword [rsp + 0x38], rdx
call fcn.140026410
mov ebx, eax
test eax, eax
je 0x140025e25
lea rcx, str.Failed_to_find_any_metric_to_display_n
call fcn.1400013f0
mov eax, ebx
jmp 0x14002612a
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x20]
mov edx, 4
call fcn.140036860
test eax, eax
je 0x140025b60
mov rdx, qword [rsp + 0x20]
jmp 0x1400260e3
lea rcx, str.Invalid_value_for_number_of_samples_to_be_displayed_n
call fcn.1400013f0
jmp 0x14002611f
mov edx, 0xa
jmp 0x140026113
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x28]
xor ebx, ebx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x38], rbx
lea edx, [rbx + 6]
mov qword [rsp + 0x30], rbx
mov dword [rdi + 0x48], ebx
call fcn.140036860
mov rcx, qword [rsp + 0x28]
test eax, eax
cmove rcx, rbx
mov qword [rsp + 0x28], rcx
call fcn.140001230
test eax, eax
je 0x140026125
lea rsi, [rdi + 0x38]
test rsi, rsi
je 0x14002610e
mov rcx, qword [rdi + 0x30]
lea edx, [rbx + 1]
call fcn.140036820
test rax, rax
jne 0x140025ed2
mov dword [rsi], 1
jmp 0x140025f04
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x20]
mov edx, 1
call fcn.140036860
test eax, eax
je 0x14002610e
mov rcx, qword [rsp + 0x20]
lea rax, [rcx - 1]
cmp rax, 0x257
ja 0x14002610e
mov dword [rsi], ecx
lea r14, [rdi + 0x3c]
test r14, r14
je 0x140025e4a
mov rcx, qword [rdi + 0x30]
mov edx, 2
call fcn.140036820
test rax, rax
jne 0x140025f2e
mov esi, 0xffffffff
mov dword [r14], esi
jmp 0x140025f5b
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x20]
mov edx, 2
call fcn.140036860
test eax, eax
je 0x140025e4a
mov rax, qword [rsp + 0x20]
cmp rax, 1
jb 0x140025e4a
mov dword [r14], eax
xor edx, edx
mov rcx, rdi
lea r8d, [rdx + 0x10]
call fcn.140026170
mov esi, eax
test eax, eax
je 0x140025f9d
cmp eax, 0xfffffffe
jne 0x140025f8a
lea rcx, str.Failed_to_parse_device_s__specified_at_the_command_line_n
call fcn.1400013f0
mov eax, 0xfffffffe
jmp 0x14002612a
lea rcx, str.Not_supported_on_the_device_s__n
call fcn.1400013f0
mov eax, esi
jmp 0x14002612a
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x48]
mov edx, 3
call fcn.140036860
test eax, eax
lea rcx, [0x140091a80]
lea r8, [rsp + 0x38]
mov edx, 4
cmovne rcx, qword [rsp + 0x48]
mov qword [rsp + 0x48], rcx
mov rcx, qword [rdi + 0x30]
call fcn.140036860
mov rsi, qword [rdi + 0x28]
lea rcx, [0x140076d52]
test eax, eax
lea r14, [rdi + 0x20]
cmovne rcx, qword [rsp + 0x38]
mov qword [rsp + 0x38], rcx
test rsi, rsi
je 0x140026093
test r14, r14
je 0x140026093
test rcx, rcx
je 0x14002605c
mov qword [rsp + 0x20], rcx
cmp byte [rcx], bl
je 0x140026059
cmp ebx, 0x62
jae 0x1400260b5
movzx eax, byte [rcx]
cmp al, 0x2c
jne 0x14002602d
inc rcx
mov qword [rsp + 0x20], rcx
jmp 0x140026054
sub al, 0x30
cmp al, 9
ja 0x1400260a9
mov r8d, 0xa
lea rdx, [rsp + 0x20]
call fcn.1400548dc
cmp eax, 0x62
jae 0x140026085
mov ecx, ebx
inc ebx
mov dword [rsi + rcx*4], eax
mov rcx, qword [rsp + 0x20]
cmp byte [rcx], 0
jne 0x140026013
mov dword [r14], ebx
mov rdx, qword [rsp + 0x48]
xor r8d, r8d
mov rcx, rdi
call fcn.140026410
mov ebx, eax
test eax, eax
je 0x1400260c3
lea rcx, str.Failed_to_find_any_metric_to_display_n
call fcn.1400013f0
mov eax, ebx
jmp 0x14002612a
mov edx, eax
lea rcx, str.Metric_value_too_high:__d_n
call fcn.1400013f0
lea rcx, str.Could_not_parse_GPM_metrics_n
call fcn.1400013f0
mov eax, 2
jmp 0x14002612a
movsx edx, byte [rcx]
lea rcx, str.Found_offending_character:__c_n
jmp 0x14002608e
lea rcx, str.Too_many_metrics_n
call fcn.1400013f0
jmp 0x140026093
mov rcx, qword [rdi + 0x30]
lea r8, [rsp + 0x30]
mov edx, 5
call fcn.140036860
test eax, eax
je 0x140025b60
mov rdx, qword [rsp + 0x30]
test rdx, rdx
je 0x140025b60
mov rcx, rdi
call fcn.140026ce0
mov ebx, eax
test eax, eax
je 0x140025b60
lea rcx, str.Error_in_parsing_options_n
call fcn.1400013f0
mov eax, ebx
jmp 0x14002612a
mov edx, 0x258
lea rcx, str.Collection_delay_interval_should_be_between_1_second_and__u_seconds_n
call fcn.1400013f0
mov rcx, qword [rdi + 0x30]
call qword [rdi]
mov eax, 0xffffffff
mov r14, qword [rsp + 0x1b8]
mov r12, qword [rsp + 0x1f8]
mov r15, qword [rsp + 0x1b0]
mov rbx, qword [rsp + 0x1f0]
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.140038b30
add rsp, 0x1c0
pop rdi
pop rsi
pop rbp
ret