Function at 0x4676a0
Capabilities:
Copy file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x504bb8
mov eax, dword fs:[0]
push eax
sub esp, 0x18
push ebx
push esi
push edi
mov eax, dword [0x5732cc]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov esi, ecx
mov dword [ebp - 4], 0
push 0x468ad0
call fcn.004dbbc8
add esp, 4
call fcn.004294f0
mov ecx, eax
call fcn.0048eb50
test al, al
jne 0x4676fb
cmp dword [esi + 8], 0
je 0x46796e
lea eax, [esi + 4]
push eax
lea ecx, [ebp - 0x1c]
call fcn.00441cb0
mov byte [ebp - 4], 1
mov ecx, esi
call fcn.00466560
test al, al
je 0x467959
mov ecx, esi
call fcn.004668c0
test al, al
je 0x467959
mov ecx, esi
call fcn.00464030
test al, al
je 0x467841
call fcn.00431060
mov ecx, eax
call fcn.004446f0
push 0x5422ee
lea ecx, [ebp - 0x14]
call fcn.0041ad50
mov bl, 2
mov byte [ebp - 4], bl
call fcn.004294f0
mov ecx, eax
call fcn.0048eb50
test al, al
je 0x467790
lea ecx, [ebp - 0x18]
push ecx
call fcn.004294f0
mov ecx, eax
call fcn.0048f870
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x14]
call fcn.0041e3d0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x18]
call fcn.00416630
jmp 0x4677aa
cmp dword [esi + 8], 0
je 0x4677aa
lea eax, [esi + 0xc]
mov edx, dword [eax]
cmp dword [edx - 8], 1
jle 0x4677aa
push eax
lea ecx, [ebp - 0x14]
call fcn.0041e3d0
push 0x514670
lea ecx, [ebp - 0x14]
call fcn.0041d470
push str.ewallet.dat
lea ecx, [ebp - 0x14]
call fcn.0041d470
push 1
push 0
mov edi, dword [ebp - 0x14]
push edi
call fcn.0046dc30
add esp, 0xc
test al, al
je 0x467835
push 0x5422ee
lea ecx, [ebp - 0x18]
call fcn.0041ad50
mov byte [ebp - 4], 4
lea eax, [ebp - 0x18]
push eax
mov ecx, esi
call fcn.00466280
test al, al
je 0x46782a
push 1
mov ecx, esi
call fcn.00466dc0
push 0
mov ecx, dword [ebp - 0x18]
push ecx
push edi
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
jne 0x467823
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0
mov ecx, esi
call fcn.00466dc0
jmp 0x46782a
mov ecx, esi
call fcn.00466a80
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x18]
call fcn.00416630
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x14]
call fcn.00416630
mov ecx, esi
call fcn.004641b0
test al, al
je 0x467959
call fcn.0044fc50
mov ecx, eax
call fcn.00442270
push 0x5422ee
lea ecx, [ebp - 0x14]
call fcn.0041ad50
mov bl, 5
mov byte [ebp - 4], bl
call fcn.004294f0
mov ecx, eax
call fcn.0048eb50
test al, al
je 0x4678a8
lea edx, [ebp - 0x18]
push edx
call fcn.004294f0
mov ecx, eax
call fcn.0048f870
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x14]
call fcn.0041e3d0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x18]
call fcn.00416630
jmp 0x4678c2
cmp dword [esi + 8], 0
je 0x4678c2
lea eax, [esi + 0xc]
mov ecx, dword [eax]
cmp dword [ecx - 8], 1
jle 0x4678c2
push eax
lea ecx, [ebp - 0x14]
call fcn.0041e3d0
push 0x514670
lea ecx, [ebp - 0x14]
call fcn.0041d470
push str.pwd_vault.dat
lea ecx, [ebp - 0x14]
call fcn.0041d470
push 1
push 0
mov edi, dword [ebp - 0x14]
push edi
call fcn.0046dc30
add esp, 0xc
test al, al
je 0x46794d
push 0x5422ee
lea ecx, [ebp - 0x18]
call fcn.0041ad50
mov byte [ebp - 4], 7
lea edx, [ebp - 0x18]
push edx
mov ecx, esi
call fcn.004663f0
test al, al
je 0x467942
push 1
mov ecx, esi
call fcn.00467000
push 0
mov eax, dword [ebp - 0x18]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
jne 0x46793b
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 1
mov ecx, esi
call fcn.00467000
jmp 0x467942
mov ecx, esi
call fcn.00466c20
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x18]
call fcn.00416630
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x14]
call fcn.00416630
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x1c]
cmp dword [eax], 0
je 0x46796e
mov ecx, dword [eax]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret