Function at 0x3ff934bc0
Capabilities:
Read file on windows
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
mov rax, qword [sym.imp.cygwin1.dll___stack_chk_guard]
mov rdi, qword [rax]
mov qword [rsp + 0x38], rdi
xor edi, edi
mov rsi, rcx
mov rbx, rdx
test rcx, rcx
je 0x3ff934feb
mov rax, qword [rdx]
mov rdx, rax
sar rdx, 3
cmp rax, 0xf8
setg al
movzx eax, al
lea r13, [rdx + rax*8 + 0xb]
mov rcx, r13
call sym.cygmpfr_6.dll_mpfr_allocate_func
mov r12, rax
test rax, rax
je 0x3ff934feb
mov rax, qword [rbx]
mov qword [rsp + 0x30], rax
cmp rax, 0xf8
jg 0x3ff934d30
mov r14d, 1
test r13, r13
jne 0x3ff934c71
xor ebp, ebp
mov r14d, 1
mov rcx, r12
mov r8, r14
mov rdx, r13
call sym.cygmpfr_6.dll_mpfr_reallocate_func
mov r12, rax
test rax, rax
je 0x3ff934ff8
mov rax, qword [rsp + 0x30]
cmp rax, 0xf8
jg 0x3ff934d5a
add eax, 7
cmp r13, r14
mov byte [r12], al
cmovb r13, r14
mov r9, rsi
mov r8d, 1
mov rdx, r14
mov rcx, r12
call sub.cygwin1.dll_fwrite
cmp eax, 1
jne 0x3ff934fe0
movabs rax, 0x8000000000000004
mov rdx, qword [rbx + 0x10]
cmp rdx, rax
jl 0x3ff934d90
lea rax, [rdx + 0x2f]
cmp rax, 0x5e
jbe 0x3ff934f78
mov r8, 0xffffffffffffffd1
mov rax, r8
lea r8, [rdx - 0x2f]
sub rax, rdx
test rdx, rdx
cmovs r8, rax
xor ebp, ebp
mov qword [rsp + 0x30], r8
lea rax, [r8 + r8]
nop dword [rax]
mov r14, rbp
add rbp, 1
shr rax, 8
jne 0x3ff934ce8
cmp rbp, 0x10
ja 0x3ff9471c0
lea ecx, [rbp*8 - 1]
mov eax, 1
shl rax, cl
test rdx, rdx
js 0x3ff934fc0
add r14, 2
mov r11, r12
cmp r14, r13
jbe 0x3ff934dd0
jmp 0x3ff934da3
sub rax, 0xf9
xor ebp, ebp
nop dword [rax + rax]
mov r14, rbp
add rbp, 1
shr rax, 8
jne 0x3ff934d40
add r14, 2
cmp r13, r14
jb 0x3ff934c46
lea eax, [rbp - 1]
lea rdx, [rsp + 0x30]
mov r8, rbp
mov byte [r12], al
lea rcx, [r12 + 1]
sub qword [rsp + 0x30], 0xf9
call fcn.3ff934b30
cmp r13, r14
cmovb r13, r14
jmp 0x3ff934c7f
mov r14d, 1
test r13, r13
jne 0x3ff934deb
xor ebp, ebp
mov r14d, 1
mov r8, r14
mov rdx, r13
mov rcx, r12
call sym.cygmpfr_6.dll_mpfr_reallocate_func
mov r11, rax
test rax, rax
je 0x3ff934fe0
movabs rax, 0x8000000000000004
mov rdx, qword [rbx + 0x10]
cmp rdx, rax
jl 0x3ff934de8
test rbp, rbp
jne 0x3ff934f98
mov rax, qword [rsp + 0x30]
mov r12, r11
jmp 0x3ff934e11
mov r12, r11
movabs rax, 0x8000000000000001
cmp rdx, rax
je 0x3ff934fd0
movabs rax, 0x8000000000000003
cmp rdx, rax
setne al
add eax, 0x78
mov byte [r12], al
mov eax, dword [rbx + 8]
test eax, eax
jns 0x3ff934e21
or byte [r12], 0x80
cmp r14, r13
mov r9, rsi
mov r8d, 1
mov rdx, r14
mov rcx, r12
cmovae r13, r14
call sub.cygwin1.dll_fwrite
cmp eax, 1
jne 0x3ff934fe0
movabs rax, 0x8000000000000004
cmp qword [rbx + 0x10], rax
jl 0x3ff934f3f
mov rax, qword [rbx]
xor edx, edx
lea r14, [rax + 7]
mov rax, qword [sym.imp.cyggmp_10.dll___gmp_bits_per_limb]
sar r14, 3
mov ebp, dword [rax]
mov rax, r14
sar ebp, 3
movsxd rbp, ebp
div rbp
lea rax, [r14 + rbp - 1]
mov r9, rdx
xor edx, edx
div rbp
mov r15, rax
cmp r13, r14
jae 0x3ff934eb4
mov rcx, r12
mov r8, r14
mov rdx, r13
mov qword [rsp + 0x28], r9
call sym.cygmpfr_6.dll_mpfr_reallocate_func
mov r9, qword [rsp + 0x28]
test rax, rax
mov r12, rax
je 0x3ff935000
mov rax, qword [rbx + 0x18]
lea r8, [r12 + r9]
lea rdx, [rax + 7]
mov rax, r12
test r9, r9
je 0x3ff934ee3
nop dword [rax + rax]
movzx ecx, byte [rdx]
add rax, 1
sub rdx, 1
mov byte [rax - 1], cl
cmp r8, rax
jne 0x3ff934ed0
xor r11d, r11d
test r9, r9
setne r11b
cmp r13, r14
cmovb r13, r14
cmp r15, r11
jbe 0x3ff934f22
lea rdi, [r12 + r9]
nop dword [rax]
mov rax, qword [rbx + 0x18]
mov rcx, rdi
mov r8d, 8
add rdi, rbp
lea rdx, [rax + r11*8]
call fcn.3ff934b30
add r11, 1
cmp r15, r11
jne 0x3ff934f00
mov r9, rsi
mov r8d, 1
mov rdx, r14
mov rcx, r12
call sub.cygwin1.dll_fwrite
cmp eax, 1
jne 0x3ff934fe0
mov rdx, r13
mov rcx, r12
call sym.cygmpfr_6.dll_mpfr_free_func
xor eax, eax
mov rdi, qword [sym.imp.cygwin1.dll___stack_chk_guard]
mov rsi, qword [rsp + 0x38]
xor rsi, qword [rdi]
jne 0x3ff935008
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x30], rax
test r13, r13
je 0x3ff934d9b
mov r14d, 1
jmp 0x3ff934e11
lea eax, [rbp + 0x5e]
lea rdx, [rsp + 0x30]
mov r8, rbp
mov byte [r11], al
lea rcx, [r11 + 1]
call fcn.3ff934b30
mov r12, r11
jmp 0x3ff934e15
or r8, rax
mov qword [rsp + 0x30], r8
jmp 0x3ff934d17
mov byte [r12], 0x77
jmp 0x3ff934e15
mov rdx, r13
mov rcx, r12
call sym.cygmpfr_6.dll_mpfr_free_func
mov eax, 0xffffffff
jmp 0x3ff934f4c
xor r14d, r14d
jmp 0x3ff934c7f
xor r14d, r14d
jmp 0x3ff934f22
call sub.cygwin1.dll___stack_chk_fail
nop dword [rax]
lea r8, str.exponent_size___16
mov edx, 0x139
lea rcx, str._mnt_share_cygpkgs_mpfr_mpfr.x86_64_src_mpfr_4.0.2_src_fpif.c
call sym.cygmpfr_6.dll_mpfr_assert_fail
nop
nop
nop
nop
nop
nop
nop
nop
lea r8, str.p_____mpfr_prec_t______mpfr_uprec_t___1_____1____256__
mov edx, 0x54
lea rcx, str._mnt_share_cygpkgs_mpfr_mpfr.x86_64_src_mpfr_4.0.2_src_rndna.c
call sym.cygmpfr_6.dll_mpfr_assert_fail
nop
nop
nop
nop
nop
nop
nop
nop