Function at 0x42a490
Capabilities:
Read file on windows
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x4a4803
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x8c
push ebx
push ebp
mov eax, dword [esp + 0xb0]
xor ebx, ebx
push eax
lea ecx, [esp + 0x34]
mov dword [esp + 0xa0], ebx
call fcn.0040f9a0
push 0x4b6e48
lea ecx, [esp + 0xa8]
mov dword [esp + 0x70], ebx
mov dword [esp + 0x54], ebx
call fcn.00443250
mov ecx, dword [esp + 0xa4]
push 0x4b1c88
push ecx
call dword [sym.imp.MSVCRT.dll_fopen]
mov ebp, eax
add esp, 8
cmp ebp, ebx
mov dword [esp + 0x4c], ebp
jne 0x42a538
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x9c], 0xffffffff
cmp eax, ebx
je 0x42a51f
push eax
call fcn.00442aa0
add esp, 4
pop ebp
xor al, al
pop ebx
mov ecx, dword [esp + 0x8c]
mov dword fs:[0], ecx
add esp, 0x98
ret
push esi
mov esi, dword [sym.imp.MSVCRT.dll_fread]
push edi
push ebp
push 1
lea edx, [esp + 0x24]
push 0x10
push edx
call esi
add esp, 0x10
cmp eax, 1
je 0x42a56d
push 0x4b6e40
push 1
push 0x4b6e30
push 0x4cb12c
call fcn.00441210
add esp, 0x10
mov eax, dword [esp + 0x1c]
push eax
call fcn.00442e30
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x20], eax
push ecx
call fcn.00442e60
mov edx, dword [esp + 0x2a]
mov word [esp + 0x28], ax
push edx
call fcn.00442e60
mov word [esp + 0x2e], ax
mov eax, dword [esp + 0x30]
push eax
call fcn.00442e60
mov ecx, dword [esp + 0x36]
mov word [esp + 0x34], ax
push ecx
call fcn.00442e60
mov edx, dword [esp + 0x3c]
mov word [esp + 0x3a], ax
push edx
call fcn.00442e60
mov word [esp + 0x40], ax
mov eax, dword [esp + 0x42]
push eax
call fcn.00442e60
movsx ecx, word [esp + 0x3e]
add esp, 0x1c
mov word [esp + 0x2a], ax
push 0x4b6e48
push ecx
push 0x4b6e18
call fcn.00443600
movsx eax, word [esp + 0x2e]
mov edi, dword [esp + 0x28]
lea eax, [eax + eax*2]
shl eax, 2
sub edi, eax
push eax
shr edi, 3
call fcn.00442a90
lea edx, [edi*8]
mov dword [esp + 0x44], eax
push edx
call fcn.00442a90
movsx ecx, word [esp + 0x36]
mov edx, dword [esp + 0x48]
mov dword [esp + 0x44], eax
movsx eax, word [esp + 0x3a]
push ebp
push ecx
push 0xc
push edx
mov dword [esp + 0xd8], eax
call esi
movsx ecx, word [esp + 0x46]
add esp, 0x24
cmp eax, ecx
je 0x42a65d
push 0x4b6e10
push 1
push 0x4b6e30
push 0x4cb12c
call fcn.00441210
add esp, 0x10
mov edx, dword [esp + 0x30]
push ebp
push edi
push 8
push edx
call esi
add esp, 0x10
cmp eax, edi
je 0x42a688
push 0x4b6e08
push 1
push 0x4b6e30
push 0x4cb12c
call fcn.00441210
add esp, 0x10
xor ebp, ebp
cmp word [esp + 0x22], bx
jle 0x42a6de
mov eax, dword [esp + 0x34]
lea esi, [eax + 8]
mov cx, word [esi - 2]
push ecx
call fcn.00442e60
mov word [esi - 2], ax
mov dx, word [esi]
push edx
call fcn.00442e60
mov word [esi], ax
mov ax, word [esi + 2]
push eax
call fcn.00442e60
mov word [esi + 2], ax
movzx cx, byte [esi - 6]
push ecx
call fcn.00442e60
mov byte [esi - 6], al
add esp, 0x10
movsx edx, word [esp + 0x22]
inc ebp
add esi, 0xc
cmp ebp, edx
jl 0x42a698
cmp edi, ebx
jle 0x42a74a
mov eax, dword [esp + 0x30]
mov dword [esp + 0x18], edi
lea esi, [eax + 4]
mov ax, word [esi - 2]
mov di, word [esi - 4]
push eax
call fcn.00442e60
push edi
mov ebp, eax
call fcn.00442e60
mov word [esp + 0x1c], ax
mov word [esp + 0x1e], bp
mov ecx, dword [esp + 0x1c]
mov dword [esi - 4], ecx
mov ax, word [esi + 2]
mov di, word [esi]
push eax
call fcn.00442e60
push edi
mov ebp, eax
call fcn.00442e60
mov word [esp + 0x20], ax
mov eax, dword [esp + 0x28]
mov word [esp + 0x22], bp
mov edx, dword [esp + 0x20]
mov dword [esi], edx
add esp, 0x10
add esi, 8
dec eax
mov dword [esp + 0x18], eax
jne 0x42a6ed
mov cx, word [esp + 0x22]
mov dword [esp + 0x14], 1
movsx eax, cx
cmp eax, 1
jl 0x42a9ae
cmp eax, ebx
mov dword [esp + 0x18], ebx
jle 0x42a99a
mov eax, dword [esp + 0x34]
lea ebp, [eax + 1]
mov dword [esp + 0x10], ebp
mov eax, dword [esp + 0x14]
xor ecx, ecx
mov cx, word [ebp + 7]
cmp ecx, eax
jne 0x42a97a
cmp byte [ebp], bl
je 0x42a97a
push 0x38
call sub.MFC42.DLL_operatornew
mov esi, eax
add esp, 4
mov dword [esp + 0x90], esi
cmp esi, ebx
mov byte [esp + 0xa4], 1
je 0x42a7de
mov dword [esi], ebx
mov dword [esi + 0xc], ebx
lea ecx, [esi + 0x14]
mov dword [esi + 0x10], ebx
call fcn.0042aa30
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
mov dword [esi + 0x28], ebx
mov dword [esi + 0x2c], ebx
mov dword [esi + 0x30], ebx
mov dword [esi + 0x34], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
jmp 0x42a7e0
xor esi, esi
lea eax, [esi + 0xc]
mov byte [esp + 0xa4], bl
mov dword [esp + 0x74], eax
mov edx, dword [eax]
mov dword [esp + 0x78], edx
mov eax, dword [eax]
cmp eax, ebx
je 0x42a7fe
mov eax, dword [eax]
jmp 0x42a800
xor eax, eax
cmp eax, ebx
mov dword [esp + 0x7c], eax
je 0x42a80c
mov eax, dword [eax]
jmp 0x42a80e
xor eax, eax
mov dword [esp + 0x80], eax
lea eax, [esi + 0x10]
mov dword [esp + 0x88], ebx
mov byte [esp + 0x8c], bl
mov byte [esp + 0x84], bl
mov byte [esp + 0x85], bl
mov dword [esp + 0x58], eax
mov ecx, dword [eax]
mov dword [esp + 0x5c], ecx
mov eax, dword [eax]
cmp eax, ebx
je 0x42a848
mov eax, dword [eax]
jmp 0x42a84a
xor eax, eax
cmp eax, ebx
mov dword [esp + 0x60], eax
je 0x42a856
mov eax, dword [eax]
jmp 0x42a858
xor eax, eax
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0x64], eax
lea edx, [esp + 0x58]
lea eax, [esp + 0x74]
push edx
push eax
xor eax, eax
mov dword [esp + 0x74], ebx
mov byte [esp + 0x78], bl
mov byte [esp + 0x70], bl
mov byte [esp + 0x71], bl
mov dx, word [ebp + 9]
mov ax, word [ebp + 5]
push ecx
mov ecx, dword [esp + 0x3c]
push edx
lea edx, [ecx + eax*8]
lea eax, [esp + 0xa4]
push edx
push eax
call fcn.0042aa50
mov ecx, dword [eax]
add esp, 0x18
mov dword [esi + 0x14], ecx
mov edx, dword [eax + 4]
xor eax, eax
mov dword [esi + 0x18], edx
mov al, byte [ebp + 1]
mov dword [esi + 0x24], eax
mov eax, dword [esp + 0x38]
mov eax, dword [eax]
cmp eax, ebx
je 0x42a8e2
mov edi, dword [esp + 0x40]
cmp edi, eax
je 0x42a8de
mov dl, byte [esp + 0x48]
mov ebp, dword [esp + 0x3c]
cmp edi, ebx
jne 0x42a948
cmp ebp, eax
jne 0x42a948
cmp dl, bl
je 0x42a948
mov ebp, dword [esp + 0x10]
cmp eax, ebx
jne 0x42a8fc
mov dword [esi], esi
mov ecx, dword [esp + 0x38]
mov dword [ecx], esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x3c], esi
mov byte [esp + 0x48], bl
mov dword [esp + 0x40], ebx
jmp 0x42a97a
mov edx, dword [esp + 0x44]
mov dword [esi], edx
mov eax, dword [esp + 0x40]
cmp eax, ebx
je 0x42a92a
mov dword [eax], esi
mov eax, dword [esp + 0x40]
cmp dword [esp + 0x3c], eax
jne 0x42a91a
mov dword [esp + 0x3c], esi
mov ecx, dword [esp + 0x38]
cmp eax, dword [ecx]
jne 0x42a942
mov dword [ecx], esi
mov dword [esp + 0x44], esi
jmp 0x42a97a
mov eax, dword [esp + 0x3c]
mov dword [eax], esi
mov al, byte [esp + 0x48]
cmp al, bl
je 0x42a942
mov ecx, dword [esp + 0x38]
mov dword [ecx], esi
mov byte [esp + 0x48], bl
mov dword [esp + 0x44], esi
jmp 0x42a97a
mov ecx, dword [eax]
cmp edi, ecx
je 0x42a95a
cmp edi, ebx
jne 0x42a966
cmp ebp, eax
jne 0x42a966
cmp dl, bl
jne 0x42a966
push esi
lea ecx, [esp + 0x3c]
call fcn.00402af0
jmp 0x42a970
mov dword [esi], ecx
mov eax, dword [esp + 0x38]
mov ecx, dword [eax]
mov dword [ecx], esi
mov edx, dword [esp + 0x38]
mov ebp, dword [esp + 0x10]
mov dword [edx], esi
mov cx, word [esp + 0x22]
mov eax, dword [esp + 0x18]
movsx edx, cx
inc eax
add ebp, 0xc
cmp eax, edx
mov dword [esp + 0x18], eax
mov dword [esp + 0x10], ebp
jl 0x42a77a
mov edx, dword [esp + 0x14]
movsx eax, cx
inc edx
cmp edx, eax
mov dword [esp + 0x14], edx
jle 0x42a763
mov eax, dword [esp + 0x34]
push eax
call fcn.00442aa0
mov ecx, dword [esp + 0x34]
push ecx
call fcn.00442aa0
mov ecx, dword [esp + 0x40]
add esp, 8
call fcn.0043ff80
push eax
push 0x4b6dfc
call fcn.00443600
mov edx, dword [esp + 0x5c]
push edx
call dword [sym.imp.MSVCRT.dll_fclose]
mov eax, dword [esp + 0xb8]
add esp, 0xc
cmp eax, ebx
mov dword [esp + 0xa4], 0xffffffff
pop edi
pop esi
je 0x42aa08
push eax
call fcn.00442aa0
add esp, 4
mov ecx, dword [esp + 0x94]
pop ebp
mov al, 1
pop ebx
mov dword fs:[0], ecx
add esp, 0x98
ret