Function at 0x1000cb90
Capabilities:
Delete file
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008b0bf
mov eax, dword fs:[0]
push eax
sub esp, 0x710
mov eax, dword [0x100b400c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov edi, ecx
xor eax, eax
lea ecx, [edi + 8]
mov dword [ebp - 0x6e0], eax
mov dword [ebp - 0x6d8], eax
call fcn.10015850
test eax, eax
je 0x1000d8a4
push 0x40
lea eax, [ebp - 0x6d0]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x6d0]
call fcn.1000a030
lea eax, [edi + 0x3e4]
mov dword [ebp - 4], 0
cmp dword [eax + 0x14], 8
jb 0x1000cc14
mov eax, dword [eax]
push 0
push 0x10091b60
push eax
lea ecx, [ebp - 0x6d0]
call fcn.10001d90
cmp dword [edi + 0x3e0], 8
lea eax, [edi + 0x3cc]
jb 0x1000cc38
mov eax, dword [eax]
push eax
push str.__s_
lea eax, [ebp - 0x6d0]
push str._dvd_device
push eax
call fcn.10001fb0
push 0x10095234
lea eax, [ebp - 0x6d0]
push str._probesize
push eax
call fcn.10001fb0
push str.100M
lea eax, [ebp - 0x6d0]
push str._analyzeduration
push eax
call fcn.10001fb0
push 0x10095284
lea eax, [ebp - 0x6d0]
push 0x10095290
push eax
call fcn.10001fb0
push 0x10095298
lea eax, [ebp - 0x6d0]
push 0x100952a4
push eax
call fcn.10001fb0
mov eax, dword [edi]
add esp, 0x40
mov ecx, edi
mov eax, dword [eax + 0x64]
call eax
cmp dword [eax + 0x14], 8
jb 0x1000ccbb
mov eax, dword [eax]
push eax
push str.__s_
lea eax, [ebp - 0x6d0]
push str._show_streams
push eax
call fcn.10001fb0
add esp, 0x10
lea eax, [ebp - 0x42c]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
test eax, eax
je 0x1000d899
lea eax, [ebp - 0x220]
push eax
push 0
push 0x10095298
lea eax, [ebp - 0x42c]
push eax
call dword [sym.imp.KERNEL32.dll_GetTempFileNameW]
mov esi, dword [edi + 0x40c]
lea eax, [ebp - 0x220]
push eax
mov eax, dword [ebp - 0x6d0]
lea ecx, [ebp - 0x6d0]
mov eax, dword [eax + 0x3c]
call eax
push eax
mov ecx, esi
call fcn.10051ad0
mov ecx, dword [edi + 0x40c]
test al, al
jne 0x1000cd60
test ecx, ecx
je 0x1000cd44
mov eax, dword [ecx]
push 1
call dword [eax]
lea eax, [ebp - 0x220]
mov dword [edi + 0x40c], 0
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
jmp 0x1000d899
test ecx, ecx
je 0x1000cd6a
mov eax, dword [ecx]
push 1
call dword [eax]
xorps xmm0, xmm0
mov dword [edi + 0x40c], 0
push 0
lea ecx, [ebp - 0x48c]
movq qword [ebp - 0x47c], xmm0
movups xmmword [ebp - 0x48c], xmm0
call fcn.10081880
push 0xb8
lea eax, [ebp - 0x5dc]
mov byte [ebp - 4], 1
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 8
lea ecx, [ebp - 0x5dc]
call fcn.1000f160
lea eax, [ebp - 0x220]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x660]
call fcn.1000e4b0
sub esp, 8
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x5dc]
push dword [eax]
call fcn.1000eff0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x65c]
mov eax, dword [ebp - 0x660]
cmp eax, ecx
je 0x1000ce00
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
cmp dword [ebp - 0x580], 0
jne 0x1000ce5a
lea eax, [ebp - 0x220]
push eax
push str.Opening_json_file__S_failed.
push str.CAVCDVDTitleImpl::FindFFmpegStreamIds
call fcn.1007c440
add esp, 0xc
lea eax, [ebp - 0x220]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [ebp - 0x5dc]
call fcn.1000d8d0
lea ecx, [ebp - 0x48c]
call fcn.10081c10
lea ecx, [ebp - 0x6d0]
call fcn.10001590
mov eax, 1
jmp 0x1000d8a7
xorps xmm0, xmm0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x524]
movups xmmword [ebp - 0x524], xmm0
movups xmmword [ebp - 0x514], xmm0
call fcn.10084ae0
push 0
lea ecx, [ebp - 0x4bc]
mov byte [ebp - 4], 5
call fcn.10081a20
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x444]
push 0xf
mov dword [ebp - 0x444], 0
push str.collectComments
mov dword [ebp - 0x434], 0
mov dword [ebp - 0x430], 0xf
mov byte [ebp - 0x444], 0
call fcn.1000fce0
lea eax, [ebp - 0x444]
mov byte [ebp - 4], 7
push eax
lea ecx, [ebp - 0x524]
call fcn.10084d20
lea ecx, [ebp - 0x4bc]
push ecx
mov ecx, eax
call fcn.10081c80
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x430]
cmp edx, 0x10
jb 0x1000cf2a
mov ecx, dword [ebp - 0x444]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000cf20
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1000cf20
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007face
add esp, 8
lea ecx, [ebp - 0x4bc]
mov dword [ebp - 0x434], 0
mov dword [ebp - 0x430], 0xf
mov byte [ebp - 0x444], 0
call fcn.10081c10
mov dword [ebp - 0x45c], 0
mov dword [ebp - 0x44c], 0
mov dword [ebp - 0x448], 0xf
mov byte [ebp - 0x45c], 0
lea eax, [ebp - 0x45c]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp - 0x48c]
push eax
lea eax, [ebp - 0x5dc]
push eax
lea eax, [ebp - 0x524]
push eax
call fcn.10086fe0
add esp, 0x10
test al, al
jne 0x1000d038
cmp dword [ebp - 0x448], 0x10
lea eax, [ebp - 0x45c]
cmovae eax, dword [ebp - 0x45c]
push eax
lea eax, [ebp - 0x220]
push eax
push str.Parsing_json_file__S_failed:__s
push str.CAVCDVDTitleImpl::FindFFmpegStreamIds
call fcn.1007c440
mov edx, dword [ebp - 0x448]
add esp, 0x10
cmp edx, 0x10
jb 0x1000d00d
mov ecx, dword [ebp - 0x45c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000d003
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000d69f
push edx
push ecx
call fcn.1007face
add esp, 8
lea ecx, [ebp - 0x524]
mov dword [ebp - 0x44c], 0
mov dword [ebp - 0x448], 0xf
mov byte [ebp - 0x45c], 0
call fcn.10084c00
jmp 0x1000ce2f
xorps xmm0, xmm0
lea ecx, [ebp - 0x48c]
push str.streams
movups xmmword [ebp - 0x4d4], xmm0
movq qword [ebp - 0x4c4], xmm0
call fcn.100823a0
push eax
lea ecx, [ebp - 0x4d4]
call fcn.10081620
lea ecx, [ebp - 0x4d4]
mov byte [ebp - 4], 9
call fcn.10083ed0
test al, al
je 0x1000d664
xor esi, esi
lea ecx, [ebp - 0x4d4]
mov dword [ebp - 0x6e8], esi
call fcn.100846d0
cmp esi, eax
jae 0x1000d664
xorps xmm0, xmm0
lea ecx, [ebp - 0x4d4]
push esi
movups xmmword [ebp - 0x4a4], xmm0
movq qword [ebp - 0x494], xmm0
call fcn.10082130
push eax
lea ecx, [ebp - 0x4a4]
call fcn.10081620
xorps xmm0, xmm0
mov byte [ebp - 4], 0xa
push 0xffffffffffffffff
lea ecx, [ebp - 0x474]
movq qword [ebp - 0x434], xmm0
movups xmmword [ebp - 0x444], xmm0
call fcn.100816f0
lea eax, [ebp - 0x474]
mov byte [ebp - 4], 0xb
push eax
push str.index
lea eax, [ebp - 0x444]
push eax
lea ecx, [ebp - 0x4a4]
call fcn.10083d90
lea ecx, [ebp - 0x474]
mov byte [ebp - 4], 0xd
call fcn.10081c10
xorps xmm0, xmm0
lea ecx, [ebp - 0x700]
push 0x10095350
movups xmmword [ebp - 0x4bc], xmm0
movq qword [ebp - 0x4ac], xmm0
call fcn.100817b0
lea eax, [ebp - 0x700]
mov byte [ebp - 4], 0xe
push eax
push 0x10095354
lea eax, [ebp - 0x4bc]
push eax
lea ecx, [ebp - 0x4a4]
call fcn.10083d90
lea ecx, [ebp - 0x700]
mov byte [ebp - 4], 0x10
call fcn.10081c10
xorps xmm0, xmm0
lea ecx, [ebp - 0x718]
push 0x10095064
movups xmmword [ebp - 0x504], xmm0
movq qword [ebp - 0x4f4], xmm0
call fcn.100817b0
lea eax, [ebp - 0x718]
mov byte [ebp - 4], 0x11
push eax
push str.disposition
lea eax, [ebp - 0x504]
push eax
lea ecx, [ebp - 0x4a4]
call fcn.10083d90
lea ecx, [ebp - 0x718]
mov byte [ebp - 4], 0x13
call fcn.10081c10
lea eax, [ebp - 0x700]
push eax
lea ecx, [ebp - 0x4bc]
call fcn.100833e0
mov esi, eax
mov byte [ebp - 4], 0x14
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
cmp dword [esi + 0x14], 0x10
mov dword [ebp - 0x6d8], eax
jb 0x1000d1e8
mov esi, dword [esi]
mov dword [eax], 0
lea eax, [ebp - 0x690]
push 0x10
push eax
push esi
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_strtol]
add esp, 0xc
mov dword [ebp - 0x6e4], eax
cmp esi, dword [ebp - 0x690]
jne 0x1000d21a
push str.invalid_stol_argument
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xinvalid_argument_char_const__]
mov eax, dword [ebp - 0x6d8]
cmp dword [eax], 0x22
jne 0x1000d230
push str.stol_argument_out_of_range
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__]
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0x6ec]
cmp edx, 0x10
jb 0x1000d270
mov ecx, dword [ebp - 0x700]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000d266
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1000d266
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007face
add esp, 8
push 0
lea ecx, [ebp - 0x700]
call fcn.100816f0
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x444]
mov eax, dword [ebp - 0x6e0]
or eax, 1
mov dword [ebp - 0x6e0], eax
mov dword [ebp - 0x6d8], eax
lea eax, [ebp - 0x700]
push eax
call fcn.100828c0
test al, al
je 0x1000d2cb
cmp dword [ebp - 0x6e4], 0
jl 0x1000d2cb
lea ecx, [ebp - 0x504]
call fcn.10083ff0
mov byte [ebp - 0x6d1], 1
test al, al
jne 0x1000d2d2
mov byte [ebp - 0x6d1], 0
mov dword [ebp - 4], 0x13
mov eax, dword [ebp - 0x6e0]
test al, 1
je 0x1000d2f7
and eax, 0xfffffffe
lea ecx, [ebp - 0x700]
mov dword [ebp - 0x6e0], eax
call fcn.10081c10
cmp byte [ebp - 0x6d1], 0
je 0x1000d628
xorps xmm0, xmm0
mov byte [ebp - 0x6d1], 0
push 0x10095364
lea ecx, [ebp - 0x504]
movq qword [ebp - 0x4dc], xmm0
movups xmmword [ebp - 0x4ec], xmm0
call fcn.100823a0
push eax
lea ecx, [ebp - 0x4ec]
call fcn.10081620
lea ecx, [ebp - 0x4ec]
mov byte [ebp - 4], 0x16
call fcn.10083fd0
test al, al
je 0x1000d360
lea ecx, [ebp - 0x4ec]
call fcn.10083550
test eax, eax
setne byte [ebp - 0x6d1]
xorps xmm0, xmm0
lea ecx, [ebp - 0x718]
push 0x10095064
movups xmmword [ebp - 0x474], xmm0
movq qword [ebp - 0x464], xmm0
call fcn.100817b0
lea eax, [ebp - 0x718]
mov byte [ebp - 4], 0x17
push eax
push str.codec_type
lea eax, [ebp - 0x474]
push eax
lea ecx, [ebp - 0x4a4]
call fcn.10083d90
lea ecx, [ebp - 0x718]
mov byte [ebp - 4], 0x19
call fcn.10081c10
push 0x10095378
lea ecx, [ebp - 0x700]
call fcn.100817b0
lea eax, [ebp - 0x700]
mov byte [ebp - 4], 0x1a
push eax
lea ecx, [ebp - 0x474]
call fcn.10081da0
lea ecx, [ebp - 0x700]
mov byte [ebp - 0x6d2], al
mov byte [ebp - 4], 0x19
call fcn.10081c10
cmp byte [ebp - 0x6d2], 0
je 0x1000d462
mov eax, dword [edi + 0x474]
mov esi, dword [edi + 0x470]
mov dword [ebp - 0x6dc], eax
nop dword [eax]
cmp esi, eax
je 0x1000d448
mov eax, dword [esi]
mov ecx, dword [ebp - 0x6e4]
mov dword [ebp - 0x6d8], eax
cmp dword [eax + 0x54], ecx
jne 0x1000d43d
lea ecx, [ebp - 0x444]
call fcn.10083550
mov ecx, eax
mov eax, dword [ebp - 0x6d8]
mov dword [eax + 0x50], ecx
mov eax, dword [ebp - 0x6dc]
add esi, 4
jmp 0x1000d410
cmp byte [ebp - 0x6d1], 0
je 0x1000d462
lea ecx, [ebp - 0x444]
call fcn.10083550
mov dword [edi + 0x268], eax
push 0x10095380
lea ecx, [ebp - 0x700]
call fcn.100817b0
lea eax, [ebp - 0x700]
mov byte [ebp - 4], 0x1b
push eax
lea ecx, [ebp - 0x474]
call fcn.10081da0
lea ecx, [ebp - 0x700]
mov byte [ebp - 0x6d2], al
mov byte [ebp - 4], 0x19
call fcn.10081c10
cmp byte [ebp - 0x6d2], 0
je 0x1000d53c
mov eax, dword [edi + 0x480]
mov esi, dword [edi + 0x47c]
mov dword [ebp - 0x6dc], eax
nop dword [eax]
cmp esi, eax
je 0x1000d522
mov eax, dword [esi]
mov ecx, dword [ebp - 0x6e4]
mov dword [ebp - 0x6d8], eax
cmp dword [eax + 0x60], ecx
jne 0x1000d4ed
lea ecx, [ebp - 0x444]
call fcn.10083550
mov ecx, eax
mov eax, dword [ebp - 0x6d8]
mov dword [eax + 0x5c], ecx
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0xc8]
call eax
mov ecx, eax
mov eax, dword [ebp - 0x6d8]
cmp dword [eax + 0x60], ecx
jne 0x1000d517
lea ecx, [ebp - 0x444]
call fcn.10083550
mov dword [edi + 0x27c], eax
mov eax, dword [ebp - 0x6dc]
add esi, 4
jmp 0x1000d4c0
cmp byte [ebp - 0x6d1], 0
je 0x1000d53c
lea ecx, [ebp - 0x444]
call fcn.10083550
mov dword [edi + 0x27c], eax
push str.subtitle
lea ecx, [ebp - 0x700]
call fcn.100817b0
lea eax, [ebp - 0x700]
mov byte [ebp - 4], 0x1c
push eax
lea ecx, [ebp - 0x474]
call fcn.10081da0
lea ecx, [ebp - 0x700]
mov byte [ebp - 0x6d2], al
mov byte [ebp - 4], 0x19
call fcn.10081c10
cmp byte [ebp - 0x6d2], 0
je 0x1000d612
mov eax, dword [edi + 0x4a8]
mov esi, dword [edi + 0x4a4]
mov dword [ebp - 0x6dc], eax
cmp esi, eax
je 0x1000d5f8
mov eax, dword [esi]
mov ecx, dword [ebp - 0x6e4]
mov dword [ebp - 0x6d8], eax
cmp dword [eax + 8], ecx
jne 0x1000d5c3
lea ecx, [ebp - 0x444]
call fcn.10083550
mov ecx, eax
mov eax, dword [ebp - 0x6d8]
mov dword [eax + 4], ecx
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0xd8]
call eax
mov ecx, eax
mov eax, dword [ebp - 0x6d8]
cmp dword [eax + 8], ecx
jne 0x1000d5ed
lea ecx, [ebp - 0x444]
call fcn.10083550
mov dword [edi + 0x28c], eax
mov eax, dword [ebp - 0x6dc]
add esi, 4
jmp 0x1000d596
cmp byte [ebp - 0x6d1], 0
je 0x1000d612
lea ecx, [ebp - 0x444]
call fcn.10083550
mov dword [edi + 0x28c], eax
lea ecx, [ebp - 0x474]
call fcn.10081c10
lea ecx, [ebp - 0x4ec]
call fcn.10081c10
lea ecx, [ebp - 0x504]
call fcn.10081c10
lea ecx, [ebp - 0x4bc]
call fcn.10081c10
lea ecx, [ebp - 0x444]
call fcn.10081c10
lea ecx, [ebp - 0x4a4]
mov byte [ebp - 4], 9
call fcn.10081c10
mov esi, dword [ebp - 0x6e8]
inc esi
jmp 0x1000d07f
lea ecx, [ebp - 0x4d4]
call fcn.10081c10
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x448]
cmp edx, 0x10
jb 0x1000d6af
mov ecx, dword [ebp - 0x45c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000d6a5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1000d6a5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1007face
add esp, 8
lea ecx, [ebp - 0x524]
mov dword [ebp - 0x44c], 0
mov dword [ebp - 0x448], 0xf
mov byte [ebp - 0x45c], 0
call fcn.10084c00
lea ecx, [ebp - 0x5cc]
mov dword [ebp - 4], 2
call fcn.1000f4d0
test eax, eax
jne 0x1000d705
push eax
mov eax, dword [ebp - 0x5dc]
lea ecx, [ebp - 0x5dc]
push 2
mov eax, dword [eax + 4]
add ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool_]
lea eax, [ebp - 0x220]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0xc8]
call eax
cmp eax, 0xffffffff
jne 0x1000d746
mov eax, dword [edi + 0x480]
mov ecx, dword [edi + 0x47c]
sub eax, ecx
sar eax, 2
test eax, eax
je 0x1000d746
mov ecx, dword [ecx]
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
mov dword [edi + 0x27c], eax
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0xd8]
call eax
cmp eax, 0xffffffff
jne 0x1000d77a
mov eax, dword [edi + 0x4a8]
mov ecx, dword [edi + 0x4a4]
sub eax, ecx
sar eax, 2
test eax, eax
je 0x1000d77a
mov ecx, dword [ecx]
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
mov dword [edi + 0x28c], eax
lea ecx, [ebp - 0x5dc]
call fcn.1000d8d0
lea ecx, [ebp - 0x48c]
call fcn.10081c10
lea ecx, [ebp - 0x6d0]
call fcn.10001590
xor eax, eax
jmp 0x1000d8a7
lea ecx, [ebp - 0x6d0]
call fcn.10001590
or eax, 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.1007fac0
mov esp, ebp
pop ebp
ret