Function at 0x43f9de
Capabilities:
Copy file
Delete file
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x10e68
call fcn.00442420
push ebx
push esi
mov esi, ecx
push edi
lea ecx, [ebp - 0x394]
call fcn.00440be2
lea ecx, [ebp - 0xe68]
call fcn.00440a68
push 1
pop ebx
push 0
mov dword [ebp - 0x18], ebx
push dword [esi + 4]
push dword [esi]
call fcn.00442654
add esp, 0xc
lea eax, [ebp - 0x49c]
mov ecx, esi
push eax
push dword [ebp + 8]
call fcn.0043fdbb
test eax, eax
je 0x43fa37
push 6
jmp 0x43fbbe
push dword [esi]
lea eax, [ebp - 1]
push ebx
push ebx
push eax
call fcn.00442751
push dword [esi]
lea eax, [ebp - 0xc]
push ebx
push 4
push eax
call fcn.00442751
push dword [esi]
mov edi, dword [ebp - 0xc]
lea eax, [ebp - 0xc]
xor edi, 0x45aa
push ebx
push 4
push eax
call fcn.00442751
push dword [esi]
lea eax, [ebp - 0xc]
push ebx
push 4
push eax
call fcn.00442751
mov eax, dword [ebp - 0xc]
add esp, 0x40
push dword [esi]
xor eax, 0xc3d2
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x20]
push ebx
push 4
push eax
call fcn.00442751
push dword [esi]
lea eax, [ebp - 0x24]
push ebx
push 4
push eax
call fcn.00442751
push dword [esi]
lea eax, [ebp - 0x28]
push ebx
push 4
push eax
call fcn.00442751
push dword [esi]
lea eax, [ebp - 0x2c]
push ebx
push 4
push eax
call fcn.00442751
add esp, 0x40
lea eax, [ebp - 0x134]
mov ecx, esi
push eax
call fcn.0043f9a8
lea eax, [ebp - 0x134]
push 0x456e8c
push eax
call fcn.0044273e
pop ecx
mov dword [ebp - 0x10], eax
test eax, eax
pop ecx
jne 0x43faef
push 9
jmp 0x43fbbe
mov eax, dword [esi + 8]
lea ecx, [ebp - 0xe68]
add eax, 0x22af
push eax
call fcn.00440a7c
and dword [ebp - 8], 0
test edi, edi
jle 0x43fb9e
mov eax, dword [ebp - 8]
add eax, 0x10000
cmp eax, edi
jle 0x43fb25
mov eax, edi
sub eax, dword [ebp - 8]
mov dword [ebp + 8], eax
jmp 0x43fb2f
mov dword [ebp + 8], 0x10000
mov eax, dword [ebp + 8]
push dword [esi]
add dword [ebp - 8], eax
push eax
lea eax, [ebp - 0x10e68]
push ebx
push eax
call fcn.00442751
and dword [ebp - 0x14], 0
add esp, 0x10
cmp dword [ebp + 8], 0
jle 0x43fb6d
lea ecx, [ebp - 0xe68]
call fcn.00440b96
mov ecx, dword [ebp - 0x14]
xor byte [ebp + ecx - 0x10e68], al
inc ecx
cmp ecx, dword [ebp + 8]
mov dword [ebp - 0x14], ecx
jl 0x43fb4f
push dword [ebp + 8]
lea eax, [ebp - 0x10e68]
lea ecx, [ebp - 0x18]
push eax
call fcn.004411af
push dword [ebp - 0x10]
lea eax, [ebp - 0x10e68]
push dword [ebp + 8]
push ebx
push eax
call fcn.004428d8
add esp, 0x10
cmp dword [ebp - 8], edi
jl 0x43fb0f
push dword [ebp - 0x10]
call fcn.0044244f
mov eax, dword [ebp - 0x1c]
pop ecx
cmp eax, dword [ebp - 0x18]
je 0x43fbc4
lea eax, [ebp - 0x134]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0xa
pop eax
jmp 0x43fc47
cmp byte [ebp - 1], bl
jne 0x43fc14
lea ecx, [ebp - 0x394]
call fcn.00440be2
and dword [ebp - 0x380], 0
and dword [ebp - 0x37c], 0
lea eax, [ebp - 0x134]
push eax
lea eax, [ebp - 0x370]
push eax
call fcn.00441de0
push dword [ebp + 0xc]
lea eax, [ebp - 0x26b]
push eax
call fcn.00441de0
add esp, 0x10
lea ecx, [ebp - 0x394]
call fcn.00440c0e
jmp 0x43fc26
push 0
lea eax, [ebp - 0x134]
push dword [ebp + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
lea eax, [ebp - 0x134]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea eax, [ebp - 0x2c]
mov ecx, esi
push eax
lea eax, [ebp - 0x24]
push eax
push dword [ebp + 0xc]
call fcn.0043fef7
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret 8