File hevea_f46f610a6b0078f4aa208dda361f21de574cc56ad64b32889301afc466d33979.elf
Function:
    0018ac40
    0018ac40camlDoOut.unskip_948:
    0018ac40lea r10, [rsp-336]
    0018ac48cmp r10, [r14+40]
    0018ac4cjb 0x18acda
    0018ac52
    0018ac52loc_18ac52:
    0018ac52sub rsp, 16
    0018ac56test al, 1
    0018ac58jne 0x18acd0
    0018ac5amovzx rdi, [rax-8]
    0018ac5ftest rdi, rdi
    0018ac62jne 0x18acd0
    0018ac64mov [rsp], rbx
    0018ac68mov rax, [rax]
    0018ac6bmov [rsp+8], rax
    0018ac70mov rbx, [rbx+24]
    0018ac74mov rdi, [rax+8]
    0018ac78cmp rdi, 1
    0018ac7cjle 0x18ac87
    0018ac7emov rbx, [rbx+16]
    0018ac82call camlDoOut.do_flush_buff_543
    0018ac87
    0018ac87loc_18ac87:
    0018ac87mov rdi, [rsp]
    0018ac8bmov rbx, [rdi+32]
    0018ac8fmov rax, [rsp+8]
    0018ac94mov rax, [rax+24]
    0018ac98mov rdi, [rdi+16]
    0018ac9cmov rdi, [rdi+144]
    0018aca3call camlSimpleRope.erase_651
    0018aca8mov rdi, [rsp+8]
    0018acadadd rdi, 24
    0018acb1mov rsi, rax
    0018acb4mov rbx, rsp
    0018acb7mov rsp, [r14+64]
    0018acbbcall caml_modify
    0018acc0mov rsp, rbx
    0018acc3mov eax, 1
    0018acc8add rsp, 16
    0018acccret
    0018accd
    0018accd 0f 1f 00 ...
    0018acd0
    0018acd0loc_18acd0:
    0018acd0mov eax, 1
    0018acd5add rsp, 16
    0018acd9ret
    0018acda
    0018acdaloc_18acda:
    0018acdapush 35
    0018acdccall caml_call_realloc_stack
    0018ace1pop r10
    0018ace3jmp 0x18ac52
    0018ac40
    0018ace8
    0018ace8 // align 0x10
    0018acf0
    0018acf0camlDoOut.entry:
    0018acf0call caml_alloc1
    0018acf5lea rsi, [r15+8]
    0018acf9mov [rsi-8], 1024
    0018ad01mov [rsi], 1
    0018ad08lea rdi, [rip+0x197d81]
    0018ad0fmov rbx, rsp
    0018ad12mov rsp, [r14+64]
    0018ad16call caml_initialize
    0018ad1bmov rsp, rbx
    0018ad1elea rsi, [rip+0x197d3b]
    0018ad25lea rdi, [rip+0x197d64]
    0018ad2cadd rdi, 8
    0018ad30mov rbx, rsp
    0018ad33mov rsp, [r14+64]
    0018ad37call caml_initialize
    0018ad3cmov rsp, rbx
    0018ad3fmov eax, 1
    0018ad44ret
    0018acf0
    0018ad45
    0018ad45 // align 0x10
    0018ad50
    0018ad50camlSimpleRope.fun_1011:
    0018ad50lea r10, [rsp-320]
    0018ad58cmp r10, [r14+40]
    0018ad5cjb 0x18ae51
    0018ad62
    0018ad62loc_18ad62:
    0018ad62call camlSimpleRope.Make_666
    0018ad67mov rbx, rax
    0018ad6asub r15, 160
    0018ad71cmp r15, [r14]
    0018ad74jb 0x18ae47
    0018ad7a
    0018ad7aloc_18ad7a:
    0018ad7alea rax, [r15+8]
    0018ad7emov [rax-8], 19456
    0018ad86mov rdi, [rbx]
    0018ad89mov [rax], rdi
    0018ad8cmov rdi, [rbx+8]
    0018ad90mov [rax+8], rdi
    0018ad94mov rdi, [rbx+16]
    0018ad98mov [rax+16], rdi
    0018ad9clea rdi, [rip+0x19955d]
    0018ada3mov [rax+24], rdi
    0018ada7mov rdi, [rbx+40]
    0018adabmov [rax+32], rdi
    0018adafmov rdi, [rbx+56]
    0018adb3mov [rax+40], rdi
    0018adb7mov rdi, [rbx+80]
    0018adbbmov [rax+48], rdi
    0018adbfmov rdi, [rbx+96]
    0018adc3mov [rax+56], rdi
    0018adc7mov rdi, [rbx+112]
    0018adcbmov [rax+64], rdi
    0018adcfmov rdi, [rbx+136]
    0018add6mov [rax+72], rdi
    0018addamov rdi, [rbx+144]
    0018ade1mov [rax+80], rdi
    0018ade5mov rdi, [rbx+160]
    0018adecmov [rax+88], rdi
    0018adf0mov rdi, [rbx+168]
    0018adf7mov [rax+96], rdi
    0018adfbmov rdi, [rbx+176]
    0018ae02mov [rax+104], rdi
    0018ae06mov rdi, [rbx+192]
    0018ae0dmov [rax+112], rdi
    0018ae11mov rdi, [rbx+200]
    0018ae18mov [rax+120], rdi
    0018ae1cmov rdi, [rbx+216]
    0018ae23mov [rax+128], rdi
    0018ae2amov rdi, [rbx+232]
    0018ae31mov [rax+136], rdi
    0018ae38mov rbx, [rbx+240]
    0018ae3fmov [rax+144], rbx
    0018ae46ret
    0018ae47
    0018ae47loc_18ae47:
    0018ae47call caml_call_gc
    0018ae4cjmp 0x18ad7a
    0018ae51
    0018ae51loc_18ae51:
    0018ae51push 33
    0018ae53call caml_call_realloc_stack
    0018ae58pop r10
    0018ae5ajmp 0x18ad62
    0018ad50
    0018ae5f
    0018ae5f // align 0x10
    0018ae60
    0018ae60camlSimpleRope.Make_666:
    0018ae60sub rsp, 176
    0018ae67lea rsi, [rip+0x19931a]
    0018ae6emov [rsp+24], rsi
    0018ae73lea rbx, [rip+0x1992f6]
    0018ae7amov [rsp+32], rbx
    0018ae7flea rbx, [rip+0x1992d2]
    0018ae86mov [rsp+40], rbx
    0018ae8bsub r15, 784
    0018ae92cmp r15, [r14]
    0018ae95jb 0x18b2f4
    0018ae9b
    0018ae9bloc_18ae9b:
    0018ae9blea rdi, [r15+8]
    0018ae9fadd rdi, 736
    0018aea6mov [rsp+48], rdi
    0018aeabmov [rdi-8], 5367
    0018aeb3lea rcx, [rip-0x93e9a]
    0018aebamov [rdi], rcx
    0018aebdmov rbx, 0x200000000000007
    0018aec7mov [rdi+8], rbx
    0018aecblea rbx, [rip+1262]
    0018aed2mov [rdi+16], rbx
    0018aed6mov [rdi+24], rsi
    0018aedamov [rdi+32], rax
    0018aedelea rbx, [rdi-40]
    0018aee2mov [rsp+16], rbx
    0018aee7mov [rbx-8], 4343
    0018aeefmov [rbx], rcx
    0018aef2mov rdx, 0x200000000000007
    0018aefcmov [rbx+8], rdx
    0018af00lea rdx, [rip+2089]
    0018af07mov [rbx+16], rdx
    0018af0bmov [rbx+24], rdi
    0018af0fadd rbx, -40
    0018af13mov [rsp+56], rbx
    0018af18mov [rbx-8], 4343
    0018af20lea rdx, [rip-0x93ff7]
    0018af27mov [rbx], rdx
    0018af2amov r8, 0x300000000000007
    0018af34mov [rbx+8], r8
    0018af38lea r8, [rip+2049]
    0018af3fmov [rbx+16], r8
    0018af43mov [rbx+24], rax
    0018af47lea r8, [rbx-56]
    0018af4bmov [rsp+64], r8
    0018af50mov [r8-8], 6391
    0018af58mov [r8], rcx
    0018af5bmov r9, 0x200000000000007
    0018af65mov [r8+8], r9
    0018af69lea r9, [rip+2256]
    0018af70mov [r8+16], r9
    0018af74mov [r8+24], rsi
    0018af78mov [r8+32], rbx
    0018af7cmov [r8+40], rax
    0018af80lea r9, [rip+0x1991b1]
    0018af87mov [rsp+72], r9
    0018af8clea rbx, [r8-48]
    0018af90mov [rsp+80], rbx
    0018af95mov [rbx-8], 5367
    0018af9dmov [rbx], rcx
    0018afa0mov r8, 0x200000000000007
    0018afaamov [rbx+8], r8
    0018afaelea r8, [rip+2747]
    0018afb5mov [rbx+16], r8
    0018afb9mov [rbx+24], r9
    0018afbdmov [rbx+32], rax
    0018afc1lea rax, [rbx-48]
    0018afc5mov [rsp+88], rax
    0018afcamov [rax-8], 5367
    0018afd2mov [rsp], rcx
    0018afd6mov [rax], rcx
    0018afd9mov rcx, 0x200000000000007
    0018afe3mov [rax+8], rcx
    0018afe7lea rcx, [rip+2946]
    0018afeemov [rax+16], rcx
    0018aff2mov [rax+24], rsi
    0018aff6mov [rax+32], rbx
    0018affalea rbx, [rax-48]
    0018affemov [rsp+96], rbx
    0018b003mov [rbx-8], 5367
    0018b00bmov [rbx], rdx
    0018b00emov rax, 0x300000000000007
    0018b018mov [rbx+8], rax
    0018b01clea rax, [rip+3133]
    0018b023mov [rbx+16], rax
    0018b027mov [rbx+24], rsi
    0018b02bmov [rbx+32], rdi
    0018b02flea rax, [rbx-56]
    0018b033mov [rsp+104], rax
    0018b038mov [rax-8], 6391
    0018b040mov [rax], rdx
    0018b043mov rdi, 0x300000000000007
    0018b04dmov [rax+8], rdi
    0018b051lea rdi, [rip+3464]
    0018b058mov [rax+16], rdi
    0018b05cmov [rax+24], rsi
    0018b060lea rdi, [rip+0x199299]
    0018b067mov [rsp+8], rdi
    0018b06cmov [rax+32], rdi
    0018b070mov [rax+40], rbx
    0018b074lea rbx, [rip+0x19909d]
    0018b07bmov [rsp+112], rbx
    0018b080lea rbx, [rip+0x199071]
    0018b087mov [rsp+120], rbx
    0018b08clea rbx, [rip+0x199045]
    0018b093mov [rsp+128], rbx
    0018b09blea rbx, [rip+0x199016]
    0018b0a2mov [rsp+136], rbx
    0018b0aalea rbx, [rip+0x198fe7]
    0018b0b1mov [rsp+144], rbx
    0018b0b9lea rbx, [rip+0x198fb8]
    0018b0c0mov [rsp+152], rbx
    0018b0c8lea rbx, [rip+0x198f89]
    0018b0cfmov [rsp+160], rbx
    0018b0d7lea rdi, [rip+0x199282]
    0018b0delea rsi, [rax-48]
    0018b0e2mov [rsi-8], 5367
    0018b0eamov rax, [rsp]
    0018b0eemov [rsi], rax
    0018b0f1mov rdx, 0x200000000000007
    0018b0fbmov [rsi+8], rdx
    0018b0fflea rdx, [rip+4442]
    0018b106mov [rsi+16], rdx
    0018b10amov [rsi+24], rdi
    0018b10emov [rsi+32], rbx
    0018b112lea rbx, [rip+0x198f1f]
    0018b119mov [rsp], rbx
    0018b11dlea r13, [rip+0x198efc]
    0018b124lea r10, [rip+0x198ed5]
    0018b12blea r11, [rip+0x198eb6]
    0018b132lea rdx, [rip+0x198e8f]
    0018b139mov [rsp+168], rdx
    0018b141lea r8, [rip+0x198e60]
    0018b148lea rdi, [rsi-48]
    0018b14cmov [rdi-8], 5367
    0018b154mov [rdi], rax
    0018b157mov rbx, 0x200000000000007
    0018b161mov [rdi+8], rbx
    0018b165lea rbx, [rip+5156]
    0018b16cmov [rdi+16], rbx
    0018b170mov [rdi+24], rsi
    0018b174mov [rdi+32], r8
    0018b178lea r9, [rip+0x198e09]
    0018b17flea r12, [rip+0x198de2]
    0018b186lea rbx, [rdi-48]
    0018b18amov [rbx-8], 5367
    0018b192mov [rbx], rax
    0018b195mov rax, 0x200000000000007
    0018b19fmov [rbx+8], rax
    0018b1a3lea rax, [rip+5654]
    0018b1aamov [rbx+16], rax
    0018b1aemov rdx, [rsp+8]
    0018b1b3mov [rbx+24], rdx
    0018b1b7mov rcx, [rsp+16]
    0018b1bcmov [rbx+32], rcx
    0018b1c0lea rax, [rbx-256]
    0018b1c7mov [rax-8], 31744
    0018b1cfmov rbp, [rsp+24]
    0018b1d4mov [rax], rbp
    0018b1d7mov rbp, [rsp+32]
    0018b1dcmov [rax+8], rbp
    0018b1e0mov rbp, [rsp+40]
    0018b1e5mov [rax+16], rbp
    0018b1e9mov [rax+24], rdx
    0018b1edmov rdx, [rsp+48]
    0018b1f2mov [rax+32], rdx
    0018b1f6mov [rax+40], rcx
    0018b1famov rdx, [rsp+56]
    0018b1ffmov [rax+48], rdx
    0018b203mov rdx, [rsp+64]
    0018b208mov [rax+56], rdx
    0018b20cmov rdx, [rsp+72]
    0018b211mov [rax+64], rdx
    0018b215mov rdx, [rsp+80]
    0018b21amov [rax+72], rdx
    0018b21emov rdx, [rsp+88]
    0018b223mov [rax+80], rdx
    0018b227mov rdx, [rsp+96]
    0018b22cmov [rax+88], rdx
    0018b230mov rdx, [rsp+104]
    0018b235mov [rax+96], rdx
    0018b239mov rdx, [rsp+112]
    0018b23emov [rax+104], rdx
    0018b242mov rdx, [rsp+120]
    0018b247mov [rax+112], rdx
    0018b24bmov rdx, [rsp+128]
    0018b253mov [rax+120], rdx
    0018b257mov rdx, [rsp+136]
    0018b25fmov [rax+128], rdx
    0018b266mov rdx, [rsp+144]
    0018b26emov [rax+136], rdx
    0018b275mov rdx, [rsp+152]
    0018b27dmov [rax+144], rdx
    0018b284mov rdx, [rsp+160]
    0018b28cmov [rax+152], rdx
    0018b293mov [rax+160], rsi
    0018b29amov rsi, [rsp]
    0018b29emov [rax+168], rsi
    0018b2a5mov [rax+176], r13
    0018b2acmov [rax+184], r10
    0018b2b3mov [rax+192], r11
    0018b2bamov rdx, [rsp+168]
    0018b2c2mov [rax+200], rdx
    0018b2c9mov [rax+208], r8
    0018b2d0mov [rax+216], rdi
    0018b2d7mov [rax+224], r9
    0018b2demov [rax+232], r12
    0018b2e5mov [rax+240], rbx
    0018b2ecadd rsp, 176
    0018b2f3ret
    0018b2f4
    0018b2f4loc_18b2f4:
    0018b2f4call caml_call_gc
    0018b2f9jmp 0x18ae9b
    0018ae60
    0018b2fe
    0018b2fe // align 0x10
    0018b300
    0018b300camlSimpleRope.length_290:
    0018b300movzx rbx, [rax-8]
    0018b305test rbx, rbx
    0018b308je 0x18b310
    0018b30amov rax, [rax+16]
    0018b30eret
    0018b30f
    0018b30f 90 .
    0018b310
    0018b310loc_18b310:
    0018b310mov rax, [rax]
    0018b313mov rbx, [rax-8]
    0018b317shr rbx, 10
    0018b31blea rbx, [8*rbx-1]
    0018b323movzx rax, [rax+rbx]
    0018b328sub rbx, rax
    0018b32blea rax, [rbx+rbx+1]
    0018b330ret
    0018b300
    0018b331
    0018b331 // align 0x10
    0018b340
    0018b340camlSimpleRope.of_string_364:
    0018b340sub r15, 16
    0018b344cmp r15, [r14]
    0018b347jb 0x18b35c
    0018b349
    0018b349loc_18b349:
    0018b349lea rbx, [r15+8]
    0018b34dmov [rbx-8], 1024
    0018b355mov [rbx], rax
    0018b358mov rax, rbx
    0018b35bret
    0018b35c
    0018b35cloc_18b35c:
    0018b35ccall caml_call_gc
    0018b361jmp 0x18b349
    0018b340
    0018b363
    0018b363 // align 0x10
    0018b370
    0018b370camlSimpleRope.singleton_367:
    0018b370lea r10, [rsp-320]
    0018b378cmp r10, [r14+40]
    0018b37cjb 0x18b3ae
    0018b37e
    0018b37eloc_18b37e:
    0018b37emov rbx, rax
    0018b381mov eax, 3
    0018b386call Stdlib.Bytes.make
    0018b38bsub r15, 16
    0018b38fcmp r15, [r14]
    0018b392jb 0x18b3a7
    0018b394
    0018b394loc_18b394:
    0018b394lea rbx, [r15+8]
    0018b398mov [rbx-8], 1024
    0018b3a0mov [rbx], rax
    0018b3a3mov rax, rbx
    0018b3a6ret
    0018b3a7
    0018b3a7loc_18b3a7:
    0018b3a7call caml_call_gc
    0018b3acjmp 0x18b394
    0018b3ae
    0018b3aeloc_18b3ae:
    0018b3aepush 33
    0018b3b0call caml_call_realloc_stack
    0018b3b5pop r10
    0018b3b7jmp 0x18b37e
    0018b370
    0018b3b9
    0018b3b9 // align 0x10
    0018b3c0
    0018b3c0camlSimpleRope.app_371:
    0018b3c0lea r10, [rsp-344]
    0018b3c8cmp r10, [r14+40]
    0018b3ccjb 0x18b713
    0018b3d2
    0018b3d2loc_18b3d2:
    0018b3d2sub rsp, 24
    0018b3d6mov rsi, rax
    0018b3d9mov rdx, rbx
    0018b3dcmovzx rax, [rsi-8]
    0018b3e1test rax, rax
    0018b3e4je 0x18b3f8
    0018b3e6mov [rsp+16], rdx
    0018b3ebmov [rsp+8], rsi
    0018b3f0jmp 0x18b510
    0018b3f5
    0018b3f5 0f 1f 00 ...
    0018b3f8
    0018b3f8loc_18b3f8:
    0018b3f8mov rax, [rsi]
    0018b3fbmov rbx, [rax-8]
    0018b3ffshr rbx, 10
    0018b403cmp rbx, 2
    0018b407jl 0x18b418
    0018b409mov [rsp+16], rdx
    0018b40emov [rsp+8], rsi
    0018b413jmp 0x18b43e
    0018b415
    0018b415 0f 1f 00 ...
    0018b418
    0018b418loc_18b418:
    0018b418mov rbx, [rax]
    0018b41bmov rcx, 0x700000000000000
    0018b425cmp rbx, rcx
    0018b428jne 0x18b434
    0018b42amov rax, rdx
    0018b42djmp 0x18b6ec
    0018b432
    0018b432 66 90 f.
    0018b434
    0018b434loc_18b434:
    0018b434mov [rsp+16], rdx
    0018b439mov [rsp+8], rsi
    0018b43e
    0018b43eloc_18b43e:
    0018b43emovzx rbx, [rdx-8]
    0018b443test rbx, rbx
    0018b446je 0x18b510
    0018b44cmov rbx, [rdx]
    0018b44fmovzx rsi, [rbx-8]
    0018b454test rsi, rsi
    0018b457jne 0x18b698
    0018b45dmov rbx, [rbx]
    0018b460mov rdi, [rdi+32]
    0018b464mov rsi, [rdi]
    0018b467mov rdi, [rax-8]
    0018b46bshr rdi, 10
    0018b46flea rdi, [8*rdi-1]
    0018b477movzx rcx, [rax+rdi]
    0018b47csub rdi, rcx
    0018b47flea rcx, [rdi+rdi+1]
    0018b484cmp rcx, rsi
    0018b487jge 0x18b698
    0018b48dmov rcx, [rbx-8]
    0018b491shr rcx, 10
    0018b495lea rcx, [8*rcx-1]
    0018b49dmovzx r8, [rbx+rcx]
    0018b4a2sub rcx, r8
    0018b4a5lea rcx, [rcx+rcx+1]
    0018b4aacmp rcx, rsi
    0018b4adjge 0x18b698
    0018b4b3mov rsi, [rdx+16]
    0018b4b7lea rdi, [rsi+2*rdi]
    0018b4bbmov [rsp], rdi
    0018b4bfcall camlStdlib.$5e_139
    0018b4c4sub r15, 48
    0018b4c8cmp r15, [r14]
    0018b4cbjb 0x18b709
    0018b4d1
    0018b4d1loc_18b4d1:
    0018b4d1lea rbx, [r15+8]
    0018b4d5add rbx, 32
    0018b4d9mov [rbx-8], 1024
    0018b4e1mov [rbx], rax
    0018b4e4lea rax, [rbx-32]
    0018b4e8mov [rax-8], 3073
    0018b4f0mov [rax], rbx
    0018b4f3mov rbx, [rsp+16]
    0018b4f8mov rbx, [rbx+8]
    0018b4fcmov [rax+8], rbx
    0018b500mov rbx, [rsp]
    0018b504mov [rax+16], rbx
    0018b508add rsp, 24
    0018b50cret
    0018b50d
    0018b50d 0f 1f 00 ...
    0018b510
    0018b510loc_18b510:
    0018b510movzx rax, [rdx-8]
    0018b515test rax, rax
    0018b518jne 0x18b698
    0018b51emov rax, [rdx]
    0018b521mov rbx, [rax-8]
    0018b525shr rbx, 10
    0018b529cmp rbx, 2
    0018b52djge 0x18b54c
    0018b52fmov rax, [rax]
    0018b532mov rbx, 0x700000000000000
    0018b53ccmp rax, rbx
    0018b53fjne 0x18b54c
    0018b541mov rax, rsi
    0018b544jmp 0x18b6ec
    0018b549
    0018b549 0f 1f 00 ...
    0018b54c
    0018b54cloc_18b54c:
    0018b54cmovzx rax, [rsi-8]
    0018b551test rax, rax
    0018b554je 0x18b620
    0018b55amov rax, [rsi+8]
    0018b55emovzx rbx, [rax-8]
    0018b563test rbx, rbx
    0018b566jne 0x18b698
    0018b56cmov rbx, [rdx]
    0018b56fmov rax, [rax]
    0018b572mov rdi, [rdi+32]
    0018b576mov rdi, [rdi]
    0018b579mov rcx, [rax-8]
    0018b57dshr rcx, 10
    0018b581lea rcx, [8*rcx-1]
    0018b589movzx r8, [rax+rcx]
    0018b58esub rcx, r8
    0018b591lea rcx, [rcx+rcx+1]
    0018b596cmp rcx, rdi
    0018b599jge 0x18b698
    0018b59fmov rcx, [rbx-8]
    0018b5a3shr rcx, 10
    0018b5a7lea rcx, [8*rcx-1]
    0018b5afmovzx r8, [rbx+rcx]
    0018b5b4sub rcx, r8
    0018b5b7lea r8, [rcx+rcx+1]
    0018b5bccmp r8, rdi
    0018b5bfjge 0x18b698
    0018b5c5mov rdi, [rsi+16]
    0018b5c9lea rdi, [rdi+2*rcx]
    0018b5cdmov [rsp], rdi
    0018b5d1call camlStdlib.$5e_139
    0018b5d6sub r15, 48
    0018b5dacmp r15, [r14]
    0018b5ddjb 0x18b6ff
    0018b5e3
    0018b5e3loc_18b5e3:
    0018b5e3lea rbx, [r15+8]
    0018b5e7add rbx, 32
    0018b5ebmov [rbx-8], 1024
    0018b5f3mov [rbx], rax
    0018b5f6lea rax, [rbx-32]
    0018b5famov [rax-8], 3073
    0018b602mov rdi, [rsp+8]
    0018b607mov rdi, [rdi]
    0018b60amov [rax], rdi
    0018b60dmov [rax+8], rbx
    0018b611mov rbx, [rsp]
    0018b615mov [rax+16], rbx
    0018b619add rsp, 24
    0018b61dret
    0018b61e
    0018b61e 66 90 f.
    0018b620
    0018b620loc_18b620:
    0018b620mov rbx, [rdx]
    0018b623mov rax, [rsi]
    0018b626mov rdi, [rdi+32]
    0018b62amov rdi, [rdi]
    0018b62dmov rsi, [rax-8]
    0018b631shr rsi, 10
    0018b635lea rsi, [8*rsi-1]
    0018b63dmovzx rcx, [rax+rsi]
    0018b642sub rsi, rcx
    0018b645lea rsi, [rsi+rsi+1]
    0018b64acmp rsi, rdi
    0018b64djge 0x18b698
    0018b64fmov rsi, [rbx-8]
    0018b653shr rsi, 10
    0018b657lea rsi, [8*rsi-1]
    0018b65fmovzx rcx, [rbx+rsi]
    0018b664sub rsi, rcx
    0018b667lea rsi, [rsi+rsi+1]
    0018b66ccmp rsi, rdi
    0018b66fjge 0x18b698
    0018b671call camlStdlib.$5e_139
    0018b676sub r15, 16
    0018b67acmp r15, [r14]
    0018b67djb 0x18b6f8
    0018b67f
    0018b67floc_18b67f:
    0018b67flea rbx, [r15+8]
    0018b683mov [rbx-8], 1024
    0018b68bmov [rbx], rax
    0018b68emov rax, rbx
    0018b691add rsp, 24
    0018b695ret
    0018b696
    0018b696 66 90 f.
    0018b698
    0018b698loc_18b698:
    0018b698mov rax, rdx
    0018b69bcall camlSimpleRope.length_290
    0018b6a0mov [rsp], rax
    0018b6a4mov rax, [rsp+8]
    0018b6a9call camlSimpleRope.length_290
    0018b6aemov rbx, [rsp]
    0018b6b2add rax, rbx
    0018b6b5dec rax
    0018b6b8sub r15, 32
    0018b6bccmp r15, [r14]
    0018b6bfjb 0x18b6f1
    0018b6c1
    0018b6c1loc_18b6c1:
    0018b6c1lea rbx, [r15+8]
    0018b6c5mov [rbx-8], 3073
    0018b6cdmov rdi, [rsp+8]
    0018b6d2mov [rbx], rdi
    0018b6d5mov rdi, [rsp+16]
    0018b6damov [rbx+8], rdi
    0018b6demov [rbx+16], rax
    0018b6e2mov rax, rbx
    0018b6e5add rsp, 24
    0018b6e9ret
    0018b6ea
    0018b6ea 66 90 f.
    0018b6ec
    0018b6ecloc_18b6ec:
    0018b6ecadd rsp, 24
    0018b6f0ret
    0018b6f1
    0018b6f1loc_18b6f1:
    0018b6f1call caml_call_gc
    0018b6f6jmp 0x18b6c1
    0018b6f8
    0018b6f8loc_18b6f8:
    0018b6f8call caml_call_gc
    0018b6fdjmp 0x18b67f
    0018b6ff
    0018b6ffloc_18b6ff:
    0018b6ffcall caml_call_gc
    0018b704jmp 0x18b5e3
    0018b709
    0018b709loc_18b709:
    0018b709call caml_call_gc
    0018b70ejmp 0x18b4d1
    0018b713
    0018b713loc_18b713:
    0018b713push 36
    0018b715call caml_call_realloc_stack
    0018b71apop r10
    0018b71cjmp 0x18b3d2
    0018b3c0
    0018b721
    0018b721 // align 0x10
    0018b730
    0018b730camlSimpleRope.append_387:
    0018b730mov rdi, [rdi+24]
    0018b734jmp 0x18b3c0
    0018b730
    0018b739
    0018b739 // align 0x10
    0018b740
    0018b740camlSimpleRope.app_string_391:
    0018b740lea r10, [rsp-336]
    0018b748cmp r10, [r14+40]
    0018b74cjb 0x18b831
    0018b752
    0018b752loc_18b752:
    0018b752sub rsp, 16
    0018b756movzx rdx, [rax-8]
    0018b75btest rdx, rdx
    0018b75eje 0x18b7b4
    0018b760mov [rsp+8], rdi
    0018b765mov [rsp], rax
    0018b769mov rax, [rax+8]
    0018b76dcall camlSimpleRope.app_string_391
    0018b772sub r15, 32
    0018b776cmp r15, [r14]
    0018b779jb 0x18b827
    0018b77f
    0018b77floc_18b77f:
    0018b77flea rbx, [r15+8]
    0018b783mov [rbx-8], 3073
    0018b78bmov rsi, [rsp]
    0018b78fmov rdi, [rsi]
    0018b792mov [rbx], rdi
    0018b795mov [rbx+8], rax
    0018b799mov rax, [rsi+16]
    0018b79dmov rdi, [rsp+8]
    0018b7a2lea rax, [rax+rdi-1]
    0018b7a7mov [rbx+16], rax
    0018b7abmov rax, rbx
    0018b7aeadd rsp, 16
    0018b7b2ret
    0018b7b3nop
    0018b7b4
    0018b7b4loc_18b7b4:
    0018b7b4mov rax, [rax]
    0018b7b7mov rdi, [rsi+24]
    0018b7bbmov rdi, [rdi]
    0018b7bemov rsi, [rax-8]
    0018b7c2shr rsi, 10
    0018b7c6lea rsi, [8*rsi-1]
    0018b7cemovzx rdx, [rax+rsi]
    0018b7d3sub rsi, rdx
    0018b7d6lea rsi, [rsi+rsi+1]
    0018b7dbcmp rsi, rdi
    0018b7dejge 0x18b808
    0018b7e0call camlStdlib.$5e_139
    0018b7e5sub r15, 16
    0018b7e9cmp r15, [r14]
    0018b7ecjb 0x18b820
    0018b7ee
    0018b7eeloc_18b7ee:
    0018b7eelea rbx, [r15+8]
    0018b7f2mov [rbx-8], 1024
    0018b7famov [rbx], rax
    0018b7fdmov rax, rbx
    0018b800add rsp, 16
    0018b804ret
    0018b805nop [rax]
    0018b808
    0018b808loc_18b808:
    0018b808lea rax, [rip+0x1a1e09]
    0018b80fmov rax, [rax+16]
    0018b813mov rsp, [r14+48]
    0018b817pop [r14+48]
    0018b81bpop r11
    0018b81djmp r11
    0018b820
    0018b820loc_18b820:
    0018b820call caml_call_gc
    0018b825jmp 0x18b7ee
    0018b827
    0018b827loc_18b827:
    0018b827call caml_call_gc
    0018b82cjmp 0x18b77f
    0018b831
    0018b831loc_18b831:
    0018b831push 35
    0018b833call caml_call_realloc_stack
    0018b838pop r10
    0018b83ajmp 0x18b752
    0018b740
    0018b83f
    0018b83f // align 0x10
    0018b840
    0018b840camlSimpleRope.append_string_400:
    0018b840lea r10, [rsp-360]
    0018b848cmp r10, [r14+40]
    0018b84cjb 0x18b9a9
    0018b852
    0018b852loc_18b852:
    0018b852sub rsp, 24
    0018b856mov [rsp+16], rax
    0018b85bmov [rsp+8], rbx
    0018b860mov rsi, [rbx-8]
    0018b864shr rsi, 10
    0018b868lea rsi, [8*rsi-1]
    0018b870movzx rdx, [rbx+rsi]
    0018b875sub rsi, rdx
    0018b878lea rdx, [rsi+rsi+1]
    0018b87dmov [rsp], rdx
    0018b881mov rsi, [rdi+40]
    0018b885mov rsi, [rsi]
    0018b888cmp rdx, rsi
    0018b88bjge 0x18b944
    0018b891lea r11, [rip+36]
    0018b898push r11
    0018b89apush [r14+48]
    0018b89emov [r14+48], rsp
    0018b8a2mov rsi, [rdi+32]
    0018b8a6mov rdi, rdx
    0018b8a9call camlSimpleRope.app_string_391
    0018b8aepop [r14+48]
    0018b8b2add rsp, 8
    0018b8b6jmp 0x18b93c
    0018b8bbnop
    0018b8bclea rbx, [rip+0x1a1d55]
    0018b8c3mov rbx, [rbx+16]
    0018b8c7cmp rax, rbx
    0018b8cajne 0x18b92c
    0018b8ccmov rax, [rsp+16]
    0018b8d1call camlSimpleRope.length_290
    0018b8d6mov rbx, [rsp]
    0018b8daadd rax, rbx
    0018b8dddec rax
    0018b8e0sub r15, 48
    0018b8e4cmp r15, [r14]
    0018b8e7jb 0x18b99f
    0018b8ed
    0018b8edloc_18b8ed:
    0018b8edlea rbx, [r15+8]
    0018b8f1add rbx, 32
    0018b8f5mov [rbx-8], 1024
    0018b8fdmov rdi, [rsp+8]
    0018b902mov [rbx], rdi
    0018b905lea rdi, [rbx-32]
    0018b909mov [rdi-8], 3073
    0018b911mov rsi, [rsp+16]
    0018b916mov [rdi], rsi
    0018b919mov [rdi+8], rbx
    0018b91dmov [rdi+16], rax
    0018b921mov rax, rdi
    0018b924add rsp, 24
    0018b928ret
    0018b929nop [rax]
    0018b92c
    0018b92cloc_18b92c:
    0018b92cmov rsp, [r14+48]
    0018b930pop [r14+48]
    0018b934pop r11
    0018b936jmp r11
    0018b939nop [rax]
    0018b93c
    0018b93cloc_18b93c:
    0018b93cadd rsp, 24
    0018b940ret
    0018b941nop [rax]
    0018b944
    0018b944loc_18b944:
    0018b944call camlSimpleRope.length_290
    0018b949mov rbx, [rsp]
    0018b94dadd rax, rbx
    0018b950dec rax
    0018b953sub r15, 48
    0018b957cmp r15, [r14]
    0018b95ajb 0x18b998
    0018b95c
    0018b95cloc_18b95c:
    0018b95clea rbx, [r15+8]
    0018b960add rbx, 32
    0018b964mov [rbx-8], 1024
    0018b96cmov rdi, [rsp+8]
    0018b971mov [rbx], rdi
    0018b974lea rdi, [rbx-32]
    0018b978mov [rdi-8], 3073
    0018b980mov rsi, [rsp+16]
    0018b985mov [rdi], rsi
    0018b988mov [rdi+8], rbx
    0018b98cmov [rdi+16], rax
    0018b990mov rax, rdi
    0018b993add rsp, 24
    0018b997ret
    0018b998
    0018b998loc_18b998:
    0018b998call caml_call_gc
    0018b99djmp 0x18b95c
    0018b99f
    0018b99floc_18b99f:
    0018b99fcall caml_call_gc
    0018b9a4jmp 0x18b8ed
    0018b9a9
    0018b9a9loc_18b9a9:
    0018b9a9push 38
    0018b9abcall caml_call_realloc_stack
    0018b9b0pop r10
    0018b9b2jmp 0x18b852
    0018b840
    0018b9b7
    0018b9b7 // align 0x10
    0018b9c0
    0018b9c0camlSimpleRope.sc2c_405:
    0018b9c0lea r10, [rsp-352]
    0018b9c8cmp r10, [r14+40]
    0018b9ccjb 0x18ba56
    0018b9d2
    0018b9d2loc_18b9d2:
    0018b9d2sub rsp, 32
    0018b9d6mov [rsp], rax
    0018b9damov [rsp+16], rbx
    0018b9dfmov [rsp+8], rdi
    0018b9e4add rbx, 2
    0018b9e8mov rdi, rbx
    0018b9eblea rax, [rip+0x9563e]
    0018b9f2call caml_c_call
    0018b9f7mov rdi, rax
    0018b9famov [rsp+24], rdi
    0018b9ffmov esi, 1
    0018ba04mov ebx, 1
    0018ba09mov rax, [rsp]
    0018ba0dmov rdx, [rsp+16]
    0018ba12call Stdlib.Bytes.blit_string
    0018ba17mov rbx, [rsp+8]
    0018ba1csar rbx, 1
    0018ba1fmov rdi, [rsp+16]
    0018ba24sar rdi, 1
    0018ba27mov rax, [rsp+24]
    0018ba2cmov rsi, [rax-8]
    0018ba30shr rsi, 10
    0018ba34lea rsi, [8*rsi-1]
    0018ba3cmovzx rdx, [rax+rsi]
    0018ba41sub rsi, rdx
    0018ba44cmp rsi, rdi
    0018ba47jbe 0x18ba51
    0018ba49mov [rax+rdi], bl
    0018ba4cadd rsp, 32
    0018ba50ret
    0018ba51
    0018ba51loc_18ba51:
    0018ba51call caml_ml_array_bound_error
    0018ba56
    0018ba56loc_18ba56:
    0018ba56push 37
    0018ba58call caml_call_realloc_stack
    0018ba5dpop r10
    0018ba5fjmp 0x18b9d2
    0018b9c0
    0018ba64
    0018ba64 // align 0x10
    0018ba70
    0018ba70camlSimpleRope.app_char_508:
    0018ba70lea r10, [rsp-328]
    0018ba78cmp r10, [r14+40]
    0018ba7cjb 0x18bb5d
    0018ba82
    0018ba82loc_18ba82:
    0018ba82sub rsp, 8
    0018ba86mov rsi, rbx
    0018ba89movzx rbx, [rax-8]
    0018ba8etest rbx, rbx
    0018ba91je 0x18bae0
    0018ba93mov [rsp], rax
    0018ba97mov rax, [rax+8]
    0018ba9bmov rbx, rsi
    0018ba9ecall camlSimpleRope.app_char_508
    0018baa3sub r15, 32
    0018baa7cmp r15, [r14]
    0018baaajb 0x18bb53
    0018bab0
    0018bab0loc_18bab0:
    0018bab0lea rbx, [r15+8]
    0018bab4mov [rbx-8], 3073
    0018babcmov rsi, [rsp]
    0018bac0mov rdi, [rsi]
    0018bac3mov [rbx], rdi
    0018bac6mov [rbx+8], rax
    0018bacamov rax, [rsi+16]
    0018baceadd rax, 2
    0018bad2mov [rbx+16], rax
    0018bad6mov rax, rbx
    0018bad9add rsp, 8
    0018baddret
    0018badenop
    0018bae0
    0018bae0loc_18bae0:
    0018bae0mov rax, [rax]
    0018bae3mov rbx, [rax-8]
    0018bae7shr rbx, 10
    0018baeblea rbx, [8*rbx-1]
    0018baf3movzx rdx, [rax+rbx]
    0018baf8sub rbx, rdx
    0018bafblea rbx, [rbx+rbx+1]
    0018bb00mov rdi, [rdi+32]
    0018bb04mov rdi, [rdi]
    0018bb07cmp rbx, rdi
    0018bb0ajge 0x18bb34
    0018bb0cmov rdi, rsi
    0018bb0fcall camlSimpleRope.sc2c_405
    0018bb14sub r15, 16
    0018bb18cmp r15, [r14]
    0018bb1bjb 0x18bb4c
    0018bb1d
    0018bb1dloc_18bb1d:
    0018bb1dlea rbx, [r15+8]
    0018bb21mov [rbx-8], 1024
    0018bb29mov [rbx], rax
    0018bb2cmov rax, rbx
    0018bb2fadd rsp, 8
    0018bb33ret
    0018bb34
    0018bb34loc_18bb34:
    0018bb34lea rax, [rip+0x1a1add]
    0018bb3bmov rax, [rax+16]
    0018bb3fmov rsp, [r14+48]
    0018bb43pop [r14+48]
    0018bb47pop r11
    0018bb49jmp r11
    0018bb4c
    0018bb4cloc_18bb4c:
    0018bb4ccall caml_call_gc
    0018bb51jmp 0x18bb1d
    0018bb53
    0018bb53loc_18bb53:
    0018bb53call caml_call_gc
    0018bb58jmp 0x18bab0
    0018bb5d
    0018bb5dloc_18bb5d:
    0018bb5dpush 34
    0018bb5fcall caml_call_realloc_stack
    0018bb64pop r10
    0018bb66jmp 0x18ba82
    0018ba70
    0018bb6b
    0018bb6b // align 0x10
    0018bb70
    0018bb70camlSimpleRope.append_char_517:
    0018bb70lea r10, [rsp-360]
    0018bb78cmp r10, [r14+40]
    0018bb7cjb 0x18bc48
    0018bb82
    0018bb82loc_18bb82:
    0018bb82sub rsp, 24
    0018bb86mov [rsp+8], rax
    0018bb8bmov [rsp], rbx
    0018bb8flea r11, [rip+34]
    0018bb96push r11
    0018bb98push [r14+48]
    0018bb9cmov [r14+48], rsp
    0018bba0mov rdi, [rdi+32]
    0018bba4call camlSimpleRope.app_char_508
    0018bba9pop [r14+48]
    0018bbadadd rsp, 8
    0018bbb1jmp 0x18bc3c
    0018bbb6nop
    0018bbb8lea rbx, [rip+0x1a1a59]
    0018bbbfmov rbx, [rbx+16]
    0018bbc3cmp rax, rbx
    0018bbc6jne 0x18bc2c
    0018bbc8mov rax, [rsp+8]
    0018bbcdcall camlSimpleRope.length_290
    0018bbd2add rax, 2
    0018bbd6mov [rsp+16], rax
    0018bbdbmov eax, 3
    0018bbe0mov rbx, [rsp]
    0018bbe4call Stdlib.Bytes.make
    0018bbe9sub r15, 48
    0018bbedcmp r15, [r14]
    0018bbf0jb 0x18bc41
    0018bbf2
    0018bbf2loc_18bbf2:
    0018bbf2lea rbx, [r15+8]
    0018bbf6add rbx, 32
    0018bbfamov [rbx-8], 1024
    0018bc02mov [rbx], rax
    0018bc05lea rax, [rbx-32]
    0018bc09mov [rax-8], 3073
    0018bc11mov rdi, [rsp+8]
    0018bc16mov [rax], rdi
    0018bc19mov [rax+8], rbx
    0018bc1dmov rbx, [rsp+16]
    0018bc22mov [rax+16], rbx
    0018bc26add rsp, 24
    0018bc2aret
    0018bc2bnop
    0018bc2c
    0018bc2cloc_18bc2c:
    0018bc2cmov rsp, [r14+48]
    0018bc30pop [r14+48]
    0018bc34pop r11
    0018bc36jmp r11
    0018bc39nop [rax]
    0018bc3c
    0018bc3cloc_18bc3c:
    0018bc3cadd rsp, 24
    0018bc40ret
    0018bc41
    0018bc41loc_18bc41:
    0018bc41call caml_call_gc
    0018bc46jmp 0x18bbf2
    0018bc48
    0018bc48loc_18bc48:
    0018bc48push 38
    0018bc4acall caml_call_realloc_stack
    0018bc4fpop r10
    0018bc51jmp 0x18bb82
    0018bb70
    0018bc56
    0018bc56 // align 0x10
    0018bc60
    0018bc60camlSimpleRope.mksub_521:
    0018bc60lea r10, [rsp-368]
    0018bc68cmp r10, [r14+40]
    0018bc6cjb 0x18bdc7
    0018bc72
    0018bc72loc_18bc72:
    0018bc72sub rsp, 48
    0018bc76
    0018bc76loc_18bc76:
    0018bc76mov [rsp+16], rax
    0018bc7bmov [rsp+40], rbx
    0018bc80mov [rsp], rdi
    0018bc84mov [rsp+32], rsi
    0018bc89cmp r15, [r14]
    0018bc8cjbe 0x18bdbd
    0018bc92
    0018bc92loc_18bc92:
    0018bc92cmp rax, 1
    0018bc96jne 0x18bcb9
    0018bc98mov rax, rdi
    0018bc9bcall camlSimpleRope.length_290
    0018bca0mov rbx, [rsp+40]
    0018bca5cmp rbx, rax
    0018bca8jne 0x18bcb4
    0018bcaamov rax, [rsp]
    0018bcaeadd rsp, 48
    0018bcb2ret
    0018bcb3
    0018bcb3 90 .
    0018bcb4
    0018bcb4loc_18bcb4:
    0018bcb4mov [rsp+40], rbx
    0018bcb9
    0018bcb9loc_18bcb9:
    0018bcb9mov rsi, [rsp]
    0018bcbdmovzx rax, [rsi-8]
    0018bcc2test rax, rax
    0018bcc5je 0x18bd80
    0018bccbmov rax, [rsi+8]
    0018bccfmov [rsp+8], rax
    0018bcd4mov rax, [rsi]
    0018bcd7mov [rsp+24], rax
    0018bcdccall camlSimpleRope.length_290
    0018bce1mov rdi, rax
    0018bce4mov [rsp], rdi
    0018bce8mov rbx, [rsp+40]
    0018bcedcmp rbx, rdi
    0018bcf0jg 0x18bd08
    0018bcf2mov rax, [rsp+16]
    0018bcf7mov rdi, [rsp+24]
    0018bcfcmov rsi, [rsp+32]
    0018bd01jmp 0x18bc76
    0018bd06
    0018bd06 66 90 f.
    0018bd08
    0018bd08loc_18bd08:
    0018bd08mov rax, [rsp+16]
    0018bd0dcmp rax, rdi
    0018bd10jl 0x18bd30
    0018bd12sub rbx, rdi
    0018bd15inc rbx
    0018bd18sub rax, rdi
    0018bd1binc rax
    0018bd1emov rdi, [rsp+8]
    0018bd23mov rsi, [rsp+32]
    0018bd28jmp 0x18bc76
    0018bd2d
    0018bd2d 0f 1f 00 ...
    0018bd30
    0018bd30loc_18bd30:
    0018bd30sub rbx, rdi
    0018bd33inc rbx
    0018bd36mov eax, 1
    0018bd3bmov rdi, [rsp+8]
    0018bd40mov rsi, [rsp+32]
    0018bd45call camlSimpleRope.mksub_521
    0018bd4amov [rsp+8], rax
    0018bd4fmov rax, [rsp+16]
    0018bd54mov rbx, [rsp]
    0018bd58mov rdi, [rsp+24]
    0018bd5dmov rsi, [rsp+32]
    0018bd62call camlSimpleRope.mksub_521
    0018bd67mov rbx, [rsp+32]
    0018bd6cmov rdi, [rbx+32]
    0018bd70mov rbx, [rsp+8]
    0018bd75add rsp, 48
    0018bd79jmp 0x18b3c0
    0018bd7e
    0018bd7e 66 90 f.
    0018bd80
    0018bd80loc_18bd80:
    0018bd80mov rdi, rbx
    0018bd83mov rbx, [rsp+16]
    0018bd88sub rdi, rbx
    0018bd8binc rdi
    0018bd8emov rax, [rsi]
    0018bd91call Stdlib.Bytes.sub
    0018bd96sub r15, 16
    0018bd9acmp r15, [r14]
    0018bd9djb 0x18bdb6
    0018bd9f
    0018bd9floc_18bd9f:
    0018bd9flea rbx, [r15+8]
    0018bda3mov [rbx-8], 1024
    0018bdabmov [rbx], rax
    0018bdaemov rax, rbx
    0018bdb1add rsp, 48
    0018bdb5ret
    0018bdb6
    0018bdb6loc_18bdb6:
    0018bdb6call caml_call_gc
    0018bdbbjmp 0x18bd9f
    0018bdbd
    0018bdbdloc_18bdbd:
    0018bdbdcall caml_call_gc
    0018bdc2jmp 0x18bc92
    0018bdc7
    0018bdc7loc_18bdc7:
    0018bdc7push 39
    0018bdc9call caml_call_realloc_stack
    0018bdcepop r10
    0018bdd0jmp 0x18bc72
    0018bc60
    0018bdd5
    0018bdd5 // align 0x10
    0018bde0
    0018bde0camlSimpleRope.sub_529:
    0018bde0lea r10, [rsp-360]
    0018bde8cmp r10, [r14+40]
    0018bdecjb 0x18be7c
    0018bdf2
    0018bdf2loc_18bdf2:
    0018bdf2sub rsp, 40
    0018bdf6lea rdx, [rbx+rdi-1]
    0018bdfbcmp rbx, 1
    0018bdffjl 0x18be2e
    0018be01cmp rdi, 1
    0018be05jl 0x18be2e
    0018be07mov [rsp+32], rdx
    0018be0cmov [rsp+8], rsi
    0018be11mov [rsp], rdi
    0018be15mov [rsp+16], rbx
    0018be1amov [rsp+24], rax
    0018be1fcall camlSimpleRope.length_290
    0018be24mov rbx, [rsp+32]
    0018be29cmp rbx, rax
    0018be2cjle 0x18be48
    0018be2e
    0018be2eloc_18be2e:
    0018be2elea rax, [rip+0x19839b]
    0018be35mov rax, [rax+8]
    0018be39mov rsp, [r14+48]
    0018be3dpop [r14+48]
    0018be41pop r11
    0018be43jmp r11
    0018be46nop
    0018be48
    0018be48loc_18be48:
    0018be48mov rax, [rsp]
    0018be4ccmp rax, 1
    0018be50jne 0x18be60
    0018be52lea rax, [rip+0x1984a7]
    0018be59add rsp, 40
    0018be5dret
    0018be5enop
    0018be60
    0018be60loc_18be60:
    0018be60mov rax, [rsp+8]
    0018be65mov rsi, [rax+40]
    0018be69mov rax, [rsp+16]
    0018be6emov rdi, [rsp+24]
    0018be73add rsp, 40
    0018be77jmp 0x18bc60
    0018be7c
    0018be7cloc_18be7c:
    0018be7cpush 38
    0018be7ecall caml_call_realloc_stack
    0018be83pop r10
    0018be85jmp 0x18bdf2
    0018bde0
    0018be8a
    0018be8a // align 0x10
    0018be90
    0018be90camlSimpleRope.get_rec_535:
    0018be90lea r10, [rsp-344]
    0018be98cmp r10, [r14+40]
    0018be9cjb 0x18bf08
    0018be9e
    0018be9eloc_18be9e:
    0018be9esub rsp, 24
    0018bea2
    0018bea2loc_18bea2:
    0018bea2cmp r15, [r14]
    0018bea5jbe 0x18bf01
    0018bea7
    0018bea7loc_18bea7:
    0018bea7movzx rdi, [rax-8]
    0018beactest rdi, rdi
    0018beafje 0x18beec
    0018beb1mov [rsp], rbx
    0018beb5mov [rsp+8], rax
    0018bebamov rax, [rax]
    0018bebdmov [rsp+16], rax
    0018bec2call camlSimpleRope.length_290
    0018bec7mov rbx, [rsp]
    0018becbcmp rbx, rax
    0018becejge 0x18bed8
    0018bed0mov rax, [rsp+16]
    0018bed5jmp 0x18bea2
    0018bed7
    0018bed7 90 .
    0018bed8
    0018bed8loc_18bed8:
    0018bed8sub rbx, rax
    0018bedbinc rbx
    0018bedemov rax, [rsp+8]
    0018bee3mov rax, [rax+8]
    0018bee7jmp 0x18bea2
    0018bee9
    0018bee9 0f 1f 00 ...
    0018beec
    0018beecloc_18beec:
    0018beecsar rbx, 1
    0018beefmov rax, [rax]
    0018bef2movzx rax, [rax+rbx]
    0018bef7lea rax, [rax+rax+1]
    0018befcadd rsp, 24
    0018bf00ret
    0018bf01
    0018bf01loc_18bf01:
    0018bf01call caml_call_gc
    0018bf06jmp 0x18bea7
    0018bf08
    0018bf08loc_18bf08:
    0018bf08push 36
    0018bf0acall caml_call_realloc_stack
    0018bf0fpop r10
    0018bf11jmp 0x18be9e
    0018be90
    0018bf13
    0018bf13 // align 0x10
    0018bf20
    0018bf20camlSimpleRope.get_542:
    0018bf20lea r10, [rsp-336]
    0018bf28cmp r10, [r14+40]
    0018bf2cjb 0x18bf75
    0018bf2e
    0018bf2eloc_18bf2e:
    0018bf2esub rsp, 16
    0018bf32cmp rbx, 1
    0018bf36jl 0x18bf50
    0018bf38mov [rsp+8], rbx
    0018bf3dmov [rsp], rax
    0018bf41call camlSimpleRope.length_290
    0018bf46mov rbx, [rsp+8]
    0018bf4bcmp rbx, rax
    0018bf4ejl 0x18bf68
    0018bf50
    0018bf50loc_18bf50:
    0018bf50lea rax, [rip+0x198279]
    0018bf57mov rax, [rax+8]
    0018bf5bmov rsp, [r14+48]
    0018bf5fpop [r14+48]
    0018bf63pop r11
    0018bf65jmp r11
    0018bf68
    0018bf68loc_18bf68:
    0018bf68mov rax, [rsp]
    0018bf6cadd rsp, 16
    0018bf70jmp 0x18be90
    0018bf75
    0018bf75loc_18bf75:
    0018bf75push 35
    0018bf77call caml_call_realloc_stack
    0018bf7cpop r10
    0018bf7ejmp 0x18bf2e
    0018bf20
    0018bf80
    0018bf80camlSimpleRope.iter_string_546:
    0018bf80lea r10, [rsp-352]
    0018bf88cmp r10, [r14+40]
    0018bf8cjb 0x18c01e
    0018bf92
    0018bf92loc_18bf92:
    0018bf92sub rsp, 32
    0018bf96mov edi, 1
    0018bf9bmov rsi, [rbx-8]
    0018bf9fshr rsi, 10
    0018bfa3lea rsi, [8*rsi-1]
    0018bfabmovzx rdx, [rbx+rsi]
    0018bfb0sub rsi, rdx
    0018bfb3lea rsi, [rsi+rsi-1]
    0018bfb8cmp rdi, rsi
    0018bfbbjg 0x18c00d
    0018bfbdmov [rsp+24], rsi
    0018bfc2mov [rsp+16], rdi
    0018bfc7mov [rsp], rbx
    0018bfcbmov [rsp+8], rax
    0018bfd0
    0018bfd0loc_18bfd0:
    0018bfd0sar rdi, 1
    0018bfd3mov rax, [rsp]
    0018bfd7movzx rax, [rax+rdi]
    0018bfdclea rax, [rax+rax+1]
    0018bfe1mov rbx, [rsp+8]
    0018bfe6mov rdi, [rbx]
    0018bfe9call rdi
    0018bfebmov rdi, [rsp+16]
    0018bff0mov rax, rdi
    0018bff3add rdi, 2
    0018bff7mov [rsp+16], rdi
    0018bffcmov rbx, [rsp+24]
    0018c001cmp rax, rbx
    0018c004je 0x18c00d
    0018c006cmp r15, [r14]
    0018c009ja 0x18bfd0
    0018c00bjmp 0x18c017
    0018c00d
    0018c00dloc_18c00d:
    0018c00dmov eax, 1
    0018c012add rsp, 32
    0018c016ret
    0018c017
    0018c017loc_18c017:
    0018c017call caml_call_gc
    0018c01cjmp 0x18bfd0
    0018c01e
    0018c01eloc_18c01e:
    0018c01epush 37
    0018c020call caml_call_realloc_stack
    0018c025pop r10
    0018c027jmp 0x18bf92
    0018bf80
    0018c02c
    0018c02c // align 0x10
    0018c030
    0018c030camlSimpleRope.iter_rec_551:
    0018c030lea r10, [rsp-336]
    0018c038cmp r10, [r14+40]
    0018c03cjb 0x18c087
    0018c03e
    0018c03eloc_18c03e:
    0018c03esub rsp, 16
    0018c042
    0018c042loc_18c042:
    0018c042cmp r15, [r14]
    0018c045jbe 0x18c080
    0018c047
    0018c047loc_18c047:
    0018c047movzx rdi, [rbx-8]
    0018c04ctest rdi, rdi
    0018c04fje 0x18c074
    0018c051mov [rsp], rbx
    0018c055mov [rsp+8], rax
    0018c05amov rbx, [rbx]
    0018c05dcall camlSimpleRope.iter_rec_551
    0018c062mov rax, [rsp]
    0018c066mov rbx, [rax+8]
    0018c06amov rax, [rsp+8]
    0018c06fjmp 0x18c042
    0018c071
    0018c071 0f 1f 00 ...
    0018c074
    0018c074loc_18c074:
    0018c074mov rbx, [rbx]
    0018c077add rsp, 16
    0018c07bjmp 0x18bf80
    0018c080
    0018c080loc_18c080:
    0018c080call caml_call_gc
    0018c085jmp 0x18c047
    0018c087
    0018c087loc_18c087:
    0018c087push 35
    0018c089call caml_call_realloc_stack
    0018c08epop r10
    0018c090jmp 0x18c03e
    0018c030
    0018c092
    0018c092 // align 0x10
    0018c0a0
    0018c0a0camlSimpleRope.iter_557:
    0018c0a0jmp 0x18c030
    0018c0a0
    0018c0a5
    0018c0a5 // align 0x10
    0018c0b0
    0018c0b0camlSimpleRope.output_561:
    0018c0b0lea r10, [rsp-336]
    0018c0b8cmp r10, [r14+40]
    0018c0bcjb 0x18c107
    0018c0be
    0018c0beloc_18c0be:
    0018c0besub rsp, 16
    0018c0c2
    0018c0c2loc_18c0c2:
    0018c0c2cmp r15, [r14]
    0018c0c5jbe 0x18c100
    0018c0c7
    0018c0c7loc_18c0c7:
    0018c0c7movzx rdi, [rbx-8]
    0018c0cctest rdi, rdi
    0018c0cfje 0x18c0f4
    0018c0d1mov [rsp], rbx
    0018c0d5mov [rsp+8], rax
    0018c0damov rbx, [rbx]
    0018c0ddcall camlSimpleRope.output_561
    0018c0e2mov rax, [rsp]
    0018c0e6mov rbx, [rax+8]
    0018c0eamov rax, [rsp+8]
    0018c0efjmp 0x18c0c2
    0018c0f1
    0018c0f1 0f 1f 00 ...
    0018c0f4
    0018c0f4loc_18c0f4:
    0018c0f4mov rbx, [rbx]
    0018c0f7add rsp, 16
    0018c0fbjmp 0x1963d0
    0018c100
    0018c100loc_18c100:
    0018c100call caml_call_gc
    0018c105jmp 0x18c0c7
    0018c107
    0018c107loc_18c107:
    0018c107push 35
    0018c109call caml_call_realloc_stack
    0018c10epop r10
    0018c110jmp 0x18c0be
    0018c0b0
    0018c112
    0018c112 // align 0x10
    0018c120
    0018c120camlSimpleRope.debug_rec_567:
    0018c120lea r10, [rsp-360]
    0018c128cmp r10, [r14+40]
    0018c12cjb 0x18c249
    0018c132
    0018c132loc_18c132:
    0018c132sub rsp, 40
    0018c136cmp r15, [r14]
    0018c139jbe 0x18c23f
    0018c13f
    0018c13floc_18c13f:
    0018c13fmovzx rsi, [rdi-8]
    0018c144test rsi, rsi
    0018c147je 0x18c1f4
    0018c14dmov [rsp+8], rdi
    0018c152mov [rsp+32], rbx
    0018c157mov [rsp+24], rax
    0018c15clea rbx, [rip+0x1982b5]
    0018c163call camlStdlib.$5e_139
    0018c168mov [rsp+16], rax
    0018c16dmov rax, [rsp+24]
    0018c172mov [rsp], rax
    0018c176lea rbx, [rip+0x198233]
    0018c17dmov rax, [rsp+32]
    0018c182call Stdlib.Printf.fprintf
    0018c187mov rbx, rax
    0018c18amov rdi, [rbx]
    0018c18dmov rax, [rsp]
    0018c191call rdi
    0018c193mov rax, [rsp+8]
    0018c198mov rdi, [rax]
    0018c19bmov rax, [rsp+16]
    0018c1a0mov rbx, [rsp+32]
    0018c1a5call camlSimpleRope.debug_rec_567
    0018c1aamov rax, [rsp+8]
    0018c1afmov rdi, [rax+8]
    0018c1b3mov rax, [rsp+16]
    0018c1b8mov rbx, [rsp+32]
    0018c1bdcall camlSimpleRope.debug_rec_567
    0018c1c2mov rax, [rsp+24]
    0018c1c7mov [rsp], rax
    0018c1cblea rbx, [rip+0x198166]
    0018c1d2mov rax, [rsp+32]
    0018c1d7call Stdlib.Printf.fprintf
    0018c1dcmov rbx, rax
    0018c1dfmov rdi, [rbx]
    0018c1e2mov rax, [rsp]
    0018c1e6call rdi
    0018c1e8mov eax, 1
    0018c1edadd rsp, 40
    0018c1f1ret
    0018c1f2
    0018c1f2 66 90 f.
    0018c1f4
    0018c1f4loc_18c1f4:
    0018c1f4mov rdi, [rdi]
    0018c1f7mov [rsp+16], rdi
    0018c1fclea rdi, [rip+0x1a1415]
    0018c203mov rdi, [rdi+520]
    0018c20amov [rsp+8], rdi
    0018c20fmov [rsp], rax
    0018c213lea rdi, [rip+0x19820e]
    0018c21amov rax, rbx
    0018c21dmov rbx, rdi
    0018c220call Stdlib.Printf.fprintf
    0018c225mov rsi, rax
    0018c228mov rax, [rsp]
    0018c22cmov rbx, [rsp+8]
    0018c231mov rdi, [rsp+16]
    0018c236add rsp, 40
    0018c23ajmp 0xf7370
    0018c23f
    0018c23floc_18c23f:
    0018c23fcall caml_call_gc
    0018c244jmp 0x18c13f
    0018c249
    0018c249loc_18c249:
    0018c249push 38
    0018c24bcall caml_call_realloc_stack
    0018c250pop r10
    0018c252jmp 0x18c132
    0018c120
    0018c257
    0018c257 // align 0x10
    0018c260
    0018c260camlSimpleRope.fun_792:
    0018c260mov rsi, rax
    0018c263mov rdx, rbx
    0018c266mov rax, [rdi+24]
    0018c26amov rbx, rsi
    0018c26dmov rdi, rdx
    0018c270jmp 0x18c120
    0018c260
    0018c275
    0018c275 // align 0x10
    0018c280
    0018c280camlSimpleRope.blit_599:
    0018c280lea r10, [rsp-352]
    0018c288cmp r10, [r14+40]
    0018c28cjb 0x18c32f
    0018c292
    0018c292loc_18c292:
    0018c292sub rsp, 32
    0018c296
    0018c296loc_18c296:
    0018c296mov rcx, rbx
    0018c299mov rsi, rdi
    0018c29ccmp r15, [r14]
    0018c29fjbe 0x18c325
    0018c2a5
    0018c2a5loc_18c2a5:
    0018c2a5movzx rbx, [rax-8]
    0018c2aatest rbx, rbx
    0018c2adje 0x18c2f4
    0018c2afmov [rsp+8], rsi
    0018c2b4mov [rsp+24], rcx
    0018c2b9mov [rsp+16], rax
    0018c2bemov rax, [rax]
    0018c2c1mov [rsp], rax
    0018c2c5mov rbx, rcx
    0018c2c8mov rdi, rsi
    0018c2cbcall camlSimpleRope.blit_599
    0018c2d0mov rax, [rsp]
    0018c2d4call camlSimpleRope.length_290
    0018c2d9mov rdi, [rsp+8]
    0018c2deadd rdi, rax
    0018c2e1dec rdi
    0018c2e4mov rax, [rsp+16]
    0018c2e9mov rax, [rax+8]
    0018c2edmov rbx, [rsp+24]
    0018c2f2jmp 0x18c296
    0018c2f4
    0018c2f4loc_18c2f4:
    0018c2f4mov rax, [rax]
    0018c2f7mov rbx, [rax-8]
    0018c2fbshr rbx, 10
    0018c2fflea rbx, [8*rbx-1]
    0018c307movzx rdi, [rax+rbx]
    0018c30csub rbx, rdi
    0018c30flea rdx, [rbx+rbx+1]
    0018c314mov ebx, 1
    0018c319mov rdi, rcx
    0018c31cadd rsp, 32
    0018c320jmp 0x1a66f0
    0018c325
    0018c325loc_18c325:
    0018c325call caml_call_gc
    0018c32ajmp 0x18c2a5
    0018c32f
    0018c32floc_18c32f:
    0018c32fpush 37
    0018c331call caml_call_realloc_stack
    0018c336pop r10
    0018c338jmp 0x18c292
    0018c280
    0018c33d
    0018c33d // align 0x10
    0018c340
    0018c340camlSimpleRope.to_string_606:
    0018c340lea r10, [rsp-336]
    0018c348cmp r10, [r14+40]
    0018c34cjb 0x18c398
    0018c34e
    0018c34eloc_18c34e:
    0018c34esub rsp, 16
    0018c352movzx rbx, [rax-8]
    0018c357test rbx, rbx
    0018c35aje 0x18c390
    0018c35cmov [rsp], rax
    0018c360mov rdi, [rax+16]
    0018c364lea rax, [rip+0x94cc5]
    0018c36bcall caml_c_call
    0018c370mov rbx, rax
    0018c373mov [rsp+8], rbx
    0018c378mov edi, 1
    0018c37dmov rax, [rsp]
    0018c381call camlSimpleRope.blit_599
    0018c386mov rax, [rsp+8]
    0018c38badd rsp, 16
    0018c38fret
    0018c390
    0018c390loc_18c390:
    0018c390mov rax, [rax]
    0018c393add rsp, 16
    0018c397ret
    0018c398
    0018c398loc_18c398:
    0018c398push 35
    0018c39acall caml_call_realloc_stack
    0018c39fpop r10
    0018c3a1jmp 0x18c34e
    0018c340
    0018c3a3
    0018c3a3 // align 0x10
    0018c3b0
    0018c3b0camlSimpleRope.do_to_list_612:
    0018c3b0lea r10, [rsp-328]
    0018c3b8cmp r10, [r14+40]
    0018c3bcjb 0x18c44b
    0018c3c2
    0018c3c2loc_18c3c2:
    0018c3c2sub rsp, 8
    0018c3c6
    0018c3c6loc_18c3c6:
    0018c3c6cmp r15, [r14]
    0018c3c9jbe 0x18c444
    0018c3cb
    0018c3cbloc_18c3cb:
    0018c3cbmovzx rdi, [rbx-8]
    0018c3d0test rdi, rdi
    0018c3d3je 0x18c3ec
    0018c3d5mov [rsp], rbx
    0018c3d9mov rbx, [rbx+8]
    0018c3ddcall camlSimpleRope.do_to_list_612
    0018c3e2mov rbx, [rsp]
    0018c3e6mov rbx, [rbx]
    0018c3e9jmp 0x18c3c6
    0018c3eb
    0018c3eb 90 .
    0018c3ec
    0018c3ecloc_18c3ec:
    0018c3ecmov rbx, [rbx]
    0018c3efmov rdi, [rbx-8]
    0018c3f3shr rdi, 10
    0018c3f7lea rdi, [8*rdi-1]
    0018c3ffmovzx rsi, [rbx+rdi]
    0018c404sub rdi, rsi
    0018c407lea rdi, [rdi+rdi+1]
    0018c40ccmp rdi, 1
    0018c410jle 0x18c438
    0018c412sub r15, 24
    0018c416cmp r15, [r14]
    0018c419jb 0x18c43d
    0018c41b
    0018c41bloc_18c41b:
    0018c41blea rdi, [r15+8]
    0018c41fmov [rdi-8], 2048
    0018c427mov [rdi], rbx
    0018c42amov [rdi+8], rax
    0018c42emov rax, rdi
    0018c431add rsp, 8
    0018c435ret
    0018c436
    0018c436 66 90 f.
    0018c438
    0018c438loc_18c438:
    0018c438add rsp, 8
    0018c43cret
    0018c43d
    0018c43dloc_18c43d:
    0018c43dcall caml_call_gc
    0018c442jmp 0x18c41b
    0018c444
    0018c444loc_18c444:
    0018c444call caml_call_gc
    0018c449jmp 0x18c3cb
    0018c44b
    0018c44bloc_18c44b:
    0018c44bpush 34
    0018c44dcall caml_call_realloc_stack
    0018c452pop r10
    0018c454jmp 0x18c3c2
    0018c3b0
    0018c459
    0018c459 // align 0x10
    0018c460
    0018c460camlSimpleRope.to_list_619:
    0018c460mov rbx, rax
    0018c463mov eax, 1
    0018c468jmp 0x18c3b0
    0018c460
    0018c46d
    0018c46d // align 0x10
    0018c470
    0018c470camlSimpleRope.to_list_append_622:
    0018c470mov rdi, rax
    0018c473mov rax, rbx
    0018c476mov rbx, rdi
    0018c479jmp 0x18c3b0
    0018c470
    0018c47e
    0018c47e // align 0x10
    0018c480
    0018c480camlSimpleRope.index_from_626:
    0018c480lea r10, [rsp-368]
    0018c488cmp r10, [r14+40]
    0018c48cjb 0x18c57e
    0018c492
    0018c492loc_18c492:
    0018c492sub rsp, 32
    0018c496
    0018c496loc_18c496:
    0018c496cmp r15, [r14]
    0018c499jbe 0x18c574
    0018c49f
    0018c49floc_18c49f:
    0018c49fmovzx rsi, [rax-8]
    0018c4a4test rsi, rsi
    0018c4a7je 0x18c568
    0018c4admov [rsp+24], rdi
    0018c4b2mov [rsp], rbx
    0018c4b6mov rbx, [rax+8]
    0018c4bamov [rsp+8], rbx
    0018c4bfmov rax, [rax]
    0018c4c2mov [rsp+16], rax
    0018c4c7call camlSimpleRope.length_290
    0018c4ccmov rbx, [rsp]
    0018c4d0cmp rbx, rax
    0018c4d3jge 0x18c550
    0018c4d5mov [rsp], rax
    0018c4d9lea r11, [rip+36]
    0018c4e0push r11
    0018c4e2push [r14+48]
    0018c4e6mov [r14+48], rsp
    0018c4eamov rax, [rsp+32]
    0018c4efmov rdi, [rsp+40]
    0018c4f4call camlSimpleRope.index_from_626
    0018c4f9pop [r14+48]
    0018c4fdadd rsp, 8
    0018c501jmp 0x18c548
    0018c503nop
    0018c504lea rbx, [rip+0x1a110d]
    0018c50bmov rbx, [rbx+56]
    0018c50fcmp rax, rbx
    0018c512jne 0x18c538
    0018c514mov ebx, 1
    0018c519mov rax, [rsp+8]
    0018c51emov rdi, [rsp+24]
    0018c523call camlSimpleRope.index_from_626
    0018c528mov rbx, [rsp]
    0018c52cadd rax, rbx
    0018c52fdec rax
    0018c532add rsp, 32
    0018c536ret
    0018c537nop
    0018c538
    0018c538loc_18c538:
    0018c538mov rsp, [r14+48]
    0018c53cpop [r14+48]
    0018c540pop r11
    0018c542jmp r11
    0018c545nop [rax]
    0018c548
    0018c548loc_18c548:
    0018c548add rsp, 32
    0018c54cret
    0018c54dnop [rax]
    0018c550
    0018c550loc_18c550:
    0018c550sub rbx, rax
    0018c553inc rbx
    0018c556mov rax, [rsp+8]
    0018c55bmov rdi, [rsp+24]
    0018c560jmp 0x18c496
    0018c565nop [rax]
    0018c568
    0018c568loc_18c568:
    0018c568mov rax, [rax]
    0018c56badd rsp, 32
    0018c56fjmp 0x1ab960
    0018c574
    0018c574loc_18c574:
    0018c574call caml_call_gc
    0018c579jmp 0x18c49f
    0018c57e
    0018c57eloc_18c57e:
    0018c57epush 39
    0018c580call caml_call_realloc_stack
    0018c585pop r10
    0018c587jmp 0x18c492
    0018c480
    0018c58c
    0018c58c // align 0x10
    0018c590
    0018c590camlSimpleRope.index_634:
    0018c590lea r10, [rsp-368]
    0018c598cmp r10, [r14+40]
    0018c59cjb 0x18c651
    0018c5a2
    0018c5a2loc_18c5a2:
    0018c5a2sub rsp, 32
    0018c5a6mov [rsp+16], rax
    0018c5abmov rsi, rbx
    0018c5aemov [rsp], rsi
    0018c5b2mov [rsp+8], rdi
    0018c5b7lea r11, [rip+34]
    0018c5bepush r11
    0018c5c0push [r14+48]
    0018c5c4mov [r14+48], rsp
    0018c5c8mov ebx, 1
    0018c5cdmov rdi, rsi
    0018c5d0call camlSimpleRope.index_from_626
    0018c5d5pop [r14+48]
    0018c5d9add rsp, 8
    0018c5ddjmp 0x18c64c
    0018c5dfnop
    0018c5e0mov [rsp+24], rax
    0018c5e5mov rax, [rsp]
    0018c5e9mov [rsp], rax
    0018c5edlea rbx, [rip+0x197c7c]
    0018c5f4lea rax, [rip+0x1a101d]
    0018c5fbmov rax, [rax+312]
    0018c602call Stdlib.Printf.fprintf
    0018c607mov rbx, rax
    0018c60amov rdi, [rbx]
    0018c60dmov rax, [rsp]
    0018c611call rdi
    0018c613lea rax, [rip+0x1a0ffe]
    0018c61amov rbx, [rax+312]
    0018c621mov rax, [rsp+8]
    0018c626mov rax, [rax+24]
    0018c62amov rax, [rax+24]
    0018c62emov rdi, [rsp+16]
    0018c633call camlSimpleRope.debug_rec_567
    0018c638mov rax, [rsp+24]
    0018c63dmov rsp, [r14+48]
    0018c641pop [r14+48]
    0018c645pop r11
    0018c647jmp r11
    0018c64anop
    0018c64c
    0018c64cloc_18c64c:
    0018c64cadd rsp, 32
    0018c650ret
    0018c651
    0018c651loc_18c651:
    0018c651push 39
    0018c653call caml_call_realloc_stack
    0018c658pop r10
    0018c65ajmp 0x18c5a2
    0018c590
    0018c65f
    0018c65f // align 0x10
    0018c660
    0018c660camlSimpleRope.rindex_from_639:
    0018c660lea r10, [rsp-368]
    0018c668cmp r10, [r14+40]
    0018c66cjb 0x18c75a
    0018c672
    0018c672loc_18c672:
    0018c672sub rsp, 32
    0018c676
    0018c676loc_18c676:
    0018c676cmp r15, [r14]
    0018c679jbe 0x18c750
    0018c67f
    0018c67floc_18c67f:
    0018c67fmovzx rsi, [rax-8]
    0018c684test rsi, rsi
    0018c687je 0x18c744
    0018c68dmov [rsp+24], rdi
    0018c692mov [rsp], rbx
    0018c696mov [rsp+8], rax
    0018c69bmov rax, [rax]
    0018c69emov [rsp+16], rax
    0018c6a3call camlSimpleRope.length_290
    0018c6a8mov rbx, [rsp]
    0018c6accmp rbx, rax
    0018c6afjge 0x18c6c0
    0018c6b1mov rax, [rsp+16]
    0018c6b6mov rdi, [rsp+24]
    0018c6bbjmp 0x18c676
    0018c6bdnop [rax]
    0018c6c0
    0018c6c0loc_18c6c0:
    0018c6c0mov [rsp], rax
    0018c6c4lea r11, [rip+57]
    0018c6cbpush r11
    0018c6cdpush [r14+48]
    0018c6d1mov [r14+48], rsp
    0018c6d5sub rbx, rax
    0018c6d8inc rbx
    0018c6dbmov rax, [rsp+24]
    0018c6e0mov rax, [rax+8]
    0018c6e4mov rdi, [rsp+40]
    0018c6e9call camlSimpleRope.rindex_from_639
    0018c6eemov rbx, [rsp+16]
    0018c6f3add rax, rbx
    0018c6f6dec rax
    0018c6f9pop [r14+48]
    0018c6fdadd rsp, 8
    0018c701jmp 0x18c73c
    0018c703nop
    0018c704lea rbx, [rip+0x1a0f0d]
    0018c70bmov rbx, [rbx+56]
    0018c70fcmp rax, rbx
    0018c712jne 0x18c72c
    0018c714mov rbx, [rsp]
    0018c718add rbx, -2
    0018c71cmov rax, [rsp+16]
    0018c721mov rdi, [rsp+24]
    0018c726jmp 0x18c676
    0018c72bnop
    0018c72c
    0018c72cloc_18c72c:
    0018c72cmov rsp, [r14+48]
    0018c730pop [r14+48]
    0018c734pop r11
    0018c736jmp r11
    0018c739nop [rax]
    0018c73c
    0018c73cloc_18c73c:
    0018c73cadd rsp, 32
    0018c740ret
    0018c741nop [rax]
    0018c744
    0018c744loc_18c744:
    0018c744mov rax, [rax]
    0018c747add rsp, 32
    0018c74bjmp 0x1aba80
    0018c750
    0018c750loc_18c750:
    0018c750call caml_call_gc
    0018c755jmp 0x18c67f
    0018c75a
    0018c75aloc_18c75a:
    0018c75apush 39
    0018c75ccall caml_call_realloc_stack
    0018c761pop r10
    0018c763jmp 0x18c672
    0018c660
    0018c768
    0018c768 // align 0x10
    0018c770
    0018c770camlSimpleRope.rindex_647:
    0018c770lea r10, [rsp-336]
    0018c778cmp r10, [r14+40]
    0018c77cjb 0x18c7a9
    0018c77e
    0018c77eloc_18c77e:
    0018c77esub rsp, 16
    0018c782mov [rsp], rax
    0018c786mov [rsp+8], rbx
    0018c78bcall camlSimpleRope.length_290
    0018c790mov rbx, rax
    0018c793add rbx, -2
    0018c797mov rax, [rsp]
    0018c79bmov rdi, [rsp+8]
    0018c7a0add rsp, 16
    0018c7a4jmp 0x18c660
    0018c7a9
    0018c7a9loc_18c7a9:
    0018c7a9push 35
    0018c7abcall caml_call_realloc_stack
    0018c7b0pop r10
    0018c7b2jmp 0x18c77e
    0018c770
    0018c7b4
    0018c7b4 // align 0x10
    0018c7c0
    0018c7c0camlSimpleRope.erase_651:
    0018c7c0sub r15, 48
    0018c7c4cmp r15, [r14]
    0018c7c7jb 0x18c80c
    0018c7c9
    0018c7c9loc_18c7c9:
    0018c7c9lea rsi, [r15+8]
    0018c7cdmov [rsi-8], 5367
    0018c7d5lea rdx, [rip+68]
    0018c7dcmov [rsi], rdx
    0018c7dfmov rdx, 0x100000000000005
    0018c7e9mov [rsi+8], rdx
    0018c7edlea rdx, [rip+0x197b0c]
    0018c7f4mov [rsi+16], rdx
    0018c7f8mov rdi, [rdi+32]
    0018c7fcmov [rsi+24], rdi
    0018c800mov [rsi+32], rbx
    0018c804mov rbx, rsi
    0018c807jmp 0x18c820
    0018c80c
    0018c80cloc_18c80c:
    0018c80ccall caml_call_gc
    0018c811jmp 0x18c7c9
    0018c7c0
    0018c813
    0018c813 // align 0x10
    0018c820
    0018c820camlSimpleRope.do_rec_655:
    0018c820lea r10, [rsp-344]
    0018c828cmp r10, [r14+40]
    0018c82cjb 0x18c97e
    0018c832
    0018c832loc_18c832:
    0018c832sub rsp, 24
    0018c836
    0018c836loc_18c836:
    0018c836cmp r15, [r14]
    0018c839jbe 0x18c974
    0018c83f
    0018c83floc_18c83f:
    0018c83fmovzx rdi, [rax-8]
    0018c844test rdi, rdi
    0018c847je 0x18c8ac
    0018c849mov [rsp+16], rbx
    0018c84emov rdi, [rax]
    0018c851mov [rsp+8], rdi
    0018c856mov rax, [rax+8]
    0018c85acall camlSimpleRope.do_rec_655
    0018c85fmov [rsp], rax
    0018c863lea rsi, [rip+0x197a96]
    0018c86amov rdi, rax
    0018c86dlea rax, [rip+0x7406c]
    0018c874call caml_c_call
    0018c879cmp rax, 1
    0018c87dje 0x18c88c
    0018c87fmov rax, [rsp+8]
    0018c884mov rbx, [rsp+16]
    0018c889jmp 0x18c836
    0018c88b
    0018c88b 90 .
    0018c88c
    0018c88cloc_18c88c:
    0018c88cmov rax, [rsp+16]
    0018c891mov rax, [rax+24]
    0018c895mov rdi, [rax+24]
    0018c899mov rax, [rsp+8]
    0018c89emov rbx, [rsp]
    0018c8a2add rsp, 24
    0018c8a6jmp 0x18b3c0
    0018c8ab
    0018c8ab 90 .
    0018c8ac
    0018c8acloc_18c8ac:
    0018c8acmov [rsp+16], rax
    0018c8b1mov rdi, [rax]
    0018c8b4mov [rsp+8], rdi
    0018c8b9mov rax, [rdi-8]
    0018c8bdshr rax, 10
    0018c8c1lea rax, [8*rax-1]
    0018c8c9movzx rsi, [rdi+rax]
    0018c8cesub rax, rsi
    0018c8d1lea rax, [rax+rax+1]
    0018c8d6mov [rsp], rax
    0018c8dasub r15, 40
    0018c8decmp r15, [r14]
    0018c8e1jb 0x18c96a
    0018c8e7
    0018c8e7loc_18c8e7:
    0018c8e7lea rsi, [r15+8]
    0018c8ebmov [rsi-8], 4343
    0018c8f3lea rdx, [rip+150]
    0018c8famov [rsi], rdx
    0018c8fdmov rdx, 0x100000000000005
    0018c907mov [rsi+8], rdx
    0018c90bmov rbx, [rbx+32]
    0018c90fmov [rsi+16], rbx
    0018c913mov [rsi+24], rdi
    0018c917mov rbx, rsi
    0018c91acall camlSimpleRope.find_no_661
    0018c91fmov rdi, [rsp]
    0018c923cmp rax, rdi
    0018c926jne 0x18c934
    0018c928mov rax, [rsp+16]
    0018c92dadd rsp, 24
    0018c931ret
    0018c932
    0018c932 66 90 f.
    0018c934
    0018c934loc_18c934:
    0018c934mov ebx, 1
    0018c939mov rax, [rsp+8]
    0018c93ecall Stdlib.Bytes.sub
    0018c943sub r15, 16
    0018c947cmp r15, [r14]
    0018c94ajb 0x18c963
    0018c94c
    0018c94cloc_18c94c:
    0018c94clea rbx, [r15+8]
    0018c950mov [rbx-8], 1024
    0018c958mov [rbx], rax
    0018c95bmov rax, rbx
    0018c95eadd rsp, 24
    0018c962ret
    0018c963
    0018c963loc_18c963:
    0018c963call caml_call_gc
    0018c968jmp 0x18c94c
    0018c96a
    0018c96aloc_18c96a:
    0018c96acall caml_call_gc
    0018c96fjmp 0x18c8e7
    0018c974
    0018c974loc_18c974:
    0018c974call caml_call_gc
    0018c979jmp 0x18c83f
    0018c97e
    0018c97eloc_18c97e:
    0018c97epush 36
    0018c980call caml_call_realloc_stack
    0018c985pop r10
    0018c987jmp 0x18c832
    0018c820
    0018c98c
    0018c98c // align 0x10
    0018c990
    0018c990camlSimpleRope.find_no_661:
    0018c990lea r10, [rsp-336]
    0018c998cmp r10, [r14+40]
    0018c99cjb 0x18ca00
    0018c99e
    0018c99eloc_18c99e:
    0018c99esub rsp, 16
    0018c9a2
    0018c9a2loc_18c9a2:
    0018c9a2cmp r15, [r14]
    0018c9a5jbe 0x18c9f9
    0018c9a7
    0018c9a7loc_18c9a7:
    0018c9a7cmp rax, 1
    0018c9abjg 0x18c9b4
    0018c9adadd rsp, 16
    0018c9b1ret
    0018c9b2
    0018c9b2 66 90 f.
    0018c9b4
    0018c9b4loc_18c9b4:
    0018c9b4mov [rsp+8], rbx
    0018c9b9mov [rsp], rax
    0018c9bdadd rax, -2
    0018c9c1sar rax, 1
    0018c9c4mov rdi, [rbx+24]
    0018c9c8movzx rax, [rdi+rax]
    0018c9cdlea rax, [rax+rax+1]
    0018c9d2mov rbx, [rbx+16]
    0018c9d6mov rdi, [rbx]
    0018c9d9call rdi
    0018c9dbcmp rax, 1
    0018c9dfje 0x18c9f0
    0018c9e1mov rax, [rsp]
    0018c9e5add rax, -2
    0018c9e9mov rbx, [rsp+8]
    0018c9eejmp 0x18c9a2
    0018c9f0
    0018c9f0loc_18c9f0:
    0018c9f0mov rax, [rsp]
    0018c9f4add rsp, 16
    0018c9f8ret
    0018c9f9
    0018c9f9loc_18c9f9:
    0018c9f9call caml_call_gc
    0018c9fejmp 0x18c9a7
    0018ca00
    0018ca00loc_18ca00:
    0018ca00push 35
    0018ca02call caml_call_realloc_stack
    0018ca07pop r10
    0018ca09jmp 0x18c99e
    0018c990
    0018ca0b
    0018ca0b // align 0x10
    0018ca10
    0018ca10camlSimpleRope.entry:
    0018ca10mov edi, 1
    0018ca15mov rbx, rsp
    0018ca18mov rsp, [r14+64]
    0018ca1ccall caml_fresh_oo_id
    0018ca21mov rsp, rbx
    0018ca24call caml_alloc2
    0018ca29lea rsi, [r15+8]
    0018ca2dmov [rsi-8], 2296
    0018ca35lea rbx, [rip+0x197a04]
    0018ca3cmov [rsi], rbx
    0018ca3fmov [rsi+8], rax
    0018ca43lea rdi, [rip+0x197786]
    0018ca4aadd rdi, 8
    0018ca4emov rbx, rsp
    0018ca51mov rsp, [r14+64]
    0018ca55call caml_initialize
    0018ca5amov rsp, rbx
    0018ca5dlea rsi, [rip+0x19773c]
    0018ca64lea rdi, [rip+0x197765]
    0018ca6bmov rbx, rsp
    0018ca6emov rsp, [r14+64]
    0018ca72call caml_initialize
    0018ca77mov rsp, rbx
    0018ca7amov eax, 1
    0018ca7fret
    0018ca10
    0018ca80
    0018ca80camlCount.fun_552:
    0018ca80lea r10, [rsp-320]
    0018ca88cmp r10, [r14+40]
    0018ca8cjb 0x18cad0
    0018ca8e
    0018ca8eloc_18ca8e:
    0018ca8ecall camlCount.Make_518
    0018ca93sub r15, 32
    0018ca97cmp r15, [r14]
    0018ca9ajb 0x18cac9
    0018ca9c
    0018ca9cloc_18ca9c:
    0018ca9clea rbx, [r15+8]
    0018caa0mov [rbx-8], 3072
    0018caa8mov [rbx], 1
    0018caafmov rdi, [rax+344]
    0018cab6mov [rbx+8], rdi
    0018cabamov rax, [rax+184]
    0018cac1mov [rbx+16], rax
    0018cac5mov rax, rbx
    0018cac8ret
    0018cac9
    0018cac9loc_18cac9:
    0018cac9call caml_call_gc
    0018cacejmp 0x18ca9c
    0018cad0
    0018cad0loc_18cad0:
    0018cad0push 33
    0018cad2call caml_call_realloc_stack
    0018cad7pop r10
    0018cad9jmp 0x18ca8e
    0018ca80
    0018cadb
    0018cadb // align 0x10
    0018cae0
    0018cae0camlCount.Make_518:
    0018cae0lea r10, [rsp-320]
    0018cae8cmp r10, [r14+40]
    0018caecjb 0x18cd62
    0018caf2
    0018caf2loc_18caf2:
    0018caf2call Stdlib.Map.fun
    0018caf7mov rbx, rax
    0018cafamov rdx, [rbx+8]
    0018cafemov rsi, [rbx+128]
    0018cb05sub r15, 408
    0018cb0ccmp r15, [r14]
    0018cb0fjb 0x18cd58
    0018cb15
    0018cb15loc_18cb15:
    0018cb15lea rdi, [r15+8]
    0018cb19add rdi, 360
    0018cb20mov [rdi-8], 5367
    0018cb28lea rax, [rip-0x95b0f]
    0018cb2fmov [rdi], rax
    0018cb32mov rax, 0x200000000000007
    0018cb3cmov [rdi+8], rax
    0018cb40lea rax, [rip+553]
    0018cb47mov [rdi+16], rax
    0018cb4bmov [rdi+24], rdx
    0018cb4fmov [rdi+32], rsi
    0018cb53lea rax, [rdi-360]
    0018cb5amov [rax-8], 45056
    0018cb62mov [rax], 1
    0018cb69mov [rax+8], rdx
    0018cb6dmov rdx, [rbx+16]
    0018cb71mov [rax+16], rdx
    0018cb75mov rdx, [rbx+24]
    0018cb79mov [rax+24], rdx
    0018cb7dmov rdx, [rbx+32]
    0018cb81mov [rax+32], rdx
    0018cb85mov rdx, [rbx+40]
    0018cb89mov [rax+40], rdx
    0018cb8dmov rdx, [rbx+48]
    0018cb91mov [rax+48], rdx
    0018cb95mov rdx, [rbx+56]
    0018cb99mov [rax+56], rdx
    0018cb9dmov rdx, [rbx+64]
    0018cba1mov [rax+64], rdx
    0018cba5mov rdx, [rbx+72]
    0018cba9mov [rax+72], rdx
    0018cbadmov rdx, [rbx+80]
    0018cbb1mov [rax+80], rdx
    0018cbb5mov rdx, [rbx+88]
    0018cbb9mov [rax+88], rdx
    0018cbbdmov rdx, [rbx+96]
    0018cbc1mov [rax+96], rdx
    0018cbc5mov rdx, [rbx+104]
    0018cbc9mov [rax+104], rdx
    0018cbcdmov rdx, [rbx+112]
    0018cbd1mov [rax+112], rdx
    0018cbd5mov rdx, [rbx+120]
    0018cbd9mov [rax+120], rdx
    0018cbddmov [rax+128], rsi
    0018cbe4mov rsi, [rbx+136]
    0018cbebmov [rax+136], rsi
    0018cbf2mov rsi, [rbx+144]
    0018cbf9mov [rax+144], rsi
    0018cc00mov rsi, [rbx+152]
    0018cc07mov [rax+152], rsi
    0018cc0emov rsi, [rbx+160]
    0018cc15mov [rax+160], rsi
    0018cc1cmov rsi, [rbx+168]
    0018cc23mov [rax+168], rsi
    0018cc2amov rsi, [rbx+176]
    0018cc31mov [rax+176], rsi
    0018cc38mov rsi, [rbx+184]
    0018cc3fmov [rax+184], rsi
    0018cc46mov rsi, [rbx+192]
    0018cc4dmov [rax+192], rsi
    0018cc54mov rsi, [rbx+200]
    0018cc5bmov [rax+200], rsi
    0018cc62mov rsi, [rbx+208]
    0018cc69mov [rax+208], rsi
    0018cc70mov rsi, [rbx+216]
    0018cc77mov [rax+216], rsi
    0018cc7emov rsi, [rbx+224]
    0018cc85mov [rax+224], rsi
    0018cc8cmov rsi, [rbx+232]
    0018cc93mov [rax+232], rsi
    0018cc9amov rsi, [rbx+240]
    0018cca1mov [rax+240], rsi
    0018cca8mov rsi, [rbx+248]
    0018ccafmov [rax+248], rsi
    0018ccb6mov rsi, [rbx+256]
    0018ccbdmov [rax+256], rsi
    0018ccc4mov rsi, [rbx+264]
    0018cccbmov [rax+264], rsi
    0018ccd2mov rsi, [rbx+272]
    0018ccd9mov [rax+272], rsi
    0018cce0mov rsi, [rbx+280]
    0018cce7mov [rax+280], rsi
    0018cceemov rsi, [rbx+288]
    0018ccf5mov [rax+288], rsi
    0018ccfcmov rsi, [rbx+296]
    0018cd03mov [rax+296], rsi
    0018cd0amov rsi, [rbx+304]
    0018cd11mov [rax+304], rsi
    0018cd18mov rsi, [rbx+312]
    0018cd1fmov [rax+312], rsi
    0018cd26mov rsi, [rbx+320]
    0018cd2dmov [rax+320], rsi
    0018cd34mov rsi, [rbx+328]
    0018cd3bmov [rax+328], rsi
    0018cd42mov rbx, [rbx+336]
    0018cd49mov [rax+336], rbx
    0018cd50mov [rax+344], rdi
    0018cd57ret
    0018cd58
    0018cd58loc_18cd58:
    0018cd58call caml_call_gc
    0018cd5djmp 0x18cb15
    0018cd62
    0018cd62loc_18cd62:
    0018cd62push 33
    0018cd64call caml_call_realloc_stack
    0018cd69pop r10
    0018cd6bjmp 0x18caf2
    0018cae0