Function at 0x180051060
Capabilities:
Get common file path

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0x1e8]
sub rsp, 0x2b0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
mov r15, rcx
mov rcx, qword [0x1800b0d90]
call fcn.180058180
lea rdx, str.All_skins_loaded_from_memory__n
mov rcx, qword [0x1800b0d98]
call fcn.180050980
mov rax, qword [0x1800b2c28]
test rax, rax
je 0x1800510c1
inc dword [rax + 0x3b0]
mov ecx, 0x3f48
call fcn.18006e5d8
xor r12d, r12d
test rax, rax
je 0x1800510df
xor edx, edx
mov rcx, rax
call fcn.18001a330
jmp 0x1800510e2
mov rax, r12
cmp qword [0x1800b2c28], r12
jne 0x1800510f2
mov qword [0x1800b2c28], rax
mov rcx, rax
call fcn.1800207d0
mov rdi, qword [0x1800b2c28]
mov byte [rdi + 0x1616], 1
mov byte [rdi + 0x1614], 1
call fcn.18005ab90
mov qword [rdi + 0x20], r12
mov qword [rdi + 0x28], r12
or dword [rdi + 8], 0x20
lea r9, [rbp + 0x1f8]
xor r8d, r8d
xor edx, edx
lea rcx, [0x18008b5c0]
call qword [sym.imp.SHELL32.dll_SHGetKnownFolderPath]
test eax, eax
js 0x1800517ed
lea rdx, [rbp + 0x1f8]
lea rcx, [rbp - 0x60]
call fcn.180011f50
mov rcx, qword [rbp + 0x1f8]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
xorps xmm6, xmm6
xor eax, eax
movups xmmword [rbp - 0x40], xmm6
movups xmmword [rbp - 0x30], xmm6
movaps xmmword [rbp - 0x20], xmm6
movaps xmmword [rbp - 0x10], xmm6
movups xmmword [rbp], xmm6
movups xmmword [rbp + 0x10], xmm6
movaps xmmword [rbp + 0x20], xmm6
movaps xmmword [rbp + 0x30], xmm6
mov qword [rbp + 0x40], rax
mov byte [rbp - 0x34], 1
mov dword [rbp - 0x28], 3
mov dword [rbp - 0x24], 1
mov dword [rbp + 4], 0x7f7fffff
mov dword [rbp + 0x10], 0x3f800000
mov eax, 0xffff
mov word [rbp + 0x14], ax
mov dword [rbp - 0x2c], 0x41700000
mov r14, qword [rdi + 0xa8]
lea rax, str.tahoma.ttf
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 0xa
call fcn.18005aefc
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm0
lea r8, [rsp + 0x30]
mov edx, eax
lea rcx, [rbp - 0x80]
call fcn.180003b60
lea r8, [rbp - 0x80]
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x60]
call fcn.180004080
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.180050890
mov rbx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x18005121f
mov rbx, qword [rax]
mov qword [rbp + 0x200], r12
lea r8, [rbp + 0x200]
mov rcx, rbx
call fcn.18001b7e0
mov rsi, rax
test rax, rax
je 0x1800513c2
movaps xmm2, xmmword [rbp - 0x40]
movaps xmmword [rbp + 0x50], xmm2
movaps xmm3, xmmword [rbp - 0x30]
movaps xmmword [rbp + 0x60], xmm3
movaps xmmword [rbp + 0x70], xmm6
xorps xmm4, xmm4
movaps xmmword [rbp + 0x80], xmm4
movaps xmm5, xmmword [rbp]
movaps xmmword [rbp + 0x90], xmm5
movaps xmm1, xmmword [rbp + 0x10]
movaps xmmword [rbp + 0xa0], xmm1
xorps xmm7, xmm7
movaps xmmword [rbp + 0xb0], xmm7
xorps xmm8, xmm8
movaps xmmword [rbp + 0xc0], xmm8
movsd xmm9, qword [rbp + 0x40]
movsd qword [rbp + 0xd0], xmm9
movdqa xmm0, xmm1
psrldq xmm0, 6
movd eax, xmm0
test al, al
jne 0x180051346
mov r9, 0xffffffffffffffff
inc r9
cmp byte [rbx + r9], r12b
jne 0x1800512b6
add r9, rbx
cmp r9, rbx
jbe 0x1800512e7
nop word [rax + rax]
lea rcx, [r9 - 1]
movzx eax, byte [rcx]
cmp al, 0x2f
je 0x1800512e7
cmp al, 0x5c
je 0x1800512e7
mov r9, rcx
cmp rcx, rbx
ja 0x1800512d0
movsd xmm0, qword [0x18009ecd8]
movsd qword [rsp + 0x20], xmm0
lea r8, str._s___.0fpx
mov edx, 0x28
lea rcx, [rbp + 0xa6]
call fcn.18001b580
movsd xmm9, qword [rbp + 0xd0]
movaps xmm8, xmmword [rbp + 0xc0]
movaps xmm7, xmmword [rbp + 0xb0]
movaps xmm1, xmmword [rbp + 0xa0]
movaps xmm5, xmmword [rbp + 0x90]
movaps xmm4, xmmword [rbp + 0x80]
movaps xmm6, xmmword [rbp + 0x70]
movaps xmm3, xmmword [rbp + 0x60]
movaps xmm2, xmmword [rbp + 0x50]
movaps xmmword [rbp + 0xe0], xmm2
movaps xmmword [rbp + 0xf0], xmm3
movaps xmmword [rbp + 0x100], xmm6
movaps xmmword [rbp + 0x110], xmm4
movaps xmmword [rbp + 0x120], xmm5
movaps xmmword [rbp + 0x130], xmm1
movaps xmmword [rbp + 0x140], xmm7
movaps xmmword [rbp + 0x150], xmm8
movsd qword [rbp + 0x160], xmm9
mov qword [rbp + 0xe0], rsi
mov eax, dword [rbp + 0x200]
mov dword [rbp + 0xe8], eax
mov dword [rbp + 0xf4], 0x41700000
lea rax, [0x18009bad0]
mov qword [rbp + 0x118], rax
lea rdx, [rbp + 0xe0]
mov rcx, r14
call fcn.1800398e0
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x1800513ff
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800513fa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180051b7d
call fcn.18005c9c0
movdqa xmm0, xmmword [0x18009edb0]
movdqu xmmword [rsp + 0x50], xmm0
mov byte [rsp + 0x40], r12b
mov rdx, qword [rsp + 0x78]
cmp rdx, 7
jbe 0x180051454
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005144f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180051b7d
call fcn.18005c9c0
movdqa xmm0, xmmword [0x18009ed90]
movdqu xmmword [rsp + 0x70], xmm0
mov word [rsp + 0x60], r12w
mov rdx, qword [rbp - 0x68]
cmp rdx, 7
jbe 0x1800514a8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800514a3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180051b7d
call fcn.18005c9c0
mov byte [rbp + 8], 1
mov rbx, qword [rdi + 0xa8]
lea rax, str.malgun.ttf
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 0xa
call fcn.18005aefc
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm0
lea r8, [rsp + 0x30]
mov edx, eax
lea rcx, [rbp - 0x80]
call fcn.180003b60
lea r8, [rbp - 0x80]
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x40]
call fcn.180004080
lea rdx, [rsp + 0x60]
mov rcx, rax
call fcn.180050890
cmp qword [rax + 0x18], 0xf
jbe 0x180051511
mov rax, qword [rax]
lea rcx, [0x18009cfd0]
mov qword [rsp + 0x20], rcx
lea r9, [rbp - 0x40]
movss xmm2, dword [0x18009ed14]
mov rdx, rax
mov rcx, rbx
call fcn.180039ba0
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x180051571
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005156c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180051b83
call fcn.18005c9c0
movdqa xmm0, xmmword [0x18009edb0]
movdqu xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x60], r12b
mov rdx, qword [rsp + 0x58]
cmp rdx, 7
jbe 0x1800515c6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800515c1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180051b83
call fcn.18005c9c0
movdqa xmm0, xmmword [0x18009ed90]
movdqu xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x40], r12w
mov rdx, qword [rbp - 0x68]
cmp rdx, 7
jbe 0x18005161a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180051615
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180051b83
call fcn.18005c9c0
mov rbx, qword [rdi + 0xa8]
lea rax, str.msyh.ttc
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 8
call fcn.18005aefc
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm0
lea r8, [rsp + 0x30]
mov edx, eax
lea rcx, [rbp - 0x80]
call fcn.180003b60
lea r8, [rbp - 0x80]
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x40]
call fcn.180004080
lea rdx, [rsp + 0x60]
mov rcx, rax
call fcn.180050890
cmp qword [rax + 0x18], 0xf
jbe 0x18005167f
mov rax, qword [rax]
lea rcx, [0x18009cfa8]
mov qword [rsp + 0x20], rcx
lea r9, [rbp - 0x40]
movss xmm2, dword [0x18009ed14]
mov rdx, rax
mov rcx, rbx
call fcn.180039ba0
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x1800516df
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800516da
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180051b89
call fcn.18005c9c0
movdqa xmm0, xmmword [0x18009edb0]
movdqu xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x60], r12b
mov rdx, qword [rsp + 0x58]
cmp rdx, 7
jbe 0x180051734
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005172f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180051b89
call fcn.18005c9c0
movdqa xmm0, xmmword [0x18009ed90]
movdqu xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x40], r12w
mov rdx, qword [rbp - 0x68]
cmp rdx, 7
jbe 0x180051788
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180051783
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180051b89
call fcn.18005c9c0
lea rdx, str.Fonts_loaded__n
mov rcx, qword [0x1800b0d98]
call fcn.180050980
mov rdx, qword [rbp - 0x48]
cmp rdx, 7
jbe 0x1800517db
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800517d6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180051b77
call fcn.18005c9c0
movdqa xmm0, xmmword [0x18009ed90]
movdqu xmmword [rbp - 0x50], xmm0
mov word [rbp - 0x60], r12w
mov rax, qword [0x1800b0d88]
mov rdi, qword [rax + 8]
mov rbx, qword [0x1800b2c28]
lea rcx, [rbp + 0x200]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x18005194d
lea rcx, [rbp + 0x208]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x18005194d
mov rax, qword [0x1800b2c28]
test rax, rax
je 0x18005183b
inc dword [rax + 0x3b0]
mov ecx, 0x30
call fcn.18006e5d8
mov rcx, rax
test rax, rax
je 0x18005185d
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
jmp 0x180051860
mov rcx, r12
mov qword [rbx + 0xe8], rcx
lea rax, [0x18009d4e8]
mov qword [rbx + 0xd8], rax
or dword [rbx + 0xc], 6
mov qword [rcx], rdi
mov byte [rcx + 0x2d], 1
mov rax, qword [rbp + 0x200]
mov qword [rcx + 0x20], rax
mov rax, qword [rbp + 0x208]
mov qword [rcx + 0x18], rax
mov dword [rcx + 0x28], 9
mov qword [rbx + 0x120], rdi
mov dword [rbx + 0x3c], 9
mov dword [rbx + 0x40], 0x25
mov dword [rbx + 0x44], 0x27
mov dword [rbx + 0x48], 0x26
mov dword [rbx + 0x4c], 0x28
mov dword [rbx + 0x50], 0x21
mov dword [rbx + 0x54], 0x22
mov dword [rbx + 0x58], 0x24
mov dword [rbx + 0x5c], 0x23
mov dword [rbx + 0x60], 0x2d
mov dword [rbx + 0x64], 0x2e
mov dword [rbx + 0x68], 8
mov dword [rbx + 0x6c], 0x20
mov dword [rbx + 0x70], 0xd
mov dword [rbx + 0x74], 0x1b
mov dword [rbx + 0x78], 0xd
mov dword [rbx + 0x7c], 0x41
mov dword [rbx + 0x80], 0x43
mov dword [rbx + 0x84], 0x56
mov dword [rbx + 0x88], 0x58
mov dword [rbx + 0x8c], 0x59
mov dword [rbx + 0x90], 0x5a
mov qword [0x1800b2c60], r15
mov rax, qword [r15]
lea r8, [0x1800b2c38]
lea rdx, [0x18009d920]
mov rcx, r15
call qword [rax + 0x38]
mov rcx, qword [0x1800b2c38]
mov rax, qword [rcx]
lea rdx, [0x1800b2c48]
call qword [rax + 0x140]
nop
mov qword [rbp + 0x1f8], r12
mov rcx, qword [0x1800b2c60]
mov rax, qword [rcx]
lea r9, [rbp + 0x1f8]
lea r8, [0x18009d930]
xor edx, edx
call qword [rax + 0x48]
mov rdx, qword [rbp + 0x1f8]
test rdx, rdx
je 0x1800519d8
mov rcx, qword [0x1800b2c38]
mov rax, qword [rcx]
lea r9, [0x1800b2c40]
xor r8d, r8d
call qword [rax + 0x48]
mov rcx, qword [rbp + 0x1f8]
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov r14, qword [0x1800b2c48]
mov rsi, qword [0x1800b2c38]
mov rdi, qword [0x1800b2c28]
test rdi, rdi
je 0x1800519f8
inc dword [rdi + 0x3b0]
mov ecx, 0x78
call fcn.18006e5d8
mov rbx, rax
test rax, rax
je 0x180051a38
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x60], xmm0
mov dword [rax + 0x70], 0x1388
mov dword [rax + 0x74], 0x2710
jmp 0x180051a3b
mov rbx, r12
mov qword [rdi + 0xf0], rbx
lea rax, str.imgui_impl_dx11
mov qword [rdi + 0xe0], rax
or dword [rdi + 0xc], 8
mov qword [rbp + 0x200], r12
mov qword [rbp + 0x208], r12
mov qword [rsp + 0x30], r12
mov rax, qword [rsi]
lea r8, [rbp + 0x200]
lea rdx, [0x18009d4b8]
mov rcx, rsi
call qword [rax]
test eax, eax
jne 0x180051acd
mov rcx, qword [rbp + 0x200]
mov rax, qword [rcx]
lea r8, [rbp + 0x208]
lea rdx, [0x18009d4c8]
call qword [rax + 0x30]
test eax, eax
jne 0x180051acd
mov rcx, qword [rbp + 0x208]
mov rax, qword [rcx]
lea r8, [rsp + 0x30]
lea rdx, [0x18009d4d8]
call qword [rax + 0x30]
test eax, eax
jne 0x180051acd
mov qword [rbx], rsi
mov qword [rbx + 8], r14
mov rax, qword [rsp + 0x30]
mov qword [rbx + 0x10], rax
mov rcx, qword [rbp + 0x200]
test rcx, rcx
je 0x180051adf
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbp + 0x208]
test rcx, rcx
je 0x180051af1
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rbx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, qword [rbx + 8]
mov rax, qword [rcx]
call qword [rax + 8]
call fcn.18003f0e0
lea r8, [0x180050c30]
mov edx, 0xfffffffc
mov rcx, qword [0x1800b0d88]
mov rcx, qword [rcx + 8]
call qword [sym.imp.USER32.dll_SetWindowLongPtrW]
mov qword [0x1800b40b0], rax
lea r9, [0x180050c30]
lea r8, [0x1800b40b0]
lea rdx, str.WndProc_hooked__n_tOriginal:_0x_X_n_tNew:_0x_X_n
mov rcx, qword [0x1800b0d98]
lea r11, [rsp + 0x2b0]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
jmp fcn.180050980
call fcn.18006b06c
int3
call fcn.18006b06c
int3
call fcn.18006b06c
int3
call fcn.18006b06c
int3