Function at 0x414b70
Capabilities:
Copy file

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5044db
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x80
push esi
push edi
sub esp, 0x18
mov dword [ebp - 0x18], edx
mov esi, esp
mov word [ebp - 0x13], 0x5c
mov edi, ecx
mov byte [ebp - 0x11], 0
xorps xmm0, xmm0
mov dword [ebp - 0x20], esp
lea ecx, [ebp - 0x13]
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edx, [ecx + 1]
mov dword [esi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x414bd5
sub ecx, edx
lea eax, [ebp - 0x13]
push ecx
push eax
mov ecx, esi
call fcn.004028a0
sub esp, 0x18
mov dword [ebp - 4], 0
mov edx, esp
mov ecx, edi
xorps xmm0, xmm0
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
lea esi, [ecx + 1]
mov dword [edx + 0x14], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x414c10
sub ecx, esi
push ecx
push edi
mov ecx, edx
call fcn.004028a0
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
call fcn.0040c490
add esp, 0x30
mov dword [ebp - 4], 1
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x2c]
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x414e66
lea eax, [eax + eax*2]
mov edx, 0xc
lea eax, [eax - 3]
lea eax, [esi + eax*8]
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x20], eax
call fcn.0040c7f0
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x13]
mov edx, dword [0x535bb4]
lea esi, [ecx + 1]
mov word [ebp - 0x13], 0x5c
mov byte [ebp - 0x11], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x414c90
mov eax, closesocket
sub ecx, esi
sub eax, edx
cmp eax, ecx
jb 0x414fa6
cmp dword [0x535bb8], 0x10
mov eax, 0x535ba4
push ecx
cmovae eax, dword [0x535ba4]
lea ecx, [ebp - 0x13]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0x8c]
call fcn.0046db90
push dword [ebp - 0x1c]
lea eax, [ebp - 0x8c]
mov byte [ebp - 4], 3
push eax
push dword [ebp - 0x20]
lea ecx, [ebp - 0x5c]
call fcn.0046d9a0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x5c]
push dword [ebp - 0x20]
call fcn.00465e90
mov dword [ebp - 0x34], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x44], xmm0
mov dword [ebp - 0x30], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x44], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x34], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x48]
cmp ecx, 0x10
jb 0x414d68
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x414d5e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414fab
push ecx
push edx
call fcn.004dd461
add esp, 8
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x414db5
mov edx, dword [ebp - 0x8c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x414dab
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414fab
push ecx
push edx
call fcn.004dd461
add esp, 8
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
jb 0x414ded
mov edx, dword [ebp - 0x74]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x414de3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414fab
push ecx
push edx
call fcn.004dd461
add esp, 8
cmp dword [ebp - 0x30], 0x10
lea eax, [ebp - 0x44]
push 0
cmovae eax, dword [ebp - 0x44]
push eax
push edi
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
jne 0x414e95
cmp dword [ebp - 0x30], 0x10
lea edx, [ebp - 0x44]
mov ecx, edi
cmovae edx, dword [ebp - 0x44]
call fcn.004149e0
test al, al
jne 0x414e95
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x30]
cmp ecx, 0x10
jb 0x414e66
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x414e5c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414fb6
push ecx
push edx
call fcn.004dd461
add esp, 8
mov edx, dword [ebp - 0x18]
push ecx
push 6
mov ecx, edi
call fcn.004dace0
mov esi, eax
add esp, 8
lea ecx, [ebp - 0x2c]
call fcn.00468250
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push 0x538048
mov dword [ebp - 0x20], 0x538048
call fcn.004dc762
add esp, 4
test eax, eax
jne 0x414fb0
mov edi, dword [ebp - 0x18]
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 9
mov edx, edi
cmp dword [ebp - 0x30], 0x10
cmovae ecx, dword [ebp - 0x44]
push ecx
push 1
call fcn.004dace0
add esp, 8
lea ecx, [ebp - 0x90]
mov esi, eax
lea eax, [ebp - 0x44]
push eax
call fcn.00466110
mov edx, dword [edi]
mov dword [ebp - 0x78], edx
mov byte [ebp - 4], 0xa
mov eax, dword [0x538128]
cmp eax, dword [0x53812c]
je 0x414f23
movups xmm0, xmmword [ebp - 0x90]
mov ecx, 0xf
mov byte [ebp - 0x90], 0
movups xmmword [eax], xmm0
movq xmm0, qword [ebp - 0x80]
movq qword [eax + 0x10], xmm0
mov dword [eax + 0x18], edx
add dword [0x538128], 0x1c
jmp 0x414f33
lea ecx, [ebp - 0x90]
push ecx
push eax
call fcn.004726d0
mov ecx, dword [ebp - 0x7c]
cmp ecx, 0x10
jb 0x414f63
mov edx, dword [ebp - 0x90]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x414f59
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414fb6
push ecx
push edx
call fcn.004dd461
add esp, 8
push 0x538048
call fcn.004dc773
mov ecx, dword [ebp - 0x30]
add esp, 4
cmp ecx, 0x10
jb 0x414e78
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x414f9a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414fb6
push ecx
push edx
call fcn.004dd461
jmp 0x414e75
call fcn.00402060
call fcn.004e2700
push eax
call fcn.004dc40b
call fcn.004e2700
int3