Function at 0x180084b80
Capabilities:
Access peb ldr_data

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x5e0
mov rax, qword [0x1802111c0]
xor rax, rsp
mov qword [rsp + 0x5d0], rax
mov r15, rcx
mov qword [rsp + 0x50], rcx
mov r12d, 4
mov qword [rsp + 0x60], r12
mov edx, dword [0x18023b8b4]
mov rax, qword gs:[0x58]
mov r13, qword [rax + rdx*8]
mov qword [rsp + 0x40], r13
mov eax, dword [r12 + r13]
cmp dword [0x18023bea8], eax
jle 0x180084c22
lea rcx, [0x18023bea8]
call fcn.180138cf8
xor ebx, ebx
cmp dword [0x18023bea8], 0xffffffff
jne 0x180084c24
mov qword [0x18023be98], rbx
mov qword [0x18023bea0], rbx
lea rcx, [0x180168620]
call fcn.180139170
lea rcx, [0x18023bea8]
call fcn.180138c98
jmp 0x180084c24
xor ebx, ebx
lea rdi, str.UsrPrefsManager::_SaveUserPreferences
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x99
lea r9, str.E:TemporaryBuilds_azure_main_pool_build_de_124_sApp_src_blBLUserPreferences.cpp
mov r8d, 4
lea rdx, str.UsrPrefsManager::_SaveUserOptions
lea rcx, [0x18023be98]
call fcn.180007240
nop
jmp 0x180084c6c
mov qword [rsp + 0x580], 0
lea rax, [0x1802112a8]
mov qword [rsp + 0x588], rax
lea rsi, [r15 + 0x28]
mov qword [rsp + 0x48], rsi
lea rdx, [rsp + 0x580]
mov rcx, rsi
call fcn.18007ff50
mov byte [rsp + 0x30], al
xorps xmm0, xmm0
cmp qword [r15 + 0x38], 0
je 0x1800850a8
movups xmmword [rsp + 0x5a0], xmm0
mov ecx, 0x10
call fcn.180138b34
mov r13, rax
mov qword [rsp + 0x40], rax
mov byte [rax], 0
lea rcx, [rax + 8]
xor edx, edx
call fcn.180091970
nop
mov qword [rsp + 0x158], r13
mov ecx, 0x18
call fcn.180138b34
mov r14, rax
mov qword [rsp + 0xc0], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rax, [0x180199210]
mov qword [r14], rax
mov qword [r14 + 0x10], r13
mov qword [rsp + 0x5a0], r13
mov qword [rsp + 0x5a8], r14
movups xmmword [rsp + 0x590], xmm0
mov ecx, 0x40
call fcn.180138b34
mov qword [rsp + 0x38], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movdqu xmmword [rsp + 0x70], xmm0
lock inc dword [r14 + 8]
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], r14
lea rdx, [rsp + 0x70]
mov rcx, rax
call fcn.1800839a0
mov r12, rax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0xc8], rax
mov ecx, 0x18
call fcn.180138b34
mov rdi, rax
mov qword [rsp + 0x38], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rax, vtable.std::_Ref_count_class_usropts::JsonUserSettingNodeWriteSkipRoot_.0
mov qword [rdi], rax
mov qword [rdi + 0x10], r12
mov qword [rsp + 0x590], r12
mov qword [rsp + 0x598], rdi
call fcn.1800388c0
lea rcx, [rax + 0x78]
mov rax, qword [rcx]
call qword [rax + 0x18]
test al, al
jne 0x180084deb
call fcn.1800388c0
lea rcx, [rax + 0x78]
mov rax, qword [rcx]
call qword [rax + 0x20]
cmp byte [rsp + 0x30], 0
je 0x180084e08
call fcn.1800388c0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x10]
test al, al
je 0x180085044
call fcn.1800388c0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x80], xmm0
lock inc dword [rdi + 8]
mov qword [rsp + 0x80], r12
mov qword [rsp + 0x88], rdi
lea rdx, [rsp + 0x80]
mov rcx, rax
call fcn.1800b49c0
nop
call fcn.1800073a0
mov qword [rsp + 0x60], rax
lea rdx, str.Saving_user_preferences_to__1_
lea rcx, [rsp + 0x460]
call fcn.180009c50
nop
mov qword [rsp + 0x128], rsi
lea rcx, [fcn.180007800]
mov qword [rsp + 0x130], rcx
lea rcx, [0x18009a1a0]
mov qword [rsp + 0x138], rcx
lea rdx, [rsp + 0x128]
mov rcx, rax
call fcn.18000fe30
lea rdx, [rsp + 0x290]
mov rcx, rax
call fcn.180009d60
nop
cmp qword [rax + 0x18], 8
jb 0x180084eae
mov rax, qword [rax]
lea rcx, str.UsrPrefsManager::_SaveUserPreferences
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0xb0
lea r9, str.E:TemporaryBuilds_azure_main_pool_build_de_124_sApp_src_blBLUserPreferences.cpp
mov r8d, 4
mov rdx, rax
mov rcx, qword [rsp + 0x60]
call fcn.180007240
nop
lea rcx, [rsp + 0x290]
call fcn.18001b890
nop
cmp byte [rsp + 0x550], 0
je 0x180084f26
mov rcx, qword [rsp + 0x560]
test rcx, rcx
je 0x180084f1e
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x180084f1e
mov rcx, qword [rax]
mov r8, qword [rcx]
mov edx, 1
mov rcx, rax
call r8
mov byte [rsp + 0x550], 0
lea rcx, [rsp + 0x4d0]
call fcn.180007570
lea rcx, [rsp + 0x4a8]
call fcn.18001b890
mov rcx, qword [rsp + 0x478]
test rcx, rcx
je 0x180084fa5
mov rax, qword [rsp + 0x488]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180084f8c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180084f8c
call qword [0x18016abc0]
int3
call fcn.180138b2c
mov qword [rsp + 0x478], rbx
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x480], xmm0
lea rcx, [rsp + 0x460]
call fcn.180007640
nop
jmp 0x180084fd6
mov rdx, rsi
lea rcx, [rsp + 0x270]
call fcn.18001b7d0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x50], xmm0
lock inc dword [r14 + 8]
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x58], r14
lea rdx, [rsp + 0x270]
lea rcx, [rsp + 0x50]
call fcn.180094e20
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x90], xmm0
lock inc dword [rdi + 8]
mov qword [rsp + 0x90], r12
mov qword [rsp + 0x98], rdi
lea rdx, [rsp + 0x90]
call fcn.180083b20
mov qword [r15 + 0xa0], rax
mov rsi, 0xffffffffffffffff
mov eax, esi
lock xadd dword [rdi + 8], eax
cmp eax, 1
jne 0x180085075
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov eax, esi
lock xadd dword [rdi + 0xc], eax
cmp eax, 1
jne 0x180085075
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
nop
mov eax, esi
lock xadd dword [r14 + 8], eax
cmp eax, 1
jne 0x180085783
mov rax, qword [r14]
mov rcx, r14
call qword [rax]
lock xadd dword [r14 + 0xc], esi
cmp esi, 1
jne 0x180085783
mov rax, qword [r14]
mov rcx, r14
jmp 0x180085780
movups xmmword [rsp + 0x570], xmm0
call fcn.1800388c0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 8]
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0xe0], rbx
mov qword [rsp + 0xe8], 7
mov word [rsp + 0xd0], bx
mov rsi, 0xffffffffffffffff
mov r8, rsi
nop dword [rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1800850f0
mov rdx, rax
lea rcx, [rsp + 0xd0]
call fcn.18001b510
nop
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0x2b0]
call fcn.18001b7d0
mov rdx, rax
lea rcx, [rsp + 0x5b0]
call fcn.1800b39e0
nop
mov ecx, 0x50
call fcn.180138b34
mov rdi, rax
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rax, vtable.std::_Ref_count_obj2_class_usropts::JsonUserSettingNodeSkipRoot_.0
mov qword [rdi], rax
lea r14, [rdi + 0x10]
lea rdx, [rsp + 0x5b0]
mov rcx, r14
call fcn.180082620
nop
mov qword [rsp + 0x570], r14
mov qword [rsp + 0x578], rdi
lea rcx, [rsp + 0x5b0]
call fcn.18001b890
nop
lea rcx, [rsp + 0xd0]
call fcn.18001b890
test r14, r14
je 0x18008575c
mov eax, dword [r12 + r13]
cmp dword [0x18023bea8], eax
jle 0x1800851f6
lea rcx, [0x18023bea8]
call fcn.180138cf8
cmp dword [0x18023bea8], 0xffffffff
jne 0x1800851f6
mov qword [0x18023be98], 0
mov qword [0x18023bea0], rbx
lea rcx, [0x180168620]
call fcn.180139170
lea rcx, [0x18023bea8]
call fcn.180138c98
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x160], xmm0
mov qword [rsp + 0x170], rbx
mov qword [rsp + 0x178], rbx
movdqa xmmword [rsp + 0x180], xmm0
mov qword [rsp + 0x190], rbx
mov qword [rsp + 0x198], 0
mov dword [rsp + 0x1a0], ebx
mov byte [rsp + 0x1a4], 0
mov qword [rsp + 0x1a8], rbx
mov qword [rsp + 0x1b8], rbx
mov qword [rsp + 0x1c0], 7
mov word [rsp + 0x1a8], bx
mov byte [rsp + 0x1c8], 0xff
lea rcx, [rsp + 0x1d0]
call qword [0x18016a618]
lea rax, vtable.boost::io::basic_altstringbuf_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__.0
mov qword [rsp + 0x1d0], rax
mov qword [rsp + 0x238], rbx
mov byte [rsp + 0x240], 0
mov dword [rsp + 0x244], 3
mov byte [rsp + 0x250], 0
mov qword [rsp + 0xf0], rbx
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0x108], 7
mov word [rsp + 0xf0], bx
mov r8d, 0x1e
lea rdx, str.Saving_user_preferences_to__1_
lea rcx, [rsp + 0xf0]
call fcn.18001b510
nop
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x160]
call fcn.18000c4c0
nop
lea rcx, [rsp + 0xf0]
call fcn.18001b890
nop
mov rax, qword [r14]
lea rdx, [rsp + 0x2f0]
mov rcx, r14
call qword [rax + 0xa8]
nop
mov qword [rsp + 0x110], rax
lea r13, [fcn.180007800]
mov qword [rsp + 0x118], r13
lea rax, [0x180011300]
mov qword [rsp + 0x120], rax
lea rdx, [rsp + 0x110]
lea rcx, [rsp + 0x160]
call fcn.18000fe30
lea rdx, [rsp + 0x2d0]
mov rcx, rax
call fcn.180009d60
nop
cmp qword [rax + 0x18], 8
jb 0x180085378
mov rax, qword [rax]
lea r12, str.UsrPrefsManager::_SaveUserPreferences
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0xb9
lea r9, str.E:TemporaryBuilds_azure_main_pool_build_de_124_sApp_src_blBLUserPreferences.cpp
mov r8d, 4
mov rdx, rax
lea rcx, [0x18023be98]
call fcn.180007240
nop
lea rcx, [rsp + 0x2d0]
call fcn.18001b890
nop
lea rcx, [rsp + 0x2f0]
call fcn.18001b890
nop
cmp byte [rsp + 0x250], 0
je 0x180085400
mov rcx, qword [rsp + 0x260]
test rcx, rcx
je 0x1800853f8
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x1800853f8
mov rcx, qword [rax]
mov r8, qword [rcx]
mov edx, 1
mov rcx, rax
call r8
mov byte [rsp + 0x250], 0
lea rcx, [rsp + 0x1d0]
call fcn.180007570
lea rcx, [rsp + 0x1a8]
call fcn.18001b890
mov rcx, qword [rsp + 0x178]
test rcx, rcx
je 0x18008547f
mov rax, qword [rsp + 0x188]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180085466
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180085466
call qword [0x18016abc0]
int3
call fcn.180138b2c
mov qword [rsp + 0x178], rbx
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x180], xmm0
lea rcx, [rsp + 0x160]
call fcn.180007640
nop
jmp 0x1800854b5
call fcn.1800388c0
lea rcx, [rax + 0x78]
mov rax, qword [rcx]
call qword [rax + 0x18]
test al, al
jne 0x1800854d7
call fcn.1800388c0
lea rcx, [rax + 0x78]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x90]
test al, al
je 0x1800854fd
call fcn.1800388c0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x10]
test al, al
je 0x18008575c
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x98]
nop
call fcn.1800073a0
mov qword [rsp + 0x38], rax
lea rdx, str.Saving_user_preferences_to__1_
lea rcx, [rsp + 0x350]
call fcn.180009c50
mov qword [rsp + 0x48], rax
mov rdx, qword [r14]
mov r8, qword [rdx + 0xa8]
lea rdx, [rsp + 0x330]
mov rcx, r14
call r8
nop
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], r13
lea rax, [0x180011300]
mov qword [rsp + 0x150], rax
lea rdx, [rsp + 0x140]
mov rcx, qword [rsp + 0x48]
call fcn.18000fe30
lea rdx, [rsp + 0x310]
mov rcx, rax
call fcn.180009d60
nop
cmp qword [rax + 0x18], 8
jb 0x180085592
mov rax, qword [rax]
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0xc0
lea r9, str.E:TemporaryBuilds_azure_main_pool_build_de_124_sApp_src_blBLUserPreferences.cpp
mov r8d, 4
mov rdx, rax
mov rcx, qword [rsp + 0x38]
call fcn.180007240
nop
lea rcx, [rsp + 0x310]
call fcn.18001b890
nop
lea rcx, [rsp + 0x330]
call fcn.18001b890
nop
cmp byte [rsp + 0x440], 0
je 0x180085611
mov rcx, qword [rsp + 0x450]
test rcx, rcx
je 0x180085609
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x180085609
mov rcx, qword [rax]
mov r8, qword [rcx]
mov edx, 1
mov rcx, rax
call r8
mov byte [rsp + 0x440], 0
lea rcx, [rsp + 0x3c0]
call fcn.180007570
lea rcx, [rsp + 0x398]
call fcn.18001b890
mov rcx, qword [rsp + 0x368]
test rcx, rcx
je 0x180085690
mov rax, qword [rsp + 0x378]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180085677
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180085677
call qword [0x18016abc0]
int3
call fcn.180138b2c
mov qword [rsp + 0x368], rbx
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x370], xmm0
lea rcx, [rsp + 0x350]
call fcn.180007640
nop
jmp 0x1800856b1
call fcn.1800388c0
mov rbx, rax
xor ecx, ecx
call qword [0x18016ad30]
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x48]
lea rcx, [rbx + 0xb0]
call fcn.18008f650
call fcn.1800388c0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xa0], xmm0
lock inc dword [rdi + 8]
mov rbx, qword [rsp + 0x570]
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0xa8], rdi
lea rdx, [rsp + 0xa0]
mov rcx, rax
call fcn.1800b49c0
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0xa0]
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xb0], xmm0
lock inc dword [rdi + 8]
mov rax, qword [rsp + 0x570]
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], rdi
lea rdx, [rsp + 0xb0]
call fcn.180083b20
mov qword [r15 + 0xa0], rax
mov eax, esi
lock xadd dword [rdi + 8], eax
cmp eax, 1
jne 0x180085783
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
lock xadd dword [rdi + 0xc], esi
cmp esi, 1
jne 0x180085783
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
mov rcx, qword [rsp + 0x5d0]
xor rcx, rsp
call fcn.180138ae0
lea r11, [rsp + 0x5e0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret