Function at 0x453b36
Capabilities:
Get disk information
Get disk size
Get graphical window text

Disassembly:
push 0x864
mov eax, 0x49c96c
call fcn.00492097
mov eax, dword [edi + 0x60]
push dword [ebp + 8]
mov esi, edx
mov dword [ebp - 0x850], esi
mov dword [ebp - 0x83c], ecx
mov dword [ebp - 0x844], eax
call fcn.004907e0
or dword [ebp - 0x84c], 0xffffffff
lea ecx, [ebp - 0x838]
mov dword [ebp - 0x834], eax
call dword [0x4a2ef4]
xor ebx, ebx
mov dword [ebp - 4], ebx
mov eax, dword [ebp - 0x83c]
cmp dword [eax], ebx
jne 0x4542b9
cmp dword [esi + 0x20], ebx
jne 0x453ffb
push dword [ebp - 0x834]
mov ecx, esi
call fcn.00490594
test eax, eax
jne 0x453baf
call fcn.004907e6
push edi
push dword [ebp + 0x14]
mov ebx, esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
call fcn.00454537
and dword [ebp - 0x848], 0
mov eax, esi
mov byte [ebp - 0x83d], 1
call fcn.004070b0
test eax, eax
jle 0x453c9d
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push dword [ebp - 0x848]
push 0x150
push dword [esi + 0x20]
call ebx
cmp dword [ebp - 0x844], eax
je 0x453dfa
cmp byte [ebp - 0x83d], 0
je 0x453c84
movzx ecx, al
cmp ecx, 0x7f
ja 0x453fef
mov ecx, dword [ebp - 0x848]
mov dword [ebp - 0x84c], ecx
mov ecx, eax
shr ecx, 0x18
mov byte [ebp - 0x824], cl
mov ecx, eax
shr ecx, 0x10
mov byte [ebp - 0x823], cl
mov ecx, eax
mov byte [ebp - 0x821], al
lea eax, [ebp - 0x824]
push eax
lea eax, [ebp - 0x82c]
shr ecx, 8
push eax
mov byte [ebp - 0x822], cl
call fcn.00462b74
push eax
lea ecx, [ebp - 0x838]
mov byte [ebp - 4], 5
call dword [0x4a2ea0]
lea ecx, [ebp - 0x82c]
mov byte [ebp - 4], 0
call dword [0x4a2ee8]
mov byte [ebp - 0x83d], 0
inc dword [ebp - 0x848]
mov eax, esi
call fcn.004070b0
cmp dword [ebp - 0x848], eax
jl 0x453bdd
xor ebx, ebx
lea eax, [ebp - 0x834]
push 0x3a
push eax
lea esi, [ebp - 0x838]
call fcn.004548cc
pop ecx
pop ecx
lea ecx, [ebp - 0x83c]
call dword [0x4a2ef4]
push ebx
push ebx
lea eax, [ebp - 0x85c]
push eax
push ebx
push ebx
mov eax, 0x200
push eax
mov byte [ebp - 4], 0xb
mov esi, dword [ebp - 0x834]
push eax
lea ecx, [ebp - 0x83c]
call dword [0x4a2bd0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetVolumeInformationW]
push 0xffffffffffffffff
lea ecx, [ebp - 0x83c]
call dword [0x4a2bcc]
lea eax, [ebp - 0x83c]
push eax
lea ecx, [edi + 0x68]
call dword [0x4a2ea0]
lea eax, [ebp - 0x838]
push eax
lea ecx, [edi + 0x64]
call dword [0x4a2ea0]
lea eax, [ebp - 0x82c]
push 0x5c
push eax
lea esi, [ebp - 0x834]
mov dword [ebp - 0x858], ebx
mov dword [ebp - 0x854], ebx
call fcn.004548cc
mov eax, dword [eax]
pop ecx
pop ecx
lea ecx, [ebp - 0x870]
push ecx
lea ecx, [ebp - 0x858]
push ecx
lea ecx, [ebp - 0x868]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExW]
lea ecx, [ebp - 0x82c]
call dword [0x4a2ee8]
mov eax, dword [ebp - 0x858]
push ecx
mov dword [edi + 0x78], eax
mov eax, dword [ebp - 0x854]
mov ecx, esp
mov dword [ebp - 0x82c], esp
push 0x4a4090
mov dword [edi + 0x7c], eax
call dword [0x4a2ed8]
push ecx
mov eax, esp
mov dword [ebp - 0x844], esp
push 0x5c
push eax
mov byte [ebp - 4], 0xc
call fcn.004548cc
pop ecx
pop ecx
lea esi, [ebp - 0x830]
mov byte [ebp - 4], 0xb
call fcn.004546ed
pop ecx
cmp dword [edi + 0x8c], ebx
mov eax, dword [ebp - 0x830]
pop ecx
mov ecx, dword [ebp - 0x82c]
mov dword [ebp - 0x858], eax
mov dword [ebp - 0x854], ecx
mov dword [edi + 0x80], eax
mov dword [edi + 0x84], ecx
jne 0x4540cc
mov eax, dword [edi + 0x78]
mov dword [edi + 0x70], eax
mov eax, dword [edi + 0x7c]
mov dword [edi + 0x74], eax
jmp 0x4540d2
mov ecx, eax
and ecx, 0xff
cmp ecx, 0x80
je 0x453fb4
cmp ecx, 0x81
je 0x453fb4
cmp ecx, 0x82
je 0x453e96
cmp ecx, 0x83
je 0x453e96
mov ecx, dword [ebp - 0x848]
mov dword [ebp - 0x84c], ecx
mov ecx, eax
shr ecx, 0x18
mov byte [ebp - 0x824], cl
mov ecx, eax
shr ecx, 0x10
mov byte [ebp - 0x823], cl
mov ecx, eax
mov byte [ebp - 0x821], al
lea eax, [ebp - 0x824]
push eax
lea eax, [ebp - 0x82c]
shr ecx, 8
push eax
mov byte [ebp - 0x822], cl
call fcn.00462b74
push eax
lea ecx, [ebp - 0x838]
mov byte [ebp - 4], 4
call dword [0x4a2ea0]
lea ecx, [ebp - 0x82c]
mov byte [ebp - 4], 0
call dword [0x4a2ee8]
jmp 0x453c9d
xor ebx, ebx
push ebx
lea eax, [ebp - 0x820]
push eax
call fcn.0045cbb6
push 0x103
lea eax, [ebp - 0x117]
push ebx
mov byte [ebp - 4], 2
push eax
mov byte [ebp - 0x118], bl
call fcn.00491fe0
add esp, 0xc
push 0x206
lea eax, [ebp - 0x31e]
push ebx
push eax
mov word [ebp - 0x320], bx
call fcn.00491fe0
add esp, 0xc
lea eax, [ebp - 0x824]
push eax
lea eax, [ebp - 0x320]
push eax
lea eax, [ebp - 0x118]
push eax
lea eax, [edi + 0x58]
push eax
lea ecx, [ebp - 0x820]
mov dword [ebp - 0x824], ebx
call fcn.0045cd92
call dword [0x4d4030]
lea ebx, [edi + 0x68]
mov ecx, ebx
mov dword [ebp - 0x82c], eax
call dword [0x4a2d84]
mov eax, dword [ebx]
cmp dword [eax - 0xc], 0
jne 0x453f7f
lea eax, [ebp - 0x118]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
cmp eax, 0x3fffffff
mov dword [ebp - 0x844], eax
jle 0x453f48
xor eax, eax
jmp 0x453f6e
add eax, eax
call fcn.00491fa0
mov edx, dword [ebp - 0x82c]
mov ecx, dword [ebp - 0x844]
mov esi, esp
lea eax, [ebp - 0x118]
call fcn.004038f0
mov esi, dword [ebp - 0x850]
push eax
mov ecx, ebx
call dword [0x4a2d8c]
mov ecx, ebx
call dword [0x4a2d84]
mov eax, dword [ebp - 0x824]
and dword [edi + 0x74], 0
shl eax, 0xb
mov dword [edi + 0x70], eax
cmp byte [esi + 0x5f], 0
lea esi, [ebp - 0x82c]
sete al
push eax
push dword [edi + 0x74]
push dword [edi + 0x70]
call fcn.0045ab8d
add esp, 0xc
mov byte [ebp - 4], 3
jmp 0x4544f9
push 0
push dword [ebp - 0x848]
push 0x14e
push dword [esi + 0x20]
call ebx
lea eax, [edi + 0x88]
push eax
mov ecx, edi
lea ebx, [ebp - 0x82c]
call fcn.004539ce
push eax
lea ecx, [edi + 0x68]
mov byte [ebp - 4], 1
call dword [0x4a2ea0]
mov ecx, ebx
jmp 0x4543cb
and dword [ebp - 0x84c], 0
jmp 0x453c9d
mov eax, esi
call fcn.00407090
cmp eax, ebx
mov dword [ebp - 0x84c], eax
mov ecx, esi
jge 0x454019
push ebx
call fcn.004900fc
jmp 0x45451d
push 1
call fcn.004900fc
push ebx
push dword [ebp - 0x84c]
push 0x150
push dword [esi + 0x20]
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, eax
and ecx, 0xff
cmp ecx, 0x80
je 0x454282
cmp ecx, 0x81
je 0x454282
cmp ecx, 0x82
je 0x45415a
cmp ecx, 0x83
je 0x45415a
mov ecx, eax
shr ecx, 0x18
mov byte [ebp - 0x824], cl
mov ecx, eax
shr ecx, 0x10
mov byte [ebp - 0x823], cl
mov ecx, eax
mov byte [ebp - 0x821], al
lea eax, [ebp - 0x824]
push eax
lea eax, [ebp - 0x82c]
shr ecx, 8
push eax
mov byte [ebp - 0x822], cl
call fcn.00462b74
push eax
lea ecx, [ebp - 0x838]
mov byte [ebp - 4], 9
call dword [0x4a2ea0]
lea ecx, [ebp - 0x82c]
mov byte [ebp - 4], bl
call dword [0x4a2ee8]
jmp 0x453c9f
mov dword [edi + 0x70], eax
mov dword [edi + 0x74], ecx
mov eax, dword [ebp - 0x850]
cmp byte [eax + 0x5f], bl
lea esi, [ebp - 0x82c]
sete al
push eax
push dword [edi + 0x74]
push dword [edi + 0x70]
call fcn.0045ab8d
add esp, 0xc
push eax
lea ecx, [edi + 0x88]
mov byte [ebp - 4], 0xd
call dword [0x4a2ea0]
mov ecx, esi
call dword [0x4a2ee8]
mov eax, dword [ebp - 0x850]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push ebx
push dword [ebp - 0x84c]
push 0x150
push dword [eax + 0x20]
call esi
push ebx
push dword [ebp - 0x84c]
mov dword [edi + 0x60], eax
mov eax, dword [ebp - 0x850]
push 0x14e
push dword [eax + 0x20]
call esi
lea ecx, [ebp - 0x83c]
call dword [0x4a2ee8]
lea ecx, [ebp - 0x834]
jmp 0x4543cb
push ebx
lea eax, [ebp - 0x820]
push eax
call fcn.0045cbb6
push 0x103
lea eax, [ebp - 0x117]
push ebx
mov byte [ebp - 4], 7
push eax
mov byte [ebp - 0x118], bl
call fcn.00491fe0
add esp, 0xc
push 0x206
lea eax, [ebp - 0x31e]
push ebx
push eax
mov word [ebp - 0x320], bx
call fcn.00491fe0
add esp, 0xc
lea eax, [ebp - 0x824]
push eax
lea eax, [ebp - 0x320]
push eax
lea eax, [ebp - 0x118]
push eax
lea eax, [edi + 0x58]
push eax
lea ecx, [ebp - 0x820]
mov dword [ebp - 0x824], ebx
call fcn.0045cd92
call dword [0x4d4030]
mov dword [ebp - 0x82c], eax
lea eax, [ebp - 0x320]
lea ecx, [edi + 0x68]
push eax
call dword [0x4a2d8c]
lea ecx, [edi + 0x68]
call dword [0x4a2d84]
mov eax, dword [edi + 0x68]
cmp dword [eax - 0xc], ebx
jne 0x454251
lea eax, [ebp - 0x118]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
cmp eax, 0x3fffffff
mov dword [ebp - 0x844], eax
jle 0x454218
xor eax, eax
jmp 0x45423e
add eax, eax
call fcn.00491fa0
mov edx, dword [ebp - 0x82c]
mov ecx, dword [ebp - 0x844]
mov esi, esp
lea eax, [ebp - 0x118]
call fcn.004038f0
mov esi, dword [ebp - 0x850]
push eax
lea ecx, [edi + 0x68]
call dword [0x4a2d8c]
lea ecx, [edi + 0x68]
call dword [0x4a2d84]
mov eax, dword [ebp - 0x824]
shl eax, 0xb
mov dword [edi + 0x70], eax
mov dword [edi + 0x74], ebx
cmp byte [esi + 0x5f], bl
lea esi, [ebp - 0x82c]
sete al
push eax
push ebx
push dword [edi + 0x70]
call fcn.0045ab8d
add esp, 0xc
mov byte [ebp - 4], 8
jmp 0x4544f9
lea eax, [edi + 0x88]
push eax
mov ecx, edi
lea ebx, [ebp - 0x82c]
call fcn.004539ce
push eax
lea ecx, [edi + 0x68]
mov byte [ebp - 4], 6
call dword [0x4a2ea0]
mov ecx, ebx
call dword [0x4a2ee8]
and dword [edi + 0x70], 0
and dword [edi + 0x74], 0
jmp 0x45451d
mov eax, esi
call fcn.00407090
push ebx
push eax
push 0x150
push dword [esi + 0x20]
call dword [sym.imp.USER32.dll_SendMessageW]
movzx ecx, al
cmp ecx, 0x7f
mov dword [edi + 0x60], eax
ja 0x4543d6
mov ecx, eax
shr ecx, 0x18
mov byte [ebp - 0x834], cl
mov ecx, eax
shr ecx, 0x10
mov byte [ebp - 0x833], cl
mov ecx, eax
mov byte [ebp - 0x831], al
lea eax, [ebp - 0x834]
push eax
lea eax, [ebp - 0x82c]
shr ecx, 8
push eax
mov byte [ebp - 0x832], cl
call fcn.00462b74
push eax
lea ecx, [ebp - 0x838]
mov byte [ebp - 4], 0xe
call dword [0x4a2ea0]
lea ecx, [ebp - 0x82c]
mov byte [ebp - 4], bl
call dword [0x4a2ee8]
lea eax, [ebp - 0x824]
push 0x3a
push eax
lea esi, [ebp - 0x838]
call fcn.004548cc
pop ecx
pop ecx
lea ecx, [ebp - 0x83c]
call dword [0x4a2ef4]
push ebx
push ebx
lea eax, [ebp - 0x85c]
push eax
push ebx
push ebx
mov eax, 0x200
push eax
mov byte [ebp - 4], 0x10
mov esi, dword [ebp - 0x824]
push eax
lea ecx, [ebp - 0x83c]
call dword [0x4a2bd0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetVolumeInformationW]
push 0xffffffffffffffff
lea ecx, [ebp - 0x83c]
call dword [0x4a2bcc]
lea eax, [ebp - 0x83c]
push eax
lea ecx, [edi + 0x68]
call dword [0x4a2ea0]
lea eax, [ebp - 0x838]
push eax
lea ecx, [edi + 0x64]
call dword [0x4a2ea0]
lea ecx, [ebp - 0x83c]
call dword [0x4a2ee8]
lea ecx, [ebp - 0x824]
call dword [0x4a2ee8]
jmp 0x45451d
push ebx
lea eax, [ebp - 0x820]
push eax
call fcn.0045cbb6
push 0x103
lea eax, [ebp - 0x117]
push ebx
mov byte [ebp - 4], 0x11
push eax
mov byte [ebp - 0x118], bl
call fcn.00491fe0
add esp, 0xc
push 0x206
lea eax, [ebp - 0x31e]
push ebx
push eax
mov word [ebp - 0x320], bx
call fcn.00491fe0
add esp, 0xc
lea eax, [ebp - 0x834]
push eax
lea eax, [ebp - 0x320]
push eax
lea eax, [ebp - 0x118]
push eax
lea eax, [edi + 0x58]
push eax
lea ecx, [ebp - 0x820]
mov dword [ebp - 0x834], ebx
call fcn.0045cd92
call dword [0x4d4030]
mov dword [ebp - 0x82c], eax
lea eax, [ebp - 0x320]
lea ecx, [edi + 0x68]
push eax
call dword [0x4a2d8c]
lea ecx, [edi + 0x68]
call dword [0x4a2d84]
mov eax, dword [edi + 0x68]
cmp dword [eax - 0xc], ebx
jne 0x4544cd
lea eax, [ebp - 0x118]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
cmp eax, 0x3fffffff
mov dword [ebp - 0x844], eax
jle 0x454494
xor eax, eax
jmp 0x4544ba
add eax, eax
call fcn.00491fa0
mov edx, dword [ebp - 0x82c]
mov ecx, dword [ebp - 0x844]
mov esi, esp
lea eax, [ebp - 0x118]
call fcn.004038f0
mov esi, dword [ebp - 0x850]
push eax
lea ecx, [edi + 0x68]
call dword [0x4a2d8c]
lea ecx, [edi + 0x68]
call dword [0x4a2d84]
mov eax, dword [ebp - 0x834]
shl eax, 0xb
mov dword [edi + 0x70], eax
mov dword [edi + 0x74], ebx
cmp byte [esi + 0x5f], bl
lea esi, [ebp - 0x82c]
sete al
push eax
push ebx
push dword [edi + 0x70]
call fcn.0045ab8d
add esp, 0xc
mov byte [ebp - 4], 0x12
push eax
lea ecx, [edi + 0x88]
call dword [0x4a2ea0]
lea ecx, [ebp - 0x82c]
call dword [0x4a2ee8]
lea ecx, [ebp - 0x820]
call fcn.0045cc5a
lea ecx, [ebp - 0x838]
call dword [0x4a2ee8]
lea esp, [ebp - 0x880]
call fcn.0049211a
ret 0x10