Function at 0x42c8c0
Capabilities:
Read file on windows
Terminate process

Disassembly:
sub rsp, 0x48
mov rax, qword [0x00480680]
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x28], r15
test rax, rax
mov rbx, rcx
je 0x42c8fc
mov eax, dword [rax]
lea r15, [rcx + 0x220]
mov dword [r15], eax
add dword [0x00480688], 4
cmp dword [r15], 0
je 0x42cbc1
jmp 0x42c938
mov r9, qword [rcx + 0x210]
mov edx, 4
lea r15, [rcx + 0x220]
lea r8d, [rdx - 3]
mov rcx, r15
call qword [sym.imp.msvcrt.dll_fread]
cmp rax, 1
jae 0x42c92e
mov ecx, 1
call qword [sym.imp.msvcrt.dll_exit]
int3
cmp dword [r15], 0
je 0x42cbc1
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x30], r14
xor r14d, r14d
mov edi, 0x11
nop
nop
shr word [rbx + 0xe], 1
jne 0x42c9a1
mov rcx, qword [0x00480680]
test rcx, rcx
je 0x42c98a
movsxd rdx, dword [0x00480688]
lea eax, [rdx + 1]
cmp eax, dword [0x0048068c]
jge 0x42c984
movzx ecx, byte [rdx + rcx]
mov word [rbx + 0xc], cx
inc dword [0x00480688]
jmp 0x42c99b
mov ax, 0xffff
jmp 0x42c9af
mov rcx, qword [rbx + 0x210]
call qword [sym.imp.msvcrt.dll_getc]
mov word [rbx + 0xc], ax
mov word [rbx + 0xe], 0x80
movzx eax, word [rbx + 0xc]
test word [rbx + 0xe], ax
mov eax, r14d
setne al
dec rdi
mov ecx, dword [rbx + 0x9e54]
cwde
lea ecx, [rax + rcx*2]
mov dword [rbx + 0x9e54], ecx
jne 0x42c950
mov word [rbx + 0x7e46], r14w
mov cx, 0x13a
lea rdx, [rbx + 0x795a]
nop
nop
nop
mov word [rdx - 0x276], cx
movzx eax, word [rdx + 0x4ec]
dec cx
inc ax
mov word [rdx], cx
mov word [rdx + 0x276], 1
mov word [rdx + AfxThrowOleException], ax
sub rdx, 2
cmp cx, 1
jge 0x42c9e0
mov word [rbx + 0x795c], r14w
mov word [rbx + 0x9e48], r14w
mov r8w, 0x1000
lea r9, [rbx + 0x9e46]
nop
movsx ecx, r8w
mov eax, 0x2710
dec r8w
add ecx, 0xc8
cdq
sub r9, 2
idiv ecx
add ax, word [r9 + 4]
cmp r8w, 1
mov word [r9 + 2], ax
jge 0x42ca30
lea rcx, [rbx + 0x22c]
mov r8d, 0xfc4
mov dl, 0x20
call sub.msvcrt.dll_memset
cmp dword [r15], r14d
mov di, 0xfc4
jbe 0x42cbb7
mov qword [rsp + 0x58], rbp
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], r13
mov rcx, rbx
call fcn.0042c4e0
cmp ax, 0x100
movzx r12d, ax
jge 0x42caf9
mov rax, qword [0x00480698]
test rax, rax
je 0x42cacc
movsxd rdx, dword [0x004806a0]
lea ecx, [rdx + 1]
cmp ecx, dword [0x00480690]
jge 0x42cadd
mov byte [rdx + rax], r12b
inc dword [0x004806a0]
jmp 0x42cadd
mov rdx, qword [rbx + 0x218]
movsx ecx, r12w
call qword [sym.imp.msvcrt.dll_putc]
movsx rax, di
inc di
and di, 0xfff
inc r14d
mov byte [rax + rbx + 0x22c], r12b
jmp 0x42cb9a
mov rcx, rbx
call fcn.0042c6e0
movzx ecx, di
sub r12w, 0xfd
sub cx, ax
xor bp, bp
dec cx
and cx, 0xfff
test r12w, r12w
jle 0x42cb9a
movzx eax, r12w
movsx r13d, cx
add r14d, eax
nop
nop
mov rdx, qword [0x00480698]
mov ax, bp
add eax, r13d
and eax, 0xfff
test rdx, rdx
movzx esi, byte [rax + rbx + 0x22c]
je 0x42cb6d
movsxd rcx, dword [0x004806a0]
lea eax, [rcx + 1]
cmp eax, dword [0x00480690]
jge 0x42cb7d
mov byte [rcx + rdx], sil
inc dword [0x004806a0]
jmp 0x42cb7d
mov rdx, qword [rbx + 0x218]
movsx ecx, si
call qword [sym.imp.msvcrt.dll_putc]
movsx rax, di
inc di
inc bp
and di, 0xfff
cmp bp, r12w
mov byte [rax + rbx + 0x22c], sil
jl 0x42cb30
cmp r14d, dword [r15]
jb 0x42ca90
mov r13, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x30]
mov r15, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x50]
add rsp, 0x48
ret