Function at 0x1400f9920
Capabilities:
Accept command line arguments
Get common file path

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x2c0
movaps xmmword [rsp + 0x2b0], xmm6
mov rbx, r9
mov rsi, r8
mov rdi, rdx
mov rax, qword [0x140143038]
xor rax, rsp
mov qword [rsp + 0x2a8], rax
movabs r13, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x40], r13
movaps xmm6, xmmword [0x14011cbd0]
movaps xmmword [rsp + 0x30], xmm6
cmp byte [rcx + 0x17], 0
js 0x1400f9989
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x40], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x30], xmm0
jmp 0x1400f999a
mov rdx, qword [rcx]
mov r8, qword [rcx + 8]
lea rcx, [rsp + 0x30]
call fcn.14003ad68
lea r15, str.embedded_browser_webview
mov rcx, r15
call fcn.1400a3324
lea r14, [rsp + 0x80]
mov rcx, r14
mov rdx, r15
mov r8, rax
call fcn.14003ac62
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
lea r12, [rsp + 0x68]
mov rcx, r12
mov rdx, rax
call fcn.140057d94
lea r15, [rsp + 0xa0]
mov rcx, r15
mov rdx, r12
mov r8, r14
call fcn.14006743b
movzx r12d, byte [r15 + 0x17]
test r12b, r12b
jns 0x1400f99fd
mov r12, qword [rsp + 0xa8]
jns 0x1400f9a0c
mov rcx, qword [rsp + 0xa0]
call fcn.140082ec0
cmp byte [rsp + 0x7f], 0
jns 0x1400f9a1d
mov rcx, qword [rsp + 0x68]
call fcn.140082ec0
cmp byte [rsp + 0x97], 0
jns 0x1400f9a34
mov rcx, qword [rsp + 0x80]
call fcn.140082ec0
test r12, r12
je 0x1400f9c8e
movzx eax, byte [rsp + 0x47]
mov ecx, eax
and ecx, 0x7f
test al, al
mov rdx, qword [rsp + 0x38]
mov r8, rcx
cmovs r8, rdx
test r8, r8
je 0x1400f9ab1
lea r14, [rsp + 0x30]
mov rcx, r14
call fcn.1400f4a66
cmp word [rax], 0x5c
je 0x1400f9a7b
mov rcx, r14
call fcn.1400f4a66
cmp word [rax], 0x2f
jne 0x1400f9aa2
mov rcx, r14
call fcn.1400f4fd4
movzx eax, byte [rsp + 0x47]
mov ecx, eax
and ecx, 0x7f
test al, al
mov rdx, qword [rsp + 0x38]
mov r8, rcx
cmovs r8, rdx
test r8, r8
jne 0x1400f9a5f
jmp 0x1400f9ab1
movzx eax, byte [rsp + 0x47]
mov rdx, qword [rsp + 0x38]
mov ecx, eax
and ecx, 0x7f
test al, al
cmovs rcx, rdx
test rcx, rcx
je 0x1400f9ace
lea rcx, [rsp + 0x30]
call fcn.1400fa756
test al, al
jne 0x1400f9bab
lea r14, [rsp + 0x30]
mov rcx, rbx
mov rdx, r14
call fcn.14002c9dc
lea rbx, [rsp + 0xa0]
mov qword [rbx + 0x10], r13
movaps xmmword [rbx], xmm6
lea rdx, str.LOCALAPPDATA
mov rcx, rbx
call fcn.1400fa620
movzx eax, byte [rbx + 0x17]
test al, al
js 0x1400f9b09
and eax, 0x7f
jmp 0x1400f9b11
mov rax, qword [rsp + 0xa8]
test rax, rax
jne 0x1400f9dbe
xor r12d, r12d
xor ecx, ecx
xor edx, edx
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
test eax, eax
je 0x1400f9b8b
mov r15d, eax
inc r15d
xor r12d, r12d
mov rcx, rbx
mov rdx, r15
xor r8d, r8d
call fcn.14003b3f0
cmp byte [rsp + 0xb7], 0
jns 0x1400f9b54
mov rbx, qword [rsp + 0xa0]
mov ecx, r15d
mov rdx, rbx
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
test eax, eax
je 0x1400f9b8b
mov edx, eax
movzx eax, byte [rsp + 0xb7]
test al, al
js 0x1400f9b77
and eax, 0x7f
jmp 0x1400f9b7f
mov rax, qword [rsp + 0xa8]
cmp rax, rdx
ja 0x1400f9dae
xor r12d, r12d
cmp byte [rsp + 0xb7], 0
jns 0x1400f9ba2
mov rcx, qword [rsp + 0xa0]
call fcn.140082ec0
test r12b, r12b
jne 0x1400f9bab
xor esi, esi
jmp 0x1400f9c28
lea rdi, [rsp + 0xa0]
mov r8d, 0x208
mov rcx, rdi
mov dl, 0xaa
call fcn.140086500
cmp byte [rsp + 0x47], 0
js 0x1400f9bd1
lea rdx, [rsp + 0x30]
jmp 0x1400f9bd6
mov rdx, qword [rsp + 0x30]
mov r8d, 0x104
mov rcx, rdi
call fcn.14009f6c0
test rax, rax
jne 0x1400f9c66
xorps xmm0, xmm0
movaps xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x90], 0
cmp byte [rsi + 0x17], 0
jns 0x1400f9c0e
mov rcx, qword [rsi]
call fcn.140082ec0
mov rax, qword [rsp + 0x90]
mov qword [rsi + 0x10], rax
movaps xmm0, xmmword [rsp + 0x80]
movups xmmword [rsi], xmm0
mov sil, 1
cmp byte [rsp + 0x47], 0
jns 0x1400f9c39
mov rcx, qword [rsp + 0x30]
call fcn.140082ec0
mov rcx, qword [rsp + 0x2a8]
xor rcx, rsp
call fcn.1400843b0
mov eax, esi
movaps xmm6, xmmword [rsp + 0x2b0]
add rsp, 0x2c0
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rdi, [rsp + 0xa0]
mov rcx, rdi
call fcn.1400a3324
lea rcx, [rsp + 0x80]
mov rdx, rdi
mov r8, rax
call fcn.14003ac62
jmp 0x1400f9c00
mov qword [rsp + 0xb0], r13
movaps xmmword [rsp + 0xa0], xmm6
lea rdx, str.SOFTWAREPolicies_
mov r8d, 0x12
mov rcx, r15
call fcn.14003ac62
mov rcx, rdi
xor edx, edx
mov r8, r15
call fcn.1400673bb
xorps xmm0, xmm0
movaps xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x90], 0
cmp byte [rsp + 0xb7], 0
jns 0x1400f9ce9
mov r15, qword [rsp + 0xa0]
mov qword [rsp + 0x20], r14
lea r9, str.UserDataDir
mov ecx, 1
xor edx, edx
mov r8, r15
call fcn.140072edf
test al, al
jne 0x1400f9d40
cmp byte [rsp + 0xb7], 0
js 0x1400f9d1c
lea r8, [rsp + 0xa0]
jmp 0x1400f9d24
mov r8, qword [rsp + 0xa0]
mov qword [rsp + 0x20], r14
lea r9, str.UserDataDir
mov ecx, 2
xor edx, edx
call fcn.140072edf
test al, al
je 0x1400f9d77
lea rcx, [rsp + 0x68]
lea rdx, [rsp + 0x80]
call fcn.140105e04
cmp byte [rsp + 0x47], 0
jns 0x1400f9d63
mov rcx, qword [rsp + 0x30]
call fcn.140082ec0
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x40], rax
movups xmm0, xmmword [rsp + 0x68]
movaps xmmword [rsp + 0x30], xmm0
cmp byte [rsp + 0x97], 0
jns 0x1400f9d8e
mov rcx, qword [rsp + 0x80]
call fcn.140082ec0
cmp byte [rsp + 0xb7], 0
jns 0x1400f9a3d
mov rcx, qword [rsp + 0xa0]
call fcn.140082ec0
jmp 0x1400f9a3d
lea rcx, [rsp + 0xa0]
xor r8d, r8d
call fcn.14003b3f0
movaps xmm0, xmmword [rsp + 0x30]
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0x40], rcx
movaps xmm1, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x30], xmm1
movaps xmmword [rsp + 0xa0], xmm0
mov qword [rsp + 0xb0], rax
movzx eax, byte [rsp + 0x47]
test al, al
js 0x1400f9e02
mov ecx, eax
and ecx, 0x7f
jmp 0x1400f9e07
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x1400f9f3f
test al, al
jns 0x1400f9e19
mov r14, qword [rsp + 0x30]
cmp word [r14 + rcx*2 - 2], 0x5c
je 0x1400f9e30
lea rcx, [rsp + 0x30]
mov dx, 0x5c
call fcn.14003b2b0
lea rbx, [rsp + 0x30]
mov rcx, rdi
mov dl, 1
mov r8, rbx
call fcn.1400673bb
mov rcx, rbx
mov dx, 0x5c
call fcn.14003b2b0
lea rdx, str.User_Data
mov r8d, 9
mov rcx, rbx
call fcn.14003ae64
lea rdi, [rsp + 0x80]
mov qword [rdi + 0x10], r13
movaps xmmword [rdi], xmm6
lea rbx, str.edge_kiosk_type
mov rcx, rbx
call fcn.1400a3324
lea r14, [rsp + 0x68]
mov rcx, r14
mov rdx, rbx
mov r8, rax
call fcn.14003ac62
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
lea rbx, [rsp + 0x50]
mov rcx, rbx
mov rdx, rax
call fcn.140057d94
mov rcx, rdi
mov rdx, rbx
mov r8, r14
call fcn.14006743b
cmp byte [rbx + 0x17], 0
jns 0x1400f9ec8
mov rcx, qword [rsp + 0x50]
call fcn.140082ec0
cmp byte [rsp + 0x7f], 0
jns 0x1400f9ed9
mov rcx, qword [rsp + 0x68]
call fcn.140082ec0
lea rdx, str.fullscreen
lea rcx, [rsp + 0x80]
call fcn.140056d26
test al, al
jne 0x1400f9f09
lea rdx, str.public_browsing
lea rcx, [rsp + 0x80]
call fcn.140056d26
test al, al
je 0x1400f9f20
lea rdx, str._Kiosk
lea rcx, [rsp + 0x30]
mov r8d, 6
call fcn.14003ae64
cmp byte [rsp + 0x97], 0
jns 0x1400f9f37
mov rcx, qword [rsp + 0x80]
call fcn.140082ec0
mov r12b, 1
jmp 0x1400f9b8b
lea rax, str.string_index_out_of_bounds
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_string
lea r9, [0x140120a7b]
mov r8d, 0x4b8
call fcn.1400d3d34
int3