Function at 0x513620
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5b0e56
mov eax, dword fs:[0]
push eax
mov eax, 0x21b8
call fcn.00589110
mov eax, dword [0x6d2e20]
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 byte [ebp - 0x11], 0
call fcn.00509220
mov ecx, 0x6daa48
call fcn.00508670
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x11], al
mov eax, dword [ebp + 8]
mov dword [ebp - 0x21c0], eax
lea ecx, [ebp - 0x21c0]
push ecx
mov ecx, 0x6daa48
call fcn.00509170
test eax, eax
jge 0x5136a7
mov eax, dword [ebp + 8]
mov dword [ebp - 0x21bc], eax
lea ecx, [ebp - 0x21bc]
push ecx
mov ecx, 0x6daa48
call fcn.005088d0
call fcn.00509330
movzx eax, byte [ebp - 0x11]
test eax, eax
je 0x5138c6
call fcn.00524ca0
movsx eax, byte [0x6d9560]
test eax, eax
jne 0x5136e5
push 0x6d9560
call dword [sym.imp.RPCRT4.dll_UuidCreate]
movsx eax, byte [0x6d9560]
test eax, eax
jne 0x5136e5
mov byte [0x6d9560], 1
push 0xac
push 0
lea eax, [ebp - 0xc0]
push eax
call fcn.00588e80
add esp, 0xc
mov dword [ebp - 0x3c], 0x34
mov dword [ebp - 0x40], 0x52
mov dword [ebp - 0x38], 0x1e
mov dword [ebp - 0x34], 0x1f40
push str.nat.167bt.com
lea eax, [ebp - 0xc0]
push eax
call fcn.00589140
add esp, 8
push 8
push 0x6d9560
lea eax, [ebp - 0x2c]
push eax
call fcn.0058c7b0
add esp, 0xc
lea eax, [ebp - 0xc0]
push eax
push 0x101
call fcn.0053bd80
mov dword [ebp - 0xc4], eax
mov byte [0x6dae10], 0
mov byte [0x6d25d3], 0
mov byte [0x6d96ec], 0
movzx eax, byte [0x6d25d3]
test eax, eax
je 0x513855
mov al, byte [0x6a6f4e]
mov byte [ebp - 0x10c4], al
push 0xfff
push 0
lea eax, [ebp - 0x10c3]
push eax
call fcn.00588e80
add esp, 0xc
push 0
push 0x23
lea eax, [ebp - 0x10c4]
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathA]
push str.ShengquGamesStartingShot
lea eax, [ebp - 0x10c4]
push eax
call fcn.00589150
add esp, 8
movsx eax, byte [ebp - 0x10c4]
test eax, eax
je 0x5137fe
lea eax, [ebp - 0x10c4]
push eax
call fcn.005884f0
add esp, 4
movsx ecx, byte [ebp + eax - 0x10c5]
cmp ecx, 0x5c
je 0x5137fe
push str.StartingShotKademlia.kad
lea eax, [ebp - 0x10c4]
push eax
call fcn.00589150
add esp, 8
jmp 0x513812
push 0x6a2388
lea eax, [ebp - 0x10c4]
push eax
call fcn.00589150
add esp, 8
lea eax, [ebp - 0x10c4]
push eax
lea ecx, [ebp - 0x21b8]
call fcn.00410e10
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x21b8]
push ecx
call fcn.005282f0
mov ecx, eax
call fcn.0052ce60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x21b8]
call fcn.004116e0
call fcn.00528440
push 0
lea ecx, [ebp - 0x2158]
call fcn.00524230
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x2158]
call fcn.00524510
sub eax, 2
mov dword [ebp - 0x215c], eax
cmp dword [ebp - 0x215c], 0
jg 0x513892
mov dword [ebp - 0x21c4], 0x20
jmp 0x51389e
mov eax, dword [ebp - 0x215c]
mov dword [ebp - 0x21c4], eax
mov ecx, dword [ebp - 0x21c4]
push ecx
push 0x20
call fcn.00516b90
add esp, 8
mov dword [0x6d25dc], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2158]
call fcn.00524420
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.0058848d
mov esp, ebp
pop ebp
ret