Function at 0x40b080
Capabilities:
Read file on windows

Disassembly:
add byte [eax], al
inc eax
add byte [ebx - 0x17afa7bd], cl
or eax, 0x8bfffff3
inc ebp
or byte [edi + 0x5e], bl
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push ebp
mov esp, edx
sbb cl, byte [ebx - 0x1d04f70d]
jge 0x40b026
xchg dword [esi + 0x79], eax
mov ecx, dword [esi + 0x14]
or eax, ecx
mov dword [ebp + 0x10], 0
jne 0x40b10d
mov al, byte [esi + 8]
test dl, ch
je 0x40b11b
mov edx, dword [esi + 4]
lea ecx, [ebp + 8]
push 0
push ecx
push 0x15
push 0
push 0x68
push edx
call dword [0x3f16630c]
test eax, eax
jne 0x40b0f2
mov esi, dword [ecx + 0x7640c098]
xor dword [ecx], esi
test eax, eax
jne 0x40b0d2
mov ecx, dword [ebp + 0x14]
pop edi
cmovbe eax, dword [ecx]
pop ebp
ret
call esi
add eax, 0xafc80
cmp eax, 0xa2ced
jne 0x40b0e5
mov eax, 0x1117e
mov ecx, ebx
invalid
push esi
or byte [ebp - 0x74f18a85], al
mov dl, byte [edi + ebx*2]
pop esi
mov dword [edx], eax
pop es
jo 0x40b103
add byte [eax], al
pop ebp
ret
mov eax, dword [esi + 0xc]
test eax, eax
je 0x40b137
mov cl, byte [esi - 0x36]
test byte [esi + 0x10], ch
sbb al, 0x8b
dec esi
push eax
mov ecx, dword [esi + 0x50]
mov dword [eax + 8], ecx
mov eax, eax
push eax
mov byte [0x20b95456], al
add byte [edi], ch
call 0x4113ad
mov edx, dword [esi + 0x1b]
mov dword [edx + 0xc], eax
mov esi, dword [eax - 0x3aaa97c4]
push ebx
lea ebx, [ecx + 0x468b5010]
jp 0x40b181
pop edi
push eax
call dword [sym.imp.KERNEL32.dll_ReadFile]
test dword [esi], ebx
xor dword [edi], eax
xor eax, eax
jmp 0x2140b285
add byte [esi - 0x6074ebb2], bh
mov esi, 0x9f8b144e
adc byte [ebp - 0x6cbf1d37], al
pop ebx
test eax, eax
jbe 0x40b1a2
sbb dword [eax], eax
push 0x3e8
loopne 0x40b1f0
or dh, al
add eax, dword [eax]
cmp bl, ch
or eax, 0xf883c153
push dword [ebp - 0x7d]
push ebx
rol dword [ebx - 0x7c8a0008], 0xb
rol byte [ebx + 2], 0x33
cmp eax, 0xffffffff
jne 0x40b12c
or eax, eax
inc ebx
add dh, byte [ebx]
inc esi
mov ecx, dword [esi + 0xc]
push eax
mov edx, dword [ecx - 0x57]
push edx
call ebx
mov edi, eax
cmp edi, 0x970080
je 0x40b182
test dword [edi + 0x60a13158], esp
add dword [ecx + 0x2f], 0x85665e8b
sal byte [ebp + 0x10], 0x50
push 0x2400ec
push eax
call fcn.0040a940
add esp, 0xc
or ah, byte [eax + 9]
inc ecx
add byte [ebp + 0x530574c0], al
call eax
xor esp, dword [edx]
push 1
call dword [0x683d4c]
mov edx, dword [ebp + 0x4568b0c]
lea eax, [ebp - 0x4a]
push 1
push eax
push ecx
push edx
call dword [0x6dc0b4]
adc eax, 0x6dc0b4
test eax, eax
je 0x40b214
xor eax, eax
jmp 0x40b1a4
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
sbb eax, sym.imp.KERNEL32.dll_GetLastError
call ebx
test eax, eax
je 0x40b285
call ebx
add eax, 0xafc80
cmp eax, 0xb4864
mov bh, 7
cmp eax, 0xb0054
jne 0x40b27a
dec edi
inc dword [edx]
add dword [eax], eax
add byte [ebp - 0x5f], dh
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
pop ebx
adc eax, 0x14fb0b8
add byte [ecx - 0x3ca2a1ef], cl
cmp eax, 0xafced
jne 0x40b268
mov ecx, dword [ebp + 0x39]
mov eax, dword [ebp - 0x47a03df0]
jle 0x40b272
add dword [0xa35e119a], eax
adc eax, 0xa1da63d
add al, dl
adc cl, byte [ebx - 0x5274ebb3]
adc byte [ebx + 0x5f], bl
mov eax, 0x19b7e
cmp eax, 0xa1da6
rcl byte [edx]
mov ecx, dword [ebp + 0x14]
mov ebp, dword [ebp - 0x47a0a4f0]
jle 0x40b215
add dword [eax], eax
cmp edx, dword [ecx]
pop esi
pop ebp
jnp 0x40b207
sal byte [ebp + 0x14], 0x2d
dec ebp
salc
adc al, 0xc9
sub eax, 0xc914d64d
jne 0x40b300
xor eax, 0x558b14a4
adc byte [ebx + 0x5f], bl
mov eax, 0x1117e
mov dword [ecx], edx
pop esi
pop ebp
ret
xchg ecx, eax
add byte [eax], dl
mov bl, 0x8b
pop esi
lodsb al, byte [esi]
inc edx
invalid