Function at 0x432900
Capabilities:
Get file size
Read file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x4a20d5
push eax
mov dword fs:[0], esp
sub esp, 0x810
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
test edi, edi
jne 0x43296d
mov ecx, 0x4cfeb8
mov dword [ebp - 0x18], 0x4cfeb8
call fcn.00436390
mov dword [ebp - 0x14], eax
mov dword [ebp - 4], edi
cmp eax, 1
jne 0x43295c
push edi
push 0x4b362c
push 0x4b362c
push str.file___NULL
call fcn.00430100
add esp, 0x10
mov ecx, 0x4cfeb8
mov dword [ebp - 4], 0xffffffff
call fcn.004363a0
cmp dword [edi], 0xffffffff
jne 0x432a22
push 0x43fa20
push ecx
mov edx, 0x43fa80
mov ecx, 0x4ce180
call fcn.0043b0b0
mov dword [eax], 8
lea eax, [ebp - 0x41c]
push dword [edi + 0x54]
push str.Win32_Execute____s
push eax
call fcn.0043efe0
add esp, 0x14
mov edx, 0x43fa80
mov esi, eax
push 0x43fa20
push ecx
mov ecx, 0x4ce180
call fcn.0043b0b0
test esi, esi
mov edx, 8
push 1
mov ecx, dword [eax + 8]
mov eax, 0x4b362c
cmovne eax, esi
push eax
call fcn.00430600
mov esi, eax
add esp, 0x10
test esi, esi
je 0x432c44
push 0x43fa20
push ecx
mov edx, 0x43fa80
mov ecx, 0x4ce180
call fcn.0043b0b0
mov edi, eax
add esp, 8
mov ecx, dword [edi + 8]
cmp ecx, esi
je 0x432a0c
call fcn.00430940
mov dword [edi + 8], esi
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x14]
test esi, esi
jne 0x432a72
mov ecx, 0x4cfeb8
mov dword [ebp - 0x18], 0x4cfeb8
call fcn.00436390
mov dword [ebp - 0x14], eax
mov dword [ebp - 4], 1
cmp eax, 1
jne 0x432a61
push esi
push 0x4b362c
push 0x4b362c
push str.amount___NULL
call fcn.00430100
add esp, 0x10
mov ecx, 0x4cfeb8
mov dword [ebp - 4], 0xffffffff
call fcn.004363a0
mov eax, dword [esi]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x432b76
mov ebx, dword [ebp + 0x10]
lea ecx, [ebp + 8]
push ebx
push ecx
push eax
push dword [ebp + 0xc]
push dword [edi]
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov ecx, dword [ebp + 8]
mov dword [esi], ecx
test eax, eax
jne 0x432b76
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
cmp eax, 0x26
jne 0x432b89
lea eax, [ebp - 0x18]
push eax
push dword [edi]
call dword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
je 0x432b89
mov eax, dword [ebx + 0xc]
xor ecx, ecx
or ecx, dword [ebx + 8]
cmp eax, dword [ebp - 0x14]
jg 0x432b89
jl 0x432ae1
cmp ecx, dword [ebp - 0x18]
ja 0x432b89
push 0x43fa20
push ecx
mov edx, 0x43fa80
mov ecx, 0x4ce180
call fcn.0043b0b0
mov dword [eax], 7
lea eax, [ebp - 0x41c]
push dword [edi + 0x54]
push str.Win32_Read___End_of_File____s
push eax
call fcn.0043efe0
add esp, 0x14
mov edx, 0x43fa80
mov esi, eax
push 0x43fa20
push ecx
mov ecx, 0x4ce180
call fcn.0043b0b0
test esi, esi
mov edx, 7
push 1
mov ecx, dword [eax + 8]
mov eax, 0x4b362c
cmovne eax, esi
push eax
call fcn.00430600
mov esi, eax
add esp, 0x10
test esi, esi
je 0x432b76
push 0x43fa20
push ecx
mov edx, 0x43fa80
mov ecx, 0x4ce180
call fcn.0043b0b0
mov edi, eax
add esp, 8
mov ecx, dword [edi + 8]
cmp ecx, esi
je 0x432b73
call fcn.00430940
mov dword [edi + 8], esi
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call esi
push 0x43fa20
push ecx
mov edx, 0x43fa80
mov ecx, 0x4ce180
mov esi, eax
call fcn.0043b0b0
add esp, 8
mov edx, 0x43fa80
mov dword [eax + 4], esi
push 0x43fa20
push ecx
mov ecx, 0x4ce180
call fcn.0043b0b0
mov dword [eax], 5
lea eax, [ebp - 0x81c]
push dword [ebp + 8]
push dword [ebp - 0x1c]
push dword [edi + 0x54]
push esi
push str.Win32_Read___d_____s__u__u
push eax
call fcn.0043efe0
add esp, 0x20
mov edx, 0x43fa80
mov esi, eax
push 0x43fa20
push ecx
mov ecx, 0x4ce180
call fcn.0043b0b0
test esi, esi
mov edx, 5
push 1
mov ecx, dword [eax + 8]
mov eax, 0x4b362c
cmovne eax, esi
push eax
call fcn.00430600
mov edi, eax
add esp, 0x10
test edi, edi
je 0x432c44
push 0x43fa20
push ecx
mov edx, 0x43fa80
mov ecx, 0x4ce180
call fcn.0043b0b0
mov esi, eax
add esp, 8
mov ecx, dword [esi + 8]
cmp ecx, edi
je 0x432c41
call fcn.00430940
mov dword [esi + 8], edi
mov ecx, dword [ebp - 0xc]
xor al, al
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret