Function at 0x414f50
Capabilities:
Access peb ldr_data

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x70
mov rax, qword [0x004fb010]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov r14, rdx
mov r15, rcx
mov qword [rsp + 0x58], rdx
mov ecx, 4
mov rax, qword gs:[0x58]
mov r8, qword [rax]
xor r12d, r12d
mov eax, dword [rcx + r8]
cmp dword [0x00503e80], eax
jle 0x414fe4
lea rcx, [0x00503e80]
call fcn.0047981c
cmp dword [0x00503e80], 0xffffffff
jne 0x414fe4
mov qword [0x00503e60], r12
movdqa xmm0, xmmword [0x004d31f0]
movdqu xmmword [0x00503e70], xmm0
lea rcx, [0x004aefa0]
call fcn.00479570
lea rcx, [0x00503e80]
call fcn.004797b0
xor r8d, r8d
lea rdx, [0x004baa2b]
lea rcx, [0x00503e60]
call sym.AsusSoftwareManager.exe_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______ptr64___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const__const___ptr64__unsigned_long_long_unsigned___int64_____ptr64
mov r15, qword [r15]
test r15, r15
je 0x415145
mov r8, r14
lea rdx, [rsp + 0x40]
mov rcx, r15
call fcn.00416020
mov rbx, qword [rsp + 0x50]
cmp byte [rbx + 0x19], r12b
jne 0x415078
lea rdx, [rbx + 0x20]
cmp qword [rbx + 0x38], 0x10
jb 0x415030
mov rdx, qword [rbx + 0x20]
mov rcx, r14
mov rdi, qword [r14 + 0x18]
cmp rdi, 0x10
jb 0x415040
mov rcx, qword [r14]
mov rbp, qword [rbx + 0x30]
mov rsi, qword [r14 + 0x10]
mov r8, rsi
cmp rbp, rsi
cmovb r8, rbp
call fcn.004a2d60
test eax, eax
jne 0x41506d
cmp rsi, rbp
jae 0x415067
mov eax, 0xffffffff
jmp 0x41506d
mov eax, r12d
seta al
shr eax, 0x1f
test al, al
je 0x415108
movabs rax, 0x2aaaaaaaaaaaaaa
cmp qword [r15 + 8], rax
je 0x4151bf
mov rsi, qword [r15]
mov qword [rsp + 0x20], r15
mov qword [rsp + 0x28], r12
lfence
mov ecx, 0x60
call fcn.0047970c
mov rdi, rax
mov qword [rsp + 0x28], rax
mov qword [rax + 0x20], r12
mov qword [rax + 0x30], r12
mov qword [rax + 0x38], r12
mov rdx, r14
lea rcx, [rax + 0x20]
call sym.AsusSoftwareManager.exe_private:_void___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Construct_lv_contents_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const____ptr64____ptr64
mov qword [rdi + 0x40], r12
mov qword [rdi + 0x50], r12
mov qword [rdi + 0x58], SafeArrayGetDim
mov qword [rdi], rsi
mov qword [rdi + 8], rsi
mov qword [rdi + 0x10], rsi
mov word [rdi + 0x18], 0
movups xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x30], xmm0
mov r8, rdi
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.00405620
mov rbx, rax
mov rdi, qword [r14 + 0x18]
cmp rdi, 0x10
jb 0x41513f
lea rdx, [rdi + 1]
mov rcx, qword [r14]
cmp rdx, 0x1000
jb 0x41513a
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
add rcx, 0xfffffffffffffff8
cmp rcx, 0x1f
ja 0x4151b8
mov rcx, r8
call fcn.00479330
lea rax, [rbx + 0x40]
jmp 0x415182
mov rdx, qword [r14 + 0x18]
cmp rdx, 0x10
jb 0x41517b
inc rdx
mov rcx, qword [r14]
cmp rdx, 0x1000
jb 0x415176
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x4151b8
mov rcx, r8
call fcn.00479330
lea rax, [0x00503e60]
mov qword [r14 + 0x10], r12
mov qword [r14 + 0x18], SafeArrayGetDim
mov byte [r14], 0
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.00479310
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.004043a0
nop
int3