Function at 0x402d90
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x3468
call fcn.00403d90
push ebx
push esi
push edi
lea edi, [ebp - 0x3468]
mov ecx, 0xd1a
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov byte [ebp - 0x104], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x103]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp - 0x208], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x207]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x20c], 0
mov dword [ebp - 0x210], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x21c], 0
mov byte [ebp - 0x261c], 0
mov ecx, 0x8ff
xor eax, eax
lea edi, [ebp - 0x261b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp - 0x321c], 0
mov ecx, 0x2ff
xor eax, eax
lea edi, [ebp - 0x321b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp - 0x3320], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x331f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp - 0x3424], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x3423]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov esi, esp
lea eax, [ebp - 0x104]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
cmp esi, esp
call fcn.00403670
push 5
lea ecx, [ebp - 0x208]
push ecx
call fcn.004021e0
add esp, 8
lea edx, [ebp - 0x104]
push edx
call fcn.00403840
add esp, 4
movsx eax, byte [ebp + eax - 0x104]
cmp eax, 0x5c
je 0x402ed9
lea ecx, [ebp - 0x104]
push ecx
call fcn.00403840
add esp, 4
mov byte [ebp + eax - 0x103], 0x5c
lea edx, [ebp - 0x208]
push edx
lea eax, [ebp - 0x104]
push eax
call fcn.00403b40
add esp, 8
push 0x40e8f0
lea ecx, [ebp - 0x104]
push ecx
call fcn.00403b40
add esp, 8
lea edx, [ebp - 0x3320]
push edx
mov eax, dword [0x410070]
push eax
call fcn.00401860
add esp, 8
lea ecx, [ebp - 0x3320]
push ecx
call fcn.00403840
add esp, 4
cmp eax, 0xa
jbe 0x402fab
push 0x2400
lea edx, [ebp - 0x261c]
push edx
lea eax, [ebp - 0x3320]
push eax
call fcn.00401930
add esp, 0xc
test eax, eax
jne 0x402fa9
mov esi, esp
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp esi, esp
call fcn.00403670
push eax
call fcn.00403c20
add esp, 4
call fcn.00403c30
cdq
mov ecx, 3
idiv ecx
mov dword [ebp - 0x3428], edx
mov edx, dword [ebp - 0x3428]
mov eax, dword [edx*4 + 0x410074]
push eax
lea ecx, [ebp - 0x261c]
push ecx
call fcn.00401a80
add esp, 8
lea edx, [ebp - 0x3424]
push edx
lea eax, [ebp - 0x261c]
push eax
call fcn.00401860
add esp, 8
jmp 0x402fb0
jmp 0x40308e
call fcn.00402c70
mov dword [ebp - 0x218], eax
lea ecx, [ebp - 0x261c]
push ecx
call fcn.00403840
add esp, 4
cmp eax, 0x15
jae 0x402fd4
jmp 0x40308e
lea edx, [ebp - 0x261c]
push edx
call fcn.00402d20
add esp, 4
test eax, eax
jne 0x402fec
jmp 0x40308e
lea eax, [ebp - 0x321c]
push eax
lea ecx, [ebp - 0x261c]
push ecx
call fcn.00401860
add esp, 8
push 0x3a
lea edx, [ebp - 0x321c]
push edx
call fcn.00403cd0
add esp, 8
mov dword [ebp - 0x20c], eax
cmp dword [ebp - 0x20c], 0
je 0x40308e
mov eax, dword [ebp - 0x20c]
mov byte [eax], 0
lea ecx, [ebp - 0x321c]
mov dword [ebp - 0x210], ecx
mov edx, dword [ebp - 0x20c]
add edx, 1
mov dword [ebp - 0x214], edx
mov eax, dword [ebp - 0x210]
push eax
call fcn.00403ad0
add esp, 4
mov dword [ebp - 0x21c], eax
mov ecx, dword [ebp - 0x218]
cmp ecx, dword [ebp - 0x21c]
je 0x40308e
lea edx, [ebp - 0x104]
push edx
mov eax, dword [ebp - 0x214]
push eax
call fcn.00401cc0
add esp, 8
mov ecx, dword [ebp - 0x21c]
push ecx
call fcn.00402be0
add esp, 4
pop edi
pop esi
pop ebx
add esp, 0x3468
cmp ebp, esp
call fcn.00403670
mov esp, ebp
pop ebp
ret