Function at 0x410755
Capabilities:
Create bits job

Disassembly:
mov eax, 0x41f36b
call fcn.0041384c
sub esp, 0x434
push ebx
push esi
push edi
call dword [0x428060]
xor esi, esi
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], esi
push esi
push esi
push esi
push 3
push 2
push esi
push esi
push 0xffffffffffffffff
push esi
mov dword [ebp - 4], esi
call dword [sym.imp.ole32.dll_CoInitializeSecurity]
lea eax, [ebp - 0x18]
push eax
push 0x424028
push 4
push esi
push 0x424048
call dword [sym.imp.ole32.dll_CoCreateInstance]
cmp eax, esi
jge 0x4107cc
push str.FAILED_initialization__BITS_might_be_disabled
call fcn.0040c059
mov eax, dword [ebp - 0x18]
or dword [ebp - 4], 0xffffffff
cmp eax, esi
pop ecx
je 0x4107c2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, 0x80070200
jmp 0x410aff
mov dword [ebp - 0x10], esi
lea eax, [ebp - 0x40]
push eax
mov byte [ebp - 4], 1
call fcn.0040e986
cmp eax, esi
mov edi, dword [ebp + 8]
pop ecx
jl 0x4107fd
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
lea edx, [ebp - 0x10]
push edx
lea edx, [ebp - 0x40]
push edx
push eax
call dword [ecx + 0x10]
cmp eax, esi
jge 0x410aab
cmp dword [edi + 0x4c], esi
je 0x410825
lea eax, [ebp - 0x440]
push 0x400
push eax
call fcn.0040e778
test eax, eax
pop ecx
pop ecx
je 0x410820
xor ebx, ebx
jmp 0x410ad0
mov eax, 0x80004005
cmp eax, esi
jge 0x410aab
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
lea edx, [ebp - 0x10]
push edx
lea edx, [ebp - 0x40]
push edx
push esi
push str.MyJob
push eax
call dword [ecx + 0xc]
mov ebx, eax
cmp ebx, esi
jl 0x410ad0
lea eax, [ebp - 0x40]
push eax
call fcn.0040ea63
mov eax, dword [ebp - 0x10]
pop ecx
mov ecx, dword [eax]
push esi
push eax
call dword [ecx + 0x54]
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
push 0x423660
push eax
call dword [ecx + 0x44]
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
push esi
push esi
push esi
push eax
call dword [ecx + 0x80]
mov ebx, eax
cmp ebx, esi
jl 0x410ad0
lea eax, [edi + 0x20]
push eax
push dword [edi + 8]
lea eax, [ebp - 0x440]
push 0x423678
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
cmp dword [edi + 0x48], 1
jne 0x410925
mov eax, dword [edi + 0x14]
cmp eax, esi
mov ebx, dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [ebp + 8], eax
jne 0x4108c0
mov dword [ebp + 8], esi
jmp 0x4108e6
push eax
call ebx
mov esi, eax
inc esi
lea eax, [esi + esi]
add eax, 3
and eax, 0xfffffffc
call fcn.00413970
mov eax, esp
push dword [ebp - 0x14]
push esi
push dword [ebp + 8]
push eax
call fcn.004044b6
mov dword [ebp + 8], eax
lea eax, [ebp - 0x440]
push eax
call ebx
mov esi, eax
inc esi
lea eax, [esi + esi]
add eax, 3
and eax, 0xfffffffc
call fcn.00413970
mov eax, esp
push dword [ebp - 0x14]
lea ecx, [ebp - 0x440]
push esi
push ecx
push eax
call fcn.004044b6
push dword [ebp + 8]
mov ecx, dword [ebp - 0x10]
mov edx, dword [ecx]
push eax
push ecx
call dword [edx + 0x10]
jmp 0x410aa3
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
lea eax, [ebp - 0x440]
push eax
call esi
mov ebx, eax
inc ebx
lea eax, [ebx + ebx]
add eax, 3
and eax, 0xfffffffc
call fcn.00413970
mov eax, esp
push dword [ebp - 0x14]
lea ecx, [ebp - 0x440]
push ebx
push ecx
push eax
call fcn.004044b6
mov dword [ebp - 0x30], eax
mov eax, dword [edi + 0x14]
test eax, eax
mov dword [ebp + 8], eax
jne 0x41096a
and dword [ebp - 0x2c], eax
jmp 0x410990
push eax
call esi
mov ebx, eax
inc ebx
lea eax, [ebx + ebx]
add eax, 3
and eax, 0xfffffffc
call fcn.00413970
mov eax, esp
push dword [ebp - 0x14]
push ebx
push dword [ebp + 8]
push eax
call fcn.004044b6
mov dword [ebp - 0x2c], eax
lea eax, [edi + 0x20]
push eax
push dword [edi + 0xc]
lea eax, [ebp - 0x440]
push 0x423680
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebp - 0x440]
push eax
call esi
mov ebx, eax
inc ebx
lea eax, [ebx + ebx]
add eax, 3
and eax, 0xfffffffc
call fcn.00413970
mov eax, esp
push dword [ebp - 0x14]
lea ecx, [ebp - 0x440]
push ebx
push ecx
push eax
call fcn.004044b6
mov dword [ebp - 0x28], eax
mov eax, dword [edi + 0x18]
test eax, eax
mov dword [ebp + 8], eax
jne 0x4109eb
and dword [ebp - 0x24], eax
jmp 0x410a11
push eax
call esi
mov ebx, eax
inc ebx
lea eax, [ebx + ebx]
add eax, 3
and eax, 0xfffffffc
call fcn.00413970
mov eax, esp
push dword [ebp - 0x14]
push ebx
push dword [ebp + 8]
push eax
call fcn.004044b6
mov dword [ebp - 0x24], eax
cmp dword [edi + 0x48], 2
jbe 0x410a93
lea eax, [edi + 0x20]
push eax
push dword [edi + 0x10]
lea eax, [ebp - 0x440]
push str._s_s
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebp - 0x440]
push eax
call esi
mov ebx, eax
inc ebx
lea eax, [ebx + ebx]
add eax, 3
and eax, 0xfffffffc
call fcn.00413970
mov eax, esp
push dword [ebp - 0x14]
lea ecx, [ebp - 0x440]
push ebx
push ecx
push eax
call fcn.004044b6
mov ebx, dword [edi + 0x1c]
test ebx, ebx
mov dword [ebp - 0x20], eax
jne 0x410a6f
and dword [ebp - 0x1c], ebx
jmp 0x410a93
push ebx
call esi
mov esi, eax
inc esi
lea eax, [esi + esi]
add eax, 3
and eax, 0xfffffffc
call fcn.00413970
mov eax, esp
push dword [ebp - 0x14]
push esi
push ebx
push eax
call fcn.004044b6
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
lea edx, [ebp - 0x30]
push edx
push dword [edi + 0x48]
push eax
call dword [ecx + 0xc]
mov ebx, eax
xor esi, esi
test ebx, ebx
jl 0x410ad0
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x1c]
mov ebx, eax
cmp ebx, esi
jge 0x410ac5
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
jmp 0x410ad0
push dword [ebp - 0x10]
mov eax, dword [edi]
push edi
call dword [eax + 0x10]
mov ebx, eax
push 0x424058
call fcn.0040ea63
mov eax, dword [ebp - 0x10]
cmp eax, esi
pop ecx
mov byte [ebp - 4], 0
je 0x410aec
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x18]
or dword [ebp - 4], 0xffffffff
cmp eax, esi
je 0x410afd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, ebx
lea esp, [ebp - 0x44c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret 4