Function at 0x435e40
Capabilities:
Get disk size

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c8b3c
mov eax, dword fs:[0]
push eax
mov eax, 0x132b0
call fcn.004a7530
mov eax, dword [0x51eee0]
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 eax, dword [ebp + 8]
mov edi, dword [ebp + 0x10]
mov ebx, dword [ebp + 0xc]
xor ecx, ecx
mov dword [ebp - 0x13298], eax
mov dword [ebp - 0x132bc], eax
mov dword [ebp - 0x13278], edi
mov dword [ebp - 0x1327c], ecx
call fcn.00439a80
test al, al
jne 0x435f05
mov esi, dword [0x520340]
mov eax, 0x27932b49
imul esi
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
imul ecx, ecx, 0xcf
mov eax, esi
sub eax, ecx
xor edi, edi
cmp eax, 0x40
je 0x435ef9
mov eax, esi
or eax, 0xffffff6a
add esi, eax
mov eax, esi
imul eax, esi
inc edi
cmp edi, eax
jg 0x435ef9
mov eax, 0x27932b49
imul esi
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
imul ecx, ecx, 0xcf
mov eax, esi
sub eax, ecx
cmp eax, 0x40
jne 0x435ec6
mov dword [0x520340], edi
mov edi, dword [ebp - 0x13278]
mov esi, 1
call fcn.004352c0
xor ecx, ecx
push ecx
push ecx
test al, al
push ecx
cmovne esi, ecx
push esi
push 0x4d8e30
call fcn.00439c50
mov esi, eax
add esp, 0x14
test esi, esi
jne 0x435f51
test edi, edi
je 0x435f3d
push str.InternetOpenFailed
mov ecx, edi
call fcn.0040b410
mov esi, dword [ebp - 0x13298]
push esi
call fcn.00433650
add esp, 4
jmp 0x436664
push 0
lea ecx, [ebp - 0x132b8]
call fcn.00442860
push 0x4dda70
lea ecx, [ebp - 0x13290]
mov dword [ebp - 4], 1
call fcn.00442820
lea eax, [ebp - 0x13290]
push eax
push str.method
lea ecx, [ebp - 0x132b8]
mov byte [ebp - 4], 2
call fcn.00442d00
mov ecx, eax
call fcn.00442b10
lea ecx, [ebp - 0x13290]
mov byte [ebp - 4], 1
call fcn.00442a70
mov eax, dword [0x520340]
imul eax, eax
cdq
mov ecx, 7
idiv ecx
cmp edx, 6
jne 0x435fcb
push 0
push 0
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceW]
lea eax, [ebp - 0x13270]
push ebx
push eax
call fcn.0044ef60
add esp, 8
push eax
lea ecx, [ebp - 0x13290]
mov byte [ebp - 4], 3
call fcn.00442780
lea eax, [ebp - 0x13290]
push eax
push 0x4d97f4
lea ecx, [ebp - 0x132b8]
mov byte [ebp - 4], 4
call fcn.00442d00
mov ecx, eax
call fcn.00442b10
lea ecx, [ebp - 0x13290]
mov byte [ebp - 4], 3
call fcn.00442a70
cmp dword [ebp - 0x1325c], 0x10
mov byte [ebp - 4], 1
jb 0x436037
push dword [ebp - 0x13270]
call fcn.004a5bbe
add esp, 4
push 0x4dda88
lea ecx, [ebp - 0x13290]
call fcn.00442820
lea eax, [ebp - 0x13290]
push eax
push str.acceptedStatusCodes
lea ecx, [ebp - 0x132b8]
mov byte [ebp - 4], 5
call fcn.00442d00
mov ecx, eax
call fcn.00443340
lea ecx, [ebp - 0x13290]
mov byte [ebp - 4], 1
call fcn.00442a70
push 0x4dda98
lea ecx, [ebp - 0x13290]
call fcn.00442820
lea eax, [ebp - 0x13290]
push eax
push str.acceptTypes
lea ecx, [ebp - 0x132b8]
mov byte [ebp - 4], 6
call fcn.00442d00
mov ecx, eax
call fcn.00442b10
lea ecx, [ebp - 0x13290]
mov byte [ebp - 4], 1
call fcn.00442a70
push str.Accept_Encoding:_gzip__deflate_r_n
lea ecx, [ebp - 0x13290]
call fcn.00442820
lea eax, [ebp - 0x13290]
push eax
push str.additionalRequestHeaders
lea ecx, [ebp - 0x132b8]
mov byte [ebp - 4], 7
call fcn.00442d00
mov ecx, eax
call fcn.00442b10
lea ecx, [ebp - 0x13290]
mov byte [ebp - 4], 1
call fcn.00442a70
push 0
push 0
lea eax, [ebp - 0x132b8]
push eax
lea eax, [ebp - 0x13274]
push eax
lea eax, [ebp - 0x132a8]
push esi
push eax
mov dword [ebp - 0x13274], 0
call fcn.00436690
add esp, 0x18
push esi
mov byte [ebp - 4], 8
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov ecx, dword [0x520340]
lea eax, [ecx + 1]
imul eax, ecx
cdq
mov ecx, 0x16
idiv ecx
cmp edx, 0x12
jne 0x4361bb
xor eax, eax
push 0x13246
push eax
mov word [ebp - 0x13258], ax
lea eax, [ebp - 0x13256]
push eax
call fcn.004a7560
add esp, 0xc
xor edi, edi
xor esi, esi
lea esp, [esp]
xor edx, edx
test edi, edi
je 0x43619a
test edx, edx
je 0x43619a
lea eax, [esi + edx]
lea ecx, [esi + edx]
mov ax, word [ebp + eax*2 - 0x133e4]
inc ax
add ax, word [ebp + ecx*2 - 0x1325a]
mov word [ebp + ecx*2 - 0x13258], ax
inc edx
cmp edx, 0xc6
jl 0x436172
add esi, 0xc6
inc edi
cmp esi, 0x9924
jl 0x436170
movsx eax, word [ebp - 0x12]
mov dword [0x520340], eax
lea eax, [ebp - 0x13280]
push eax
call fcn.00433650
add esp, 4
mov byte [ebp - 4], 9
call fcn.00439ae0
test al, al
jne 0x436230
movd xmm4, dword [0x520340]
movsd xmm3, qword [0x4d95e8]
movsd xmm6, qword [0x4d95f0]
movsd xmm5, qword [0x4d95e0]
xorps xmm2, xmm2
cvtdq2pd xmm4, xmm4
mov edi, edi
addsd xmm2, xmm3
movapd xmm0, xmm2
mulsd xmm0, xmm2
comisd xmm0, xmm4
jbe 0x43621a
subsd xmm2, xmm3
divsd xmm3, xmm6
movapd xmm1, xmm2
mulsd xmm1, xmm2
movapd xmm0, xmm4
subsd xmm0, xmm1
comisd xmm0, xmm5
ja 0x436200
push str.result
lea ecx, [ebp - 0x132a8]
call fcn.00442d00
mov ecx, eax
call fcn.00443dc0
or edi, 0xffffffff
test al, al
je 0x4362f0
push str.result
lea ecx, [ebp - 0x132a8]
call fcn.00442d00
mov ecx, eax
call fcn.00443370
test al, al
je 0x4362f0
push str.content
lea ecx, [ebp - 0x132a8]
call fcn.00442d00
mov ecx, eax
call fcn.00443e50
test al, al
je 0x4362f0
push str.content
lea ecx, [ebp - 0x132a8]
call fcn.00442d00
mov ecx, eax
call fcn.004433e0
sub esp, 0x18
mov ecx, esp
push eax
call fcn.00401000
lea eax, [ebp - 0x13274]
push eax
call fcn.0044ee90
add esp, 0x1c
push eax
lea ecx, [ebp - 0x13280]
mov byte [ebp - 4], 0xa
call fcn.00402af0
mov edx, dword [ebp - 0x13274]
add edx, 0xfffffff0
mov byte [ebp - 4], 9
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4362f0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [ebp - 0x13278]
test esi, esi
je 0x436369
lea eax, [ebp - 0x13274]
push eax
call fcn.00433650
mov ecx, 2
mov dword [ebp - 0x1327c], ecx
mov ecx, dword [eax]
xor eax, eax
add esp, 4
test ecx, ecx
setne al
test eax, eax
jne 0x43632b
push 0x80004005
call fcn.00404480
mov eax, dword [ebp - 0x13280]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x436357
test dx, dx
je 0x436353
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x436357
add eax, 4
add ecx, 4
test dx, dx
jne 0x436331
xor eax, eax
jmp 0x43635c
sbb eax, eax
or eax, 1
test eax, eax
sete al
test al, al
je 0x436369
mov bl, 1
jmp 0x43636b
xor bl, bl
mov eax, dword [ebp - 0x1327c]
test al, 2
je 0x43639d
mov edx, dword [ebp - 0x13274]
and eax, 0xfffffffd
add edx, 0xfffffff0
mov dword [ebp - 0x1327c], eax
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x43639d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
test bl, bl
je 0x4365f9
push str.errorDesc
lea ecx, [ebp - 0x132a8]
call fcn.00442d00
mov ecx, eax
call fcn.00443e50
test al, al
je 0x4365ed
call fcn.00439b60
test al, al
jne 0x43643e
mov esi, dword [0x520340]
test esi, esi
je 0x43643e
jmp 0x4363e0
mov ecx, esi
and ecx, 0x80000001
jns 0x4363ef
dec ecx
or ecx, 0xfffffffe
inc ecx
jne 0x4363fc
mov eax, esi
cdq
sub eax, edx
mov esi, eax
sar esi, 1
jmp 0x436403
lea esi, [esi*2 + 1]
mov eax, 0x55555556
imul esi
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, esi
lea eax, [eax + eax*2]
sub ecx, eax
mov dword [0x520340], esi
sub ecx, 0
je 0x43642d
sub ecx, 2
je 0x436430
dec ecx
je 0x436431
jmp 0x43643a
add esi, 2
inc esi
add esi, 2
mov dword [0x520340], esi
test esi, esi
jne 0x4363e0
push str.errorDesc
lea ecx, [ebp - 0x132a8]
call fcn.00442d00
mov ecx, eax
call fcn.004433e0
sub esp, 0x18
mov edx, esp
mov esi, eax
mov dword [edx + 0x14], 0xf
mov dword [edx + 0x10], 0
mov byte [edx], 0
cmp byte [esi], 0
jne 0x436476
xor ecx, ecx
jmp 0x436489
mov ecx, esi
lea ebx, [ecx + 1]
jmp 0x436480
mov al, byte [ecx]
inc ecx
test al, al
jne 0x436480
sub ecx, ebx
push ecx
push esi
mov ecx, edx
call fcn.00401460
lea eax, [ebp - 0x13274]
push eax
call fcn.0044ee90
add esp, 0x1c
mov ebx, dword [ebp - 0x13278]
push eax
mov ecx, ebx
mov byte [ebp - 4], 0xb
call fcn.00402af0
mov edx, dword [ebp - 0x13274]
add edx, 0xfffffff0
mov byte [ebp - 4], 9
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4364d6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push str.errorCode
lea ecx, [ebp - 0x132a8]
call fcn.00442d00
mov ecx, eax
call fcn.00443e50
test al, al
je 0x436564
push 1
push 0x4db318
mov ecx, ebx
call fcn.0040b980
push str.errorCode
lea ecx, [ebp - 0x132a8]
call fcn.00442d00
mov ecx, eax
call fcn.004433e0
sub esp, 0x18
mov ecx, esp
push eax
call fcn.00401000
lea eax, [ebp - 0x13274]
push eax
call fcn.0044ee90
add esp, 0x1c
mov eax, dword [eax]
mov ecx, ebx
push dword [eax - 0xc]
mov byte [ebp - 4], 0xc
push eax
call fcn.0040b980
mov edx, dword [ebp - 0x13274]
add edx, 0xfffffff0
mov byte [ebp - 4], 9
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x436564
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x4ddb18
lea ecx, [ebp - 0x13278]
call fcn.00401ff0
lea eax, [ebp - 0x13278]
push eax
lea eax, [ebp - 0x13274]
push eax
mov byte [ebp - 4], 0xd
call fcn.00450020
add esp, 8
push 0x4d8e30
push dword [eax]
mov ecx, ebx
mov byte [ebp - 4], 0xe
call fcn.00421cf0
mov edx, dword [ebp - 0x13274]
add edx, 0xfffffff0
mov byte [ebp - 4], 0xd
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4365c3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x13278]
add edx, 0xfffffff0
mov byte [ebp - 4], 9
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4365e6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.004399e0
jmp 0x4365f9
push str.noError
mov ecx, esi
call fcn.0040b410
mov eax, dword [ebp - 0x13280]
add eax, 0xfffffff0
push eax
call fcn.00404840
mov ecx, dword [ebp - 0x1327c]
mov edx, dword [ebp - 0x13280]
mov esi, dword [ebp - 0x13298]
add eax, 0x10
add edx, 0xfffffff0
or ecx, 1
mov dword [esi], eax
add esp, 4
mov dword [ebp - 0x1327c], ecx
mov byte [ebp - 4], 8
lea eax, [edx + 0xc]
lock xadd dword [eax], edi
dec edi
test edi, edi
jg 0x436646
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x132a8]
mov byte [ebp - 4], 1
call fcn.00442a70
lea ecx, [ebp - 0x132b8]
mov byte [ebp - 4], 0
call fcn.00442a70
mov eax, esi
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.004a63c4
mov esp, ebp
pop ebp
ret