Function at 0x1115c680
Capabilities:
Read file on windows
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1118cfc5
mov eax, dword fs:[0]
push eax
sub esp, 0x31c
mov eax, dword [0x111eb774]
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
lea eax, [ebp - 0x114]
push eax
push 0x104
mov dword [ebp - 0x2c4], ecx
call dword [0x11193548]
push 0x104
lea ecx, [ebp - 0x218]
push ecx
lea edx, [ebp - 0x114]
push edx
call dword [0x111933fc]
xor ebx, ebx
mov edi, 0xf
lea eax, [ebp - 0x114]
mov dword [ebp - 0x290], edi
mov dword [ebp - 0x294], ebx
mov byte [ebp - 0x2a4], bl
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1115c701
sub eax, edx
push eax
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x2a4]
call fcn.110091f0
push 9
push str.xbios.exe
lea ecx, [ebp - 0x2a4]
mov dword [ebp - 4], ebx
call fcn.1100fb30
cmp dword [ebp - 0x290], 0x10
mov eax, dword [ebp - 0x2a4]
jae 0x1115c747
lea eax, [ebp - 0x2a4]
push 0x11199e4c
push eax
call fcn.11163fed
mov esi, eax
add esp, 8
cmp esi, ebx
je 0x1115c776
push esi
push 0x1f7f
push 1
push 0x111bde90
call fcn.111648da
push esi
call fcn.11163db7
add esp, 0x14
push 0x44
lea ecx, [ebp - 0x328]
push ebx
push ecx
call fcn.11161d20
add esp, 0xc
xor eax, eax
push 1
xor edx, edx
push 0x111ab720
lea ecx, [ebp - 0x26c]
mov dword [ebp - 0x328], 0x44
mov dword [ebp - 0x2fc], 1
mov word [ebp - 0x2f8], dx
mov dword [ebp - 0x2d4], eax
mov dword [ebp - 0x2d0], eax
mov dword [ebp - 0x2cc], eax
mov dword [ebp - 0x2c8], eax
mov dword [ebp - 0x258], edi
mov dword [ebp - 0x25c], ebx
mov byte [ebp - 0x26c], al
call fcn.110091f0
lea eax, [ebp - 0x114]
mov byte [ebp - 4], 1
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1115c7f0
sub eax, edx
push eax
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x26c]
call fcn.1100fb30
push 0xb
push str.xbios.exe_
lea ecx, [ebp - 0x26c]
call fcn.1100fb30
lea eax, [ebp - 0x218]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1115c827
sub eax, edx
push eax
lea ecx, [ebp - 0x218]
push ecx
lea ecx, [ebp - 0x26c]
call fcn.1100fb30
push 9
push str.xbios.txt
lea ecx, [ebp - 0x26c]
call fcn.1100fb30
cmp dword [ebp - 0x258], 0x10
mov eax, dword [ebp - 0x26c]
jae 0x1115c86a
lea eax, [ebp - 0x26c]
lea edx, [ebp - 0x2d4]
push edx
lea ecx, [ebp - 0x328]
push ecx
push ebx
push ebx
push 0x8000000
push 1
push ebx
push ebx
push eax
push ebx
call dword [0x111934f4]
cmp eax, ebx
je 0x1115d0fa
mov edx, dword [ebp - 0x2d4]
push 0x4e20
push edx
call dword [0x11193558]
mov eax, dword [ebp - 0x2d4]
xor ebx, ebx
push ebx
push eax
call dword [0x11193400]
mov ecx, dword [ebp - 0x2d4]
mov esi, dword [0x11193578]
push ecx
call esi
mov edx, dword [ebp - 0x2d0]
push edx
call esi
lea eax, [ebp - 0x114]
mov dword [ebp - 0x274], 0xf
mov dword [ebp - 0x278], ebx
mov byte [ebp - 0x288], bl
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1115c8f0
sub eax, edx
push eax
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x288]
call fcn.110091f0
push 9
push str.xbios.txt
lea ecx, [ebp - 0x288]
mov byte [ebp - 4], 2
call fcn.1100fb30
mov eax, dword [ebp - 0x288]
mov edi, 0x10
cmp dword [ebp - 0x274], edi
jae 0x1115c93b
lea eax, [ebp - 0x288]
push 0x1119a064
push eax
call fcn.11163fed
mov esi, eax
add esp, 8
cmp esi, ebx
jne 0x1115c9ac
cmp dword [ebp - 0x274], edi
jb 0x1115c966
mov ecx, dword [ebp - 0x288]
push ecx
call fcn.111618c1
add esp, 4
mov esi, 0xf
mov dword [ebp - 0x274], esi
mov dword [ebp - 0x278], ebx
mov byte [ebp - 0x288], 0
cmp dword [ebp - 0x258], edi
jb 0x1115c995
mov edx, dword [ebp - 0x26c]
push edx
call fcn.111618c1
add esp, 4
cmp dword [ebp - 0x290], edi
mov dword [ebp - 0x258], esi
mov dword [ebp - 0x25c], ebx
jmp 0x1115d130
push 2
push 0
push esi
call fcn.11165e12
lea ecx, [ebp - 0x2e4]
push ecx
push esi
call fcn.11169458
mov ebx, dword [ebp - 0x2e4]
push esi
call fcn.1116939a
add esp, 0x18
lea eax, [ebx + 1]
call fcn.11166150
mov edi, esp
push esi
push ebx
push 1
push edi
mov byte [edi + ebx], 0
call fcn.11165b72
push esi
call fcn.11163db7
mov eax, edi
add esp, 0x14
mov dword [ebp - 0x220], 0xf
mov dword [ebp - 0x224], 0
mov byte [ebp - 0x234], 0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1115ca13
sub eax, edx
push eax
push edi
lea ecx, [ebp - 0x234]
call fcn.110091f0
mov eax, dword [ebp - 0x2a4]
mov esi, 0x10
mov byte [ebp - 4], 3
cmp dword [ebp - 0x290], esi
jae 0x1115ca46
lea eax, [ebp - 0x2a4]
push eax
call fcn.11164720
mov eax, dword [ebp - 0x288]
add esp, 4
cmp dword [ebp - 0x274], esi
jae 0x1115ca63
lea eax, [ebp - 0x288]
push eax
call fcn.11164720
add esp, 4
push 5
push 0
push str.Bven:
lea ecx, [ebp - 0x234]
call fcn.1100e710
mov esi, eax
cmp esi, 0xffffffff
je 0x1115cade
push 1
push esi
push 0x1119b568
lea ecx, [ebp - 0x234]
call fcn.1100e710
cmp eax, 0xffffffff
je 0x1115cade
sub eax, esi
sub eax, 5
push eax
add esi, 5
push esi
lea edx, [ebp - 0x250]
push edx
lea ecx, [ebp - 0x234]
call fcn.11010680
mov ebx, dword [ebp - 0x2c4]
push eax
mov ecx, ebx
mov byte [ebp - 4], 4
call fcn.110108b0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 3
call fcn.11008630
jmp 0x1115cae4
mov ebx, dword [ebp - 0x2c4]
push 5
push 0
push str.Bver:
lea ecx, [ebp - 0x234]
call fcn.1100e710
mov esi, eax
cmp esi, 0xffffffff
je 0x1115cb4f
push 1
push esi
push 0x1119b568
lea ecx, [ebp - 0x234]
call fcn.1100e710
cmp eax, 0xffffffff
je 0x1115cb4f
sub eax, esi
sub eax, 5
push eax
add esi, 5
push esi
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x234]
call fcn.11010680
push eax
lea ecx, [ebx + 0x1c]
mov byte [ebp - 4], 5
call fcn.110108b0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 3
call fcn.11008630
push 5
push 0
push str.Bdat:
lea ecx, [ebp - 0x234]
call fcn.1100e710
mov esi, eax
cmp esi, 0xffffffff
je 0x1115cbba
push 1
push esi
push 0x1119b568
lea ecx, [ebp - 0x234]
call fcn.1100e710
cmp eax, 0xffffffff
je 0x1115cbba
sub eax, esi
sub eax, 5
push eax
add esi, 5
push esi
lea ecx, [ebp - 0x250]
push ecx
lea ecx, [ebp - 0x234]
call fcn.11010680
push eax
lea ecx, [ebx + 0x38]
mov byte [ebp - 4], 6
call fcn.110108b0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 3
call fcn.11008630
push 5
push 0
push str.Sman:
lea ecx, [ebp - 0x234]
call fcn.1100e710
mov esi, eax
cmp esi, 0xffffffff
je 0x1115cc25
push 1
push esi
push 0x1119b568
lea ecx, [ebp - 0x234]
call fcn.1100e710
cmp eax, 0xffffffff
je 0x1115cc25
sub eax, esi
sub eax, 5
push eax
add esi, 5
push esi
lea edx, [ebp - 0x250]
push edx
lea ecx, [ebp - 0x234]
call fcn.11010680
push eax
lea ecx, [ebx + 0x54]
mov byte [ebp - 4], 7
call fcn.110108b0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 3
call fcn.11008630
push 5
push 0
push str.Spro:
lea ecx, [ebp - 0x234]
call fcn.1100e710
mov esi, eax
cmp esi, 0xffffffff
je 0x1115cc90
push 1
push esi
push 0x1119b568
lea ecx, [ebp - 0x234]
call fcn.1100e710
cmp eax, 0xffffffff
je 0x1115cc90
sub eax, esi
sub eax, 5
push eax
add esi, 5
push esi
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x234]
call fcn.11010680
push eax
lea ecx, [ebx + 0x70]
mov byte [ebp - 4], 8
call fcn.110108b0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 3
call fcn.11008630
push 5
push 0
push str.Sser:
lea ecx, [ebp - 0x234]
call fcn.1100e710
mov esi, eax
cmp esi, 0xffffffff
je 0x1115cd77
push 1
push esi
push 0x1119b568
lea ecx, [ebp - 0x234]
call fcn.1100e710
cmp eax, 0xffffffff
je 0x1115cd02
sub eax, esi
sub eax, 5
push eax
add esi, 5
push esi
lea ecx, [ebp - 0x250]
push ecx
lea ecx, [ebp - 0x234]
call fcn.11010680
push eax
lea ecx, [ebx + 0xa8]
mov byte [ebp - 4], 9
call fcn.110108b0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 3
call fcn.11008630
cmp dword [ebx + 0xb8], 0
jne 0x1115cd77
push 5
push 0
push str.Cser:
lea ecx, [ebp - 0x234]
call fcn.1100e710
mov esi, eax
cmp esi, 0xffffffff
je 0x1115cd77
push esi
push 0x1119b568
lea ecx, [ebp - 0x234]
call fcn.1110c890
cmp eax, 0xffffffff
je 0x1115cd77
sub eax, esi
sub eax, 5
push eax
add esi, 5
push esi
lea edx, [ebp - 0x250]
push edx
lea ecx, [ebp - 0x234]
call fcn.11010680
push eax
lea ecx, [ebx + 0xa8]
mov byte [ebp - 4], 0xa
call fcn.110108b0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 3
call fcn.11008630
push 5
push 0
push str.Cass:
lea ecx, [ebp - 0x234]
call fcn.1100e710
mov esi, eax
cmp esi, 0xffffffff
je 0x1115cde5
push 1
push esi
push 0x1119b568
lea ecx, [ebp - 0x234]
call fcn.1100e710
cmp eax, 0xffffffff
je 0x1115cde5
sub eax, esi
sub eax, 5
push eax
add esi, 5
push esi
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x234]
call fcn.11010680
push eax
lea ecx, [ebx + 0x8c]
mov byte [ebp - 4], 0xb
call fcn.110108b0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 3
call fcn.11008630
xor edi, edi
push 5
push edi
push str.Rdev:
lea ecx, [ebp - 0x234]
call fcn.1100e710
mov esi, eax
cmp esi, 0xffffffff
je 0x1115d0af
push 1
push esi
push 0x1119b568
lea ecx, [ebp - 0x234]
call fcn.1100e710
cmp eax, 0xffffffff
je 0x1115d0a6
mov dword [ebp - 0x2ac], 0xf
mov dword [ebp - 0x2b0], 0
mov byte [ebp - 0x2c0], 0
sub eax, esi
sub eax, 5
push eax
add esi, 5
push esi
lea ecx, [ebp - 0x250]
push ecx
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 0xc
call fcn.11010680
push eax
lea ecx, [ebp - 0x2c0]
mov byte [ebp - 4], 0xd
call fcn.110108b0
cmp dword [ebp - 0x23c], 0x10
mov byte [ebp - 4], 0xc
jb 0x1115ce88
mov edx, dword [ebp - 0x250]
push edx
call fcn.111618c1
add esp, 4
push 5
push edi
push str.Rsiz:
lea ecx, [ebp - 0x234]
call fcn.1100e710
push 1
mov esi, eax
push esi
push 0x1119b568
lea ecx, [ebp - 0x234]
call fcn.1100e710
cmp esi, 0xffffffff
je 0x1115cf07
sub eax, esi
sub eax, 5
push eax
add esi, 5
push esi
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x234]
call fcn.11010680
cmp dword [eax + 0x14], 0x10
jb 0x1115ced9
mov eax, dword [eax]
push 0x10
push 0
push eax
call fcn.1116364b
movzx ecx, ax
add esp, 0xc
cmp dword [ebp - 0x23c], 0x10
mov dword [ebp - 0x2c4], ecx
jb 0x1115cf07
mov edx, dword [ebp - 0x250]
push edx
call fcn.111618c1
add esp, 4
push 5
push edi
push str.Rtyp:
lea ecx, [ebp - 0x234]
call fcn.1100e710
push 1
mov esi, eax
push esi
push 0x1119b568
lea ecx, [ebp - 0x234]
call fcn.1100e710
cmp esi, 0xffffffff
je 0x1115cf86
sub eax, esi
sub eax, 5
push eax
add esi, 5
push esi
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x234]
call fcn.11010680
cmp dword [eax + 0x14], 0x10
jb 0x1115cf58
mov eax, dword [eax]
push 0x10
push 0
push eax
call fcn.1116364b
movzx ecx, ax
add esp, 0xc
cmp dword [ebp - 0x23c], 0x10
mov dword [ebp - 0x2dc], ecx
jb 0x1115cf86
mov edx, dword [ebp - 0x250]
push edx
call fcn.111618c1
add esp, 4
push 5
push edi
push str.Rspd:
lea ecx, [ebp - 0x234]
call fcn.1100e710
push 1
mov esi, eax
push esi
push 0x1119b568
lea ecx, [ebp - 0x234]
call fcn.1100e710
mov edi, eax
cmp esi, 0xffffffff
je 0x1115d007
sub eax, esi
sub eax, 5
push eax
lea ecx, [esi + 5]
push ecx
lea edx, [ebp - 0x250]
push edx
lea ecx, [ebp - 0x234]
call fcn.11010680
cmp dword [eax + 0x14], 0x10
jb 0x1115cfd9
mov eax, dword [eax]
push 0x10
push 0
push eax
call fcn.1116364b
movzx eax, ax
add esp, 0xc
cmp dword [ebp - 0x23c], 0x10
mov dword [ebp - 0x2d8], eax
jb 0x1115d007
mov ecx, dword [ebp - 0x250]
push ecx
call fcn.111618c1
add esp, 4
test dword [ebp - 0x2c4], 0x8000
jne 0x1115d08a
lea edx, [ebp - 0x2c0]
push edx
lea ecx, [ebx + 0xc4]
call fcn.11024810
lea eax, [ebp - 0x2c4]
push eax
lea ecx, [ebx + 0xe4]
call fcn.1115bf80
mov ecx, dword [ebp - 0x2dc]
push ecx
lea edx, [ebp - 0x250]
push edx
mov ecx, ebx
call fcn.1115c180
push eax
lea ecx, [ebx + 0xd4]
mov byte [ebp - 4], 0xe
call fcn.1115c5f0
cmp dword [ebp - 0x23c], 0x10
mov byte [ebp - 4], 0xc
jb 0x1115d078
mov eax, dword [ebp - 0x250]
push eax
call fcn.111618c1
add esp, 4
lea ecx, [ebp - 0x2d8]
push ecx
lea ecx, [ebx + 0xf4]
call fcn.1115bf80
cmp dword [ebp - 0x2ac], 0x10
mov byte [ebp - 4], 3
jb 0x1115d0a6
mov edx, dword [ebp - 0x2c0]
push edx
call fcn.111618c1
add esp, 4
cmp esi, 0xffffffff
jne 0x1115cde7
cmp dword [ebp - 0x220], 0x10
jb 0x1115d0c7
mov eax, dword [ebp - 0x234]
push eax
call fcn.111618c1
add esp, 4
cmp dword [ebp - 0x274], 0x10
mov dword [ebp - 0x220], 0xf
mov dword [ebp - 0x224], 0
mov byte [ebp - 0x234], 0
jb 0x1115d0fa
mov ecx, dword [ebp - 0x288]
push ecx
call fcn.111618c1
add esp, 4
mov esi, 0x10
cmp dword [ebp - 0x258], esi
jb 0x1115d116
mov edx, dword [ebp - 0x26c]
push edx
call fcn.111618c1
add esp, 4
cmp dword [ebp - 0x290], esi
mov dword [ebp - 0x258], 0xf
mov dword [ebp - 0x25c], 0
mov byte [ebp - 0x26c], 0
jb 0x1115d148
mov eax, dword [ebp - 0x2a4]
push eax
call fcn.111618c1
add esp, 4
lea esp, [ebp - 0x338]
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.11161d01
mov esp, ebp
pop ebp
ret