Function at 0x140011b90
Capabilities:
Create directory
Get common file path

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x248
mov rsi, rcx
lea rcx, str.Welcome_to_the_KGMusic_downloader__n
call fcn.1400132f0
mov ecx, 0x7d0
mov rbx, qword [sym.imp.KERNEL32.dll_Sleep]
call rbx
lea rcx, str.Starting_download_of_all_KGMusic_songs..._n
call fcn.1400132f0
mov ecx, 0x1388
call rbx
mov edx, 0
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
lea rcx, [rsp + 0x220]
lea rax, [rsp + 0x230]
mov qword [rsp + 0x220], rax
mov r9d, 0
lea r8, [0x1400210c5]
lea rdx, [r8 - 0x12]
call fcn.14001b710
mov r9d, 0
mov r8d, dword [rsp + 0x228]
mov rdx, qword [rsp + 0x220]
mov ecx, 0x10000001
call sub.urlmon.dll_UrlMkSetSessionOption
mov ebx, eax
test eax, eax
je 0x140011c76
mov ebx, 0
mov rcx, qword [rsp + 0x220]
lea rax, [rsp + 0x230]
cmp rcx, rax
je 0x140011c60
mov rax, qword [rsp + 0x230]
lea rdx, [rax + 1]
call fcn.14001e8d0
mov eax, ebx
add rsp, 0x248
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rdx, [rsp + 0x110]
mov ecx, 0x105
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
test eax, eax
je 0x140011c3a
lea rdi, [rsp + 0xf0]
lea rax, [rsp + 0x100]
mov qword [rsp + 0xf0], rax
lea rbx, [rsp + 0x110]
mov rcx, rbx
call sub.msvcrt.dll_strlen
mov r9d, 0
lea r8, [rbx + rax]
mov rdx, rbx
mov rcx, rdi
call fcn.14001b710
movabs rax, 0x3fffffffffffffff
sub rax, qword [rsp + 0xf8]
cmp rax, 0x14
jbe 0x140011cfe
lea rcx, [rsp + 0xf0]
mov r8d, 0x15
lea rdx, str.kgmusic_downloads.txt
call fcn.14001cef0
jmp 0x140011d12
lea rcx, [0x1400210c6]
call fcn.14001f370
mov rbx, rax
jmp 0x1400122f2
mov rdx, qword [rsp + 0xf0]
lea rcx, str.http:__3.86.35.9_static_main_kgmusic_downloads.txt
call fcn.140011ae0
mov ebx, eax
test eax, eax
jne 0x140011d5b
mov rcx, qword [rsp + 0xf0]
lea rax, [rsp + 0x100]
cmp rcx, rax
je 0x140011c3a
mov rax, qword [rsp + 0x100]
lea rdx, [rax + 1]
call fcn.14001e8d0
jmp 0x140011c3a
mov qword [rsp + 0xd0], 0
mov qword [rsp + 0xd8], 0
mov qword [rsp + 0xe0], 0
lea rcx, [rsp + 0x70]
lea rax, [rsp + 0x80]
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0xf0]
mov r9d, 0
mov r8, rdx
add r8, qword [rsp + 0xf8]
call fcn.14001b850
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0x70]
call fcn.1400126c0
mov ebx, eax
mov rcx, qword [rsp + 0x70]
lea rax, [rsp + 0x80]
cmp rcx, rax
je 0x140011de6
mov rax, qword [rsp + 0x80]
lea rdx, [rax + 1]
call fcn.14001e8d0
test ebx, ebx
je 0x14001228e
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0xb8], 0
mov qword [rsp + 0xc0], 0
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], 0
mov byte [rsp + 0xa0], 0
mov rdx, qword [rsp + 0xd0]
mov ebx, 0
mov ecx, 0
mov rdi, rax
lea rbp, [rsp + 0x90]
mov r12d, 0xf
cmp qword [rsp + 0xd8], rdx
jne 0x140011efd
mov r9d, 0
lea r8, str.KGMusic
lea rdx, str.All_songs_have_been_downloaded__Enjoy_
mov ecx, 0
call qword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x140012231
mov rax, qword [rsp + 0xb0]
cmp qword [rsp + 0xb8], rax
je 0x140011e67
mov edi, 0
mov ecx, 0
lea rbp, [rsp + 0x30]
lea r12, [rsp + 0x40]
movabs r13, 0x3fffffffffffffff
jmp 0x1400121a9
add qword [rsp + 0xb8], 0x20
mov qword [rsp + 0x98], 0
mov rax, qword [rsp + 0x90]
mov byte [rax], 0
add ebx, 1
mov ecx, ebx
mov rdx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xd8]
sub rax, rdx
cmp rcx, rax
jae 0x140011e8b
movzx r13d, byte [rdx + rcx]
cmp r13b, 0xa
jne 0x140011f6a
cmp qword [rsp + 0x98], 0
je 0x140011ec9
mov rcx, qword [rsp + 0xb8]
cmp rcx, qword [rsp + 0xc0]
je 0x140011f4f
lea rax, [rcx + 0x10]
mov qword [rcx], rax
mov rdx, qword [rsp + 0x90]
mov r9d, 0
mov r8, rdx
add r8, qword [rsp + 0x98]
call fcn.14001b850
jmp 0x140011ec0
lea rax, [rsp + 0xb0]
mov r8, rbp
mov rdx, rcx
mov rcx, rax
call fcn.14001ada0
jmp 0x140011ec9
mov r14, qword [rsp + 0x98]
lea r15, [r14 + 1]
cmp qword [rsp + 0x90], rdi
je 0x140011fb4
mov rax, qword [rsp + 0xa0]
cmp r15, rax
ja 0x140011fb9
mov rax, qword [rsp + 0x90]
mov byte [rax + r14], r13b
mov qword [rsp + 0x98], r15
mov rax, qword [rsp + 0x90]
mov byte [rax + r14 + 1], 0
jmp 0x140011ee0
mov rax, r12
jmp 0x140011f88
mov qword [rsp + 0x20], 1
mov r9d, 0
mov r8d, 0
mov rdx, r14
mov rcx, rbp
call fcn.14001d0a0
jmp 0x140011f8d
mov r8, 0xffffffffffffffff
mov edx, 0x2f
mov rcx, rbp
call fcn.1400162b0
mov rdx, rax
mov rax, qword [rsp + 0x38]
lea edx, [rdx + 1]
cmp rdx, rax
ja 0x14001202a
lea r10, [rsp + 0x50]
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x50], rcx
mov rcx, qword [rsp + 0x30]
add rdx, rcx
mov r9d, 0
lea r8, [rcx + rax]
mov rcx, r10
call fcn.14001b710
jmp 0x140012048
mov r9, rax
mov r8, rdx
lea rdx, [0x14002112b]
lea rcx, [0x140021140]
call fcn.14001e400
mov rbx, rax
jmp 0x1400120b2
lea rcx, [rsp + 0x70]
lea rax, [rsp + 0x80]
mov qword [rsp + 0x70], rax
mov rdx, qword [rsi]
mov r9d, 0
mov r8, rdx
add r8, qword [rsi + 8]
call fcn.14001b850
cmp qword [rsp + 0x78], r13
je 0x14001208f
lea rcx, [rsp + 0x70]
mov r8d, 1
lea rdx, [0x140021177]
call fcn.14001cef0
jmp 0x140012101
lea rcx, [0x1400210c6]
call fcn.14001f370
mov rbx, rax
lea rcx, [rsp + 0x70]
call fcn.14001b200
lea rcx, [rsp + 0x50]
call fcn.14001b200
lea rcx, [rsp + 0x30]
call fcn.14001b200
lea rcx, [rsp + 0x90]
call fcn.14001b200
mov rdi, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xb0]
cmp rdi, rsi
je 0x140012324
mov rcx, qword [rsi]
lea rax, [rsi + 0x10]
cmp rcx, rax
je 0x1400120fb
mov rax, qword [rsi + 0x10]
lea rdx, [rax + 1]
call fcn.14001e8d0
add rsi, 0x20
jmp 0x1400120d9
mov rcx, rax
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
call fcn.14001cef0
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x30]
call fcn.140011ae0
mov ebx, eax
test eax, eax
je 0x1400121d2
mov rcx, qword [rsp + 0x70]
lea rax, [rsp + 0x80]
cmp rcx, rax
je 0x14001214f
mov rax, qword [rsp + 0x80]
lea rdx, [rax + 1]
call fcn.14001e8d0
mov rcx, qword [rsp + 0x50]
lea rax, [rsp + 0x60]
cmp rcx, rax
je 0x14001216c
mov rax, qword [rsp + 0x60]
lea rdx, [rax + 1]
call fcn.14001e8d0
mov rcx, qword [rsp + 0x30]
cmp rcx, r12
je 0x140012184
mov rax, qword [rsp + 0x40]
lea rdx, [rax + 1]
call fcn.14001e8d0
add edi, 1
mov ecx, edi
mov rax, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
sub rdx, rax
sar rdx, 5
cmp rcx, rdx
jae 0x140011e67
shl rcx, 5
add rax, rcx
mov qword [rsp + 0x30], r12
mov rdx, qword [rax]
mov r9d, 0
mov r8, rdx
add r8, qword [rax + 8]
mov rcx, rbp
call fcn.14001b850
jmp 0x140011fdb
mov rcx, qword [rsp + 0x70]
lea rax, [rsp + 0x80]
cmp rcx, rax
je 0x1400121f5
mov rax, qword [rsp + 0x80]
lea rdx, [rax + 1]
call fcn.14001e8d0
mov rcx, qword [rsp + 0x50]
lea rax, [rsp + 0x60]
cmp rcx, rax
je 0x140012212
mov rax, qword [rsp + 0x60]
lea rdx, [rax + 1]
call fcn.14001e8d0
mov rcx, qword [rsp + 0x30]
lea rax, [rsp + 0x40]
cmp rcx, rax
je 0x140012236
mov rax, qword [rsp + 0x40]
lea rdx, [rax + 1]
call fcn.14001e8d0
jmp 0x140012236
mov ebx, 1
mov rcx, qword [rsp + 0x90]
lea rax, [rsp + 0xa0]
cmp rcx, rax
je 0x14001225c
mov rax, qword [rsp + 0xa0]
lea rdx, [rax + 1]
call fcn.14001e8d0
mov rdi, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xb0]
cmp rdi, rsi
jne 0x1400122bd
mov rcx, qword [rsp + 0xb0]
test rcx, rcx
je 0x14001228e
mov rdx, qword [rsp + 0xc0]
sub rdx, rcx
call fcn.14001e8d0
mov rcx, qword [rsp + 0xd0]
test rcx, rcx
je 0x140011d2c
mov rdx, qword [rsp + 0xe0]
sub rdx, rcx
call fcn.14001e8d0
jmp 0x140011d2c
add rsi, 0x20
cmp rdi, rsi
je 0x140012271
mov rcx, qword [rsi]
lea rax, [rsi + 0x10]
cmp rcx, rax
je 0x1400122b4
mov rax, qword [rsi + 0x10]
lea rdx, [rax + 1]
call fcn.14001e8d0
jmp 0x1400122b4
lea rcx, [rsp + 0xd0]
call fcn.140019ad0
lea rcx, [rsp + 0xf0]
call fcn.14001b200
lea rcx, [rsp + 0x220]
call fcn.14001b200
mov rcx, rbx
call fcn.14000c3a0
mov rbx, rax
jmp 0x1400120a8
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xc0]
sub rdx, rcx
test rcx, rcx
je 0x1400122e5
call fcn.14001e8d0
jmp 0x1400122e5