File hevea_f46f610a6b0078f4aa208dda361f21de574cc56ad64b32889301afc466d33979.elf
Function:
Loading..
00210390
00210390caml_ml_output_bigarray:
00210390push r15
00210392push r14
00210394push r13
00210396push r12
00210398mov r12, rdx
0021039bpush rbp
0021039csar r12, 1
0021039fpush rbx
002103a0sub rsp, 152
002103a7movdqa x0, [rip+0x19d3d]
002103afmov [rsp+56], rdi
002103b4mov [rsp+48], rsi
002103b9mov [rsp+40], rdx
002103bemov [rsp+32], rcx
002103c3mov rax, [0x28]
002103ccmov [rsp+136], rax
002103d4mov rax, [rip+0x65c09]
002103dbmov rcx, [rax]
002103dfmovups [rsp+72], x0
002103e4mov rax, [rcx+160]
002103ebmov [rsp+16], rcx
002103f0mov [rsp+64], rax
002103f5mov [rsp+24], rax
002103falea rax, [rsp+64]
002103ffmov [rcx+160], rax
00210406lea rax, [rsp+56]
0021040bmovq x0, rax
00210410lea rax, [rsp+48]
00210415movq x1, rax
0021041alea rax, [rsp+40]
0021041fpunpcklqdq x0, x1
00210423movups [rsp+88], x0
00210428movq x0, rax
0021042dlea rax, [rsp+32]
00210432movq x2, rax
00210437punpcklqdq x0, x2
0021043bmovups [rsp+104], x0
00210440mov r13, [rdi+8]
00210444mov r14, [rsp+32]
00210449lea rax, [r13+40]
0021044dsar r14, 1
00210450mov rdi, rax
00210453mov [rsp+8], rax
00210458call fn_f4780
0021045dcmp eax, 16
00210460je 0x210558
00210466test eax, eax
00210468jne 0x21057a
0021046emov [0xfffffffffffffff0], r13
00210477mov rax, [rsp+48]
0021047cadd r12, [rax+8]
00210480test r14, r14
00210483jg 0x2104b0
00210485jmp 0x2104fd
00210487db 0x7f
00210488db 0x27
00210489jmp 0x2104fd
0021048b
0021048b 0f 1f 44 00 00 ..D..
00210490
00210490loc_210490:
00210490movsxd rbx, ebx
00210493mov rsi, r12
00210496mov rdx, rbx
00210499add r12, rbx
0021049ccall fn_f4520
002104a1movsxd r8, ebp
002104a4add [r13+24], rbx
002104a8sub r14, r8
002104abtest r14, r14
002104aejle 0x2104fd
002104b0
002104b0loc_2104b0:
002104b0mov ebx, 0x7fffffff
002104b5mov rdi, [r13+24]
002104b9mov r15, [r13+16]
002104bdcmp r14, rbx
002104c0cmovle rbx, r14
002104c4sub r15, rdi
002104c7mov ebp, ebx
002104c9cmp ebx, r15l
002104ccjl 0x210490
002104cemovsxd rbx, r15l
002104d1mov rsi, r12
002104d4mov ebp, r15l
002104d7mov rdx, rbx
002104daadd r12, rbx
002104ddcall fn_f4520
002104e2mov rax, [r13+16]
002104e6mov rdi, r13
002104e9mov [r13+24], rax
002104edcall caml_flush_partial
002104f2movsxd r8, ebp
002104f5sub r14, r8
002104f8test r14, r14
002104fbjg 0x2104b0
002104fd
002104fdloc_2104fd:
002104fdmov rdi, [rsp+8]
00210502call fn_f47c0
00210507test eax, eax
00210509jne 0x21056c
0021050bmov [0xfffffffffffffff0], 0
00210518mov rax, [rsp+16]
0021051dmov rdx, [rsp+24]
00210522mov [rax+160], rdx
00210529mov rax, [rsp+136]
00210531sub rax, [0x28]
0021053ajne 0x210567
0021053cadd rsp, 152
00210543mov eax, 1
00210548pop rbx
00210549pop rbp
0021054apop r12
0021054cpop r13
0021054epop r14
00210550pop r15
00210552ret
00210553
00210553 0f 1f 44 00 00 ..D..
00210558
00210558loc_210558:
00210558mov rdi, [rsp+8]
0021055dcall caml_plat_lock_non_blocking_actual
00210562jmp 0x210472
00210567
00210567loc_210567:
00210567call fn_f4590
0021056c
0021056cloc_21056c:
0021056cmov esi, eax
0021056elea rdi, [rip+0x1efa5]
00210575call caml_plat_fatal_error
0021057a
0021057aloc_21057a:
0021057amov esi, eax
0021057clea rdi, [rip+0x1efa4]
00210583call caml_plat_fatal_error
00210390
00210390caml_ml_output_bigarray:
00210390push r15
00210392push r14
00210394push r13
00210396push r12
00210398mov r12, rdx
0021039bpush rbp
0021039csar r12, 1
0021039fpush rbx
002103a0sub rsp, 152
002103a7movdqa x0, [rip+0x19d3d]
002103afmov [rsp+56], rdi
002103b4mov [rsp+48], rsi
002103b9mov [rsp+40], rdx
002103bemov [rsp+32], rcx
002103c3mov rax, [0x28]
002103ccmov [rsp+136], rax
002103d4mov rax, [rip+0x65c09]
002103dbmov rcx, [rax]
002103dfmovups [rsp+72], x0
002103e4mov rax, [rcx+160]
002103ebmov [rsp+16], rcx
002103f0mov [rsp+64], rax
002103f5mov [rsp+24], rax
002103falea rax, [rsp+64]
002103ffmov [rcx+160], rax
00210406lea rax, [rsp+56]
0021040bmovq x0, rax
00210410lea rax, [rsp+48]
00210415movq x1, rax
0021041alea rax, [rsp+40]
0021041fpunpcklqdq x0, x1
00210423movups [rsp+88], x0
00210428movq x0, rax
0021042dlea rax, [rsp+32]
00210432movq x2, rax
00210437punpcklqdq x0, x2
0021043bmovups [rsp+104], x0
00210440mov r13, [rdi+8]
00210444mov r14, [rsp+32]
00210449lea rax, [r13+40]
0021044dsar r14, 1
00210450mov rdi, rax
00210453mov [rsp+8], rax
00210458call fn_f4780
0021045dcmp eax, 16
00210460je 0x210558
00210466test eax, eax
00210468jne 0x21057a
0021046emov [0xfffffffffffffff0], r13
00210477mov rax, [rsp+48]
0021047cadd r12, [rax+8]
00210480test r14, r14
00210483jg 0x2104b0
00210485jmp 0x2104fd
00210487db 0x7f
00210488db 0x27
00210489jmp 0x2104fd
0021048b
0021048b 0f 1f 44 00 00 ..D..
00210490
00210490loc_210490:
00210490movsxd rbx, ebx
00210493mov rsi, r12
00210496mov rdx, rbx
00210499add r12, rbx
0021049ccall fn_f4520
002104a1movsxd r8, ebp
002104a4add [r13+24], rbx
002104a8sub r14, r8
002104abtest r14, r14
002104aejle 0x2104fd
002104b0
002104b0loc_2104b0:
002104b0mov ebx, 0x7fffffff
002104b5mov rdi, [r13+24]
002104b9mov r15, [r13+16]
002104bdcmp r14, rbx
002104c0cmovle rbx, r14
002104c4sub r15, rdi
002104c7mov ebp, ebx
002104c9cmp ebx, r15l
002104ccjl 0x210490
002104cemovsxd rbx, r15l
002104d1mov rsi, r12
002104d4mov ebp, r15l
002104d7mov rdx, rbx
002104daadd r12, rbx
002104ddcall fn_f4520
002104e2mov rax, [r13+16]
002104e6mov rdi, r13
002104e9mov [r13+24], rax
002104edcall caml_flush_partial
002104f2movsxd r8, ebp
002104f5sub r14, r8
002104f8test r14, r14
002104fbjg 0x2104b0
002104fd
002104fdloc_2104fd:
002104fdmov rdi, [rsp+8]
00210502call fn_f47c0
00210507test eax, eax
00210509jne 0x21056c
0021050bmov [0xfffffffffffffff0], 0
00210518mov rax, [rsp+16]
0021051dmov rdx, [rsp+24]
00210522mov [rax+160], rdx
00210529mov rax, [rsp+136]
00210531sub rax, [0x28]
0021053ajne 0x210567
0021053cadd rsp, 152
00210543mov eax, 1
00210548pop rbx
00210549pop rbp
0021054apop r12
0021054cpop r13
0021054epop r14
00210550pop r15
00210552ret
00210553
00210553 0f 1f 44 00 00 ..D..
00210558
00210558loc_210558:
00210558mov rdi, [rsp+8]
0021055dcall caml_plat_lock_non_blocking_actual
00210562jmp 0x210472
00210567
00210567loc_210567:
00210567call fn_f4590
0021056c
0021056cloc_21056c:
0021056cmov esi, eax
0021056elea rdi, [rip+0x1efa5]
00210575call caml_plat_fatal_error
0021057a
0021057aloc_21057a:
0021057amov esi, eax
0021057clea rdi, [rip+0x1efa4]
00210583call caml_plat_fatal_error
00210390
00210588
00210588 // align 0x10
00210588 // align 0x10
00210590
00210590caml_ml_seek_out:
00210590push r13
00210592push r12
00210594push rbp
00210595push rbx
00210596sub rsp, 104
0021059amovdqa x0, [rip+0x19b2a]
002105a2mov [rsp+8], rdi
002105a7movq x1, rsp
002105acmov [rsp], rsi
002105b0mov rax, [0x28]
002105b9mov [rsp+88], rax
002105bemov rax, [rip+0x65a1f]
002105c5mov rbx, [rax]
002105c9lea rax, [rsp+16]
002105cemovups [rsp+24], x0
002105d3mov rbp, [rbx+160]
002105damov [rbx+160], rax
002105e1lea rax, [rsp+8]
002105e6movq x0, rax
002105ebpunpcklqdq x0, x1
002105efmov [rsp+16], rbp
002105f4movups [rsp+40], x0
002105f9mov r12, [rdi+8]
002105fdlea r13, [r12+40]
00210602mov rdi, r13
00210605call fn_f4780
0021060acmp eax, 16
0021060dje 0x210670
0021060ftest eax, eax
00210611jne 0x21068d
00210613mov [0xfffffffffffffff0], r12
0021061cmov rsi, [rsp]
00210620mov rdi, r12
00210623sar rsi, 1
00210626call caml_seek_out
0021062bmov rdi, r13
0021062ecall fn_f47c0
00210633test eax, eax
00210635jne 0x21067f
00210637mov [0xfffffffffffffff0], 0
00210644mov [rbx+160], rbp
0021064bmov rax, [rsp+88]
00210650sub rax, [0x28]
00210659jne 0x21067a
0021065badd rsp, 104
0021065fmov eax, 1
00210664pop rbx
00210665pop rbp
00210666pop r12
00210668pop r13
0021066aret
0021066bdb 0x5c
0021066cpop r13
0021066eret
0021066f
0021066f 90 .
00210670
00210670loc_210670:
00210670mov rdi, r13
00210673call caml_plat_lock_non_blocking_actual
00210678jmp 0x210617
0021067a
0021067aloc_21067a:
0021067acall fn_f4590
0021067f
0021067floc_21067f:
0021067fmov esi, eax
00210681lea rdi, [rip+0x1ee92]
00210688call caml_plat_fatal_error
0021068d
0021068dloc_21068d:
0021068dmov esi, eax
0021068flea rdi, [rip+0x1ee91]
00210696call caml_plat_fatal_error
00210590
00210590caml_ml_seek_out:
00210590push r13
00210592push r12
00210594push rbp
00210595push rbx
00210596sub rsp, 104
0021059amovdqa x0, [rip+0x19b2a]
002105a2mov [rsp+8], rdi
002105a7movq x1, rsp
002105acmov [rsp], rsi
002105b0mov rax, [0x28]
002105b9mov [rsp+88], rax
002105bemov rax, [rip+0x65a1f]
002105c5mov rbx, [rax]
002105c9lea rax, [rsp+16]
002105cemovups [rsp+24], x0
002105d3mov rbp, [rbx+160]
002105damov [rbx+160], rax
002105e1lea rax, [rsp+8]
002105e6movq x0, rax
002105ebpunpcklqdq x0, x1
002105efmov [rsp+16], rbp
002105f4movups [rsp+40], x0
002105f9mov r12, [rdi+8]
002105fdlea r13, [r12+40]
00210602mov rdi, r13
00210605call fn_f4780
0021060acmp eax, 16
0021060dje 0x210670
0021060ftest eax, eax
00210611jne 0x21068d
00210613mov [0xfffffffffffffff0], r12
0021061cmov rsi, [rsp]
00210620mov rdi, r12
00210623sar rsi, 1
00210626call caml_seek_out
0021062bmov rdi, r13
0021062ecall fn_f47c0
00210633test eax, eax
00210635jne 0x21067f
00210637mov [0xfffffffffffffff0], 0
00210644mov [rbx+160], rbp
0021064bmov rax, [rsp+88]
00210650sub rax, [0x28]
00210659jne 0x21067a
0021065badd rsp, 104
0021065fmov eax, 1
00210664pop rbx
00210665pop rbp
00210666pop r12
00210668pop r13
0021066aret
0021066bdb 0x5c
0021066cpop r13
0021066eret
0021066f
0021066f 90 .
00210670
00210670loc_210670:
00210670mov rdi, r13
00210673call caml_plat_lock_non_blocking_actual
00210678jmp 0x210617
0021067a
0021067aloc_21067a:
0021067acall fn_f4590
0021067f
0021067floc_21067f:
0021067fmov esi, eax
00210681lea rdi, [rip+0x1ee92]
00210688call caml_plat_fatal_error
0021068d
0021068dloc_21068d:
0021068dmov esi, eax
0021068flea rdi, [rip+0x1ee91]
00210696call caml_plat_fatal_error
00210590
0021069b
0021069b // align 0x10
0021069b // align 0x10
002106a0
002106a0caml_ml_seek_out_64:
002106a0push r13
002106a2push r12
002106a4push rbp
002106a5push rbx
002106a6sub rsp, 104
002106aamovdqa x0, [rip+0x19a1a]
002106b2mov [rsp+8], rdi
002106b7movq x1, rsp
002106bcmov [rsp], rsi
002106c0mov rax, [0x28]
002106c9mov [rsp+88], rax
002106cemov rax, [rip+0x6590f]
002106d5mov rbx, [rax]
002106d9lea rax, [rsp+16]
002106demovups [rsp+24], x0
002106e3mov rbp, [rbx+160]
002106eamov [rbx+160], rax
002106f1lea rax, [rsp+8]
002106f6movq x0, rax
002106fbpunpcklqdq x0, x1
002106ffmov [rsp+16], rbp
00210704movups [rsp+40], x0
00210709mov r12, [rdi+8]
0021070dlea r13, [r12+40]
00210712mov rdi, r13
00210715call fn_f4780
0021071acmp eax, 16
0021071dje 0x210780
0021071ftest eax, eax
00210721jne 0x21079d
00210723mov [0xfffffffffffffff0], r12
0021072cmov rax, [rsp]
00210730mov rdi, r12
00210733mov rsi, [rax+8]
00210737call caml_seek_out
0021073cmov rdi, r13
0021073fcall fn_f47c0
00210744test eax, eax
00210746jne 0x21078f
00210748mov [0xfffffffffffffff0], 0
00210755mov [rbx+160], rbp
0021075cmov rax, [rsp+88]
00210761sub rax, [0x28]
0021076ajne 0x21078a
0021076cadd rsp, 104
00210770mov eax, 1
00210775pop rbx
00210776pop rbp
00210777pop r12
00210779pop r13
0021077bret
0021077cmov rdi, r13
0021077fcall caml_plat_lock_non_blocking_actual
00210784jmp 0x210727
00210786call fn_f4590
0021078bmov esi, eax
0021078dlea rdi, [rip+0x1ed82]
00210794call caml_plat_fatal_error
00210799mov esi, eax
0021079blea rdi, [rip+0x1ed81]
002107a2call caml_plat_fatal_error
002107a7db 0x25
002107a8mov dl, 0
002107aadb 0x00
002106a0
002106a0caml_ml_seek_out_64:
002106a0push r13
002106a2push r12
002106a4push rbp
002106a5push rbx
002106a6sub rsp, 104
002106aamovdqa x0, [rip+0x19a1a]
002106b2mov [rsp+8], rdi
002106b7movq x1, rsp
002106bcmov [rsp], rsi
002106c0mov rax, [0x28]
002106c9mov [rsp+88], rax
002106cemov rax, [rip+0x6590f]
002106d5mov rbx, [rax]
002106d9lea rax, [rsp+16]
002106demovups [rsp+24], x0
002106e3mov rbp, [rbx+160]
002106eamov [rbx+160], rax
002106f1lea rax, [rsp+8]
002106f6movq x0, rax
002106fbpunpcklqdq x0, x1
002106ffmov [rsp+16], rbp
00210704movups [rsp+40], x0
00210709mov r12, [rdi+8]
0021070dlea r13, [r12+40]
00210712mov rdi, r13
00210715call fn_f4780
0021071acmp eax, 16
0021071dje 0x210780
0021071ftest eax, eax
00210721jne 0x21079d
00210723mov [0xfffffffffffffff0], r12
0021072cmov rax, [rsp]
00210730mov rdi, r12
00210733mov rsi, [rax+8]
00210737call caml_seek_out
0021073cmov rdi, r13
0021073fcall fn_f47c0
00210744test eax, eax
00210746jne 0x21078f
00210748mov [0xfffffffffffffff0], 0
00210755mov [rbx+160], rbp
0021075cmov rax, [rsp+88]
00210761sub rax, [0x28]
0021076ajne 0x21078a
0021076cadd rsp, 104
00210770mov eax, 1
00210775pop rbx
00210776pop rbp
00210777pop r12
00210779pop r13
0021077bret
0021077cmov rdi, r13
0021077fcall caml_plat_lock_non_blocking_actual
00210784jmp 0x210727
00210786call fn_f4590
0021078bmov esi, eax
0021078dlea rdi, [rip+0x1ed82]
00210794call caml_plat_fatal_error
00210799mov esi, eax
0021079blea rdi, [rip+0x1ed81]
002107a2call caml_plat_fatal_error
002107a7db 0x25
002107a8mov dl, 0
002107aadb 0x00
002106a0
002107ab
002107ab // align 0x10
002107ab // align 0x10
002107b0
002107b0caml_ml_pos_out:
002107b0push r14
002107b2push r13
002107b4push r12
002107b6push rbp
002107b7push rbx
002107b8sub rsp, 96
002107bcmov [rsp+8], rdi
002107c1mov rax, [0x28]
002107camov [rsp+88], rax
002107cfmov rax, [rip+0x6580e]
002107d6mov r12, [rax]
002107dalea rax, [rsp+16]
002107dfmov r13, [r12+160]
002107e7mov [r12+160], rax
002107efmov eax, 1
002107f4movq x0, rax
002107f9lea rax, [rsp+8]
002107fepunpcklqdq x0, x0
00210802mov [rsp+16], r13
00210807mov [rsp+40], rax
0021080cmovups [rsp+24], x0
00210811mov rbp, [rdi+8]
00210815lea r14, [rbp+40]
00210819mov rdi, r14
0021081ccall fn_f4780
00210821cmp eax, 16
00210824je 0x2108a0
00210826test eax, eax
00210828jne 0x2108d2
0021082emov [0xfffffffffffffff0], rbp
00210837mov rdi, r14
0021083amov rbx, [rbp+24]
0021083esub rbx, [rbp+112]
00210842add rbx, [rbp+8]
00210846call fn_f47c0
0021084btest eax, eax
0021084djne 0x2108c4
0021084fmov rax, 0x3fffffffffffffff
00210859mov [0xfffffffffffffff0], 0
00210866cmp rbx, rax
00210869jg 0x2108af
0021086bmov [r12+160], r13
00210873lea rax, [rbx+rbx+1]
00210878mov rdx, [rsp+88]
0021087dsub rdx, [0x28]
00210886jne 0x2108aa
00210888add rsp, 96
0021088cpop rbx
0021088dpop rbp
0021088epop r12
00210890pop r13
00210892pop r14
00210894ret
00210895db 0x5d
00210896pop r14
00210898ret
00210899
00210899 0f 1f 80 00 00 00 00 .......
002108a0
002108a0loc_2108a0:
002108a0mov rdi, r14
002108a3call caml_plat_lock_non_blocking_actual
002108a8jmp 0x210832
002108aa
002108aaloc_2108aa:
002108aacall fn_f4590
002108af
002108afloc_2108af:
002108afcall fn_f4570
002108b4mov edi, 1
002108b9mov [rax], 75
002108bfcall caml_sys_error
002108c4
002108c4loc_2108c4:
002108c4mov esi, eax
002108c6lea rdi, [rip+0x1ec4d]
002108cdcall caml_plat_fatal_error
002108d2
002108d2loc_2108d2:
002108d2mov esi, eax
002108d4lea rdi, [rip+0x1ec4c]
002108dbcall caml_plat_fatal_error
002107b0
002107b0caml_ml_pos_out:
002107b0push r14
002107b2push r13
002107b4push r12
002107b6push rbp
002107b7push rbx
002107b8sub rsp, 96
002107bcmov [rsp+8], rdi
002107c1mov rax, [0x28]
002107camov [rsp+88], rax
002107cfmov rax, [rip+0x6580e]
002107d6mov r12, [rax]
002107dalea rax, [rsp+16]
002107dfmov r13, [r12+160]
002107e7mov [r12+160], rax
002107efmov eax, 1
002107f4movq x0, rax
002107f9lea rax, [rsp+8]
002107fepunpcklqdq x0, x0
00210802mov [rsp+16], r13
00210807mov [rsp+40], rax
0021080cmovups [rsp+24], x0
00210811mov rbp, [rdi+8]
00210815lea r14, [rbp+40]
00210819mov rdi, r14
0021081ccall fn_f4780
00210821cmp eax, 16
00210824je 0x2108a0
00210826test eax, eax
00210828jne 0x2108d2
0021082emov [0xfffffffffffffff0], rbp
00210837mov rdi, r14
0021083amov rbx, [rbp+24]
0021083esub rbx, [rbp+112]
00210842add rbx, [rbp+8]
00210846call fn_f47c0
0021084btest eax, eax
0021084djne 0x2108c4
0021084fmov rax, 0x3fffffffffffffff
00210859mov [0xfffffffffffffff0], 0
00210866cmp rbx, rax
00210869jg 0x2108af
0021086bmov [r12+160], r13
00210873lea rax, [rbx+rbx+1]
00210878mov rdx, [rsp+88]
0021087dsub rdx, [0x28]
00210886jne 0x2108aa
00210888add rsp, 96
0021088cpop rbx
0021088dpop rbp
0021088epop r12
00210890pop r13
00210892pop r14
00210894ret
00210895db 0x5d
00210896pop r14
00210898ret
00210899
00210899 0f 1f 80 00 00 00 00 .......
002108a0
002108a0loc_2108a0:
002108a0mov rdi, r14
002108a3call caml_plat_lock_non_blocking_actual
002108a8jmp 0x210832
002108aa
002108aaloc_2108aa:
002108aacall fn_f4590
002108af
002108afloc_2108af:
002108afcall fn_f4570
002108b4mov edi, 1
002108b9mov [rax], 75
002108bfcall caml_sys_error
002108c4
002108c4loc_2108c4:
002108c4mov esi, eax
002108c6lea rdi, [rip+0x1ec4d]
002108cdcall caml_plat_fatal_error
002108d2
002108d2loc_2108d2:
002108d2mov esi, eax
002108d4lea rdi, [rip+0x1ec4c]
002108dbcall caml_plat_fatal_error
002107b0
002108e0
002108e0caml_ml_pos_out_64:
002108e0push r14
002108e2push r13
002108e4push r12
002108e6push rbp
002108e7push rbx
002108e8sub rsp, 96
002108ecmov [rsp+8], rdi
002108f1mov rax, [0x28]
002108famov [rsp+88], rax
002108ffmov rax, [rip+0x656de]
00210906mov r12, [rax]
0021090alea rax, [rsp+16]
0021090fmov r13, [r12+160]
00210917mov [r12+160], rax
0021091fmov eax, 1
00210924movq x0, rax
00210929lea rax, [rsp+8]
0021092epunpcklqdq x0, x0
00210932mov [rsp+16], r13
00210937mov [rsp+40], rax
0021093cmovups [rsp+24], x0
00210941mov rbp, [rdi+8]
00210945lea r14, [rbp+40]
00210949mov rdi, r14
0021094ccall fn_f4780
00210951cmp eax, 16
00210954je 0x2109c0
00210956test eax, eax
00210958jne 0x2109dd
0021095amov [0xfffffffffffffff0], rbp
00210963mov rdi, r14
00210966mov rbx, [rbp+24]
0021096asub rbx, [rbp+112]
0021096eadd rbx, [rbp+8]
00210972call fn_f47c0
00210977test eax, eax
00210979jne 0x2109cf
0021097bmov [0xfffffffffffffff0], 0
00210988mov rdi, rbx
0021098bcall caml_copy_int64
00210990mov [r12+160], r13
00210998mov rdx, [rsp+88]
0021099dsub rdx, [0x28]
002109a6jne 0x2109ca
002109a8add rsp, 96
002109acpop rbx
002109adpop rbp
002109aepop r12
002109b0pop r13
002109b2pop r14
002109b4ret
002109b5db 0x5d
002109b6pop r14
002109b8ret
002109b9
002109b9 0f 1f 80 00 00 00 00 .......
002109c0
002109c0loc_2109c0:
002109c0mov rdi, r14
002109c3call caml_plat_lock_non_blocking_actual
002109c8jmp 0x21095e
002109ca
002109caloc_2109ca:
002109cacall fn_f4590
002109cf
002109cfloc_2109cf:
002109cfmov esi, eax
002109d1lea rdi, [rip+0x1eb42]
002109d8call caml_plat_fatal_error
002109dd
002109ddloc_2109dd:
002109ddmov esi, eax
002109dflea rdi, [rip+0x1eb41]
002109e6call caml_plat_fatal_error
002108e0
002108e0caml_ml_pos_out_64:
002108e0push r14
002108e2push r13
002108e4push r12
002108e6push rbp
002108e7push rbx
002108e8sub rsp, 96
002108ecmov [rsp+8], rdi
002108f1mov rax, [0x28]
002108famov [rsp+88], rax
002108ffmov rax, [rip+0x656de]
00210906mov r12, [rax]
0021090alea rax, [rsp+16]
0021090fmov r13, [r12+160]
00210917mov [r12+160], rax
0021091fmov eax, 1
00210924movq x0, rax
00210929lea rax, [rsp+8]
0021092epunpcklqdq x0, x0
00210932mov [rsp+16], r13
00210937mov [rsp+40], rax
0021093cmovups [rsp+24], x0
00210941mov rbp, [rdi+8]
00210945lea r14, [rbp+40]
00210949mov rdi, r14
0021094ccall fn_f4780
00210951cmp eax, 16
00210954je 0x2109c0
00210956test eax, eax
00210958jne 0x2109dd
0021095amov [0xfffffffffffffff0], rbp
00210963mov rdi, r14
00210966mov rbx, [rbp+24]
0021096asub rbx, [rbp+112]
0021096eadd rbx, [rbp+8]
00210972call fn_f47c0
00210977test eax, eax
00210979jne 0x2109cf
0021097bmov [0xfffffffffffffff0], 0
00210988mov rdi, rbx
0021098bcall caml_copy_int64
00210990mov [r12+160], r13
00210998mov rdx, [rsp+88]
0021099dsub rdx, [0x28]
002109a6jne 0x2109ca
002109a8add rsp, 96
002109acpop rbx
002109adpop rbp
002109aepop r12
002109b0pop r13
002109b2pop r14
002109b4ret
002109b5db 0x5d
002109b6pop r14
002109b8ret
002109b9
002109b9 0f 1f 80 00 00 00 00 .......
002109c0
002109c0loc_2109c0:
002109c0mov rdi, r14
002109c3call caml_plat_lock_non_blocking_actual
002109c8jmp 0x21095e
002109ca
002109caloc_2109ca:
002109cacall fn_f4590
002109cf
002109cfloc_2109cf:
002109cfmov esi, eax
002109d1lea rdi, [rip+0x1eb42]
002109d8call caml_plat_fatal_error
002109dd
002109ddloc_2109dd:
002109ddmov esi, eax
002109dflea rdi, [rip+0x1eb41]
002109e6call caml_plat_fatal_error
002108e0
002109eb
002109eb // align 0x10
002109eb // align 0x10
002109f0
002109f0caml_ml_input_char:
002109f0push r13
002109f2push r12
002109f4push rbp
002109f5push rbx
002109f6sub rsp, 104
002109famov [rsp+8], rdi
002109ffmov rax, [0x28]
00210a08mov [rsp+88], rax
00210a0dmov rax, [rip+0x655d0]
00210a14mov rbp, [rax]
00210a18lea rax, [rsp+16]
00210a1dmov r13, [rbp+160]
00210a24mov [rbp+160], rax
00210a2bmov eax, 1
00210a30movq x0, rax
00210a35lea rax, [rsp+8]
00210a3apunpcklqdq x0, x0
00210a3emov [rsp+16], r13
00210a43mov [rsp+40], rax
00210a48movups [rsp+24], x0
00210a4dmov rbx, [rdi+8]
00210a51lea r12, [rbx+40]
00210a55mov rdi, r12
00210a58call fn_f4780
00210a5dcmp eax, 16
00210a60je 0x210ad0
00210a62test eax, eax
00210a64jne 0x210b00
00210a6amov [0xfffffffffffffff0], rbx
00210a73mov rax, [rbx+24]
00210a77cmp rax, [rbx+32]
00210a7bjae 0x210ae0
00210a7dlea rdx, [rax+1]
00210a81mov [rbx+24], rdx
00210a85movzx ebx, [rax]
00210a88mov rdi, r12
00210a8bcall fn_f47c0
00210a90test eax, eax
00210a92jne 0x210af2
00210a94mov [0xfffffffffffffff0], 0
00210aa1lea rax, [rbx+rbx+1]
00210aa6mov [rbp+160], r13
00210aadmov rdx, [rsp+88]
00210ab2sub rdx, [0x28]
00210abbjne 0x210aed
00210abdadd rsp, 104
00210ac1pop rbx
00210ac2pop rbp
00210ac3pop r12
00210ac5pop r13
00210ac7ret
00210ac8db 0x5c
00210ac9pop r13
00210acbret
00210acc
00210acc 0f 1f 40 00 ..@.
00210ad0
00210ad0loc_210ad0:
00210ad0mov rdi, r12
00210ad3call caml_plat_lock_non_blocking_actual
00210ad8jmp 0x210a6e
00210ada
00210ada 66 0f 1f 44 00 00 f..D..
00210ae0
00210ae0loc_210ae0:
00210ae0mov rdi, rbx
00210ae3call caml_refill
00210ae8movzx ebx, al
00210aebjmp 0x210a8c
00210aed
00210aedloc_210aed:
00210aedcall fn_f4590
00210af2
00210af2loc_210af2:
00210af2mov esi, eax
00210af4lea rdi, [rip+0x1ea1f]
00210afbcall caml_plat_fatal_error
00210b00
00210b00loc_210b00:
00210b00mov esi, eax
00210b02lea rdi, [rip+0x1ea1e]
00210b09call caml_plat_fatal_error
002109f0
002109f0caml_ml_input_char:
002109f0push r13
002109f2push r12
002109f4push rbp
002109f5push rbx
002109f6sub rsp, 104
002109famov [rsp+8], rdi
002109ffmov rax, [0x28]
00210a08mov [rsp+88], rax
00210a0dmov rax, [rip+0x655d0]
00210a14mov rbp, [rax]
00210a18lea rax, [rsp+16]
00210a1dmov r13, [rbp+160]
00210a24mov [rbp+160], rax
00210a2bmov eax, 1
00210a30movq x0, rax
00210a35lea rax, [rsp+8]
00210a3apunpcklqdq x0, x0
00210a3emov [rsp+16], r13
00210a43mov [rsp+40], rax
00210a48movups [rsp+24], x0
00210a4dmov rbx, [rdi+8]
00210a51lea r12, [rbx+40]
00210a55mov rdi, r12
00210a58call fn_f4780
00210a5dcmp eax, 16
00210a60je 0x210ad0
00210a62test eax, eax
00210a64jne 0x210b00
00210a6amov [0xfffffffffffffff0], rbx
00210a73mov rax, [rbx+24]
00210a77cmp rax, [rbx+32]
00210a7bjae 0x210ae0
00210a7dlea rdx, [rax+1]
00210a81mov [rbx+24], rdx
00210a85movzx ebx, [rax]
00210a88mov rdi, r12
00210a8bcall fn_f47c0
00210a90test eax, eax
00210a92jne 0x210af2
00210a94mov [0xfffffffffffffff0], 0
00210aa1lea rax, [rbx+rbx+1]
00210aa6mov [rbp+160], r13
00210aadmov rdx, [rsp+88]
00210ab2sub rdx, [0x28]
00210abbjne 0x210aed
00210abdadd rsp, 104
00210ac1pop rbx
00210ac2pop rbp
00210ac3pop r12
00210ac5pop r13
00210ac7ret
00210ac8db 0x5c
00210ac9pop r13
00210acbret
00210acc
00210acc 0f 1f 40 00 ..@.
00210ad0
00210ad0loc_210ad0:
00210ad0mov rdi, r12
00210ad3call caml_plat_lock_non_blocking_actual
00210ad8jmp 0x210a6e
00210ada
00210ada 66 0f 1f 44 00 00 f..D..
00210ae0
00210ae0loc_210ae0:
00210ae0mov rdi, rbx
00210ae3call caml_refill
00210ae8movzx ebx, al
00210aebjmp 0x210a8c
00210aed
00210aedloc_210aed:
00210aedcall fn_f4590
00210af2
00210af2loc_210af2:
00210af2mov esi, eax
00210af4lea rdi, [rip+0x1ea1f]
00210afbcall caml_plat_fatal_error
00210b00
00210b00loc_210b00:
00210b00mov esi, eax
00210b02lea rdi, [rip+0x1ea1e]
00210b09call caml_plat_fatal_error
002109f0
00210b0e
00210b0e // align 0x10
00210b0e // align 0x10
00210b10
00210b10caml_ml_input_int:
00210b10push r13
00210b12push r12
00210b14push rbp
00210b15push rbx
00210b16sub rsp, 104
00210b1amov [rsp+8], rdi
00210b1fmov rax, [0x28]
00210b28mov [rsp+88], rax
00210b2dmov rax, [rip+0x654b0]
00210b34mov rbp, [rax]
00210b38lea rax, [rsp+16]
00210b3dmov r13, [rbp+160]
00210b44mov [rbp+160], rax
00210b4bmov eax, 1
00210b50movq x0, rax
00210b55lea rax, [rsp+8]
00210b5apunpcklqdq x0, x0
00210b5emov [rsp+16], r13
00210b63mov [rsp+40], rax
00210b68movups [rsp+24], x0
00210b6dmov rbx, [rdi+8]
00210b71lea r12, [rbx+40]
00210b75mov rdi, r12
00210b78call fn_f4780
00210b7dcmp eax, 16
00210b80je 0x210be0
00210b82test eax, eax
00210b84jne 0x210bfd
00210b86mov [0xfffffffffffffff0], rbx
00210b8fmov rdi, rbx
00210b92call caml_getword
00210b97mov rdi, r12
00210b9amovsxd rbx, eax
00210b9dcall fn_f47c0
00210ba2test eax, eax
00210ba4jne 0x210bef
00210ba6mov [0xfffffffffffffff0], 0
00210bb3lea rax, [rbx+rbx+1]
00210bb8mov [rbp+160], r13
00210bbfmov rdx, [rsp+88]
00210bc4sub rdx, [0x28]
00210bcdjne 0x210bea
00210bcfadd rsp, 104
00210bd3pop rbx
00210bd4pop rbp
00210bd5pop r12
00210bd7pop r13
00210bd9ret
00210bdadb 0x5c
00210bdbpop r13
00210bddret
00210bde
00210bde 66 90 f.
00210be0
00210be0loc_210be0:
00210be0mov rdi, r12
00210be3call caml_plat_lock_non_blocking_actual
00210be8jmp 0x210b8a
00210bea
00210bealoc_210bea:
00210beacall fn_f4590
00210bef
00210befloc_210bef:
00210befmov esi, eax
00210bf1lea rdi, [rip+0x1e922]
00210bf8call caml_plat_fatal_error
00210bfd
00210bfdloc_210bfd:
00210bfdmov esi, eax
00210bfflea rdi, [rip+0x1e921]
00210c06call caml_plat_fatal_error
00210b10
00210b10caml_ml_input_int:
00210b10push r13
00210b12push r12
00210b14push rbp
00210b15push rbx
00210b16sub rsp, 104
00210b1amov [rsp+8], rdi
00210b1fmov rax, [0x28]
00210b28mov [rsp+88], rax
00210b2dmov rax, [rip+0x654b0]
00210b34mov rbp, [rax]
00210b38lea rax, [rsp+16]
00210b3dmov r13, [rbp+160]
00210b44mov [rbp+160], rax
00210b4bmov eax, 1
00210b50movq x0, rax
00210b55lea rax, [rsp+8]
00210b5apunpcklqdq x0, x0
00210b5emov [rsp+16], r13
00210b63mov [rsp+40], rax
00210b68movups [rsp+24], x0
00210b6dmov rbx, [rdi+8]
00210b71lea r12, [rbx+40]
00210b75mov rdi, r12
00210b78call fn_f4780
00210b7dcmp eax, 16
00210b80je 0x210be0
00210b82test eax, eax
00210b84jne 0x210bfd
00210b86mov [0xfffffffffffffff0], rbx
00210b8fmov rdi, rbx
00210b92call caml_getword
00210b97mov rdi, r12
00210b9amovsxd rbx, eax
00210b9dcall fn_f47c0
00210ba2test eax, eax
00210ba4jne 0x210bef
00210ba6mov [0xfffffffffffffff0], 0
00210bb3lea rax, [rbx+rbx+1]
00210bb8mov [rbp+160], r13
00210bbfmov rdx, [rsp+88]
00210bc4sub rdx, [0x28]
00210bcdjne 0x210bea
00210bcfadd rsp, 104
00210bd3pop rbx
00210bd4pop rbp
00210bd5pop r12
00210bd7pop r13
00210bd9ret
00210bdadb 0x5c
00210bdbpop r13
00210bddret
00210bde
00210bde 66 90 f.
00210be0
00210be0loc_210be0:
00210be0mov rdi, r12
00210be3call caml_plat_lock_non_blocking_actual
00210be8jmp 0x210b8a
00210bea
00210bealoc_210bea:
00210beacall fn_f4590
00210bef
00210befloc_210bef:
00210befmov esi, eax
00210bf1lea rdi, [rip+0x1e922]
00210bf8call caml_plat_fatal_error
00210bfd
00210bfdloc_210bfd:
00210bfdmov esi, eax
00210bfflea rdi, [rip+0x1e921]
00210c06call caml_plat_fatal_error
00210b10
00210c0b
00210c0b // align 0x10
00210c0b // align 0x10
00210c10
00210c10caml_ml_input:
00210c10push r15
00210c12push r14
00210c14push r13
00210c16push r12
00210c18push rbp
00210c19push rbx
00210c1asub rsp, 136
00210c21movdqa x0, [rip+0x194c3]
00210c29mov [rsp+40], rdi
00210c2emov [rsp+32], rsi
00210c33mov [rsp+24], rdx
00210c38mov [rsp+16], rcx
00210c3dmov rax, [0x28]
00210c46mov [rsp+120], rax
00210c4bmov rax, [rip+0x65392]
00210c52mov rbp, [rax]
00210c56lea rax, [rsp+48]
00210c5bmovups [rsp+56], x0
00210c60mov r13, [rbp+160]
00210c67mov [rbp+160], rax
00210c6elea rax, [rsp+40]
00210c73movq x0, rax
00210c78lea rax, [rsp+32]
00210c7dmovq x1, rax
00210c82lea rax, [rsp+24]
00210c87mov [rsp+48], r13
00210c8cpunpcklqdq x0, x1
00210c90movups [rsp+72], x0
00210c95movq x0, rax
00210c9alea rax, [rsp+16]
00210c9fmovq x2, rax
00210ca4punpcklqdq x0, x2
00210ca8movups [rsp+88], x0
00210cadmov r12, [rdi+8]
00210cb1lea rax, [r12+40]
00210cb6mov rdi, rax
00210cb9mov [rsp+8], rax
00210cbecall fn_f4780
00210cc3cmp eax, 16
00210cc6je 0x210df0
00210ccctest eax, eax
00210ccejne 0x210e44
00210cd4mov [0xfffffffffffffff0], r12
00210cddjmp 0x210d22
00210cdfdb 0xff
00210ce0db 0xff
00210ce1jmp 0x210d22
00210ce3
00210ce3 0f 1f 44 00 00 ..D..
00210ce8
00210ce8loc_210ce8:
00210ce8test r15l, r15l
00210cebjg 0x210dd0
00210cf1mov rdx, [r12+112]
00210cf6mov ecx, [r12+16]
00210cfbmov esi, [r12+104]
00210d00mov edi, [r12]
00210d04sub ecx, edx
00210d06call caml_read_fd
00210d0bcmp eax, -1
00210d0ejne 0x210e00
00210d14call fn_f4570
00210d19cmp [rax], 4
00210d1cjne 0x210e3a
00210d22
00210d22loc_210d22:
00210d22mov rdi, r12
00210d25call fn_20e670
00210d2amov rax, [rsp+16]
00210d2fmov r14, [rsp+24]
00210d34mov edx, 0x7fffffff
00210d39mov rsi, [r12+24]
00210d3emov r15, [r12+32]
00210d43sar rax, 1
00210d46sar r14, 1
00210d49cmp rax, rdx
00210d4ccmovg rax, rdx
00210d50sub r15, rsi
00210d53mov ebx, eax
00210d55cmp eax, r15l
00210d58jg 0x210ce8
00210d5amov rdi, [rsp+32]
00210d5fmovsxd r15, eax
00210d62mov rdx, r15
00210d65add rdi, r14
00210d68call fn_f4520
00210d6dmov rax, [r12+24]
00210d72add rax, r15
00210d75
00210d75loc_210d75:
00210d75mov [r12+24], rax
00210d7amov rdi, [rsp+8]
00210d7fcall fn_f47c0
00210d84test eax, eax
00210d86jne 0x210e52
00210d8cmov [0xfffffffffffffff0], 0
00210d99movsxd rbx, ebx
00210d9cmov [rbp+160], r13
00210da3lea rax, [rbx+rbx+1]
00210da8mov rdx, [rsp+120]
00210dadsub rdx, [0x28]
00210db6jne 0x210e60
00210dbcadd rsp, 136
00210dc3pop rbx
00210dc4pop rbp
00210dc5pop r12
00210dc7pop r13
00210dc9pop r14
00210dcbpop r15
00210dcdret
00210dce
00210dce 66 90 f.
00210dd0
00210dd0loc_210dd0:
00210dd0mov rdi, [rsp+32]
00210dd5movsxd rbx, r15l
00210dd8mov rdx, rbx
00210ddbadd rdi, r14
00210ddecall fn_f4520
00210de3mov rax, [r12+24]
00210de8add rax, rbx
00210debmov ebx, r15l
00210deejmp 0x210d75
00210df0
00210df0loc_210df0:
00210df0mov rdi, [rsp+8]
00210df5call caml_plat_lock_non_blocking_actual
00210dfajmp 0x210cd8
00210dff
00210dff 90 .
00210e00
00210e00loc_210e00:
00210e00mov rsi, [r12+112]
00210e05movsxd rdx, eax
00210e08add [r12+8], rdx
00210e0dmov rdi, [rsp+32]
00210e12add rdx, rsi
00210e15cmp ebx, eax
00210e17cmovg ebx, eax
00210e1amov [r12+32], rdx
00210e1fadd rdi, r14
00210e22movsxd r15, ebx
00210e25mov rdx, r15
00210e28call fn_f4520
00210e2dmov rax, [r12+112]
00210e32add rax, r15
00210e35jmp 0x210d75
00210e3a
00210e3aloc_210e3a:
00210e3amov edi, 1
00210e3fcall caml_sys_io_error
00210e44
00210e44loc_210e44:
00210e44mov esi, eax
00210e46lea rdi, [rip+0x1e6da]
00210e4dcall caml_plat_fatal_error
00210e52
00210e52loc_210e52:
00210e52mov esi, eax
00210e54lea rdi, [rip+0x1e6bf]
00210e5bcall caml_plat_fatal_error
00210e60
00210e60loc_210e60:
00210e60call fn_f4590
00210c10
00210c10caml_ml_input:
00210c10push r15
00210c12push r14
00210c14push r13
00210c16push r12
00210c18push rbp
00210c19push rbx
00210c1asub rsp, 136
00210c21movdqa x0, [rip+0x194c3]
00210c29mov [rsp+40], rdi
00210c2emov [rsp+32], rsi
00210c33mov [rsp+24], rdx
00210c38mov [rsp+16], rcx
00210c3dmov rax, [0x28]
00210c46mov [rsp+120], rax
00210c4bmov rax, [rip+0x65392]
00210c52mov rbp, [rax]
00210c56lea rax, [rsp+48]
00210c5bmovups [rsp+56], x0
00210c60mov r13, [rbp+160]
00210c67mov [rbp+160], rax
00210c6elea rax, [rsp+40]
00210c73movq x0, rax
00210c78lea rax, [rsp+32]
00210c7dmovq x1, rax
00210c82lea rax, [rsp+24]
00210c87mov [rsp+48], r13
00210c8cpunpcklqdq x0, x1
00210c90movups [rsp+72], x0
00210c95movq x0, rax
00210c9alea rax, [rsp+16]
00210c9fmovq x2, rax
00210ca4punpcklqdq x0, x2
00210ca8movups [rsp+88], x0
00210cadmov r12, [rdi+8]
00210cb1lea rax, [r12+40]
00210cb6mov rdi, rax
00210cb9mov [rsp+8], rax
00210cbecall fn_f4780
00210cc3cmp eax, 16
00210cc6je 0x210df0
00210ccctest eax, eax
00210ccejne 0x210e44
00210cd4mov [0xfffffffffffffff0], r12
00210cddjmp 0x210d22
00210cdfdb 0xff
00210ce0db 0xff
00210ce1jmp 0x210d22
00210ce3
00210ce3 0f 1f 44 00 00 ..D..
00210ce8
00210ce8loc_210ce8:
00210ce8test r15l, r15l
00210cebjg 0x210dd0
00210cf1mov rdx, [r12+112]
00210cf6mov ecx, [r12+16]
00210cfbmov esi, [r12+104]
00210d00mov edi, [r12]
00210d04sub ecx, edx
00210d06call caml_read_fd
00210d0bcmp eax, -1
00210d0ejne 0x210e00
00210d14call fn_f4570
00210d19cmp [rax], 4
00210d1cjne 0x210e3a
00210d22
00210d22loc_210d22:
00210d22mov rdi, r12
00210d25call fn_20e670
00210d2amov rax, [rsp+16]
00210d2fmov r14, [rsp+24]
00210d34mov edx, 0x7fffffff
00210d39mov rsi, [r12+24]
00210d3emov r15, [r12+32]
00210d43sar rax, 1
00210d46sar r14, 1
00210d49cmp rax, rdx
00210d4ccmovg rax, rdx
00210d50sub r15, rsi
00210d53mov ebx, eax
00210d55cmp eax, r15l
00210d58jg 0x210ce8
00210d5amov rdi, [rsp+32]
00210d5fmovsxd r15, eax
00210d62mov rdx, r15
00210d65add rdi, r14
00210d68call fn_f4520
00210d6dmov rax, [r12+24]
00210d72add rax, r15
00210d75
00210d75loc_210d75:
00210d75mov [r12+24], rax
00210d7amov rdi, [rsp+8]
00210d7fcall fn_f47c0
00210d84test eax, eax
00210d86jne 0x210e52
00210d8cmov [0xfffffffffffffff0], 0
00210d99movsxd rbx, ebx
00210d9cmov [rbp+160], r13
00210da3lea rax, [rbx+rbx+1]
00210da8mov rdx, [rsp+120]
00210dadsub rdx, [0x28]
00210db6jne 0x210e60
00210dbcadd rsp, 136
00210dc3pop rbx
00210dc4pop rbp
00210dc5pop r12
00210dc7pop r13
00210dc9pop r14
00210dcbpop r15
00210dcdret
00210dce
00210dce 66 90 f.
00210dd0
00210dd0loc_210dd0:
00210dd0mov rdi, [rsp+32]
00210dd5movsxd rbx, r15l
00210dd8mov rdx, rbx
00210ddbadd rdi, r14
00210ddecall fn_f4520
00210de3mov rax, [r12+24]
00210de8add rax, rbx
00210debmov ebx, r15l
00210deejmp 0x210d75
00210df0
00210df0loc_210df0:
00210df0mov rdi, [rsp+8]
00210df5call caml_plat_lock_non_blocking_actual
00210dfajmp 0x210cd8
00210dff
00210dff 90 .
00210e00
00210e00loc_210e00:
00210e00mov rsi, [r12+112]
00210e05movsxd rdx, eax
00210e08add [r12+8], rdx
00210e0dmov rdi, [rsp+32]
00210e12add rdx, rsi
00210e15cmp ebx, eax
00210e17cmovg ebx, eax
00210e1amov [r12+32], rdx
00210e1fadd rdi, r14
00210e22movsxd r15, ebx
00210e25mov rdx, r15
00210e28call fn_f4520
00210e2dmov rax, [r12+112]
00210e32add rax, r15
00210e35jmp 0x210d75
00210e3a
00210e3aloc_210e3a:
00210e3amov edi, 1
00210e3fcall caml_sys_io_error
00210e44
00210e44loc_210e44:
00210e44mov esi, eax
00210e46lea rdi, [rip+0x1e6da]
00210e4dcall caml_plat_fatal_error
00210e52
00210e52loc_210e52:
00210e52mov esi, eax
00210e54lea rdi, [rip+0x1e6bf]
00210e5bcall caml_plat_fatal_error
00210e60
00210e60loc_210e60:
00210e60call fn_f4590
00210c10
00210e65
00210e65 // align 0x10
00210e65 // align 0x10
00210e70
00210e70caml_ml_input_bigarray:
00210e70push r15
00210e72push r14
00210e74push r13
00210e76push r12
00210e78mov r12, rcx
00210e7bpush rbp
00210e7csar r12, 1
00210e7fpush rbx
00210e80mov rbx, rdx
00210e83sar rbx, 1
00210e86sub rsp, 120
00210e8amovdqa x0, [rip+0x1925a]
00210e92mov [rsp+24], rdi
00210e97movq x2, rsp
00210e9cmov [rsp+16], rsi
00210ea1mov [rsp+8], rdx
00210ea6mov [rsp], rcx
00210eaamov rax, [0x28]
00210eb3mov [rsp+104], rax
00210eb8mov rax, [rip+0x65125]
00210ebfmov rbp, [rax]
00210ec3lea rax, [rsp+32]
00210ec8movups [rsp+40], x0
00210ecdmov r14, [rbp+160]
00210ed4mov [rbp+160], rax
00210edblea rax, [rsp+24]
00210ee0movq x0, rax
00210ee5lea rax, [rsp+16]
00210eeamovq x1, rax
00210eeflea rax, [rsp+8]
00210ef4mov [rsp+32], r14
00210ef9punpcklqdq x0, x1
00210efdmovups [rsp+56], x0
00210f02movq x0, rax
00210f07punpcklqdq x0, x2
00210f0bmovups [rsp+72], x0
00210f10mov r15, [rdi+8]
00210f14lea r13, [r15+40]
00210f18mov rdi, r13
00210f1bcall fn_f4780
00210f20cmp eax, 16
00210f23je 0x210fa0
00210f25test eax, eax
00210f27jne 0x210fbd
00210f2dmov [0xfffffffffffffff0], r15
00210f36mov rdi, r15
00210f39mov rdx, r12
00210f3cmov rax, [rsp+16]
00210f41mov rsi, [rax+8]
00210f45add rsi, rbx
00210f48call caml_getblock
00210f4dmov rdi, r13
00210f50movsxd rbx, eax
00210f53call fn_f47c0
00210f58test eax, eax
00210f5ajne 0x210faf
00210f5cmov [0xfffffffffffffff0], 0
00210f69lea rax, [rbx+rbx+1]
00210f6emov [rbp+160], r14
00210f75mov rdx, [rsp+104]
00210f7asub rdx, [0x28]
00210f83jne 0x210faa
00210f85add rsp, 120
00210f89pop rbx
00210f8apop rbp
00210f8bpop r12
00210f8dpop r13
00210f8fpop r14
00210f91pop r15
00210f93ret
00210f94db 0x5e
00210f95pop r15
00210f97ret
00210f98
00210f98 0f 1f 84 00 00 00 00 00 ........
00210fa0
00210fa0loc_210fa0:
00210fa0mov rdi, r13
00210fa3call caml_plat_lock_non_blocking_actual
00210fa8jmp 0x210f31
00210faa
00210faaloc_210faa:
00210faacall fn_f4590
00210faf
00210fafloc_210faf:
00210fafmov esi, eax
00210fb1lea rdi, [rip+0x1e562]
00210fb8call caml_plat_fatal_error
00210fbd
00210fbdloc_210fbd:
00210fbdmov esi, eax
00210fbflea rdi, [rip+0x1e561]
00210fc6call caml_plat_fatal_error
00210e70
00210e70caml_ml_input_bigarray:
00210e70push r15
00210e72push r14
00210e74push r13
00210e76push r12
00210e78mov r12, rcx
00210e7bpush rbp
00210e7csar r12, 1
00210e7fpush rbx
00210e80mov rbx, rdx
00210e83sar rbx, 1
00210e86sub rsp, 120
00210e8amovdqa x0, [rip+0x1925a]
00210e92mov [rsp+24], rdi
00210e97movq x2, rsp
00210e9cmov [rsp+16], rsi
00210ea1mov [rsp+8], rdx
00210ea6mov [rsp], rcx
00210eaamov rax, [0x28]
00210eb3mov [rsp+104], rax
00210eb8mov rax, [rip+0x65125]
00210ebfmov rbp, [rax]
00210ec3lea rax, [rsp+32]
00210ec8movups [rsp+40], x0
00210ecdmov r14, [rbp+160]
00210ed4mov [rbp+160], rax
00210edblea rax, [rsp+24]
00210ee0movq x0, rax
00210ee5lea rax, [rsp+16]
00210eeamovq x1, rax
00210eeflea rax, [rsp+8]
00210ef4mov [rsp+32], r14
00210ef9punpcklqdq x0, x1
00210efdmovups [rsp+56], x0
00210f02movq x0, rax
00210f07punpcklqdq x0, x2
00210f0bmovups [rsp+72], x0
00210f10mov r15, [rdi+8]
00210f14lea r13, [r15+40]
00210f18mov rdi, r13
00210f1bcall fn_f4780
00210f20cmp eax, 16
00210f23je 0x210fa0
00210f25test eax, eax
00210f27jne 0x210fbd
00210f2dmov [0xfffffffffffffff0], r15
00210f36mov rdi, r15
00210f39mov rdx, r12
00210f3cmov rax, [rsp+16]
00210f41mov rsi, [rax+8]
00210f45add rsi, rbx
00210f48call caml_getblock
00210f4dmov rdi, r13
00210f50movsxd rbx, eax
00210f53call fn_f47c0
00210f58test eax, eax
00210f5ajne 0x210faf
00210f5cmov [0xfffffffffffffff0], 0
00210f69lea rax, [rbx+rbx+1]
00210f6emov [rbp+160], r14
00210f75mov rdx, [rsp+104]
00210f7asub rdx, [0x28]
00210f83jne 0x210faa
00210f85add rsp, 120
00210f89pop rbx
00210f8apop rbp
00210f8bpop r12
00210f8dpop r13
00210f8fpop r14
00210f91pop r15
00210f93ret
00210f94db 0x5e
00210f95pop r15
00210f97ret
00210f98
00210f98 0f 1f 84 00 00 00 00 00 ........
00210fa0
00210fa0loc_210fa0:
00210fa0mov rdi, r13
00210fa3call caml_plat_lock_non_blocking_actual
00210fa8jmp 0x210f31
00210faa
00210faaloc_210faa:
00210faacall fn_f4590
00210faf
00210fafloc_210faf:
00210fafmov esi, eax
00210fb1lea rdi, [rip+0x1e562]
00210fb8call caml_plat_fatal_error
00210fbd
00210fbdloc_210fbd:
00210fbdmov esi, eax
00210fbflea rdi, [rip+0x1e561]
00210fc6call caml_plat_fatal_error
00210e70
00210fcb
00210fcb // align 0x10
00210fcb // align 0x10
00210fd0
00210fd0caml_ml_seek_in:
00210fd0push r13
00210fd2push r12
00210fd4push rbp
00210fd5push rbx
00210fd6sub rsp, 104
00210fdamovdqa x0, [rip+0x190ea]
00210fe2mov [rsp+8], rdi
00210fe7movq x1, rsp
00210fecmov [rsp], rsi
00210ff0mov rax, [0x28]
00210ff9mov [rsp+88], rax
00210ffemov rax, [rip+0x64fdf]
00211005mov rbx, [rax]
00211009lea rax, [rsp+16]
0021100emovups [rsp+24], x0
00211013mov rbp, [rbx+160]
0021101amov [rbx+160], rax
00211021lea rax, [rsp+8]
00211026movq x0, rax
0021102bpunpcklqdq x0, x1
0021102fmov [rsp+16], rbp
00211034movups [rsp+40], x0
00211039mov r12, [rdi+8]
0021103dlea r13, [r12+40]
00211042mov rdi, r13
00211045call fn_f4780
0021104acmp eax, 16
0021104dje 0x2110b0
0021104ftest eax, eax
00211051jne 0x2110cd
00211053mov [0xfffffffffffffff0], r12
0021105cmov rsi, [rsp]
00211060mov rdi, r12
00211063sar rsi, 1
00211066call caml_seek_in
0021106bmov rdi, r13
0021106ecall fn_f47c0
00211073test eax, eax
00211075jne 0x2110bf
00211077mov [0xfffffffffffffff0], 0
00211084mov [rbx+160], rbp
0021108bmov rax, [rsp+88]
00211090sub rax, [0x28]
00211099jne 0x2110ba
0021109badd rsp, 104
0021109fmov eax, 1
002110a4pop rbx
002110a5pop rbp
002110a6pop r12
002110a8pop r13
002110aaret
002110abdb 0x5c
002110acpop r13
002110aeret
002110af
002110af 90 .
002110b0
002110b0loc_2110b0:
002110b0mov rdi, r13
002110b3call caml_plat_lock_non_blocking_actual
002110b8jmp 0x211057
002110ba
002110baloc_2110ba:
002110bacall fn_f4590
002110bf
002110bfloc_2110bf:
002110bfmov esi, eax
002110c1lea rdi, [rip+0x1e452]
002110c8call caml_plat_fatal_error
002110cd
002110cdloc_2110cd:
002110cdmov esi, eax
002110cflea rdi, [rip+0x1e451]
002110d6call caml_plat_fatal_error
00210fd0
00210fd0caml_ml_seek_in:
00210fd0push r13
00210fd2push r12
00210fd4push rbp
00210fd5push rbx
00210fd6sub rsp, 104
00210fdamovdqa x0, [rip+0x190ea]
00210fe2mov [rsp+8], rdi
00210fe7movq x1, rsp
00210fecmov [rsp], rsi
00210ff0mov rax, [0x28]
00210ff9mov [rsp+88], rax
00210ffemov rax, [rip+0x64fdf]
00211005mov rbx, [rax]
00211009lea rax, [rsp+16]
0021100emovups [rsp+24], x0
00211013mov rbp, [rbx+160]
0021101amov [rbx+160], rax
00211021lea rax, [rsp+8]
00211026movq x0, rax
0021102bpunpcklqdq x0, x1
0021102fmov [rsp+16], rbp
00211034movups [rsp+40], x0
00211039mov r12, [rdi+8]
0021103dlea r13, [r12+40]
00211042mov rdi, r13
00211045call fn_f4780
0021104acmp eax, 16
0021104dje 0x2110b0
0021104ftest eax, eax
00211051jne 0x2110cd
00211053mov [0xfffffffffffffff0], r12
0021105cmov rsi, [rsp]
00211060mov rdi, r12
00211063sar rsi, 1
00211066call caml_seek_in
0021106bmov rdi, r13
0021106ecall fn_f47c0
00211073test eax, eax
00211075jne 0x2110bf
00211077mov [0xfffffffffffffff0], 0
00211084mov [rbx+160], rbp
0021108bmov rax, [rsp+88]
00211090sub rax, [0x28]
00211099jne 0x2110ba
0021109badd rsp, 104
0021109fmov eax, 1
002110a4pop rbx
002110a5pop rbp
002110a6pop r12
002110a8pop r13
002110aaret
002110abdb 0x5c
002110acpop r13
002110aeret
002110af
002110af 90 .
002110b0
002110b0loc_2110b0:
002110b0mov rdi, r13
002110b3call caml_plat_lock_non_blocking_actual
002110b8jmp 0x211057
002110ba
002110baloc_2110ba:
002110bacall fn_f4590
002110bf
002110bfloc_2110bf:
002110bfmov esi, eax
002110c1lea rdi, [rip+0x1e452]
002110c8call caml_plat_fatal_error
002110cd
002110cdloc_2110cd:
002110cdmov esi, eax
002110cflea rdi, [rip+0x1e451]
002110d6call caml_plat_fatal_error
00210fd0
002110db
002110db // align 0x10
002110db // align 0x10
002110e0
002110e0caml_ml_seek_in_64:
002110e0push r13
002110e2push r12
002110e4push rbp
002110e5push rbx
002110e6sub rsp, 104
002110eamovdqa x0, [rip+0x18fda]
002110f2mov [rsp+8], rdi
002110f7movq x1, rsp
002110fcmov [rsp], rsi
00211100mov rax, [0x28]
00211109mov [rsp+88], rax
0021110emov rax, [rip+0x64ecf]
00211115mov rbx, [rax]
00211119lea rax, [rsp+16]
0021111emovups [rsp+24], x0
00211123mov rbp, [rbx+160]
0021112amov [rbx+160], rax
00211131lea rax, [rsp+8]
00211136movq x0, rax
0021113bpunpcklqdq x0, x1
0021113fmov [rsp+16], rbp
00211144movups [rsp+40], x0
00211149mov r12, [rdi+8]
0021114dlea r13, [r12+40]
00211152mov rdi, r13
00211155call fn_f4780
0021115acmp eax, 16
0021115dje 0x2111c0
0021115ftest eax, eax
00211161jne 0x2111dd
00211163mov [0xfffffffffffffff0], r12
0021116cmov rax, [rsp]
00211170mov rdi, r12
00211173mov rsi, [rax+8]
00211177call caml_seek_in
0021117cmov rdi, r13
0021117fcall fn_f47c0
00211184test eax, eax
00211186jne 0x2111cf
00211188mov [0xfffffffffffffff0], 0
00211195mov [rbx+160], rbp
0021119cmov rax, [rsp+88]
002111a1sub rax, [0x28]
002111aajne 0x2111ca
002111acadd rsp, 104
002111b0mov eax, 1
002111b5pop rbx
002111b6pop rbp
002111b7pop r12
002111b9pop r13
002111bbret
002111bcmov rdi, r13
002111bfcall caml_plat_lock_non_blocking_actual
002111c4jmp 0x211167
002111c6call fn_f4590
002111cbmov esi, eax
002111cdlea rdi, [rip+0x1e342]
002111d4call caml_plat_fatal_error
002111d9mov esi, eax
002111dblea rdi, [rip+0x1e341]
002111e2call caml_plat_fatal_error
002111e7db 0xe5
002111e8cmpsd [rdi], [rsi]
002111e9add [rax], al
002110e0
002110e0caml_ml_seek_in_64:
002110e0push r13
002110e2push r12
002110e4push rbp
002110e5push rbx
002110e6sub rsp, 104
002110eamovdqa x0, [rip+0x18fda]
002110f2mov [rsp+8], rdi
002110f7movq x1, rsp
002110fcmov [rsp], rsi
00211100mov rax, [0x28]
00211109mov [rsp+88], rax
0021110emov rax, [rip+0x64ecf]
00211115mov rbx, [rax]
00211119lea rax, [rsp+16]
0021111emovups [rsp+24], x0
00211123mov rbp, [rbx+160]
0021112amov [rbx+160], rax
00211131lea rax, [rsp+8]
00211136movq x0, rax
0021113bpunpcklqdq x0, x1
0021113fmov [rsp+16], rbp
00211144movups [rsp+40], x0
00211149mov r12, [rdi+8]
0021114dlea r13, [r12+40]
00211152mov rdi, r13
00211155call fn_f4780
0021115acmp eax, 16
0021115dje 0x2111c0
0021115ftest eax, eax
00211161jne 0x2111dd
00211163mov [0xfffffffffffffff0], r12
0021116cmov rax, [rsp]
00211170mov rdi, r12
00211173mov rsi, [rax+8]
00211177call caml_seek_in
0021117cmov rdi, r13
0021117fcall fn_f47c0
00211184test eax, eax
00211186jne 0x2111cf
00211188mov [0xfffffffffffffff0], 0
00211195mov [rbx+160], rbp
0021119cmov rax, [rsp+88]
002111a1sub rax, [0x28]
002111aajne 0x2111ca
002111acadd rsp, 104
002111b0mov eax, 1
002111b5pop rbx
002111b6pop rbp
002111b7pop r12
002111b9pop r13
002111bbret
002111bcmov rdi, r13
002111bfcall caml_plat_lock_non_blocking_actual
002111c4jmp 0x211167
002111c6call fn_f4590
002111cbmov esi, eax
002111cdlea rdi, [rip+0x1e342]
002111d4call caml_plat_fatal_error
002111d9mov esi, eax
002111dblea rdi, [rip+0x1e341]
002111e2call caml_plat_fatal_error
002111e7db 0xe5
002111e8cmpsd [rdi], [rsi]
002111e9add [rax], al
002110e0
002111eb
002111eb // align 0x10
002111eb // align 0x10
002111f0
002111f0caml_ml_pos_in:
002111f0push r13
002111f2push r12
002111f4push rbp
002111f5push rbx
002111f6sub rsp, 104
002111famov [rsp+8], rdi
002111ffmov rax, [0x28]
00211208mov [rsp+88], rax
0021120dmov rax, [rip+0x64dd0]
00211214mov rbp, [rax]
00211218lea rax, [rsp+16]
0021121dmov r12, [rbp+160]
00211224mov [rbp+160], rax
0021122bmov eax, 1
00211230movq x0, rax
00211235lea rax, [rsp+8]
0021123apunpcklqdq x0, x0
0021123emov [rsp+16], r12
00211243mov [rsp+40], rax
00211248movups [rsp+24], x0
0021124dmov rbx, [rdi+8]
00211251lea r13, [rbx+40]
00211255mov rdi, r13
00211258call fn_f4780
0021125dcmp eax, 16
00211260je 0x2112d8
00211262test eax, eax
00211264jne 0x21130a
0021126amov [0xfffffffffffffff0], rbx
00211273mov rax, [rbx+32]
00211277mov rdi, r13
0021127asub rax, [rbx+24]
0021127emov rbx, [rbx+8]
00211282sub rbx, rax
00211285call fn_f47c0
0021128atest eax, eax
0021128cjne 0x2112fc
0021128emov rax, 0x3fffffffffffffff
00211298mov [0xfffffffffffffff0], 0
002112a5cmp rbx, rax
002112a8jg 0x2112e7
002112aamov [rbp+160], r12
002112b1lea rax, [rbx+rbx+1]
002112b6mov rdx, [rsp+88]
002112bbsub rdx, [0x28]
002112c4jne 0x2112e2
002112c6add rsp, 104
002112capop rbx
002112cbpop rbp
002112ccpop r12
002112cepop r13
002112d0ret
002112d1db 0x5c
002112d2pop r13
002112d4ret
002112d5
002112d5 0f 1f 00 ...
002112d8
002112d8loc_2112d8:
002112d8mov rdi, r13
002112dbcall caml_plat_lock_non_blocking_actual
002112e0jmp 0x21126e
002112e2
002112e2loc_2112e2:
002112e2call fn_f4590
002112e7
002112e7loc_2112e7:
002112e7call fn_f4570
002112ecmov edi, 1
002112f1mov [rax], 75
002112f7call caml_sys_error
002112fc
002112fcloc_2112fc:
002112fcmov esi, eax
002112felea rdi, [rip+0x1e215]
00211305call caml_plat_fatal_error
0021130a
0021130aloc_21130a:
0021130amov esi, eax
0021130clea rdi, [rip+0x1e214]
00211313call caml_plat_fatal_error
002111f0
002111f0caml_ml_pos_in:
002111f0push r13
002111f2push r12
002111f4push rbp
002111f5push rbx
002111f6sub rsp, 104
002111famov [rsp+8], rdi
002111ffmov rax, [0x28]
00211208mov [rsp+88], rax
0021120dmov rax, [rip+0x64dd0]
00211214mov rbp, [rax]
00211218lea rax, [rsp+16]
0021121dmov r12, [rbp+160]
00211224mov [rbp+160], rax
0021122bmov eax, 1
00211230movq x0, rax
00211235lea rax, [rsp+8]
0021123apunpcklqdq x0, x0
0021123emov [rsp+16], r12
00211243mov [rsp+40], rax
00211248movups [rsp+24], x0
0021124dmov rbx, [rdi+8]
00211251lea r13, [rbx+40]
00211255mov rdi, r13
00211258call fn_f4780
0021125dcmp eax, 16
00211260je 0x2112d8
00211262test eax, eax
00211264jne 0x21130a
0021126amov [0xfffffffffffffff0], rbx
00211273mov rax, [rbx+32]
00211277mov rdi, r13
0021127asub rax, [rbx+24]
0021127emov rbx, [rbx+8]
00211282sub rbx, rax
00211285call fn_f47c0
0021128atest eax, eax
0021128cjne 0x2112fc
0021128emov rax, 0x3fffffffffffffff
00211298mov [0xfffffffffffffff0], 0
002112a5cmp rbx, rax
002112a8jg 0x2112e7
002112aamov [rbp+160], r12
002112b1lea rax, [rbx+rbx+1]
002112b6mov rdx, [rsp+88]
002112bbsub rdx, [0x28]
002112c4jne 0x2112e2
002112c6add rsp, 104
002112capop rbx
002112cbpop rbp
002112ccpop r12
002112cepop r13
002112d0ret
002112d1db 0x5c
002112d2pop r13
002112d4ret
002112d5
002112d5 0f 1f 00 ...
002112d8
002112d8loc_2112d8:
002112d8mov rdi, r13
002112dbcall caml_plat_lock_non_blocking_actual
002112e0jmp 0x21126e
002112e2
002112e2loc_2112e2:
002112e2call fn_f4590
002112e7
002112e7loc_2112e7:
002112e7call fn_f4570
002112ecmov edi, 1
002112f1mov [rax], 75
002112f7call caml_sys_error
002112fc
002112fcloc_2112fc:
002112fcmov esi, eax
002112felea rdi, [rip+0x1e215]
00211305call caml_plat_fatal_error
0021130a
0021130aloc_21130a:
0021130amov esi, eax
0021130clea rdi, [rip+0x1e214]
00211313call caml_plat_fatal_error
002111f0
00211318
00211318 // align 0x10
00211318 // align 0x10
00211320
00211320caml_ml_pos_in_64:
00211320push r13
00211322push r12
00211324push rbp
00211325push rbx
00211326sub rsp, 104
0021132amov [rsp+8], rdi
0021132fmov rax, [0x28]
00211338mov [rsp+88], rax
0021133dmov rax, [rip+0x64ca0]
00211344mov rbp, [rax]
00211348lea rax, [rsp+16]
0021134dmov r12, [rbp+160]
00211354mov [rbp+160], rax
0021135bmov eax, 1
00211360movq x0, rax
00211365lea rax, [rsp+8]
0021136apunpcklqdq x0, x0
0021136emov [rsp+16], r12
00211373mov [rsp+40], rax
00211378movups [rsp+24], x0
0021137dmov rbx, [rdi+8]
00211381lea r13, [rbx+40]
00211385mov rdi, r13
00211388call fn_f4780
0021138dcmp eax, 16
00211390je 0x2113f8
00211392test eax, eax
00211394jne 0x211415
00211396mov [0xfffffffffffffff0], rbx
0021139fmov rax, [rbx+32]
002113a3mov rdi, r13
002113a6sub rax, [rbx+24]
002113aamov rbx, [rbx+8]
002113aesub rbx, rax
002113b1call fn_f47c0
002113b6test eax, eax
002113b8jne 0x211407
002113bamov [0xfffffffffffffff0], 0
002113c7mov rdi, rbx
002113cacall caml_copy_int64
002113cfmov [rbp+160], r12
002113d6mov rdx, [rsp+88]
002113dbsub rdx, [0x28]
002113e4jne 0x211402
002113e6add rsp, 104
002113eapop rbx
002113ebpop rbp
002113ecpop r12
002113eepop r13
002113f0ret
002113f1db 0x5c
002113f2pop r13
002113f4ret
002113f5
002113f5 0f 1f 00 ...
002113f8
002113f8loc_2113f8:
002113f8mov rdi, r13
002113fbcall caml_plat_lock_non_blocking_actual
00211400jmp 0x21139a
00211402
00211402loc_211402:
00211402call fn_f4590
00211407
00211407loc_211407:
00211407mov esi, eax
00211409lea rdi, [rip+0x1e10a]
00211410call caml_plat_fatal_error
00211415
00211415loc_211415:
00211415mov esi, eax
00211417lea rdi, [rip+0x1e109]
0021141ecall caml_plat_fatal_error
00211320
00211320caml_ml_pos_in_64:
00211320push r13
00211322push r12
00211324push rbp
00211325push rbx
00211326sub rsp, 104
0021132amov [rsp+8], rdi
0021132fmov rax, [0x28]
00211338mov [rsp+88], rax
0021133dmov rax, [rip+0x64ca0]
00211344mov rbp, [rax]
00211348lea rax, [rsp+16]
0021134dmov r12, [rbp+160]
00211354mov [rbp+160], rax
0021135bmov eax, 1
00211360movq x0, rax
00211365lea rax, [rsp+8]
0021136apunpcklqdq x0, x0
0021136emov [rsp+16], r12
00211373mov [rsp+40], rax
00211378movups [rsp+24], x0
0021137dmov rbx, [rdi+8]
00211381lea r13, [rbx+40]
00211385mov rdi, r13
00211388call fn_f4780
0021138dcmp eax, 16
00211390je 0x2113f8
00211392test eax, eax
00211394jne 0x211415
00211396mov [0xfffffffffffffff0], rbx
0021139fmov rax, [rbx+32]
002113a3mov rdi, r13
002113a6sub rax, [rbx+24]
002113aamov rbx, [rbx+8]
002113aesub rbx, rax
002113b1call fn_f47c0
002113b6test eax, eax
002113b8jne 0x211407
002113bamov [0xfffffffffffffff0], 0
002113c7mov rdi, rbx
002113cacall caml_copy_int64
002113cfmov [rbp+160], r12
002113d6mov rdx, [rsp+88]
002113dbsub rdx, [0x28]
002113e4jne 0x211402
002113e6add rsp, 104
002113eapop rbx
002113ebpop rbp
002113ecpop r12
002113eepop r13
002113f0ret
002113f1db 0x5c
002113f2pop r13
002113f4ret
002113f5
002113f5 0f 1f 00 ...
002113f8
002113f8loc_2113f8:
002113f8mov rdi, r13
002113fbcall caml_plat_lock_non_blocking_actual
00211400jmp 0x21139a
00211402
00211402loc_211402:
00211402call fn_f4590
00211407
00211407loc_211407:
00211407mov esi, eax
00211409lea rdi, [rip+0x1e10a]
00211410call caml_plat_fatal_error
00211415
00211415loc_211415:
00211415mov esi, eax
00211417lea rdi, [rip+0x1e109]
0021141ecall caml_plat_fatal_error
00211320
00211423
00211423 // align 0x10
00211423 // align 0x10
00211430
00211430caml_ml_input_scan_line:
00211430push r13
00211432push r12
00211434push rbp
00211435push rbx
00211436sub rsp, 104
0021143amov [rsp+8], rdi
0021143fmov rax, [0x28]
00211448mov [rsp+88], rax
0021144dmov rax, [rip+0x64b90]
00211454mov rbx, [rax]
00211458lea rax, [rsp+16]
0021145dmov rbp, [rbx+160]
00211464mov [rbx+160], rax
0021146bmov eax, 1
00211470movq x0, rax
00211475lea rax, [rsp+8]
0021147apunpcklqdq x0, x0
0021147emov [rsp+16], rbp
00211483mov [rsp+40], rax
00211488movups [rsp+24], x0
0021148dmov r12, [rdi+8]
00211491lea r13, [r12+40]
00211496mov rdi, r13
00211499call fn_f4780
0021149ecmp eax, 16
002114a1je 0x211500
002114a3test eax, eax
002114a5jne 0x21151d
002114a7mov [0xfffffffffffffff0], r12
002114b0mov rdi, r12
002114b3call caml_input_scan_line
002114b8mov rdi, r13
002114bbmov r12, rax
002114becall fn_f47c0
002114c3test eax, eax
002114c5jne 0x21150f
002114c7mov [0xfffffffffffffff0], 0
002114d4lea rax, [r12+r12+1]
002114d9mov [rbx+160], rbp
002114e0mov rdx, [rsp+88]
002114e5sub rdx, [0x28]
002114eejne 0x21150a
002114f0add rsp, 104
002114f4pop rbx
002114f5pop rbp
002114f6pop r12
002114f8pop r13
002114faret
002114fbdb 0x5c
002114fcpop r13
002114feret
002114ff
002114ff 90 .
00211500
00211500loc_211500:
00211500mov rdi, r13
00211503call caml_plat_lock_non_blocking_actual
00211508jmp 0x2114ab
0021150a
0021150aloc_21150a:
0021150acall fn_f4590
0021150f
0021150floc_21150f:
0021150fmov esi, eax
00211511lea rdi, [rip+0x1e002]
00211518call caml_plat_fatal_error
0021151d
0021151dloc_21151d:
0021151dmov esi, eax
0021151flea rdi, [rip+0x1e001]
00211526call caml_plat_fatal_error
00211430
00211430caml_ml_input_scan_line:
00211430push r13
00211432push r12
00211434push rbp
00211435push rbx
00211436sub rsp, 104
0021143amov [rsp+8], rdi
0021143fmov rax, [0x28]
00211448mov [rsp+88], rax
0021144dmov rax, [rip+0x64b90]
00211454mov rbx, [rax]
00211458lea rax, [rsp+16]
0021145dmov rbp, [rbx+160]
00211464mov [rbx+160], rax
0021146bmov eax, 1
00211470movq x0, rax
00211475lea rax, [rsp+8]
0021147apunpcklqdq x0, x0
0021147emov [rsp+16], rbp
00211483mov [rsp+40], rax
00211488movups [rsp+24], x0
0021148dmov r12, [rdi+8]
00211491lea r13, [r12+40]
00211496mov rdi, r13
00211499call fn_f4780
0021149ecmp eax, 16
002114a1je 0x211500
002114a3test eax, eax
002114a5jne 0x21151d
002114a7mov [0xfffffffffffffff0], r12
002114b0mov rdi, r12
002114b3call caml_input_scan_line
002114b8mov rdi, r13
002114bbmov r12, rax
002114becall fn_f47c0
002114c3test eax, eax
002114c5jne 0x21150f
002114c7mov [0xfffffffffffffff0], 0
002114d4lea rax, [r12+r12+1]
002114d9mov [rbx+160], rbp
002114e0mov rdx, [rsp+88]
002114e5sub rdx, [0x28]
002114eejne 0x21150a
002114f0add rsp, 104
002114f4pop rbx
002114f5pop rbp
002114f6pop r12
002114f8pop r13
002114faret
002114fbdb 0x5c
002114fcpop r13
002114feret
002114ff
002114ff 90 .
00211500
00211500loc_211500:
00211500mov rdi, r13
00211503call caml_plat_lock_non_blocking_actual
00211508jmp 0x2114ab
0021150a
0021150aloc_21150a:
0021150acall fn_f4590
0021150f
0021150floc_21150f:
0021150fmov esi, eax
00211511lea rdi, [rip+0x1e002]
00211518call caml_plat_fatal_error
0021151d
0021151dloc_21151d:
0021151dmov esi, eax
0021151flea rdi, [rip+0x1e001]
00211526call caml_plat_fatal_error
00211430
0021152b
0021152b // align 0x10
0021152b // align 0x10
00211530
00211530caml_terminfo_rows:
00211530sub rsp, 8
00211534mov rax, [rdi+8]
00211538mov edi, [rax]
0021153acall caml_num_rows_fd
0021153fadd rsp, 8
00211543cdqe
00211545lea rax, [rax+rax+1]
0021154aret
0021154bdb 0x44
0021154cadd [rcx], al
0021154eret
00211530
00211530caml_terminfo_rows:
00211530sub rsp, 8
00211534mov rax, [rdi+8]
00211538mov edi, [rax]
0021153acall caml_num_rows_fd
0021153fadd rsp, 8
00211543cdqe
00211545lea rax, [rax+rax+1]
0021154aret
0021154bdb 0x44
0021154cadd [rcx], al
0021154eret
00211530
0021154f
0021154f // align 0x10
0021154f // align 0x10
00211550
00211550caml_lex_engine:
00211550sar rsi, 1
00211553mov rcx, rdi
00211556mov rdi, rdx
00211559mov r8l, esi
0021155ctest esi, esi
0021155ejs 0x211678
00211564mov rax, [rdx+40]
00211568mov [rdx+56], -1
00211570mov [rdx+32], rax
00211574mov [rdx+48], rax
00211578mov rdx, [rcx]
0021157bmovsxd rax, r8l
0021157elea r9, [rax+rax]
00211582movsx eax, [rdx+2*rax]
00211586test eax, eax
00211588js 0x211668
0021158emov r10, [rdi+16]
00211592jmp 0x2115f2
00211594db 0x57
00211595adc bl, ch
00211597pop rdx
00211598
00211598 0f 1f 84 00 00 00 00 00 ........
002115a0
002115a0loc_2115a0:
002115a0cmp [rdi+64], 1
002115a5je 0x211680
002115abmov esi, 256
002115b0
002115b0loc_2115b0:
002115b0mov rdx, [rcx+32]
002115b4add eax, esi
002115b6cdqe
002115b8movsx edx, [rdx+2*rax]
002115bccmp edx, r8l
002115bfje 0x211640
002115c1mov rax, [rcx+16]
002115c5movsx rax, [rax+r9]
002115camovsx r8l, ax
002115cetest r8l, r8l
002115d1js 0x211652
002115d3
002115d3loc_2115d3:
002115d3cmp esi, 256
002115d9jne 0x2115e3
002115dbmov [rdi+64], 1
002115e3
002115e3loc_2115e3:
002115e3mov rdx, [rcx]
002115e6lea r9, [rax+rax]
002115eamovsx eax, [rdx+2*rax]
002115eetest eax, eax
002115f0js 0x211668
002115f2
002115f2loc_2115f2:
002115f2mov rdx, [rcx+8]
002115f6movsx rsi, [rdx+r9]
002115fbmov rdx, [rdi+40]
002115fftest si, si
00211602js 0x21161b
00211604lea rsi, [rsi+rsi+1]
00211609movq x0, rdx
0021160emovq x1, rsi
00211613punpcklqdq x0, x1
00211617movups [rdi+48], x0
0021161b
0021161bloc_21161b:
0021161bcmp r10, rdx
0021161ejle 0x2115a0
00211620mov r11, rdx
00211623mov rsi, [rdi+8]
00211627add rdx, 2
0021162bsar r11, 1
0021162emovzx esi, [r11+rsi]
00211633mov [rdi+40], rdx
00211637jmp 0x2115b0
0021163c
0021163c 0f 1f 40 00 ..@.
00211640
00211640loc_211640:
00211640mov rdx, [rcx+24]
00211644movsx rax, [rdx+2*rax]
00211649movsx r8l, ax
0021164dtest r8l, r8l
00211650jns 0x2115d3
00211652
00211652loc_211652:
00211652mov rax, [rdi+48]
00211656mov [rdi+40], rax
0021165amov rax, [rdi+56]
0021165ecmp rax, -1
00211662je 0x21168c
00211664ret
00211665
00211665 0f 1f 00 ...
00211668
00211668loc_211668:
00211668not eax
0021166acdqe
0021166clea rax, [rax+rax+1]
00211671ret
00211672
00211672 66 0f 1f 44 00 00 f..D..
00211678
00211678loc_211678:
00211678not r8l
0021167bjmp 0x21157c
00211680
00211680loc_211680:
00211680not r8l
00211683movsxd r8, r8l
00211686lea rax, [r8+r8+1]
0021168bret
0021168c
0021168cloc_21168c:
0021168cpush rax
0021168dlea rdi, [rip+0x1da17]
00211694call caml_failwith
00211550
00211550caml_lex_engine:
00211550sar rsi, 1
00211553mov rcx, rdi
00211556mov rdi, rdx
00211559mov r8l, esi
0021155ctest esi, esi
0021155ejs 0x211678
00211564mov rax, [rdx+40]
00211568mov [rdx+56], -1
00211570mov [rdx+32], rax
00211574mov [rdx+48], rax
00211578mov rdx, [rcx]
0021157bmovsxd rax, r8l
0021157elea r9, [rax+rax]
00211582movsx eax, [rdx+2*rax]
00211586test eax, eax
00211588js 0x211668
0021158emov r10, [rdi+16]
00211592jmp 0x2115f2
00211594db 0x57
00211595adc bl, ch
00211597pop rdx
00211598
00211598 0f 1f 84 00 00 00 00 00 ........
002115a0
002115a0loc_2115a0:
002115a0cmp [rdi+64], 1
002115a5je 0x211680
002115abmov esi, 256
002115b0
002115b0loc_2115b0:
002115b0mov rdx, [rcx+32]
002115b4add eax, esi
002115b6cdqe
002115b8movsx edx, [rdx+2*rax]
002115bccmp edx, r8l
002115bfje 0x211640
002115c1mov rax, [rcx+16]
002115c5movsx rax, [rax+r9]
002115camovsx r8l, ax
002115cetest r8l, r8l
002115d1js 0x211652
002115d3
002115d3loc_2115d3:
002115d3cmp esi, 256
002115d9jne 0x2115e3
002115dbmov [rdi+64], 1
002115e3
002115e3loc_2115e3:
002115e3mov rdx, [rcx]
002115e6lea r9, [rax+rax]
002115eamovsx eax, [rdx+2*rax]
002115eetest eax, eax
002115f0js 0x211668
002115f2
002115f2loc_2115f2:
002115f2mov rdx, [rcx+8]
002115f6movsx rsi, [rdx+r9]
002115fbmov rdx, [rdi+40]
002115fftest si, si
00211602js 0x21161b
00211604lea rsi, [rsi+rsi+1]
00211609movq x0, rdx
0021160emovq x1, rsi
00211613punpcklqdq x0, x1
00211617movups [rdi+48], x0
0021161b
0021161bloc_21161b:
0021161bcmp r10, rdx
0021161ejle 0x2115a0
00211620mov r11, rdx
00211623mov rsi, [rdi+8]
00211627add rdx, 2
0021162bsar r11, 1
0021162emovzx esi, [r11+rsi]
00211633mov [rdi+40], rdx
00211637jmp 0x2115b0
0021163c
0021163c 0f 1f 40 00 ..@.
00211640
00211640loc_211640:
00211640mov rdx, [rcx+24]
00211644movsx rax, [rdx+2*rax]
00211649movsx r8l, ax
0021164dtest r8l, r8l
00211650jns 0x2115d3
00211652
00211652loc_211652:
00211652mov rax, [rdi+48]
00211656mov [rdi+40], rax
0021165amov rax, [rdi+56]
0021165ecmp rax, -1
00211662je 0x21168c
00211664ret
00211665
00211665 0f 1f 00 ...
00211668
00211668loc_211668:
00211668not eax
0021166acdqe
0021166clea rax, [rax+rax+1]
00211671ret
00211672
00211672 66 0f 1f 44 00 00 f..D..
00211678
00211678loc_211678:
00211678not r8l
0021167bjmp 0x21157c
00211680
00211680loc_211680:
00211680not r8l
00211683movsxd r8, r8l
00211686lea rax, [r8+r8+1]
0021168bret
0021168c
0021168cloc_21168c:
0021168cpush rax
0021168dlea rdi, [rip+0x1da17]
00211694call caml_failwith
00211550
00211699
00211699 // align 0x40
00211699 // align 0x40
002116c0
002116c0caml_new_lex_engine:
002116c0sar rsi, 1
002116c3push rbx
002116c4mov r8, rdx
002116c7mov r11l, esi
002116catest esi, esi
002116ccjs 0x211980
002116d2mov rax, [rdx+40]
002116d6mov [rdx+56], -1
002116demov [rdx+32], rax
002116e2mov [rdx+48], rax
002116e6mov rdx, [rdi]
002116e9movsxd rax, r11l
002116eclea r10, [rax+rax]
002116f0movsx esi, [rdx+2*rax]
002116f4test esi, esi
002116f6jns 0x21179c
002116fcjmp 0x2118f0
00211701db 0xeb
00211702add [rax], eax
00211704db 0x00
00211705
00211705 0f 1f 00 ...
00211708
00211708loc_211708:
00211708cmp [r8+64], 1
0021170dje 0x211988
00211713mov r9l, 256
00211719
00211719loc_211719:
00211719mov rax, [rdi+32]
0021171dadd esi, r9l
00211720movsxd rsi, esi
00211723movsx eax, [rax+2*rsi]
00211727cmp eax, r11l
0021172aje 0x2118b0
00211730mov rax, [rdi+16]
00211734movsx rsi, [rax+r10]
00211739movsx ebx, si
0021173ctest ebx, ebx
0021173ejs 0x2118c4
00211744
00211744loc_211744:
00211744mov rax, [rdi+40]
00211748mov rdx, [rdi+72]
0021174cmovzx eax, [rax+r10]
00211751add eax, r9l
00211754cdqe
00211756movsx edx, [rdx+2*rax]
0021175acmp edx, r11l
0021175dje 0x2118e0
00211763mov rax, [rdi+56]
00211767movzx edx, [rax+r10]
0021176c
0021176cloc_21176c:
0021176ctest dx, dx
0021176fjne 0x211858
00211775
00211775loc_211775:
00211775cmp r9l, 256
0021177cjne 0x211786
0021177emov [r8+64], 1
00211786
00211786loc_211786:
00211786mov rax, [rdi]
00211789lea r10, [rsi+rsi]
0021178dmovsx esi, [rax+2*rsi]
00211791test esi, esi
00211793js 0x2118f0
00211799mov r11l, ebx
0021179c
0021179cloc_21179c:
0021179cmov rax, [rdi+8]
002117a0movsx rbx, [rax+r10]
002117a5test bx, bx
002117a8jns 0x2117d8
002117aamov rax, [r8+40]
002117ae
002117aeloc_2117ae:
002117aecmp [r8+16], rax
002117b2jle 0x211708
002117b8mov rcx, rax
002117bbmov rdx, [r8+8]
002117bfadd rax, 2
002117c3sar rcx, 1
002117c6movzx r9l, [rcx+rdx]
002117cbmov [r8+40], rax
002117cfjmp 0x211719
002117d4
002117d4 0f 1f 40 00 ..@.
002117d8
002117d8loc_2117d8:
002117d8mov rax, [rdi+48]
002117dcmov r9, [r8+72]
002117e0movzx edx, [rax+r10]
002117e5add rdx, [rdi+80]
002117e9movzx eax, [rdx]
002117eccmp al, -1
002117eejne 0x211811
002117f0jmp 0x211833
002117f2
002117f2 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 ff............
00211800
00211800loc_211800:
00211800lea rcx, [r9+8*rcx]
00211804mov rcx, [rcx]
00211807mov [rax], rcx
0021180amovzx eax, [rdx]
0021180dcmp al, -1
0021180fje 0x211833
00211811
00211811loc_211811:
00211811mov rcx, rdx
00211814lea rax, [r9+8*rax]
00211818add rdx, 2
0021181cmovzx ecx, [rcx+1]
00211820cmp cl, -1
00211823jne 0x211800
00211825mov [rax], -1
0021182cmovzx eax, [rdx]
0021182fcmp al, -1
00211831jne 0x211811
00211833
00211833loc_211833:
00211833mov rax, [r8+40]
00211837lea rdx, [rbx+rbx+1]
0021183cmovq x1, rdx
00211841movq x0, rax
00211846punpcklqdq x0, x1
0021184amovups [r8+48], x0
0021184fjmp 0x2117ae
00211854
00211854 0f 1f 40 00 ..@.
00211858
00211858loc_211858:
00211858add rdx, [rdi+80]
0021185cmov r11, [r8+40]
00211860movzx eax, [rdx]
00211863mov r10, [r8+72]
00211867cmp al, -1
00211869jne 0x211895
0021186bjmp 0x211775
00211870
00211870 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 ff...........D..
00211880
00211880loc_211880:
00211880lea rcx, [r10+8*rcx]
00211884mov rcx, [rcx]
00211887mov [rax], rcx
0021188a
0021188aloc_21188a:
0021188amovzx eax, [rdx]
0021188dcmp al, -1
0021188fje 0x211775
00211895
00211895loc_211895:
00211895mov rcx, rdx
00211898lea rax, [r10+8*rax]
0021189cadd rdx, 2
002118a0movzx ecx, [rcx+1]
002118a4cmp cl, -1
002118a7jne 0x211880
002118a9mov [rax], r11
002118acjmp 0x21188a
002118ae
002118ae 66 90 f.
002118b0
002118b0loc_2118b0:
002118b0mov rax, [rdi+24]
002118b4movsx rsi, [rax+2*rsi]
002118b9movsx ebx, si
002118bctest ebx, ebx
002118bejns 0x211744
002118c4
002118c4loc_2118c4:
002118c4mov rax, [r8+48]
002118c8mov [r8+40], rax
002118ccmov rax, [r8+56]
002118d0cmp rax, -1
002118d4je 0x211995
002118dapop rbx
002118dbret
002118dc
002118dc 0f 1f 40 00 ..@.
002118e0
002118e0loc_2118e0:
002118e0mov rdx, [rdi+64]
002118e4movzx edx, [rdx+2*rax]
002118e8jmp 0x21176c
002118ed
002118ed 0f 1f 00 ...
002118f0
002118f0loc_2118f0:
002118f0mov rax, [rdi+40]
002118f4mov r8, [r8+72]
002118f8movzx edx, [rax+r10]
002118fdadd rdx, [rdi+80]
00211901movzx eax, [rdx]
00211904cmp al, -1
00211906jne 0x211951
00211908jmp 0x211973
0021190a
0021190a 66 66 2e 0f 1f 84 ff....
00211910 00 00 00 00 00 66 66 2e 0f 1f 84 00 00 00 00 00 .....ff.........
00211920 66 66 2e 0f 1f 84 00 00 00 00 00 66 66 2e 0f 1f ff.........ff...
00211930 84 00 00 00 00 00 66 2e 0f 1f 84 00 00 00 00 00 ......f.........
00211940
00211940loc_211940:
00211940lea rcx, [r8+8*rcx]
00211944mov rcx, [rcx]
00211947mov [rax], rcx
0021194amovzx eax, [rdx]
0021194dcmp al, -1
0021194fje 0x211973
00211951
00211951loc_211951:
00211951mov rcx, rdx
00211954lea rax, [r8+8*rax]
00211958add rdx, 2
0021195cmovzx ecx, [rcx+1]
00211960cmp cl, -1
00211963jne 0x211940
00211965mov [rax], -1
0021196cmovzx eax, [rdx]
0021196fcmp al, -1
00211971jne 0x211951
00211973
00211973loc_211973:
00211973not esi
00211975pop rbx
00211976movsxd rax, esi
00211979lea rax, [rax+rax+1]
0021197eret
0021197f
0021197f 90 .
00211980
00211980loc_211980:
00211980not r11l
00211983jmp 0x2116ea
00211988
00211988loc_211988:
00211988not r11l
0021198bpop rbx
0021198cmovsxd rax, r11l
0021198flea rax, [rax+rax+1]
00211994ret
00211995
00211995loc_211995:
00211995lea rdi, [rip+0x1d70f]
0021199ccall caml_failwith
002116c0
002116c0caml_new_lex_engine:
002116c0sar rsi, 1
002116c3push rbx
002116c4mov r8, rdx
002116c7mov r11l, esi
002116catest esi, esi
002116ccjs 0x211980
002116d2mov rax, [rdx+40]
002116d6mov [rdx+56], -1
002116demov [rdx+32], rax
002116e2mov [rdx+48], rax
002116e6mov rdx, [rdi]
002116e9movsxd rax, r11l
002116eclea r10, [rax+rax]
002116f0movsx esi, [rdx+2*rax]
002116f4test esi, esi
002116f6jns 0x21179c
002116fcjmp 0x2118f0
00211701db 0xeb
00211702add [rax], eax
00211704db 0x00
00211705
00211705 0f 1f 00 ...
00211708
00211708loc_211708:
00211708cmp [r8+64], 1
0021170dje 0x211988
00211713mov r9l, 256
00211719
00211719loc_211719:
00211719mov rax, [rdi+32]
0021171dadd esi, r9l
00211720movsxd rsi, esi
00211723movsx eax, [rax+2*rsi]
00211727cmp eax, r11l
0021172aje 0x2118b0
00211730mov rax, [rdi+16]
00211734movsx rsi, [rax+r10]
00211739movsx ebx, si
0021173ctest ebx, ebx
0021173ejs 0x2118c4
00211744
00211744loc_211744:
00211744mov rax, [rdi+40]
00211748mov rdx, [rdi+72]
0021174cmovzx eax, [rax+r10]
00211751add eax, r9l
00211754cdqe
00211756movsx edx, [rdx+2*rax]
0021175acmp edx, r11l
0021175dje 0x2118e0
00211763mov rax, [rdi+56]
00211767movzx edx, [rax+r10]
0021176c
0021176cloc_21176c:
0021176ctest dx, dx
0021176fjne 0x211858
00211775
00211775loc_211775:
00211775cmp r9l, 256
0021177cjne 0x211786
0021177emov [r8+64], 1
00211786
00211786loc_211786:
00211786mov rax, [rdi]
00211789lea r10, [rsi+rsi]
0021178dmovsx esi, [rax+2*rsi]
00211791test esi, esi
00211793js 0x2118f0
00211799mov r11l, ebx
0021179c
0021179cloc_21179c:
0021179cmov rax, [rdi+8]
002117a0movsx rbx, [rax+r10]
002117a5test bx, bx
002117a8jns 0x2117d8
002117aamov rax, [r8+40]
002117ae
002117aeloc_2117ae:
002117aecmp [r8+16], rax
002117b2jle 0x211708
002117b8mov rcx, rax
002117bbmov rdx, [r8+8]
002117bfadd rax, 2
002117c3sar rcx, 1
002117c6movzx r9l, [rcx+rdx]
002117cbmov [r8+40], rax
002117cfjmp 0x211719
002117d4
002117d4 0f 1f 40 00 ..@.
002117d8
002117d8loc_2117d8:
002117d8mov rax, [rdi+48]
002117dcmov r9, [r8+72]
002117e0movzx edx, [rax+r10]
002117e5add rdx, [rdi+80]
002117e9movzx eax, [rdx]
002117eccmp al, -1
002117eejne 0x211811
002117f0jmp 0x211833
002117f2
002117f2 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 ff............
00211800
00211800loc_211800:
00211800lea rcx, [r9+8*rcx]
00211804mov rcx, [rcx]
00211807mov [rax], rcx
0021180amovzx eax, [rdx]
0021180dcmp al, -1
0021180fje 0x211833
00211811
00211811loc_211811:
00211811mov rcx, rdx
00211814lea rax, [r9+8*rax]
00211818add rdx, 2
0021181cmovzx ecx, [rcx+1]
00211820cmp cl, -1
00211823jne 0x211800
00211825mov [rax], -1
0021182cmovzx eax, [rdx]
0021182fcmp al, -1
00211831jne 0x211811
00211833
00211833loc_211833:
00211833mov rax, [r8+40]
00211837lea rdx, [rbx+rbx+1]
0021183cmovq x1, rdx
00211841movq x0, rax
00211846punpcklqdq x0, x1
0021184amovups [r8+48], x0
0021184fjmp 0x2117ae
00211854
00211854 0f 1f 40 00 ..@.
00211858
00211858loc_211858:
00211858add rdx, [rdi+80]
0021185cmov r11, [r8+40]
00211860movzx eax, [rdx]
00211863mov r10, [r8+72]
00211867cmp al, -1
00211869jne 0x211895
0021186bjmp 0x211775
00211870
00211870 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 ff...........D..
00211880
00211880loc_211880:
00211880lea rcx, [r10+8*rcx]
00211884mov rcx, [rcx]
00211887mov [rax], rcx
0021188a
0021188aloc_21188a:
0021188amovzx eax, [rdx]
0021188dcmp al, -1
0021188fje 0x211775
00211895
00211895loc_211895:
00211895mov rcx, rdx
00211898lea rax, [r10+8*rax]
0021189cadd rdx, 2
002118a0movzx ecx, [rcx+1]
002118a4cmp cl, -1
002118a7jne 0x211880
002118a9mov [rax], r11
002118acjmp 0x21188a
002118ae
002118ae 66 90 f.
002118b0
002118b0loc_2118b0:
002118b0mov rax, [rdi+24]
002118b4movsx rsi, [rax+2*rsi]
002118b9movsx ebx, si
002118bctest ebx, ebx
002118bejns 0x211744
002118c4
002118c4loc_2118c4:
002118c4mov rax, [r8+48]
002118c8mov [r8+40], rax
002118ccmov rax, [r8+56]
002118d0cmp rax, -1
002118d4je 0x211995
002118dapop rbx
002118dbret
002118dc
002118dc 0f 1f 40 00 ..@.
002118e0
002118e0loc_2118e0:
002118e0mov rdx, [rdi+64]
002118e4movzx edx, [rdx+2*rax]
002118e8jmp 0x21176c
002118ed
002118ed 0f 1f 00 ...
002118f0
002118f0loc_2118f0:
002118f0mov rax, [rdi+40]
002118f4mov r8, [r8+72]
002118f8movzx edx, [rax+r10]
002118fdadd rdx, [rdi+80]
00211901movzx eax, [rdx]
00211904cmp al, -1
00211906jne 0x211951
00211908jmp 0x211973
0021190a
0021190a 66 66 2e 0f 1f 84 ff....
00211910 00 00 00 00 00 66 66 2e 0f 1f 84 00 00 00 00 00 .....ff.........
00211920 66 66 2e 0f 1f 84 00 00 00 00 00 66 66 2e 0f 1f ff.........ff...
00211930 84 00 00 00 00 00 66 2e 0f 1f 84 00 00 00 00 00 ......f.........
00211940
00211940loc_211940:
00211940lea rcx, [r8+8*rcx]
00211944mov rcx, [rcx]
00211947mov [rax], rcx
0021194amovzx eax, [rdx]
0021194dcmp al, -1
0021194fje 0x211973
00211951
00211951loc_211951:
00211951mov rcx, rdx
00211954lea rax, [r8+8*rax]
00211958add rdx, 2
0021195cmovzx ecx, [rcx+1]
00211960cmp cl, -1
00211963jne 0x211940
00211965mov [rax], -1
0021196cmovzx eax, [rdx]
0021196fcmp al, -1
00211971jne 0x211951
00211973
00211973loc_211973:
00211973not esi
00211975pop rbx
00211976movsxd rax, esi
00211979lea rax, [rax+rax+1]
0021197eret
0021197f
0021197f 90 .
00211980
00211980loc_211980:
00211980not r11l
00211983jmp 0x2116ea
00211988
00211988loc_211988:
00211988not r11l
0021198bpop rbx
0021198cmovsxd rax, r11l
0021198flea rax, [rax+rax+1]
00211994ret
00211995
00211995loc_211995:
00211995lea rdi, [rip+0x1d70f]
0021199ccall caml_failwith
002116c0
002119a1
002119a1 // align 0x10
002119a1 // align 0x10
002119b0
002119b0fn_2119b0:
002119b0push rbp
002119b1mov rsi, rdi
002119b4push rbx
002119b5mov rbx, rdi
002119b8lea rdi, [rip+0x1ef89]
002119bfsub rsp, 8
002119c3mov rax, [rip+0x6461e]
002119camov rbp, [rax]
002119cexor eax, eax
002119d0call caml_gc_log
002119d5sub [rbp+352], rbx
002119dclock add [rip+0x16712c], rbx
002119e4mov rdx, [rip+0x167125]
002119ebmov rax, [rbp+344]
002119f2sub rax, rdx
002119f5test rax, rax
002119f8jg 0x211a05
002119famov [rbp+240], 0
00211a05
00211a05loc_211a05:
00211a05add rsp, 8
00211a09pop rbx
00211a0apop rbp
00211a0bret
002119b0
002119b0fn_2119b0:
002119b0push rbp
002119b1mov rsi, rdi
002119b4push rbx
002119b5mov rbx, rdi
002119b8lea rdi, [rip+0x1ef89]
002119bfsub rsp, 8
002119c3mov rax, [rip+0x6461e]
002119camov rbp, [rax]
002119cexor eax, eax
002119d0call caml_gc_log
002119d5sub [rbp+352], rbx
002119dclock add [rip+0x16712c], rbx
002119e4mov rdx, [rip+0x167125]
002119ebmov rax, [rbp+344]
002119f2sub rax, rdx
002119f5test rax, rax
002119f8jg 0x211a05
002119famov [rbp+240], 0
00211a05
00211a05loc_211a05:
00211a05add rsp, 8
00211a09pop rbx
00211a0apop rbp
00211a0bret
002119b0
00211a0c
00211a0c // align 0x10
00211a0c // align 0x10
00211a10
00211a10fn_211a10:
00211a10push r15
00211a12pxor x0, x0
00211a16push r14
00211a18push r13
00211a1apush r12
00211a1cpush rbp
00211a1dpush rbx
00211a1emov rbx, rdi
00211a21sub rsp, 56
00211a25mov rax, [rip+0x645bc]
00211a2cmov [rsp+40], esi
00211a30mov [rsp+44], edx
00211a34mov r15, [rax]
00211a38mov rcx, [r15+136]
00211a3fmov rax, [r15+128]
00211a46movups [r15+128], x0
00211a4eadd [r15+400], rax
00211a55mov rdi, [r15+280]
00211a5cmovsd_xmm x6, [r15+312]
00211a65mov [rsp+32], rcx
00211a6amov rcx, [r15+336]
00211a71mov [rsp+8], rax
00211a76mov [r15+336], 0
00211a81mov [r15+312], 0
00211a8cmov [rsp+24], rcx
00211a91movsd_xmm [rsp+16], x6
00211a97call caml_heap_size
00211a9cpxor x3, x3
00211aa0mov rbp, rax
00211aa3mov rcx, rax
00211aa6mov rax, [rip+0x1668f3]
00211aadshr rbp, 3
00211ab1cvtsi2sd x3, rbp
00211ab6test rax, rax
00211ab9js 0x211e40
00211abfpxor x2, x2
00211ac3cvtsi2sd x2, rax
00211ac8
00211ac8loc_211ac8:
00211ac8movsd_xmm x1, [rip+0x18ca8]
00211ad0movapd x0, x3
00211ad4mulsd x0, x1
00211ad8addsd x1, x2
00211adcdivsd x0, x1
00211ae0comisd x0, [rip+0x18d50]
00211ae8jae 0x211da0
00211aeecvttsd2si rdx, x0
00211af3add rdx, rbp
00211af6js 0x211dbb
00211afc
00211afcloc_211afc:
00211afcpxor x1, x1
00211b00cvtsi2sd x1, rdx
00211b05
00211b05loc_211b05:
00211b05xor r13l, r13l
00211b08cmp rcx, 7
00211b0cjbe 0x211b58
00211b0emov rcx, rax
00211b11add rcx, 100
00211b15js 0x211e20
00211b1bpxor x0, x0
00211b1fcvtsi2sd x0, rcx
00211b24
00211b24loc_211b24:
00211b24movsd_xmm x4, [rip+0x18d14]
00211b2cmulsd x4, x1
00211b30mulsd x0, x4
00211b34divsd x0, x3
00211b38pxor x3, x3
00211b3ccvtsi2sd x3, [rsp+8]
00211b43divsd x0, x2
00211b47mulsd x0, [rip+0x18c31]
00211b4fmulsd x0, x3
00211b53cvttsd2si r13, x0
00211b58
00211b58loc_211b58:
00211b58mov rcx, [r15+328]
00211b5fxor r12l, r12l
00211b62test rcx, rcx
00211b65je 0x211baf
00211b67add rax, 100
00211b6bimul rax, rdx
00211b6ftest rax, rax
00211b72js 0x211de0
00211b78pxor x0, x0
00211b7ccvtsi2sd x0, rax
00211b81test rcx, rcx
00211b84js 0x211e02
00211b8a
00211b8aloc_211b8a:
00211b8apxor x3, x3
00211b8ecvtsi2sd x3, rcx
00211b93
00211b93loc_211b93:
00211b93divsd x0, x3
00211b97divsd x0, x2
00211b9bpxor x2, x2
00211b9fcvtsi2sd x2, [rsp+24]
00211ba6mulsd x0, x2
00211baacvttsd2si r12, x0
00211baf
00211bafloc_211baf:
00211bafmulsd x1, [rsp+16]
00211bb5xor eax, eax
00211bb7mov rdx, rbp
00211bbamov edi, 64
00211bbflea rsi, [rip+0x1d50a]
00211bc6cvttsd2si r14, x1
00211bcbcall caml_gc_message
00211bd0mov rdx, [rsp+8]
00211bd5xor eax, eax
00211bd7lea rsi, [rip+0x1d504]
00211bdemov edi, 64
00211be3call caml_gc_message
00211be8mov rdx, [rsp+32]
00211bedxor eax, eax
00211beflea rsi, [rip+0x1d503]
00211bf6mov edi, 64
00211bfbcall caml_gc_message
00211c00xor eax, eax
00211c02mov rdx, r13
00211c05mov edi, 64
00211c0alea rsi, [rip+0x1d506]
00211c11call caml_gc_message
00211c16mov rdx, [rsp+24]
00211c1bxor eax, eax
00211c1dlea rsi, [rip+0x1d50b]
00211c24mov edi, 64
00211c29call caml_gc_message
00211c2exor eax, eax
00211c30mov rdx, r12
00211c33mov edi, 64
00211c38lea rsi, [rip+0x1d507]
00211c3fcall caml_gc_message
00211c44movsd_xmm x0, [rsp+16]
00211c4amulsd x0, [rip+0x18bf6]
00211c52comisd x0, [rip+0x18bde]
00211c5ajae 0x211d80
00211c60cvttsd2si rdx, x0
00211c65
00211c65loc_211c65:
00211c65xor eax, eax
00211c67lea rsi, [rip+0x1d4f4]
00211c6emov edi, 64
00211c73call caml_gc_message
00211c78xor eax, eax
00211c7amov rdx, r14
00211c7dmov edi, 64
00211c82lea rsi, [rip+0x1d4f6]
00211c89call caml_gc_message
00211c8emov rax, [r15+360]
00211c95lock add [rip+0x166e73], rax
00211c9dcmp r13, r14
00211ca0mov rax, r14
00211ca3mov [r15+360], 0
00211caecmovge rax, r13
00211cb2cmp rax, r12
00211cb5cmovl rax, r12
00211cb9lock add [rip+0x166e57], rax
00211cc1lea rax, [rbx+1]
00211cc5cmp rax, 1
00211cc9jbe 0x211e68
00211ccfmov rax, [rip+0x166e3a]
00211cd6
00211cd6loc_211cd6:
00211cd6mov [r15+344], rax
00211cddmov esi, 85
00211ce2mov [r15+352], rbx
00211ce9mov r8, [rip+0x166e28]
00211cf0mov rdx, [rip+0x166e19]
00211cf7mov rcx, [rip+0x166e1a]
00211cfecmp rcx, rdx
00211d01lea rcx, [rip+0x1d3b7]
00211d08lea rdx, [rip+0x1d3b8]
00211d0fcmovb rdx, rcx
00211d13mov rdi, [rip+0x166df6]
00211d1amov ecx, [rsp+40]
00211d1etest ecx, ecx
00211d20je 0x211d38
00211d22mov ecx, [rip+0x166d38]
00211d28cmp ecx, 2
00211d2bja 0x211d38
00211d2dlea rsi, [rip+0x1fe6f]
00211d34movsx esi, [rsi+rcx]
00211d38
00211d38loc_211d38:
00211d38push rbx
00211d39mov r9, r12
00211d3cpush rax
00211d3dxor eax, eax
00211d3fpush r8
00211d41mov r8, r13
00211d44push rdx
00211d45mov rdx, rbp
00211d48push rdi
00211d49lea rdi, [rip+0x1ec28]
00211d50push r14
00211d52mov rcx, [rsp+56]
00211d57call caml_gc_log
00211d5cmov eax, [rsp+92]
00211d60add rsp, 48
00211d64test eax, eax
00211d66jne 0x211e80
00211d6cadd rsp, 56
00211d70pop rbx
00211d71pop rbp
00211d72pop r12
00211d74pop r13
00211d76pop r14
00211d78pop r15
00211d7aret
00211d7b
00211d7b 0f 1f 44 00 00 ..D..
00211d80
00211d80loc_211d80:
00211d80subsd x0, [rip+0x18ab0]
00211d88cvttsd2si rdx, x0
00211d8dbtc rdx, 63
00211d92jmp 0x211c65
00211d97
00211d97 66 0f 1f 84 00 00 00 00 00 f........
00211da0
00211da0loc_211da0:
00211da0subsd x0, [rip+0x18a90]
00211da8cvttsd2si rdx, x0
00211dadbtc rdx, 63
00211db2add rdx, rbp
00211db5jns 0x211afc
00211dbb
00211dbbloc_211dbb:
00211dbbmov rsi, rdx
00211dbemov rdi, rdx
00211dc1pxor x1, x1
00211dc5shr rsi, 1
00211dc8and edi, 1
00211dcbor rsi, rdi
00211dcecvtsi2sd x1, rsi
00211dd3addsd x1, x1
00211dd7jmp 0x211b05
00211ddc
00211ddc 0f 1f 40 00 ..@.
00211de0
00211de0loc_211de0:
00211de0mov rdx, rax
00211de3and eax, 1
00211de6pxor x0, x0
00211deashr rdx, 1
00211dedor rdx, rax
00211df0cvtsi2sd x0, rdx
00211df5addsd x0, x0
00211df9test rcx, rcx
00211dfcjns 0x211b8a
00211e02
00211e02loc_211e02:
00211e02mov rax, rcx
00211e05and ecx, 1
00211e08pxor x3, x3
00211e0cshr rax, 1
00211e0for rax, rcx
00211e12cvtsi2sd x3, rax
00211e17addsd x3, x3
00211e1bjmp 0x211b93
00211e20
00211e20loc_211e20:
00211e20mov rsi, rcx
00211e23and ecx, 1
00211e26pxor x0, x0
00211e2ashr rsi, 1
00211e2dor rsi, rcx
00211e30cvtsi2sd x0, rsi
00211e35addsd x0, x0
00211e39jmp 0x211b24
00211e3e
00211e3e 66 90 f.
00211e40
00211e40loc_211e40:
00211e40mov rdx, rax
00211e43mov rsi, rax
00211e46pxor x2, x2
00211e4ashr rdx, 1
00211e4dand esi, 1
00211e50or rdx, rsi
00211e53cvtsi2sd x2, rdx
00211e58addsd x2, x2
00211e5cjmp 0x211ac8
00211e61
00211e61 0f 1f 80 00 00 00 00 .......
00211e68
00211e68loc_211e68:
00211e68mov rax, [rip+0x166ca9]
00211e6fxor ebx, ebx
00211e71jmp 0x211cd6
00211e76
00211e76 66 2e 0f 1f 84 00 00 00 00 00 f.........
00211e80
00211e80loc_211e80:
00211e80mov rsi, rbp
00211e83mov edi, 17
00211e88call caml_ev_counter
00211e8dmov rsi, [rsp+8]
00211e92mov edi, 18
00211e97call caml_ev_counter
00211e9cmov rsi, r13
00211e9fmov edi, 19
00211ea4call caml_ev_counter
00211ea9mov rsi, r12
00211eacmov edi, 20
00211eb1call caml_ev_counter
00211eb6mov rsi, r14
00211eb9mov edi, 21
00211ebecall caml_ev_counter
00211ec3mov edi, 22
00211ec8mov rsi, [rip+0x166c41]
00211ecfcall caml_ev_counter
00211ed4mov edi, 23
00211ed9mov rsi, [rip+0x166c38]
00211ee0call caml_ev_counter
00211ee5mov rsi, [r15+344]
00211eecmov edi, 24
00211ef1call caml_ev_counter
00211ef6mov rsi, [r15+352]
00211efdadd rsp, 56
00211f01mov edi, 25
00211f06pop rbx
00211f07pop rbp
00211f08pop r12
00211f0apop r13
00211f0cpop r14
00211f0epop r15
00211f10jmp 0x21cb20
00211a10
00211a10fn_211a10:
00211a10push r15
00211a12pxor x0, x0
00211a16push r14
00211a18push r13
00211a1apush r12
00211a1cpush rbp
00211a1dpush rbx
00211a1emov rbx, rdi
00211a21sub rsp, 56
00211a25mov rax, [rip+0x645bc]
00211a2cmov [rsp+40], esi
00211a30mov [rsp+44], edx
00211a34mov r15, [rax]
00211a38mov rcx, [r15+136]
00211a3fmov rax, [r15+128]
00211a46movups [r15+128], x0
00211a4eadd [r15+400], rax
00211a55mov rdi, [r15+280]
00211a5cmovsd_xmm x6, [r15+312]
00211a65mov [rsp+32], rcx
00211a6amov rcx, [r15+336]
00211a71mov [rsp+8], rax
00211a76mov [r15+336], 0
00211a81mov [r15+312], 0
00211a8cmov [rsp+24], rcx
00211a91movsd_xmm [rsp+16], x6
00211a97call caml_heap_size
00211a9cpxor x3, x3
00211aa0mov rbp, rax
00211aa3mov rcx, rax
00211aa6mov rax, [rip+0x1668f3]
00211aadshr rbp, 3
00211ab1cvtsi2sd x3, rbp
00211ab6test rax, rax
00211ab9js 0x211e40
00211abfpxor x2, x2
00211ac3cvtsi2sd x2, rax
00211ac8
00211ac8loc_211ac8:
00211ac8movsd_xmm x1, [rip+0x18ca8]
00211ad0movapd x0, x3
00211ad4mulsd x0, x1
00211ad8addsd x1, x2
00211adcdivsd x0, x1
00211ae0comisd x0, [rip+0x18d50]
00211ae8jae 0x211da0
00211aeecvttsd2si rdx, x0
00211af3add rdx, rbp
00211af6js 0x211dbb
00211afc
00211afcloc_211afc:
00211afcpxor x1, x1
00211b00cvtsi2sd x1, rdx
00211b05
00211b05loc_211b05:
00211b05xor r13l, r13l
00211b08cmp rcx, 7
00211b0cjbe 0x211b58
00211b0emov rcx, rax
00211b11add rcx, 100
00211b15js 0x211e20
00211b1bpxor x0, x0
00211b1fcvtsi2sd x0, rcx
00211b24
00211b24loc_211b24:
00211b24movsd_xmm x4, [rip+0x18d14]
00211b2cmulsd x4, x1
00211b30mulsd x0, x4
00211b34divsd x0, x3
00211b38pxor x3, x3
00211b3ccvtsi2sd x3, [rsp+8]
00211b43divsd x0, x2
00211b47mulsd x0, [rip+0x18c31]
00211b4fmulsd x0, x3
00211b53cvttsd2si r13, x0
00211b58
00211b58loc_211b58:
00211b58mov rcx, [r15+328]
00211b5fxor r12l, r12l
00211b62test rcx, rcx
00211b65je 0x211baf
00211b67add rax, 100
00211b6bimul rax, rdx
00211b6ftest rax, rax
00211b72js 0x211de0
00211b78pxor x0, x0
00211b7ccvtsi2sd x0, rax
00211b81test rcx, rcx
00211b84js 0x211e02
00211b8a
00211b8aloc_211b8a:
00211b8apxor x3, x3
00211b8ecvtsi2sd x3, rcx
00211b93
00211b93loc_211b93:
00211b93divsd x0, x3
00211b97divsd x0, x2
00211b9bpxor x2, x2
00211b9fcvtsi2sd x2, [rsp+24]
00211ba6mulsd x0, x2
00211baacvttsd2si r12, x0
00211baf
00211bafloc_211baf:
00211bafmulsd x1, [rsp+16]
00211bb5xor eax, eax
00211bb7mov rdx, rbp
00211bbamov edi, 64
00211bbflea rsi, [rip+0x1d50a]
00211bc6cvttsd2si r14, x1
00211bcbcall caml_gc_message
00211bd0mov rdx, [rsp+8]
00211bd5xor eax, eax
00211bd7lea rsi, [rip+0x1d504]
00211bdemov edi, 64
00211be3call caml_gc_message
00211be8mov rdx, [rsp+32]
00211bedxor eax, eax
00211beflea rsi, [rip+0x1d503]
00211bf6mov edi, 64
00211bfbcall caml_gc_message
00211c00xor eax, eax
00211c02mov rdx, r13
00211c05mov edi, 64
00211c0alea rsi, [rip+0x1d506]
00211c11call caml_gc_message
00211c16mov rdx, [rsp+24]
00211c1bxor eax, eax
00211c1dlea rsi, [rip+0x1d50b]
00211c24mov edi, 64
00211c29call caml_gc_message
00211c2exor eax, eax
00211c30mov rdx, r12
00211c33mov edi, 64
00211c38lea rsi, [rip+0x1d507]
00211c3fcall caml_gc_message
00211c44movsd_xmm x0, [rsp+16]
00211c4amulsd x0, [rip+0x18bf6]
00211c52comisd x0, [rip+0x18bde]
00211c5ajae 0x211d80
00211c60cvttsd2si rdx, x0
00211c65
00211c65loc_211c65:
00211c65xor eax, eax
00211c67lea rsi, [rip+0x1d4f4]
00211c6emov edi, 64
00211c73call caml_gc_message
00211c78xor eax, eax
00211c7amov rdx, r14
00211c7dmov edi, 64
00211c82lea rsi, [rip+0x1d4f6]
00211c89call caml_gc_message
00211c8emov rax, [r15+360]
00211c95lock add [rip+0x166e73], rax
00211c9dcmp r13, r14
00211ca0mov rax, r14
00211ca3mov [r15+360], 0
00211caecmovge rax, r13
00211cb2cmp rax, r12
00211cb5cmovl rax, r12
00211cb9lock add [rip+0x166e57], rax
00211cc1lea rax, [rbx+1]
00211cc5cmp rax, 1
00211cc9jbe 0x211e68
00211ccfmov rax, [rip+0x166e3a]
00211cd6
00211cd6loc_211cd6:
00211cd6mov [r15+344], rax
00211cddmov esi, 85
00211ce2mov [r15+352], rbx
00211ce9mov r8, [rip+0x166e28]
00211cf0mov rdx, [rip+0x166e19]
00211cf7mov rcx, [rip+0x166e1a]
00211cfecmp rcx, rdx
00211d01lea rcx, [rip+0x1d3b7]
00211d08lea rdx, [rip+0x1d3b8]
00211d0fcmovb rdx, rcx
00211d13mov rdi, [rip+0x166df6]
00211d1amov ecx, [rsp+40]
00211d1etest ecx, ecx
00211d20je 0x211d38
00211d22mov ecx, [rip+0x166d38]
00211d28cmp ecx, 2
00211d2bja 0x211d38
00211d2dlea rsi, [rip+0x1fe6f]
00211d34movsx esi, [rsi+rcx]
00211d38
00211d38loc_211d38:
00211d38push rbx
00211d39mov r9, r12
00211d3cpush rax
00211d3dxor eax, eax
00211d3fpush r8
00211d41mov r8, r13
00211d44push rdx
00211d45mov rdx, rbp
00211d48push rdi
00211d49lea rdi, [rip+0x1ec28]
00211d50push r14
00211d52mov rcx, [rsp+56]
00211d57call caml_gc_log
00211d5cmov eax, [rsp+92]
00211d60add rsp, 48
00211d64test eax, eax
00211d66jne 0x211e80
00211d6cadd rsp, 56
00211d70pop rbx
00211d71pop rbp
00211d72pop r12
00211d74pop r13
00211d76pop r14
00211d78pop r15
00211d7aret
00211d7b
00211d7b 0f 1f 44 00 00 ..D..
00211d80
00211d80loc_211d80:
00211d80subsd x0, [rip+0x18ab0]
00211d88cvttsd2si rdx, x0
00211d8dbtc rdx, 63
00211d92jmp 0x211c65
00211d97
00211d97 66 0f 1f 84 00 00 00 00 00 f........
00211da0
00211da0loc_211da0:
00211da0subsd x0, [rip+0x18a90]
00211da8cvttsd2si rdx, x0
00211dadbtc rdx, 63
00211db2add rdx, rbp
00211db5jns 0x211afc
00211dbb
00211dbbloc_211dbb:
00211dbbmov rsi, rdx
00211dbemov rdi, rdx
00211dc1pxor x1, x1
00211dc5shr rsi, 1
00211dc8and edi, 1
00211dcbor rsi, rdi
00211dcecvtsi2sd x1, rsi
00211dd3addsd x1, x1
00211dd7jmp 0x211b05
00211ddc
00211ddc 0f 1f 40 00 ..@.
00211de0
00211de0loc_211de0:
00211de0mov rdx, rax
00211de3and eax, 1
00211de6pxor x0, x0
00211deashr rdx, 1
00211dedor rdx, rax
00211df0cvtsi2sd x0, rdx
00211df5addsd x0, x0
00211df9test rcx, rcx
00211dfcjns 0x211b8a
00211e02
00211e02loc_211e02:
00211e02mov rax, rcx
00211e05and ecx, 1
00211e08pxor x3, x3
00211e0cshr rax, 1
00211e0for rax, rcx
00211e12cvtsi2sd x3, rax
00211e17addsd x3, x3
00211e1bjmp 0x211b93
00211e20
00211e20loc_211e20:
00211e20mov rsi, rcx
00211e23and ecx, 1
00211e26pxor x0, x0
00211e2ashr rsi, 1
00211e2dor rsi, rcx
00211e30cvtsi2sd x0, rsi
00211e35addsd x0, x0
00211e39jmp 0x211b24
00211e3e
00211e3e 66 90 f.
00211e40
00211e40loc_211e40:
00211e40mov rdx, rax
00211e43mov rsi, rax
00211e46pxor x2, x2
00211e4ashr rdx, 1
00211e4dand esi, 1
00211e50or rdx, rsi
00211e53cvtsi2sd x2, rdx
00211e58addsd x2, x2
00211e5cjmp 0x211ac8
00211e61
00211e61 0f 1f 80 00 00 00 00 .......
00211e68
00211e68loc_211e68:
00211e68mov rax, [rip+0x166ca9]
00211e6fxor ebx, ebx
00211e71jmp 0x211cd6
00211e76
00211e76 66 2e 0f 1f 84 00 00 00 00 00 f.........
00211e80
00211e80loc_211e80:
00211e80mov rsi, rbp
00211e83mov edi, 17
00211e88call caml_ev_counter
00211e8dmov rsi, [rsp+8]
00211e92mov edi, 18
00211e97call caml_ev_counter
00211e9cmov rsi, r13
00211e9fmov edi, 19
00211ea4call caml_ev_counter
00211ea9mov rsi, r12
00211eacmov edi, 20
00211eb1call caml_ev_counter
00211eb6mov rsi, r14
00211eb9mov edi, 21
00211ebecall caml_ev_counter
00211ec3mov edi, 22
00211ec8mov rsi, [rip+0x166c41]
00211ecfcall caml_ev_counter
00211ed4mov edi, 23
00211ed9mov rsi, [rip+0x166c38]
00211ee0call caml_ev_counter
00211ee5mov rsi, [r15+344]
00211eecmov edi, 24
00211ef1call caml_ev_counter
00211ef6mov rsi, [r15+352]
00211efdadd rsp, 56
00211f01mov edi, 25
00211f06pop rbx
00211f07pop rbp
00211f08pop r12
00211f0apop r13
00211f0cpop r14
00211f0epop r15
00211f10jmp 0x21cb20
00211a10
00211f15
00211f15 // align 0x10
00211f15 // align 0x10
00211f20
00211f20fn_211f20:
00211f20push r15
00211f22push r14
00211f24push r13
00211f26push r12
00211f28push rbp
00211f29push rbx
00211f2asub rsp, 72
00211f2emov rax, [rip+0x640b3]
00211f35mov rbx, [rdi+16]
00211f39mov rbp, [0x28]
00211f42mov [rsp+56], rbp
00211f47mov rbp, rdi
00211f4ashl rbx, 4
00211f4emov rax, [rax]
00211f52mov rdi, [rax+280]
00211f59call caml_heap_size
00211f5emov r8, rax
00211f61mov r12, rax
00211f64shr r8, 5
00211f68cmp rbx, r8
00211f6bjb 0x212228
00211f71mov rdi, [rbp+8]
00211f75test rdi, rdi
00211f78je 0x211fce
00211f7amov rax, [rbp]
00211f7eshl rdi, 4
00211f82xor ecx, ecx
00211f84add rdi, rax
00211f87nop [rax+rax]
00211f92nop [rax+rax]
00211f9dnop [rax]
00211fa0
00211fa0loc_211fa0:
00211fa0mov rdx, [rax+8]
00211fa4sub rdx, [rax]
00211fa7lea rsi, [rcx+16]
00211fabcmp rdx, 512
00211fb2cmova rcx, rsi
00211fb6add rax, 16
00211fbacmp rdi, rax
00211fbdjne 0x211fa0
00211fbfmov rax, rbx
00211fc2sub rax, rcx
00211fc5cmp rax, r8
00211fc8jb 0x212297
00211fce
00211fceloc_211fce:
00211fcemov rsi, rbx
00211fd1mov rdx, r12
00211fd4lea rdi, [rip+0x1ead5]
00211fdbxor eax, eax
00211fddcall caml_gc_log
00211fe2mov rbx, [rbp+40]
00211fe6mov [rsp+32], 0
00211fefmov [rsp+40], 0
00211ff8mov [rsp+24], 0
00212001cmp rbx, [rbp+32]
00212005jae 0x21209b
0021200bmov rdx, [rbp+24]
0021200fmov rax, rbx
00212012lea r12, [rsp+32]
00212017shl rax, 4
0021201bmov rsi, [rdx+rax]
0021201f
0021201floc_21201f:
0021201fmov rax, rbx
00212022mov rdi, r12
00212025shl rax, 4
00212029mov rdx, [rdx+rax+8]
0021202ecall caml_addrmap_insert
00212033mov rdx, [rbp+24]
00212037add [rsp+24], 1
0021203dtest rdx, rdx
00212040je 0x212080
00212042mov rcx, [rbp+32]
00212046add rbx, 1
0021204acmp rbx, rcx
0021204djb 0x212069
0021204fjmp 0x212080
00212051
00212051 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 ff...........@.
00212060
00212060loc_212060:
00212060add rbx, 1
00212064cmp rbx, rcx
00212067jae 0x212080
00212069
00212069loc_212069:
00212069mov rax, rbx
0021206cshl rax, 4
00212070mov rsi, [rdx+rax]
00212074test rsi, rsi
00212077je 0x212060
00212079cmp rbx, rcx
0021207cjb 0x21201f
0021207enop
00212080
00212080loc_212080:
00212080mov rax, [rsp+24]
00212085test rax, rax
00212088je 0x21209b
0021208amov rsi, rax
0021208dlea rdi, [rip+0x1ea7c]
00212094xor eax, eax
00212096call caml_gc_log
0021209b
0021209bloc_21209b:
0021209blea rax, [rbp+24]
0021209fmov rdi, rax
002120a2mov [rsp], rax
002120a6call caml_addrmap_clear
002120abmovdqa x0, [rsp+32]
002120b1mov rax, [rbp+8]
002120b5movups [rbp+24], x0
002120b9mov [rsp+8], rax
002120betest rax, rax
002120c1je 0x212283
002120c7mov [rsp+16], 0
002120d0xor r14l, r14l
002120d3xor r13l, r13l
002120d6mov [rsp+8], 0
002120dfjmp 0x212105
002120e1
002120e1 0f 1f 80 00 00 00 00 .......
002120e8
002120e8loc_2120e8:
002120e8mov rax, r14
002120ebadd r14, 1
002120efshl rax, 4
002120f3movups [rcx+rax], x0
002120f7
002120f7loc_2120f7:
002120f7add r13, 1
002120fbcmp r13, [rbp+8]
002120ffjae 0x212190
00212105
00212105loc_212105:
00212105mov rcx, [rbp]
00212109mov rax, r13
0021210cshl rax, 4
00212110movdqu x0, [rcx+rax]
00212115movhlps x1, x0
00212118movq r15, x0
0021211dmovq r12, x1
00212122mov rax, r12
00212125sub rax, r15
00212128mov rsi, rax
0021212bsar rsi, 3
0021212fadd [rsp+8], rsi
00212134cmp rax, 512
0021213aja 0x2120e8
0021213cjmp 0x21214c
0021213e
0021213e 66 90 f.
00212140
00212140loc_212140:
00212140mov rsi, rcx
00212143and rsi, rbx
00212146je 0x21217d
00212148
00212148loc_212148:
00212148add r15, 8
0021214c
0021214cloc_21214c:
0021214ccmp r15, r12
0021214fjae 0x2120f7
00212151mov rcx, r15
00212154mov rdi, [rsp]
00212158mov ebx, 1
0021215dshr rcx, 3
00212161mov rsi, rcx
00212164shl rbx, cl
00212167and rsi, -64
0021216bcall caml_addrmap_insert_pos
00212170mov rcx, [rax]
00212173test rcx, rcx
00212176jne 0x212140
00212178mov esi, 1
0021217d
0021217dloc_21217d:
0021217dor rbx, rcx
00212180add [rsp+16], rsi
00212185mov [rax], rbx
00212188jmp 0x212148
0021218a
0021218a 66 0f 1f 44 00 00 f..D..
00212190
00212190loc_212190:
00212190mov rdi, [rsp+16]
00212195add [rsp+24], rdi
0021219a
0021219aloc_21219a:
0021219amov rsi, [rsp+8]
0021219fmov rcx, [rsp+24]
002121a4mov rdx, r14
002121a7xor eax, eax
002121a9lea rdi, [rip+0x1e988]
002121b0call caml_gc_log
002121b5mov rsi, [rbp+24]
002121b9mov [rbp+8], r14
002121bdtest rsi, rsi
002121c0je 0x21228b
002121c6mov rcx, [rbp+32]
002121caxor eax, eax
002121cctest rcx, rcx
002121cfjne 0x2121e9
002121d1jmp 0x2121fa
002121d3
002121d3 66 66 2e 0f 1f 84 00 00 00 00 00 66 90 ff.........f.
002121e0
002121e0loc_2121e0:
002121e0add rax, 1
002121e4cmp rax, rcx
002121e7je 0x2121fa
002121e9
002121e9loc_2121e9:
002121e9mov rdx, rax
002121ecshl rdx, 4
002121f0cmp [rsi+rdx], 0
002121f5je 0x2121e0
002121f7mov rcx, rax
002121fa
002121faloc_2121fa:
002121famov [rbp+40], rcx
002121fe
002121feloc_2121fe:
002121femov rax, [rsp+56]
00212203sub rax, [0x28]
0021220cjne 0x2122a0
00212212add rsp, 72
00212216pop rbx
00212217pop rbp
00212218pop r12
0021221apop r13
0021221cpop r14
0021221epop r15
00212220ret
00212221
00212221 0f 1f 80 00 00 00 00 .......
00212228
00212228loc_212228:
00212228mov rax, rbx
0021222bxor edx, edx
0021222dxor ecx, ecx
0021222f
0021222floc_21222f:
0021222flea r13, [rcx+2*rax]
00212233lea rdi, [rip+0x1e806]
0021223axor eax, eax
0021223cmov rsi, r13
0021223fshr rsi, 10
00212243call caml_gc_log
00212248mov rdi, [rbp]
0021224cmov rsi, r13
0021224fcall caml_stat_resize_noexc
00212254test rax, rax
00212257je 0x212270
00212259shr r13, 4
0021225dmov [rbp], rax
00212261mov [rbp+16], r13
00212265jmp 0x2121fe
00212267
00212267 66 0f 1f 84 00 00 00 00 00 f........
00212270
00212270loc_212270:
00212270lea rdi, [rip+0x1e809]
00212277xor eax, eax
00212279call caml_gc_log
0021227ejmp 0x211fce
00212283
00212283loc_212283:
00212283xor r14l, r14l
00212286jmp 0x21219a
0021228b
0021228bloc_21228b:
0021228bmov rcx, -1
00212292jmp 0x2121fa
00212297
00212297loc_212297:
00212297mov rdx, rcx
0021229ashr rdx, 10
0021229ejmp 0x21222f
002122a0
002122a0loc_2122a0:
002122a0call fn_f4590
00211f20
00211f20fn_211f20:
00211f20push r15
00211f22push r14
00211f24push r13
00211f26push r12
00211f28push rbp
00211f29push rbx
00211f2asub rsp, 72
00211f2emov rax, [rip+0x640b3]
00211f35mov rbx, [rdi+16]
00211f39mov rbp, [0x28]
00211f42mov [rsp+56], rbp
00211f47mov rbp, rdi
00211f4ashl rbx, 4
00211f4emov rax, [rax]
00211f52mov rdi, [rax+280]
00211f59call caml_heap_size
00211f5emov r8, rax
00211f61mov r12, rax
00211f64shr r8, 5
00211f68cmp rbx, r8
00211f6bjb 0x212228
00211f71mov rdi, [rbp+8]
00211f75test rdi, rdi
00211f78je 0x211fce
00211f7amov rax, [rbp]
00211f7eshl rdi, 4
00211f82xor ecx, ecx
00211f84add rdi, rax
00211f87nop [rax+rax]
00211f92nop [rax+rax]
00211f9dnop [rax]
00211fa0
00211fa0loc_211fa0:
00211fa0mov rdx, [rax+8]
00211fa4sub rdx, [rax]
00211fa7lea rsi, [rcx+16]
00211fabcmp rdx, 512
00211fb2cmova rcx, rsi
00211fb6add rax, 16
00211fbacmp rdi, rax
00211fbdjne 0x211fa0
00211fbfmov rax, rbx
00211fc2sub rax, rcx
00211fc5cmp rax, r8
00211fc8jb 0x212297
00211fce
00211fceloc_211fce:
00211fcemov rsi, rbx
00211fd1mov rdx, r12
00211fd4lea rdi, [rip+0x1ead5]
00211fdbxor eax, eax
00211fddcall caml_gc_log
00211fe2mov rbx, [rbp+40]
00211fe6mov [rsp+32], 0
00211fefmov [rsp+40], 0
00211ff8mov [rsp+24], 0
00212001cmp rbx, [rbp+32]
00212005jae 0x21209b
0021200bmov rdx, [rbp+24]
0021200fmov rax, rbx
00212012lea r12, [rsp+32]
00212017shl rax, 4
0021201bmov rsi, [rdx+rax]
0021201f
0021201floc_21201f:
0021201fmov rax, rbx
00212022mov rdi, r12
00212025shl rax, 4
00212029mov rdx, [rdx+rax+8]
0021202ecall caml_addrmap_insert
00212033mov rdx, [rbp+24]
00212037add [rsp+24], 1
0021203dtest rdx, rdx
00212040je 0x212080
00212042mov rcx, [rbp+32]
00212046add rbx, 1
0021204acmp rbx, rcx
0021204djb 0x212069
0021204fjmp 0x212080
00212051
00212051 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 ff...........@.
00212060
00212060loc_212060:
00212060add rbx, 1
00212064cmp rbx, rcx
00212067jae 0x212080
00212069
00212069loc_212069:
00212069mov rax, rbx
0021206cshl rax, 4
00212070mov rsi, [rdx+rax]
00212074test rsi, rsi
00212077je 0x212060
00212079cmp rbx, rcx
0021207cjb 0x21201f
0021207enop
00212080
00212080loc_212080:
00212080mov rax, [rsp+24]
00212085test rax, rax
00212088je 0x21209b
0021208amov rsi, rax
0021208dlea rdi, [rip+0x1ea7c]
00212094xor eax, eax
00212096call caml_gc_log
0021209b
0021209bloc_21209b:
0021209blea rax, [rbp+24]
0021209fmov rdi, rax
002120a2mov [rsp], rax
002120a6call caml_addrmap_clear
002120abmovdqa x0, [rsp+32]
002120b1mov rax, [rbp+8]
002120b5movups [rbp+24], x0
002120b9mov [rsp+8], rax
002120betest rax, rax
002120c1je 0x212283
002120c7mov [rsp+16], 0
002120d0xor r14l, r14l
002120d3xor r13l, r13l
002120d6mov [rsp+8], 0
002120dfjmp 0x212105
002120e1
002120e1 0f 1f 80 00 00 00 00 .......
002120e8
002120e8loc_2120e8:
002120e8mov rax, r14
002120ebadd r14, 1
002120efshl rax, 4
002120f3movups [rcx+rax], x0
002120f7
002120f7loc_2120f7:
002120f7add r13, 1
002120fbcmp r13, [rbp+8]
002120ffjae 0x212190
00212105
00212105loc_212105:
00212105mov rcx, [rbp]
00212109mov rax, r13
0021210cshl rax, 4
00212110movdqu x0, [rcx+rax]
00212115movhlps x1, x0
00212118movq r15, x0
0021211dmovq r12, x1
00212122mov rax, r12
00212125sub rax, r15
00212128mov rsi, rax
0021212bsar rsi, 3
0021212fadd [rsp+8], rsi
00212134cmp rax, 512
0021213aja 0x2120e8
0021213cjmp 0x21214c
0021213e
0021213e 66 90 f.
00212140
00212140loc_212140:
00212140mov rsi, rcx
00212143and rsi, rbx
00212146je 0x21217d
00212148
00212148loc_212148:
00212148add r15, 8
0021214c
0021214cloc_21214c:
0021214ccmp r15, r12
0021214fjae 0x2120f7
00212151mov rcx, r15
00212154mov rdi, [rsp]
00212158mov ebx, 1
0021215dshr rcx, 3
00212161mov rsi, rcx
00212164shl rbx, cl
00212167and rsi, -64
0021216bcall caml_addrmap_insert_pos
00212170mov rcx, [rax]
00212173test rcx, rcx
00212176jne 0x212140
00212178mov esi, 1
0021217d
0021217dloc_21217d:
0021217dor rbx, rcx
00212180add [rsp+16], rsi
00212185mov [rax], rbx
00212188jmp 0x212148
0021218a
0021218a 66 0f 1f 44 00 00 f..D..
00212190
00212190loc_212190:
00212190mov rdi, [rsp+16]
00212195add [rsp+24], rdi
0021219a
0021219aloc_21219a:
0021219amov rsi, [rsp+8]
0021219fmov rcx, [rsp+24]
002121a4mov rdx, r14
002121a7xor eax, eax
002121a9lea rdi, [rip+0x1e988]
002121b0call caml_gc_log
002121b5mov rsi, [rbp+24]
002121b9mov [rbp+8], r14
002121bdtest rsi, rsi
002121c0je 0x21228b
002121c6mov rcx, [rbp+32]
002121caxor eax, eax
002121cctest rcx, rcx
002121cfjne 0x2121e9
002121d1jmp 0x2121fa
002121d3
002121d3 66 66 2e 0f 1f 84 00 00 00 00 00 66 90 ff.........f.
002121e0
002121e0loc_2121e0:
002121e0add rax, 1
002121e4cmp rax, rcx
002121e7je 0x2121fa
002121e9
002121e9loc_2121e9:
002121e9mov rdx, rax
002121ecshl rdx, 4
002121f0cmp [rsi+rdx], 0
002121f5je 0x2121e0
002121f7mov rcx, rax
002121fa
002121faloc_2121fa:
002121famov [rbp+40], rcx
002121fe
002121feloc_2121fe:
002121femov rax, [rsp+56]
00212203sub rax, [0x28]
0021220cjne 0x2122a0
00212212add rsp, 72
00212216pop rbx
00212217pop rbp
00212218pop r12
0021221apop r13
0021221cpop r14
0021221epop r15
00212220ret
00212221
00212221 0f 1f 80 00 00 00 00 .......
00212228
00212228loc_212228:
00212228mov rax, rbx
0021222bxor edx, edx
0021222dxor ecx, ecx
0021222f
0021222floc_21222f:
0021222flea r13, [rcx+2*rax]
00212233lea rdi, [rip+0x1e806]
0021223axor eax, eax
0021223cmov rsi, r13
0021223fshr rsi, 10
00212243call caml_gc_log
00212248mov rdi, [rbp]
0021224cmov rsi, r13
0021224fcall caml_stat_resize_noexc
00212254test rax, rax
00212257je 0x212270
00212259shr r13, 4
0021225dmov [rbp], rax
00212261mov [rbp+16], r13
00212265jmp 0x2121fe
00212267
00212267 66 0f 1f 84 00 00 00 00 00 f........
00212270
00212270loc_212270:
00212270lea rdi, [rip+0x1e809]
00212277xor eax, eax
00212279call caml_gc_log
0021227ejmp 0x211fce
00212283
00212283loc_212283:
00212283xor r14l, r14l
00212286jmp 0x21219a
0021228b
0021228bloc_21228b:
0021228bmov rcx, -1
00212292jmp 0x2121fa
00212297
00212297loc_212297:
00212297mov rdx, rcx
0021229ashr rdx, 10
0021229ejmp 0x21222f
002122a0
002122a0loc_2122a0:
002122a0call fn_f4590
00211f20
002122a5
002122a5 // align 0x10
002122a5 // align 0x10
002122b0
002122b0fn_2122b0:
002122b0push r14
002122b2mov r8, rsi
002122b5push r13
002122b7push r12
002122b9mov r12, rdi
002122bcpush rbp
002122bdpush rbx
002122bemov rdi, [rsi-8]
002122c2movzx eax, [rsi-8]
002122c6shr rdi, 10
002122cacmp al, -9
002122ccje 0x212380
002122d2xor ebx, ebx
002122d4xor ecx, ecx
002122d6xor ebp, ebp
002122d8
002122d8loc_2122d8:
002122d8mov edx, 8
002122ddcmp rdi, rdx
002122e0cmovbe rdx, rdi
002122e4mov eax, edx
002122e6cmp edx, ecx
002122e8jle 0x21232f
002122eamovsxd rbx, ecx
002122edmov rsi, [rip+0x1662d4]
002122f4mov r9, [rip+0x1662d5]
002122fblea rdx, [r8+8*rbx]
002122ffjmp 0x21230b
00212301
00212301 0f 1f 80 00 00 00 00 .......
00212308
00212308loc_212308:
00212308mov rbx, rcx
0021230b
0021230bloc_21230b:
0021230bmov rcx, [rdx]
0021230etest cl, 1
00212311jne 0x21231d
00212313cmp rcx, rsi
00212316jae 0x21232f
00212318cmp r9, rcx
0021231bjae 0x21232f
0021231d
0021231dloc_21231d:
0021231dlea rcx, [rbx+1]
00212321add rdx, 8
00212325cmp eax, ecx
00212327jg 0x212308
00212329add ebx, 1
0021232cmovsxd rbx, ebx
0021232f
0021232floc_21232f:
0021232fcmp rdi, rbx
00212332je 0x212370
00212334mov rax, [r12+8]
00212339lea r13, [r8+8*rdi]
0021233dlea r14, [r8+8*rbx]
00212341cmp rax, [r12+16]
00212346je 0x212396
00212348
00212348loc_212348:
00212348lea rdx, [rax+1]
0021234cshl rax, 4
00212350add rax, [r12]
00212354mov [r12+8], rdx
00212359mov [rax], r14
0021235cmov [rax+8], r13
00212360mov rax, rbx
00212363pop rbx
00212364sub rax, rbp
00212367pop rbp
00212368pop r12
0021236apop r13
0021236cpop r14
0021236eret
0021236f
0021236f 90 .
00212370
00212370loc_212370:
00212370sub rdi, rbp
00212373pop rbx
00212374pop rbp
00212375lea rax, [rdi+1]
00212379pop r12
0021237bpop r13
0021237dpop r14
0021237fret
00212380
00212380loc_212380:
00212380mov rbp, [rsi+8]
00212384shl rbp, 8
00212388shr rbp, 9
0021238cmov ecx, ebp
0021238emovsxd rbx, ebp
00212391jmp 0x2122d8
00212396
00212396loc_212396:
00212396mov rdi, r12
00212399call fn_211f20
0021239emov rax, [r12+8]
002123a3jmp 0x212348
002122b0
002122b0fn_2122b0:
002122b0push r14
002122b2mov r8, rsi
002122b5push r13
002122b7push r12
002122b9mov r12, rdi
002122bcpush rbp
002122bdpush rbx
002122bemov rdi, [rsi-8]
002122c2movzx eax, [rsi-8]
002122c6shr rdi, 10
002122cacmp al, -9
002122ccje 0x212380
002122d2xor ebx, ebx
002122d4xor ecx, ecx
002122d6xor ebp, ebp
002122d8
002122d8loc_2122d8:
002122d8mov edx, 8
002122ddcmp rdi, rdx
002122e0cmovbe rdx, rdi
002122e4mov eax, edx
002122e6cmp edx, ecx
002122e8jle 0x21232f
002122eamovsxd rbx, ecx
002122edmov rsi, [rip+0x1662d4]
002122f4mov r9, [rip+0x1662d5]
002122fblea rdx, [r8+8*rbx]
002122ffjmp 0x21230b
00212301
00212301 0f 1f 80 00 00 00 00 .......
00212308
00212308loc_212308:
00212308mov rbx, rcx
0021230b
0021230bloc_21230b:
0021230bmov rcx, [rdx]
0021230etest cl, 1
00212311jne 0x21231d
00212313cmp rcx, rsi
00212316jae 0x21232f
00212318cmp r9, rcx
0021231bjae 0x21232f
0021231d
0021231dloc_21231d:
0021231dlea rcx, [rbx+1]
00212321add rdx, 8
00212325cmp eax, ecx
00212327jg 0x212308
00212329add ebx, 1
0021232cmovsxd rbx, ebx
0021232f
0021232floc_21232f:
0021232fcmp rdi, rbx
00212332je 0x212370
00212334mov rax, [r12+8]
00212339lea r13, [r8+8*rdi]
0021233dlea r14, [r8+8*rbx]
00212341cmp rax, [r12+16]
00212346je 0x212396
00212348
00212348loc_212348:
00212348lea rdx, [rax+1]
0021234cshl rax, 4
00212350add rax, [r12]
00212354mov [r12+8], rdx
00212359mov [rax], r14
0021235cmov [rax+8], r13
00212360mov rax, rbx
00212363pop rbx
00212364sub rax, rbp
00212367pop rbp
00212368pop r12
0021236apop r13
0021236cpop r14
0021236eret
0021236f
0021236f 90 .
00212370
00212370loc_212370:
00212370sub rdi, rbp
00212373pop rbx
00212374pop rbp
00212375lea rax, [rdi+1]
00212379pop r12
0021237bpop r13
0021237dpop r14
0021237fret
00212380
00212380loc_212380:
00212380mov rbp, [rsi+8]
00212384shl rbp, 8
00212388shr rbp, 9
0021238cmov ecx, ebp
0021238emovsxd rbx, ebp
00212391jmp 0x2122d8
00212396
00212396loc_212396:
00212396mov rdi, r12
00212399call fn_211f20
0021239emov rax, [r12+8]
002123a3jmp 0x212348
002122b0
002123a5
002123a5 // align 0x10
002123a5 // align 0x10
002123b0
002123b0fn_2123b0:
002123b0push rbx
002123b1lea rbx, [rip+0x166708]
002123b8mov rdi, rbx
002123bbcall fn_f4710
002123c0test eax, eax
002123c2jne 0x2123ed
002123c4xor eax, eax
002123c6xchg [rip+0x166733], rax
002123cdlock add [rip+0x166722], 1
002123d6lock sub [rip+0x166711], 1
002123dfmov rdi, rbx
002123e2call fn_f47c0
002123e7test eax, eax
002123e9jne 0x2123fb
002123ebpop rbx
002123ecret
002123ed
002123edloc_2123ed:
002123edmov esi, eax
002123eflea rdi, [rip+0x1d119]
002123f6call caml_plat_fatal_error
002123fb
002123fbloc_2123fb:
002123fbmov esi, eax
002123fdlea rdi, [rip+0x1d116]
00212404call caml_plat_fatal_error
002123b0
002123b0fn_2123b0:
002123b0push rbx
002123b1lea rbx, [rip+0x166708]
002123b8mov rdi, rbx
002123bbcall fn_f4710
002123c0test eax, eax
002123c2jne 0x2123ed
002123c4xor eax, eax
002123c6xchg [rip+0x166733], rax
002123cdlock add [rip+0x166722], 1
002123d6lock sub [rip+0x166711], 1
002123dfmov rdi, rbx
002123e2call fn_f47c0
002123e7test eax, eax
002123e9jne 0x2123fb
002123ebpop rbx
002123ecret
002123ed
002123edloc_2123ed:
002123edmov esi, eax
002123eflea rdi, [rip+0x1d119]
002123f6call caml_plat_fatal_error
002123fb
002123fbloc_2123fb:
002123fbmov esi, eax
002123fdlea rdi, [rip+0x1d116]
00212404call caml_plat_fatal_error
002123b0
Loading..