Function at 0x46abb0
Capabilities:
Create bits job

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46e8f6
mov eax, dword fs:[0]
push eax
sub esp, 0x10
mov eax, dword [0x4a0b70]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
add ecx, 8
call fcn.004051c0
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x14], 0
mov ecx, dword [ebp - 0x1c]
mov dword [ecx + 0x10], 0
mov edx, dword [ebp - 0x1c]
mov dword [edx], 0
mov eax, dword [ebp - 0x1c]
mov dword [eax + 4], 0
push 0x10
push 0
mov ecx, dword [ebp - 0x1c]
add ecx, 0x18
push ecx
call fcn.0042e7f0
add esp, 0xc
mov edx, dword [ebp - 0x1c]
mov dword [edx + 0xc], 0
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x1c]
add ecx, 8
call fcn.00401ec0
push 2
push 0
call dword [sym.imp.ole32.dll_CoInitializeEx]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx + 0xc], eax
push 0x645
mov ecx, 0x4a4b78
call fcn.004010e0
movzx edx, al
test edx, edx
jne 0x46ac6c
mov eax, dword [ebp - 0x1c]
cmp dword [eax + 0xc], 0
jge 0x46aca8
push str.Failed_to_connect_to_BITS___COM_threading_returned_an_error__CoInitializeEx_
lea ecx, [ebp - 0x10]
call fcn.00401ee0
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx + 0xc]
push edx
lea eax, [ebp - 0x10]
push eax
push 0x645
mov ecx, 0x4a4b78
call fcn.00401100
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call fcn.00405260
jmp 0x46adbb
push 0
push 0
push 0
push 3
push 2
push 0
push 0
push 0xffffffffffffffff
push 0
call dword [sym.imp.ole32.dll_CoInitializeSecurity]
mov ecx, dword [ebp - 0x1c]
mov dword [ecx + 0xc], eax
mov edx, dword [ebp - 0x1c]
cmp dword [edx + 0xc], 0
jge 0x46acdf
mov eax, dword [ebp - 0x1c]
cmp dword [eax + 0xc], 0x80010119
jne 0x46ad7e
mov ecx, dword [ebp - 0x1c]
push ecx
push 0x490db0
push 4
push 0
push 0x490da0
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov edx, dword [ebp - 0x1c]
mov dword [edx + 0xc], eax
push 0x578
mov ecx, 0x4a4b78
call fcn.004010e0
movzx eax, al
test eax, eax
jne 0x46ad1c
mov ecx, dword [ebp - 0x1c]
cmp dword [ecx + 0xc], 0
jge 0x46ad7c
mov edx, dword [ebp - 0x1c]
cmp dword [edx], 0
je 0x46ad3f
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
mov ecx, dword [ecx]
push eax
mov edx, dword [ecx + 8]
call edx
mov eax, dword [ebp - 0x1c]
mov dword [eax], 0
push 0x48d0fc
lea ecx, [ebp - 0x14]
call fcn.00401ee0
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx + 0xc]
push edx
lea eax, [ebp - 0x14]
push eax
push 0x578
mov ecx, 0x4a4b78
call fcn.00401100
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00405260
call dword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x46adbb
push str.Failed_to_connect_to_BITS__CoInitializeSecurity_
lea ecx, [ebp - 0x18]
call fcn.00401ee0
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx + 0xc]
push edx
lea eax, [ebp - 0x18]
push eax
push 0x646
mov ecx, 0x4a4b78
call fcn.00401100
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.00405260
call dword [sym.imp.ole32.dll_CoUninitialize]
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov esp, ebp
pop ebp
ret 4