File hevea_f46f610a6b0078f4aa208dda361f21de574cc56ad64b32889301afc466d33979.elf
Function:
    001aeab0
    001aeab0Stdlib.Array.loop:
    001aeab0lea r10, [rsp-336]
    001aeab8cmp r10, [r14+40]
    001aeabcjb 0x1aebb1
    001aeac2
    001aeac2loc_1aeac2:
    001aeac2sub rsp, 16
    001aeac6
    001aeac6loc_1aeac6:
    001aeac6mov rdi, rbx
    001aeac9cmp r15, [r14]
    001aeaccjbe 0x1aeba7
    001aead2
    001aead2loc_1aead2:
    001aead2mov rbx, [rdi+40]
    001aead6cmp rax, rbx
    001aead9jne 0x1aeae8
    001aeadbmov eax, 1
    001aeae0add rsp, 16
    001aeae4ret
    001aeae5
    001aeae5 0f 1f 00 ...
    001aeae8
    001aeae8loc_1aeae8:
    001aeae8mov [rsp+8], rdi
    001aeaedmov [rsp], rax
    001aeaf1mov rsi, [rdi+32]
    001aeaf5movzx rbx, [rsi-8]
    001aeafacmp rbx, 254
    001aeb01je 0x1aeb0c
    001aeb03mov rbx, [rsi+4*rax-4]
    001aeb08jmp 0x1aeb2f
    001aeb0a
    001aeb0a 66 90 f.
    001aeb0c
    001aeb0cloc_1aeb0c:
    001aeb0csub r15, 16
    001aeb10cmp r15, [r14]
    001aeb13jb 0x1aeb9d
    001aeb19
    001aeb19loc_1aeb19:
    001aeb19lea rbx, [r15+8]
    001aeb1dmov [rbx-8], 1277
    001aeb25movsd_xmm x0, [rsi+4*rax-4]
    001aeb2bmovsd_xmm [rbx], x0
    001aeb2f
    001aeb2floc_1aeb2f:
    001aeb2fmov rsi, [rdi+24]
    001aeb33movzx rdx, [rsi-8]
    001aeb38cmp rdx, 254
    001aeb3fje 0x1aeb48
    001aeb41mov rax, [rsi+4*rax-4]
    001aeb46jmp 0x1aeb6a
    001aeb48
    001aeb48loc_1aeb48:
    001aeb48sub r15, 16
    001aeb4ccmp r15, [r14]
    001aeb4fjb 0x1aeb96
    001aeb51
    001aeb51loc_1aeb51:
    001aeb51lea rdx, [r15+8]
    001aeb55mov [rdx-8], 1277
    001aeb5dmovsd_xmm x0, [rsi+4*rax-4]
    001aeb63movsd_xmm [rdx], x0
    001aeb67mov rax, rdx
    001aeb6a
    001aeb6aloc_1aeb6a:
    001aeb6amov rdi, [rdi+16]
    001aeb6ecall caml_apply2
    001aeb73cmp rax, 1
    001aeb77je 0x1aeb84
    001aeb79mov eax, 3
    001aeb7eadd rsp, 16
    001aeb82ret
    001aeb83
    001aeb83 90 .
    001aeb84
    001aeb84loc_1aeb84:
    001aeb84mov rax, [rsp]
    001aeb88add rax, 2
    001aeb8cmov rbx, [rsp+8]
    001aeb91jmp 0x1aeac6
    001aeb96
    001aeb96loc_1aeb96:
    001aeb96call caml_call_gc
    001aeb9bjmp 0x1aeb51
    001aeb9d
    001aeb9dloc_1aeb9d:
    001aeb9dcall caml_call_gc
    001aeba2jmp 0x1aeb19
    001aeba7
    001aeba7loc_1aeba7:
    001aeba7call caml_call_gc
    001aebacjmp 0x1aead2
    001aebb1
    001aebb1loc_1aebb1:
    001aebb1push 35
    001aebb3call caml_call_realloc_stack
    001aebb8pop r10
    001aebbajmp 0x1aeac2
    001aeab0
    001aebbf
    001aebbf // align 0x10
    001aebc0
    001aebc0Stdlib.Array.mem:
    001aebc0mov rdi, [rbx-8]
    001aebc4shr rdi, 9
    001aebc8or rdi, 1
    001aebccsub r15, 48
    001aebd0cmp r15, [r14]
    001aebd3jb 0x1aec12
    001aebd5
    001aebd5loc_1aebd5:
    001aebd5lea rsi, [r15+8]
    001aebd9mov [rsi-8], 5367
    001aebe1lea rdx, [rip+56]
    001aebe8mov [rsi], rdx
    001aebebmov rdx, 0x100000000000005
    001aebf5mov [rsi+8], rdx
    001aebf9mov [rsi+16], rax
    001aebfdmov [rsi+24], rbx
    001aec01mov [rsi+32], rdi
    001aec05mov eax, 1
    001aec0amov rbx, rsi
    001aec0djmp 0x1aec20
    001aec12
    001aec12loc_1aec12:
    001aec12call caml_call_gc
    001aec17jmp 0x1aebd5
    001aebc0
    001aec19
    001aec19 // align 0x10
    001aec20
    001aec20Stdlib.Array.loop:
    001aec20sub rsp, 16
    001aec24
    001aec24loc_1aec24:
    001aec24cmp r15, [r14]
    001aec27jbe 0x1aecbd
    001aec2d
    001aec2dloc_1aec2d:
    001aec2dmov rdi, [rbx+32]
    001aec31cmp rax, rdi
    001aec34jne 0x1aec40
    001aec36mov eax, 1
    001aec3badd rsp, 16
    001aec3fret
    001aec40
    001aec40loc_1aec40:
    001aec40mov [rsp+8], rbx
    001aec45mov [rsp], rax
    001aec49mov rsi, [rbx+24]
    001aec4dmovzx rdi, [rsi-8]
    001aec52cmp rdi, 254
    001aec59je 0x1aec64
    001aec5bmov rdi, [rsi+4*rax-4]
    001aec60jmp 0x1aec83
    001aec62
    001aec62 66 90 f.
    001aec64
    001aec64loc_1aec64:
    001aec64sub r15, 16
    001aec68cmp r15, [r14]
    001aec6bjb 0x1aecb6
    001aec6d
    001aec6dloc_1aec6d:
    001aec6dlea rdi, [r15+8]
    001aec71mov [rdi-8], 1277
    001aec79movsd_xmm x0, [rsi+4*rax-4]
    001aec7fmovsd_xmm [rdi], x0
    001aec83
    001aec83loc_1aec83:
    001aec83mov rsi, [rbx+16]
    001aec87lea rax, [rip+0x51c22]
    001aec8ecall caml_c_call
    001aec93cmp rax, 1
    001aec97jne 0x1aeca4
    001aec99mov eax, 3
    001aec9eadd rsp, 16
    001aeca2ret
    001aeca3
    001aeca3 90 .
    001aeca4
    001aeca4loc_1aeca4:
    001aeca4mov rax, [rsp]
    001aeca8add rax, 2
    001aecacmov rbx, [rsp+8]
    001aecb1jmp 0x1aec24
    001aecb6
    001aecb6loc_1aecb6:
    001aecb6call caml_call_gc
    001aecbbjmp 0x1aec6d
    001aecbd
    001aecbdloc_1aecbd:
    001aecbdcall caml_call_gc
    001aecc2jmp 0x1aec2d
    001aec20
    001aecc7
    001aecc7 // align 0x10
    001aecd0
    001aecd0Stdlib.Array.memq:
    001aecd0mov rdi, [rbx-8]
    001aecd4shr rdi, 9
    001aecd8or rdi, 1
    001aecdcsub r15, 48
    001aece0cmp r15, [r14]
    001aece3jb 0x1aed22
    001aece5
    001aece5loc_1aece5:
    001aece5lea rsi, [r15+8]
    001aece9mov [rsi-8], 5367
    001aecf1lea rdx, [rip+56]
    001aecf8mov [rsi], rdx
    001aecfbmov rdx, 0x100000000000005
    001aed05mov [rsi+8], rdx
    001aed09mov [rsi+16], rax
    001aed0dmov [rsi+24], rbx
    001aed11mov [rsi+32], rdi
    001aed15mov eax, 1
    001aed1amov rbx, rsi
    001aed1djmp 0x1aed30
    001aed22
    001aed22loc_1aed22:
    001aed22call caml_call_gc
    001aed27jmp 0x1aece5
    001aecd0
    001aed29
    001aed29 // align 0x10
    001aed30
    001aed30Stdlib.Array.loop:
    001aed30cmp r15, [r14]
    001aed33jbe 0x1aed9d
    001aed35
    001aed35loc_1aed35:
    001aed35mov rdi, [rbx+32]
    001aed39cmp rax, rdi
    001aed3cjne 0x1aed44
    001aed3emov eax, 1
    001aed43ret
    001aed44
    001aed44loc_1aed44:
    001aed44mov rdi, [rbx+24]
    001aed48movzx rsi, [rdi-8]
    001aed4dcmp rsi, 254
    001aed54je 0x1aed60
    001aed56mov rsi, [rdi+4*rax-4]
    001aed5bjmp 0x1aed7f
    001aed5d
    001aed5d 0f 1f 00 ...
    001aed60
    001aed60loc_1aed60:
    001aed60sub r15, 16
    001aed64cmp r15, [r14]
    001aed67jb 0x1aed96
    001aed69
    001aed69loc_1aed69:
    001aed69lea rsi, [r15+8]
    001aed6dmov [rsi-8], 1277
    001aed75movsd_xmm x0, [rdi+4*rax-4]
    001aed7bmovsd_xmm [rsi], x0
    001aed7f
    001aed7floc_1aed7f:
    001aed7fmov rdi, [rbx+16]
    001aed83cmp rdi, rsi
    001aed86jne 0x1aed90
    001aed88mov eax, 3
    001aed8dret
    001aed8e
    001aed8e 66 90 f.
    001aed90
    001aed90loc_1aed90:
    001aed90add rax, 2
    001aed94jmp 0x1aed30
    001aed96
    001aed96loc_1aed96:
    001aed96call caml_call_gc
    001aed9bjmp 0x1aed69
    001aed9d
    001aed9dloc_1aed9d:
    001aed9dcall caml_call_gc
    001aeda2jmp 0x1aed35
    001aed30
    001aeda4
    001aeda4 // align 0x10
    001aedb0
    001aedb0Stdlib.Array.find_opt:
    001aedb0mov rdi, [rbx-8]
    001aedb4shr rdi, 9
    001aedb8or rdi, 1
    001aedbcsub r15, 48
    001aedc0cmp r15, [r14]
    001aedc3jb 0x1aee02
    001aedc5
    001aedc5loc_1aedc5:
    001aedc5lea rsi, [r15+8]
    001aedc9mov [rsi-8], 5367
    001aedd1lea rdx, [rip+56]
    001aedd8mov [rsi], rdx
    001aeddbmov rdx, 0x100000000000005
    001aede5mov [rsi+8], rdx
    001aede9mov [rsi+16], rax
    001aededmov [rsi+24], rbx
    001aedf1mov [rsi+32], rdi
    001aedf5mov eax, 1
    001aedfamov rbx, rsi
    001aedfdjmp 0x1aee10
    001aee02
    001aee02loc_1aee02:
    001aee02call caml_call_gc
    001aee07jmp 0x1aedc5
    001aedb0
    001aee09
    001aee09 // align 0x10
    001aee10
    001aee10Stdlib.Array.loop:
    001aee10lea r10, [rsp-344]
    001aee18cmp r10, [r14+40]
    001aee1cjb 0x1aeeee
    001aee22
    001aee22loc_1aee22:
    001aee22sub rsp, 24
    001aee26
    001aee26loc_1aee26:
    001aee26cmp r15, [r14]
    001aee29jbe 0x1aeee4
    001aee2f
    001aee2floc_1aee2f:
    001aee2fmov rdi, [rbx+32]
    001aee33cmp rax, rdi
    001aee36jne 0x1aee44
    001aee38mov eax, 1
    001aee3dadd rsp, 24
    001aee41ret
    001aee42
    001aee42 66 90 f.
    001aee44
    001aee44loc_1aee44:
    001aee44mov [rsp+8], rbx
    001aee49mov [rsp], rax
    001aee4dmov rdi, [rbx+24]
    001aee51movzx rsi, [rdi-8]
    001aee56cmp rsi, 254
    001aee5dje 0x1aee6c
    001aee5fmov rax, [rdi+4*rax-4]
    001aee64mov [rsp+16], rax
    001aee69jmp 0x1aee93
    001aee6b
    001aee6b 90 .
    001aee6c
    001aee6cloc_1aee6c:
    001aee6csub r15, 16
    001aee70cmp r15, [r14]
    001aee73jb 0x1aeedd
    001aee75
    001aee75loc_1aee75:
    001aee75lea rsi, [r15+8]
    001aee79mov [rsi-8], 1277
    001aee81movsd_xmm x0, [rdi+4*rax-4]
    001aee87movsd_xmm [rsi], x0
    001aee8bmov rax, rsi
    001aee8emov [rsp+16], rax
    001aee93
    001aee93loc_1aee93:
    001aee93mov rbx, [rbx+16]
    001aee97mov rdi, [rbx]
    001aee9acall rdi
    001aee9ccmp rax, 1
    001aeea0je 0x1aeec4
    001aeea2sub r15, 16
    001aeea6cmp r15, [r14]
    001aeea9jb 0x1aeed6
    001aeeab
    001aeeabloc_1aeeab:
    001aeeablea rax, [r15+8]
    001aeeafmov [rax-8], 1024
    001aeeb7mov rbx, [rsp+16]
    001aeebcmov [rax], rbx
    001aeebfadd rsp, 24
    001aeec3ret
    001aeec4
    001aeec4loc_1aeec4:
    001aeec4mov rax, [rsp]
    001aeec8add rax, 2
    001aeeccmov rbx, [rsp+8]
    001aeed1jmp 0x1aee26
    001aeed6
    001aeed6loc_1aeed6:
    001aeed6call caml_call_gc
    001aeedbjmp 0x1aeeab
    001aeedd
    001aeeddloc_1aeedd:
    001aeeddcall caml_call_gc
    001aeee2jmp 0x1aee75
    001aeee4
    001aeee4loc_1aeee4:
    001aeee4call caml_call_gc
    001aeee9jmp 0x1aee2f
    001aeeee
    001aeeeeloc_1aeeee:
    001aeeeepush 36
    001aeef0call caml_call_realloc_stack
    001aeef5pop r10
    001aeef7jmp 0x1aee22
    001aee10
    001aeefc
    001aeefc // align 0x10
    001aef00
    001aef00Stdlib.Array.find_index:
    001aef00mov rdi, [rbx-8]
    001aef04shr rdi, 9
    001aef08or rdi, 1
    001aef0csub r15, 48
    001aef10cmp r15, [r14]
    001aef13jb 0x1aef52
    001aef15
    001aef15loc_1aef15:
    001aef15lea rsi, [r15+8]
    001aef19mov [rsi-8], 5367
    001aef21lea rdx, [rip+56]
    001aef28mov [rsi], rdx
    001aef2bmov rdx, 0x100000000000005
    001aef35mov [rsi+8], rdx
    001aef39mov [rsi+16], rax
    001aef3dmov [rsi+24], rbx
    001aef41mov [rsi+32], rdi
    001aef45mov eax, 1
    001aef4amov rbx, rsi
    001aef4djmp 0x1aef60
    001aef52
    001aef52loc_1aef52:
    001aef52call caml_call_gc
    001aef57jmp 0x1aef15
    001aef00
    001aef59
    001aef59 // align 0x10
    001aef60
    001aef60Stdlib.Array.loop:
    001aef60lea r10, [rsp-336]
    001aef68cmp r10, [r14+40]
    001aef6cjb 0x1af03a
    001aef72
    001aef72loc_1aef72:
    001aef72sub rsp, 16
    001aef76
    001aef76loc_1aef76:
    001aef76cmp r15, [r14]
    001aef79jbe 0x1af030
    001aef7f
    001aef7floc_1aef7f:
    001aef7fmov rdi, [rbx+32]
    001aef83cmp rax, rdi
    001aef86jne 0x1aef94
    001aef88mov eax, 1
    001aef8dadd rsp, 16
    001aef91ret
    001aef92
    001aef92 66 90 f.
    001aef94
    001aef94loc_1aef94:
    001aef94mov [rsp], rbx
    001aef98mov [rsp+8], rax
    001aef9dmov rdi, [rbx+16]
    001aefa1mov rbx, [rbx+24]
    001aefa5movzx rsi, [rbx-8]
    001aefaacmp rsi, 254
    001aefb1je 0x1aefbc
    001aefb3mov rax, [rbx+4*rax-4]
    001aefb8jmp 0x1aefde
    001aefba
    001aefba 66 90 f.
    001aefbc
    001aefbcloc_1aefbc:
    001aefbcsub r15, 16
    001aefc0cmp r15, [r14]
    001aefc3jb 0x1af029
    001aefc5
    001aefc5loc_1aefc5:
    001aefc5lea rsi, [r15+8]
    001aefc9mov [rsi-8], 1277
    001aefd1movsd_xmm x0, [rbx+4*rax-4]
    001aefd7movsd_xmm [rsi], x0
    001aefdbmov rax, rsi
    001aefde
    001aefdeloc_1aefde:
    001aefdemov rsi, [rdi]
    001aefe1mov rbx, rdi
    001aefe4call rsi
    001aefe6cmp rax, 1
    001aefeaje 0x1af010
    001aefecsub r15, 16
    001aeff0cmp r15, [r14]
    001aeff3jb 0x1af022
    001aeff5
    001aeff5loc_1aeff5:
    001aeff5lea rax, [r15+8]
    001aeff9mov [rax-8], 1024
    001af001mov rbx, [rsp+8]
    001af006mov [rax], rbx
    001af009add rsp, 16
    001af00dret
    001af00e
    001af00e 66 90 f.
    001af010
    001af010loc_1af010:
    001af010mov rax, [rsp+8]
    001af015add rax, 2
    001af019mov rbx, [rsp]
    001af01djmp 0x1aef76
    001af022
    001af022loc_1af022:
    001af022call caml_call_gc
    001af027jmp 0x1aeff5
    001af029
    001af029loc_1af029:
    001af029call caml_call_gc
    001af02ejmp 0x1aefc5
    001af030
    001af030loc_1af030:
    001af030call caml_call_gc
    001af035jmp 0x1aef7f
    001af03a
    001af03aloc_1af03a:
    001af03apush 35
    001af03ccall caml_call_realloc_stack
    001af041pop r10
    001af043jmp 0x1aef72
    001aef60
    001af048
    001af048 // align 0x10
    001af050
    001af050Stdlib.Array.find_map:
    001af050mov rdi, [rbx-8]
    001af054shr rdi, 9
    001af058or rdi, 1
    001af05csub r15, 48
    001af060cmp r15, [r14]
    001af063jb 0x1af0a2
    001af065
    001af065loc_1af065:
    001af065lea rsi, [r15+8]
    001af069mov [rsi-8], 5367
    001af071lea rdx, [rip+56]
    001af078mov [rsi], rdx
    001af07bmov rdx, 0x100000000000005
    001af085mov [rsi+8], rdx
    001af089mov [rsi+16], rax
    001af08dmov [rsi+24], rbx
    001af091mov [rsi+32], rdi
    001af095mov eax, 1
    001af09amov rbx, rsi
    001af09djmp 0x1af0b0
    001af0a2
    001af0a2loc_1af0a2:
    001af0a2call caml_call_gc
    001af0a7jmp 0x1af065
    001af050
    001af0a9
    001af0a9 // align 0x10
    001af0b0
    001af0b0Stdlib.Array.loop:
    001af0b0lea r10, [rsp-336]
    001af0b8cmp r10, [r14+40]
    001af0bcjb 0x1af162
    001af0c2
    001af0c2loc_1af0c2:
    001af0c2sub rsp, 16
    001af0c6
    001af0c6loc_1af0c6:
    001af0c6cmp r15, [r14]
    001af0c9jbe 0x1af158
    001af0cf
    001af0cfloc_1af0cf:
    001af0cfmov rdi, [rbx+32]
    001af0d3cmp rax, rdi
    001af0d6jne 0x1af0e4
    001af0d8mov eax, 1
    001af0ddadd rsp, 16
    001af0e1ret
    001af0e2
    001af0e2 66 90 f.
    001af0e4
    001af0e4loc_1af0e4:
    001af0e4mov [rsp+8], rbx
    001af0e9mov [rsp], rax
    001af0edmov rdi, [rbx+16]
    001af0f1mov rbx, [rbx+24]
    001af0f5movzx rsi, [rbx-8]
    001af0facmp rsi, 254
    001af101je 0x1af10c
    001af103mov rax, [rbx+4*rax-4]
    001af108jmp 0x1af12e
    001af10a
    001af10a 66 90 f.
    001af10c
    001af10cloc_1af10c:
    001af10csub r15, 16
    001af110cmp r15, [r14]
    001af113jb 0x1af151
    001af115
    001af115loc_1af115:
    001af115lea rsi, [r15+8]
    001af119mov [rsi-8], 1277
    001af121movsd_xmm x0, [rbx+4*rax-4]
    001af127movsd_xmm [rsi], x0
    001af12bmov rax, rsi
    001af12e
    001af12eloc_1af12e:
    001af12emov rsi, [rdi]
    001af131mov rbx, rdi
    001af134call rsi
    001af136test al, 1
    001af138je 0x1af14c
    001af13amov rax, [rsp]
    001af13eadd rax, 2
    001af142mov rbx, [rsp+8]
    001af147jmp 0x1af0c6
    001af14c
    001af14cloc_1af14c:
    001af14cadd rsp, 16
    001af150ret
    001af151
    001af151loc_1af151:
    001af151call caml_call_gc
    001af156jmp 0x1af115
    001af158
    001af158loc_1af158:
    001af158call caml_call_gc
    001af15djmp 0x1af0cf
    001af162
    001af162loc_1af162:
    001af162push 35
    001af164call caml_call_realloc_stack
    001af169pop r10
    001af16bjmp 0x1af0c2
    001af0b0
    001af170
    001af170Stdlib.Array.find_mapi:
    001af170mov rdi, [rbx-8]
    001af174shr rdi, 9
    001af178or rdi, 1
    001af17csub r15, 48
    001af180cmp r15, [r14]
    001af183jb 0x1af1c2
    001af185
    001af185loc_1af185:
    001af185lea rsi, [r15+8]
    001af189mov [rsi-8], 5367
    001af191lea rdx, [rip+56]
    001af198mov [rsi], rdx
    001af19bmov rdx, 0x100000000000005
    001af1a5mov [rsi+8], rdx
    001af1a9mov [rsi+16], rax
    001af1admov [rsi+24], rbx
    001af1b1mov [rsi+32], rdi
    001af1b5mov eax, 1
    001af1bamov rbx, rsi
    001af1bdjmp 0x1af1d0
    001af1c2
    001af1c2loc_1af1c2:
    001af1c2call caml_call_gc
    001af1c7jmp 0x1af185
    001af170
    001af1c9
    001af1c9 // align 0x10
    001af1d0
    001af1d0Stdlib.Array.loop:
    001af1d0lea r10, [rsp-336]
    001af1d8cmp r10, [r14+40]
    001af1dcjb 0x1af282
    001af1e2
    001af1e2loc_1af1e2:
    001af1e2sub rsp, 16
    001af1e6
    001af1e6loc_1af1e6:
    001af1e6mov rdi, rbx
    001af1e9cmp r15, [r14]
    001af1ecjbe 0x1af278
    001af1f2
    001af1f2loc_1af1f2:
    001af1f2mov rbx, [rdi+32]
    001af1f6cmp rax, rbx
    001af1f9jne 0x1af208
    001af1fbmov eax, 1
    001af200add rsp, 16
    001af204ret
    001af205
    001af205 0f 1f 00 ...
    001af208
    001af208loc_1af208:
    001af208mov [rsp+8], rdi
    001af20dmov [rsp], rax
    001af211mov rsi, [rdi+24]
    001af215movzx rbx, [rsi-8]
    001af21acmp rbx, 254
    001af221je 0x1af22c
    001af223mov rbx, [rsi+4*rax-4]
    001af228jmp 0x1af24b
    001af22a
    001af22a 66 90 f.
    001af22c
    001af22cloc_1af22c:
    001af22csub r15, 16
    001af230cmp r15, [r14]
    001af233jb 0x1af271
    001af235
    001af235loc_1af235:
    001af235lea rbx, [r15+8]
    001af239mov [rbx-8], 1277
    001af241movsd_xmm x0, [rsi+4*rax-4]
    001af247movsd_xmm [rbx], x0
    001af24b
    001af24bloc_1af24b:
    001af24bmov rdi, [rdi+16]
    001af24fcall caml_apply2
    001af254test al, 1
    001af256je 0x1af26c
    001af258mov rax, [rsp]
    001af25cadd rax, 2
    001af260mov rbx, [rsp+8]
    001af265jmp 0x1af1e6
    001af26a
    001af26a 66 90 f.
    001af26c
    001af26cloc_1af26c:
    001af26cadd rsp, 16
    001af270ret
    001af271
    001af271loc_1af271:
    001af271call caml_call_gc
    001af276jmp 0x1af235
    001af278
    001af278loc_1af278:
    001af278call caml_call_gc
    001af27djmp 0x1af1f2
    001af282
    001af282loc_1af282:
    001af282push 35
    001af284call caml_call_realloc_stack
    001af289pop r10
    001af28bjmp 0x1af1e2
    001af1d0
    001af290
    001af290Stdlib.Array.split:
    001af290sub rsp, 32
    001af294mov [rsp+16], rax
    001af299lea rsi, [rip+0x18ea00]
    001af2a0mov rdi, rax
    001af2a3lea rax, [rip+0x51636]
    001af2aacall caml_c_call
    001af2afcmp rax, 1
    001af2b3je 0x1af2c4
    001af2b5lea rax, [rip+0x18e99c]
    001af2bcadd rsp, 32
    001af2c0ret
    001af2c1
    001af2c1 0f 1f 00 ...
    001af2c4
    001af2c4loc_1af2c4:
    001af2c4mov rbx, [rsp+16]
    001af2c9mov rax, [rbx]
    001af2ccmov [rsp], rax
    001af2d0mov rdi, [rbx-8]
    001af2d4shr rdi, 9
    001af2d8or rdi, 1
    001af2dcmov [rsp+8], rdi
    001af2e1mov rsi, [rax]
    001af2e4lea rax, [rip+0x4a9b5]
    001af2ebcall caml_c_call
    001af2f0mov [rsp+24], rax
    001af2f5mov rax, [rsp]
    001af2f9mov rsi, [rax+8]
    001af2fdmov rdi, [rsp+8]
    001af302lea rax, [rip+0x4a997]
    001af309call caml_c_call
    001af30emov r13, rax
    001af311mov r12l, 3
    001af317mov rax, [rsp+8]
    001af31cadd rax, -2
    001af320cmp r12, rax
    001af323jg 0x1af3c7
    001af329mov [rsp+8], rax
    001af32emov [rsp], r13
    001af332
    001af332loc_1af332:
    001af332mov rax, [rsp+16]
    001af337mov r13, [rax+4*r12-4]
    001af33cmov rsi, [r13]
    001af340mov rbx, [rsp+24]
    001af345movzx rax, [rbx-8]
    001af34acmp rax, 254
    001af350je 0x1af368
    001af352lea rdi, [rbx+4*r12-4]
    001af357mov rbx, rsp
    001af35amov rsp, [r14+64]
    001af35ecall caml_modify
    001af363mov rsp, rbx
    001af366jmp 0x1af373
    001af368
    001af368loc_1af368:
    001af368movsd_xmm x0, [rsi]
    001af36cmovsd_xmm [rbx+4*r12-4], x0
    001af373
    001af373loc_1af373:
    001af373mov rsi, [r13+8]
    001af377mov r13, [rsp]
    001af37bmovzx rax, [r13-8]
    001af380cmp rax, 254
    001af386je 0x1af3a0
    001af388lea rdi, [r13+4*r12-4]
    001af38dmov rbx, rsp
    001af390mov rsp, [r14+64]
    001af394call caml_modify
    001af399mov rsp, rbx
    001af39cjmp 0x1af3ab
    001af39e
    001af39e 66 90 f.
    001af3a0
    001af3a0loc_1af3a0:
    001af3a0movsd_xmm x0, [rsi]
    001af3a4movsd_xmm [r13+4*r12-4], x0
    001af3ab
    001af3abloc_1af3ab:
    001af3abmov rax, r12
    001af3aeadd r12, 2
    001af3b2mov rbx, [rsp+8]
    001af3b7cmp rax, rbx
    001af3baje 0x1af3c7
    001af3bccmp r15, [r14]
    001af3bfja 0x1af332
    001af3c5jmp 0x1af3f4
    001af3c7
    001af3c7loc_1af3c7:
    001af3c7sub r15, 24
    001af3cbcmp r15, [r14]
    001af3cejb 0x1af3ed
    001af3d0
    001af3d0loc_1af3d0:
    001af3d0lea rax, [r15+8]
    001af3d4mov [rax-8], 2048
    001af3dcmov rbx, [rsp+24]
    001af3e1mov [rax], rbx
    001af3e4mov [rax+8], r13
    001af3e8add rsp, 32
    001af3ecret
    001af3ed
    001af3edloc_1af3ed:
    001af3edcall caml_call_gc
    001af3f2jmp 0x1af3d0
    001af3f4
    001af3f4loc_1af3f4:
    001af3f4call caml_call_gc
    001af3f9jmp 0x1af332
    001af290
    001af3fe
    001af3fe // align 0x10
    001af400
    001af400Stdlib.Array.combine:
    001af400lea r10, [rsp-344]
    001af408cmp r10, [r14+40]
    001af40cjb 0x1af622
    001af412
    001af412loc_1af412:
    001af412sub rsp, 24
    001af416mov [rsp+16], rax
    001af41bmov [rsp+8], rbx
    001af420mov rax, [rax-8]
    001af424shr rax, 9
    001af428or rax, 1
    001af42cmov [rsp], rax
    001af430mov rbx, [rbx-8]
    001af434shr rbx, 9
    001af438or rbx, 1
    001af43ccmp rax, rbx
    001af43fje 0x1af44d
    001af441lea rax, [rip+0x18e7f8]
    001af448call camlStdlib.invalid_arg_10
    001af44d
    001af44dloc_1af44d:
    001af44dmov rdi, [rsp]
    001af451cmp rdi, 1
    001af455jne 0x1af464
    001af457lea rax, [rip+0x18e842]
    001af45eadd rsp, 24
    001af462ret
    001af463
    001af463 90 .
    001af464
    001af464loc_1af464:
    001af464mov [rsp], rdi
    001af468mov rbx, [rsp+8]
    001af46dmovzx rax, [rbx-8]
    001af472cmp rax, 254
    001af478je 0x1af480
    001af47amov rax, [rbx]
    001af47djmp 0x1af4a1
    001af47f
    001af47f 90 .
    001af480
    001af480loc_1af480:
    001af480sub r15, 16
    001af484cmp r15, [r14]
    001af487jb 0x1af618
    001af48d
    001af48dloc_1af48d:
    001af48dlea rax, [r15+8]
    001af491mov [rax-8], 1277
    001af499movsd_xmm x0, [rbx]
    001af49dmovsd_xmm [rax], x0
    001af4a1
    001af4a1loc_1af4a1:
    001af4a1mov rsi, [rsp+16]
    001af4a6movzx rbx, [rsi-8]
    001af4abcmp rbx, 254
    001af4b2je 0x1af4bc
    001af4b4mov rbx, [rsi]
    001af4b7jmp 0x1af4dd
    001af4b9
    001af4b9 0f 1f 00 ...
    001af4bc
    001af4bcloc_1af4bc:
    001af4bcsub r15, 16
    001af4c0cmp r15, [r14]
    001af4c3jb 0x1af60e
    001af4c9
    001af4c9loc_1af4c9:
    001af4c9lea rbx, [r15+8]
    001af4cdmov [rbx-8], 1277
    001af4d5movsd_xmm x0, [rsi]
    001af4d9movsd_xmm [rbx], x0
    001af4dd
    001af4ddloc_1af4dd:
    001af4ddsub r15, 24
    001af4e1cmp r15, [r14]
    001af4e4jb 0x1af604
    001af4ea
    001af4ealoc_1af4ea:
    001af4ealea rsi, [r15+8]
    001af4eemov [rsi-8], 2048
    001af4f6mov [rsi], rbx
    001af4f9mov [rsi+8], rax
    001af4fdlea rax, [rip+0x4a79c]
    001af504call caml_c_call
    001af509mov r13, rax
    001af50cmov r12l, 3
    001af512mov rax, [rsp]
    001af516add rax, -2
    001af51acmp r12, rax
    001af51djg 0x1af5e4
    001af523mov [rsp], rax
    001af527
    001af527loc_1af527:
    001af527mov rbx, [rsp+8]
    001af52cmovzx rax, [rbx-8]
    001af531cmp rax, 254
    001af537je 0x1af540
    001af539mov rax, [rbx+4*r12-4]
    001af53ejmp 0x1af564
    001af540
    001af540loc_1af540:
    001af540sub r15, 16
    001af544cmp r15, [r14]
    001af547jb 0x1af5fa
    001af54d
    001af54dloc_1af54d:
    001af54dlea rax, [r15+8]
    001af551mov [rax-8], 1277
    001af559movsd_xmm x0, [rbx+4*r12-4]
    001af560movsd_xmm [rax], x0
    001af564
    001af564loc_1af564:
    001af564mov rdi, [rsp+16]
    001af569movzx rbx, [rdi-8]
    001af56ecmp rbx, 254
    001af575je 0x1af580
    001af577mov rbx, [rdi+4*r12-4]
    001af57cjmp 0x1af5a0
    001af57e
    001af57e 66 90 f.
    001af580
    001af580loc_1af580:
    001af580sub r15, 16
    001af584cmp r15, [r14]
    001af587jb 0x1af5f3
    001af589
    001af589loc_1af589:
    001af589lea rbx, [r15+8]
    001af58dmov [rbx-8], 1277
    001af595movsd_xmm x0, [rdi+4*r12-4]
    001af59cmovsd_xmm [rbx], x0
    001af5a0
    001af5a0loc_1af5a0:
    001af5a0sub r15, 24
    001af5a4cmp r15, [r14]
    001af5a7jb 0x1af5ec
    001af5a9
    001af5a9loc_1af5a9:
    001af5a9lea rsi, [r15+8]
    001af5admov [rsi-8], 2048
    001af5b5mov [rsi], rbx
    001af5b8mov [rsi+8], rax
    001af5bclea rdi, [r13+4*r12-4]
    001af5c1mov rbx, rsp
    001af5c4mov rsp, [r14+64]
    001af5c8call caml_modify
    001af5cdmov rsp, rbx
    001af5d0mov rax, r12
    001af5d3add r12, 2
    001af5d7mov rbx, [rsp]
    001af5dbcmp rax, rbx
    001af5dejne 0x1af527
    001af5e4
    001af5e4loc_1af5e4:
    001af5e4mov rax, r13
    001af5e7add rsp, 24
    001af5ebret
    001af5ec
    001af5ecloc_1af5ec:
    001af5eccall caml_call_gc
    001af5f1jmp 0x1af5a9
    001af5f3
    001af5f3loc_1af5f3:
    001af5f3call caml_call_gc
    001af5f8jmp 0x1af589
    001af5fa
    001af5faloc_1af5fa:
    001af5facall caml_call_gc
    001af5ffjmp 0x1af54d
    001af604
    001af604loc_1af604:
    001af604call caml_call_gc
    001af609jmp 0x1af4ea
    001af60e
    001af60eloc_1af60e:
    001af60ecall caml_call_gc
    001af613jmp 0x1af4c9
    001af618
    001af618loc_1af618:
    001af618call caml_call_gc
    001af61djmp 0x1af48d
    001af622
    001af622loc_1af622:
    001af622push 36
    001af624call caml_call_realloc_stack
    001af629pop r10
    001af62bjmp 0x1af412
    001af400
    001af630
    001af630Stdlib.Array.sort:
    001af630lea r10, [rsp-392]
    001af638cmp r10, [r14+40]
    001af63cjb 0x1afbff
    001af642
    001af642loc_1af642:
    001af642sub rsp, 56
    001af646mov [rsp+40], rbx
    001af64bsub r15, 200
    001af652cmp r15, [r14]
    001af655jb 0x1afbc8
    001af65b
    001af65bloc_1af65b:
    001af65blea rdi, [r15+8]
    001af65fadd rdi, 152
    001af666mov [rdi-8], 5367
    001af66elea rdx, [rip-0xb8655]
    001af675mov [rdi], rdx
    001af678mov rsi, 0x200000000000007
    001af682mov [rdi+8], rsi
    001af686lea rsi, [rip+1411]
    001af68dmov [rdi+16], rsi
    001af691mov [rdi+24], rax
    001af695mov [rdi+32], rbx
    001af699lea rsi, [rdi-56]
    001af69dmov [rsi-8], 6391
    001af6a5lea rcx, [rip-0xb877c]
    001af6acmov [rsi], rcx
    001af6afmov rcx, 0x300000000000007
    001af6b9mov [rsi+8], rcx
    001af6bdlea rcx, [rip+2252]
    001af6c4mov [rsi+16], rcx
    001af6c8mov [rsi+24], rax
    001af6ccmov [rsi+32], rbx
    001af6d0mov [rsi+40], rdi
    001af6d4lea rcx, [rsi-48]
    001af6d8mov [rsp+24], rcx
    001af6ddmov [rcx-8], 5367
    001af6e5mov [rcx], rdx
    001af6e8mov r8, 0x200000000000007
    001af6f2mov [rcx+8], r8
    001af6f6lea r8, [rip+2739]
    001af6fdmov [rcx+16], r8
    001af701mov [rcx+24], rbx
    001af705mov [rcx+32], rdi
    001af709lea rdi, [rcx-48]
    001af70dmov [rsp+8], rdi
    001af712mov [rdi-8], 5367
    001af71amov [rdi], rdx
    001af71dmov rdx, 0x200000000000007
    001af727mov [rdi+8], rdx
    001af72blea rdx, [rip+2958]
    001af732mov [rdi+16], rdx
    001af736mov [rdi+24], rax
    001af73amov [rdi+32], rbx
    001af73emov rax, [rbx-8]
    001af742shr rax, 9
    001af746or rax, 1
    001af74amov [rsp+32], rax
    001af74fadd rax, 2
    001af753sar rax, 1
    001af756mov rbx, rax
    001af759shr rbx, 63
    001af75dmov rdi, 0x5555555555555556
    001af767imul rdi
    001af76aadd rdx, rbx
    001af76dlea rbx, [rdx+rdx-1]
    001af772cmp rbx, 1
    001af776jl 0x1af8ad
    001af77cmov [rsp+16], rbx
    001af781mov [rsp], rsi
    001af785
    001af785loc_1af785:
    001af785mov rsi, [rsp+40]
    001af78amov rax, [rsi-8]
    001af78emov rdi, rax
    001af791shr rdi, 9
    001af795cmp rdi, rbx
    001af798jbe 0x1afbfa
    001af79eand rax, 255
    001af7a4cmp rax, 254
    001af7aaje 0x1af7b8
    001af7acmov rdi, [rsi+4*rbx-4]
    001af7b1mov [rsp+48], rdi
    001af7b6jmp 0x1af7e0
    001af7b8
    001af7b8loc_1af7b8:
    001af7b8sub r15, 16
    001af7bccmp r15, [r14]
    001af7bfjb 0x1afbbe
    001af7c5
    001af7c5loc_1af7c5:
    001af7c5lea rdi, [r15+8]
    001af7c9mov [rdi-8], 1277
    001af7d1movsd_xmm x0, [rsi+4*rbx-4]
    001af7d7movsd_xmm [rdi], x0
    001af7dbmov [rsp+48], rdi
    001af7e0
    001af7e0loc_1af7e0:
    001af7e0lea r11, [rip+37]
    001af7e7push r11
    001af7e9push [r14+48]
    001af7edmov [r14+48], rsp
    001af7f1mov rax, [rsp+48]
    001af7f6mov rsi, [rsp+16]
    001af7fbcall Stdlib.Array.trickledown
    001af800pop [r14+48]
    001af804add rsp, 8
    001af808jmp 0x1af888
    001af80a
    001af80a 66 90 f.
    001af80clea rbx, [rip+0x18e09d]
    001af813mov rbx, [rbx+344]
    001af81amov rdi, [rax]
    001af81dcmp rdi, rbx
    001af820jne 0x1af880
    001af822mov rax, [rax+8]
    001af826mov rsi, [rsp+40]
    001af82bmov rbx, [rsi-8]
    001af82fmov rdi, rbx
    001af832shr rdi, 9
    001af836cmp rdi, rax
    001af839jbe 0x1afbf5
    001af83fand rbx, 255
    001af846cmp rbx, 254
    001af84dje 0x1af86c
    001af84flea rdi, [rsi+4*rax-4]
    001af854mov rsi, [rsp+48]
    001af859mov rbx, rsp
    001af85cmov rsp, [r14+64]
    001af860call caml_modify
    001af865mov rsp, rbx
    001af868jmp 0x1af888
    001af86a
    001af86a 66 90 f.
    001af86c
    001af86cloc_1af86c:
    001af86cmov rbx, [rsp+48]
    001af871movsd_xmm x0, [rbx]
    001af875movsd_xmm [rsi+4*rax-4], x0
    001af87bjmp 0x1af888
    001af87d
    001af87d 0f 1f 00 ...
    001af880
    001af880loc_1af880:
    001af880call caml_reraise_exn
    001af885nop [rax]
    001af888
    001af888loc_1af888:
    001af888mov rbx, [rsp+16]
    001af88dmov rax, rbx
    001af890sub rbx, 2
    001af894mov [rsp+16], rbx
    001af899cmp rax, 1
    001af89dje 0x1af8ad
    001af89fcmp r15, [r14]
    001af8a2ja 0x1af785
    001af8a8jmp 0x1afbb4
    001af8ad
    001af8adloc_1af8ad:
    001af8admov r12, [rsp+32]
    001af8b2add r12, -2
    001af8b6cmp r12, 5
    001af8bajl 0x1afa37
    001af8c0mov [rsp+16], r12
    001af8c5
    001af8c5loc_1af8c5:
    001af8c5mov rax, [rsp+40]
    001af8camov rbx, [rax-8]
    001af8cemov rdi, rbx
    001af8d1shr rdi, 9
    001af8d5cmp rdi, r12
    001af8d8jbe 0x1afbf0
    001af8deand rbx, 255
    001af8e5cmp rbx, 254
    001af8ecje 0x1af8fc
    001af8eemov rbx, [rax+4*r12-4]
    001af8f3mov [rsp], rbx
    001af8f7jmp 0x1af924
    001af8f9
    001af8f9 0f 1f 00 ...
    001af8fc
    001af8fcloc_1af8fc:
    001af8fcsub r15, 16
    001af900cmp r15, [r14]
    001af903jb 0x1afbaa
    001af909
    001af909loc_1af909:
    001af909lea rbx, [r15+8]
    001af90dmov [rbx-8], 1277
    001af915movsd_xmm x0, [rax+4*r12-4]
    001af91cmovsd_xmm [rbx], x0
    001af920mov [rsp], rbx
    001af924
    001af924loc_1af924:
    001af924mov rbx, [rax-8]
    001af928cmp rbx, 1023
    001af92fjbe 0x1afbeb
    001af935and rbx, 255
    001af93ccmp rbx, 254
    001af943je 0x1af94c
    001af945mov rsi, [rax]
    001af948jmp 0x1af96d
    001af94a
    001af94a 66 90 f.
    001af94c
    001af94cloc_1af94c:
    001af94csub r15, 16
    001af950cmp r15, [r14]
    001af953jb 0x1afba0
    001af959
    001af959loc_1af959:
    001af959lea rsi, [r15+8]
    001af95dmov [rsi-8], 1277
    001af965movsd_xmm x0, [rax]
    001af969movsd_xmm [rsi], x0
    001af96d
    001af96dloc_1af96d:
    001af96dmov rbx, [rax-8]
    001af971mov rdi, rbx
    001af974shr rdi, 9
    001af978cmp rdi, r12
    001af97bjbe 0x1afbe6
    001af981and rbx, 255
    001af988cmp rbx, 254
    001af98fje 0x1af9a8
    001af991lea rdi, [rax+4*r12-4]
    001af996mov rbx, rsp
    001af999mov rsp, [r14+64]
    001af99dcall caml_modify
    001af9a2mov rsp, rbx
    001af9a5jmp 0x1af9b3
    001af9a7
    001af9a7 90 .
    001af9a8
    001af9a8loc_1af9a8:
    001af9a8movsd_xmm x0, [rsi]
    001af9acmovsd_xmm [rax+4*r12-4], x0
    001af9b3
    001af9b3loc_1af9b3:
    001af9b3lea r11, [rip+38]
    001af9bapush r11
    001af9bcpush [r14+48]
    001af9c0mov [r14+48], rsp
    001af9c4mov ebx, 1
    001af9c9mov rax, r12
    001af9ccmov rdi, [rsp+40]
    001af9d1call Stdlib.Array.bubbledown
    001af9d6pop [r14+48]
    001af9daadd rsp, 8
    001af9dejmp 0x1afa04
    001af9e0lea rbx, [rip+0x18dec9]
    001af9e7mov rbx, [rbx+344]
    001af9eemov rdi, [rax]
    001af9f1cmp rdi, rbx
    001af9f4jne 0x1af9fc
    001af9f6mov rax, [rax+8]
    001af9fajmp 0x1afa04
    001af9fc
    001af9fcloc_1af9fc:
    001af9fccall caml_reraise_exn
    001afa01nop [rax]
    001afa04
    001afa04loc_1afa04:
    001afa04mov rbx, [rsp]
    001afa08mov rdi, [rsp+8]
    001afa0dcall Stdlib.Array.trickleup
    001afa12mov r12, [rsp+16]
    001afa17mov rax, r12
    001afa1asub r12, 2
    001afa1emov [rsp+16], r12
    001afa23cmp rax, 5
    001afa27je 0x1afa37
    001afa29cmp r15, [r14]
    001afa2cja 0x1af8c5
    001afa32jmp 0x1afb96
    001afa37
    001afa37loc_1afa37:
    001afa37mov rax, [rsp+32]
    001afa3ccmp rax, 3
    001afa40jle 0x1afb78
    001afa46mov r12, [rsp+40]
    001afa4bmov rax, [r12-8]
    001afa50cmp rax, 2047
    001afa56jbe 0x1afbe1
    001afa5cand rax, 255
    001afa62cmp rax, 254
    001afa68je 0x1afa74
    001afa6amov r13, [r12+8]
    001afa6fjmp 0x1afa9a
    001afa71
    001afa71 0f 1f 00 ...
    001afa74
    001afa74loc_1afa74:
    001afa74sub r15, 16
    001afa78cmp r15, [r14]
    001afa7bjb 0x1afb8c
    001afa81
    001afa81loc_1afa81:
    001afa81lea r13, [r15+8]
    001afa85mov [r13-8], 1277
    001afa8dmovsd_xmm x0, [r12+8]
    001afa94movsd_xmm [r13], x0
    001afa9a
    001afa9aloc_1afa9a:
    001afa9amov rax, [r12-8]
    001afa9fcmp rax, 1023
    001afaa5jbe 0x1afbdc
    001afaaband rax, 255
    001afab1cmp rax, 254
    001afab7je 0x1afac0
    001afab9mov rsi, [r12]
    001afabdjmp 0x1afae3
    001afabf
    001afabf 90 .
    001afac0
    001afac0loc_1afac0:
    001afac0sub r15, 16
    001afac4cmp r15, [r14]
    001afac7jb 0x1afb82
    001afacd
    001afacdloc_1afacd:
    001afacdlea rsi, [r15+8]
    001afad1mov [rsi-8], 1277
    001afad9movsd_xmm x0, [r12]
    001afadfmovsd_xmm [rsi], x0
    001afae3
    001afae3loc_1afae3:
    001afae3mov rax, [r12-8]
    001afae8cmp rax, 2047
    001afaeejbe 0x1afbd7
    001afaf4and rax, 255
    001afafacmp rax, 254
    001afb00je 0x1afb1c
    001afb02mov rdi, r12
    001afb05add rdi, 8
    001afb09mov rbx, rsp
    001afb0cmov rsp, [r14+64]
    001afb10call caml_modify
    001afb15mov rsp, rbx
    001afb18jmp 0x1afb27
    001afb1a
    001afb1a 66 90 f.
    001afb1c
    001afb1cloc_1afb1c:
    001afb1cmovsd_xmm x0, [rsi]
    001afb20movsd_xmm [r12+8], x0
    001afb27
    001afb27loc_1afb27:
    001afb27mov rax, [r12-8]
    001afb2ccmp rax, 1023
    001afb32jbe 0x1afbd2
    001afb38and rax, 255
    001afb3ecmp rax, 254
    001afb44je 0x1afb60
    001afb46mov rdi, r12
    001afb49mov rsi, r13
    001afb4cmov rbx, rsp
    001afb4fmov rsp, [r14+64]
    001afb53call caml_modify
    001afb58mov rsp, rbx
    001afb5bjmp 0x1afb6c
    001afb5d
    001afb5d 0f 1f 00 ...
    001afb60
    001afb60loc_1afb60:
    001afb60movsd_xmm x0, [r13]
    001afb66movsd_xmm [r12], x0
    001afb6c
    001afb6cloc_1afb6c:
    001afb6cmov eax, 1
    001afb71add rsp, 56
    001afb75ret
    001afb76
    001afb76 66 90 f.
    001afb78
    001afb78loc_1afb78:
    001afb78mov eax, 1
    001afb7dadd rsp, 56
    001afb81ret
    001afb82
    001afb82loc_1afb82:
    001afb82call caml_call_gc
    001afb87jmp 0x1afacd
    001afb8c
    001afb8cloc_1afb8c:
    001afb8ccall caml_call_gc
    001afb91jmp 0x1afa81
    001afb96
    001afb96loc_1afb96:
    001afb96call caml_call_gc
    001afb9bjmp 0x1af8c5
    001afba0
    001afba0loc_1afba0:
    001afba0call caml_call_gc
    001afba5jmp 0x1af959
    001afbaa
    001afbaaloc_1afbaa:
    001afbaacall caml_call_gc
    001afbafjmp 0x1af909
    001afbb4
    001afbb4loc_1afbb4:
    001afbb4call caml_call_gc
    001afbb9jmp 0x1af785
    001afbbe
    001afbbeloc_1afbbe:
    001afbbecall caml_call_gc
    001afbc3jmp 0x1af7c5
    001afbc8
    001afbc8loc_1afbc8:
    001afbc8call caml_call_gc
    001afbcdjmp 0x1af65b
    001afbd2
    001afbd2loc_1afbd2:
    001afbd2call caml_ml_array_bound_error
    001afbd7
    001afbd7loc_1afbd7:
    001afbd7call caml_ml_array_bound_error
    001afbdc
    001afbdcloc_1afbdc:
    001afbdccall caml_ml_array_bound_error
    001afbe1
    001afbe1loc_1afbe1:
    001afbe1call caml_ml_array_bound_error
    001afbe6
    001afbe6loc_1afbe6:
    001afbe6call caml_ml_array_bound_error
    001afbeb
    001afbebloc_1afbeb:
    001afbebcall caml_ml_array_bound_error
    001afbf0
    001afbf0loc_1afbf0:
    001afbf0call caml_ml_array_bound_error
    001afbf5
    001afbf5loc_1afbf5:
    001afbf5call caml_ml_array_bound_error
    001afbfa
    001afbfaloc_1afbfa:
    001afbfacall caml_ml_array_bound_error
    001afbff
    001afbffloc_1afbff:
    001afbffpush 42
    001afc01call caml_call_realloc_stack
    001afc06pop r10
    001afc08jmp 0x1af642
    001af630
    001afc0d
    001afc0d // align 0x10
    001afc10
    001afc10Stdlib.Array.maxson:
    001afc10lea r10, [rsp-344]
    001afc18cmp r10, [r14+40]
    001afc1cjb 0x1aff79
    001afc22
    001afc22loc_1afc22:
    001afc22sub rsp, 24
    001afc26mov rsi, rbx
    001afc29add rsi, rbx
    001afc2cadd rsi, rbx
    001afc2fmov [rsp+16], rsi
    001afc34mov rdx, rsi
    001afc37add rdx, 4
    001afc3bcmp rdx, rax
    001afc3ejge 0x1afdf4
    001afc44mov [rsp+8], rsi
    001afc49mov [rsp], rdi
    001afc4dmov rax, rsi
    001afc50add rax, 2
    001afc54mov rdx, [rdi+32]
    001afc58mov rbx, [rdx-8]
    001afc5cmov rcx, rbx
    001afc5fshr rcx, 9
    001afc63cmp rcx, rax
    001afc66jbe 0x1aff74
    001afc6cand rbx, 255
    001afc73cmp rbx, 254
    001afc7aje 0x1afc84
    001afc7cmov rbx, [rdx+4*rax-4]
    001afc81jmp 0x1afca7
    001afc83
    001afc83 90 .
    001afc84
    001afc84loc_1afc84:
    001afc84sub r15, 16
    001afc88cmp r15, [r14]
    001afc8bjb 0x1aff51
    001afc91
    001afc91loc_1afc91:
    001afc91lea rbx, [r15+8]
    001afc95mov [rbx-8], 1277
    001afc9dmovsd_xmm x0, [rdx+4*rax-4]
    001afca3movsd_xmm [rbx], x0
    001afca7
    001afca7loc_1afca7:
    001afca7mov rdx, [rdi+32]
    001afcabmov rax, [rdx-8]
    001afcafmov rcx, rax
    001afcb2shr rcx, 9
    001afcb6cmp rcx, rsi
    001afcb9jbe 0x1aff6f
    001afcbfand rax, 255
    001afcc5cmp rax, 254
    001afccbje 0x1afcd4
    001afccdmov rax, [rdx+4*rsi-4]
    001afcd2jmp 0x1afcf7
    001afcd4
    001afcd4loc_1afcd4:
    001afcd4sub r15, 16
    001afcd8cmp r15, [r14]
    001afcdbjb 0x1aff47
    001afce1
    001afce1loc_1afce1:
    001afce1lea rax, [r15+8]
    001afce5mov [rax-8], 1277
    001afcedmovsd_xmm x0, [rdx+4*rsi-4]
    001afcf3movsd_xmm [rax], x0
    001afcf7
    001afcf7loc_1afcf7:
    001afcf7mov rdi, [rdi+24]
    001afcfbcall caml_apply2
    001afd00cmp rax, 1
    001afd04jge 0x1afd14
    001afd06mov rsi, [rsp+16]
    001afd0badd rsi, 2
    001afd0fmov [rsp+8], rsi
    001afd14
    001afd14loc_1afd14:
    001afd14mov rax, [rsp+16]
    001afd19add rax, 4
    001afd1dmov rdi, [rsp]
    001afd21mov rsi, [rdi+32]
    001afd25mov rbx, [rsi-8]
    001afd29mov rdx, rbx
    001afd2cshr rdx, 9
    001afd30cmp rdx, rax
    001afd33jbe 0x1aff6a
    001afd39and rbx, 255
    001afd40cmp rbx, 254
    001afd47je 0x1afd50
    001afd49mov rbx, [rsi+4*rax-4]
    001afd4ejmp 0x1afd73
    001afd50
    001afd50loc_1afd50:
    001afd50sub r15, 16
    001afd54cmp r15, [r14]
    001afd57jb 0x1aff3d
    001afd5d
    001afd5dloc_1afd5d:
    001afd5dlea rbx, [r15+8]
    001afd61mov [rbx-8], 1277
    001afd69movsd_xmm x0, [rsi+4*rax-4]
    001afd6fmovsd_xmm [rbx], x0
    001afd73
    001afd73loc_1afd73:
    001afd73mov rsi, [rdi+32]
    001afd77mov rax, [rsi-8]
    001afd7bmov rdx, rax
    001afd7eshr rdx, 9
    001afd82mov rcx, [rsp+8]
    001afd87cmp rdx, rcx
    001afd8ajbe 0x1aff65
    001afd90and rax, 255
    001afd96cmp rax, 254
    001afd9cje 0x1afda8
    001afd9emov rax, [rsi+4*rcx-4]
    001afda3jmp 0x1afdcb
    001afda5
    001afda5 0f 1f 00 ...
    001afda8
    001afda8loc_1afda8:
    001afda8sub r15, 16
    001afdaccmp r15, [r14]
    001afdafjb 0x1aff33
    001afdb5
    001afdb5loc_1afdb5:
    001afdb5lea rax, [r15+8]
    001afdb9mov [rax-8], 1277
    001afdc1movsd_xmm x0, [rsi+4*rcx-4]
    001afdc7movsd_xmm [rax], x0
    001afdcb
    001afdcbloc_1afdcb:
    001afdcbmov rdi, [rdi+24]
    001afdcfcall caml_apply2
    001afdd4cmp rax, 1
    001afdd8jge 0x1afde8
    001afddamov rcx, [rsp+16]
    001afddfadd rcx, 4
    001afde3mov [rsp+8], rcx
    001afde8
    001afde8loc_1afde8:
    001afde8mov rax, [rsp+8]
    001afdedadd rsp, 24
    001afdf1ret
    001afdf2
    001afdf2 66 90 f.
    001afdf4
    001afdf4loc_1afdf4:
    001afdf4mov [rsp+8], rbx
    001afdf9mov [rsp], rax
    001afdfdmov rbx, rsi
    001afe00add rbx, 2
    001afe04cmp rbx, rax
    001afe07jge 0x1afed0
    001afe0dmov rax, [rdi+32]
    001afe11mov rdx, [rax-8]
    001afe15mov rcx, rdx
    001afe18shr rcx, 9
    001afe1ccmp rcx, rbx
    001afe1fjbe 0x1aff60
    001afe25and rdx, 255
    001afe2ccmp rdx, 254
    001afe33je 0x1afe3c
    001afe35mov rbx, [rax+4*rbx-4]
    001afe3ajmp 0x1afe62
    001afe3c
    001afe3cloc_1afe3c:
    001afe3csub r15, 16
    001afe40cmp r15, [r14]
    001afe43jb 0x1aff29
    001afe49
    001afe49loc_1afe49:
    001afe49lea rdx, [r15+8]
    001afe4dmov [rdx-8], 1277
    001afe55movsd_xmm x0, [rax+4*rbx-4]
    001afe5bmovsd_xmm [rdx], x0
    001afe5fmov rbx, rdx
    001afe62
    001afe62loc_1afe62:
    001afe62mov rdx, [rdi+32]
    001afe66mov rax, [rdx-8]
    001afe6amov rcx, rax
    001afe6dshr rcx, 9
    001afe71cmp rcx, rsi
    001afe74jbe 0x1aff5b
    001afe7aand rax, 255
    001afe80cmp rax, 254
    001afe86je 0x1afe90
    001afe88mov rax, [rdx+4*rsi-4]
    001afe8djmp 0x1afeb3
    001afe8f
    001afe8f 90 .
    001afe90
    001afe90loc_1afe90:
    001afe90sub r15, 16
    001afe94cmp r15, [r14]
    001afe97jb 0x1aff1f
    001afe9d
    001afe9dloc_1afe9d:
    001afe9dlea rax, [r15+8]
    001afea1mov [rax-8], 1277
    001afea9movsd_xmm x0, [rdx+4*rsi-4]
    001afeafmovsd_xmm [rax], x0
    001afeb3
    001afeb3loc_1afeb3:
    001afeb3mov rdi, [rdi+24]
    001afeb7call caml_apply2
    001afebccmp rax, 1
    001afec0jge 0x1afed0
    001afec2mov rax, [rsp+16]
    001afec7add rax, 2
    001afecbadd rsp, 24
    001afecfret
    001afed0
    001afed0loc_1afed0:
    001afed0mov rax, [rsp+16]
    001afed5mov rbx, [rsp]
    001afed9cmp rax, rbx
    001afedcjge 0x1afee4
    001afedeadd rsp, 24
    001afee2ret
    001afee3
    001afee3 90 .
    001afee4
    001afee4loc_1afee4:
    001afee4sub r15, 24
    001afee8cmp r15, [r14]
    001afeebjb 0x1aff18
    001afeed
    001afeedloc_1afeed:
    001afeedlea rax, [r15+8]
    001afef1mov [rax-8], 2048
    001afef9lea rbx, [rip+0x18d9b0]
    001aff00mov rbx, [rbx+344]
    001aff07mov [rax], rbx
    001aff0amov rbx, [rsp+8]
    001aff0fmov [rax+8], rbx
    001aff13call caml_raise_exn
    001aff18
    001aff18loc_1aff18:
    001aff18call caml_call_gc
    001aff1djmp 0x1afeed
    001aff1f
    001aff1floc_1aff1f:
    001aff1fcall caml_call_gc
    001aff24jmp 0x1afe9d
    001aff29
    001aff29loc_1aff29:
    001aff29call caml_call_gc
    001aff2ejmp 0x1afe49
    001aff33
    001aff33loc_1aff33:
    001aff33call caml_call_gc
    001aff38jmp 0x1afdb5
    001aff3d
    001aff3dloc_1aff3d:
    001aff3dcall caml_call_gc
    001aff42jmp 0x1afd5d
    001aff47
    001aff47loc_1aff47:
    001aff47call caml_call_gc
    001aff4cjmp 0x1afce1
    001aff51
    001aff51loc_1aff51:
    001aff51call caml_call_gc
    001aff56jmp 0x1afc91
    001aff5b
    001aff5bloc_1aff5b:
    001aff5bcall caml_ml_array_bound_error
    001aff60
    001aff60loc_1aff60:
    001aff60call caml_ml_array_bound_error
    001aff65
    001aff65loc_1aff65:
    001aff65call caml_ml_array_bound_error
    001aff6a
    001aff6aloc_1aff6a:
    001aff6acall caml_ml_array_bound_error
    001aff6f
    001aff6floc_1aff6f:
    001aff6fcall caml_ml_array_bound_error
    001aff74
    001aff74loc_1aff74:
    001aff74call caml_ml_array_bound_error
    001aff79
    001aff79loc_1aff79:
    001aff79push 36
    001aff7bcall caml_call_realloc_stack
    001aff80pop r10
    001aff82jmp 0x1afc22
    001afc10
    001aff87
    001aff87 // align 0x10
    001aff90
    001aff90Stdlib.Array.trickledown:
    001aff90lea r10, [rsp-360]
    001aff98cmp r10, [r14+40]
    001aff9cjb 0x1b0197
    001affa2
    001affa2loc_1affa2:
    001affa2sub rsp, 40
    001affa6
    001affa6loc_1affa6:
    001affa6mov [rsp+24], rax
    001affabmov [rsp+16], rbx
    001affb0mov [rsp+32], rdi
    001affb5mov [rsp], rsi
    001affb9cmp r15, [r14]
    001affbcjbe 0x1b0179
    001affc2
    001affc2loc_1affc2:
    001affc2mov rdi, [rsi+40]
    001affc6call Stdlib.Array.maxson
    001affcbmov [rsp+8], rax
    001affd0mov rdx, [rsp]
    001affd4mov rbx, [rdx+32]
    001affd8mov rdi, [rbx-8]
    001affdcmov rsi, rdi
    001affdfshr rsi, 9
    001affe3cmp rsi, rax
    001affe6jbe 0x1b0192
    001affecand rdi, 255
    001afff3cmp rdi, 254
    001afffaje 0x1b0004
    001afffcmov rax, [rbx+4*rax-4]
    001b0001jmp 0x1b002a
    001b0003
    001b0003 90 .
    001b0004
    001b0004loc_1b0004:
    001b0004sub r15, 16
    001b0008cmp r15, [r14]
    001b000bjb 0x1b016f
    001b0011
    001b0011loc_1b0011:
    001b0011lea rdi, [r15+8]
    001b0015mov [rdi-8], 1277
    001b001dmovsd_xmm x0, [rbx+4*rax-4]
    001b0023movsd_xmm [rdi], x0
    001b0027mov rax, rdi
    001b002a
    001b002aloc_1b002a:
    001b002amov rdi, [rdx+24]
    001b002emov rbx, [rsp+32]
    001b0033call caml_apply2
    001b0038cmp rax, 1
    001b003cjle 0x1b0104
    001b0042mov r13, [rsp]
    001b0046mov rax, [r13+32]
    001b004amov rbx, [rax-8]
    001b004emov rdi, rbx
    001b0051shr rdi, 9
    001b0055mov r12, [rsp+8]
    001b005acmp rdi, r12
    001b005djbe 0x1b018d
    001b0063and rbx, 255
    001b006acmp rbx, 254
    001b0071je 0x1b007c
    001b0073mov rsi, [rax+4*r12-4]
    001b0078jmp 0x1b00a0
    001b007a
    001b007a 66 90 f.
    001b007c
    001b007cloc_1b007c:
    001b007csub r15, 16
    001b0080cmp r15, [r14]
    001b0083jb 0x1b0165
    001b0089
    001b0089loc_1b0089:
    001b0089lea rsi, [r15+8]
    001b008dmov [rsi-8], 1277
    001b0095movsd_xmm x0, [rax+4*r12-4]
    001b009cmovsd_xmm [rsi], x0
    001b00a0
    001b00a0loc_1b00a0:
    001b00a0mov rax, [r13+32]
    001b00a4mov rbx, [rax-8]
    001b00a8mov rdi, rbx
    001b00abshr rdi, 9
    001b00afmov rdx, [rsp+16]
    001b00b4cmp rdi, rdx
    001b00b7jbe 0x1b0188
    001b00bdand rbx, 255
    001b00c4cmp rbx, 254
    001b00cbje 0x1b00e4
    001b00cdlea rdi, [rax+4*rdx-4]
    001b00d2mov rbx, rsp
    001b00d5mov rsp, [r14+64]
    001b00d9call caml_modify
    001b00demov rsp, rbx
    001b00e1jmp 0x1b00ee
    001b00e3
    001b00e3 90 .
    001b00e4
    001b00e4loc_1b00e4:
    001b00e4movsd_xmm x0, [rsi]
    001b00e8movsd_xmm [rax+4*rdx-4], x0
    001b00ee
    001b00eeloc_1b00ee:
    001b00eemov rax, [rsp+24]
    001b00f3mov rbx, r12
    001b00f6mov rdi, [rsp+32]
    001b00fbmov rsi, r13
    001b00fejmp 0x1affa6
    001b0103
    001b0103 90 .
    001b0104
    001b0104loc_1b0104:
    001b0104mov rax, [rsp]
    001b0108mov rax, [rax+32]
    001b010cmov rbx, [rax-8]
    001b0110mov rdi, rbx
    001b0113shr rdi, 9
    001b0117mov rsi, [rsp+16]
    001b011ccmp rdi, rsi
    001b011fjbe 0x1b0183
    001b0121and rbx, 255
    001b0128cmp rbx, 254
    001b012fje 0x1b014c
    001b0131lea rdi, [rax+4*rsi-4]
    001b0136mov rsi, [rsp+32]
    001b013bmov rbx, rsp
    001b013emov rsp, [r14+64]
    001b0142call caml_modify
    001b0147mov rsp, rbx
    001b014ajmp 0x1b015b
    001b014c
    001b014cloc_1b014c:
    001b014cmov rbx, [rsp+32]
    001b0151movsd_xmm x0, [rbx]
    001b0155movsd_xmm [rax+4*rsi-4], x0
    001b015b
    001b015bloc_1b015b:
    001b015bmov eax, 1
    001b0160add rsp, 40
    001b0164ret
    001b0165
    001b0165loc_1b0165:
    001b0165call caml_call_gc
    001b016ajmp 0x1b0089
    001b016f
    001b016floc_1b016f:
    001b016fcall caml_call_gc
    001b0174jmp 0x1b0011
    001b0179
    001b0179loc_1b0179:
    001b0179call caml_call_gc
    001b017ejmp 0x1affc2
    001b0183
    001b0183loc_1b0183:
    001b0183call caml_ml_array_bound_error
    001b0188
    001b0188loc_1b0188:
    001b0188call caml_ml_array_bound_error
    001b018d
    001b018dloc_1b018d:
    001b018dcall caml_ml_array_bound_error
    001b0192
    001b0192loc_1b0192:
    001b0192call caml_ml_array_bound_error
    001b0197
    001b0197loc_1b0197:
    001b0197push 38
    001b0199call caml_call_realloc_stack
    001b019epop r10
    001b01a0jmp 0x1affa2
    001aff90
    001b01a5
    001b01a5 // align 0x10
    001b01b0
    001b01b0Stdlib.Array.bubbledown:
    001b01b0lea r10, [rsp-344]
    001b01b8cmp r10, [r14+40]
    001b01bcjb 0x1b02b1
    001b01c2
    001b01c2loc_1b01c2:
    001b01c2sub rsp, 24
    001b01c6
    001b01c6loc_1b01c6:
    001b01c6mov [rsp+16], rax
    001b01cbmov [rsp+8], rbx
    001b01d0mov [rsp], rdi
    001b01d4cmp r15, [r14]
    001b01d7jbe 0x1b029d
    001b01dd
    001b01ddloc_1b01dd:
    001b01ddmov rdi, [rdi+32]
    001b01e1call Stdlib.Array.maxson
    001b01e6mov r12, rax
    001b01e9mov r13, [rsp]
    001b01edmov rax, [r13+24]
    001b01f1mov rbx, [rax-8]
    001b01f5mov rdi, rbx
    001b01f8shr rdi, 9
    001b01fccmp rdi, r12
    001b01ffjbe 0x1b02ac
    001b0205and rbx, 255
    001b020ccmp rbx, 254
    001b0213je 0x1b021c
    001b0215mov rsi, [rax+4*r12-4]
    001b021ajmp 0x1b023c
    001b021c
    001b021cloc_1b021c:
    001b021csub r15, 16
    001b0220cmp r15, [r14]
    001b0223jb 0x1b0296
    001b0225
    001b0225loc_1b0225:
    001b0225lea rsi, [r15+8]
    001b0229mov [rsi-8], 1277
    001b0231movsd_xmm x0, [rax+4*r12-4]
    001b0238movsd_xmm [rsi], x0
    001b023c
    001b023cloc_1b023c:
    001b023cmov rax, [r13+24]
    001b0240mov rbx, [rax-8]
    001b0244mov rdi, rbx
    001b0247shr rdi, 9
    001b024bmov rdx, [rsp+8]
    001b0250cmp rdi, rdx
    001b0253jbe 0x1b02a7
    001b0255and rbx, 255
    001b025ccmp rbx, 254
    001b0263je 0x1b027c
    001b0265lea rdi, [rax+4*rdx-4]
    001b026amov rbx, rsp
    001b026dmov rsp, [r14+64]
    001b0271call caml_modify
    001b0276mov rsp, rbx
    001b0279jmp 0x1b0286
    001b027b
    001b027b 90 .
    001b027c
    001b027cloc_1b027c:
    001b027cmovsd_xmm x0, [rsi]
    001b0280movsd_xmm [rax+4*rdx-4], x0
    001b0286
    001b0286loc_1b0286:
    001b0286mov rax, [rsp+16]
    001b028bmov rbx, r12
    001b028emov rdi, r13
    001b0291jmp 0x1b01c6
    001b0296
    001b0296loc_1b0296:
    001b0296call caml_call_gc
    001b029bjmp 0x1b0225
    001b029d
    001b029dloc_1b029d:
    001b029dcall caml_call_gc
    001b02a2jmp 0x1b01dd
    001b02a7
    001b02a7loc_1b02a7:
    001b02a7call caml_ml_array_bound_error
    001b02ac
    001b02acloc_1b02ac:
    001b02accall caml_ml_array_bound_error
    001b02b1
    001b02b1loc_1b02b1:
    001b02b1push 36
    001b02b3call caml_call_realloc_stack
    001b02b8pop r10
    001b02bajmp 0x1b01c2
    001b01b0
    001b02bf
    001b02bf // align 0x10
    001b02c0
    001b02c0Stdlib.Array.trickleup:
    001b02c0lea r10, [rsp-352]
    001b02c8cmp r10, [r14+40]
    001b02ccjb 0x1b0572
    001b02d2
    001b02d2loc_1b02d2:
    001b02d2sub rsp, 32
    001b02d6
    001b02d6loc_1b02d6:
    001b02d6mov rsi, rax
    001b02d9cmp r15, [r14]
    001b02dcjbe 0x1b054f
    001b02e2
    001b02e2loc_1b02e2:
    001b02e2mov rax, rsi
    001b02e5add rax, -2
    001b02e9sar rax, 1
    001b02ecmov rcx, rax
    001b02efshr rcx, 63
    001b02f3mov rdx, 0x5555555555555556
    001b02fdimul rdx
    001b0300add rdx, rcx
    001b0303lea rdx, [rdx+rdx+1]
    001b0308cmp rsi, rdx
    001b030bje 0x1b0324
    001b030dmov [rsp+8], rdx
    001b0312mov [rsp], rdi
    001b0316mov [rsp+24], rbx
    001b031bmov [rsp+16], rsi
    001b0320jmp 0x1b0358
    001b0322
    001b0322 66 90 f.
    001b0324
    001b0324loc_1b0324:
    001b0324sub r15, 24
    001b0328cmp r15, [r14]
    001b032bjb 0x1b0545
    001b0331
    001b0331loc_1b0331:
    001b0331lea rax, [r15+8]
    001b0335mov [rax-8], 2048
    001b033dlea rbx, [rip+0xc5ec4]
    001b0344mov [rax], rbx
    001b0347lea rbx, [rip+0x18d89a]
    001b034emov [rax+8], rbx
    001b0352call caml_raise_exn
    001b0357nop
    001b0358
    001b0358loc_1b0358:
    001b0358mov rsi, [rdi+32]
    001b035cmov rax, [rsi-8]
    001b0360mov rcx, rax
    001b0363shr rcx, 9
    001b0367cmp rcx, rdx
    001b036ajbe 0x1b056d
    001b0370and rax, 255
    001b0376cmp rax, 254
    001b037cje 0x1b0388
    001b037emov rax, [rsi+4*rdx-4]
    001b0383jmp 0x1b03ab
    001b0385
    001b0385 0f 1f 00 ...
    001b0388
    001b0388loc_1b0388:
    001b0388sub r15, 16
    001b038ccmp r15, [r14]
    001b038fjb 0x1b053b
    001b0395
    001b0395loc_1b0395:
    001b0395lea rax, [r15+8]
    001b0399mov [rax-8], 1277
    001b03a1movsd_xmm x0, [rsi+4*rdx-4]
    001b03a7movsd_xmm [rax], x0
    001b03ab
    001b03abloc_1b03ab:
    001b03abmov rdi, [rdi+24]
    001b03afcall caml_apply2
    001b03b4cmp rax, 1
    001b03b8jge 0x1b04d0
    001b03bemov r13, [rsp]
    001b03c2mov rax, [r13+32]
    001b03c6mov rbx, [rax-8]
    001b03camov rdi, rbx
    001b03cdshr rdi, 9
    001b03d1mov r12, [rsp+8]
    001b03d6cmp rdi, r12
    001b03d9jbe 0x1b0568
    001b03dfand rbx, 255
    001b03e6cmp rbx, 254
    001b03edje 0x1b03f8
    001b03efmov rsi, [rax+4*r12-4]
    001b03f4jmp 0x1b041c
    001b03f6
    001b03f6 66 90 f.
    001b03f8
    001b03f8loc_1b03f8:
    001b03f8sub r15, 16
    001b03fccmp r15, [r14]
    001b03ffjb 0x1b0531
    001b0405
    001b0405loc_1b0405:
    001b0405lea rsi, [r15+8]
    001b0409mov [rsi-8], 1277
    001b0411movsd_xmm x0, [rax+4*r12-4]
    001b0418movsd_xmm [rsi], x0
    001b041c
    001b041cloc_1b041c:
    001b041cmov rax, [r13+32]
    001b0420mov rbx, [rax-8]
    001b0424mov rdi, rbx
    001b0427shr rdi, 9
    001b042bmov rdx, [rsp+16]
    001b0430cmp rdi, rdx
    001b0433jbe 0x1b0563
    001b0439and rbx, 255
    001b0440cmp rbx, 254
    001b0447je 0x1b0460
    001b0449lea rdi, [rax+4*rdx-4]
    001b044emov rbx, rsp
    001b0451mov rsp, [r14+64]
    001b0455call caml_modify
    001b045amov rsp, rbx
    001b045djmp 0x1b046a
    001b045f
    001b045f 90 .
    001b0460
    001b0460loc_1b0460:
    001b0460movsd_xmm x0, [rsi]
    001b0464movsd_xmm [rax+4*rdx-4], x0
    001b046a
    001b046aloc_1b046a:
    001b046acmp r12, 1
    001b046ejle 0x1b0480
    001b0470mov rax, r12
    001b0473mov rbx, [rsp+24]
    001b0478mov rdi, r13
    001b047bjmp 0x1b02d6
    001b0480
    001b0480loc_1b0480:
    001b0480mov rdi, [r13+32]
    001b0484mov rax, [rdi-8]
    001b0488cmp rax, 1023
    001b048ejbe 0x1b055e
    001b0494and rax, 255
    001b049acmp rax, 254
    001b04a0je 0x1b04b8
    001b04a2mov rsi, [rsp+24]
    001b04a7mov rbx, rsp
    001b04aamov rsp, [r14+64]
    001b04aecall caml_modify
    001b04b3mov rsp, rbx
    001b04b6jmp 0x1b04c5
    001b04b8
    001b04b8loc_1b04b8:
    001b04b8mov rax, [rsp+24]
    001b04bdmovsd_xmm x0, [rax]
    001b04c1movsd_xmm [rdi], x0
    001b04c5
    001b04c5loc_1b04c5:
    001b04c5mov eax, 1
    001b04caadd rsp, 32
    001b04ceret
    001b04cf
    001b04cf 90 .
    001b04d0
    001b04d0loc_1b04d0:
    001b04d0mov rax, [rsp]
    001b04d4mov rax, [rax+32]
    001b04d8mov rbx, [rax-8]
    001b04dcmov rdi, rbx
    001b04dfshr rdi, 9
    001b04e3mov rsi, [rsp+16]
    001b04e8cmp rdi, rsi
    001b04ebjbe 0x1b0559
    001b04edand rbx, 255
    001b04f4cmp rbx, 254
    001b04fbje 0x1b0518
    001b04fdlea rdi, [rax+4*rsi-4]
    001b0502mov rsi, [rsp+24]
    001b0507mov rbx, rsp
    001b050amov rsp, [r14+64]
    001b050ecall caml_modify
    001b0513mov rsp, rbx
    001b0516jmp 0x1b0527
    001b0518
    001b0518loc_1b0518:
    001b0518mov rbx, [rsp+24]
    001b051dmovsd_xmm x0, [rbx]
    001b0521movsd_xmm [rax+4*rsi-4], x0
    001b0527
    001b0527loc_1b0527:
    001b0527mov eax, 1
    001b052cadd rsp, 32
    001b0530ret
    001b0531
    001b0531loc_1b0531:
    001b0531call caml_call_gc
    001b0536jmp 0x1b0405
    001b053b
    001b053bloc_1b053b:
    001b053bcall caml_call_gc
    001b0540jmp 0x1b0395
    001b0545
    001b0545loc_1b0545:
    001b0545call caml_call_gc
    001b054ajmp 0x1b0331
    001b054f
    001b054floc_1b054f:
    001b054fcall caml_call_gc
    001b0554jmp 0x1b02e2
    001b0559
    001b0559loc_1b0559:
    001b0559call caml_ml_array_bound_error
    001b055e
    001b055eloc_1b055e:
    001b055ecall caml_ml_array_bound_error
    001b0563
    001b0563loc_1b0563:
    001b0563call caml_ml_array_bound_error
    001b0568
    001b0568loc_1b0568:
    001b0568call caml_ml_array_bound_error
    001b056d
    001b056dloc_1b056d:
    001b056dcall caml_ml_array_bound_error
    001b0572
    001b0572loc_1b0572:
    001b0572push 37
    001b0574call caml_call_realloc_stack
    001b0579pop r10
    001b057bjmp 0x1b02d2
    001b02c0
    001b0580
    001b0580Stdlib.Array.stable_sort:
    001b0580lea r10, [rsp-368]
    001b0588cmp r10, [r14+40]
    001b058cjb 0x1b077f
    001b0592
    001b0592loc_1b0592:
    001b0592sub rsp, 48
    001b0596sub r15, 152
    001b059dcmp r15, [r14]
    001b05a0jb 0x1b0770
    001b05a6
    001b05a6loc_1b05a6:
    001b05a6lea rcx, [r15+8]
    001b05aaadd rcx, 104
    001b05aemov [rcx-8], 5367
    001b05b6lea rdi, [rip-0xba09d]
    001b05bdmov [rcx], rdi
    001b05c0mov rdi, 0x700000000000007
    001b05camov [rcx+8], rdi
    001b05celea rdi, [rip+443]
    001b05d5mov [rcx+16], rdi
    001b05d9mov [rcx+24], rax
    001b05ddmov [rcx+32], rbx
    001b05e1lea rdx, [rcx-48]
    001b05e5mov [rdx-8], 5367
    001b05edlea rdi, [rip-0xb9834]
    001b05f4mov [rdx], rdi
    001b05f7mov rsi, 0x400000000000007
    001b0601mov [rdx+8], rsi
    001b0605lea rsi, [rip+1380]
    001b060cmov [rdx+16], rsi
    001b0610mov [rdx+24], rax
    001b0614mov [rdx+32], rbx
    001b0618lea rax, [rdx-56]
    001b061cmov [rax-8], 6391
    001b0624mov [rax], rdi
    001b0627mov rdi, 0x400000000000007
    001b0631mov [rax+8], rdi
    001b0635lea rdi, [rip+2084]
    001b063cmov [rax+16], rdi
    001b0640mov [rax+24], rbx
    001b0644mov [rax+32], rcx
    001b0648mov [rax+40], rdx
    001b064cmov r8, [rbx-8]
    001b0650mov rsi, r8
    001b0653shr rsi, 9
    001b0657or rsi, 1
    001b065bcmp rsi, 11
    001b065fjg 0x1b0674
    001b0661mov edi, 1
    001b0666mov eax, 1
    001b066badd rsp, 48
    001b066fjmp 0x1b0b70
    001b0674
    001b0674loc_1b0674:
    001b0674mov [rsp], rax
    001b0678mov [rsp+40], rcx
    001b067dmov [rsp+32], rbx
    001b0682mov rax, rsi
    001b0685sar rax, 1
    001b0688mov rdi, rax
    001b068bshr rdi, 63
    001b068fadd rax, rdi
    001b0692or rax, 1
    001b0696mov [rsp+16], rax
    001b069bmov rdi, rsi
    001b069esub rdi, rax
    001b06a1inc rdi
    001b06a4mov [rsp+8], rdi
    001b06a9cmp r8, 1023
    001b06b0jbe 0x1b077a
    001b06b6and r8, 255
    001b06bdcmp r8, 254
    001b06c4je 0x1b06cc
    001b06c6mov rsi, [rbx]
    001b06c9jmp 0x1b06ed
    001b06cb
    001b06cb 90 .
    001b06cc
    001b06ccloc_1b06cc:
    001b06ccsub r15, 16
    001b06d0cmp r15, [r14]
    001b06d3jb 0x1b0766
    001b06d9
    001b06d9loc_1b06d9:
    001b06d9lea rsi, [r15+8]
    001b06ddmov [rsi-8], 1277
    001b06e5movsd_xmm x0, [rbx]
    001b06e9movsd_xmm [rsi], x0
    001b06ed
    001b06edloc_1b06ed:
    001b06edlea rax, [rip+0x495ac]
    001b06f4call caml_c_call
    001b06f9mov rbx, rax
    001b06fcmov [rsp+24], rbx
    001b0701mov edi, 1
    001b0706mov rax, [rsp+16]
    001b070bmov rsi, [rsp+8]
    001b0710mov rdx, [rsp]
    001b0714call Stdlib.Array.sortto
    001b0719mov eax, 1
    001b071emov rbx, [rsp+32]
    001b0723mov rdi, [rsp+8]
    001b0728mov rsi, [rsp+16]
    001b072dmov rdx, [rsp]
    001b0731call Stdlib.Array.sortto
    001b0736mov r8l, 1
    001b073cmov esi, 1
    001b0741mov rax, [rsp+8]
    001b0746mov rbx, [rsp+16]
    001b074bmov rdi, [rsp+24]
    001b0750mov rdx, rax
    001b0753mov rcx, [rsp+32]
    001b0758mov r9, [rsp+40]
    001b075dadd rsp, 48
    001b0761jmp 0x1b0790
    001b0766
    001b0766loc_1b0766:
    001b0766call caml_call_gc
    001b076bjmp 0x1b06d9
    001b0770
    001b0770loc_1b0770:
    001b0770call caml_call_gc
    001b0775jmp 0x1b05a6
    001b077a
    001b077aloc_1b077a:
    001b077acall caml_ml_array_bound_error
    001b077f
    001b077floc_1b077f:
    001b077fpush 39
    001b0781call caml_call_realloc_stack
    001b0786pop r10
    001b0788jmp 0x1b0592
    001b0580
    001b078d
    001b078d // align 0x10
    001b0790
    001b0790Stdlib.Array.merge:
    001b0790mov r12, rsi
    001b0793mov r13, rcx
    001b0796lea rsi, [rax+rbx-1]
    001b079blea rbx, [r12+rdx-1]
    001b07a0sub r15, 80
    001b07a4cmp r15, [r14]
    001b07a7jb 0x1b08ac
    001b07ad
    001b07adloc_1b07ad:
    001b07adlea rcx, [r15+8]
    001b07b1mov [rcx-8], 9463
    001b07b9lea rdx, [rip-0xb9c30]
    001b07c0mov [rcx], rdx
    001b07c3mov rdx, 0x500000000000007
    001b07cdmov [rcx+8], rdx
    001b07d1lea rdx, [rip+232]
    001b07d8mov [rcx+16], rdx
    001b07dcmov rdx, [r9+24]
    001b07e0mov [rcx+24], rdx
    001b07e4mov rdx, [r9+32]
    001b07e8mov [rcx+32], rdx
    001b07ecmov [rcx+40], rdi
    001b07f0mov [rcx+48], r13
    001b07f4mov [rcx+56], rsi
    001b07f8mov [rcx+64], rbx
    001b07fcmov rbx, [rdi-8]
    001b0800mov rsi, rbx
    001b0803shr rsi, 9
    001b0807cmp rsi, r12
    001b080ajbe 0x1b08bb
    001b0810and rbx, 255
    001b0817cmp rbx, 254
    001b081eje 0x1b0828
    001b0820mov rsi, [rdi+4*r12-4]
    001b0825jmp 0x1b0848
    001b0827
    001b0827 90 .
    001b0828
    001b0828loc_1b0828:
    001b0828sub r15, 16
    001b082ccmp r15, [r14]
    001b082fjb 0x1b08a5
    001b0831
    001b0831loc_1b0831:
    001b0831lea rsi, [r15+8]
    001b0835mov [rsi-8], 1277
    001b083dmovsd_xmm x0, [rdi+4*r12-4]
    001b0844movsd_xmm [rsi], x0
    001b0848
    001b0848loc_1b0848:
    001b0848mov rdi, [r9+32]
    001b084cmov rbx, [rdi-8]
    001b0850mov rdx, rbx
    001b0853shr rdx, 9
    001b0857cmp rdx, rax
    001b085ajbe 0x1b08b6
    001b085cand rbx, 255
    001b0863cmp rbx, 254
    001b086aje 0x1b0874
    001b086cmov rbx, [rdi+4*rax-4]
    001b0871jmp 0x1b0893
    001b0873
    001b0873 90 .
    001b0874
    001b0874loc_1b0874:
    001b0874sub r15, 16
    001b0878cmp r15, [r14]
    001b087bjb 0x1b089e
    001b087d
    001b087dloc_1b087d:
    001b087dlea rbx, [r15+8]
    001b0881mov [rbx-8], 1277
    001b0889movsd_xmm x0, [rdi+4*rax-4]
    001b088fmovsd_xmm [rbx], x0
    001b0893
    001b0893loc_1b0893:
    001b0893mov rdi, r12
    001b0896mov rdx, r8
    001b0899jmp 0x1b08c0
    001b089e
    001b089eloc_1b089e:
    001b089ecall caml_call_gc
    001b08a3jmp 0x1b087d
    001b08a5
    001b08a5loc_1b08a5:
    001b08a5call caml_call_gc
    001b08aajmp 0x1b0831
    001b08ac
    001b08acloc_1b08ac:
    001b08accall caml_call_gc
    001b08b1jmp 0x1b07ad
    001b08b6
    001b08b6loc_1b08b6:
    001b08b6call caml_ml_array_bound_error
    001b08bb
    001b08bbloc_1b08bb:
    001b08bbcall caml_ml_array_bound_error
    001b0790
    001b08c0
    001b08c0Stdlib.Array.loop:
    001b08c0lea r10, [rsp-368]
    001b08c8cmp r10, [r14+40]
    001b08ccjb 0x1b0b55
    001b08d2
    001b08d2loc_1b08d2:
    001b08d2sub rsp, 48
    001b08d6
    001b08d6loc_1b08d6:
    001b08d6mov [rsp+16], rax
    001b08dbmov rax, rbx
    001b08demov [rsp+40], rax
    001b08e3mov [rsp+24], rdi
    001b08e8mov rbx, rsi
    001b08ebmov [rsp+32], rbx
    001b08f0mov [rsp+8], rdx
    001b08f5mov [rsp], rcx
    001b08f9cmp r15, [r14]
    001b08fcjbe 0x1b0b37
    001b0902
    001b0902loc_1b0902:
    001b0902mov rdi, [rcx+24]
    001b0906call caml_apply2
    001b090bcmp rax, 1
    001b090fjg 0x1b0a20
    001b0915mov r12, [rsp]
    001b0919mov rax, [r12+48]
    001b091emov rbx, [rax-8]
    001b0922mov rdi, rbx
    001b0925shr rdi, 9
    001b0929mov r13, [rsp+8]
    001b092ecmp rdi, r13
    001b0931jbe 0x1b0b50
    001b0937and rbx, 255
    001b093ecmp rbx, 254
    001b0945je 0x1b0964
    001b0947lea rdi, [rax+4*r13-4]
    001b094cmov rsi, [rsp+40]
    001b0951mov rbx, rsp
    001b0954mov rsp, [r14+64]
    001b0958call caml_modify
    001b095dmov rsp, rbx
    001b0960jmp 0x1b0974
    001b0962
    001b0962 66 90 f.
    001b0964
    001b0964loc_1b0964:
    001b0964mov rbx, [rsp+40]
    001b0969movsd_xmm x0, [rbx]
    001b096dmovsd_xmm [rax+4*r13-4], x0
    001b0974
    001b0974loc_1b0974:
    001b0974mov rax, [rsp+16]
    001b0979add rax, 2
    001b097dmov rbx, [r12+56]
    001b0982cmp rax, rbx
    001b0985jge 0x1b09f4
    001b0987mov rdi, [r12+32]
    001b098cmov rbx, [rdi-8]
    001b0990mov rsi, rbx
    001b0993shr rsi, 9
    001b0997cmp rsi, rax
    001b099ajbe 0x1b0b4b
    001b09a0and rbx, 255
    001b09a7cmp rbx, 254
    001b09aeje 0x1b09b8
    001b09b0mov rbx, [rdi+4*rax-4]
    001b09b5jmp 0x1b09db
    001b09b7
    001b09b7 90 .
    001b09b8
    001b09b8loc_1b09b8:
    001b09b8sub r15, 16
    001b09bccmp r15, [r14]
    001b09bfjb 0x1b0b2d
    001b09c5
    001b09c5loc_1b09c5:
    001b09c5lea rbx, [r15+8]
    001b09c9mov [rbx-8], 1277
    001b09d1movsd_xmm x0, [rdi+4*rax-4]
    001b09d7movsd_xmm [rbx], x0
    001b09db
    001b09dbloc_1b09db:
    001b09dbmov rdx, r13
    001b09deadd rdx, 2
    001b09e2mov rdi, [rsp+24]
    001b09e7mov rsi, [rsp+32]
    001b09ecmov rcx, r12
    001b09efjmp 0x1b08d6
    001b09f4
    001b09f4loc_1b09f4:
    001b09f4mov rdx, [r12+64]
    001b09f9mov rbx, [rsp+24]
    001b09fesub rdx, rbx
    001b0a01inc rdx
    001b0a04mov rsi, r13
    001b0a07add rsi, 2
    001b0a0bmov rdi, [r12+48]
    001b0a10mov rax, [r12+40]
    001b0a15add rsp, 48
    001b0a19jmp 0x1ad4e0
    001b0a1e
    001b0a1e 66 90 f.
    001b0a20
    001b0a20loc_1b0a20:
    001b0a20mov r12, [rsp]
    001b0a24mov rax, [r12+48]
    001b0a29mov rbx, [rax-8]
    001b0a2dmov rdi, rbx
    001b0a30shr rdi, 9
    001b0a34mov r13, [rsp+8]
    001b0a39cmp rdi, r13
    001b0a3cjbe 0x1b0b46
    001b0a42and rbx, 255
    001b0a49cmp rbx, 254
    001b0a50je 0x1b0a70
    001b0a52lea rdi, [rax+4*r13-4]
    001b0a57mov rsi, [rsp+32]
    001b0a5cmov rbx, rsp
    001b0a5fmov rsp, [r14+64]
    001b0a63call caml_modify
    001b0a68mov rsp, rbx
    001b0a6bjmp 0x1b0a80
    001b0a6d
    001b0a6d 0f 1f 00 ...
    001b0a70
    001b0a70loc_1b0a70:
    001b0a70mov rbx, [rsp+32]
    001b0a75movsd_xmm x0, [rbx]
    001b0a79movsd_xmm [rax+4*r13-4], x0
    001b0a80
    001b0a80loc_1b0a80:
    001b0a80mov rdi, [rsp+24]
    001b0a85add rdi, 2
    001b0a89mov rax, [r12+64]
    001b0a8ecmp rdi, rax
    001b0a91jge 0x1b0afc
    001b0a93mov rax, [r12+40]
    001b0a98mov rbx, [rax-8]
    001b0a9cmov rsi, rbx
    001b0a9fshr rsi, 9
    001b0aa3cmp rsi, rdi
    001b0aa6jbe 0x1b0b41
    001b0aacand rbx, 255
    001b0ab3cmp rbx, 254
    001b0abaje 0x1b0ac4
    001b0abcmov rsi, [rax+4*rdi-4]
    001b0ac1jmp 0x1b0ae3
    001b0ac3
    001b0ac3 90 .
    001b0ac4
    001b0ac4loc_1b0ac4:
    001b0ac4sub r15, 16
    001b0ac8cmp r15, [r14]
    001b0acbjb 0x1b0b26
    001b0acd
    001b0acdloc_1b0acd:
    001b0acdlea rsi, [r15+8]
    001b0ad1mov [rsi-8], 1277
    001b0ad9movsd_xmm x0, [rax+4*rdi-4]
    001b0adfmovsd_xmm [rsi], x0
    001b0ae3
    001b0ae3loc_1b0ae3:
    001b0ae3mov rdx, r13
    001b0ae6add rdx, 2
    001b0aeamov rax, [rsp+16]
    001b0aefmov rbx, [rsp+40]
    001b0af4mov rcx, r12
    001b0af7jmp 0x1b08d6
    001b0afc
    001b0afcloc_1b0afc:
    001b0afcmov rdx, [r12+56]
    001b0b01mov rbx, [rsp+16]
    001b0b06sub rdx, rbx
    001b0b09inc rdx
    001b0b0cmov rsi, r13
    001b0b0fadd rsi, 2
    001b0b13mov rdi, [r12+48]
    001b0b18mov rax, [r12+32]
    001b0b1dadd rsp, 48
    001b0b21jmp 0x1ad4e0
    001b0b26
    001b0b26loc_1b0b26:
    001b0b26call caml_call_gc
    001b0b2bjmp 0x1b0acd
    001b0b2d
    001b0b2dloc_1b0b2d:
    001b0b2dcall caml_call_gc
    001b0b32jmp 0x1b09c5
    001b0b37
    001b0b37loc_1b0b37:
    001b0b37call caml_call_gc
    001b0b3cjmp 0x1b0902
    001b0b41
    001b0b41loc_1b0b41:
    001b0b41call caml_ml_array_bound_error
    001b0b46
    001b0b46loc_1b0b46:
    001b0b46call caml_ml_array_bound_error
    001b0b4b
    001b0b4bloc_1b0b4b:
    001b0b4bcall caml_ml_array_bound_error
    001b0b50
    001b0b50loc_1b0b50:
    001b0b50call caml_ml_array_bound_error
    001b0b55
    001b0b55loc_1b0b55:
    001b0b55push 39
    001b0b57call caml_call_realloc_stack
    001b0b5cpop r10
    001b0b5ejmp 0x1b08d2
    001b08c0
    001b0b63
    001b0b63 // align 0x10
    001b0b70
    001b0b70Stdlib.Array.isortto:
    001b0b70lea r10, [rsp-384]
    001b0b78cmp r10, [r14+40]
    001b0b7cjb 0x1b0e43
    001b0b82
    001b0b82loc_1b0b82:
    001b0b82sub rsp, 64
    001b0b86mov r13, rbx
    001b0b89mov ebx, 1
    001b0b8eadd rsi, -2
    001b0b92cmp rbx, rsi
    001b0b95jg 0x1b0dee
    001b0b9bmov [rsp+16], rsi
    001b0ba0mov [rsp+8], rbx
    001b0ba5mov [rsp+32], rdx
    001b0baamov [rsp+24], rdi
    001b0bafmov [rsp+48], r13
    001b0bb4mov [rsp], rax
    001b0bb8
    001b0bb8loc_1b0bb8:
    001b0bb8mov rax, [rsp]
    001b0bbclea rax, [rax+rbx-1]
    001b0bc1mov rdi, [rsp+32]
    001b0bc6mov rdi, [rdi+32]
    001b0bcamov rsi, [rdi-8]
    001b0bcemov rdx, rsi
    001b0bd1shr rdx, 9
    001b0bd5cmp rdx, rax
    001b0bd8jbe 0x1b0e3e
    001b0bdeand rsi, 255
    001b0be5cmp rsi, 254
    001b0becje 0x1b0bfc
    001b0beemov rsi, [rdi+4*rax-4]
    001b0bf3mov [rsp+40], rsi
    001b0bf8jmp 0x1b0c24
    001b0bfa
    001b0bfa 66 90 f.
    001b0bfc
    001b0bfcloc_1b0bfc:
    001b0bfcsub r15, 16
    001b0c00cmp r15, [r14]
    001b0c03jb 0x1b0e20
    001b0c09
    001b0c09loc_1b0c09:
    001b0c09lea rsi, [r15+8]
    001b0c0dmov [rsi-8], 1277
    001b0c15movsd_xmm x0, [rdi+4*rax-4]
    001b0c1bmovsd_xmm [rsi], x0
    001b0c1fmov [rsp+40], rsi
    001b0c24
    001b0c24loc_1b0c24:
    001b0c24mov rax, [rsp+24]
    001b0c29lea r12, [rax+rbx-3]
    001b0c2emov [rsp+56], r12
    001b0c33
    001b0c33loc_1b0c33:
    001b0c33mov rax, [rsp+24]
    001b0c38cmp r12, rax
    001b0c3bjl 0x1b0d6a
    001b0c41mov rax, [r13-8]
    001b0c45mov rbx, rax
    001b0c48shr rbx, 9
    001b0c4ccmp rbx, r12
    001b0c4fjbe 0x1b0e39
    001b0c55and rax, 255
    001b0c5bcmp rax, 254
    001b0c61je 0x1b0c6c
    001b0c63mov rax, [r13+4*r12-4]
    001b0c68jmp 0x1b0c90
    001b0c6a
    001b0c6a 66 90 f.
    001b0c6c
    001b0c6cloc_1b0c6c:
    001b0c6csub r15, 16
    001b0c70cmp r15, [r14]
    001b0c73jb 0x1b0e16
    001b0c79
    001b0c79loc_1b0c79:
    001b0c79lea rax, [r15+8]
    001b0c7dmov [rax-8], 1277
    001b0c85movsd_xmm x0, [r13+4*r12-4]
    001b0c8cmovsd_xmm [rax], x0
    001b0c90
    001b0c90loc_1b0c90:
    001b0c90mov rbx, [rsp+32]
    001b0c95mov rdi, [rbx+24]
    001b0c99mov rbx, [rsp+40]
    001b0c9ecall caml_apply2
    001b0ca3cmp rax, 1
    001b0ca7jle 0x1b0d6a
    001b0cadmov r13, [rsp+48]
    001b0cb2mov rax, [r13-8]
    001b0cb6mov rbx, rax
    001b0cb9shr rbx, 9
    001b0cbdmov r12, [rsp+56]
    001b0cc2cmp rbx, r12
    001b0cc5jbe 0x1b0e34
    001b0ccband rax, 255
    001b0cd1cmp rax, 254
    001b0cd7je 0x1b0ce0
    001b0cd9mov rsi, [r13+4*r12-4]
    001b0cdejmp 0x1b0d04
    001b0ce0
    001b0ce0loc_1b0ce0:
    001b0ce0sub r15, 16
    001b0ce4cmp r15, [r14]
    001b0ce7jb 0x1b0e0c
    001b0ced
    001b0cedloc_1b0ced:
    001b0cedlea rsi, [r15+8]
    001b0cf1mov [rsi-8], 1277
    001b0cf9movsd_xmm x0, [r13+4*r12-4]
    001b0d00movsd_xmm [rsi], x0
    001b0d04
    001b0d04loc_1b0d04:
    001b0d04mov rax, r12
    001b0d07add rax, 2
    001b0d0bmov rbx, [r13-8]
    001b0d0fmov rdi, rbx
    001b0d12shr rdi, 9
    001b0d16cmp rdi, rax
    001b0d19jbe 0x1b0e2f
    001b0d1fand rbx, 255
    001b0d26cmp rbx, 254
    001b0d2dje 0x1b0d48
    001b0d2flea rdi, [r13+4*rax-4]
    001b0d34mov rbx, rsp
    001b0d37mov rsp, [r14+64]
    001b0d3bcall caml_modify
    001b0d40mov rsp, rbx
    001b0d43jmp 0x1b0d53
    001b0d45
    001b0d45 0f 1f 00 ...
    001b0d48
    001b0d48loc_1b0d48:
    001b0d48movsd_xmm x0, [rsi]
    001b0d4cmovsd_xmm [r13+4*rax-4], x0
    001b0d53
    001b0d53loc_1b0d53:
    001b0d53add r12, -2
    001b0d57mov [rsp+56], r12
    001b0d5ccmp r15, [r14]
    001b0d5fja 0x1b0c33
    001b0d65jmp 0x1b0e02
    001b0d6a
    001b0d6aloc_1b0d6a:
    001b0d6amov rax, [rsp+56]
    001b0d6fadd rax, 2
    001b0d73mov r13, [rsp+48]
    001b0d78mov rbx, [r13-8]
    001b0d7cmov rdi, rbx
    001b0d7fshr rdi, 9
    001b0d83cmp rdi, rax
    001b0d86jbe 0x1b0e2a
    001b0d8cand rbx, 255
    001b0d93cmp rbx, 254
    001b0d9aje 0x1b0db8
    001b0d9clea rdi, [r13+4*rax-4]
    001b0da1mov rsi, [rsp+40]
    001b0da6mov rbx, rsp
    001b0da9mov rsp, [r14+64]
    001b0dadcall caml_modify
    001b0db2mov rsp, rbx
    001b0db5jmp 0x1b0dc8
    001b0db7
    001b0db7 90 .
    001b0db8
    001b0db8loc_1b0db8:
    001b0db8mov rbx, [rsp+40]
    001b0dbdmovsd_xmm x0, [rbx]
    001b0dc1movsd_xmm [r13+4*rax-4], x0
    001b0dc8
    001b0dc8loc_1b0dc8:
    001b0dc8mov rbx, [rsp+8]
    001b0dcdmov rax, rbx
    001b0dd0add rbx, 2
    001b0dd4mov [rsp+8], rbx
    001b0dd9mov rdi, [rsp+16]
    001b0ddecmp rax, rdi
    001b0de1je 0x1b0dee
    001b0de3cmp r15, [r14]
    001b0de6ja 0x1b0bb8
    001b0decjmp 0x1b0df8
    001b0dee
    001b0deeloc_1b0dee:
    001b0deemov eax, 1
    001b0df3add rsp, 64
    001b0df7ret
    001b0df8
    001b0df8loc_1b0df8:
    001b0df8call caml_call_gc
    001b0dfdjmp 0x1b0bb8
    001b0e02
    001b0e02loc_1b0e02:
    001b0e02call caml_call_gc
    001b0e07jmp 0x1b0c33
    001b0e0c
    001b0e0cloc_1b0e0c:
    001b0e0ccall caml_call_gc
    001b0e11jmp 0x1b0ced
    001b0e16
    001b0e16loc_1b0e16:
    001b0e16call caml_call_gc
    001b0e1bjmp 0x1b0c79
    001b0e20
    001b0e20loc_1b0e20:
    001b0e20call caml_call_gc
    001b0e25jmp 0x1b0c09
    001b0e2a
    001b0e2aloc_1b0e2a:
    001b0e2acall caml_ml_array_bound_error
    001b0e2f
    001b0e2floc_1b0e2f:
    001b0e2fcall caml_ml_array_bound_error
    001b0e34
    001b0e34loc_1b0e34:
    001b0e34call caml_ml_array_bound_error
    001b0e39
    001b0e39loc_1b0e39:
    001b0e39call caml_ml_array_bound_error
    001b0e3e
    001b0e3eloc_1b0e3e:
    001b0e3ecall caml_ml_array_bound_error
    001b0e43
    001b0e43loc_1b0e43:
    001b0e43push 41
    001b0e45call caml_call_realloc_stack
    001b0e4apop r10
    001b0e4cjmp 0x1b0b82
    001b0b70