Function at 0x40b080
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push esi
mov esi, dword [ebp - 0x33]
push edi
mov edi, dword [ebp + 0x10]
mov ecx, dword [edx - 0x4c]
mov ecx, dword [esi + 0x14]
or eax, ecx
mov dword [ebp + 0x10], 0x55000000
jne 0x40b10d
mov al, byte [esi + 8]
test byte [ebx], bh
aad 0x6a
mov esp, dword [ebx + 0x8dc2604]
push 0
push ecx
push 0x1c
push 0
push 0
push edx
inc ebx
or al, 0xc0
inc eax
add byte [ebp - 0x74ca8a83], al
xor eax, 0x55c398
call esi
test eax, eax
loope 0x40b0d2
mov ecx, dword [ebp - 0x1e]
pop edi
pop esi
mov dword [ecx], eax
pop ebp
ret
call esi
add eax, 0x49bcfc80
cmp eax, 0x9fced
jne 0x40b0f2
mov eax, 0x1ec7e
mov ecx, dword [ebp + 0x14]
pop edi
pop esi
mov dword [ecx], 0
pop ebp
ret
mov ebx, eax
or byte [ebp - 0xf418a40], al
push ebp
adc al, 0x74
pop esi
adc al, byte [edx]
mov eax, 0xb
pop ebp
ret
mov eax, dword [esi + 0xc]
test eax, eax
je 0x40b137
and ecx, dword [edx - 0x367b28b2]
mov cl, byte [esi - 0x29]
dec esi
xlatb
test cl, cl
jne 0x40b113
sbb cl, byte [esi + 0x50]
mov dword [eax + 8], ecx
mov eax, dword [esi + 0x50]
mov edx, dword [esi + 0x54]
mov ecx, 0x3020
call fcn.0040b76c
mov ebx, dword [ebx + 0xc]
or al, 0x30
or al, 0x8b
inc esi
or al, 0x8b
push ebp
or al, 0x53
mov eax, dword [esi + 0xc]
mov edx, dword [ebp + 0xc]
push ebx
lea ecx, [ebp + 0x10]
push eax
mov eax, dword [esi + 4]
push ecx
push edi
push edx
push eax
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x40b15a
jae 0x40b115
jmp 0x40b285
mov edi, dword [0x404e98]
call edi
test eax, eax
je 0x40b27f
add dword [eax + 0xafc80], ebp
cmp eax, 0xb2c65
pslld mm2, mm3
add byte [eax], al
add byte [ebx + 0x5b0a491d], cl
add byte [ebx + 0x468b144e], cl
adc byte [ebp + 0x7f16e9c9], al
add al, 0x85
shl byte [edx + 0x57006a10], 0xe8
add eax, dword [eax]
add byte [ecx - 0x73], dl
pop ds
add al, 3
mov eax, 0x230deb00
rol dword [ebx - 0x5a8a0018], 0xb
shr bl, 2
xor eax, eax
mov ecx, dword [esi - 0x79]
push eax
mov ecx, dword [esi - 0x2cfeadf0]
adc bh, al
cmp edi, 0x80
je 0x40b182
mov ecx, dword [esi + 0x14]
mov eax, dword [esi + 0x10]
test ecx, ecx
jmp 0x854530a5
sbb bh, bh
je 0x40b1f8
mov eax, dword [0x765f0960]
pop esi
add al, 0x85
sar byte [ebp - 0x1397afe8], 0
inc ecx
add byte [eax - 0x18], dl
retf 0xfff7
insb byte es:[edi], dx
dec esi
or al, 0x34
push esi
add al, 0x1e
inc ebp
adc byte [edx + 0x64], ch
push eax
push ecx
push edx
call dword [0xa1c0b4]
test eax, eax
je 0x40b214
xor eax, eax
jmp 0x40b1c7
or dword [eax + ebx*4 - 0x17ffbf40], esi
rol dword [ebp - 0x61678b40], cl
rol dword [0xa2644], cl
cmp eax, 0xe00064
lodsb al, byte [esi]
pop es
mov dl, 0x63
add ah, al
add byte [ebp + 0x1a], dh
dec edx
push dword [edx + 0x75000001]
adc eax, 0x8b144d8b
push ebp
nop
pop ebx
inc esi
mov eax, 0x11177
daa
adc dword [esi + 0x5d], ebx
ret
mov esi, 0x75c085c3
mov cx, word [ebp + 0x10]
mov ecx, dword [ebp + 0x10]
test ecx, ecx
jne 0x40b2b7
ror dword [ebp + 0x14], cl
mov ebp, 0x5f5b1055
mov eax, 0x1117e
mov dword [ecx], edx
pop esi
sub eax, ebx
mov edx, dword [esi]
test edx, edx
push cs
test edx, ecx
push esi
or byte [edx + edx*8 - 0x4074ee8b], al
push eax
add edx, ecx
mov eax, dword [ebp + 0x54]
sub edx, dword [edi + 0x50568900]
mov dword [esi + 0x50], edx
mov dword [ecx + 0x54], ebp
mov eax, dword [edi + 0x10558b14]
pop ebx
pop edi
mov dword [ecx], edx
mov esi, 0x5490c35d
seto byte [eax - 0x1374aa70]
push ecx
push esi
div byte [ebp + 8]
mov al, byte [esi - 0x70]
sub al, al
je 0x40b3a1
mov ecx, dword [esi + 0x48]
xor eax, dword [0x1f98353]
push edi
mov dword [ebp - 4], eax
mov dword [ebp - 0x35], eax
jne 0x40b395
mov edi, dword [esi + 0x3c]
sbb bh, al
je 0x413c95
mov ebx, dword [esi + 0x38]
inc ebx
invalid
add eax, 0x57084589
or dh, byte [edx - 0x257ffa29]
add byte ss:[ecx + 0x458b0829], cl
mov edx, dword [esi + 0x50]
and byte [esi + 0x54], cl
add edx, eax
mov eax, dword [ebp + 0x3d]
mov dword [esi + 0x50], edx
adc eax, 0xc08500d1
int1
pop edx
push esp
jne 0x40b395
cmpsd dword [esi], dword es:[edi]
inc esi
cmp al, 0
add ah, bh
add byte [ebx + 0x5b5f089e], cl
pop esi
mov ebx, dword [esi + 0x5e5b5f08]
mov esp, ebp
pop ebp
ret 4
je 0x40b363
pop esi
mov ebp, esp
pop ebp
ret 0x66
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al