Function at 0x41aff0
Capabilities:
Get disk size

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4e8ce2
mov eax, dword fs:[0]
push eax
sub esp, 0x5a4
mov eax, dword [0x555ab0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 4], 1
mov eax, dword [ebp + 8]
cmp dword [eax - 0xc], 0
je 0x41b5c4
mov edx, 0x530180
mov ecx, eax
jmp 0x41b040
mov si, word [ecx]
cmp si, word [edx]
jne 0x41b066
test si, si
je 0x41b062
mov si, word [ecx + 2]
cmp si, word [edx + 2]
jne 0x41b066
add ecx, 4
add edx, 4
test si, si
jne 0x41b040
xor ecx, ecx
jmp 0x41b06b
sbb ecx, ecx
or ecx, 1
test ecx, ecx
sete cl
test cl, cl
jne 0x41b5c4
mov edx, 0x530188
lea ecx, [ebp + 8]
call fcn.0041cbd0
test al, al
jne 0x41b5c1
mov eax, dword [ebp + 0xc]
cmp dword [eax - 0xc], 0
je 0x41b5c1
mov edx, 0x530190
lea ecx, [ebp + 0xc]
call fcn.0041cbd0
test al, al
jne 0x41b5c1
mov edx, 0x530198
lea ecx, [ebp + 0xc]
call fcn.0041cbd0
test al, al
jne 0x41b5c1
push str.__getAgentVer_ion:
lea ecx, [ebp - 0x558]
call fcn.00404310
push str.__strToVersion:
lea ecx, [ebp - 0x560]
mov byte [ebp - 4], 2
call fcn.00404310
push str.strFromVer_ion:
lea ecx, [ebp - 0x554]
mov byte [ebp - 4], 3
call fcn.00404310
push str.Shou1dAutoUpd_teAgent
lea ecx, [ebp - 0x56c]
mov byte [ebp - 4], 4
call fcn.00402020
lea ecx, [ebp - 0x54c]
mov byte [ebp - 4], 5
mov eax, dword [edi]
push ecx
mov ecx, edi
call dword [eax + 0x14]
mov esi, eax
mov byte [ebp - 4], 6
mov edx, dword [0x5556d8]
mov ecx, 0x5556d8
call dword [edx + 0xc]
add eax, 0x10
mov dword [ebp - 0x564], eax
mov byte [ebp - 4], 7
mov eax, dword [0x5556d8]
mov ecx, 0x5556d8
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x568], eax
mov byte [ebp - 4], 8
mov eax, dword [0x5556d8]
mov ecx, 0x5556d8
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x55c], eax
lea eax, [ebp - 0x568]
push eax
lea edx, [ebp - 0x55c]
lea ecx, [ebp - 0x550]
mov byte [ebp - 4], 9
call fcn.00421a70
add esp, 4
lea ecx, [ebp - 0x554]
push ecx
mov edx, eax
lea ecx, [ebp - 0x588]
mov byte [ebp - 4], 0xa
call fcn.00421a70
add esp, 4
lea ecx, [ebp + 8]
push ecx
mov edx, eax
lea ecx, [ebp - 0x594]
mov byte [ebp - 4], 0xb
call fcn.00421a70
add esp, 4
lea ecx, [ebp - 0x564]
push ecx
mov edx, eax
lea ecx, [ebp - 0x578]
mov byte [ebp - 4], 0xc
call fcn.00421a70
add esp, 4
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x560]
push ecx
mov edx, eax
lea ecx, [ebp - 0x590]
call fcn.00421a70
add esp, 4
lea ecx, [ebp + 0xc]
push ecx
mov edx, eax
lea ecx, [ebp - 0x570]
mov byte [ebp - 4], 0xe
call fcn.00421a70
add esp, 4
lea ecx, [ebp - 0x558]
push ecx
mov edx, eax
lea ecx, [ebp - 0x58c]
mov byte [ebp - 4], 0xf
call fcn.00421a70
add esp, 4
push esi
mov edx, eax
lea ecx, [ebp - 0x574]
mov byte [ebp - 4], 0x10
call fcn.00421a70
add esp, 4
mov byte [ebp - 4], 0x11
mov ecx, dword [edi + 0xc]
test ecx, ecx
je 0x41b261
push 0
push eax
lea eax, [ebp - 0x56c]
push eax
lea eax, [edi + 8]
push eax
call fcn.00402570
lea ecx, [ebp - 0x574]
call fcn.004020d0
lea ecx, [ebp - 0x58c]
call fcn.004020d0
lea ecx, [ebp - 0x570]
call fcn.004020d0
lea ecx, [ebp - 0x590]
call fcn.004020d0
lea ecx, [ebp - 0x578]
call fcn.004020d0
lea ecx, [ebp - 0x594]
call fcn.004020d0
lea ecx, [ebp - 0x588]
call fcn.004020d0
lea ecx, [ebp - 0x550]
call fcn.004020d0
lea ecx, [ebp - 0x55c]
call fcn.004020d0
lea ecx, [ebp - 0x568]
call fcn.004020d0
lea ecx, [ebp - 0x564]
call fcn.004020d0
lea ecx, [ebp - 0x54c]
call fcn.004020d0
lea ecx, [ebp - 0x56c]
call fcn.004020d0
lea ecx, [ebp - 0x554]
call fcn.004020d0
lea ecx, [ebp - 0x560]
call fcn.004020d0
lea ecx, [ebp - 0x558]
mov byte [ebp - 4], 1
call fcn.004020d0
mov esi, dword [0x55e860]
mov ecx, 0x18
lea eax, [esi + 1]
imul eax, esi
cdq
idiv ecx
cmp edx, 0x15
jne 0x41b365
xor ecx, ecx
mov eax, dword [ebp + ecx*4 - 0x404]
add eax, dword [ebp + ecx*4 - 0x408]
add ecx, 4
add eax, dword [ebp + ecx*4 - 0x41c]
add eax, dword [ebp + ecx*4 - 0x420]
imul eax, eax, 0xee
add esi, eax
cmp ecx, 0x400
jb 0x41b330
mov dword [0x55e860], esi
push ecx
mov ecx, esp
mov dword [ebp - 0x54c], esp
push str....
call fcn.00402020
push ecx
mov byte [ebp - 4], 0x12
mov edx, dword [edi]
push esp
mov ecx, edi
call dword [edx + 0x14]
lea ecx, [ebp - 0x584]
mov byte [ebp - 4], 1
call fcn.00427400
add esp, 4
mov byte [ebp - 4], 0x13
mov ecx, esp
mov dword [ebp - 0x54c], esp
push 0x5301f0
call fcn.00402020
push ecx
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp + 8]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.004022e0
add eax, 0x10
mov dword [esi], eax
lea ecx, [ebp - 0x5ac]
mov byte [ebp - 4], 0x13
call fcn.00427400
add esp, 4
mov byte [ebp - 4], 0x15
mov ecx, esp
mov dword [ebp - 0x54c], esp
push 0x5301f4
call fcn.00402020
push ecx
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp + 0xc]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.004022e0
add eax, 0x10
mov dword [esi], eax
lea ecx, [ebp - 0x5a0]
mov byte [ebp - 4], 0x15
call fcn.00427400
add esp, 8
mov byte [ebp - 4], 0x17
mov eax, dword [ebp - 0x580]
sub eax, dword [ebp - 0x584]
and eax, 0xfffffffc
cmp eax, 0x10
jne 0x41b599
mov eax, dword [ebp - 0x5a8]
sub eax, dword [ebp - 0x5ac]
and eax, 0xfffffffc
cmp eax, 0x10
jne 0x41b599
mov eax, dword [ebp - 0x59c]
sub eax, dword [ebp - 0x5a0]
and eax, 0xfffffffc
cmp eax, 0x10
jne 0x41b599
mov esi, dword [0x55e860]
lea ecx, [esi + 1]
lea eax, [esi + 2]
imul eax, ecx
imul eax, esi
cdq
mov ecx, 0x16
idiv ecx
cmp edx, 0xe
jne 0x41b4ee
xor esi, esi
call fcn.004b0a92
movd xmm0, eax
cvtdq2pd xmm0, xmm0
inc esi
movsd qword [ebp + esi*8 - 0x550], xmm0
cmp esi, 0xa7
jb 0x41b482
xor ecx, ecx
mov eax, 0xa6
cmp ecx, eax
jge 0x41b4df
lea esp, [esp]
movsd xmm0, qword [ebp + eax*8 - 0x548]
movsd xmm1, qword [ebp + eax*8 - 0x550]
comisd xmm0, xmm1
jbe 0x41b4da
movsd qword [ebp + eax*8 - 0x548], xmm1
movsd qword [ebp + eax*8 - 0x550], xmm0
dec eax
cmp eax, ecx
jg 0x41b4b0
inc ecx
cmp ecx, 0xa7
jl 0x41b4a3
mov esi, dword [0x55e860]
mov ebx, dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceW]
xor edi, edi
jmp 0x41b500
imul esi, esi
and esi, 0x8000000f
jns 0x41b510
dec esi
or esi, 0xfffffff0
inc esi
cmp esi, 6
jne 0x41b521
push 0
push 0
push 0
push 0
push 0
call ebx
mov edx, dword [ebp - 0x5ac]
mov ecx, dword [ebp - 0x584]
lea edx, [edx + edi]
lea ecx, [ecx + edi]
call fcn.004048e0
test al, al
jne 0x41b599
mov ecx, dword [0x55e860]
lea eax, [ecx + 1]
imul eax, ecx
cdq
mov ecx, 0x17
idiv ecx
cmp edx, 0xe
jne 0x41b567
push 4
call fcn.004b0975
mov ecx, dword [0x55e860]
add esp, 4
mov dword [eax], ecx
mov edx, dword [ebp - 0x5a0]
mov ecx, dword [ebp - 0x584]
lea edx, [edx + edi]
lea ecx, [ecx + edi]
call fcn.0041cc70
test al, al
jne 0x41b599
add edi, 4
cmp edi, 0x10
jge 0x41b595
mov esi, dword [0x55e860]
jmp 0x41b500
mov bl, 1
jmp 0x41b59b
xor bl, bl
lea ecx, [ebp - 0x5a0]
call fcn.0041cdd0
lea ecx, [ebp - 0x5ac]
call fcn.0041cdd0
lea ecx, [ebp - 0x584]
call fcn.0041cdd0
mov eax, dword [ebp + 8]
jmp 0x41b5c6
mov eax, dword [ebp + 8]
xor bl, bl
lea edx, [eax - 0x10]
or esi, 0xffffffff
mov byte [ebp - 4], 0
lea ecx, [edx + 0xc]
mov eax, esi
lock xadd dword [ecx], eax
dec eax
test eax, eax
jg 0x41b5e6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebp + 0xc]
add edi, 0xfffffff0
lea eax, [edi + 0xc]
lock xadd dword [eax], esi
dec esi
test esi, esi
jg 0x41b607
mov ecx, dword [edi]
push edi
mov edx, dword [ecx]
call dword [edx + 4]
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004b00a0
mov esp, ebp
pop ebp
ret 8