Function at 0x401300
Capabilities:
Create directory
Get session user name

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x458c5b
mov eax, dword fs:[0]
push eax
sub esp, 0x328
mov eax, dword [0x46a36c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea eax, [ebp - 0x230]
mov dword [ebp - 0x314], 0
push eax
lea eax, [ebp - 0x214]
mov dword [ebp - 0x230], 0x101
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
lea eax, [ebp - 0x214]
push eax
lea ecx, [ebp - 0x248]
call fcn.00403be0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x248]
cmp dword [ebp - 0x234], 8
mov eax, dword [ebp - 0x238]
cmovae ecx, dword [ebp - 0x248]
lea eax, [ecx + eax*2]
lea ecx, [ebp - 0x248]
cmovae ecx, dword [ebp - 0x248]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x260]
call fcn.004042b0
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x234]
cmp ecx, 8
jb 0x4013ef
mov edx, dword [ebp - 0x248]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4013e5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4013e5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00457c02
add esp, 8
xor eax, eax
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x234], 7
mov word [ebp - 0x248], ax
mov dword [ebp - 4], 1
mov eax, accept
mov ecx, dword [ebp - 0x250]
sub eax, ecx
mov dword [ebp - 0x334], ecx
cmp eax, 9
jb 0x401950
cmp dword [ebp - 0x24c], 0x10
lea eax, [ebp - 0x260]
lea edx, [ecx + 9]
mov dword [ebp - 0x320], 0
cmovae eax, dword [ebp - 0x260]
lea edi, [ebp - 0x330]
mov esi, 0xf
mov dword [ebp - 0x314], eax
mov dword [ebp - 0x31c], 0
xorps xmm0, xmm0
mov dword [ebp - 0x318], edx
movups xmmword [ebp - 0x330], xmm0
cmp edx, esi
jbe 0x401509
mov esi, edx
or esi, 0xf
cmp esi, 0x7fffffff
jbe 0x401497
mov esi, accept
jmp 0x4014a1
mov eax, 0x16
cmp esi, eax
cmovb esi, eax
xor ecx, ecx
mov eax, esi
add eax, 1
setb cl
neg ecx
or ecx, eax
cmp ecx, 0x1000
jb 0x4014e4
lea eax, [ecx + 0x23]
cmp eax, ecx
jbe 0x401955
push eax
call fcn.00457abd
add esp, 4
test eax, eax
je 0x401627
mov edx, dword [ebp - 0x318]
lea edi, [eax + 0x23]
and edi, 0xffffffe0
mov dword [edi - 4], eax
jmp 0x4014fd
test ecx, ecx
je 0x4014fb
push ecx
call fcn.00457abd
mov edx, dword [ebp - 0x318]
add esp, 4
mov edi, eax
jmp 0x4014fd
xor edi, edi
mov ecx, dword [ebp - 0x334]
mov dword [ebp - 0x330], edi
movq xmm0, qword [str.C:_Users_]
mov dword [ebp - 0x320], edx
mov dword [ebp - 0x31c], esi
movq qword [edi], xmm0
mov al, byte [0x4664dc]
push ecx
push dword [ebp - 0x314]
mov byte [edi + 8], al
lea eax, [edi + 9]
push eax
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp - 0x334]
add esp, 0xc
mov byte [edi + eax + 9], 0
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x31c]
mov eax, edx
mov ecx, dword [ebp - 0x320]
sub eax, ecx
push 0x2d
push str._AppData_Local_Temp_Windows_cache_34266834736
cmp eax, 0x2d
jb 0x401597
cmp edx, 0x10
lea esi, [ebp - 0x330]
lea eax, [ecx + 0x2d]
cmovae esi, dword [ebp - 0x330]
add esi, ecx
mov dword [ebp - 0x320], eax
push esi
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov byte [esi + 0x2d], 0
lea eax, [ebp - 0x330]
jmp 0x4015b1
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x330]
push dword [ebp - 0x314]
push 0x2d
call fcn.004046d0
mov dword [ebp - 0x21c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x22c], xmm0
mov dword [ebp - 0x218], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x22c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x21c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x31c]
cmp ecx, 0x10
jb 0x401637
mov edx, dword [ebp - 0x330]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40162d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x40162d
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00457c02
add esp, 8
cmp dword [ebp - 0x218], 0x10
lea eax, [ebp - 0x22c]
mov dword [ebp - 0x320], 0
cmovae eax, dword [ebp - 0x22c]
push eax
mov dword [ebp - 0x31c], 0xf
mov byte [ebp - 0x330], 0
call dword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__mkdir]
mov edx, dword [ebp - 0x218]
add esp, 4
mov ecx, dword [ebp - 0x21c]
mov eax, edx
sub eax, ecx
push 0xa
push str._cache.txt
cmp eax, 0xa
jb 0x4016b6
cmp edx, 0x10
lea esi, [ebp - 0x22c]
lea eax, [ecx + 0xa]
cmovae esi, dword [ebp - 0x22c]
add esi, ecx
mov dword [ebp - 0x21c], eax
push esi
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov byte [esi + 0xa], 0
jmp 0x4016d0
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x22c]
push dword [ebp - 0x314]
push 0xa
call fcn.004046d0
sub esp, 0x18
mov dword [ebp - 0x318], 0
lea eax, [ebp - 0x260]
mov ecx, esp
push eax
call fcn.00403d60
lea ecx, [ebp - 0x318]
call fcn.00401b10
push 0xb0
mov edi, eax
lea eax, [ebp - 0x310]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0x24
mov dword [ebp - 0x310], 0x466618
lea ecx, [ebp - 0x2a8]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::constructor_void_]
push 0
push 0
lea eax, [ebp - 0x30c]
mov byte [ebp - 4], 5
push eax
lea ecx, [ebp - 0x310]
mov dword [ebp - 0x314], 0xf
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char_____bool_]
mov dword [ebp - 4], 6
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ofstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x310]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0x314], eax
lea ecx, [ebp - 0x30c]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void_]
lea ecx, [ebp - 0x30c]
mov dword [ebp - method.std::basic_filebuf_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_filebuf_char__struct_std::char_traits_char__.0
mov byte [ebp - 0x2c4], 0
mov byte [ebp - 0x2cf], 0
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::_Init_void_]
mov eax, dword [0x46ab18]
mov ecx, dword [0x46ab1c]
mov dword [ebp - 0x2c0], 0
mov dword [ebp - 0x2cc], eax
mov dword [ebp - 0x2c8], ecx
mov dword [ebp - 0x2d4], 0
sub esp, 8
mov byte [ebp - 4], 7
lea eax, [ebp - 0x22c]
lea ecx, [ebp - 0x310]
push eax
call fcn.00403a00
cmp dword [ebp - 0x2c0], 0
je 0x40185c
xor esi, esi
cmp dword [ebp - 0x318], esi
jbe 0x40185c
nop
lea eax, [esi + esi*2]
mov ecx, dword [edi + eax*8 + 0x14]
lea edx, [edi + eax*8]
cmp esi, 4
je 0x40183a
mov eax, edx
cmp ecx, 0x10
jb 0x401818
mov eax, dword [edx]
push 0x404280
push dword [edx + 0x10]
mov edx, eax
lea ecx, [ebp - 0x310]
call fcn.00404a70
add esp, 4
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
jmp 0x401853
cmp ecx, 0x10
jb 0x401842
mov edx, dword [edi + 0x60]
push dword [edi + 0x70]
lea ecx, [ebp - 0x310]
call fcn.00404a70
add esp, 4
inc esi
cmp esi, dword [ebp - 0x318]
jb 0x401800
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ofstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x310]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0x314], eax
lea ecx, [ebp - 0x30c]
call fcn.00403920
lea ecx, [ebp - 0x308]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0x2a8]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
mov ecx, dword [ebp - 0x218]
cmp ecx, 0x10
jb 0x4018dc
mov edx, dword [ebp - 0x22c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4018d2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x401923
push ecx
push edx
call fcn.00457c02
add esp, 8
mov ecx, dword [ebp - 0x24c]
mov dword [ebp - 0x21c], 0
mov dword [ebp - 0x218], 0xf
mov byte [ebp - 0x22c], 0
cmp ecx, 0x10
jb 0x401933
mov edx, dword [ebp - 0x260]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x401929
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x401929
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00457c02
add esp, 8
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00457aa1
mov esp, ebp
pop ebp
ret
call fcn.00401170
call fcn.004010d0
int3