Function at 0x45d7d0
Capabilities:
Copy file

Disassembly:
push 0x118
mov eax, 0x471eca
call fcn.0044f666
mov dword [ebp - 0xdc], ecx
mov edi, dword [ebp + 8]
lea ecx, [ebp - 0x124]
mov esi, dword [ebp + 0xc]
or ebx, 0xffffffff
call fcn.0046cf14
and dword [ebp - 4], 0
lea ecx, [ebp - 0xf8]
push 0x48a9dc
call fcn.0040651c
push 0x48a9dc
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 1
call fcn.0040651c
push 0x48a9dc
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 2
call fcn.0040651c
push 0x48a9dc
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 3
call fcn.0040651c
push esi
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 4
call fcn.0040651c
push esi
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 5
call fcn.0040651c
lea eax, [ebp - 0xe0]
mov byte [ebp - 4], 6
push eax
call fcn.0045fddc
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 7
call fcn.0046d5a0
push str.updateksbrowser_
lea ecx, [ebp - 0xe0]
call fcn.00406715
push 0x5c
push 0x2f
lea ecx, [ebp - 0xec]
call fcn.00409b42
push 0x2f
push 0x5c
lea ecx, [ebp - 0xe8]
call fcn.00409b42
push edi
lea ecx, [ebp - 0xf8]
call fcn.004064f3
lea ecx, [ebp - 0xf8]
call fcn.00462345
push 0
push edi
call fcn.0043a7bc
pop ecx
pop ecx
test eax, eax
jne 0x45daec
push edi
lea ecx, [ebp - 0x124]
call fcn.0046cfb0
test eax, eax
je 0x45daee
push 0xc8
lea eax, [ebp - 0xd8]
push 0
push eax
call fcn.0042ac90
pop ecx
pop ecx
push 0x48a360
push 0x48a364
lea ecx, [ebp - 0x124]
call fcn.0046d021
mov dword [ebp - 0x10c], eax
test eax, eax
jne 0x45d98e
push edi
lea ecx, [ebp - 0xdc]
call fcn.0040651c
push str..old.txt
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 8
call fcn.00406715
push 0
push dword [ebp - 0xdc]
push edi
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x45d979
call dword [sym.imp.KERNEL32.dll_GetLastError]
push edi
push 0
push str.KChannel::RecursiveBackupIndex_fail__error:_d__path:_ws
push 0x49db70
mov ebx, eax
call fcn.0046ad90
add esp, 0x10
jmp 0x45d97b
xor ebx, ebx
mov ecx, dword [ebp - 0xdc]
lea ecx, [ecx - 0x10]
call fcn.0040630c
jmp 0x45daee
xor edi, edi
test eax, eax
je 0x45daec
push edi
lea eax, [ebp - 0xf0]
push 0x48a370
push eax
call fcn.00406873
add esp, 0xc
lea eax, [ebp - 0xd8]
push 0x64
push eax
push ecx
push dword [ebp - 0xf0]
lea ecx, [ebp - 0x124]
push 0x48a364
call fcn.0046d0cb
test eax, eax
je 0x45daec
lea eax, [ebp - 0xd8]
push str.oem_
push eax
call fcn.004399d2
pop ecx
pop ecx
test eax, eax
je 0x45dadf
lea eax, [ebp - 0xd8]
push eax
lea ecx, [ebp - 0xf4]
call fcn.004064f3
lea eax, [ebp - 0xd8]
push eax
lea ecx, [ebp - 0xe4]
call fcn.004064f3
push 0x5c
push 0x2f
lea ecx, [ebp - 0xe4]
call fcn.00409b42
lea eax, [ebp - 0xf4]
push eax
lea edx, [ebp - 0xe8]
lea ecx, [ebp - 0x108]
call fcn.0040404b
mov esi, eax
lea eax, [ebp - 0xec]
mov byte [ebp - 4], 9
push eax
lea edx, [ebp - 0xe0]
lea ecx, [ebp - 0x104]
call fcn.0040404b
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0xa
push ecx
mov edx, eax
lea ecx, [ebp - 0x100]
call fcn.0040404b
push str.index.txt
mov edx, eax
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xfc]
call fcn.00406651
add esp, 0x10
mov byte [ebp - 4], 0xc
push dword [esi]
mov ecx, dword [ebp - 0xdc]
push dword [eax]
call fcn.0045d7d0
mov ecx, dword [ebp - 0xfc]
mov esi, eax
add ecx, 0xfffffff0
call fcn.0040630c
mov ecx, dword [ebp - 0x100]
add ecx, 0xfffffff0
call fcn.0040630c
mov ecx, dword [ebp - 0x104]
lea ecx, [ecx - 0x10]
call fcn.0040630c
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x108]
add ecx, 0xfffffff0
call fcn.0040630c
test esi, esi
jne 0x45daee
inc edi
cmp edi, dword [ebp - 0x10c]
jb 0x45d998
xor ebx, ebx
mov ecx, dword [ebp - 0xe0]
lea ecx, [ecx - 0x10]
call fcn.0040630c
mov ecx, dword [ebp - 0xe8]
lea ecx, [ecx - 0x10]
call fcn.0040630c
mov ecx, dword [ebp - 0xec]
lea ecx, [ecx - 0x10]
call fcn.0040630c
mov ecx, dword [ebp - 0xf0]
lea ecx, [ecx - 0x10]
call fcn.0040630c
mov ecx, dword [ebp - 0xf4]
lea ecx, [ecx - 0x10]
call fcn.0040630c
mov ecx, dword [ebp - 0xe4]
lea ecx, [ecx - 0x10]
call fcn.0040630c
mov ecx, dword [ebp - 0xf8]
lea ecx, [ecx - 0x10]
call fcn.0040630c
lea ecx, [ebp - 0x124]
call fcn.0046cf59
mov eax, ebx
call fcn.0044f621
ret 8