Function at 0x42c056
Capabilities:
Write file on windows

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x30
mov qword [rbp + 0x10], rcx
mov rax, qword [0x004a8078]
test rax, rax
je 0x42c078
mov eax, dword [0x004a8374]
test eax, eax
jne 0x42c082
mov eax, 1
jmp 0x42c3ba
mov rax, qword [0x004a8070]
test rax, rax
je 0x42c09a
mov rax, qword [0x004a8060]
test rax, rax
jne 0x42c0a4
mov eax, 0
jmp 0x42c3ba
mov eax, dword [0x004a8048]
test eax, eax
je 0x42c0e0
mov ecx, dword [0x004a8084]
mov edx, dword [0x004a8080]
mov eax, dword [0x004a8084]
cmp eax, 1
jne 0x42c0ce
lea rax, str._nDynamic_info_segment_at_offset_0x_lx_contains__d_entry:_n
jmp 0x42c0d5
lea rax, str._nDynamic_info_segment_at_offset_0x_lx_contains__d_entries:_n
mov r8d, ecx
mov rcx, rax
call sub.msvcrt.dll_printf
lea rcx, str._Num:_Name___________________________BoundTo_____Flags
call sub.msvcrt.dll_puts
mov dword [rbp - 4], 0
jmp 0x42c3a6
mov rax, qword [0x004a8078]
mov edx, dword [rbp - 4]
shl rdx, 2
add rax, rdx
movzx eax, word [rax + 2]
mov word [rbp - 6], ax
mov eax, dword [rbp - 4]
mov edx, eax
lea rcx, str._4d:
call sub.msvcrt.dll_printf
mov eax, dword [0x004a806c]
cmp dword [rbp - 4], eax
jb 0x42c13b
lea rcx, str._corrupt_index_
call sub.msvcrt.dll_printf
jmp 0x42c1b6
mov rax, qword [0x004a8060]
test rax, rax
je 0x42c194
mov rax, qword [0x004a8070]
mov edx, dword [rbp - 4]
shl rdx, 5
add rax, rdx
mov edx, dword [rax + 0x10]
mov eax, dword [0x004a8068]
cmp edx, eax
jae 0x42c194
mov rax, qword [0x004a8060]
mov rdx, qword [0x004a8070]
mov ecx, dword [rbp - 4]
shl rcx, 5
add rdx, rcx
mov edx, dword [rdx + 0x10]
mov edx, edx
add rax, rdx
mov rdx, rax
mov ecx, 0x1e
call fcn.0040c1fe
jmp 0x42c1b6
mov rax, qword [0x004a8070]
mov edx, dword [rbp - 4]
shl rdx, 5
add rax, rdx
mov eax, dword [rax + 0x10]
mov edx, eax
lea rcx, str._corrupt:__19ld_
call sub.msvcrt.dll_printf
mov ecx, 0x20
call sub.msvcrt.dll_putchar
mov rax, qword [0x004a8078]
mov edx, dword [rbp - 4]
shl rdx, 2
add rax, rdx
movzx eax, word [rax]
movzx eax, ax
cmp eax, 0xfffe
je 0x42c211
cmp eax, 0xffff
jne 0x42c23d
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x30
mov r9, rax
mov r8d, 0xb
mov edx, 1
lea rcx, str.SELF
call sub.msvcrt.dll_fwrite
jmp 0x42c33a
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x30
mov r9, rax
mov r8d, 0xb
mov edx, 1
lea rcx, str.PARENT
call sub.msvcrt.dll_fwrite
jmp 0x42c33a
mov rax, qword [0x004a8078]
mov edx, dword [rbp - 4]
shl rdx, 2
add rax, rdx
movzx eax, word [rax]
test ax, ax
je 0x42c314
mov rax, qword [0x004a8078]
mov edx, dword [rbp - 4]
shl rdx, 2
add rax, rdx
movzx eax, word [rax]
movzx edx, ax
mov rax, qword [0x004a8058]
cmp rdx, rax
jae 0x42c314
mov rax, qword [0x004a8060]
test rax, rax
je 0x42c314
mov rax, qword [0x004a8360]
mov rdx, qword [0x004a8078]
mov ecx, dword [rbp - 4]
shl rcx, 2
add rdx, rcx
movzx edx, word [rdx]
movzx edx, dx
shl rdx, 4
add rax, rdx
mov rax, qword [rax + 8]
mov edx, dword [0x004a8068]
mov edx, edx
cmp rax, rdx
jae 0x42c314
mov rdx, qword [0x004a8060]
mov rax, qword [0x004a8360]
mov rcx, qword [0x004a8078]
mov r8d, dword [rbp - 4]
shl r8, 2
add rcx, r8
movzx ecx, word [rcx]
movzx ecx, cx
shl rcx, 4
add rax, rcx
mov rax, qword [rax + 8]
add rax, rdx
mov rdx, rax
mov ecx, 0xa
call fcn.0040c1fe
mov ecx, 0x20
call sub.msvcrt.dll_putchar
jmp 0x42c339
mov rax, qword [0x004a8078]
mov edx, dword [rbp - 4]
shl rdx, 2
add rax, rdx
movzx eax, word [rax]
movzx eax, ax
mov edx, eax
lea rcx, str.__10d
call sub.msvcrt.dll_printf
nop
movzx eax, word [rbp - 6]
and eax, 1
test eax, eax
je 0x42c351
lea rcx, str._DIRECT
call sub.msvcrt.dll_printf
movzx eax, word [rbp - 6]
and eax, 2
test eax, eax
je 0x42c368
lea rcx, str._PASSTHRU
call sub.msvcrt.dll_printf
movzx eax, word [rbp - 6]
and eax, 4
test eax, eax
je 0x42c37f
lea rcx, str._COPY
call sub.msvcrt.dll_printf
movzx eax, word [rbp - 6]
and eax, 8
test eax, eax
je 0x42c396
lea rcx, str._LAZYLOAD
call sub.msvcrt.dll_printf
lea rcx, [0x00488d34]
call sub.msvcrt.dll_puts
add dword [rbp - 4], 1
mov eax, dword [0x004a8084]
cmp dword [rbp - 4], eax
jb 0x42c0f8
mov eax, 1
add rsp, 0x30
pop rbp
ret