Function at 0x4092a0
Capabilities:
Get session user name

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x84c
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x820
xorps xmm0, xmm0
mov dword [ebp - 0x830], 0
lea eax, [ebp - 0x828]
movq qword [ebp - 0x83c], xmm0
push 0
push eax
movups xmmword [ebp - 0x84c], xmm0
mov dword [ebp - 0x834], 0
call fcn.004ad600
mov esi, dword [sym.imp.ADVAPI32.dll_GetUserNameW]
lea eax, [ebp - 0x82c]
add esp, 0xc
mov dword [ebp - 0x838], 0x4ac140
xorps xmm0, xmm0
mov dword [ebp - 0x82c], 0
push eax
movd eax, xmm0
push eax
call esi
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
call edi
cmp eax, 0x7a
jne 0x409384
mov eax, dword [ebp - 0x82c]
lea eax, [eax*2 + 2]
push eax
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
inc dword [0x4de7b4]
mov dword [ebp - 0x84c], eax
test eax, eax
jne 0x409372
call edi
push eax
mov eax, dword [ebp - 0x82c]
lea eax, [eax*2 + 2]
push eax
push str.Error_allocating_memory__d_for_user:0x_X
push 1
call fcn.00408d60
add esp, 0x10
jmp 0x409394
lea ecx, [ebp - 0x82c]
push ecx
push eax
call esi
mov esi, eax
call edi
test esi, esi
jne 0x409394
push eax
push str.Error_getting_user_name:0x_X
push 1
call fcn.00408d60
add esp, 0xc
push str.Processing_data
push 3
call fcn.00408d60
lea ecx, [ebp - 0x844]
call fcn.00403c50
xor edx, edx
lea ecx, [ebp - 0x844]
call fcn.00401630
xor edx, edx
lea ecx, [ebp - 0x844]
call fcn.0040ac60
lea eax, [ebp - 0x848]
xor edx, edx
push eax
lea ecx, [ebp - 0x844]
call fcn.00407aa0
add esp, 0xc
lea eax, [ebp - 0x834]
lea edx, [ebp - 0x830]
lea ecx, [ebp - 0x84c]
push eax
call fcn.004abd60
add esp, 4
test eax, eax
je 0x409466
mov ecx, dword [0x4de9d0]
push ecx
push 0x4de7c8
push str._s_d_DataOut.bin
lea eax, [ecx + 1]
mov dword [0x4de9d0], eax
lea eax, [ebp - 0x828]
push 0x820
push eax
call fcn.004010a0
add esp, 0x14
test eax, eax
jns 0x409436
call edi
push eax
push str.Error_preparing_output_path:0x_X
jmp 0x40945c
push dword [ebp - 0x834]
mov edx, dword [ebp - 0x830]
lea ecx, [ebp - 0x828]
call fcn.00404870
add esp, 4
test eax, eax
jne 0x409466
call edi
push eax
push str.Cannot_create_encrypted_output_file:0x_X
push 1
call fcn.00408d60
add esp, 0xc
mov ebx, dword [ebp - 0x83c]
mov ecx, ebx
mov edx, dword [ebp - 0x838]
mov esi, dword [sym.imp.KERNEL32.dll_LocalFree]
mov edi, dword [ebp - 0x840]
mov dword [ebp - 0x82c], ecx
test ecx, ecx
je 0x4094ca
nop word [eax + eax]
mov esi, dword [ebx + 4]
mov ecx, ebx
mov dword [ebp - 0x82c], ecx
test esi, esi
je 0x40958d
mov eax, edi
test eax, eax
je 0x4094bb
nop dword [eax]
cmp esi, eax
je 0x409507
mov eax, dword [eax + 8]
test eax, eax
jne 0x4094b0
push str.Entry_not_found_in_the_list
push 2
call fcn.00408d60
add esp, 8
mov eax, dword [ebp - 0x84c]
mov ebx, dword [sym.imp.KERNEL32.dll_LocalFree]
test eax, eax
je 0x4094e3
push eax
call ebx
dec dword [0x4de7b4]
mov eax, dword [ebp - 0x830]
test eax, eax
je 0x4094f6
push eax
call ebx
dec dword [0x4de7b4]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004ac4d4
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x409514
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x409521
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
cmp edi, esi
jne 0x409528
mov edi, dword [esi + 8]
cmp ebx, esi
jne 0x40952f
mov ebx, dword [esi + 4]
mov eax, dword [esi]
test eax, eax
je 0x409566
push eax
test edx, edx
je 0x409554
call edx
add esp, 4
test eax, eax
jne 0x409566
push str.Cannot_free_element_value_memory_using_callback
push 2
call fcn.00408d60
add esp, 8
jmp 0x409566
call dword [sym.imp.KERNEL32.dll_LocalFree]
dec dword [0x4de7b4]
mov dword [esi], 0
push esi
mov esi, dword [sym.imp.KERNEL32.dll_LocalFree]
call esi
dec dword [0x4de7b4]
mov edx, dword [ebp - 0x838]
test ebx, ebx
jne 0x409490
mov ecx, ebx
mov dword [ebp - 0x82c], ecx
jmp 0x409593
mov esi, dword [sym.imp.KERNEL32.dll_LocalFree]
test ecx, ecx
je 0x4094ca
test edi, edi
je 0x4094bb
cmp ebx, edi
je 0x4095b3
mov edi, dword [edi + 8]
test edi, edi
jne 0x4095a3
jmp 0x4094bb
mov edx, dword [ecx + 4]
test edx, edx
je 0x4095c0
mov eax, dword [ecx + 8]
mov dword [edx + 8], eax
mov edx, dword [ecx + 8]
test edx, edx
je 0x4095cd
mov eax, dword [ecx + 4]
mov dword [edx + 4], eax
mov eax, dword [ecx]
test eax, eax
je 0x4095fc
mov ecx, dword [ebp - 0x838]
push eax
test ecx, ecx
je 0x40960a
call ecx
add esp, 4
test eax, eax
jne 0x4095f6
push str.Cannot_free_element_value_memory_using_callback
push 2
call fcn.00408d60
add esp, 8
mov ecx, dword [ebp - 0x82c]
push ecx
call esi
dec dword [0x4de7b4]
jmp 0x4094ca
call esi
mov ecx, dword [ebp - 0x82c]
dec dword [0x4de7b4]
push ecx
mov dword [ecx], 0
call esi
dec dword [0x4de7b4]
jmp 0x4094ca