Function at 0x4dacd0
Capabilities:
Copy file
Create directory

Disassembly:
push 0xffffffffffffffff
push 0x5a2c58
mov eax, dword fs:[0]
push eax
sub esp, 0x18
push ebx
push ebp
push esi
push edi
mov eax, dword [0x6336a0]
xor eax, esp
push eax
lea eax, [esp + 0x2c]
mov dword fs:[0], eax
mov ebp, dword [esp + 0x44]
mov eax, dword [0x63c684]
push eax
mov esi, eax
call fcn.0044adc0
add esp, 4
test eax, eax
jne 0x4dad2a
push eax
push esi
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x4dad2a
push 0x63c270
mov ecx, 0x63c684
call fcn.00402330
call fcn.00555692
xor ecx, ecx
xor esi, esi
cmp eax, esi
setne cl
cmp ecx, esi
jne 0x4dad46
push 0x80004005
call fcn.00401f90
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x20], eax
mov dword [esp + 0x34], esi
call fcn.00555692
xor ecx, ecx
cmp eax, esi
setne cl
cmp ecx, esi
jne 0x4dad74
push 0x80004005
call fcn.00401f90
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x1c], eax
mov byte [esp + 0x34], 1
call fcn.00555692
xor ecx, ecx
cmp eax, esi
setne cl
cmp ecx, esi
jne 0x4dada3
push 0x80004005
call fcn.00401f90
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x18], eax
mov byte [esp + 0x34], 2
mov bl, 3
lea ebx, [ebx]
test esi, esi
push ebp
jne 0x4dadde
mov ecx, dword [esp + 0x44]
push ecx
lea edx, [esp + 0x20]
push str._s_s
push edx
call fcn.00404650
add esp, 0x10
jmp 0x4dadf6
mov eax, dword [esp + 0x44]
push esi
push eax
lea ecx, [esp + 0x24]
push str._s_d_s
push ecx
call fcn.00404650
add esp, 0x14
push 0x5d616c
lea edx, [esp + 0x2c]
push 0x63c684
push edx
call fcn.00401ba0
add esp, 0xc
lea ecx, [esp + 0x18]
push ecx
push eax
lea edx, [esp + 0x2c]
push edx
mov byte [esp + 0x40], bl
call fcn.00401ae0
add esp, 0xc
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x38], 4
call fcn.00402330
mov byte [esp + 0x34], bl
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4dae57
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x34], 2
mov eax, dword [esp + 0x28]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4dae7c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edi, dword [esp + 0x20]
push edi
call fcn.0044adc0
add esp, 4
test eax, eax
je 0x4dae95
add esi, 1
jmp 0x4dadc0
mov ecx, dword [esp + 0x3c]
push 1
push edi
push ecx
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
mov esi, dword [esp + 0x18]
je 0x4daeda
mov edx, dword [0x63c684]
push edx
push esi
lea eax, [esp + 0x24]
push 0x5fc56c
push eax
call fcn.00404650
mov ecx, dword [0x63c450]
mov eax, dword [esp + 0x2c]
add esp, 0x10
add ecx, 0x71f4
call fcn.004a1150
lea eax, [esi - 0x10]
mov byte [esp + 0x34], 1
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4daefb
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x34], 0
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4daf20
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [edi - 0x10]
mov dword [esp + 0x34], 0xffffffff
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4daf44
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [esp + 0x2c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret