Function at 0x48f8d0
Capabilities:
Link many functions at runtime

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x4f4b3b
push eax
mov eax, 0x1044
mov dword fs:[0], esp
call fcn.004ded50
push ebx
push ebp
push esi
mov esi, ecx
xor ebp, ebp
push edi
cmp dword [esi + 0x18], ebp
je 0x48f901
call fcn.0048f860
mov ecx, 0x104
xor eax, eax
lea edi, [esp + 0x10]
push 0x208
rep stosd dword es:[edi], eax
mov ecx, 0x104
lea edi, [esp + 0x424]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x424]
push eax
push ebp
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea ecx, [esp + 0x420]
push 0x5c
push ecx
call fcn.004dec29
lea edx, [esp + 0x428]
mov word [eax + 2], bp
push str.NetAgent.dll
push edx
lea eax, [esp + 0x20]
push 0x50de74
push eax
call fcn.004deb4b
mov ebx, dword [sym.imp.KERNEL32.dll_LoadLibraryW]
add esp, 0x18
lea ecx, [esp + 0x10]
push ecx
call ebx
cmp eax, ebp
mov dword [esi + 0x18], eax
jne 0x48fa03
mov ecx, 0x104
xor eax, eax
lea edi, [esp + 0x830]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0xc40]
call fcn.004c4430
mov eax, dword [str.Insertpath]
mov ecx, dword [str.Insert]
lea edx, [esp + 0x830]
push 0x208
push edx
push eax
push ecx
lea ecx, [esp + 0xc50]
mov dword [esp + 0x106c], ebp
call fcn.004c44c0
lea edx, [esp + 0x830]
push str.NetAgent.dll
push edx
lea eax, [esp + 0x18]
push 0x50de74
push eax
call fcn.004deb4b
add esp, 0x10
lea ecx, [esp + 0x10]
push ecx
call ebx
lea ecx, [esp + 0xc40]
mov dword [esi + 0x18], eax
mov dword [esp + 0x105c], 0xffffffff
call fcn.004c44b0
mov eax, dword [esi + 0x18]
cmp eax, ebp
je 0x48fb42
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.CreateAndRunAgent
push eax
call edi
mov edx, dword [esi + 0x18]
push str.Seek
push edx
mov dword [esi], eax
call edi
mov dword [esi + 4], eax
mov eax, dword [esi + 0x18]
push str.GetFileLen
push eax
call edi
mov ecx, dword [esi + 0x18]
push str.GetDownloadLen
push ecx
mov dword [esi + 8], eax
call edi
mov edx, dword [esi + 0x18]
push str.Terminate
push edx
mov dword [esi + 0xc], eax
call edi
cmp eax, ebp
mov dword [esi + 0x10], eax
jne 0x48fa68
mov eax, dword [esi + 0x18]
push str.Terminal
push eax
call edi
mov dword [esi + 0x10], eax
cmp dword [esi], ebp
je 0x48fb42
mov ebp, dword [esp + 0x1068]
push ebp
call fcn.004debba
inc eax
lea ebx, [eax + eax]
push ebx
call fcn.004de48f
mov ecx, ebx
mov edi, eax
mov edx, ecx
xor eax, eax
shr ecx, 2
mov dword [esi + 0x1c], edi
push ebp
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [esi + 0x1c]
push eax
call fcn.004df3e0
mov ecx, dword [esp + 0x1074]
push ecx
call fcn.004debba
lea ebp, [eax + eax + 2]
push ebp
call fcn.004de48f
mov ecx, ebp
mov ebx, eax
mov edx, ecx
xor eax, eax
mov edi, ebx
add esp, 0x18
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x1064]
xor edi, edi
push edi
push edi
push ebp
push ebx
push 0xffffffffffffffff
push eax
push edi
push edi
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov ecx, dword [esp + 0x106c]
mov edx, dword [esp + 0x1068]
push ecx
push edx
push ebx
call dword [esi]
add esp, 0xc
cmp ebx, edi
mov dword [esi + 0x14], eax
je 0x48fb16
push ebx
call fcn.004de3a6
add esp, 4
cmp dword [esi + 0x14], edi
jge 0x48fb42
mov eax, dword [esi + 0x18]
mov dword [esi + 0x14], 0xffffffff
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [esi], edi
mov dword [esi + 4], edi
mov dword [esi + 8], edi
mov dword [esi + 0xc], edi
mov dword [esi + 0x10], edi
mov dword [esi + 0x18], edi
or eax, 0xffffffff
jmp 0x48fb44
xor eax, eax
mov ecx, dword [esp + 0x1054]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x1050
ret 0xc