Function at 0x43c530
Capabilities:
Delete file
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x4909cb
mov eax, dword fs:[0]
push eax
sub esp, 0x240
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4c2b20]
xor eax, esp
push eax
lea eax, [esp + 0x254]
mov dword fs:[0], eax
push str.__________1325_DisengageODMSupportFile____
call fcn.0042fa80
xor ebp, ebp
mov dword [esp + 0x34], ebp
mov dword [esp + 0x30], ebp
call fcn.0043dbf0
mov esi, dword [esp + 0x26c]
push esi
call fcn.004388a0
add esp, 8
test eax, eax
jne 0x43c59b
push esi
call fcn.00438bf0
add esp, 4
test al, al
je 0x43c632
lea ecx, [esp + 0x14]
call fcn.00429040
mov dword [esp + 0x25c], ebp
mov dword [esp + 0x34], 1
mov dword [esp + 0x38], 2
xor esi, esi
lea ecx, [ecx]
push 0x216
lea eax, [esp + 0x40]
push ebp
push eax
call fcn.0046a930
mov ecx, dword [esp + esi*4 + 0x40]
add esp, 0xc
lea edx, [esp + 0x3c]
mov dword [esp + 0x3c], ecx
push edx
lea ecx, [esp + 0x18]
call fcn.0043b2c0
inc esi
cmp esi, 2
jb 0x43c5c0
mov ecx, dword [esp + 0x264]
lea eax, [esp + 0x14]
push eax
push ecx
call fcn.00439ab0
add esp, 8
test eax, eax
jne 0x43c639
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x43c619
push eax
call fcn.00447e1e
add esp, 4
mov edx, dword [esp + 0x14]
push edx
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebp
call fcn.00447e1e
add esp, 4
xor eax, eax
jmp 0x43cad0
push str.__________1354_DisengageODMSupportFile____
call fcn.0042fa80
mov ebx, dword [esp + 0x28]
mov edi, dword [esp + 0x24]
mov ecx, ebx
sub ecx, edi
mov eax, 0x7aba01eb
imul ecx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add esp, 4
xor esi, esi
add eax, edx
je 0x43c70e
cmp esi, eax
jb 0x43c67c
call fcn.0046cdef
mov ebx, dword [esp + 0x24]
mov edi, dword [esp + 0x20]
mov ecx, ebx
sub ecx, edi
mov eax, 0x7aba01eb
imul ecx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [edi + ebp], 1
je 0x43c6a4
inc esi
add ebp, 0x216
cmp esi, eax
jb 0x43c67c
jmp 0x43c70e
cmp esi, eax
jb 0x43c6b5
call fcn.0046cdef
mov ebx, dword [esp + 0x24]
mov edi, dword [esp + 0x20]
sub ebx, edi
mov eax, 0x7aba01eb
imul ebx
mov ebp, esi
imul ebp, ebp, 0x216
mov ecx, dword [edi + ebp + 4]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x2c], ecx
cmp esi, eax
jb 0x43c6e5
call fcn.0046cdef
mov edi, dword [esp + 0x20]
mov edi, dword [edi + ebp + 8]
mov ecx, dword [esp + 0x2c]
push 1
push 0x20100506
push edi
push ecx
call fcn.004387a0
add esp, 0x10
test eax, eax
je 0x43c9a2
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x2c], edx
push str.__________1369_DisengageODMSupportFile____
call fcn.0042fa80
add esp, 4
cmp dword [esp + 0x2c], 0
je 0x43c9a2
mov esi, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov edx, esi
sub edx, ecx
mov eax, 0x7aba01eb
imul edx
sar edx, 8
mov eax, edx
shr eax, 0x1f
xor edi, edi
add eax, edx
je 0x43c8b9
xor ebx, ebx
cmp edi, eax
jb 0x43c75e
call fcn.0046cdef
mov esi, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
cmp dword [ebx + ecx], 1
je 0x43c895
mov edx, esi
sub edx, ecx
mov eax, 0x7aba01eb
imul edx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x43c78e
call fcn.0046cdef
mov esi, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
cmp dword [ebx + ecx], 0x64
je 0x43c895
mov edx, esi
sub edx, ecx
mov eax, 0x7aba01eb
imul edx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x43c7be
call fcn.0046cdef
mov esi, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
cmp dword [ebx + ecx], 2
je 0x43c895
mov edx, esi
sub edx, ecx
mov eax, 0x7aba01eb
imul edx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x43c7ee
call fcn.0046cdef
mov esi, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
cmp dword [ebx + ecx + 4], 0
je 0x43c895
mov edx, esi
sub edx, ecx
mov eax, 0x7aba01eb
imul edx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x43c81f
call fcn.0046cdef
mov esi, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
cmp dword [ebx + ecx + 8], 0
je 0x43c895
mov edx, esi
sub edx, ecx
mov eax, 0x7aba01eb
imul edx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x43c84c
call fcn.0046cdef
mov esi, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
sub esi, ecx
mov eax, 0x7aba01eb
imul esi
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ebp, [ebx + ecx]
cmp edi, eax
jb 0x43c86f
call fcn.0046cdef
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x2c]
mov eax, dword [ebp + 8]
mov ecx, dword [ebx + ecx + 4]
push 0x20
add edx, 0x1e4
push edx
push eax
push ecx
call fcn.0043eed0
mov esi, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
add esp, 0x10
mov edx, esi
sub edx, ecx
mov eax, 0x7aba01eb
imul edx
sar edx, 8
mov eax, edx
shr eax, 0x1f
inc edi
add eax, edx
add ebx, 0x216
cmp edi, eax
jb 0x43c75e
push str.__________1386_DisengageODMSupportFile____
call fcn.0042fa80
mov ecx, dword [esp + 0x28]
mov esi, dword [esp + 0x24]
mov edx, ecx
sub edx, esi
mov eax, 0x7aba01eb
imul edx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add esp, 4
xor edi, edi
add eax, edx
je 0x43c998
xor ebx, ebx
cmp edi, eax
jb 0x43c8fe
call fcn.0046cdef
mov ecx, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
mov eax, dword [ebx + esi]
sub eax, 2
jne 0x43c974
mov edx, ecx
sub edx, esi
mov eax, 0x7aba01eb
imul edx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x43c92c
call fcn.0046cdef
mov ecx, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
sub ecx, esi
mov eax, 0x7aba01eb
imul ecx
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea ebp, [ebx + esi]
cmp edi, ecx
jb 0x43c94f
call fcn.0046cdef
mov esi, dword [esp + 0x20]
mov edx, dword [esp + 0x268]
mov eax, dword [ebp + 8]
mov ecx, dword [ebx + esi + 4]
push edx
push eax
push ecx
call fcn.00438d30
add esp, 0xc
test eax, eax
je 0x43c9a2
mov ecx, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
mov edx, ecx
sub edx, esi
mov eax, 0x7aba01eb
imul edx
sar edx, 8
mov eax, edx
shr eax, 0x1f
inc edi
add eax, edx
add ebx, 0x216
cmp edi, eax
jb 0x43c8fe
mov dword [esp + 0x30], 1
jmp 0x43c9aa
mov ecx, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
mov edx, ecx
sub edx, esi
mov eax, 0x7aba01eb
imul edx
sar edx, 8
mov eax, edx
shr eax, 0x1f
xor edi, edi
add eax, edx
je 0x43caa4
mov ebp, dword [sym.imp.KERNEL32.dll_lstrlenW]
xor ebx, ebx
cmp edi, eax
jb 0x43c9e0
call fcn.0046cdef
mov ecx, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
cmp dword [ebx + esi + 4], 0
je 0x43ca1c
sub ecx, esi
mov eax, 0x7aba01eb
imul ecx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x43ca07
call fcn.0046cdef
mov esi, dword [esp + 0x20]
mov ecx, dword [ebx + esi + 4]
push ecx
call fcn.0046ad15
mov ecx, dword [esp + 0x28]
mov esi, dword [esp + 0x24]
add esp, 4
sub ecx, esi
mov eax, 0x7aba01eb
imul ecx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x43ca3c
call fcn.0046cdef
mov esi, dword [esp + 0x20]
lea ecx, [ebx + esi + 0xc]
push ecx
call ebp
test eax, eax
je 0x43ca78
mov ecx, dword [esp + 0x24]
sub ecx, dword [esp + 0x20]
mov eax, 0x7aba01eb
imul ecx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x43ca69
call fcn.0046cdef
mov ecx, dword [esp + 0x20]
lea edx, [ebx + ecx + 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov ecx, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
mov edx, ecx
sub edx, esi
mov eax, 0x7aba01eb
imul edx
sar edx, 8
mov eax, edx
shr eax, 0x1f
inc edi
add eax, edx
add ebx, 0x216
cmp edi, eax
jb 0x43c9e0
xor edi, edi
cmp esi, edi
je 0x43cab3
push esi
call fcn.00447e1e
add esp, 4
mov eax, dword [esp + 0x14]
push eax
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], edi
call fcn.00447e1e
mov eax, dword [esp + 0x34]
add esp, 4
mov ecx, dword [esp + 0x254]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24c
ret