Function at 0x140098ac0
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f0]
sub rsp, 0x2f0
mov rax, qword [0x14048a080]
xor rax, rsp
mov qword [rbp + 0x1e0], rax
xor r14d, r14d
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r14
mov esi, select
mov qword [rbp - 0x48], rsi
mov byte [rbp - 0x60], r14b
movups xmmword [rbp - 0x80], xmm0
mov ebx, r14d
mov qword [rbp - 0x70], rbx
mov r15d, esi
mov qword [rbp - 0x68], rsi
mov byte [rbp - 0x80], bl
lea rcx, str.OBS_PLUGINS_PATH
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
lea rdi, [rsi - 0x10]
test rax, rax
je 0x140098b57
mov r8, rdi
inc r8
cmp byte [rax + r8], 0
jne 0x140098b41
mov rdx, rax
lea rcx, [rbp - 0x60]
call fcn.14000d030
lea rcx, str.OBS_PLUGINS_DATA_PATH
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x140098b8e
mov r8, rdi
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140098b70
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.14000d030
mov r15, qword [rbp - 0x68]
mov rbx, qword [rbp - 0x70]
cmp qword [rbp - 0x50], 0
je 0x140098cca
test rbx, rbx
je 0x140098cca
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rsi
mov byte [rsp + 0x40], 0
lea r9, [rbp - 0x80]
cmp r15, 0xf
cmova r9, qword [rbp - 0x80]
lea rcx, [rsp + 0x40]
cmp rbx, 0xf
ja 0x140098be8
mov qword [rsp + 0x50], rbx
mov r8, rbx
mov rdx, r9
call sub.VCRUNTIME140.dll_memmove
mov byte [rsp + rbx + 0x40], 0
jmp 0x140098bf9
mov qword [rsp + 0x20], rbx
mov rdx, rbx
call fcn.140017d80
mov r15, qword [rbp - 0x68]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov rax, rdx
sub rax, rcx
cmp rax, 9
jb 0x140098c45
lea rax, [rcx + 9]
mov qword [rsp + 0x50], rax
lea rbx, [rsp + 0x40]
cmp rdx, 0xf
cmova rbx, qword [rsp + 0x40]
add rbx, rcx
mov r8d, 9
lea rdx, str.__module_
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + 9], 0
jmp 0x140098c64
mov qword [rsp + 0x20], 9
lea r9, str.__module_
mov edx, 9
lea rcx, [rsp + 0x40]
call fcn.140017d80
lea rdx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rdx, qword [rsp + 0x40]
lea rcx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0xf
cmova rcx, qword [rbp - 0x60]
call qword [sym.imp.obs.dll_obs_add_module_path]
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x140098cca
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140098cc5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140098cc5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14028bc80
cmp byte [0x1410b60d4], 0
jne 0x140099049
lea r8, str.obs_studio_plugins__module_
mov edx, 0x200
lea rcx, [rbp - 0x20]
call qword [sym.imp.obs.dll_os_get_program_data_path]
test eax, eax
jle 0x140099049
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x28], r14
lea rax, [rbp - 0x20]
nop dword [rax + rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x140098d10
mov r8, rdi
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x40]
call fcn.140009000
nop
movabs rcx, 0x7fffffffffffffff
mov r12, rcx
mov r13, qword [rbp - 0x30]
sub r12, r13
cmp r12, 5
jb 0x140099105
lea rdx, [rbp - 0x40]
mov r14, qword [rbp - 0x40]
cmp qword [rbp - 0x28], 0xf
cmova rdx, r14
mov qword [rsp + 0x30], rdx
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x70], xmm1
lea rax, [r13 + 5]
mov rbx, rsi
lea rdi, [rsp + 0x60]
movabs r8, 0x8000000000000000
mov r9d, reloc.WS2_32.dll_shutdown
cmp rax, rbx
jbe 0x140098e0d
mov rbx, rax
or rbx, 0xf
cmp rbx, rcx
jbe 0x140098dcb
mov rbx, rcx
lea rax, [r8 + 0x27]
mov rcx, rax
call fcn.14028bcb4
test rax, rax
je 0x140099000
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
lea rax, [r13 + 5]
mov rdx, qword [rsp + 0x30]
jmp 0x140098e08
cmp rbx, r9
cmovb rbx, r9
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x140098dee
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400990f9
jmp 0x140098da3
test rcx, rcx
je 0x140098e06
call fcn.14028bcb4
mov rdi, rax
lea rax, [r13 + 5]
mov rdx, qword [rsp + 0x30]
jmp 0x140098e08
xor edi, edi
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rbx
mov r8, r13
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [str._data]
mov dword [rdi + r13], eax
movzx eax, byte [0x1402cfab8]
mov byte [rdi + r13 + 4], al
mov byte [rdi + r13 + 5], 0
lea rax, [rsp + 0x60]
cmp qword [rsp + 0x78], 0xf
cmova rax, qword [rsp + 0x60]
mov qword [rsp + 0x38], rax
cmp r12, 0xa
jb 0x1400990f3
lea rax, [rbp - 0x40]
mov r12, qword [rbp - 0x28]
cmp r12, 0xf
cmova rax, r14
mov qword [rsp + 0x30], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x50], xmm1
lea rdi, [r13 + 0xa]
lea rbx, [rsp + 0x40]
cmp rdi, 0xf
jbe 0x140098f26
mov rsi, rdi
or rsi, 0xf
movabs rcx, 0x7fffffffffffffff
cmp rsi, rcx
jbe 0x140098ee2
mov rsi, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.14028bcb4
test rax, rax
je 0x140098fad
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
mov rax, qword [rsp + 0x30]
jmp 0x140098f21
cmp rsi, 0x16
mov ecx, reloc.WS2_32.dll_shutdown
cmovb rsi, rcx
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x140098f0b
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400990ff
jmp 0x140098ebe
test rcx, rcx
je 0x140098f1f
call fcn.14028bcb4
mov rbx, rax
mov rax, qword [rsp + 0x30]
jmp 0x140098f21
xor ebx, ebx
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], rsi
mov r8, r13
mov rdx, rax
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
movsd xmm0, qword [str._bin_64bit]
movsd qword [rbx + r13], xmm0
movzx eax, word [0x1402cfac8]
mov word [rbx + r13 + 8], ax
mov byte [rbx + rdi], 0
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x38]
call qword [sym.imp.obs.dll_obs_add_module_path]
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x140098fb9
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140098fb4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140098fb4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14028bc80
movdqa xmm0, xmmword [0x1404190d0]
movdqu xmmword [rsp + 0x50], xmm0
mov byte [rsp + 0x40], 0
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x14009900d
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140099007
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140099007
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14028bc80
nop
cmp r12, 0xf
jbe 0x140099049
lea rdx, [r12 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x140099040
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140099040
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r14
call fcn.14028bc80
nop
cmp r15, 0xf
jbe 0x140099085
lea rdx, [r15 + 1]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14009907f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14009907f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14028bc80
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 0xf
jbe 0x1400990c3
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400990be
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400990be
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14028bc80
mov rcx, qword [rbp + 0x1e0]
xor rcx, rsp
call fcn.14028bc60
lea r11, [rsp + 0x2f0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1400031e0
nop
call fcn.140003140
nop
call fcn.140003140
nop
call fcn.1400031e0
int3