Function at 0x46c730
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0xb4
mov eax, dword [0x4c8bb0]
xor eax, esp
mov dword [esp + 0xb0], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
push ebx
push esi
push edi
push 0x4c3588
push eax
mov dword [esp + 0x1c], ecx
call fcn.0045d140
mov edi, dword [sym.imp.MSVCR100.dll_fscanf]
lea edx, [esp + 0x58]
push edx
mov esi, eax
push 0x4c358c
push esi
call edi
add esp, 0x14
cmp eax, 0xffffffff
je 0x46c7aa
mov bl, 0x43
cmp byte [esp + 0x50], 0x41
jne 0x46c795
cmp byte [esp + 0x51], 0x52
jne 0x46c795
cmp byte [esp + 0x52], bl
je 0x46c805
lea eax, [esp + 0x50]
push eax
push 0x4c358c
push esi
call edi
add esp, 0xc
cmp eax, 0xffffffff
jne 0x46c781
lea edx, [esp + 0x10]
push edx
push 0x4c3604
push esi
call edi
add esp, 0xc
cmp eax, 0xffffffff
jne 0x46c875
mov esi, dword [sym.imp.MSVCR100.dll___iob_func]
push 0x4c3608
push 0x4c3630
mov byte [0x652212], 1
call esi
mov edi, dword [sym.imp.MSVCR100.dll_fprintf]
add eax, 0x20
push eax
call edi
call esi
mov ebx, dword [sym.imp.MSVCR100.dll_fflush]
add eax, 0x20
push eax
call ebx
add esp, 0x10
push 0x4c3640
push 0x4c3668
jmp 0x46c85a
lea ecx, [esp + 0x40]
push ecx
push 0x4c3590
push esi
call edi
add esp, 0xc
cmp eax, 0xffffffff
jne 0x46c7aa
mov esi, dword [sym.imp.MSVCR100.dll___iob_func]
push 0x4c3594
push 0x4c35bc
mov byte [0x652212], 1
call esi
mov edi, dword [sym.imp.MSVCR100.dll_fprintf]
add eax, 0x20
push eax
call edi
call esi
mov ebx, dword [sym.imp.MSVCR100.dll_fflush]
add eax, 0x20
push eax
call ebx
add esp, 0x10
push 0x4c35cc
push 0x4c35f4
call esi
add eax, 0x40
push eax
call edi
call esi
add eax, 0x40
push eax
call ebx
add esp, 0x10
push 2
call dword [sym.imp.MSVCR100.dll_exit]
cmp dword [esp + 0x10], 0xffffffff
je 0x46c96f
lea eax, [esp + 0xc]
push eax
lea ecx, [esp + 0x48]
push ecx
lea edx, [esp + 0x44]
push edx
lea eax, [esp + 0x44]
push eax
lea ecx, [esp + 0x58]
push ecx
lea edx, [esp + 0x60]
push edx
push str._d__d__d__d__d__d
push esi
call edi
add esp, 0x20
cmp eax, 0xffffffff
je 0x46c995
mov ebx, 2
cmp dword [esp + 0xc], ebx
jl 0x46c9da
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x24]
push ecx
push 0x4c376c
push esi
call edi
add esp, 0x10
cmp eax, 0xffffffff
je 0x46ca1f
cmp dword [esp + 0xc], ebx
jl 0x46c94b
lea edx, [esp + 0x30]
push edx
lea eax, [esp + 0x2c]
push eax
push 0x4c37dc
push esi
call edi
add esp, 0x10
cmp eax, 0xffffffff
je 0x46ca64
mov ecx, dword [0x4b95ec]
fld qword [esp + 0x30]
push ecx
sub esp, 0x20
fstp qword [esp + 0x18]
fld qword [esp + 0x4c]
fstp qword [esp + 0x10]
fld qword [esp + 0x3c]
fstp qword [esp + 8]
fld qword [esp + 0x44]
fstp qword [esp]
call fcn.00453100
fld qword [esp + 0x4c]
inc ebx
fstp qword [esp + 0x44]
add esp, 0x24
fld qword [esp + 0x30]
fstp qword [esp + 0x18]
cmp ebx, dword [esp + 0xc]
jle 0x46c8e5
lea edx, [esp + 0x10]
push edx
push 0x4c384c
push esi
call edi
add esp, 0xc
cmp eax, 0xffffffff
je 0x46caa9
cmp dword [esp + 0x10], 0xffffffff
jne 0x46c880
mov eax, dword [esp + 0x14]
push esi
mov byte [eax], 1
call dword [sym.imp.MSVCR100.dll_fclose]
mov ecx, dword [esp + 0xc0]
add esp, 4
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0049f322
mov esp, ebp
pop ebp
ret
mov esi, dword [sym.imp.MSVCR100.dll___iob_func]
push 0x4c368c
push 0x4c36b4
mov byte [0x652212], 1
call esi
mov edi, dword [sym.imp.MSVCR100.dll_fprintf]
add eax, 0x20
push eax
call edi
call esi
mov ebx, dword [sym.imp.MSVCR100.dll_fflush]
add eax, 0x20
push eax
call ebx
add esp, 0x10
push 0x4c36c4
push 0x4c36ec
jmp 0x46c85a
mov esi, dword [sym.imp.MSVCR100.dll___iob_func]
push 0x4c36fc
push 0x4c3724
mov byte [0x652212], 1
call esi
mov edi, dword [sym.imp.MSVCR100.dll_fprintf]
add eax, 0x20
push eax
call edi
call esi
mov ebx, dword [sym.imp.MSVCR100.dll_fflush]
add eax, 0x20
push eax
call ebx
add esp, 0x10
push 0x4c3734
push 0x4c375c
jmp 0x46c85a
mov esi, dword [sym.imp.MSVCR100.dll___iob_func]
push 0x4c3774
push 0x4c3798
mov byte [0x652212], 1
call esi
mov edi, dword [sym.imp.MSVCR100.dll_fprintf]
add eax, 0x20
push eax
call edi
call esi
mov ebx, dword [sym.imp.MSVCR100.dll_fflush]
add eax, 0x20
push eax
call ebx
add esp, 0x10
push 0x4c37a8
push 0x4c37cc
jmp 0x46c85a
mov esi, dword [sym.imp.MSVCR100.dll___iob_func]
push 0x4c37e4
push 0x4c3808
mov byte [0x652212], 1
call esi
mov edi, dword [sym.imp.MSVCR100.dll_fprintf]
add eax, 0x20
push eax
call edi
call esi
mov ebx, dword [sym.imp.MSVCR100.dll_fflush]
add eax, 0x20
push eax
call ebx
add esp, 0x10
push str.ReadE00_____premature_end_of_file__n
push 0x4c383c
jmp 0x46c85a
mov esi, dword [sym.imp.MSVCR100.dll___iob_func]
push 0x4c3850
push 0x4c3878
mov byte [0x652212], 1
call esi
mov edi, dword [sym.imp.MSVCR100.dll_fprintf]
add eax, 0x20
push eax
call edi
call esi
mov ebx, dword [sym.imp.MSVCR100.dll_fflush]
add eax, 0x20
push eax
call ebx
add esp, 0x10
push str.ReadE00_____unexepected_data_format__n
push str._nerror_in__s_n
jmp 0x46c85a