Function at 0x100ff38
Capabilities:
Write file on windows

Disassembly:
push 0x2c
mov eax, 0x1018880
call fcn.01001b63
mov edi, ecx
mov dword [ebp - 0x28], edi
mov eax, dword [ebp + 8]
xor ecx, ecx
mov esi, 0x8000ffff
cmp eax, ecx
je 0x1010df1
cmp word [eax], cx
je 0x1010df1
cmp dword [ebp + 0x10], ecx
jne 0x100ff72
cmp dword [edi + 0x30], ecx
je 0x1010df1
push dword [ebp + 8]
and dword [ebp - 4], 0
mov dword [ebp - 0x18], ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov ebx, eax
add ebx, 0xa
xor ecx, ecx
push 2
pop edx
mov eax, ebx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0100220e
pop ecx
mov dword [ebp - 0x18], eax
test eax, eax
jne 0x100ffaf
mov esi, 0x8007000e
jmp 0x10101d0
push dword [ebp + 8]
push ebx
push eax
call fcn.0100603f
mov esi, eax
test esi, esi
jl 0x10101d0
push 0x1010e98
push ebx
push dword [ebp - 0x18]
call fcn.01005351
mov esi, eax
test esi, esi
jl 0x10101d0
push dword [ebp - 0x18]
mov ecx, edi
call fcn.0100ed16
mov esi, eax
test esi, esi
jl 0x10101d0
and dword [ebp - 0x24], 0
mov ebx, 0x1010e94
push ebx
mov esi, 0x80004005
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push 0
lea ecx, [ebp - 0x24]
push ecx
mov dword [ebp - 0x2c], eax
push dword [ebp - 0x2c]
mov eax, dword [edi + 0x44]
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x10101d0
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x24]
jne 0x10101d0
xor esi, esi
mov dword [ebp - 0x38], 0x100892c
mov dword [ebp - 0x34], esi
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 1
call fcn.010129a2
push esi
lea ecx, [ebp - 0x38]
call fcn.01012b03
push 0x1008980
lea ecx, [ebp - 0x38]
call fcn.01012b03
push esi
lea ecx, [ebp - 0x38]
call fcn.01012b03
push 0x1008960
lea ecx, [ebp - 0x38]
call fcn.01012b03
push dword [ebp + 8]
lea ecx, [ebp - 0x38]
call fcn.01012b03
push esi
lea ecx, [ebp - 0x38]
call fcn.01012b03
push 0x100894c
lea ecx, [ebp - 0x38]
call fcn.01012b03
push esi
lea ecx, [ebp - 0x38]
call fcn.01012b03
push 0x1010e08
lea ecx, [ebp - 0x38]
call fcn.01012b03
push esi
lea ecx, [ebp - 0x38]
call fcn.01012b03
lea ecx, [ebp - 0x38]
call fcn.01012aaf
push esi
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 2
call fcn.01012c37
push dword [0x101fac4]
lea ecx, [ebp - 0x38]
call fcn.01012c37
push dword [0x101fab8]
lea ecx, [ebp - 0x38]
call fcn.01012c37
push dword [ebp + 8]
lea ecx, [ebp - 0x38]
call fcn.01012c37
push esi
lea ecx, [ebp - 0x38]
call fcn.01012c37
push dword [0x101fabc]
lea ecx, [ebp - 0x38]
call fcn.01012c37
push dword [ebp + 8]
lea ecx, [ebp - 0x38]
call fcn.01012c37
push 0x1008944
lea ecx, [ebp - 0x38]
call fcn.01012c37
push esi
lea ecx, [ebp - 0x38]
call fcn.01012c37
push esi
lea ecx, [ebp - 0x38]
call fcn.01012c37
push dword [0x101facc]
lea ecx, [ebp - 0x38]
call fcn.01012c37
xor ebx, ebx
cmp ebx, dword [edi + 0x3c]
jae 0x1010173
push dword [edi + ebx*4 + 0x34]
mov ecx, edi
call fcn.0100fa56
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x101016b
push eax
lea ecx, [ebp - 0x38]
call fcn.01012c37
push dword [ebp - 0x2c]
call fcn.0100b675
pop ecx
jmp 0x1010170
mov esi, 0x8007000e
inc ebx
jmp 0x1010140
push 0
lea ecx, [ebp - 0x38]
call fcn.01012c37
mov dword [ebp - 4], 1
jmp 0x10101a0
test esi, esi
jl 0x10101c0
push dword [ebp - 0x34]
mov ecx, edi
call fcn.0100ec9a
mov esi, eax
test esi, esi
jl 0x10101c0
push dword [ebp + 0xc]
mov ecx, edi
call fcn.0100fbbb
mov esi, eax
push dword [ebp - 0x34]
mov dword [ebp - 0x38], 0x100892c
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
or dword [ebp - 4], 0xffffffff
jmp 0x10101ed
xor ebx, ebx
inc ebx
test esi, esi
jl 0x10103f7
xor eax, eax
cmp dword [edi + 0x3c], 2
jne 0x1010347
call fcn.0100be25
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x1010340
push dword [edi + 0x34]
mov ecx, edi
push dword [0x101fadc]
call fcn.0100fb31
mov dword [ebp - 0x24], eax
test eax, eax
je 0x1010330
push ebx
push eax
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010335
push ebx
push dword [0x101fad4]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010335
push ebx
push dword [0x101fac0]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010335
push 0xcc
push dword [ebp - 0x2c]
call fcn.01009c68
mov dword [ebp - 0x20], eax
test eax, eax
je 0x10102b0
push ebx
push eax
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10102a5
push ebx
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
push dword [ebp - 0x20]
call fcn.0100b675
pop ecx
jmp 0x10102b5
mov esi, 0x8007000e
test esi, esi
jl 0x1010335
push ebx
push dword [ebp - 0x24]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010335
push ebx
push dword [0x101fad8]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010335
push ebx
push dword [0x101fac0]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010335
push 0xcf
push dword [ebp - 0x2c]
call fcn.01009c68
mov dword [ebp - 0x20], eax
test eax, eax
je 0x1010330
push ebx
push eax
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010325
push ebx
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
push dword [ebp - 0x20]
call fcn.0100b675
pop ecx
jmp 0x1010335
mov esi, 0x8007000e
push dword [ebp - 0x2c]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x1010345
mov esi, 0x80004005
mov eax, ebx
test esi, esi
jl 0x10103f7
push dword [edi + eax*4 + 0x34]
mov ecx, edi
push dword [0x101fadc]
call fcn.0100fb31
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x10103de
push ebx
push eax
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10103d3
push ebx
push dword [0x101fae8]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10103d3
push ebx
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10103d3
push ebx
push dword [ebp - 0x2c]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10103d3
push ebx
push dword [0x101faf4]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10103d3
push ebx
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
push dword [ebp - 0x2c]
call fcn.0100b675
pop ecx
jmp 0x10103e3
mov esi, 0x8007000e
test esi, esi
jl 0x10103f7
push ebx
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
xor eax, eax
cmp esi, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x34], eax
jl 0x1010dd1
cmp dword [ebp + 0x10], 0xffffffff
je 0x101064a
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
cmp eax, dword [edi + 0x30]
jae 0x101064a
test esi, esi
jl 0x1010dd1
imul eax, eax, 0x18
add eax, edi
cmp dword [eax + 0x14], 0
je 0x101063f
mov eax, dword [eax + 0x10]
mov ebx, dword [eax]
mov dword [ebp - 4], 5
mov dword [ebp - 0x2c], ebx
mov eax, dword [ebp - 0x20]
imul eax, eax, 0x18
cmp ebx, dword [eax + edi + 0x10]
je 0x101063b
test esi, esi
jl 0x101063b
mov eax, dword [ebx + 0x10]
add eax, 8
mov eax, dword [eax + 8]
and dword [ebp - 0x14], 0
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x14]
cmp eax, dword [edi + 0x3c]
jae 0x10105db
test esi, esi
jl 0x10105f0
cmp eax, dword [ebp - 0x30]
jae 0x10105db
mov eax, dword [ebx + 0x10]
push dword [ebp - 0x1c]
mov eax, dword [eax + 4]
push eax
mov ecx, edi
call fcn.0100eb60
mov esi, eax
test esi, esi
je 0x10105ce
mov eax, dword [ebp - 0x14]
push dword [edi + eax*4 + 0x34]
mov ecx, edi
push esi
call fcn.0100fb31
push esi
mov dword [ebp - 0x24], eax
call fcn.0100b675
cmp dword [ebp - 0x24], 0
pop ecx
je 0x10105ce
push 1
push dword [ebp - 0x24]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10105c3
push 1
push dword [0x101fad4]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10105c3
push 1
push dword [0x101fac0]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10105c3
mov eax, dword [ebx + 0x10]
mov ecx, dword [ebp - 0x14]
add eax, 8
mov eax, dword [eax + 4]
shl ecx, 2
add eax, ecx
mov eax, dword [eax]
mov eax, dword [eax + 4]
push 1
push eax
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10105c3
push 1
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10105c3
push 1
push dword [ebp - 0x24]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10105c3
push 1
push dword [0x101fad8]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10105c3
push 1
push dword [0x101fac0]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10105c3
mov eax, dword [ebx + 0x10]
mov ecx, dword [ebp - 0x14]
add eax, 8
mov eax, dword [eax + 4]
shl ecx, 2
add eax, ecx
mov eax, dword [eax]
mov eax, dword [eax + 8]
push 1
push eax
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10105c3
push 1
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
push dword [ebp - 0x24]
call fcn.0100b675
pop ecx
jmp 0x10105d3
mov esi, 0x8007000e
inc dword [ebp - 0x14]
jmp 0x101046e
test esi, esi
jl 0x10105f0
push 1
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
cmp dword [ebp + 0xc], 0
je 0x101060f
test esi, esi
jl 0x101060f
push 0xbb8
push 0xa
push 0x64
push 0x3e8
push 3
call sub.wbemcomn.dll_long_int___stdcall_Throttle_unsigned_long_int__unsigned_long_int__unsigned_long_int__unsigned_long_int__unsigned_long_int_
lea ecx, [ebp - 0x2c]
call fcn.0100c3d1
inc dword [ebp - 0x1c]
mov ebx, dword [ebp - 0x2c]
jmp 0x1010446
or dword [ebp - 4], 0xffffffff
inc dword [ebp - 0x20]
xor ebx, ebx
inc ebx
jmp 0x1010414
test esi, esi
jl 0x1010dd1
xor eax, eax
cmp dword [edi + 0x3c], 2
jne 0x10108f2
call fcn.0100be25
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x10108eb
push dword [edi + 0x34]
mov ecx, edi
push dword [0x101fae0]
call fcn.0100fb31
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x101079a
push ebx
push eax
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10108e0
push ebx
push dword [0x101fad4]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10108e0
push ebx
push dword [0x101fac0]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10108e0
push 0xcd
push dword [ebp - 0x1c]
call fcn.01009c68
mov dword [ebp - 0x20], eax
test eax, eax
je 0x101070a
push ebx
push eax
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10106ff
push ebx
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
push dword [ebp - 0x20]
call fcn.0100b675
pop ecx
jmp 0x101070f
mov esi, 0x8007000e
test esi, esi
jl 0x10108e0
push ebx
push dword [ebp - 0x2c]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10108e0
push ebx
push dword [0x101fad8]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10108e0
push ebx
push dword [0x101fac0]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10108e0
push 0xd0
push dword [ebp - 0x1c]
call fcn.01009c68
mov dword [ebp - 0x20], eax
test eax, eax
je 0x101079a
push ebx
push eax
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x101078f
push ebx
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
push dword [ebp - 0x20]
call fcn.0100b675
pop ecx
jmp 0x101079f
mov esi, 0x8007000e
test esi, esi
jl 0x10108e0
push ebx
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10108e0
push dword [edi + 0x34]
mov ecx, edi
push dword [0x101fae4]
call fcn.0100fb31
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x10108db
push ebx
push eax
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10108e0
push ebx
push dword [0x101fad4]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10108e0
push ebx
push dword [0x101fac0]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10108e0
push 0xce
push dword [ebp - 0x1c]
call fcn.01009c68
mov dword [ebp - 0x20], eax
test eax, eax
je 0x101085b
push ebx
push eax
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010850
push ebx
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
push dword [ebp - 0x20]
call fcn.0100b675
pop ecx
jmp 0x1010860
mov esi, 0x8007000e
test esi, esi
jl 0x10108e0
push ebx
push dword [ebp - 0x2c]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10108e0
push ebx
push dword [0x101fad8]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10108e0
push ebx
push dword [0x101fac0]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10108e0
push 0xd1
push dword [ebp - 0x1c]
call fcn.01009c68
mov dword [ebp - 0x20], eax
test eax, eax
je 0x10108db
push ebx
push eax
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x10108d0
push ebx
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
push dword [ebp - 0x20]
call fcn.0100b675
pop ecx
jmp 0x10108e0
mov esi, 0x8007000e
push dword [ebp - 0x1c]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x10108f0
mov esi, 0x80004005
mov eax, ebx
test esi, esi
jl 0x1010dd1
lea eax, [edi + eax*4 + 0x34]
push dword [eax]
mov ecx, edi
push dword [0x101fae0]
mov dword [ebp - 0x30], eax
call fcn.0100fb31
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x101097a
push ebx
push eax
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x101096f
push ebx
push dword [0x101faec]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x101096f
push ebx
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x101096f
push ebx
push dword [ebp - 0x2c]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x101096f
push ebx
push dword [0x101faf8]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
push dword [ebp - 0x2c]
call fcn.0100b675
pop ecx
jmp 0x101097f
mov esi, 0x8007000e
test esi, esi
jl 0x1010dd1
push ebx
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010dd1
mov eax, dword [ebp - 0x30]
push dword [eax]
mov ecx, edi
push dword [0x101fae4]
call fcn.0100fb31
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x1010a31
push ebx
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010a26
push ebx
push dword [ebp - 0x2c]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010a26
push ebx
push dword [0x101faf0]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010a26
push ebx
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010a26
push ebx
push dword [ebp - 0x2c]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010a26
push ebx
push dword [0x101fafc]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
push dword [ebp - 0x2c]
call fcn.0100b675
pop ecx
jmp 0x1010a36
mov esi, 0x8007000e
test esi, esi
jl 0x1010dd1
cmp dword [ebp + 0x10], 0xffffffff
je 0x1010d14
push ebx
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
and dword [ebp - 0x24], 0
mov esi, eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x24]
cmp eax, dword [edi + 0x30]
jae 0x1010d14
test esi, esi
jl 0x1010dd1
imul eax, eax, 0x18
lea ebx, [eax + edi]
cmp dword [ebx + 0x14], 0
je 0x1010d09
push 1
push dword [0x101faac]
mov ecx, edi
mov dword [ebp - 4], 7
call fcn.0100f17f
mov ebx, dword [ebx + 0x10]
mov esi, eax
mov eax, dword [ebx]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
imul eax, eax, 0x18
cmp ecx, dword [eax + edi + 0x10]
je 0x1010d05
test esi, esi
jl 0x1010d05
and dword [ebp + 0x10], 0
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x10]
mov ecx, dword [ebp + 0x10]
cmp ecx, dword [eax + 0x1c]
jae 0x1010cbd
test esi, esi
jl 0x1010cbd
mov eax, dword [eax + 0x18]
shl ecx, 2
mov eax, dword [ecx + eax]
cmp dword [eax + 0x10], 0
je 0x1010cb5
mov eax, dword [eax + 0x14]
and dword [ebp - 0x14], 0
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x14]
cmp eax, dword [edi + 0x3c]
jae 0x1010ca0
test esi, esi
jl 0x1010cb5
cmp eax, dword [ebp - 0x34]
jae 0x1010ca0
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x10]
mov ecx, dword [ebp + 0x10]
push dword [ebp - 0x1c]
add eax, 0x14
mov eax, dword [eax + 4]
shl ecx, 2
add eax, ecx
mov eax, dword [eax]
mov eax, dword [eax + 4]
push eax
mov ecx, edi
call fcn.0100eb60
mov esi, eax
test esi, esi
je 0x1010c93
mov eax, dword [ebp - 0x14]
push dword [edi + eax*4 + 0x34]
mov ecx, edi
push esi
call fcn.0100fb31
push esi
mov dword [ebp - 0x2c], eax
call fcn.0100b675
cmp dword [ebp - 0x2c], 0
pop ecx
je 0x1010c93
push 1
push dword [ebp - 0x2c]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010c88
push 1
push dword [0x101fad4]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010c88
push 1
push dword [0x101fac0]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010c88
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x10]
mov ecx, dword [ebp + 0x10]
mov ebx, dword [ebp - 0x14]
add eax, 0x14
mov eax, dword [eax + 4]
shl ecx, 2
add eax, ecx
mov eax, dword [eax]
add eax, 0xc
mov eax, dword [eax + 4]
shl ebx, 2
add eax, ebx
mov eax, dword [eax]
mov eax, dword [eax + 4]
push 1
push eax
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010c88
push 1
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010c88
push 1
push dword [ebp - 0x2c]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010c88
push 1
push dword [0x101fad8]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010c88
push 1
push dword [0x101fac0]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010c88
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x10]
mov ecx, dword [ebp + 0x10]
add eax, 0x14
mov eax, dword [eax + 4]
shl ecx, 2
add eax, ecx
mov eax, dword [eax]
add eax, 0xc
mov eax, dword [eax + 4]
add eax, ebx
mov eax, dword [eax]
mov eax, dword [eax + 8]
push 1
push eax
mov ecx, edi
call fcn.0100f17f
mov esi, eax
test esi, esi
jl 0x1010c88
push 1
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
push dword [ebp - 0x2c]
call fcn.0100b675
pop ecx
jmp 0x1010c98
mov esi, 0x8007000e
inc dword [ebp - 0x14]
jmp 0x1010afc
test esi, esi
jl 0x1010cb5
push 1
push dword [0x101faac]
mov ecx, edi
call fcn.0100f17f
mov esi, eax
inc dword [ebp + 0x10]
jmp 0x1010ac5
cmp dword [ebp + 0xc], 0
je 0x1010cdc
test esi, esi
jl 0x1010cdc
push 0xbb8
push 0xa
push 0x64
push 0x3e8
push 3
call sub.wbemcomn.dll_long_int___stdcall_Throttle_unsigned_long_int__unsigned_long_int__unsigned_long_int__unsigned_long_int__unsigned_long_int_
lea ecx, [ebp - 0x20]
call fcn.0100c3d1
inc dword [ebp - 0x1c]
jmp 0x1010aa6
or dword [ebp - 4], 0xffffffff
inc dword [ebp - 0x24]
xor ebx, ebx
inc ebx
jmp 0x1010a62
test esi, esi
jl 0x1010dd1
push ebx
mov ecx, edi
call fcn.0100f121
mov esi, eax
test esi, esi
jl 0x1010dd1
push dword [ebp + 8]
and dword [ebp + 0x10], 0
mov dword [ebp - 4], 9
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov ebx, eax
add ebx, 6
xor ecx, ecx
push 2
pop edx
mov eax, ebx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0100220e
pop ecx
mov dword [ebp + 0x10], eax
test eax, eax
jne 0x1010d6c
mov esi, 0x8007000e
jmp 0x1010da1
push dword [ebp + 8]
push ebx
push dword [ebp + 0x10]
call fcn.0100603f
mov esi, eax
test esi, esi
jl 0x1010da1
push 0x1010dfc
push ebx
push dword [ebp + 0x10]
call fcn.01005351
mov esi, eax
test esi, esi
jl 0x1010da1
push dword [ebp + 0x10]
mov ecx, edi
push dword [ebp - 0x18]
call fcn.0100ef65
mov esi, eax
or dword [ebp - 4], 0xffffffff
jmp 0x1010dbe
cmp dword [ebp + 0x10], 0
je 0x1010dcd
push dword [ebp + 0x10]
call fcn.0100b675
pop ecx
test esi, esi
jge 0x1010de2
mov ecx, edi
call fcn.0100e993
push dword [ebp - 0x18]
mov ecx, edi
call fcn.0100ee66
cmp dword [ebp - 0x18], 0
je 0x1010df1
push dword [ebp - 0x18]
call fcn.0100b675
pop ecx
mov eax, esi
call fcn.010014c4
ret 0xc