Function at 0x49d010
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0xbc
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x19]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x56a664
lea esi, [ebp - 0x38]
mov dword [esp], esi
call fcn.00509af0
mov dword [esp + 0xc], 0x56a905
mov dword [esp + 8], esi
mov dword [esp + 4], 0x400
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046b578
mov eax, dword [ebp - 0x38]
lea esi, [eax - 0xc]
cmp esi, 0x55a154
jne 0x49d6f7
lea eax, [ebp - 0x1a]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x56a664
lea esi, [ebp - 0x3c]
mov dword [esp], esi
call fcn.00509af0
mov dword [esp + 0xc], 0x56a905
mov dword [esp + 8], esi
mov dword [esp + 4], 0x400
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046b578
mov eax, dword [ebp - 0x3c]
lea esi, [eax - 0xc]
mov edx, 0x55a154
cmp edx, esi
jne 0x49d5db
lea eax, [ebp - 0x1b]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x56a715
lea esi, [ebp - 0x40]
mov dword [esp], esi
call fcn.00509af0
mov dword [esp + 8], esi
mov dword [esp + 4], 0x10
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046b578
mov eax, dword [ebp - 0x40]
lea esi, [eax - 0xc]
mov ecx, 0x55a154
cmp ecx, esi
jne 0x49d661
mov edx, dword [ebx + 0x18]
test edx, edx
je 0x49d637
mov eax, dword [ebx + 0x2c]
or eax, dword [ebx + 0x28]
je 0x49d4fc
mov eax, dword [ebx]
mov edi, dword [eax + 8]
test edi, edi
je 0x49d78d
lea eax, [ebp - 0x1c]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x56a72a
lea esi, [ebp - 0x44]
mov dword [esp], esi
call fcn.00509af0
mov dword [esp + 0xc], edi
mov dword [esp + 8], esi
mov dword [esp + 4], 0x10
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046b578
mov eax, dword [ebp - 0x44]
lea esi, [eax - 0xc]
mov edx, 0x55a154
cmp edx, esi
jne 0x49d513
mov eax, dword [ebx + 0x28]
mov edx, dword [ebx + 0x2c]
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], edx
lea eax, [ebp - 0x1d]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x56a740
lea esi, [ebp - 0x48]
mov dword [esp], esi
call fcn.00509af0
mov edx, dword [ebp - 0x98]
mov ecx, dword [ebp - 0x94]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 8], esi
mov dword [esp + 4], 0x10
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046b578
mov eax, dword [ebp - 0x48]
lea esi, [eax - 0xc]
mov ecx, 0x55a154
cmp ecx, esi
jne 0x49d693
mov eax, dword [ebx + 0x28]
mov dword [ebp - 0x98], eax
mov edi, dword [ebx + 0x2c]
mov eax, dword [ebx]
mov esi, dword [eax + 8]
shl esi, 9
cmp edi, 0
jbe 0x49d488
lea eax, [ebp - 0x1f]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x56a77c
lea edi, [ebp - 0x50]
mov dword [esp], edi
call fcn.00509af0
mov dword [esp + 0xc], esi
mov dword [esp + 8], edi
mov dword [esp + 4], 0x10
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046b578
mov eax, dword [ebp - 0x50]
lea esi, [eax - 0xc]
mov ecx, 0x55a154
cmp ecx, esi
jne 0x49d577
mov eax, dword [ebx]
mov eax, dword [eax + 8]
shl eax, 9
mov dword [esp], eax
call fcn.00538984
mov dword [ebx + 0x30], eax
test eax, eax
je 0x49d60d
lea eax, [ebp - 0x20]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x56a7af
lea esi, [ebp - 0x54]
mov dword [esp], esi
call fcn.00509af0
mov dword [esp + 8], esi
mov dword [esp + 4], 0x10
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046b578
mov eax, dword [ebp - 0x54]
lea esi, [eax - 0xc]
mov edx, 0x55a154
cmp edx, esi
jne 0x49d5a9
mov eax, dword [ebx + 0x18]
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov eax, dword [eax + 8]
shl eax, 9
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [ebx + 0x30]
mov dword [esp], eax
call sub.msvcrt.dll_fread
mov esi, eax
mov eax, dword [ebx]
mov edi, dword [eax + 8]
shl edi, 9
cmp esi, edi
je 0x49d30f
lea eax, [ebp - 0x21]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x56a7c8
lea ecx, [ebp - 0x58]
mov dword [esp], ecx
call fcn.00509af0
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], esi
lea eax, [ebp - 0x58]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x10
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046b578
mov eax, dword [ebp - 0x58]
lea edi, [eax - 0xc]
mov edx, 0x55a154
cmp edx, edi
jne 0x49d75b
lea eax, [ebp - 0x22]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x56a7ee
lea edi, [ebp - 0x5c]
mov dword [esp], edi
call fcn.00509af0
mov dword [esp + 0xc], esi
mov dword [esp + 8], edi
mov dword [esp + 4], 0x10
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046b578
mov eax, dword [ebp - 0x5c]
lea edi, [eax - 0xc]
mov ecx, 0x55a154
cmp ecx, edi
jne 0x49d545
xor edi, edi
mov eax, dword [ebx + 0x28]
mov edx, dword [ebx + 0x2c]
sub eax, esi
sbb edx, edi
mov dword [ebx + 0x28], eax
mov dword [ebx + 0x2c], edx
fld dword [ebx + 0x3c]
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], edx
fild qword [ebp - 0x90]
test edx, edx
js 0x49d508
fstp dword [ebp - 0x7c]
fld dword [ebp - 0x7c]
fsubr st(1)
fdivrp st(1)
fmul dword [0x56a964]
fnstcw word [ebp - 0x7e]
mov ax, word [ebp - 0x7e]
mov ah, 0xc
mov word [ebp - 0x80], ax
fldcw word [ebp - 0x80]
fistp dword [ebp - 0x84]
fldcw word [ebp - 0x7e]
mov edi, dword [ebp - 0x84]
mov dword [ebx + 0x40], edi
lea eax, [ebp - 0x23]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x56a804
lea esi, [ebp - 0x60]
mov dword [esp], esi
call fcn.00509af0
mov dword [esp + 0xc], edi
mov dword [esp + 8], esi
mov dword [esp + 4], 0x1000
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046b578
mov eax, dword [ebp - 0x60]
lea esi, [eax - 0xc]
mov edx, 0x55a154
cmp edx, esi
jne 0x49d729
mov eax, dword [ebx + 0x28]
mov edx, dword [ebx + 0x2c]
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], edx
lea eax, [ebp - 0x24]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x56a807
lea esi, [ebp - 0x64]
mov dword [esp], esi
call fcn.00509af0
mov edx, dword [ebp - 0x98]
mov ecx, dword [ebp - 0x94]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 8], esi
mov dword [esp + 4], 0x10
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046b578
mov eax, dword [ebp - 0x64]
lea esi, [eax - 0xc]
mov ecx, 0x55a154
cmp ecx, esi
jne 0x49d6c5
mov eax, dword [ebx]
mov eax, dword [eax + 8]
shl eax, 9
mov dword [ebx + 0x44], eax
mov eax, dword [ebx + 0x30]
mov dword [ebx + 0x48], eax
lea eax, [ebx + 0x44]
add esp, 0xbc
pop ebx
pop esi
pop edi
leave
ret
cmp dword [ebp - 0x98], esi
jae 0x49d1e8
lea eax, [ebp - 0x1e]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x56a758
lea edx, [ebp - 0x4c]
mov dword [esp], edx
call fcn.00509af0
mov dword [esp + 0x14], esi
mov ecx, dword [ebp - 0x98]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edi
lea eax, [ebp - 0x4c]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x10
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046b578
mov eax, dword [ebp - 0x4c]
lea esi, [eax - 0xc]
mov edx, 0x55a154
cmp edx, esi
jne 0x49d7b7
mov eax, dword [ebx]
mov esi, dword [eax + 8]
shl esi, 9
jmp 0x49d1e8
mov eax, dword [ebx]
mov edi, dword [eax + 8]
jmp 0x49d11b
fadd dword [0x56a960]
jmp 0x49d385
cmp dword [0x554500], 0
jne 0x49d879
mov eax, dword [esi + 8]
lea edx, [eax - 1]
mov dword [esi + 8], edx
test eax, eax
jg 0x49d162
lea eax, [ebp - 0x2b]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.005084ec
jmp 0x49d162
cmp dword [0x554500], 0
jne 0x49d801
mov eax, dword [edi + 8]
lea edx, [eax - 1]
mov dword [edi + 8], edx
test eax, eax
jg 0x49d356
lea eax, [ebp - 0x31]
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.005084ec
jmp 0x49d356
cmp dword [0x554500], 0
jne 0x49d819
mov eax, dword [esi + 8]
lea edx, [eax - 1]
mov dword [esi + 8], edx
test eax, eax
jg 0x49d22f
lea eax, [ebp - 0x2e]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.005084ec
jmp 0x49d22f
cmp dword [0x554500], 0
jne 0x49d831
mov eax, dword [esi + 8]
lea edx, [eax - 1]
mov dword [esi + 8], edx
test eax, eax
jg 0x49d28d
lea eax, [ebp - 0x2f]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.005084ec
jmp 0x49d28d
cmp dword [0x554500], 0
jne 0x49d8a9
mov eax, dword [esi + 8]
lea edx, [eax - 1]
mov dword [esi + 8], edx
test eax, eax
jg 0x49d0b4
lea eax, [ebp - 0x29]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.005084ec
jmp 0x49d0b4
mov dword [esp], 4
call fcn.00538b64
mov dword [eax], 5
mov dword [esp + 8], 0
mov dword [esp + 4], 0x57285c
mov dword [esp], eax
call fcn.00539374
mov dword [esp], 4
call fcn.00538b64
mov dword [eax], 8
mov dword [esp + 8], 0
mov dword [esp + 4], 0x57285c
mov dword [esp], eax
call fcn.00539374
cmp dword [0x554500], 0
jne 0x49d861
mov eax, dword [esi + 8]
lea edx, [eax - 1]
mov dword [esi + 8], edx
test eax, eax
jg 0x49d0f7
lea eax, [ebp - 0x2a]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.005084ec
jmp 0x49d0f7
cmp dword [0x554500], 0
jne 0x49d891
mov eax, dword [esi + 8]
lea edx, [eax - 1]
mov dword [esi + 8], edx
test eax, eax
jg 0x49d1cb
lea eax, [ebp - 0x2c]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.005084ec
jmp 0x49d1cb
cmp dword [0x554500], 0
jne 0x49d8c1
mov eax, dword [esi + 8]
lea edx, [eax - 1]
mov dword [esi + 8], edx
test eax, eax
jg 0x49d467
lea eax, [ebp - 0x33]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.005084ec
jmp 0x49d467
cmp dword [0x554500], 0
jne 0x49d8f1
mov eax, dword [esi + 8]
lea edx, [eax - 1]
mov dword [esi + 8], edx
test eax, eax
jg 0x49d069
lea eax, [ebp - 0x28]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.005084ec
jmp 0x49d069
cmp dword [0x554500], 0
jne 0x49d7e9
mov eax, dword [esi + 8]
lea edx, [eax - 1]
mov dword [esi + 8], edx
test eax, eax
jg 0x49d3fe
lea eax, [ebp - 0x32]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.005084ec
jmp 0x49d3fe
cmp dword [0x554500], 0
jne 0x49d8d9
mov eax, dword [edi + 8]
lea edx, [eax - 1]
mov dword [edi + 8], edx
test eax, eax
jg 0x49d30f
lea eax, [ebp - 0x30]
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.005084ec
jmp 0x49d30f
mov dword [esp], 4
call fcn.00538b64
mov dword [eax], 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0x57285c
mov dword [esp], eax
call fcn.00539374
cmp dword [0x554500], 0
jne 0x49d849
mov eax, dword [esi + 8]
lea edx, [eax - 1]
mov dword [esi + 8], edx
test eax, eax
jg 0x49d4ec
lea eax, [ebp - 0x2d]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.005084ec
jmp 0x49d4ec
mov dword [esp + 4], 0xffffffff
sub eax, 4
mov dword [esp], eax
call fcn.004dd8dc
jmp 0x49d73f
mov dword [esp + 4], 0xffffffff
sub eax, 4
mov dword [esp], eax
call fcn.004dd8dc
jmp 0x49d55b
mov dword [esp + 4], 0xffffffff
sub eax, 4
mov dword [esp], eax
call fcn.004dd8dc
jmp 0x49d58d
mov dword [esp + 4], 0xffffffff
sub eax, 4
mov dword [esp], eax
call fcn.004dd8dc
jmp 0x49d5bf
mov dword [esp + 4], 0xffffffff
sub eax, 4
mov dword [esp], eax
call fcn.004dd8dc
jmp 0x49d7cd
mov dword [esp + 4], 0xffffffff
sub eax, 4
mov dword [esp], eax
call fcn.004dd8dc
jmp 0x49d677
mov dword [esp + 4], 0xffffffff
sub eax, 4
mov dword [esp], eax
call fcn.004dd8dc
jmp 0x49d529
mov dword [esp + 4], 0xffffffff
sub eax, 4
mov dword [esp], eax
call fcn.004dd8dc
jmp 0x49d6a9
mov dword [esp + 4], 0xffffffff
sub eax, 4
mov dword [esp], eax
call fcn.004dd8dc
jmp 0x49d5f1
mov dword [esp + 4], 0xffffffff
sub eax, 4
mov dword [esp], eax
call fcn.004dd8dc
jmp 0x49d6db
mov dword [esp + 4], 0xffffffff
sub eax, 4
mov dword [esp], eax
call fcn.004dd8dc
jmp 0x49d771
mov dword [esp + 4], 0xffffffff
sub eax, 4
mov dword [esp], eax
call fcn.004dd8dc
jmp 0x49d70d