Function at 0x422c80
Capabilities:
Read file on windows

Disassembly:
push ebp
mov eax, 0x405c
mov ebp, esp
push edi
push esi
push ebx
call fcn.004a7e80
sub esp, eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 4], 0x8000
mov eax, dword [eax]
mov eax, dword [eax + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll__open
test eax, eax
mov edi, eax
js 0x422f55
mov dword [esp + 4], 1
lea ebx, [ebp - 0x4018]
mov dword [esp], 0
call fcn.00483500
lea ecx, [ebp - 0x403c]
mov esi, eax
call fcn.00475fb0
lea ecx, [ebp - 0x4030]
mov dword [esp + 4], 0
mov dword [esp], 4
mov dword [ebp - 0x4034], 0
call fcn.00477030
lea ecx, [ebp - 0x401c]
mov dword [ebp - 0x4030], 0x557188
sub esp, 8
call fcn.004787e0
mov eax, dword [ebp + 0xc]
mov ecx, ebx
mov eax, dword [eax]
mov dword [esp], eax
call fcn.00402780
lea ecx, [ebp - 0x403c]
sub esp, 4
mov dword [esp], ebx
call fcn.00476200
mov ecx, ebx
sub esp, 4
call fcn.00476190
lea eax, [ebp - 0x403c]
mov dword [esp + 4], eax
mov dword [esp], esi
mov dword [ebp - 0x4038], esi
call fcn.00483c90
mov dword [esp + 8], 0x423d30
mov dword [esp + 4], 0x425ea0
mov dword [esp], esi
call fcn.00483d30
mov dword [esp + 8], 0x4213e0
mov dword [esp + 4], 0x425da0
mov dword [esp], esi
call fcn.00483e80
mov dword [esp + 4], 0x426060
mov dword [esp], esi
call fcn.00483d70
mov dword [esp + 4], 0x421180
mov dword [esp], esi
call fcn.00483d90
jmp 0x422de3
movzx ecx, dl
mov dword [esp + 0xc], ecx
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], esi
mov dword [ebp - 0x404c], edx
call fcn.004842e0
mov edx, dword [ebp - 0x404c]
test eax, eax
je 0x422ec0
test dl, dl
jne 0x422f14
mov dword [esp + 8], 0x4000
mov dword [esp + 4], ebx
mov dword [esp], edi
call sub.msvcrt.dll__read
cmp eax, 0x3fff
setle dl
test eax, eax
jns 0x422db0
call dword [sym.imp.msvcrt.dll__errno]
lea ebx, [ebp - 0x4044]
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_strerror
mov ecx, ebx
mov dword [esp + 4], 0xffffffff
mov esi, eax
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
add eax, 0x40
mov dword [esp], eax
call fcn.0040f360
sub esp, 8
mov dword [esp + 8], esi
mov dword [esp + 4], str.Error_reading_file:__s_n
mov dword [esp], ebx
call fcn.0040f580
mov ecx, ebx
call fcn.0040f3f0
mov dword [esp], edi
call sub.msvcrt.dll__close
mov eax, dword [ebp + 8]
mov dword [eax], 0
lea ecx, [ebp - 0x401c]
call fcn.004789b0
lea ecx, [ebp - 0x4030]
mov dword [ebp - 0x4030], 0x557188
call fcn.004771f0
lea ecx, [ebp - 0x4030]
call fcn.00476fa0
mov ecx, dword [ebp - 0x4034]
test ecx, ecx
je 0x422eaa
lea eax, [ebp - 0x4034]
mov dword [esp], eax
call fcn.00478460
sub esp, 4
lea ecx, [ebp - 0x403c]
call fcn.00476190
mov eax, dword [ebp + 8]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], esi
lea ebx, [ebp - 0x4044]
call fcn.00484620
mov dword [esp], eax
call fcn.00484860
mov dword [esp], esi
mov dword [ebp - 0x404c], eax
call fcn.004846c0
mov ecx, ebx
mov dword [esp + 4], eax
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
add eax, 0x40
mov dword [esp], eax
call fcn.0040f360
mov edx, dword [ebp - 0x404c]
sub esp, 8
mov dword [esp + 8], edx
mov dword [esp + 4], str.Error_parsing_XML:__s_n
jmp 0x422e44
mov dword [esp], esi
call fcn.00482ec0
mov eax, dword [ebp - 0x4034]
test eax, eax
je 0x422fb9
mov dword [esp], edi
call sub.msvcrt.dll__close
mov ecx, dword [ebp - 0x4034]
mov eax, dword [ebp + 8]
test ecx, ecx
mov dword [eax], ecx
je 0x422e64
mov dword [esp], eax
call fcn.00478310
sub esp, 4
jmp 0x422e64
call dword [sym.imp.msvcrt.dll__errno]
lea ebx, [ebp - 0x4018]
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_strerror
mov ecx, ebx
mov dword [esp + 4], 0xffffffff
mov esi, eax
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
add eax, 0x40
mov dword [esp], eax
call fcn.0040f360
sub esp, 8
mov dword [esp + 8], esi
mov dword [esp], ebx
mov dword [esp + 4], str.Unable_to_open_file_for_read:__s
call fcn.0040f580
mov ecx, ebx
call fcn.0040f3f0
mov eax, dword [ebp + 8]
mov dword [eax], 0
mov eax, dword [ebp + 8]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebp + 0xc]
lea ebx, [ebp - 0x4044]
mov dword [esp + 4], 0xffffffff
mov ecx, ebx
mov eax, dword [eax]
add eax, 0x40
mov dword [esp], eax
call fcn.0040f360
sub esp, 8
mov dword [esp + 4], str.No_XML_data_generated_when_parsing
mov dword [esp], ebx
call fcn.0040f580
mov ecx, ebx
call fcn.0040f3f0
jmp 0x422f2a