Function at 0x56f51e
Capabilities:
Terminate process
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
sub esp, 0x44
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x28], 0
lea eax, [ebp - 0x28]
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x2c], 0x62f624
mov eax, dword [ebp - 0x14]
movzx edx, byte [eax + 0xd]
or edx, 0x20
mov byte [eax + 0xd], dl
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.0056c930
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x14]
movzx eax, byte [eax + 0xd]
and eax, 0x10
test al, al
je 0x56f5e7
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x30]
mov dword [esp + 4], str.option_object_format_n
mov dword [esp], eax
call fcn.0056c6ba
lea eax, [ebp - 0x34]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
call fcn.0056c827
test eax, eax
jne 0x56f5c3
mov eax, dword [ebp - 0x2c]
mov dword [esp + 4], 0x5cfb64
mov dword [esp], eax
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x56f5e7
mov dword [esp + 8], pe_nt_image_headers32
mov dword [esp + 4], 0x4bb
mov dword [esp], str.transport_helper.c
call fcn.00499d7f
mov dword [esp], eax
call sub.cygwin1.dll_exit
mov eax, dword [ebp - 0x14]
movzx eax, byte [eax + 0xc]
and eax, 0x20
test al, al
je 0x56f613
cmp dword [ebp + 0xc], 0
je 0x56f613
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x30]
mov dword [esp + 4], str.list_for_push_n
mov dword [esp], eax
call fcn.0056c6ba
jmp 0x56f629
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x30]
mov dword [esp + 4], str.list_n
mov dword [esp], eax
call fcn.0056c6ba
lea eax, [ebp - 0x34]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
call fcn.0056c827
test eax, eax
je 0x56f663
mov dword [esp + 8], pe_nt_image_headers32
mov dword [esp + 4], 0x4c6
mov dword [esp], str.transport_helper.c
call fcn.00499d7f
mov dword [esp], eax
call sub.cygwin1.dll_exit
mov eax, dword [ebp - 0x2c]
movzx eax, byte [eax]
test al, al
je 0x56f836
mov eax, dword [ebp - 0x2c]
movzx eax, byte [eax]
cmp al, 0x3a
jne 0x56f6e3
mov eax, dword [ebp - 0x2c]
lea edx, [ebp - 0x38]
mov dword [esp + 8], edx
mov dword [esp + 4], str.:object_format
mov dword [esp], eax
call fcn.0056c472
test eax, eax
je 0x56f830
mov eax, dword [ebp - 0x38]
mov dword [esp], eax
call fcn.00430c39
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jne 0x56f6cc
mov ebx, dword [ebp - 0x38]
mov dword [esp], str.unsupported_object_format__s
call fcn.0056c696
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.004ae00f
mov eax, dword [ebp - 0x24]
imul eax, eax, 0x34
lea edx, [eax + 0x5a7820]
mov eax, dword [ebp + 8]
mov dword [eax + 0x40], edx
jmp 0x56f830
mov eax, dword [ebp - 0x2c]
mov dword [esp + 4], 0x20
mov dword [esp], eax
call sub.cygwin1.dll_strchr
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x56f71a
mov ebx, dword [ebp - 0x2c]
mov dword [esp], str.malformed_response_in_ref_list:__s
call fcn.0056c696
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.004ae00f
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [esp + 4], 0x20
mov dword [esp], eax
call sub.cygwin1.dll_strchr
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x1c]
mov byte [eax], 0
cmp dword [ebp - 0x20], 0
je 0x56f745
mov eax, dword [ebp - 0x20]
mov byte [eax], 0
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [esp], eax
call fcn.0046d854
mov edx, dword [ebp - 0xc]
mov dword [edx], eax
mov eax, dword [ebp - 0x2c]
movzx eax, byte [eax]
cmp al, 0x40
jne 0x56f77a
mov eax, dword [ebp - 0x2c]
lea edx, [eax + 1]
mov eax, dword [ebp - 0xc]
mov ebx, dword [eax]
mov dword [esp], edx
call fcn.004b4201
mov dword [ebx + 0x70], eax
jmp 0x56f7a5
mov eax, dword [ebp - 0x2c]
movzx eax, byte [eax]
cmp al, 0x3f
je 0x56f7a5
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x40]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
lea ecx, [eax + 4]
mov eax, dword [ebp - 0x2c]
mov dword [esp + 8], edx
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.0042b968
cmp dword [ebp - 0x20], 0
je 0x56f823
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [esp + 4], str.unchanged
mov dword [esp], eax
call fcn.0056f434
test eax, eax
je 0x56f823
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
mov edx, dword [eax + 0x84]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
or edx, 0xa
mov dword [eax + 0x84], edx
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
lea edx, [eax + 4]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
add eax, 0x94
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045aedf
test eax, eax
jns 0x56f823
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
lea ebx, [eax + 0x94]
mov dword [esp], str.could_not_read_ref__s
call fcn.0056c696
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.004ae00f
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
mov dword [ebp - 0xc], eax
jmp 0x56f629
nop
jmp 0x56f629
nop
mov eax, dword [0x6300ec]
test eax, eax
je 0x56f868
call sub.cygwin1.dll___getreent
mov eax, dword [eax + 0xc]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x19
mov dword [esp + 4], 1
mov dword [esp], str.Debug:_Read_ref_listing._n
call sub.cygwin1.dll_fwrite
lea eax, [ebp - 0x34]
mov dword [esp], eax
call fcn.0048a820
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x10], eax
jmp 0x56f895
mov eax, dword [ebp - 0x28]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call fcn.0046fc81
mov eax, dword [ebp - 0x10]
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x56f87b
mov eax, dword [ebp - 0x28]
mov ebx, dword [ebp - 4]
leave
ret