File hevea_f46f610a6b0078f4aa208dda361f21de574cc56ad64b32889301afc466d33979.elf
Function:
Loading..
00208a20
00208a20caml_gc_quick_stat:
00208a20push r14
00208a22push r13
00208a24push r12
00208a26push rbp
00208a27push rbx
00208a28sub rsp, 192
00208a2fmov rax, [0x28]
00208a38mov [rsp+184], rax
00208a40mov rax, [rip+0x6d59d]
00208a47lea rdi, [rsp+16]
00208a4cmov rbx, [rax]
00208a50lea rax, [rsp+112]
00208a55mov [rsp+8], 1
00208a5emov rbp, [rbx+160]
00208a65mov [rbx+160], rax
00208a6cmov eax, 1
00208a71movq x0, rax
00208a76lea rax, [rsp+8]
00208a7bpunpcklqdq x0, x0
00208a7fmov [rsp+136], rax
00208a87movups [rsp+120], x0
00208a8cmov [rsp+112], rbp
00208a91call caml_compute_gc_stats
00208a96mov r13, [rip+0x16ffc7]
00208a9dmov edi, 17
00208aa2mov r14, [rip+0x17014b]
00208aa9mov r12, [rip+0x17030c]
00208ab0call caml_alloc_tuple
00208ab5mov [rsp+8], rax
00208abamov rax, [rsp+16]
00208abftest rax, rax
00208ac2js 0x208cc8
00208ac8pxor x0, x0
00208acccvtsi2sd x0, rax
00208ad1call caml_copy_double
00208ad6mov rdi, [rsp+8]
00208adbmov rsi, rax
00208adecall caml_modify
00208ae3mov rax, [rsp+24]
00208ae8test rax, rax
00208aebjs 0x208d10
00208af1pxor x0, x0
00208af5cvtsi2sd x0, rax
00208afacall caml_copy_double
00208affmov rsi, rax
00208b02mov rax, [rsp+8]
00208b07lea rdi, [rax+8]
00208b0bcall caml_modify
00208b10mov rax, [rsp+32]
00208b15test rax, rax
00208b18js 0x208cf0
00208b1epxor x0, x0
00208b22cvtsi2sd x0, rax
00208b27call caml_copy_double
00208b2cmov rsi, rax
00208b2fmov rax, [rsp+8]
00208b34lea rdi, [rax+16]
00208b38call caml_modify
00208b3dmov rax, [rsp+8]
00208b42lea rsi, [r14+r14+1]
00208b47lea rdi, [rax+24]
00208b4bcall caml_modify
00208b50mov rax, [rsp+8]
00208b55lea rsi, [r13+r13+1]
00208b5alea rdi, [rax+32]
00208b5ecall caml_modify
00208b63mov rax, [rsp+88]
00208b68add rax, [rsp+48]
00208b6dlea rsi, [rax+rax+1]
00208b72mov rax, [rsp+8]
00208b77lea rdi, [rax+40]
00208b7bcall caml_modify
00208b80mov rax, [rsp+8]
00208b85mov esi, 1
00208b8alea rdi, [rax+48]
00208b8ecall caml_modify
00208b93mov rax, [rsp+88]
00208b98add rax, [rsp+64]
00208b9dlea rsi, [rax+rax+1]
00208ba2mov rax, [rsp+8]
00208ba7lea rdi, [rax+56]
00208babcall caml_modify
00208bb0mov rax, [rsp+104]
00208bb5add rax, [rsp+72]
00208bbalea rsi, [rax+rax+1]
00208bbfmov rax, [rsp+8]
00208bc4lea rdi, [rax+64]
00208bc8call caml_modify
00208bcdmov rax, [rsp+48]
00208bd2mov rdx, [rsp+80]
00208bd7add rdx, [rsp+64]
00208bdcsub rax, rdx
00208bdflea rsi, [rax+rax+1]
00208be4mov rax, [rsp+8]
00208be9lea rdi, [rax+72]
00208bedcall caml_modify
00208bf2mov rax, [rsp+8]
00208bf7mov esi, 1
00208bfclea rdi, [rax+80]
00208c00call caml_modify
00208c05mov rax, [rsp+8]
00208c0amov esi, 1
00208c0flea rdi, [rax+88]
00208c13call caml_modify
00208c18mov rax, [rsp+80]
00208c1dlea rsi, [rax+rax+1]
00208c22mov rax, [rsp+8]
00208c27lea rdi, [rax+96]
00208c2bcall caml_modify
00208c30mov rax, [rsp+8]
00208c35lea rsi, [r12+r12+1]
00208c3alea rdi, [rax+104]
00208c3ecall caml_modify
00208c43mov rax, [rsp+96]
00208c48add rax, [rsp+56]
00208c4dlea rsi, [rax+rax+1]
00208c52mov rax, [rsp+8]
00208c57lea rdi, [rax+112]
00208c5bcall caml_modify
00208c60mov rax, [rsp+8]
00208c65mov esi, 1
00208c6alea rdi, [rax+120]
00208c6ecall caml_modify
00208c73mov rax, [rsp+40]
00208c78lea rsi, [rax+rax+1]
00208c7dmov rax, [rsp+8]
00208c82lea rdi, [rax+128]
00208c89call caml_modify
00208c8emov [rbx+160], rbp
00208c95mov rax, [rsp+8]
00208c9amov rdx, [rsp+184]
00208ca2sub rdx, [0x28]
00208cabjne 0x208d2e
00208cadadd rsp, 192
00208cb4pop rbx
00208cb5pop rbp
00208cb6pop r12
00208cb8pop r13
00208cbapop r14
00208cbcret
00208cbddb 0x5d
00208cbepop r14
00208cc0ret
00208cc1
00208cc1 0f 1f 80 00 00 00 00 .......
00208cc8
00208cc8loc_208cc8:
00208cc8mov rdx, rax
00208ccband eax, 1
00208ccepxor x0, x0
00208cd2shr rdx, 1
00208cd5or rdx, rax
00208cd8cvtsi2sd x0, rdx
00208cddaddsd x0, x0
00208ce1jmp 0x208ad5
00208ce6
00208ce6 66 2e 0f 1f 84 00 00 00 00 00 f.........
00208cf0
00208cf0loc_208cf0:
00208cf0mov rdx, rax
00208cf3and eax, 1
00208cf6pxor x0, x0
00208cfashr rdx, 1
00208cfdor rdx, rax
00208d00cvtsi2sd x0, rdx
00208d05addsd x0, x0
00208d09jmp 0x208b2b
00208d0e
00208d0e 66 90 f.
00208d10
00208d10loc_208d10:
00208d10mov rdx, rax
00208d13and eax, 1
00208d16pxor x0, x0
00208d1ashr rdx, 1
00208d1dor rdx, rax
00208d20cvtsi2sd x0, rdx
00208d25addsd x0, x0
00208d29jmp 0x208afe
00208d2e
00208d2eloc_208d2e:
00208d2ecall fn_f4590
00208a20
00208a20caml_gc_quick_stat:
00208a20push r14
00208a22push r13
00208a24push r12
00208a26push rbp
00208a27push rbx
00208a28sub rsp, 192
00208a2fmov rax, [0x28]
00208a38mov [rsp+184], rax
00208a40mov rax, [rip+0x6d59d]
00208a47lea rdi, [rsp+16]
00208a4cmov rbx, [rax]
00208a50lea rax, [rsp+112]
00208a55mov [rsp+8], 1
00208a5emov rbp, [rbx+160]
00208a65mov [rbx+160], rax
00208a6cmov eax, 1
00208a71movq x0, rax
00208a76lea rax, [rsp+8]
00208a7bpunpcklqdq x0, x0
00208a7fmov [rsp+136], rax
00208a87movups [rsp+120], x0
00208a8cmov [rsp+112], rbp
00208a91call caml_compute_gc_stats
00208a96mov r13, [rip+0x16ffc7]
00208a9dmov edi, 17
00208aa2mov r14, [rip+0x17014b]
00208aa9mov r12, [rip+0x17030c]
00208ab0call caml_alloc_tuple
00208ab5mov [rsp+8], rax
00208abamov rax, [rsp+16]
00208abftest rax, rax
00208ac2js 0x208cc8
00208ac8pxor x0, x0
00208acccvtsi2sd x0, rax
00208ad1call caml_copy_double
00208ad6mov rdi, [rsp+8]
00208adbmov rsi, rax
00208adecall caml_modify
00208ae3mov rax, [rsp+24]
00208ae8test rax, rax
00208aebjs 0x208d10
00208af1pxor x0, x0
00208af5cvtsi2sd x0, rax
00208afacall caml_copy_double
00208affmov rsi, rax
00208b02mov rax, [rsp+8]
00208b07lea rdi, [rax+8]
00208b0bcall caml_modify
00208b10mov rax, [rsp+32]
00208b15test rax, rax
00208b18js 0x208cf0
00208b1epxor x0, x0
00208b22cvtsi2sd x0, rax
00208b27call caml_copy_double
00208b2cmov rsi, rax
00208b2fmov rax, [rsp+8]
00208b34lea rdi, [rax+16]
00208b38call caml_modify
00208b3dmov rax, [rsp+8]
00208b42lea rsi, [r14+r14+1]
00208b47lea rdi, [rax+24]
00208b4bcall caml_modify
00208b50mov rax, [rsp+8]
00208b55lea rsi, [r13+r13+1]
00208b5alea rdi, [rax+32]
00208b5ecall caml_modify
00208b63mov rax, [rsp+88]
00208b68add rax, [rsp+48]
00208b6dlea rsi, [rax+rax+1]
00208b72mov rax, [rsp+8]
00208b77lea rdi, [rax+40]
00208b7bcall caml_modify
00208b80mov rax, [rsp+8]
00208b85mov esi, 1
00208b8alea rdi, [rax+48]
00208b8ecall caml_modify
00208b93mov rax, [rsp+88]
00208b98add rax, [rsp+64]
00208b9dlea rsi, [rax+rax+1]
00208ba2mov rax, [rsp+8]
00208ba7lea rdi, [rax+56]
00208babcall caml_modify
00208bb0mov rax, [rsp+104]
00208bb5add rax, [rsp+72]
00208bbalea rsi, [rax+rax+1]
00208bbfmov rax, [rsp+8]
00208bc4lea rdi, [rax+64]
00208bc8call caml_modify
00208bcdmov rax, [rsp+48]
00208bd2mov rdx, [rsp+80]
00208bd7add rdx, [rsp+64]
00208bdcsub rax, rdx
00208bdflea rsi, [rax+rax+1]
00208be4mov rax, [rsp+8]
00208be9lea rdi, [rax+72]
00208bedcall caml_modify
00208bf2mov rax, [rsp+8]
00208bf7mov esi, 1
00208bfclea rdi, [rax+80]
00208c00call caml_modify
00208c05mov rax, [rsp+8]
00208c0amov esi, 1
00208c0flea rdi, [rax+88]
00208c13call caml_modify
00208c18mov rax, [rsp+80]
00208c1dlea rsi, [rax+rax+1]
00208c22mov rax, [rsp+8]
00208c27lea rdi, [rax+96]
00208c2bcall caml_modify
00208c30mov rax, [rsp+8]
00208c35lea rsi, [r12+r12+1]
00208c3alea rdi, [rax+104]
00208c3ecall caml_modify
00208c43mov rax, [rsp+96]
00208c48add rax, [rsp+56]
00208c4dlea rsi, [rax+rax+1]
00208c52mov rax, [rsp+8]
00208c57lea rdi, [rax+112]
00208c5bcall caml_modify
00208c60mov rax, [rsp+8]
00208c65mov esi, 1
00208c6alea rdi, [rax+120]
00208c6ecall caml_modify
00208c73mov rax, [rsp+40]
00208c78lea rsi, [rax+rax+1]
00208c7dmov rax, [rsp+8]
00208c82lea rdi, [rax+128]
00208c89call caml_modify
00208c8emov [rbx+160], rbp
00208c95mov rax, [rsp+8]
00208c9amov rdx, [rsp+184]
00208ca2sub rdx, [0x28]
00208cabjne 0x208d2e
00208cadadd rsp, 192
00208cb4pop rbx
00208cb5pop rbp
00208cb6pop r12
00208cb8pop r13
00208cbapop r14
00208cbcret
00208cbddb 0x5d
00208cbepop r14
00208cc0ret
00208cc1
00208cc1 0f 1f 80 00 00 00 00 .......
00208cc8
00208cc8loc_208cc8:
00208cc8mov rdx, rax
00208ccband eax, 1
00208ccepxor x0, x0
00208cd2shr rdx, 1
00208cd5or rdx, rax
00208cd8cvtsi2sd x0, rdx
00208cddaddsd x0, x0
00208ce1jmp 0x208ad5
00208ce6
00208ce6 66 2e 0f 1f 84 00 00 00 00 00 f.........
00208cf0
00208cf0loc_208cf0:
00208cf0mov rdx, rax
00208cf3and eax, 1
00208cf6pxor x0, x0
00208cfashr rdx, 1
00208cfdor rdx, rax
00208d00cvtsi2sd x0, rdx
00208d05addsd x0, x0
00208d09jmp 0x208b2b
00208d0e
00208d0e 66 90 f.
00208d10
00208d10loc_208d10:
00208d10mov rdx, rax
00208d13and eax, 1
00208d16pxor x0, x0
00208d1ashr rdx, 1
00208d1dor rdx, rax
00208d20cvtsi2sd x0, rdx
00208d25addsd x0, x0
00208d29jmp 0x208afe
00208d2e
00208d2eloc_208d2e:
00208d2ecall fn_f4590
00208a20
00208d33
00208d33 // align 0x10
00208d33 // align 0x10
00208d40
00208d40caml_gc_minor_words_unboxed:
00208d40mov rax, [rip+0x6d29d]
00208d47pxor x0, x0
00208d4bmov rdx, [rax]
00208d4fmov rax, [rdx+24]
00208d53sub rax, [rdx+8]
00208d57shr rax, 3
00208d5bcvtsi2sd x0, rax
00208d60mov rax, [rdx+384]
00208d67test rax, rax
00208d6ajs 0x208d80
00208d6cpxor x1, x1
00208d70cvtsi2sd x1, rax
00208d75addsd x0, x1
00208d79ret
00208d7adb 0x0f
00208d7bpop rax
00208d7cdb 0xc1
00208d7dret
00208d7e
00208d7e 66 90 f.
00208d80
00208d80loc_208d80:
00208d80mov rdx, rax
00208d83and eax, 1
00208d86pxor x1, x1
00208d8ashr rdx, 1
00208d8dor rdx, rax
00208d90cvtsi2sd x1, rdx
00208d95addsd x1, x1
00208d99addsd x0, x1
00208d9dret
00208d40
00208d40caml_gc_minor_words_unboxed:
00208d40mov rax, [rip+0x6d29d]
00208d47pxor x0, x0
00208d4bmov rdx, [rax]
00208d4fmov rax, [rdx+24]
00208d53sub rax, [rdx+8]
00208d57shr rax, 3
00208d5bcvtsi2sd x0, rax
00208d60mov rax, [rdx+384]
00208d67test rax, rax
00208d6ajs 0x208d80
00208d6cpxor x1, x1
00208d70cvtsi2sd x1, rax
00208d75addsd x0, x1
00208d79ret
00208d7adb 0x0f
00208d7bpop rax
00208d7cdb 0xc1
00208d7dret
00208d7e
00208d7e 66 90 f.
00208d80
00208d80loc_208d80:
00208d80mov rdx, rax
00208d83and eax, 1
00208d86pxor x1, x1
00208d8ashr rdx, 1
00208d8dor rdx, rax
00208d90cvtsi2sd x1, rdx
00208d95addsd x1, x1
00208d99addsd x0, x1
00208d9dret
00208d40
00208d9e
00208d9e // align 0x10
00208d9e // align 0x10
00208da0
00208da0caml_gc_minor_words:
00208da0push rbp
00208da1pxor x0, x0
00208da5push rbx
00208da6sub rsp, 8
00208daamov rax, [rip+0x6d233]
00208db1mov rbx, [rax]
00208db5mov rax, [rbx+24]
00208db9sub rax, [rbx+8]
00208dbdshr rax, 3
00208dc1mov rbp, [rbx+160]
00208dc8cvtsi2sd x0, rax
00208dcdmov rax, [rbx+384]
00208dd4test rax, rax
00208dd7js 0x208e00
00208dd9pxor x1, x1
00208dddcvtsi2sd x1, rax
00208de2addsd x0, x1
00208de6
00208de6loc_208de6:
00208de6call caml_copy_double
00208debmov [rbx+160], rbp
00208df2add rsp, 8
00208df6pop rbx
00208df7pop rbp
00208df8ret
00208df9db 0x08
00208dfapop rbx
00208dfbpop rbp
00208dfcret
00208dfd
00208dfd 0f 1f 00 ...
00208e00
00208e00loc_208e00:
00208e00mov rdx, rax
00208e03and eax, 1
00208e06pxor x1, x1
00208e0ashr rdx, 1
00208e0dor rdx, rax
00208e10cvtsi2sd x1, rdx
00208e15addsd x1, x1
00208e19jmp 0x208de6
00208da0
00208da0caml_gc_minor_words:
00208da0push rbp
00208da1pxor x0, x0
00208da5push rbx
00208da6sub rsp, 8
00208daamov rax, [rip+0x6d233]
00208db1mov rbx, [rax]
00208db5mov rax, [rbx+24]
00208db9sub rax, [rbx+8]
00208dbdshr rax, 3
00208dc1mov rbp, [rbx+160]
00208dc8cvtsi2sd x0, rax
00208dcdmov rax, [rbx+384]
00208dd4test rax, rax
00208dd7js 0x208e00
00208dd9pxor x1, x1
00208dddcvtsi2sd x1, rax
00208de2addsd x0, x1
00208de6
00208de6loc_208de6:
00208de6call caml_copy_double
00208debmov [rbx+160], rbp
00208df2add rsp, 8
00208df6pop rbx
00208df7pop rbp
00208df8ret
00208df9db 0x08
00208dfapop rbx
00208dfbpop rbp
00208dfcret
00208dfd
00208dfd 0f 1f 00 ...
00208e00
00208e00loc_208e00:
00208e00mov rdx, rax
00208e03and eax, 1
00208e06pxor x1, x1
00208e0ashr rdx, 1
00208e0dor rdx, rax
00208e10cvtsi2sd x1, rdx
00208e15addsd x1, x1
00208e19jmp 0x208de6
00208da0
00208e1b
00208e1b // align 0x10
00208e1b // align 0x10
00208e20
00208e20caml_gc_counters:
00208e20push r15
00208e22push r14
00208e24push rbp
00208e25push rbx
00208e26sub rsp, 120
00208e2amovdqa x0, [rip+0x212ba]
00208e32mov rax, [0x28]
00208e3bmov [rsp+104], rax
00208e40mov rax, [rip+0x6d19d]
00208e47mov rbx, [rax]
00208e4blea rax, [rsp+32]
00208e50movups [rsp+40], x0
00208e55movq x0, rsp
00208e5amov [rsp], 1
00208e62mov [rsp+8], 1
00208e6bmov rbp, [rbx+160]
00208e72mov [rbx+160], rax
00208e79lea rax, [rsp+8]
00208e7emovq x2, rax
00208e83lea rax, [rsp+16]
00208e88mov [rsp+32], rbp
00208e8dmov [rsp+16], 1
00208e96punpcklqdq x0, x2
00208e9amovups [rsp+56], x0
00208e9fmovq x0, rax
00208ea4lea rax, [rsp+24]
00208ea9mov [rsp+24], 1
00208eb2movq x3, rax
00208eb7mov rax, [rbx+392]
00208ebepunpcklqdq x0, x3
00208ec2movups [rsp+72], x0
00208ec7test rax, rax
00208ecajs 0x208fb0
00208ed0pxor x4, x4
00208ed4cvtsi2sd x4, rax
00208ed9mov rax, [rbx+400]
00208ee0movq r14, x4
00208ee5test rax, rax
00208ee8js 0x208fde
00208eeepxor x1, x1
00208ef2
00208ef2loc_208ef2:
00208ef2cvtsi2sd x1, rax
00208ef7mov rax, [rbx+128]
00208efetest rax, rax
00208f01js 0x209007
00208f07pxor x0, x0
00208f0b
00208f0bloc_208f0b:
00208f0bcvtsi2sd x0, rax
00208f10mov rax, [rbx+24]
00208f14
00208f14loc_208f14:
00208f14sub rax, [rbx+8]
00208f18addsd x1, x0
00208f1cpxor x0, x0
00208f20shr rax, 3
00208f24cvtsi2sd x0, rax
00208f29mov rax, [rbx+384]
00208f30movq r15, x1
00208f35test rax, rax
00208f38js 0x209028
00208f3epxor x1, x1
00208f42cvtsi2sd x1, rax
00208f47addsd x0, x1
00208f4b
00208f4bloc_208f4b:
00208f4bcall caml_copy_double
00208f50movq x0, r14
00208f55mov [rsp], rax
00208f59call caml_copy_double
00208f5emovq x0, r15
00208f63mov [rsp+8], rax
00208f68call caml_copy_double
00208f6dmov rdx, [rsp+8]
00208f72mov rsi, [rsp]
00208f76xor edi, edi
00208f78mov rcx, rax
00208f7bmov [rsp+16], rax
00208f80call caml_alloc_3
00208f85mov [rbx+160], rbp
00208f8cmov rdx, [rsp+104]
00208f91sub rdx, [0x28]
00208f9ajne 0x209046
00208fa0add rsp, 120
00208fa4pop rbx
00208fa5pop rbp
00208fa6pop r14
00208fa8pop r15
00208faaret
00208fabdb 0x5e
00208facpop r15
00208faeret
00208faf
00208faf 90 .
00208fb0
00208fb0loc_208fb0:
00208fb0mov rdx, rax
00208fb3and eax, 1
00208fb6pxor x0, x0
00208fbashr rdx, 1
00208fbdor rdx, rax
00208fc0mov rax, [rbx+400]
00208fc7cvtsi2sd x0, rdx
00208fccaddsd x0, x0
00208fd0movq r14, x0
00208fd5test rax, rax
00208fd8jns 0x208ef2
00208fde
00208fdeloc_208fde:
00208fdemov rdx, rax
00208fe1and eax, 1
00208fe4pxor x1, x1
00208fe8shr rdx, 1
00208febor rdx, rax
00208feemov rax, [rbx+128]
00208ff5cvtsi2sd x1, rdx
00208ffaaddsd x1, x1
00208ffetest rax, rax
00209001jns 0x208f0b
00209007
00209007loc_209007:
00209007mov rdx, rax
0020900aand eax, 1
0020900dpxor x0, x0
00209011shr rdx, 1
00209014or rdx, rax
00209017cvtsi2sd x0, rdx
0020901caddsd x0, x0
00209020jmp 0x208f14
00209025
00209025 0f 1f 00 ...
00209028
00209028loc_209028:
00209028mov rdx, rax
0020902band eax, 1
0020902epxor x1, x1
00209032shr rdx, 1
00209035or rdx, rax
00209038cvtsi2sd x1, rdx
0020903daddsd x1, x1
00209041jmp 0x208f4b
00209046
00209046loc_209046:
00209046call fn_f4590
00208e20
00208e20caml_gc_counters:
00208e20push r15
00208e22push r14
00208e24push rbp
00208e25push rbx
00208e26sub rsp, 120
00208e2amovdqa x0, [rip+0x212ba]
00208e32mov rax, [0x28]
00208e3bmov [rsp+104], rax
00208e40mov rax, [rip+0x6d19d]
00208e47mov rbx, [rax]
00208e4blea rax, [rsp+32]
00208e50movups [rsp+40], x0
00208e55movq x0, rsp
00208e5amov [rsp], 1
00208e62mov [rsp+8], 1
00208e6bmov rbp, [rbx+160]
00208e72mov [rbx+160], rax
00208e79lea rax, [rsp+8]
00208e7emovq x2, rax
00208e83lea rax, [rsp+16]
00208e88mov [rsp+32], rbp
00208e8dmov [rsp+16], 1
00208e96punpcklqdq x0, x2
00208e9amovups [rsp+56], x0
00208e9fmovq x0, rax
00208ea4lea rax, [rsp+24]
00208ea9mov [rsp+24], 1
00208eb2movq x3, rax
00208eb7mov rax, [rbx+392]
00208ebepunpcklqdq x0, x3
00208ec2movups [rsp+72], x0
00208ec7test rax, rax
00208ecajs 0x208fb0
00208ed0pxor x4, x4
00208ed4cvtsi2sd x4, rax
00208ed9mov rax, [rbx+400]
00208ee0movq r14, x4
00208ee5test rax, rax
00208ee8js 0x208fde
00208eeepxor x1, x1
00208ef2
00208ef2loc_208ef2:
00208ef2cvtsi2sd x1, rax
00208ef7mov rax, [rbx+128]
00208efetest rax, rax
00208f01js 0x209007
00208f07pxor x0, x0
00208f0b
00208f0bloc_208f0b:
00208f0bcvtsi2sd x0, rax
00208f10mov rax, [rbx+24]
00208f14
00208f14loc_208f14:
00208f14sub rax, [rbx+8]
00208f18addsd x1, x0
00208f1cpxor x0, x0
00208f20shr rax, 3
00208f24cvtsi2sd x0, rax
00208f29mov rax, [rbx+384]
00208f30movq r15, x1
00208f35test rax, rax
00208f38js 0x209028
00208f3epxor x1, x1
00208f42cvtsi2sd x1, rax
00208f47addsd x0, x1
00208f4b
00208f4bloc_208f4b:
00208f4bcall caml_copy_double
00208f50movq x0, r14
00208f55mov [rsp], rax
00208f59call caml_copy_double
00208f5emovq x0, r15
00208f63mov [rsp+8], rax
00208f68call caml_copy_double
00208f6dmov rdx, [rsp+8]
00208f72mov rsi, [rsp]
00208f76xor edi, edi
00208f78mov rcx, rax
00208f7bmov [rsp+16], rax
00208f80call caml_alloc_3
00208f85mov [rbx+160], rbp
00208f8cmov rdx, [rsp+104]
00208f91sub rdx, [0x28]
00208f9ajne 0x209046
00208fa0add rsp, 120
00208fa4pop rbx
00208fa5pop rbp
00208fa6pop r14
00208fa8pop r15
00208faaret
00208fabdb 0x5e
00208facpop r15
00208faeret
00208faf
00208faf 90 .
00208fb0
00208fb0loc_208fb0:
00208fb0mov rdx, rax
00208fb3and eax, 1
00208fb6pxor x0, x0
00208fbashr rdx, 1
00208fbdor rdx, rax
00208fc0mov rax, [rbx+400]
00208fc7cvtsi2sd x0, rdx
00208fccaddsd x0, x0
00208fd0movq r14, x0
00208fd5test rax, rax
00208fd8jns 0x208ef2
00208fde
00208fdeloc_208fde:
00208fdemov rdx, rax
00208fe1and eax, 1
00208fe4pxor x1, x1
00208fe8shr rdx, 1
00208febor rdx, rax
00208feemov rax, [rbx+128]
00208ff5cvtsi2sd x1, rdx
00208ffaaddsd x1, x1
00208ffetest rax, rax
00209001jns 0x208f0b
00209007
00209007loc_209007:
00209007mov rdx, rax
0020900aand eax, 1
0020900dpxor x0, x0
00209011shr rdx, 1
00209014or rdx, rax
00209017cvtsi2sd x0, rdx
0020901caddsd x0, x0
00209020jmp 0x208f14
00209025
00209025 0f 1f 00 ...
00209028
00209028loc_209028:
00209028mov rdx, rax
0020902band eax, 1
0020902epxor x1, x1
00209032shr rdx, 1
00209035or rdx, rax
00209038cvtsi2sd x1, rdx
0020903daddsd x1, x1
00209041jmp 0x208f4b
00209046
00209046loc_209046:
00209046call fn_f4590
00208e20
0020904b
0020904b // align 0x10
0020904b // align 0x10
00209050
00209050caml_gc_get:
00209050push r12
00209052mov edi, 11
00209057push rbp
00209058push rbx
00209059sub rsp, 96
0020905dmov r12, [0x28]
00209066mov [rsp+88], r12
0020906bmov r12, [rip+0x6cf72]
00209072lea rax, [rsp+16]
00209077mov rbx, [r12]
0020907cmov [rsp+8], 1
00209085mov rbp, [rbx+160]
0020908cmov [rbx+160], rax
00209093mov eax, 1
00209098movq x0, rax
0020909dlea rax, [rsp+8]
002090a2punpcklqdq x0, x0
002090a6mov [rsp+16], rbp
002090abmovups [rsp+24], x0
002090b0mov [rsp+40], rax
002090b5call caml_alloc_tuple
002090bamov rdi, rax
002090bdmov [rsp+8], rax
002090c2mov rax, [r12]
002090c7mov rax, [rax+272]
002090celea rsi, [rax+rax+1]
002090d3call caml_modify
002090d8mov rax, [rip+0x16f2bd]
002090dflea rsi, [rax+rax+1]
002090e4mov rax, [rsp+8]
002090e9lea rdi, [rax+16]
002090edcall caml_modify
002090f2mov rax, [rip+0x16fb33]
002090f9lea rsi, [rax+rax+1]
002090femov rax, [rsp+8]
00209103lea rdi, [rax+24]
00209107call caml_modify
0020910cmov rax, [rip+0x16f651]
00209113lea rsi, [rax+rax+1]
00209118mov rax, [rsp+8]
0020911dlea rdi, [rax+40]
00209121call caml_modify
00209126mov rax, [rip+0x16f1ff]
0020912dlea rsi, [rax+rax+1]
00209132mov rax, [rsp+8]
00209137lea rdi, [rax+64]
0020913bcall caml_modify
00209140mov rax, [rip+0x16f1dd]
00209147lea rsi, [rax+rax+1]
0020914cmov rax, [rsp+8]
00209151lea rdi, [rax+72]
00209155call caml_modify
0020915amov rax, [rip+0x16f1bb]
00209161lea rsi, [rax+rax+1]
00209166mov rax, [rsp+8]
0020916blea rdi, [rax+80]
0020916fcall caml_modify
00209174mov [rbx+160], rbp
0020917bmov rax, [rsp+8]
00209180mov rdx, [rsp+88]
00209185sub rdx, [0x28]
0020918ejne 0x20919d
00209190add rsp, 96
00209194pop rbx
00209195pop rbp
00209196pop r12
00209198ret
00209199call fn_f4590
0020919edb 0xee
0020919fmov bl, 238
002091a1db 0xff
00209050
00209050caml_gc_get:
00209050push r12
00209052mov edi, 11
00209057push rbp
00209058push rbx
00209059sub rsp, 96
0020905dmov r12, [0x28]
00209066mov [rsp+88], r12
0020906bmov r12, [rip+0x6cf72]
00209072lea rax, [rsp+16]
00209077mov rbx, [r12]
0020907cmov [rsp+8], 1
00209085mov rbp, [rbx+160]
0020908cmov [rbx+160], rax
00209093mov eax, 1
00209098movq x0, rax
0020909dlea rax, [rsp+8]
002090a2punpcklqdq x0, x0
002090a6mov [rsp+16], rbp
002090abmovups [rsp+24], x0
002090b0mov [rsp+40], rax
002090b5call caml_alloc_tuple
002090bamov rdi, rax
002090bdmov [rsp+8], rax
002090c2mov rax, [r12]
002090c7mov rax, [rax+272]
002090celea rsi, [rax+rax+1]
002090d3call caml_modify
002090d8mov rax, [rip+0x16f2bd]
002090dflea rsi, [rax+rax+1]
002090e4mov rax, [rsp+8]
002090e9lea rdi, [rax+16]
002090edcall caml_modify
002090f2mov rax, [rip+0x16fb33]
002090f9lea rsi, [rax+rax+1]
002090femov rax, [rsp+8]
00209103lea rdi, [rax+24]
00209107call caml_modify
0020910cmov rax, [rip+0x16f651]
00209113lea rsi, [rax+rax+1]
00209118mov rax, [rsp+8]
0020911dlea rdi, [rax+40]
00209121call caml_modify
00209126mov rax, [rip+0x16f1ff]
0020912dlea rsi, [rax+rax+1]
00209132mov rax, [rsp+8]
00209137lea rdi, [rax+64]
0020913bcall caml_modify
00209140mov rax, [rip+0x16f1dd]
00209147lea rsi, [rax+rax+1]
0020914cmov rax, [rsp+8]
00209151lea rdi, [rax+72]
00209155call caml_modify
0020915amov rax, [rip+0x16f1bb]
00209161lea rsi, [rax+rax+1]
00209166mov rax, [rsp+8]
0020916blea rdi, [rax+80]
0020916fcall caml_modify
00209174mov [rbx+160], rbp
0020917bmov rax, [rsp+8]
00209180mov rdx, [rsp+88]
00209185sub rdx, [0x28]
0020918ejne 0x20919d
00209190add rsp, 96
00209194pop rbx
00209195pop rbp
00209196pop r12
00209198ret
00209199call fn_f4590
0020919edb 0xee
0020919fmov bl, 238
002091a1db 0xff
00209050
002091a2
002091a2 // align 0x10
002091a2 // align 0x10
002091b0
002091b0caml_gc_set:
002091b0push r15
002091b2push r14
002091b4push r13
002091b6push r12
002091b8push rbp
002091b9mov rbp, rdi
002091bcpush rbx
002091bdsub rsp, 24
002091c1mov rdi, [rdi]
002091c4sar rdi, 1
002091c7call caml_norm_minor_heap_size
002091ccmov rdx, [rbp+16]
002091d0mov r13, [rbp+24]
002091d4mov rbx, rax
002091d7mov eax, 1
002091dcmov r14, [rbp+40]
002091e0mov r12, [rbp+64]
002091e4sar rdx, 1
002091e7cmove rdx, rax
002091ebmov rax, [rbp+72]
002091efxor edi, edi
002091f1mov r15, [rbp+80]
002091f5sar r13, 1
002091f8mov [rsp], rdx
002091fcmov [rsp+8], rax
00209201call caml_ev_begin
00209206mov rdi, r14
00209209sar rdi, 1
0020920ccall caml_change_max_stack_size
00209211mov rdx, [rsp]
00209215cmp [rip+0x16f180], rdx
0020921cje 0x20923c
0020921elea rsi, [rip+0x25ce9]
00209225mov edi, 32
0020922axor eax, eax
0020922cmov [rip+0x16f169], rdx
00209233call caml_gc_message
00209238mov [rip+0x16f9ed], r13
0020923fmov rax, [rbp-8]
00209243cmp rax, 11263
00209249jbe 0x209290
0020924bsar r12, 1
0020924emov eax, 1
00209253cmove r12, rax
00209257cmp [rip+0x16f0ce], r12
0020925ejne 0x209330
00209264mov rbp, [rsp+8]
00209269mov eax, 1
0020926esar rbp, 1
00209271cmove rbp, rax
00209275cmp [rip+0x16f0a8], rbp
0020927cjne 0x209300
0020927esar r15, 1
00209281cmp [rip+0x16f094], r15
00209288jne 0x2092e0
0020928anop
0020928cmov rbp, [rip+0x6cd51]
00209293mov rax, [rbp]
00209298cmp [rax+272], rbx
0020929fjne 0x209358
002092a5mov r12, rbx
002092a8shr r12, 10
002092accmp [rip+0x16f321], rbx
002092b3jb 0x20937e
002092b9xor edi, edi
002092bbcall caml_ev_end
002092c0add rsp, 24
002092c4mov eax, 1
002092c9pop rbx
002092capop rbp
002092cbpop r12
002092cdpop r13
002092cfpop r14
002092d1pop r15
002092d3ret
002092d4db 0x5e
002092d5pop r15
002092d7ret
002092d8
002092d8 0f 1f 84 00 00 00 00 00 ........
002092e0
002092e0loc_2092e0:
002092e0mov rdx, r15
002092e3lea rsi, [rip+0x270f6]
002092eamov edi, 32
002092efxor eax, eax
002092f1mov [rip+0x16f028], r15
002092f8call caml_gc_message
002092fdjmp 0x209290
002092ff
002092ff 90 .
00209300
00209300loc_209300:
00209300xor eax, eax
00209302mov rdx, rbp
00209305lea rsi, [rip+0x270b4]
0020930csar r15, 1
0020930fmov edi, 32
00209314mov [rip+0x16f00d], rbp
0020931bcall caml_gc_message
00209320cmp [rip+0x16eff9], r15
00209327je 0x209290
0020932djmp 0x2092e0
0020932f
0020932f 90 .
00209330
00209330loc_209330:
00209330mov rdx, r12
00209333lea rsi, [rip+0x27066]
0020933amov edi, 32
0020933fxor eax, eax
00209341mov [rip+0x16efe8], r12
00209348call caml_gc_message
0020934djmp 0x209268
00209352
00209352 66 0f 1f 44 00 00 f..D..
00209358
00209358loc_209358:
00209358mov r12, rbx
0020935bxor eax, eax
0020935dmov edi, 32
00209362shr r12, 10
00209366lea rsi, [rip+0x2709b]
0020936dmov rdx, r12
00209370call caml_gc_message
00209375cmp [rip+0x16f25c], rbx
0020937cjae 0x209397
0020937e
0020937eloc_20937e:
0020937elea rdi, [rip+0x270ab]
00209385mov rsi, r12
00209388xor eax, eax
0020938acall caml_gc_log
0020938fmov rdi, rbx
00209392call caml_update_minor_heap_max
00209397
00209397loc_209397:
00209397mov rax, [rbp]
0020939cmov rsi, [rax+272]
002093a3cmp rsi, rbx
002093a6je 0x2092bd
002093acshr rsi, 10
002093b0xor eax, eax
002093b2lea rdi, [rip+0x2709f]
002093b9call caml_gc_log
002093bemov rsi, rbx
002093c1lea rdi, [rip+0x270b8]
002093c8xor eax, eax
002093cashr rsi, 10
002093cecall caml_gc_log
002093d3mov rdi, rbx
002093d6call caml_set_minor_heap_size
002093dbjmp 0x2092bd
002091b0
002091b0caml_gc_set:
002091b0push r15
002091b2push r14
002091b4push r13
002091b6push r12
002091b8push rbp
002091b9mov rbp, rdi
002091bcpush rbx
002091bdsub rsp, 24
002091c1mov rdi, [rdi]
002091c4sar rdi, 1
002091c7call caml_norm_minor_heap_size
002091ccmov rdx, [rbp+16]
002091d0mov r13, [rbp+24]
002091d4mov rbx, rax
002091d7mov eax, 1
002091dcmov r14, [rbp+40]
002091e0mov r12, [rbp+64]
002091e4sar rdx, 1
002091e7cmove rdx, rax
002091ebmov rax, [rbp+72]
002091efxor edi, edi
002091f1mov r15, [rbp+80]
002091f5sar r13, 1
002091f8mov [rsp], rdx
002091fcmov [rsp+8], rax
00209201call caml_ev_begin
00209206mov rdi, r14
00209209sar rdi, 1
0020920ccall caml_change_max_stack_size
00209211mov rdx, [rsp]
00209215cmp [rip+0x16f180], rdx
0020921cje 0x20923c
0020921elea rsi, [rip+0x25ce9]
00209225mov edi, 32
0020922axor eax, eax
0020922cmov [rip+0x16f169], rdx
00209233call caml_gc_message
00209238mov [rip+0x16f9ed], r13
0020923fmov rax, [rbp-8]
00209243cmp rax, 11263
00209249jbe 0x209290
0020924bsar r12, 1
0020924emov eax, 1
00209253cmove r12, rax
00209257cmp [rip+0x16f0ce], r12
0020925ejne 0x209330
00209264mov rbp, [rsp+8]
00209269mov eax, 1
0020926esar rbp, 1
00209271cmove rbp, rax
00209275cmp [rip+0x16f0a8], rbp
0020927cjne 0x209300
0020927esar r15, 1
00209281cmp [rip+0x16f094], r15
00209288jne 0x2092e0
0020928anop
0020928cmov rbp, [rip+0x6cd51]
00209293mov rax, [rbp]
00209298cmp [rax+272], rbx
0020929fjne 0x209358
002092a5mov r12, rbx
002092a8shr r12, 10
002092accmp [rip+0x16f321], rbx
002092b3jb 0x20937e
002092b9xor edi, edi
002092bbcall caml_ev_end
002092c0add rsp, 24
002092c4mov eax, 1
002092c9pop rbx
002092capop rbp
002092cbpop r12
002092cdpop r13
002092cfpop r14
002092d1pop r15
002092d3ret
002092d4db 0x5e
002092d5pop r15
002092d7ret
002092d8
002092d8 0f 1f 84 00 00 00 00 00 ........
002092e0
002092e0loc_2092e0:
002092e0mov rdx, r15
002092e3lea rsi, [rip+0x270f6]
002092eamov edi, 32
002092efxor eax, eax
002092f1mov [rip+0x16f028], r15
002092f8call caml_gc_message
002092fdjmp 0x209290
002092ff
002092ff 90 .
00209300
00209300loc_209300:
00209300xor eax, eax
00209302mov rdx, rbp
00209305lea rsi, [rip+0x270b4]
0020930csar r15, 1
0020930fmov edi, 32
00209314mov [rip+0x16f00d], rbp
0020931bcall caml_gc_message
00209320cmp [rip+0x16eff9], r15
00209327je 0x209290
0020932djmp 0x2092e0
0020932f
0020932f 90 .
00209330
00209330loc_209330:
00209330mov rdx, r12
00209333lea rsi, [rip+0x27066]
0020933amov edi, 32
0020933fxor eax, eax
00209341mov [rip+0x16efe8], r12
00209348call caml_gc_message
0020934djmp 0x209268
00209352
00209352 66 0f 1f 44 00 00 f..D..
00209358
00209358loc_209358:
00209358mov r12, rbx
0020935bxor eax, eax
0020935dmov edi, 32
00209362shr r12, 10
00209366lea rsi, [rip+0x2709b]
0020936dmov rdx, r12
00209370call caml_gc_message
00209375cmp [rip+0x16f25c], rbx
0020937cjae 0x209397
0020937e
0020937eloc_20937e:
0020937elea rdi, [rip+0x270ab]
00209385mov rsi, r12
00209388xor eax, eax
0020938acall caml_gc_log
0020938fmov rdi, rbx
00209392call caml_update_minor_heap_max
00209397
00209397loc_209397:
00209397mov rax, [rbp]
0020939cmov rsi, [rax+272]
002093a3cmp rsi, rbx
002093a6je 0x2092bd
002093acshr rsi, 10
002093b0xor eax, eax
002093b2lea rdi, [rip+0x2709f]
002093b9call caml_gc_log
002093bemov rsi, rbx
002093c1lea rdi, [rip+0x270b8]
002093c8xor eax, eax
002093cashr rsi, 10
002093cecall caml_gc_log
002093d3mov rdi, rbx
002093d6call caml_set_minor_heap_size
002093dbjmp 0x2092bd
002091b0
002093e0
002093e0caml_gc_minor:
002093e0push r13
002093e2push r12
002093e4sub rsp, 8
002093e8mov rax, [rip+0x6cbf5]
002093efcmp [rax], 0
002093f4je 0x209430
002093f6mov edi, 2
002093fbcall caml_ev_begin
00209400call caml_minor_collection
00209405call caml_process_pending_actions_res
0020940amov edi, 2
0020940fmov r12, rax
00209412mov r13, rdx
00209415call caml_ev_end
0020941amov rax, r13
0020941dtest r12l, r12l
00209420jne 0x209435
00209422add rsp, 8
00209426pop r12
00209428pop r13
0020942aret
0020942bdb 0x5c
0020942cpop r13
0020942eret
0020942f
0020942f 90 .
00209430
00209430loc_209430:
00209430call caml_bad_caml_state
00209435
00209435loc_209435:
00209435mov rdi, r13
00209438call caml_raise
002093e0
002093e0caml_gc_minor:
002093e0push r13
002093e2push r12
002093e4sub rsp, 8
002093e8mov rax, [rip+0x6cbf5]
002093efcmp [rax], 0
002093f4je 0x209430
002093f6mov edi, 2
002093fbcall caml_ev_begin
00209400call caml_minor_collection
00209405call caml_process_pending_actions_res
0020940amov edi, 2
0020940fmov r12, rax
00209412mov r13, rdx
00209415call caml_ev_end
0020941amov rax, r13
0020941dtest r12l, r12l
00209420jne 0x209435
00209422add rsp, 8
00209426pop r12
00209428pop r13
0020942aret
0020942bdb 0x5c
0020942cpop r13
0020942eret
0020942f
0020942f 90 .
00209430
00209430loc_209430:
00209430call caml_bad_caml_state
00209435
00209435loc_209435:
00209435mov rdi, r13
00209438call caml_raise
002093e0
0020943d
0020943d // align 0x10
0020943d // align 0x10
00209440
00209440caml_gc_major:
00209440push r13
00209442push r12
00209444sub rsp, 8
00209448mov rax, [rip+0x6cb95]
0020944fcmp [rax], 0
00209454je 0x2094a8
00209456mov edi, 3
0020945bcall caml_ev_begin
00209460xor eax, eax
00209462lea rdi, [rip+0x25ac0]
00209469call caml_gc_log
0020946ecall caml_empty_minor_heaps_once
00209473xor edi, edi
00209475call caml_finish_major_cycle
0020947acall caml_process_pending_actions_res
0020947fmov edi, 3
00209484mov r12, rax
00209487mov r13, rdx
0020948acall caml_ev_end
0020948fmov rax, r13
00209492test r12l, r12l
00209495jne 0x2094ad
00209497add rsp, 8
0020949bpop r12
0020949dpop r13
0020949fret
002094a0db 0x5c
002094a1pop r13
002094a3ret
002094a4
002094a4 0f 1f 40 00 ..@.
002094a8
002094a8loc_2094a8:
002094a8call caml_bad_caml_state
002094ad
002094adloc_2094ad:
002094admov rdi, r13
002094b0call caml_raise
00209440
00209440caml_gc_major:
00209440push r13
00209442push r12
00209444sub rsp, 8
00209448mov rax, [rip+0x6cb95]
0020944fcmp [rax], 0
00209454je 0x2094a8
00209456mov edi, 3
0020945bcall caml_ev_begin
00209460xor eax, eax
00209462lea rdi, [rip+0x25ac0]
00209469call caml_gc_log
0020946ecall caml_empty_minor_heaps_once
00209473xor edi, edi
00209475call caml_finish_major_cycle
0020947acall caml_process_pending_actions_res
0020947fmov edi, 3
00209484mov r12, rax
00209487mov r13, rdx
0020948acall caml_ev_end
0020948fmov rax, r13
00209492test r12l, r12l
00209495jne 0x2094ad
00209497add rsp, 8
0020949bpop r12
0020949dpop r13
0020949fret
002094a0db 0x5c
002094a1pop r13
002094a3ret
002094a4
002094a4 0f 1f 40 00 ..@.
002094a8
002094a8loc_2094a8:
002094a8call caml_bad_caml_state
002094ad
002094adloc_2094ad:
002094admov rdi, r13
002094b0call caml_raise
00209440
002094b5
002094b5 // align 0x10
002094b5 // align 0x10
002094c0
002094c0caml_gc_full_major:
002094c0sub rsp, 8
002094c4mov rax, [rip+0x6cb19]
002094cbcmp [rax], 0
002094d0je 0x2094f0
002094d2call fn_208990
002094d7mov rdi, rdx
002094datest eax, eax
002094dcjne 0x2094f5
002094demov rax, rdx
002094e1add rsp, 8
002094e5ret
002094e6db 0x83
002094e7db 0xc4
002094e8or bl, al
002094ea
002094ea 66 0f 1f 44 00 00 f..D..
002094f0
002094f0loc_2094f0:
002094f0call caml_bad_caml_state
002094f5
002094f5loc_2094f5:
002094f5call caml_raise
002094c0
002094c0caml_gc_full_major:
002094c0sub rsp, 8
002094c4mov rax, [rip+0x6cb19]
002094cbcmp [rax], 0
002094d0je 0x2094f0
002094d2call fn_208990
002094d7mov rdi, rdx
002094datest eax, eax
002094dcjne 0x2094f5
002094demov rax, rdx
002094e1add rsp, 8
002094e5ret
002094e6db 0x83
002094e7db 0xc4
002094e8or bl, al
002094ea
002094ea 66 0f 1f 44 00 00 f..D..
002094f0
002094f0loc_2094f0:
002094f0call caml_bad_caml_state
002094f5
002094f5loc_2094f5:
002094f5call caml_raise
002094c0
002094fa
002094fa // align 0x10
002094fa // align 0x10
00209500
00209500caml_gc_major_slice:
00209500push r13
00209502push r12
00209504mov r12, rdi
00209507mov edi, 16
0020950csub rsp, 8
00209510call caml_ev_begin
00209515mov rdi, r12
00209518sar rdi, 1
0020951bcall caml_major_collection_slice
00209520call caml_process_pending_actions_res
00209525mov edi, 16
0020952amov r12, rax
0020952dmov r13, rdx
00209530call caml_ev_end
00209535mov rax, r13
00209538test r12l, r12l
0020953bjne 0x20954a
0020953dadd rsp, 8
00209541pop r12
00209543pop r13
00209545ret
00209546mov rdi, r13
00209549call caml_raise
0020954edb 0x4e
0020954fretf
00209550add [rax], eax
00209500
00209500caml_gc_major_slice:
00209500push r13
00209502push r12
00209504mov r12, rdi
00209507mov edi, 16
0020950csub rsp, 8
00209510call caml_ev_begin
00209515mov rdi, r12
00209518sar rdi, 1
0020951bcall caml_major_collection_slice
00209520call caml_process_pending_actions_res
00209525mov edi, 16
0020952amov r12, rax
0020952dmov r13, rdx
00209530call caml_ev_end
00209535mov rax, r13
00209538test r12l, r12l
0020953bjne 0x20954a
0020953dadd rsp, 8
00209541pop r12
00209543pop r13
00209545ret
00209546mov rdi, r13
00209549call caml_raise
0020954edb 0x4e
0020954fretf
00209550add [rax], eax
00209500
00209552
00209552 // align 0x10
00209552 // align 0x10
00209560
00209560caml_gc_compaction:
00209560push rbp
00209561push rbx
00209562sub rsp, 8
00209566mov rbp, [rip+0x6ca77]
0020956dcmp [rbp], 0
00209573je 0x2095f8
00209575mov edi, 5
0020957axor ebx, ebx
0020957ccall caml_ev_begin
00209581xor edi, edi
00209583cmp ebx, 2
00209586sete dil
0020958acall caml_finish_major_cycle
0020958fcall caml_process_pending_actions_res
00209594test eax, eax
00209596jne 0x2095d0
00209598add ebx, 1
0020959bcmp ebx, 3
0020959ejne 0x209585
002095a0mov rax, [rbp]
002095a5mov edi, 5
002095aamov rbx, rdx
002095adadd [rax+408], 1
002095b5call caml_ev_end
002095baadd rsp, 8
002095bemov rax, rbx
002095c1pop rbx
002095c2pop rbp
002095c3ret
002095c4db 0xd8
002095c5pop rbx
002095c6pop rbp
002095c7ret
002095c8
002095c8 0f 1f 84 00 00 00 00 00 ........
002095d0
002095d0loc_2095d0:
002095d0mov rax, [rbp]
002095d5mov rbx, rdx
002095d8mov edi, 5
002095ddadd [rax+408], 1
002095e5call caml_ev_end
002095eamov rdi, rbx
002095edcall caml_raise
002095f2nop [rax+rax]
002095f8
002095f8loc_2095f8:
002095f8call caml_bad_caml_state
00209560
00209560caml_gc_compaction:
00209560push rbp
00209561push rbx
00209562sub rsp, 8
00209566mov rbp, [rip+0x6ca77]
0020956dcmp [rbp], 0
00209573je 0x2095f8
00209575mov edi, 5
0020957axor ebx, ebx
0020957ccall caml_ev_begin
00209581xor edi, edi
00209583cmp ebx, 2
00209586sete dil
0020958acall caml_finish_major_cycle
0020958fcall caml_process_pending_actions_res
00209594test eax, eax
00209596jne 0x2095d0
00209598add ebx, 1
0020959bcmp ebx, 3
0020959ejne 0x209585
002095a0mov rax, [rbp]
002095a5mov edi, 5
002095aamov rbx, rdx
002095adadd [rax+408], 1
002095b5call caml_ev_end
002095baadd rsp, 8
002095bemov rax, rbx
002095c1pop rbx
002095c2pop rbp
002095c3ret
002095c4db 0xd8
002095c5pop rbx
002095c6pop rbp
002095c7ret
002095c8
002095c8 0f 1f 84 00 00 00 00 00 ........
002095d0
002095d0loc_2095d0:
002095d0mov rax, [rbp]
002095d5mov rbx, rdx
002095d8mov edi, 5
002095ddadd [rax+408], 1
002095e5call caml_ev_end
002095eamov rdi, rbx
002095edcall caml_raise
002095f2nop [rax+rax]
002095f8
002095f8loc_2095f8:
002095f8call caml_bad_caml_state
00209560
002095fd
002095fd // align 0x10
002095fd // align 0x10
00209600
00209600caml_gc_stat:
00209600push rbx
00209601mov edi, 1
00209606call caml_ev_begin
0020960bcall fn_208990
00209610test eax, eax
00209612je 0x209630
00209614mov rbx, rdx
00209617mov edi, 1
0020961ccall caml_ev_end
00209621mov rdi, rbx
00209624call caml_raise
00209629nop [rax]
0020962cmov edi, 1
00209631call caml_gc_quick_stat
00209636mov edi, 1
0020963bmov rbx, rax
0020963ecall caml_ev_end
00209643mov rax, rbx
00209646pop rbx
00209647ret
00209648db 0x89
00209649fcomp [rbx-61]
00209600
00209600caml_gc_stat:
00209600push rbx
00209601mov edi, 1
00209606call caml_ev_begin
0020960bcall fn_208990
00209610test eax, eax
00209612je 0x209630
00209614mov rbx, rdx
00209617mov edi, 1
0020961ccall caml_ev_end
00209621mov rdi, rbx
00209624call caml_raise
00209629nop [rax]
0020962cmov edi, 1
00209631call caml_gc_quick_stat
00209636mov edi, 1
0020963bmov rbx, rax
0020963ecall caml_ev_end
00209643mov rax, rbx
00209646pop rbx
00209647ret
00209648db 0x89
00209649fcomp [rbx-61]
00209600
0020964c
0020964c // align 0x10
0020964c // align 0x10
00209650
00209650caml_get_minor_free:
00209650mov rax, [rip+0x6c98d]
00209657mov rdx, [rax]
0020965bmov rax, [rdx+8]
0020965fsub rax, [rdx+16]
00209663lea rax, [rax+rax+1]
00209668ret
00209669db 0x44
0020966aadd [rcx], al
0020966cret
00209650
00209650caml_get_minor_free:
00209650mov rax, [rip+0x6c98d]
00209657mov rdx, [rax]
0020965bmov rax, [rdx+8]
0020965fsub rax, [rdx+16]
00209663lea rax, [rax+rax+1]
00209668ret
00209669db 0x44
0020966aadd [rcx], al
0020966cret
00209650
0020966d
0020966d // align 0x10
0020966d // align 0x10
00209670
00209670caml_init_gc:
00209670push rbx
00209671mov rbx, [rip+0x6c2dc]
00209678mov rdi, [rbx+88]
0020967ccall caml_norm_minor_heap_size
00209681mov [rip+0x16ef4c], rax
00209688mov rax, [rbx+120]
0020968cxchg [rip+0x16f0d1], rax
00209693mov edx, 1
00209698lea rdi, [rip+0x26dfd]
0020969fmov [rip+0x16f0b2], 64
002096aamov rax, [rbx+80]
002096aemov rsi, [rbx+120]
002096b2test rax, rax
002096b5cmove rax, rdx
002096b9shr rsi, 10
002096bdshl rsi, 3
002096c1mov [rip+0x16ecd4], rax
002096c8xor eax, eax
002096cacall caml_gc_log
002096cfmov rax, [rbx+96]
002096d3mov edx, 1
002096d8mov [rip+0x16f37a], 0
002096e2test rax, rax
002096e5cmove rax, rdx
002096e9mov [rip+0x16ec3c], rax
002096f0mov rax, [rbx+104]
002096f4test rax, rax
002096f7cmove rax, rdx
002096fbmov [rip+0x16ec22], rax
00209702mov rax, [rbx+112]
00209706mov [rip+0x16ec0f], rax
0020970dcall caml_init_frame_descriptors
00209712mov rdi, [rbx+160]
00209719mov rsi, [rbx+88]
0020971dcall caml_init_domains
00209722mov rdi, [rbx+160]
00209729pop rbx
0020972ajmp 0x209ac0
0020972fdb 0x8d
00209730add eax, [rax]
00209732db 0x00
00209670
00209670caml_init_gc:
00209670push rbx
00209671mov rbx, [rip+0x6c2dc]
00209678mov rdi, [rbx+88]
0020967ccall caml_norm_minor_heap_size
00209681mov [rip+0x16ef4c], rax
00209688mov rax, [rbx+120]
0020968cxchg [rip+0x16f0d1], rax
00209693mov edx, 1
00209698lea rdi, [rip+0x26dfd]
0020969fmov [rip+0x16f0b2], 64
002096aamov rax, [rbx+80]
002096aemov rsi, [rbx+120]
002096b2test rax, rax
002096b5cmove rax, rdx
002096b9shr rsi, 10
002096bdshl rsi, 3
002096c1mov [rip+0x16ecd4], rax
002096c8xor eax, eax
002096cacall caml_gc_log
002096cfmov rax, [rbx+96]
002096d3mov edx, 1
002096d8mov [rip+0x16f37a], 0
002096e2test rax, rax
002096e5cmove rax, rdx
002096e9mov [rip+0x16ec3c], rax
002096f0mov rax, [rbx+104]
002096f4test rax, rax
002096f7cmove rax, rdx
002096fbmov [rip+0x16ec22], rax
00209702mov rax, [rbx+112]
00209706mov [rip+0x16ec0f], rax
0020970dcall caml_init_frame_descriptors
00209712mov rdi, [rbx+160]
00209719mov rsi, [rbx+88]
0020971dcall caml_init_domains
00209722mov rdi, [rbx+160]
00209729pop rbx
0020972ajmp 0x209ac0
0020972fdb 0x8d
00209730add eax, [rax]
00209732db 0x00
00209670
00209733
00209733 // align 0x10
00209733 // align 0x10
00209740
00209740caml_runtime_variant:
00209740lea rdi, [rip+0x257e1]
00209747jmp 0x1f8ba0
0020974cdb 0x50
0020974dhlt
0020974edb 0xfe
0020974fdb 0xff
00209740
00209740caml_runtime_variant:
00209740lea rdi, [rip+0x257e1]
00209747jmp 0x1f8ba0
0020974cdb 0x50
0020974dhlt
0020974edb 0xfe
0020974fdb 0xff
00209740
00209750
00209750caml_runtime_parameters:
00209750push r15
00209752push r14
00209754push r13
00209756push r12
00209758push rbp
00209759push rbx
0020975asub rsp, 16
0020975emov rax, [rip+0x6c1ef]
00209765mov r15, [rip+0x16f4b0]
0020976cmov r14, [rax+56]
00209770mov r13, [rip+0x16f4b5]
00209777mov rsi, [rip+0x6c866]
0020977emov r12, [rax+40]
00209782mov r11, [rip+0x16ec13]
00209789mov r10, [rip+0x16eb8c]
00209790mov rdx, [rsi]
00209794mov rdi, [rip+0x16eb89]
0020979bmov r9, [rip+0x16eb8a]
002097a2mov rbp, [rdx+272]
002097a9mov ebx, [rdx+264]
002097afmov r8, [rip+0x16efae]
002097b6mov rcx, [rax+48]
002097bamov rdx, [rax+144]
002097c1mov rax, [rsi]
002097c5mov rsi, [rax+192]
002097ccpush r15
002097cexor eax, eax
002097d0push r14
002097d2push r13
002097d4push r12
002097d6push rbp
002097d7push rbx
002097d8push r11
002097dapush r10
002097dcpush rdi
002097ddlea rdi, [rip+0x26cd8]
002097e4call caml_alloc_sprintf
002097e9add rsp, 88
002097edpop rbx
002097eepop rbp
002097efpop r12
002097f1pop r13
002097f3pop r14
002097f5pop r15
002097f7ret
002097f8db 0x5e
002097f9pop r15
002097fbret
00209750
00209750caml_runtime_parameters:
00209750push r15
00209752push r14
00209754push r13
00209756push r12
00209758push rbp
00209759push rbx
0020975asub rsp, 16
0020975emov rax, [rip+0x6c1ef]
00209765mov r15, [rip+0x16f4b0]
0020976cmov r14, [rax+56]
00209770mov r13, [rip+0x16f4b5]
00209777mov rsi, [rip+0x6c866]
0020977emov r12, [rax+40]
00209782mov r11, [rip+0x16ec13]
00209789mov r10, [rip+0x16eb8c]
00209790mov rdx, [rsi]
00209794mov rdi, [rip+0x16eb89]
0020979bmov r9, [rip+0x16eb8a]
002097a2mov rbp, [rdx+272]
002097a9mov ebx, [rdx+264]
002097afmov r8, [rip+0x16efae]
002097b6mov rcx, [rax+48]
002097bamov rdx, [rax+144]
002097c1mov rax, [rsi]
002097c5mov rsi, [rax+192]
002097ccpush r15
002097cexor eax, eax
002097d0push r14
002097d2push r13
002097d4push r12
002097d6push rbp
002097d7push rbx
002097d8push r11
002097dapush r10
002097dcpush rdi
002097ddlea rdi, [rip+0x26cd8]
002097e4call caml_alloc_sprintf
002097e9add rsp, 88
002097edpop rbx
002097eepop rbp
002097efpop r12
002097f1pop r13
002097f3pop r14
002097f5pop r15
002097f7ret
002097f8db 0x5e
002097f9pop r15
002097fbret
00209750
002097fc
002097fc // align 0x10
002097fc // align 0x10
00209800
00209800caml_ml_enable_runtime_warnings:
00209800sar rdi, 1
00209803mov eax, 1
00209808movsxd rdi, edi
0020980bmov [rip+0x16f40a], rdi
00209812ret
00209813db 0xf4
00209814db 0x16
00209815add bl, al
00209800
00209800caml_ml_enable_runtime_warnings:
00209800sar rdi, 1
00209803mov eax, 1
00209808movsxd rdi, edi
0020980bmov [rip+0x16f40a], rdi
00209812ret
00209813db 0xf4
00209814db 0x16
00209815add bl, al
00209800
00209817
00209817 // align 0x10
00209817 // align 0x10
00209820
00209820caml_ml_runtime_warnings_enabled:
00209820cmp [rip+0x16f3f4], 0
00209828mov edx, 3
0020982dmov eax, 1
00209832cmovne rax, rdx
00209836ret
00209837db 0x0f
00209838db 0x45
00209839db 0xc2
0020983aret
00209820
00209820caml_ml_runtime_warnings_enabled:
00209820cmp [rip+0x16f3f4], 0
00209828mov edx, 3
0020982dmov eax, 1
00209832cmovne rax, rdx
00209836ret
00209837db 0x0f
00209838db 0x45
00209839db 0xc2
0020983aret
00209820
0020983b
0020983b // align 0x10
0020983b // align 0x10
00209840
00209840caml_accum_heap_stats:
00209840mov rcx, [rsi]
00209843mov rdx, rsi
00209846mov rsi, [rdi+8]
0020984aadd rcx, [rdi]
0020984dcmp rcx, rsi
00209850mov [rdi], rcx
00209853cmovl rcx, rsi
00209857mov [rdi+8], rcx
0020985bmov rsi, [rdx+8]
0020985fcmp rsi, rcx
00209862cmovl rsi, rcx
00209866mov [rdi+8], rsi
0020986amov rsi, [rdi+48]
0020986emov rcx, [rdx+16]
00209872add [rdi+16], rcx
00209876mov rcx, [rdx+24]
0020987aadd [rdi+24], rcx
0020987emov rcx, [rdx+32]
00209882add [rdi+32], rcx
00209886mov rcx, [rdx+40]
0020988aadd rcx, [rdi+40]
0020988ecmp rcx, rsi
00209891mov [rdi+40], rcx
00209895cmovl rcx, rsi
00209899mov [rdi+48], rcx
0020989dmov rsi, [rdx+48]
002098a1cmp rsi, rcx
002098a4cmovl rsi, rcx
002098a8mov [rdi+48], rsi
002098acmov rdx, [rdx+56]
002098b0add [rdi+56], rdx
002098b4ret
002098b5db 0x01
002098b6push rdi
002098b7cmp bl, al
00209840
00209840caml_accum_heap_stats:
00209840mov rcx, [rsi]
00209843mov rdx, rsi
00209846mov rsi, [rdi+8]
0020984aadd rcx, [rdi]
0020984dcmp rcx, rsi
00209850mov [rdi], rcx
00209853cmovl rcx, rsi
00209857mov [rdi+8], rcx
0020985bmov rsi, [rdx+8]
0020985fcmp rsi, rcx
00209862cmovl rsi, rcx
00209866mov [rdi+8], rsi
0020986amov rsi, [rdi+48]
0020986emov rcx, [rdx+16]
00209872add [rdi+16], rcx
00209876mov rcx, [rdx+24]
0020987aadd [rdi+24], rcx
0020987emov rcx, [rdx+32]
00209882add [rdi+32], rcx
00209886mov rcx, [rdx+40]
0020988aadd rcx, [rdi+40]
0020988ecmp rcx, rsi
00209891mov [rdi+40], rcx
00209895cmovl rcx, rsi
00209899mov [rdi+48], rcx
0020989dmov rsi, [rdx+48]
002098a1cmp rsi, rcx
002098a4cmovl rsi, rcx
002098a8mov [rdi+48], rsi
002098acmov rdx, [rdx+56]
002098b0add [rdi+56], rdx
002098b4ret
002098b5db 0x01
002098b6push rdi
002098b7cmp bl, al
00209840
002098b9
002098b9 // align 0x10
002098b9 // align 0x10
002098c0
002098c0caml_remove_heap_stats:
002098c0mov rax, [rsi]
002098c3sub [rdi], rax
002098c6mov rax, [rsi+16]
002098casub [rdi+16], rax
002098cemov rax, [rsi+24]
002098d2sub [rdi+24], rax
002098d6mov rax, [rsi+32]
002098dasub [rdi+32], rax
002098demov rax, [rsi+40]
002098e2sub [rdi+40], rax
002098e6mov rax, [rsi+56]
002098easub [rdi+56], rax
002098eeret
002098efdb 0x29
002098f0cmp r11b, r8b
002098c0
002098c0caml_remove_heap_stats:
002098c0mov rax, [rsi]
002098c3sub [rdi], rax
002098c6mov rax, [rsi+16]
002098casub [rdi+16], rax
002098cemov rax, [rsi+24]
002098d2sub [rdi+24], rax
002098d6mov rax, [rsi+32]
002098dasub [rdi+32], rax
002098demov rax, [rsi+40]
002098e2sub [rdi+40], rax
002098e6mov rax, [rsi+56]
002098easub [rdi+56], rax
002098eeret
002098efdb 0x29
002098f0cmp r11b, r8b
002098c0
002098f3
002098f3 // align 0x10
002098f3 // align 0x10
00209900
00209900caml_accum_alloc_stats:
00209900mov rax, [rsi]
00209903add [rdi], rax
00209906mov rax, [rsi+8]
0020990aadd [rdi+8], rax
0020990emov rax, [rsi+16]
00209912add [rdi+16], rax
00209916mov rax, [rsi+24]
0020991aadd [rdi+24], rax
0020991eret
0020991fdb 0x01
00209920sbb r11b, r8b
00209900
00209900caml_accum_alloc_stats:
00209900mov rax, [rsi]
00209903add [rdi], rax
00209906mov rax, [rsi+8]
0020990aadd [rdi+8], rax
0020990emov rax, [rsi+16]
00209912add [rdi+16], rax
00209916mov rax, [rsi+24]
0020991aadd [rdi+24], rax
0020991eret
0020991fdb 0x01
00209920sbb r11b, r8b
00209900
00209923
00209923 // align 0x10
00209923 // align 0x10
00209930
00209930caml_collect_alloc_stats_sample:
00209930mov rax, [rdi+384]
00209937mov [rsi], rax
0020993amov rax, [rdi+392]
00209941mov [rsi+8], rax
00209945mov rax, [rdi+400]
0020994cmov [rsi+16], rax
00209950mov rax, [rdi+408]
00209957mov [rsi+24], rax
0020995bret
0020995cdb 0x89
0020995dsbb bl, r8b
00209930
00209930caml_collect_alloc_stats_sample:
00209930mov rax, [rdi+384]
00209937mov [rsi], rax
0020993amov rax, [rdi+392]
00209941mov [rsi+8], rax
00209945mov rax, [rdi+400]
0020994cmov [rsi+16], rax
00209950mov rax, [rdi+408]
00209957mov [rsi+24], rax
0020995bret
0020995cdb 0x89
0020995dsbb bl, r8b
00209930
00209960
00209960caml_reset_domain_alloc_stats:
00209960mov [rdi+400], 0
0020996bpxor x0, x0
0020996fmov [rdi+408], 0
0020997amovups [rdi+384], x0
00209981ret
00209982db 0x01
00209983add [rax], al
00209985ret
00209960
00209960caml_reset_domain_alloc_stats:
00209960mov [rdi+400], 0
0020996bpxor x0, x0
0020996fmov [rdi+408], 0
0020997amovups [rdi+384], x0
00209981ret
00209982db 0x01
00209983add [rax], al
00209985ret
00209960
00209986
00209986 // align 0x10
00209986 // align 0x10
00209990
00209990caml_accum_orphan_alloc_stats:
00209990push rbp
00209991lea rbp, [rip+0x16ee24]
00209998push rbx
00209999mov rbx, rdi
0020999cmov rdi, rbp
0020999fsub rsp, 8
002099a3call fn_f4710
002099a8test eax, eax
002099aajne 0x2099ee
002099acmov rax, [rip+0x16ede9]
002099b3add [rbx], rax
002099b6mov rdi, rbp
002099b9mov rax, [rip+0x16ede4]
002099c0add [rbx+8], rax
002099c4mov rax, [rip+0x16ede1]
002099cbadd [rbx+16], rax
002099cfmov rax, [rip+0x16edde]
002099d6add [rbx+24], rax
002099dacall fn_f47c0
002099dftest eax, eax
002099e1jne 0x2099fc
002099e3add rsp, 8
002099e7pop rbx
002099e8pop rbp
002099e9ret
002099eamov esi, eax
002099eclea rdi, [rip+0x25b18]
002099f3call caml_plat_fatal_error
002099f8mov esi, eax
002099falea rdi, [rip+0x25b15]
00209a01call caml_plat_fatal_error
00209a06db 0xc6
00209a07db 0x1f
00209a08add [rax], eax
00209990
00209990caml_accum_orphan_alloc_stats:
00209990push rbp
00209991lea rbp, [rip+0x16ee24]
00209998push rbx
00209999mov rbx, rdi
0020999cmov rdi, rbp
0020999fsub rsp, 8
002099a3call fn_f4710
002099a8test eax, eax
002099aajne 0x2099ee
002099acmov rax, [rip+0x16ede9]
002099b3add [rbx], rax
002099b6mov rdi, rbp
002099b9mov rax, [rip+0x16ede4]
002099c0add [rbx+8], rax
002099c4mov rax, [rip+0x16ede1]
002099cbadd [rbx+16], rax
002099cfmov rax, [rip+0x16edde]
002099d6add [rbx+24], rax
002099dacall fn_f47c0
002099dftest eax, eax
002099e1jne 0x2099fc
002099e3add rsp, 8
002099e7pop rbx
002099e8pop rbp
002099e9ret
002099eamov esi, eax
002099eclea rdi, [rip+0x25b18]
002099f3call caml_plat_fatal_error
002099f8mov esi, eax
002099falea rdi, [rip+0x25b15]
00209a01call caml_plat_fatal_error
00209a06db 0xc6
00209a07db 0x1f
00209a08add [rax], eax
00209990
00209a0a
00209a0a // align 0x10
00209a0a // align 0x10
00209a10
00209a10caml_orphan_alloc_stats:
00209a10push r12
00209a12pxor x1, x1
00209a16push rbp
00209a17push rbx
00209a18lea rbx, [rip+0x16ed9d]
00209a1fsub rsp, 16
00209a23mov r12, [rdi+400]
00209a2amov rbp, [rdi+408]
00209a31mov [rdi+400], 0
00209a3cmov [rdi+408], 0
00209a47movdqu x0, [rdi+384]
00209a4fmovups [rdi+384], x1
00209a56mov rdi, rbx
00209a59movaps [rsp], x0
00209a5dcall fn_f4710
00209a62movdqa x0, [rsp]
00209a67test eax, eax
00209a69jne 0x209aa1
00209a6bpaddq x0, [rip+0x16ed29]
00209a73mov rdi, rbx
00209a76add [rip+0x16ed2f], r12
00209a7dadd [rip+0x16ed30], rbp
00209a84movaps [rip+0x16ed11], x0
00209a8bcall fn_f47c0
00209a90test eax, eax
00209a92jne 0x209aaf
00209a94add rsp, 16
00209a98pop rbx
00209a99pop rbp
00209a9apop r12
00209a9cret
00209a9dmov esi, eax
00209a9flea rdi, [rip+0x25a65]
00209aa6call caml_plat_fatal_error
00209aabmov esi, eax
00209aadlea rdi, [rip+0x25a62]
00209ab4call caml_plat_fatal_error
00209ab9db 0x13
00209abadb 0x1f
00209abbadd [rax], eax
00209a10
00209a10caml_orphan_alloc_stats:
00209a10push r12
00209a12pxor x1, x1
00209a16push rbp
00209a17push rbx
00209a18lea rbx, [rip+0x16ed9d]
00209a1fsub rsp, 16
00209a23mov r12, [rdi+400]
00209a2amov rbp, [rdi+408]
00209a31mov [rdi+400], 0
00209a3cmov [rdi+408], 0
00209a47movdqu x0, [rdi+384]
00209a4fmovups [rdi+384], x1
00209a56mov rdi, rbx
00209a59movaps [rsp], x0
00209a5dcall fn_f4710
00209a62movdqa x0, [rsp]
00209a67test eax, eax
00209a69jne 0x209aa1
00209a6bpaddq x0, [rip+0x16ed29]
00209a73mov rdi, rbx
00209a76add [rip+0x16ed2f], r12
00209a7dadd [rip+0x16ed30], rbp
00209a84movaps [rip+0x16ed11], x0
00209a8bcall fn_f47c0
00209a90test eax, eax
00209a92jne 0x209aaf
00209a94add rsp, 16
00209a98pop rbx
00209a99pop rbp
00209a9apop r12
00209a9cret
00209a9dmov esi, eax
00209a9flea rdi, [rip+0x25a65]
00209aa6call caml_plat_fatal_error
00209aabmov esi, eax
00209aadlea rdi, [rip+0x25a62]
00209ab4call caml_plat_fatal_error
00209ab9db 0x13
00209abadb 0x1f
00209abbadd [rax], eax
00209a10
00209abd
00209abd // align 0x10
00209abd // align 0x10
00209ac0
00209ac0caml_init_gc_stats:
00209ac0sub rsp, 8
00209ac4mov esi, 96
00209ac9call caml_stat_calloc_noexc
00209acemov [rip+0x16eca7], rax
00209ad5test rax, rax
00209ad8je 0x209ae3
00209adaadd rsp, 8
00209aderet
00209adflea rdi, [rip+0x26a2e]
00209ae6call caml_fatal_error
00209aebdb 0x41
00209aecadc eax, [rcx]
00209aeedb 0x00
00209ac0
00209ac0caml_init_gc_stats:
00209ac0sub rsp, 8
00209ac4mov esi, 96
00209ac9call caml_stat_calloc_noexc
00209acemov [rip+0x16eca7], rax
00209ad5test rax, rax
00209ad8je 0x209ae3
00209adaadd rsp, 8
00209aderet
00209adflea rdi, [rip+0x26a2e]
00209ae6call caml_fatal_error
00209aebdb 0x41
00209aecadc eax, [rcx]
00209aeedb 0x00
00209ac0
00209aef
00209aef // align 0x10
00209aef // align 0x10
00209af0
00209af0caml_collect_gc_stats_sample_stw:
00209af0push rbp
00209af1mov rbp, rdi
00209af4push rbx
00209af5sub rsp, 8
00209af9movsxd rax, [rdi+288]
00209b00lea rbx, [rax+2*rax]
00209b04shl rbx, 5
00209b08add rbx, [rip+0x16ec6d]
00209b0fcall caml_domain_terminating
00209b14test eax, eax
00209b16je 0x209b50
00209b18lea rdi, [rbx+8]
00209b1cmov [rbx], 0
00209b23xor eax, eax
00209b25and rdi, -8
00209b29mov [rbx+88], 0
00209b31sub rbx, rdi
00209b34lea ecx, [rbx+96]
00209b37shr ecx, 3
00209b3arep stosq [rdi], rax
00209b3dadd rsp, 8
00209b41pop rbx
00209b42pop rbp
00209b43ret
00209b44db 0x08
00209b45pop rbx
00209b46pop rbp
00209b47ret
00209b48
00209b48 0f 1f 84 00 00 00 00 00 ........
00209b50
00209b50loc_209b50:
00209b50mov rax, [rbp+384]
00209b57lea rsi, [rbx+32]
00209b5bmov [rbx], rax
00209b5emov rax, [rbp+392]
00209b65mov [rbx+8], rax
00209b69mov rax, [rbp+400]
00209b70mov [rbx+16], rax
00209b74mov rax, [rbp+408]
00209b7bmov [rbx+24], rax
00209b7fmov rdi, [rbp+280]
00209b86add rsp, 8
00209b8apop rbx
00209b8bpop rbp
00209b8cjmp 0x21ebe0
00209af0
00209af0caml_collect_gc_stats_sample_stw:
00209af0push rbp
00209af1mov rbp, rdi
00209af4push rbx
00209af5sub rsp, 8
00209af9movsxd rax, [rdi+288]
00209b00lea rbx, [rax+2*rax]
00209b04shl rbx, 5
00209b08add rbx, [rip+0x16ec6d]
00209b0fcall caml_domain_terminating
00209b14test eax, eax
00209b16je 0x209b50
00209b18lea rdi, [rbx+8]
00209b1cmov [rbx], 0
00209b23xor eax, eax
00209b25and rdi, -8
00209b29mov [rbx+88], 0
00209b31sub rbx, rdi
00209b34lea ecx, [rbx+96]
00209b37shr ecx, 3
00209b3arep stosq [rdi], rax
00209b3dadd rsp, 8
00209b41pop rbx
00209b42pop rbp
00209b43ret
00209b44db 0x08
00209b45pop rbx
00209b46pop rbp
00209b47ret
00209b48
00209b48 0f 1f 84 00 00 00 00 00 ........
00209b50
00209b50loc_209b50:
00209b50mov rax, [rbp+384]
00209b57lea rsi, [rbx+32]
00209b5bmov [rbx], rax
00209b5emov rax, [rbp+392]
00209b65mov [rbx+8], rax
00209b69mov rax, [rbp+400]
00209b70mov [rbx+16], rax
00209b74mov rax, [rbp+408]
00209b7bmov [rbx+24], rax
00209b7fmov rdi, [rbp+280]
00209b86add rsp, 8
00209b8apop rbx
00209b8bpop rbp
00209b8cjmp 0x21ebe0
00209af0
00209b91
00209b91 // align 0x10
00209b91 // align 0x10
00209ba0
00209ba0caml_compute_gc_stats:
00209ba0push r15
00209ba2push r14
00209ba4push r13
00209ba6mov r13, rdi
00209ba9add rdi, 8
00209badpush r12
00209bafmov rcx, r13
00209bb2push rbp
00209bb3push rbx
00209bb4lea rbx, [r13+32]
00209bb8sub rsp, 8
00209bbcmov r12, [rip+0x6c421]
00209bc3mov rax, [r12]
00209bc8mov ebp, [rax+288]
00209bcemov [rdi-8], 0
00209bd6xor eax, eax
00209bd8mov [rdi+80], 0
00209be0and rdi, -8
00209be4sub rcx, rdi
00209be7add ecx, 96
00209beashr ecx, 3
00209bedrep stosq [rdi], rax
00209bf0mov rdi, rbx
00209bf3call caml_accum_orphan_heap_stats
00209bf8mov rdi, r13
00209bfbcall caml_accum_orphan_alloc_stats
00209c00mov r9, [rip+0x6bd4d]
00209c07mov r14, [r13+40]
00209c0bmov r11, [r13+80]
00209c0fcmp [r9+160], 0
00209c17je 0x209cf0
00209c1dmov r10, [rip+0x16eb58]
00209c24xor r8l, r8l
00209c27xor eax, eax
00209c29jmp 0x209c8a
00209c2bdb 0x31
00209c2cshr bl, 91
00209c2f
00209c2f 90 .
00209c30
00209c30loc_209c30:
00209c30movq x2, [rax]
00209c34movdqa x1, x0
00209c38psrldq x0, 8
00209c3dmov rdi, rbx
00209c40lea rsi, [rax+32]
00209c44paddq x1, x2
00209c48movq [r13], x1
00209c4emovq x1, [rax+8]
00209c53paddq x0, x1
00209c57movq [r13+8], x0
00209c5dadd rcx, [rax+16]
00209c61mov [r13+16], rcx
00209c65add rdx, [rax+24]
00209c69mov [r13+24], rdx
00209c6dcall caml_accum_heap_stats
00209c72
00209c72loc_209c72:
00209c72add r8l, 1
00209c76add r14, [rax+40]
00209c7aadd r11, [rax+80]
00209c7emovsxd rax, r8l
00209c81cmp rax, [r9+160]
00209c88jae 0x209cf0
00209c8a
00209c8aloc_209c8a:
00209c8alea rax, [rax+2*rax]
00209c8emovdqu x0, [r13]
00209c94mov rcx, [r13+16]
00209c98shl rax, 5
00209c9cmov rdx, [r13+24]
00209ca0add rax, r10
00209ca3cmp ebp, r8l
00209ca6jne 0x209c30
00209ca8mov r15, [r12]
00209cadmov rdi, [r15+400]
00209cb4mov rsi, [r15+408]
00209cbbmovdqu x1, [r15+384]
00209cc4add rcx, rdi
00209cc7add rdx, rsi
00209ccalea rsi, [rax+32]
00209ccemov rdi, rbx
00209cd1mov [r13+16], rcx
00209cd5paddq x0, x1
00209cd9mov [r13+24], rdx
00209cddmovups [r13], x0
00209ce2call caml_accum_heap_stats
00209ce7jmp 0x209c72
00209ce9
00209ce9 0f 1f 80 00 00 00 00 .......
00209cf0
00209cf0loc_209cf0:
00209cf0mov [r13+40], r14
00209cf4mov [r13+80], r11
00209cf8add rsp, 8
00209cfcpop rbx
00209cfdpop rbp
00209cfepop r12
00209d00pop r13
00209d02pop r14
00209d04pop r15
00209d06ret
00209ba0
00209ba0caml_compute_gc_stats:
00209ba0push r15
00209ba2push r14
00209ba4push r13
00209ba6mov r13, rdi
00209ba9add rdi, 8
00209badpush r12
00209bafmov rcx, r13
00209bb2push rbp
00209bb3push rbx
00209bb4lea rbx, [r13+32]
00209bb8sub rsp, 8
00209bbcmov r12, [rip+0x6c421]
00209bc3mov rax, [r12]
00209bc8mov ebp, [rax+288]
00209bcemov [rdi-8], 0
00209bd6xor eax, eax
00209bd8mov [rdi+80], 0
00209be0and rdi, -8
00209be4sub rcx, rdi
00209be7add ecx, 96
00209beashr ecx, 3
00209bedrep stosq [rdi], rax
00209bf0mov rdi, rbx
00209bf3call caml_accum_orphan_heap_stats
00209bf8mov rdi, r13
00209bfbcall caml_accum_orphan_alloc_stats
00209c00mov r9, [rip+0x6bd4d]
00209c07mov r14, [r13+40]
00209c0bmov r11, [r13+80]
00209c0fcmp [r9+160], 0
00209c17je 0x209cf0
00209c1dmov r10, [rip+0x16eb58]
00209c24xor r8l, r8l
00209c27xor eax, eax
00209c29jmp 0x209c8a
00209c2bdb 0x31
00209c2cshr bl, 91
00209c2f
00209c2f 90 .
00209c30
00209c30loc_209c30:
00209c30movq x2, [rax]
00209c34movdqa x1, x0
00209c38psrldq x0, 8
00209c3dmov rdi, rbx
00209c40lea rsi, [rax+32]
00209c44paddq x1, x2
00209c48movq [r13], x1
00209c4emovq x1, [rax+8]
00209c53paddq x0, x1
00209c57movq [r13+8], x0
00209c5dadd rcx, [rax+16]
00209c61mov [r13+16], rcx
00209c65add rdx, [rax+24]
00209c69mov [r13+24], rdx
00209c6dcall caml_accum_heap_stats
00209c72
00209c72loc_209c72:
00209c72add r8l, 1
00209c76add r14, [rax+40]
00209c7aadd r11, [rax+80]
00209c7emovsxd rax, r8l
00209c81cmp rax, [r9+160]
00209c88jae 0x209cf0
00209c8a
00209c8aloc_209c8a:
00209c8alea rax, [rax+2*rax]
00209c8emovdqu x0, [r13]
00209c94mov rcx, [r13+16]
00209c98shl rax, 5
00209c9cmov rdx, [r13+24]
00209ca0add rax, r10
00209ca3cmp ebp, r8l
00209ca6jne 0x209c30
00209ca8mov r15, [r12]
00209cadmov rdi, [r15+400]
00209cb4mov rsi, [r15+408]
00209cbbmovdqu x1, [r15+384]
00209cc4add rcx, rdi
00209cc7add rdx, rsi
00209ccalea rsi, [rax+32]
00209ccemov rdi, rbx
00209cd1mov [r13+16], rcx
00209cd5paddq x0, x1
00209cd9mov [r13+24], rdx
00209cddmovups [r13], x0
00209ce2call caml_accum_heap_stats
00209ce7jmp 0x209c72
00209ce9
00209ce9 0f 1f 80 00 00 00 00 .......
00209cf0
00209cf0loc_209cf0:
00209cf0mov [r13+40], r14
00209cf4mov [r13+80], r11
00209cf8add rsp, 8
00209cfcpop rbx
00209cfdpop rbp
00209cfepop r12
00209d00pop r13
00209d02pop r14
00209d04pop r15
00209d06ret
00209ba0
00209d07
00209d07 // align 0x10
00209d07 // align 0x10
00209d10
00209d10caml_register_global_root:
00209d10push rbp
00209d11lea rbp, [rip+0x16ecc4]
00209d18push rbx
00209d19mov rbx, rdi
00209d1cmov rdi, rbp
00209d1fsub rsp, 8
00209d23call fn_f4710
00209d28test eax, eax
00209d2ajne 0x209d54
00209d2cxor edx, edx
00209d2elea rdi, [rip+0x16ec07]
00209d35mov rsi, rbx
00209d38call caml_skiplist_insert
00209d3dmov rdi, rbp
00209d40call fn_f47c0
00209d45test eax, eax
00209d47jne 0x209d62
00209d49add rsp, 8
00209d4dpop rbx
00209d4epop rbp
00209d4fret
00209d50mov esi, eax
00209d52lea rdi, [rip+0x257b2]
00209d59call caml_plat_fatal_error
00209d5emov esi, eax
00209d60lea rdi, [rip+0x257af]
00209d67call caml_plat_fatal_error
00209d6cdb 0x60
00209d6dsbb al, 1
00209d6fdb 0x00
00209d10
00209d10caml_register_global_root:
00209d10push rbp
00209d11lea rbp, [rip+0x16ecc4]
00209d18push rbx
00209d19mov rbx, rdi
00209d1cmov rdi, rbp
00209d1fsub rsp, 8
00209d23call fn_f4710
00209d28test eax, eax
00209d2ajne 0x209d54
00209d2cxor edx, edx
00209d2elea rdi, [rip+0x16ec07]
00209d35mov rsi, rbx
00209d38call caml_skiplist_insert
00209d3dmov rdi, rbp
00209d40call fn_f47c0
00209d45test eax, eax
00209d47jne 0x209d62
00209d49add rsp, 8
00209d4dpop rbx
00209d4epop rbp
00209d4fret
00209d50mov esi, eax
00209d52lea rdi, [rip+0x257b2]
00209d59call caml_plat_fatal_error
00209d5emov esi, eax
00209d60lea rdi, [rip+0x257af]
00209d67call caml_plat_fatal_error
00209d6cdb 0x60
00209d6dsbb al, 1
00209d6fdb 0x00
00209d10
00209d70
00209d70caml_remove_global_root:
00209d70push rbp
00209d71lea rbp, [rip+0x16ec64]
00209d78push rbx
00209d79mov rbx, rdi
00209d7cmov rdi, rbp
00209d7fsub rsp, 8
00209d83call fn_f4710
00209d88test eax, eax
00209d8ajne 0x209db2
00209d8clea rdi, [rip+0x16eba9]
00209d93mov rsi, rbx
00209d96call caml_skiplist_remove
00209d9bmov rdi, rbp
00209d9ecall fn_f47c0
00209da3test eax, eax
00209da5jne 0x209dc0
00209da7add rsp, 8
00209dabpop rbx
00209dacpop rbp
00209dadret
00209daemov esi, eax
00209db0lea rdi, [rip+0x25754]
00209db7call caml_plat_fatal_error
00209dbcmov esi, eax
00209dbelea rdi, [rip+0x25751]
00209dc5call caml_plat_fatal_error
00209dcadb 0x02
00209dcbsbb al, 1
00209dcddb 0x00
00209d70
00209d70caml_remove_global_root:
00209d70push rbp
00209d71lea rbp, [rip+0x16ec64]
00209d78push rbx
00209d79mov rbx, rdi
00209d7cmov rdi, rbp
00209d7fsub rsp, 8
00209d83call fn_f4710
00209d88test eax, eax
00209d8ajne 0x209db2
00209d8clea rdi, [rip+0x16eba9]
00209d93mov rsi, rbx
00209d96call caml_skiplist_remove
00209d9bmov rdi, rbp
00209d9ecall fn_f47c0
00209da3test eax, eax
00209da5jne 0x209dc0
00209da7add rsp, 8
00209dabpop rbx
00209dacpop rbp
00209dadret
00209daemov esi, eax
00209db0lea rdi, [rip+0x25754]
00209db7call caml_plat_fatal_error
00209dbcmov esi, eax
00209dbelea rdi, [rip+0x25751]
00209dc5call caml_plat_fatal_error
00209dcadb 0x02
00209dcbsbb al, 1
00209dcddb 0x00
00209d70
00209dce
00209dce // align 0x10
00209dce // align 0x10
00209dd0
00209dd0caml_register_generational_global_root:
00209dd0push rbp
00209dd1push rbx
00209dd2sub rsp, 8
00209dd6mov rax, [rip+0x6c207]
00209dddcmp [rax], 0
00209de2je 0x209e60
00209de4mov rax, [rdi]
00209de7mov rbx, rdi
00209deatest al, 1
00209decjne 0x209e2b
00209deelea rbp, [rip+0x16ebe7]
00209df5cmp rax, [rip+0x16e7c8]
00209dfcmov rdi, rbp
00209dffjb 0x209e38
00209e01call fn_f4710
00209e06test eax, eax
00209e08jne 0x209e65
00209e0axor edx, edx
00209e0cmov rsi, rbx
00209e0flea rdi, [rip+0x16e9e6]
00209e16call caml_skiplist_insert
00209e1bmov rdi, rbp
00209e1ecall fn_f47c0
00209e23test eax, eax
00209e25jne 0x209e73
00209e27add rsp, 8
00209e2b
00209e2bloc_209e2b:
00209e2bpop rbx
00209e2cpop rbp
00209e2dret
00209e2edb 0x08
00209e2fpop rbx
00209e30pop rbp
00209e31ret
00209e32
00209e32 66 0f 1f 44 00 00 f..D..
00209e38
00209e38loc_209e38:
00209e38cmp [rip+0x16e791], rax
00209e3fjae 0x209e05
00209e41call fn_f4710
00209e46test eax, eax
00209e48jne 0x209e65
00209e4axor edx, edx
00209e4cmov rsi, rbx
00209e4flea rdi, [rip+0x16ea4a]
00209e56jmp 0x209e1a
00209e58
00209e58 0f 1f 84 00 00 00 00 00 ........
00209e60
00209e60loc_209e60:
00209e60call caml_bad_caml_state
00209e65
00209e65loc_209e65:
00209e65mov esi, eax
00209e67lea rdi, [rip+0x256a1]
00209e6ecall caml_plat_fatal_error
00209e73
00209e73loc_209e73:
00209e73mov esi, eax
00209e75lea rdi, [rip+0x2569e]
00209e7ccall caml_plat_fatal_error
00209dd0
00209dd0caml_register_generational_global_root:
00209dd0push rbp
00209dd1push rbx
00209dd2sub rsp, 8
00209dd6mov rax, [rip+0x6c207]
00209dddcmp [rax], 0
00209de2je 0x209e60
00209de4mov rax, [rdi]
00209de7mov rbx, rdi
00209deatest al, 1
00209decjne 0x209e2b
00209deelea rbp, [rip+0x16ebe7]
00209df5cmp rax, [rip+0x16e7c8]
00209dfcmov rdi, rbp
00209dffjb 0x209e38
00209e01call fn_f4710
00209e06test eax, eax
00209e08jne 0x209e65
00209e0axor edx, edx
00209e0cmov rsi, rbx
00209e0flea rdi, [rip+0x16e9e6]
00209e16call caml_skiplist_insert
00209e1bmov rdi, rbp
00209e1ecall fn_f47c0
00209e23test eax, eax
00209e25jne 0x209e73
00209e27add rsp, 8
00209e2b
00209e2bloc_209e2b:
00209e2bpop rbx
00209e2cpop rbp
00209e2dret
00209e2edb 0x08
00209e2fpop rbx
00209e30pop rbp
00209e31ret
00209e32
00209e32 66 0f 1f 44 00 00 f..D..
00209e38
00209e38loc_209e38:
00209e38cmp [rip+0x16e791], rax
00209e3fjae 0x209e05
00209e41call fn_f4710
00209e46test eax, eax
00209e48jne 0x209e65
00209e4axor edx, edx
00209e4cmov rsi, rbx
00209e4flea rdi, [rip+0x16ea4a]
00209e56jmp 0x209e1a
00209e58
00209e58 0f 1f 84 00 00 00 00 00 ........
00209e60
00209e60loc_209e60:
00209e60call caml_bad_caml_state
00209e65
00209e65loc_209e65:
00209e65mov esi, eax
00209e67lea rdi, [rip+0x256a1]
00209e6ecall caml_plat_fatal_error
00209e73
00209e73loc_209e73:
00209e73mov esi, eax
00209e75lea rdi, [rip+0x2569e]
00209e7ccall caml_plat_fatal_error
00209dd0
00209e81
00209e81 // align 0x10
00209e81 // align 0x10
00209e90
00209e90caml_remove_generational_global_root:
00209e90mov rax, [rdi]
00209e93test al, 1
00209e95jne 0x209f28
00209e9bpush rbp
00209e9clea rbp, [rip+0x16eb39]
00209ea3push rbx
00209ea4mov rbx, rdi
00209ea7sub rsp, 8
00209eabcmp rax, [rip+0x16e712]
00209eb2jb 0x209f18
00209eb4mov rdi, rbp
00209eb7call fn_f4710
00209ebctest eax, eax
00209ebejne 0x209f53
00209ec4lea rdi, [rip+0x16e931]
00209ecbmov rsi, rbx
00209ececall caml_skiplist_remove
00209ed3mov rdi, rbp
00209ed6call fn_f47c0
00209edbtest eax, eax
00209eddjne 0x209f45
00209edfmov rdi, rbp
00209ee2call fn_f4710
00209ee7test eax, eax
00209ee9jne 0x209f37
00209eeblea rdi, [rip+0x16e9aa]
00209ef2mov rsi, rbx
00209ef5call caml_skiplist_remove
00209efamov rdi, rbp
00209efdcall fn_f47c0
00209f02test eax, eax
00209f04jne 0x209f29
00209f06add rsp, 8
00209f0apop rbx
00209f0bpop rbp
00209f0cret
00209f0ddb 0x08
00209f0epop rbx
00209f0fpop rbp
00209f10ret
00209f11
00209f11 0f 1f 80 00 00 00 00 .......
00209f18
00209f18loc_209f18:
00209f18cmp [rip+0x16e6b1], rax
00209f1fjae 0x209eb8
00209f21jmp 0x209ee3
00209f23
00209f23 0f 1f 44 00 00 ..D..
00209f28
00209f28loc_209f28:
00209f28ret
00209f29
00209f29loc_209f29:
00209f29mov esi, eax
00209f2blea rdi, [rip+0x255e8]
00209f32call caml_plat_fatal_error
00209f37
00209f37loc_209f37:
00209f37mov esi, eax
00209f39lea rdi, [rip+0x255cf]
00209f40call caml_plat_fatal_error
00209f45
00209f45loc_209f45:
00209f45mov esi, eax
00209f47lea rdi, [rip+0x255cc]
00209f4ecall caml_plat_fatal_error
00209f53
00209f53loc_209f53:
00209f53mov esi, eax
00209f55lea rdi, [rip+0x255b3]
00209f5ccall caml_plat_fatal_error
00209e90
00209e90caml_remove_generational_global_root:
00209e90mov rax, [rdi]
00209e93test al, 1
00209e95jne 0x209f28
00209e9bpush rbp
00209e9clea rbp, [rip+0x16eb39]
00209ea3push rbx
00209ea4mov rbx, rdi
00209ea7sub rsp, 8
00209eabcmp rax, [rip+0x16e712]
00209eb2jb 0x209f18
00209eb4mov rdi, rbp
00209eb7call fn_f4710
00209ebctest eax, eax
00209ebejne 0x209f53
00209ec4lea rdi, [rip+0x16e931]
00209ecbmov rsi, rbx
00209ececall caml_skiplist_remove
00209ed3mov rdi, rbp
00209ed6call fn_f47c0
00209edbtest eax, eax
00209eddjne 0x209f45
00209edfmov rdi, rbp
00209ee2call fn_f4710
00209ee7test eax, eax
00209ee9jne 0x209f37
00209eeblea rdi, [rip+0x16e9aa]
00209ef2mov rsi, rbx
00209ef5call caml_skiplist_remove
00209efamov rdi, rbp
00209efdcall fn_f47c0
00209f02test eax, eax
00209f04jne 0x209f29
00209f06add rsp, 8
00209f0apop rbx
00209f0bpop rbp
00209f0cret
00209f0ddb 0x08
00209f0epop rbx
00209f0fpop rbp
00209f10ret
00209f11
00209f11 0f 1f 80 00 00 00 00 .......
00209f18
00209f18loc_209f18:
00209f18cmp [rip+0x16e6b1], rax
00209f1fjae 0x209eb8
00209f21jmp 0x209ee3
00209f23
00209f23 0f 1f 44 00 00 ..D..
00209f28
00209f28loc_209f28:
00209f28ret
00209f29
00209f29loc_209f29:
00209f29mov esi, eax
00209f2blea rdi, [rip+0x255e8]
00209f32call caml_plat_fatal_error
00209f37
00209f37loc_209f37:
00209f37mov esi, eax
00209f39lea rdi, [rip+0x255cf]
00209f40call caml_plat_fatal_error
00209f45
00209f45loc_209f45:
00209f45mov esi, eax
00209f47lea rdi, [rip+0x255cc]
00209f4ecall caml_plat_fatal_error
00209f53
00209f53loc_209f53:
00209f53mov esi, eax
00209f55lea rdi, [rip+0x255b3]
00209f5ccall caml_plat_fatal_error
00209e90
00209f61
00209f61 // align 0x10
00209f61 // align 0x10
00209f70
00209f70caml_modify_generational_global_root:
00209f70push r12
00209f72push rbp
00209f73mov rbp, rdi
00209f76push rbx
00209f77mov rbx, rsi
00209f7aand esi, 1
00209f7djne 0x20a040
00209f83mov rax, [rdi]
00209f86mov rdx, [rip+0x16e637]
00209f8dmov rcx, rax
00209f90and ecx, 1
00209f93cmp rbx, rdx
00209f96jb 0x209fb0
00209f98test rcx, rcx
00209f9bjne 0x20a050
00209fa1mov [rbp], rbx
00209fa5
00209fa5loc_209fa5:
00209fa5pop rbx
00209fa6pop rbp
00209fa7pop r12
00209fa9ret
00209faadb 0x5d
00209fabpop r12
00209fadret
00209fae
00209fae 66 90 f.
00209fb0
00209fb0loc_209fb0:
00209fb0mov rsi, [rip+0x16e619]
00209fb7cmp rsi, rbx
00209fbajae 0x209f9c
00209fbclea r12, [rip+0x16ea1d]
00209fc3test rcx, rcx
00209fc6jne 0x20a004
00209fc8cmp rsi, rax
00209fcbjae 0x209fd2
00209fcdcmp rdx, rax
00209fd0ja 0x209fa5
00209fd2
00209fd2loc_209fd2:
00209fd2lea r12, [rip+0x16ea07]
00209fd9mov rdi, r12
00209fdccall fn_f4710
00209fe1test eax, eax
00209fe3jne 0x20a071
00209fe9lea rdi, [rip+0x16e810]
00209ff0mov rsi, rbp
00209ff3call caml_skiplist_remove
00209ff8mov rdi, r12
00209ffbcall fn_f47c0
0020a000test eax, eax
0020a002jne 0x20a031
0020a004
0020a004loc_20a004:
0020a004mov rdi, r12
0020a007call fn_f4710
0020a00ctest eax, eax
0020a00ejne 0x20a071
0020a010xor edx, edx
0020a012mov rsi, rbp
0020a015lea rdi, [rip+0x16e884]
0020a01c
0020a01cloc_20a01c:
0020a01ccall caml_skiplist_insert
0020a021mov rdi, r12
0020a024call fn_f47c0
0020a029test eax, eax
0020a02bje 0x209fa5
0020a031
0020a031loc_20a031:
0020a031mov esi, eax
0020a033lea rdi, [rip+0x254e0]
0020a03acall caml_plat_fatal_error
0020a03fnop
0020a040
0020a040loc_20a040:
0020a040call caml_remove_generational_global_root
0020a045mov [rbp], rbx
0020a049pop rbx
0020a04apop rbp
0020a04bpop r12
0020a04dret
0020a04e
0020a04e 66 90 f.
0020a050
0020a050loc_20a050:
0020a050lea r12, [rip+0x16e989]
0020a057mov rdi, r12
0020a05acall fn_f4710
0020a05ftest eax, eax
0020a061jne 0x20a071
0020a063xor edx, edx
0020a065mov rsi, rbp
0020a068lea rdi, [rip+0x16e791]
0020a06fjmp 0x20a01c
0020a071
0020a071loc_20a071:
0020a071mov esi, eax
0020a073lea rdi, [rip+0x25495]
0020a07acall caml_plat_fatal_error
00209f70
00209f70caml_modify_generational_global_root:
00209f70push r12
00209f72push rbp
00209f73mov rbp, rdi
00209f76push rbx
00209f77mov rbx, rsi
00209f7aand esi, 1
00209f7djne 0x20a040
00209f83mov rax, [rdi]
00209f86mov rdx, [rip+0x16e637]
00209f8dmov rcx, rax
00209f90and ecx, 1
00209f93cmp rbx, rdx
00209f96jb 0x209fb0
00209f98test rcx, rcx
00209f9bjne 0x20a050
00209fa1mov [rbp], rbx
00209fa5
00209fa5loc_209fa5:
00209fa5pop rbx
00209fa6pop rbp
00209fa7pop r12
00209fa9ret
00209faadb 0x5d
00209fabpop r12
00209fadret
00209fae
00209fae 66 90 f.
00209fb0
00209fb0loc_209fb0:
00209fb0mov rsi, [rip+0x16e619]
00209fb7cmp rsi, rbx
00209fbajae 0x209f9c
00209fbclea r12, [rip+0x16ea1d]
00209fc3test rcx, rcx
00209fc6jne 0x20a004
00209fc8cmp rsi, rax
00209fcbjae 0x209fd2
00209fcdcmp rdx, rax
00209fd0ja 0x209fa5
00209fd2
00209fd2loc_209fd2:
00209fd2lea r12, [rip+0x16ea07]
00209fd9mov rdi, r12
00209fdccall fn_f4710
00209fe1test eax, eax
00209fe3jne 0x20a071
00209fe9lea rdi, [rip+0x16e810]
00209ff0mov rsi, rbp
00209ff3call caml_skiplist_remove
00209ff8mov rdi, r12
00209ffbcall fn_f47c0
0020a000test eax, eax
0020a002jne 0x20a031
0020a004
0020a004loc_20a004:
0020a004mov rdi, r12
0020a007call fn_f4710
0020a00ctest eax, eax
0020a00ejne 0x20a071
0020a010xor edx, edx
0020a012mov rsi, rbp
0020a015lea rdi, [rip+0x16e884]
0020a01c
0020a01cloc_20a01c:
0020a01ccall caml_skiplist_insert
0020a021mov rdi, r12
0020a024call fn_f47c0
0020a029test eax, eax
0020a02bje 0x209fa5
0020a031
0020a031loc_20a031:
0020a031mov esi, eax
0020a033lea rdi, [rip+0x254e0]
0020a03acall caml_plat_fatal_error
0020a03fnop
0020a040
0020a040loc_20a040:
0020a040call caml_remove_generational_global_root
0020a045mov [rbp], rbx
0020a049pop rbx
0020a04apop rbp
0020a04bpop r12
0020a04dret
0020a04e
0020a04e 66 90 f.
0020a050
0020a050loc_20a050:
0020a050lea r12, [rip+0x16e989]
0020a057mov rdi, r12
0020a05acall fn_f4710
0020a05ftest eax, eax
0020a061jne 0x20a071
0020a063xor edx, edx
0020a065mov rsi, rbp
0020a068lea rdi, [rip+0x16e791]
0020a06fjmp 0x20a01c
0020a071
0020a071loc_20a071:
0020a071mov esi, eax
0020a073lea rdi, [rip+0x25495]
0020a07acall caml_plat_fatal_error
00209f70
0020a07f
0020a07f // align 0x10
0020a07f // align 0x10
0020a080
0020a080caml_register_dyn_globals:
0020a080push r12
0020a082lea r12, [rip+0x16e953]
0020a089push rbp
0020a08amovsxd rbp, esi
0020a08dpush rbx
0020a08emov rbx, rdi
0020a091mov rdi, r12
0020a094sub rsp, 16
0020a098call fn_f4710
0020a09dtest eax, eax
0020a09fjne 0x20a108
0020a0a1test ebp, ebp
0020a0a3jle 0x20a0f3
0020a0a5mov rax, [rip+0x16e920]
0020a0aclea rbp, [rbx+8*rbp]
0020a0b0nop [rax+rax]
0020a0bbnop
0020a0bcmovq x0, [rbx]
0020a0c0
0020a0c0loc_20a0c0:
0020a0c0movq x1, rax
0020a0c5mov edi, 16
0020a0caadd rbx, 8
0020a0cepunpcklqdq x0, x1
0020a0d2movaps [rsp], x0
0020a0d6call caml_stat_alloc
0020a0dbmovdqa x0, [rsp]
0020a0e0mov [rip+0x16e8e5], rax
0020a0e7movups [rax], x0
0020a0eacmp rbx, rbp
0020a0edjne 0x20a0c0
0020a0efmov rdi, r12
0020a0f2call fn_f47c0
0020a0f7test eax, eax
0020a0f9jne 0x20a116
0020a0fbadd rsp, 16
0020a0ffpop rbx
0020a100pop rbp
0020a101pop r12
0020a103ret
0020a104mov esi, eax
0020a106lea rdi, [rip+0x253fe]
0020a10dcall caml_plat_fatal_error
0020a112mov esi, eax
0020a114lea rdi, [rip+0x253fb]
0020a11bcall caml_plat_fatal_error
0020a120db 0xac
0020a121sbb [rcx], al
0020a123db 0x00
0020a080
0020a080caml_register_dyn_globals:
0020a080push r12
0020a082lea r12, [rip+0x16e953]
0020a089push rbp
0020a08amovsxd rbp, esi
0020a08dpush rbx
0020a08emov rbx, rdi
0020a091mov rdi, r12
0020a094sub rsp, 16
0020a098call fn_f4710
0020a09dtest eax, eax
0020a09fjne 0x20a108
0020a0a1test ebp, ebp
0020a0a3jle 0x20a0f3
0020a0a5mov rax, [rip+0x16e920]
0020a0aclea rbp, [rbx+8*rbp]
0020a0b0nop [rax+rax]
0020a0bbnop
0020a0bcmovq x0, [rbx]
0020a0c0
0020a0c0loc_20a0c0:
0020a0c0movq x1, rax
0020a0c5mov edi, 16
0020a0caadd rbx, 8
0020a0cepunpcklqdq x0, x1
0020a0d2movaps [rsp], x0
0020a0d6call caml_stat_alloc
0020a0dbmovdqa x0, [rsp]
0020a0e0mov [rip+0x16e8e5], rax
0020a0e7movups [rax], x0
0020a0eacmp rbx, rbp
0020a0edjne 0x20a0c0
0020a0efmov rdi, r12
0020a0f2call fn_f47c0
0020a0f7test eax, eax
0020a0f9jne 0x20a116
0020a0fbadd rsp, 16
0020a0ffpop rbx
0020a100pop rbp
0020a101pop r12
0020a103ret
0020a104mov esi, eax
0020a106lea rdi, [rip+0x253fe]
0020a10dcall caml_plat_fatal_error
0020a112mov esi, eax
0020a114lea rdi, [rip+0x253fb]
0020a11bcall caml_plat_fatal_error
0020a120db 0xac
0020a121sbb [rcx], al
0020a123db 0x00
0020a080
0020a124
0020a124 // align 0x10
0020a124 // align 0x10
0020a130
0020a130caml_scan_global_roots:
0020a130push r15
0020a132push r14
0020a134push r13
0020a136lea r13, [rip+0x16e89f]
0020a13dpush r12
0020a13fpush rbp
0020a140mov rbp, rsi
0020a143push rbx
0020a144mov rbx, rdi
0020a147mov rdi, r13
0020a14asub rsp, 8
0020a14ecall fn_f4710
0020a153test eax, eax
0020a155jne 0x20a316
0020a15bmov r12, [rip+0x16e7da]
0020a162test r12, r12
0020a165je 0x20a188
0020a167nop [rax+rax]
0020a16cmov rax, r12
0020a16fmov r12, [r12+16]
0020a174mov rdi, rbp
0020a177mov rdx, [rax]
0020a17amov rsi, [rdx]
0020a17dcall rbx
0020a17ftest r12, r12
0020a182jne 0x20a170
0020a184mov r12, [rip+0x16e711]
0020a18btest r12, r12
0020a18eje 0x20a1b8
0020a190nop [rax+rax]
0020a19bnop
0020a19cmov rax, r12
0020a19fmov r12, [r12+16]
0020a1a4mov rdi, rbp
0020a1a7mov rdx, [rax]
0020a1aamov rsi, [rdx]
0020a1adcall rbx
0020a1aftest r12, r12
0020a1b2jne 0x20a1a0
0020a1b4mov r12, [rip+0x16e641]
0020a1bbtest r12, r12
0020a1beje 0x20a1e8
0020a1c0nop [rax+rax]
0020a1cbnop
0020a1ccmov rax, r12
0020a1cfmov r12, [r12+16]
0020a1d4mov rdi, rbp
0020a1d7mov rdx, [rax]
0020a1damov rsi, [rdx]
0020a1ddcall rbx
0020a1dftest r12, r12
0020a1e2jne 0x20a1d0
0020a1e4mov rdi, r13
0020a1e7call fn_f47c0
0020a1ecmov esi, eax
0020a1eetest eax, eax
0020a1f0jne 0x20a330
0020a1f6mov rdi, r13
0020a1f9call fn_f4710
0020a1femov esi, eax
0020a200test eax, eax
0020a202jne 0x20a324
0020a208mov rdi, r13
0020a20bmov r12, [rip+0x16e7ba]
0020a212call fn_f47c0
0020a217mov esi, eax
0020a219test eax, eax
0020a21bjne 0x20a330
0020a221mov r15, [rip+0x6c044]
0020a228xor r13l, r13l
0020a22btest r15, r15
0020a22eje 0x20a2a2
0020a230nop [rax+rax]
0020a23bnop
0020a23cmov rax, [r15]
0020a23ftest rax, rax
0020a242je 0x20a28b
0020a244nop [rax+rax]
0020a24cxor r14l, r14l
0020a24fjmp 0x20a26e
0020a251db 0x31
0020a252imul bl
0020a254db 0x19
0020a255
0020a255 0f 1f 00 ...
0020a258
0020a258loc_20a258:
0020a258mov rax, [r15]
0020a25bmov rdi, rbp
0020a25eadd r14l, 1
0020a262lea rdx, [rax+8*rdx]
0020a266mov rsi, [rdx]
0020a269call rbx
0020a26bmov rax, [r15]
0020a26e
0020a26eloc_20a26e:
0020a26emov rax, [rax-8]
0020a272movsxd rdx, r14l
0020a275shr rax, 10
0020a279cmp rdx, rax
0020a27cjb 0x20a258
0020a27emov rax, [r15+8]
0020a282add r15, 8
0020a286test rax, rax
0020a289jne 0x20a250
0020a28b
0020a28bloc_20a28b:
0020a28badd r13l, 1
0020a28flea rcx, [rip+0x6bfda]
0020a296movsxd rax, r13l
0020a299mov r15, [rcx+8*rax]
0020a29dtest r15, r15
0020a2a0jne 0x20a240
0020a2a2
0020a2a2loc_20a2a2:
0020a2a2test r12, r12
0020a2a5je 0x20a307
0020a2a7nop [rax+rax]
0020a2b0
0020a2b0loc_20a2b0:
0020a2b0mov r13, [r12]
0020a2b4mov rax, [r13]
0020a2b8test rax, rax
0020a2bbje 0x20a2fd
0020a2bdnop [rax]
0020a2c0
0020a2c0loc_20a2c0:
0020a2c0xor r14l, r14l
0020a2c3jmp 0x20a2e0
0020a2c5
0020a2c5 0f 1f 00 ...
0020a2c8
0020a2c8loc_20a2c8:
0020a2c8mov rax, [r13]
0020a2ccmov rdi, rbp
0020a2cfadd r14l, 1
0020a2d3lea rdx, [rax+8*rdx]
0020a2d7mov rsi, [rdx]
0020a2dacall rbx
0020a2dcmov rax, [r13]
0020a2e0
0020a2e0loc_20a2e0:
0020a2e0mov rax, [rax-8]
0020a2e4movsxd rdx, r14l
0020a2e7shr rax, 10
0020a2ebcmp rdx, rax
0020a2eejb 0x20a2c8
0020a2f0mov rax, [r13+8]
0020a2f4add r13, 8
0020a2f8test rax, rax
0020a2fbjne 0x20a2c0
0020a2fd
0020a2fdloc_20a2fd:
0020a2fdmov r12, [r12+8]
0020a302test r12, r12
0020a305jne 0x20a2b0
0020a307
0020a307loc_20a307:
0020a307add rsp, 8
0020a30bpop rbx
0020a30cpop rbp
0020a30dpop r12
0020a30fpop r13
0020a311pop r14
0020a313pop r15
0020a315ret
0020a316
0020a316loc_20a316:
0020a316mov esi, eax
0020a318lea rdi, [rip+0x251f0]
0020a31fcall caml_plat_fatal_error
0020a324
0020a324loc_20a324:
0020a324lea rdi, [rip+0x251e4]
0020a32bcall caml_plat_fatal_error
0020a330
0020a330loc_20a330:
0020a330lea rdi, [rip+0x251e3]
0020a337call caml_plat_fatal_error
0020a130
0020a130caml_scan_global_roots:
0020a130push r15
0020a132push r14
0020a134push r13
0020a136lea r13, [rip+0x16e89f]
0020a13dpush r12
0020a13fpush rbp
0020a140mov rbp, rsi
0020a143push rbx
0020a144mov rbx, rdi
0020a147mov rdi, r13
0020a14asub rsp, 8
0020a14ecall fn_f4710
0020a153test eax, eax
0020a155jne 0x20a316
0020a15bmov r12, [rip+0x16e7da]
0020a162test r12, r12
0020a165je 0x20a188
0020a167nop [rax+rax]
0020a16cmov rax, r12
0020a16fmov r12, [r12+16]
0020a174mov rdi, rbp
0020a177mov rdx, [rax]
0020a17amov rsi, [rdx]
0020a17dcall rbx
0020a17ftest r12, r12
0020a182jne 0x20a170
0020a184mov r12, [rip+0x16e711]
0020a18btest r12, r12
0020a18eje 0x20a1b8
0020a190nop [rax+rax]
0020a19bnop
0020a19cmov rax, r12
0020a19fmov r12, [r12+16]
0020a1a4mov rdi, rbp
0020a1a7mov rdx, [rax]
0020a1aamov rsi, [rdx]
0020a1adcall rbx
0020a1aftest r12, r12
0020a1b2jne 0x20a1a0
0020a1b4mov r12, [rip+0x16e641]
0020a1bbtest r12, r12
0020a1beje 0x20a1e8
0020a1c0nop [rax+rax]
0020a1cbnop
0020a1ccmov rax, r12
0020a1cfmov r12, [r12+16]
0020a1d4mov rdi, rbp
0020a1d7mov rdx, [rax]
0020a1damov rsi, [rdx]
0020a1ddcall rbx
0020a1dftest r12, r12
0020a1e2jne 0x20a1d0
0020a1e4mov rdi, r13
0020a1e7call fn_f47c0
0020a1ecmov esi, eax
0020a1eetest eax, eax
0020a1f0jne 0x20a330
0020a1f6mov rdi, r13
0020a1f9call fn_f4710
0020a1femov esi, eax
0020a200test eax, eax
0020a202jne 0x20a324
0020a208mov rdi, r13
0020a20bmov r12, [rip+0x16e7ba]
0020a212call fn_f47c0
0020a217mov esi, eax
0020a219test eax, eax
0020a21bjne 0x20a330
0020a221mov r15, [rip+0x6c044]
0020a228xor r13l, r13l
0020a22btest r15, r15
0020a22eje 0x20a2a2
0020a230nop [rax+rax]
0020a23bnop
0020a23cmov rax, [r15]
0020a23ftest rax, rax
0020a242je 0x20a28b
0020a244nop [rax+rax]
0020a24cxor r14l, r14l
0020a24fjmp 0x20a26e
0020a251db 0x31
0020a252imul bl
0020a254db 0x19
0020a255
0020a255 0f 1f 00 ...
0020a258
0020a258loc_20a258:
0020a258mov rax, [r15]
0020a25bmov rdi, rbp
0020a25eadd r14l, 1
0020a262lea rdx, [rax+8*rdx]
0020a266mov rsi, [rdx]
0020a269call rbx
0020a26bmov rax, [r15]
0020a26e
0020a26eloc_20a26e:
0020a26emov rax, [rax-8]
0020a272movsxd rdx, r14l
0020a275shr rax, 10
0020a279cmp rdx, rax
0020a27cjb 0x20a258
0020a27emov rax, [r15+8]
0020a282add r15, 8
0020a286test rax, rax
0020a289jne 0x20a250
0020a28b
0020a28bloc_20a28b:
0020a28badd r13l, 1
0020a28flea rcx, [rip+0x6bfda]
0020a296movsxd rax, r13l
0020a299mov r15, [rcx+8*rax]
0020a29dtest r15, r15
0020a2a0jne 0x20a240
0020a2a2
0020a2a2loc_20a2a2:
0020a2a2test r12, r12
0020a2a5je 0x20a307
0020a2a7nop [rax+rax]
0020a2b0
0020a2b0loc_20a2b0:
0020a2b0mov r13, [r12]
0020a2b4mov rax, [r13]
0020a2b8test rax, rax
0020a2bbje 0x20a2fd
0020a2bdnop [rax]
0020a2c0
0020a2c0loc_20a2c0:
0020a2c0xor r14l, r14l
0020a2c3jmp 0x20a2e0
0020a2c5
0020a2c5 0f 1f 00 ...
0020a2c8
0020a2c8loc_20a2c8:
0020a2c8mov rax, [r13]
0020a2ccmov rdi, rbp
0020a2cfadd r14l, 1
0020a2d3lea rdx, [rax+8*rdx]
0020a2d7mov rsi, [rdx]
0020a2dacall rbx
0020a2dcmov rax, [r13]
0020a2e0
0020a2e0loc_20a2e0:
0020a2e0mov rax, [rax-8]
0020a2e4movsxd rdx, r14l
0020a2e7shr rax, 10
0020a2ebcmp rdx, rax
0020a2eejb 0x20a2c8
0020a2f0mov rax, [r13+8]
0020a2f4add r13, 8
0020a2f8test rax, rax
0020a2fbjne 0x20a2c0
0020a2fd
0020a2fdloc_20a2fd:
0020a2fdmov r12, [r12+8]
0020a302test r12, r12
0020a305jne 0x20a2b0
0020a307
0020a307loc_20a307:
0020a307add rsp, 8
0020a30bpop rbx
0020a30cpop rbp
0020a30dpop r12
0020a30fpop r13
0020a311pop r14
0020a313pop r15
0020a315ret
0020a316
0020a316loc_20a316:
0020a316mov esi, eax
0020a318lea rdi, [rip+0x251f0]
0020a31fcall caml_plat_fatal_error
0020a324
0020a324loc_20a324:
0020a324lea rdi, [rip+0x251e4]
0020a32bcall caml_plat_fatal_error
0020a330
0020a330loc_20a330:
0020a330lea rdi, [rip+0x251e3]
0020a337call caml_plat_fatal_error
0020a130
0020a33c
0020a33c // align 0x10
0020a33c // align 0x10
0020a340
0020a340caml_scan_global_young_roots:
0020a340push r13
0020a342mov r13, rsi
0020a345push r12
0020a347lea r12, [rip+0x16e68e]
0020a34epush rbp
0020a34fmov rbp, rdi
0020a352mov rdi, r12
0020a355push rbx
0020a356sub rsp, 8
0020a35acall fn_f4710
0020a35ftest eax, eax
0020a361jne 0x20a41c
0020a367mov rbx, [rip+0x16e5ce]
0020a36etest rbx, rbx
0020a371je 0x20a397
0020a373nop [rax+rax]
0020a37cmov rax, rbx
0020a37fmov rbx, [rbx+16]
0020a383mov rdi, r13
0020a386mov rdx, [rax]
0020a389mov rsi, [rdx]
0020a38ccall rbp
0020a38etest rbx, rbx
0020a391jne 0x20a380
0020a393mov rbx, [rip+0x16e502]
0020a39atest rbx, rbx
0020a39dje 0x20a3f9
0020a39fnop [rax+rax]
0020a3aanop
0020a3acmov rax, rbx
0020a3afmov rbx, [rbx+16]
0020a3b3mov rdi, r13
0020a3b6mov rdx, [rax]
0020a3b9mov rsi, [rdx]
0020a3bccall rbp
0020a3betest rbx, rbx
0020a3c1jne 0x20a3b0
0020a3c3mov rbx, [rip+0x16e4d2]
0020a3catest rbx, rbx
0020a3cdje 0x20a3f9
0020a3cflea rbp, [rip+0x16e426]
0020a3d6nop [rax+rax]
0020a3dcmov rax, rbx
0020a3dfmov rbx, [rbx+16]
0020a3e3xor edx, edx
0020a3e5mov rdi, rbp
0020a3e8mov rsi, [rax]
0020a3ebcall caml_skiplist_insert
0020a3f0test rbx, rbx
0020a3f3jne 0x20a3e0
0020a3f5lea rdi, [rip+0x16e4a0]
0020a3fccall caml_skiplist_empty
0020a401mov rdi, r12
0020a404call fn_f47c0
0020a409test eax, eax
0020a40bjne 0x20a42a
0020a40dadd rsp, 8
0020a411pop rbx
0020a412pop rbp
0020a413pop r12
0020a415pop r13
0020a417ret
0020a418mov esi, eax
0020a41alea rdi, [rip+0x250ea]
0020a421call caml_plat_fatal_error
0020a426mov esi, eax
0020a428lea rdi, [rip+0x250e7]
0020a42fcall caml_plat_fatal_error
0020a434db 0x98
0020a435db 0x15
0020a436add [rax], eax
0020a340
0020a340caml_scan_global_young_roots:
0020a340push r13
0020a342mov r13, rsi
0020a345push r12
0020a347lea r12, [rip+0x16e68e]
0020a34epush rbp
0020a34fmov rbp, rdi
0020a352mov rdi, r12
0020a355push rbx
0020a356sub rsp, 8
0020a35acall fn_f4710
0020a35ftest eax, eax
0020a361jne 0x20a41c
0020a367mov rbx, [rip+0x16e5ce]
0020a36etest rbx, rbx
0020a371je 0x20a397
0020a373nop [rax+rax]
0020a37cmov rax, rbx
0020a37fmov rbx, [rbx+16]
0020a383mov rdi, r13
0020a386mov rdx, [rax]
0020a389mov rsi, [rdx]
0020a38ccall rbp
0020a38etest rbx, rbx
0020a391jne 0x20a380
0020a393mov rbx, [rip+0x16e502]
0020a39atest rbx, rbx
0020a39dje 0x20a3f9
0020a39fnop [rax+rax]
0020a3aanop
0020a3acmov rax, rbx
0020a3afmov rbx, [rbx+16]
0020a3b3mov rdi, r13
0020a3b6mov rdx, [rax]
0020a3b9mov rsi, [rdx]
0020a3bccall rbp
0020a3betest rbx, rbx
0020a3c1jne 0x20a3b0
0020a3c3mov rbx, [rip+0x16e4d2]
0020a3catest rbx, rbx
0020a3cdje 0x20a3f9
0020a3cflea rbp, [rip+0x16e426]
0020a3d6nop [rax+rax]
0020a3dcmov rax, rbx
0020a3dfmov rbx, [rbx+16]
0020a3e3xor edx, edx
0020a3e5mov rdi, rbp
0020a3e8mov rsi, [rax]
0020a3ebcall caml_skiplist_insert
0020a3f0test rbx, rbx
0020a3f3jne 0x20a3e0
0020a3f5lea rdi, [rip+0x16e4a0]
0020a3fccall caml_skiplist_empty
0020a401mov rdi, r12
0020a404call fn_f47c0
0020a409test eax, eax
0020a40bjne 0x20a42a
0020a40dadd rsp, 8
0020a411pop rbx
0020a412pop rbp
0020a413pop r12
0020a415pop r13
0020a417ret
0020a418mov esi, eax
0020a41alea rdi, [rip+0x250ea]
0020a421call caml_plat_fatal_error
0020a426mov esi, eax
0020a428lea rdi, [rip+0x250e7]
0020a42fcall caml_plat_fatal_error
0020a434db 0x98
0020a435db 0x15
0020a436add [rax], eax
0020a340
0020a438
0020a438 // align 0x10
0020a438 // align 0x10
0020a440
0020a440caml_hash_mix_uint32:
0020a440imul esi, esi, 0xffffffffcc9e2d51
0020a446mov eax, esi
0020a448rol eax, 15
0020a44bimul esi, eax, 0x1b873593
0020a451xor esi, edi
0020a453rol esi, 13
0020a456lea eax, [rsi+4*rsi-0x19ab949c]
0020a45dret
0020a45edb 0x6b
0020a45fpush rsp
0020a460out 195, al
0020a440
0020a440caml_hash_mix_uint32:
0020a440imul esi, esi, 0xffffffffcc9e2d51
0020a446mov eax, esi
0020a448rol eax, 15
0020a44bimul esi, eax, 0x1b873593
0020a451xor esi, edi
0020a453rol esi, 13
0020a456lea eax, [rsi+4*rsi-0x19ab949c]
0020a45dret
0020a45edb 0x6b
0020a45fpush rsp
0020a460out 195, al
0020a440
0020a462
0020a462 // align 0x10
0020a462 // align 0x10
0020a470
0020a470caml_hash_mix_intnat:
0020a470mov rdx, rsi
0020a473mov rax, rsi
0020a476sar rax, 63
0020a47asar rdx, 32
0020a47exor edx, eax
0020a480xor edx, esi
0020a482imul eax, edx, 0xffffffffcc9e2d51
0020a488rol eax, 15
0020a48bimul eax, eax, 0x1b873593
0020a491xor eax, edi
0020a493rol eax, 13
0020a496lea eax, [rax+4*rax-0x19ab949c]
0020a49dret
0020a49edb 0x6b
0020a49fpush rsp
0020a4a0out 195, al
0020a470
0020a470caml_hash_mix_intnat:
0020a470mov rdx, rsi
0020a473mov rax, rsi
0020a476sar rax, 63
0020a47asar rdx, 32
0020a47exor edx, eax
0020a480xor edx, esi
0020a482imul eax, edx, 0xffffffffcc9e2d51
0020a488rol eax, 15
0020a48bimul eax, eax, 0x1b873593
0020a491xor eax, edi
0020a493rol eax, 13
0020a496lea eax, [rax+4*rax-0x19ab949c]
0020a49dret
0020a49edb 0x6b
0020a49fpush rsp
0020a4a0out 195, al
0020a470
0020a4a2
0020a4a2 // align 0x10
0020a4a2 // align 0x10
0020a4b0
0020a4b0caml_hash_mix_int64:
0020a4b0mov rdx, rsi
0020a4b3imul esi, esi, 0xffffffffcc9e2d51
0020a4b9sar rdx, 32
0020a4bdimul eax, edx, 0xffffffffcc9e2d51
0020a4c3rol esi, 15
0020a4c6imul esi, esi, 0x1b873593
0020a4ccrol eax, 15
0020a4cfimul eax, eax, 0x1b873593
0020a4d5xor esi, edi
0020a4d7rol esi, 13
0020a4dalea ecx, [rsi+4*rsi-0x19ab949c]
0020a4e1xor eax, ecx
0020a4e3rol eax, 13
0020a4e6lea eax, [rax+4*rax-0x19ab949c]
0020a4edret
0020a4eedb 0x6b
0020a4efpush rsp
0020a4f0out 195, al
0020a4b0
0020a4b0caml_hash_mix_int64:
0020a4b0mov rdx, rsi
0020a4b3imul esi, esi, 0xffffffffcc9e2d51
0020a4b9sar rdx, 32
0020a4bdimul eax, edx, 0xffffffffcc9e2d51
0020a4c3rol esi, 15
0020a4c6imul esi, esi, 0x1b873593
0020a4ccrol eax, 15
0020a4cfimul eax, eax, 0x1b873593
0020a4d5xor esi, edi
0020a4d7rol esi, 13
0020a4dalea ecx, [rsi+4*rsi-0x19ab949c]
0020a4e1xor eax, ecx
0020a4e3rol eax, 13
0020a4e6lea eax, [rax+4*rax-0x19ab949c]
0020a4edret
0020a4eedb 0x6b
0020a4efpush rsp
0020a4f0out 195, al
0020a4b0
0020a4f2
0020a4f2 // align 0x10
0020a4f2 // align 0x10
0020a500
0020a500caml_hash_mix_double:
0020a500movq rax, x0
0020a505mov rdx, rax
0020a508shr rdx, 32
0020a50cmov ecx, edx
0020a50enot ecx
0020a510and ecx, 0x7ff00000
0020a516je 0x20a558
0020a518imul ecx, eax, 0xffffffffcc9e2d51
0020a51erol ecx, 15
0020a521imul ecx, ecx, 0x1b873593
0020a527xor edi, ecx
0020a529cmp edx, 0xffffffff80000000
0020a52fjne 0x20a564
0020a531xor ecx, ecx
0020a533test eax, eax
0020a535jne 0x20a564
0020a537rol edi, 13
0020a53alea eax, [rdi+4*rdi-0x19ab949c]
0020a541xor eax, ecx
0020a543rol eax, 13
0020a546lea eax, [rax+4*rax-0x19ab949c]
0020a54dret
0020a54edb 0x6b
0020a54fpush rsp
0020a550out 195, al
0020a552
0020a552 66 0f 1f 44 00 00 f..D..
0020a558
0020a558loc_20a558:
0020a558mov ecx, edx
0020a55aand ecx, 0xfffff
0020a560or ecx, eax
0020a562jne 0x20a578
0020a564
0020a564loc_20a564:
0020a564imul edx, edx, 0xffffffffcc9e2d51
0020a56arol edx, 15
0020a56dimul ecx, edx, 0x1b873593
0020a573jmp 0x20a53b
0020a575
0020a575 0f 1f 00 ...
0020a578
0020a578loc_20a578:
0020a578xor edi, 0xffffffffc3539a5d
0020a57emov ecx, 0xffffffffcc2aebe8
0020a583jmp 0x20a53b
0020a500
0020a500caml_hash_mix_double:
0020a500movq rax, x0
0020a505mov rdx, rax
0020a508shr rdx, 32
0020a50cmov ecx, edx
0020a50enot ecx
0020a510and ecx, 0x7ff00000
0020a516je 0x20a558
0020a518imul ecx, eax, 0xffffffffcc9e2d51
0020a51erol ecx, 15
0020a521imul ecx, ecx, 0x1b873593
0020a527xor edi, ecx
0020a529cmp edx, 0xffffffff80000000
0020a52fjne 0x20a564
0020a531xor ecx, ecx
0020a533test eax, eax
0020a535jne 0x20a564
0020a537rol edi, 13
0020a53alea eax, [rdi+4*rdi-0x19ab949c]
0020a541xor eax, ecx
0020a543rol eax, 13
0020a546lea eax, [rax+4*rax-0x19ab949c]
0020a54dret
0020a54edb 0x6b
0020a54fpush rsp
0020a550out 195, al
0020a552
0020a552 66 0f 1f 44 00 00 f..D..
0020a558
0020a558loc_20a558:
0020a558mov ecx, edx
0020a55aand ecx, 0xfffff
0020a560or ecx, eax
0020a562jne 0x20a578
0020a564
0020a564loc_20a564:
0020a564imul edx, edx, 0xffffffffcc9e2d51
0020a56arol edx, 15
0020a56dimul ecx, edx, 0x1b873593
0020a573jmp 0x20a53b
0020a575
0020a575 0f 1f 00 ...
0020a578
0020a578loc_20a578:
0020a578xor edi, 0xffffffffc3539a5d
0020a57emov ecx, 0xffffffffcc2aebe8
0020a583jmp 0x20a53b
0020a500
0020a585
0020a585 // align 0x10
0020a585 // align 0x10
0020a590
0020a590caml_hash_mix_float:
0020a590movd eax, x0
0020a594mov edx, eax
0020a596not edx
0020a598and edx, 0x7f800000
0020a59eje 0x20a5d0
0020a5a0cmp eax, 0xffffffff80000000
0020a5a5je 0x20a5bc
0020a5a7imul eax, eax, 0xffffffffcc9e2d51
0020a5adrol eax, 15
0020a5b0imul eax, eax, 0x1b873593
0020a5b6xor edi, eax
0020a5b8rol edi, 13
0020a5bblea eax, [rdi+4*rdi-0x19ab949c]
0020a5c2ret
0020a5c3db 0x6b
0020a5c4push rsp
0020a5c5out 195, al
0020a5c7
0020a5c7 66 0f 1f 84 00 00 00 00 00 f........
0020a5d0
0020a5d0loc_20a5d0:
0020a5d0test eax, 0x7fffff
0020a5d5je 0x20a5ab
0020a5d7xor edi, 0x5156b99d
0020a5ddrol edi, 13
0020a5e0lea eax, [rdi+4*rdi-0x19ab949c]
0020a5e7ret
0020a590
0020a590caml_hash_mix_float:
0020a590movd eax, x0
0020a594mov edx, eax
0020a596not edx
0020a598and edx, 0x7f800000
0020a59eje 0x20a5d0
0020a5a0cmp eax, 0xffffffff80000000
0020a5a5je 0x20a5bc
0020a5a7imul eax, eax, 0xffffffffcc9e2d51
0020a5adrol eax, 15
0020a5b0imul eax, eax, 0x1b873593
0020a5b6xor edi, eax
0020a5b8rol edi, 13
0020a5bblea eax, [rdi+4*rdi-0x19ab949c]
0020a5c2ret
0020a5c3db 0x6b
0020a5c4push rsp
0020a5c5out 195, al
0020a5c7
0020a5c7 66 0f 1f 84 00 00 00 00 00 f........
0020a5d0
0020a5d0loc_20a5d0:
0020a5d0test eax, 0x7fffff
0020a5d5je 0x20a5ab
0020a5d7xor edi, 0x5156b99d
0020a5ddrol edi, 13
0020a5e0lea eax, [rdi+4*rdi-0x19ab949c]
0020a5e7ret
0020a590
0020a5e8
0020a5e8 // align 0x20
0020a5e8 // align 0x20
0020a600
0020a600caml_hash_mix_string:
0020a600push rbp
0020a601mov rbp, rsi
0020a604push rbx
0020a605mov ebx, edi
0020a607mov rdi, rsi
0020a60asub rsp, 8
0020a60ecall caml_string_length
0020a613mov rcx, rax
0020a616cmp rax, 3
0020a61ajbe 0x20a6d0
0020a620mov edx, 4
0020a625nop [rax+rax]
0020a630nop [rax+rax]
0020a63bnop
0020a63cimul eax, [rdx+rbp-4], 0xffffffffcc9e2d51
0020a644rol eax, 15
0020a647imul eax, eax, 0x1b873593
0020a64dxor eax, ebx
0020a64frol eax, 13
0020a652lea ebx, [rax+4*rax-0x19ab949c]
0020a659mov rax, rdx
0020a65cadd rdx, 4
0020a660cmp rcx, rdx
0020a663jae 0x20a640
0020a665mov rdx, rcx
0020a668and edx, 3
0020a66bcmp rdx, 2
0020a66fje 0x20a6c8
0020a671cmp rdx, 3
0020a675je 0x20a6b0
0020a677cmp rdx, 1
0020a67bjne 0x20a6a4
0020a67dxor edx, edx
0020a67fmovzx eax, [rax+rbp]
0020a683
0020a683loc_20a683:
0020a683or eax, edx
0020a685imul eax, eax, 0xffffffffcc9e2d51
0020a68brol eax, 15
0020a68eimul eax, eax, 0x1b873593
0020a694xor eax, ebx
0020a696rol eax, 13
0020a699lea ebx, [rax+4*rax-0x19ab949c]
0020a6a0mov eax, ebx
0020a6a2add rsp, 8
0020a6a6xor eax, ecx
0020a6a8pop rbx
0020a6a9pop rbp
0020a6aaret
0020a6abdb 0xc8
0020a6acpop rbx
0020a6adpop rbp
0020a6aeret
0020a6af
0020a6af 90 .
0020a6b0
0020a6b0loc_20a6b0:
0020a6b0movzx esi, [rax+rbp+2]
0020a6b5shl esi, 16
0020a6b8
0020a6b8loc_20a6b8:
0020a6b8movzx edx, [rax+rbp+1]
0020a6bdshl edx, 8
0020a6c0or edx, esi
0020a6c2jmp 0x20a683
0020a6c4
0020a6c4 0f 1f 40 00 ..@.
0020a6c8
0020a6c8loc_20a6c8:
0020a6c8xor esi, esi
0020a6cajmp 0x20a6b8
0020a6cc
0020a6cc 0f 1f 40 00 ..@.
0020a6d0
0020a6d0loc_20a6d0:
0020a6d0xor eax, eax
0020a6d2jmp 0x20a669
0020a600
0020a600caml_hash_mix_string:
0020a600push rbp
0020a601mov rbp, rsi
0020a604push rbx
0020a605mov ebx, edi
0020a607mov rdi, rsi
0020a60asub rsp, 8
0020a60ecall caml_string_length
0020a613mov rcx, rax
0020a616cmp rax, 3
0020a61ajbe 0x20a6d0
0020a620mov edx, 4
0020a625nop [rax+rax]
0020a630nop [rax+rax]
0020a63bnop
0020a63cimul eax, [rdx+rbp-4], 0xffffffffcc9e2d51
0020a644rol eax, 15
0020a647imul eax, eax, 0x1b873593
0020a64dxor eax, ebx
0020a64frol eax, 13
0020a652lea ebx, [rax+4*rax-0x19ab949c]
0020a659mov rax, rdx
0020a65cadd rdx, 4
0020a660cmp rcx, rdx
0020a663jae 0x20a640
0020a665mov rdx, rcx
0020a668and edx, 3
0020a66bcmp rdx, 2
0020a66fje 0x20a6c8
0020a671cmp rdx, 3
0020a675je 0x20a6b0
0020a677cmp rdx, 1
0020a67bjne 0x20a6a4
0020a67dxor edx, edx
0020a67fmovzx eax, [rax+rbp]
0020a683
0020a683loc_20a683:
0020a683or eax, edx
0020a685imul eax, eax, 0xffffffffcc9e2d51
0020a68brol eax, 15
0020a68eimul eax, eax, 0x1b873593
0020a694xor eax, ebx
0020a696rol eax, 13
0020a699lea ebx, [rax+4*rax-0x19ab949c]
0020a6a0mov eax, ebx
0020a6a2add rsp, 8
0020a6a6xor eax, ecx
0020a6a8pop rbx
0020a6a9pop rbp
0020a6aaret
0020a6abdb 0xc8
0020a6acpop rbx
0020a6adpop rbp
0020a6aeret
0020a6af
0020a6af 90 .
0020a6b0
0020a6b0loc_20a6b0:
0020a6b0movzx esi, [rax+rbp+2]
0020a6b5shl esi, 16
0020a6b8
0020a6b8loc_20a6b8:
0020a6b8movzx edx, [rax+rbp+1]
0020a6bdshl edx, 8
0020a6c0or edx, esi
0020a6c2jmp 0x20a683
0020a6c4
0020a6c4 0f 1f 40 00 ..@.
0020a6c8
0020a6c8loc_20a6c8:
0020a6c8xor esi, esi
0020a6cajmp 0x20a6b8
0020a6cc
0020a6cc 0f 1f 40 00 ..@.
0020a6d0
0020a6d0loc_20a6d0:
0020a6d0xor eax, eax
0020a6d2jmp 0x20a669
0020a600
0020a6d4
0020a6d4 // align 0x40
0020a6d4 // align 0x40
0020a700
0020a700caml_hash:
0020a700push r15
0020a702mov eax, 256
0020a707push r14
0020a709push r13
0020a70bpush r12
0020a70dpush rbp
0020a70epush rbx
0020a70fsub rsp, 2088
0020a716mov rbx, [0x28]
0020a71fmov [rsp+2072], rbx
0020a727mov rbx, rsi
0020a72amov [rsp+16], rcx
0020a72fsar rbx, 1
0020a732cmp rsi, 513
0020a739cmovbe rax, rbx
0020a73dsar rdx, 1
0020a740sar rdi, 1
0020a743mov r13l, edx
0020a746mov [rsp+8], rax
0020a74btest rdi, rdi
0020a74ejle 0x20a7ec
0020a754mov r14, rdi
0020a757mov r15l, 1
0020a75dlea r12, [rsp+16]
0020a762xor ebx, ebx
0020a764lea rbp, [rip+0x27281]
0020a76bnop
0020a76cadd rbx, 1
0020a770
0020a770loc_20a770:
0020a770mov rsi, [r12+8*rbx-8]
0020a775test sil, 1
0020a779jne 0x20aa65
0020a77flea rcx, [rsi-8]
0020a783
0020a783loc_20a783:
0020a783movzx edi, [rcx]
0020a786mov r8, rsi
0020a789lea eax, [rdi+11]
0020a78ccmp dil, -11
0020a790jb 0x20aa80
0020a796movzx eax, al
0020a799movsxd rax, [rbp+4*rax]
0020a79eadd rax, rbp
0020a7a1jmp rax
0020a7a4nop [rax+rax]
0020a7acmov rax, [rsi]
0020a7afmov rax, [rax+24]
0020a7b3test rax, rax
0020a7b6je 0x20a7e2
0020a7b8mov rdi, rsi
0020a7bbcall rax
0020a7bdimul eax, eax, 0xffffffffcc9e2d51
0020a7c3sub r14, 1
0020a7c7rol eax, 15
0020a7caimul eax, eax, 0x1b873593
0020a7d0xor eax, r13l
0020a7d3rol eax, 13
0020a7d6lea r13l, [rax+4*rax-0x19ab949c]
0020a7decmp rbx, r15
0020a7e1jge 0x20a7ec
0020a7e3test r14, r14
0020a7e6jg 0x20a770
0020a7e8mov eax, r13l
0020a7ebshr eax, 16
0020a7eexor eax, r13l
0020a7f1imul eax, eax, 0xffffffff85ebca6b
0020a7f7mov edx, eax
0020a7f9shr edx, 13
0020a7fcxor edx, eax
0020a7feimul edx, edx, 0xffffffffc2b2ae35
0020a804mov eax, edx
0020a806shr eax, 16
0020a809xor eax, edx
0020a80badd rax, rax
0020a80eand eax, 0x7ffffffe
0020a813add rax, 1
0020a817mov rdx, [rsp+2072]
0020a81fsub rdx, [0x28]
0020a828jne 0x20ab08
0020a82eadd rsp, 2088
0020a835pop rbx
0020a836pop rbp
0020a837pop r12
0020a839pop r13
0020a83bpop r14
0020a83dpop r15
0020a83fret
0020a840nop [rax]
0020a844mov rax, [rcx]
0020a847shr rax, 10
0020a84bje 0x20a7e2
0020a84dmov rsi, r14
0020a850sub rsi, rax
0020a853jmp 0x20a86d
0020a855nop [rax]
0020a85cadd r8, 8
0020a860
0020a860loc_20a860:
0020a860cmp r14, rsi
0020a863je 0x20a7e2
0020a869movsd_xmm x0, [r8]
0020a86emov edi, r13l
0020a871call caml_hash_mix_double
0020a876mov r13l, eax
0020a879sub r14, 1
0020a87djne 0x20a860
0020a87fjmp 0x20a7ec
0020a884nop [rax+rax]
0020a88cmovsd_xmm x0, [rsi]
0020a890mov edi, r13l
0020a893sub r14, 1
0020a897call caml_hash_mix_double
0020a89cmov r13l, eax
0020a89fjmp 0x20a7e2
0020a8a4nop [rax+rax]
0020a8acmov edi, r13l
0020a8afsub r14, 1
0020a8b3call caml_hash_mix_string
0020a8b8mov r13l, eax
0020a8bbjmp 0x20a7e2
0020a8c0nop [rax]
0020a8c4mov rax, [rcx]
0020a8c7shr rax, 10
0020a8cbimul eax, eax, 0x64f16a88
0020a8d1rol eax, 15
0020a8d4imul eax, eax, 0x1b873593
0020a8daxor eax, r13l
0020a8ddrol eax, 13
0020a8e0lea r13l, [rax+4*rax-0x19ab949c]
0020a8e8mov rax, [rcx]
0020a8ebshr rax, 10
0020a8efshl rax, 3
0020a8f3sub rsi, rax
0020a8f6jmp 0x20a783
0020a8fbnop
0020a8fcmov rcx, [rsi+8]
0020a900mov rax, rcx
0020a903mov rsi, rcx
0020a906sar rcx, 1
0020a909sar rax, 33
0020a90dsar rsi, 63
0020a911xor eax, esi
0020a913xor eax, ecx
0020a915jmp 0x20a7c1
0020a91anop
0020a91cmov r8, [rcx]
0020a91fmov rdi, [rsi+8]
0020a923mov rax, [rcx]
0020a926shl rdi, 8
0020a92ashr r8, 10
0020a92eand ah, 252
0020a931imul eax, eax, 0xffffffffcc9e2d51
0020a937rol eax, 15
0020a93aimul eax, eax, 0x1b873593
0020a940xor eax, r13l
0020a943rol eax, 13
0020a946shr rdi, 9
0020a94alea r13l, [rax+4*rax-0x19ab949c]
0020a952je 0x20a9c0
0020a954lea r9, [rsi+8*rdi]
0020a958mov rcx, rsi
0020a95bnop [rax+rax]
0020a966nop [rax+rax]
0020a971nop [rax+rax]
0020a97cmov r10, [rcx]
0020a97fadd rcx, 8
0020a983mov rax, r10
0020a986mov r11, r10
0020a989sar rax, 32
0020a98dsar r11, 63
0020a991xor eax, r11l
0020a994xor eax, r10l
0020a997imul eax, eax, 0xffffffffcc9e2d51
0020a99drol eax, 15
0020a9a0imul eax, eax, 0x1b873593
0020a9a6xor eax, r13l
0020a9a9rol eax, 13
0020a9aclea r13l, [rax+4*rax-0x19ab949c]
0020a9b4cmp r9, rcx
0020a9b7jne 0x20a980
0020a9b9sub r14, rdi
0020a9bccmp [rsp+8], r15
0020a9c1jle 0x20a7e2
0020a9c7cmp rdi, r8
0020a9cajae 0x20a7e2
0020a9d0lea rsi, [rsi+8*rdi]
0020a9d4mov rax, r15
0020a9d7jmp 0x20aa07
0020a9d9nop [rax+rax]
0020a9e4nop [rax+rax]
0020a9efnop [rax+rax]
0020a9fanop
0020a9fccmp [rsp+8], rax
0020aa01jle 0x20aa25
0020aa03mov rcx, [rsi]
0020aa06add rax, 1
0020aa0aadd rsi, 8
0020aa0emov [r12+8*rax-8], rcx
0020aa13mov rcx, rax
0020aa16sub rcx, r15
0020aa19add rcx, rdi
0020aa1ccmp rcx, r8
0020aa1fjb 0x20aa00
0020aa21mov r15, rax
0020aa24jmp 0x20a7e2
0020aa29nop [rax]
0020aa2cmov eax, 1000
0020aa31jmp 0x20aa5c
0020aa33nop [rax+rax]
0020aa3cmovzx edi, [rsi-8]
0020aa40
0020aa40loc_20aa40:
0020aa40lea rcx, [rsi-8]
0020aa44cmp dil, -6
0020aa48jne 0x20a787
0020aa4esub rax, 1
0020aa52je 0x20a7e2
0020aa58mov rsi, [rsi]
0020aa5btest sil, 1
0020aa5fje 0x20aa40
0020aa61mov rax, rsi
0020aa64mov rcx, rsi
0020aa67sar rax, 32
0020aa6bsar rcx, 63
0020aa6fxor eax, ecx
0020aa71xor eax, esi
0020aa73jmp 0x20a7c1
0020aa78nop [rax]
0020aa7cmov rax, [rcx]
0020aa7fmov rsi, [rcx]
0020aa82and ah, 252
0020aa85shr rsi, 10
0020aa89imul eax, eax, 0xffffffffcc9e2d51
0020aa8frol eax, 15
0020aa92imul eax, eax, 0x1b873593
0020aa98xor eax, r13l
0020aa9brol eax, 13
0020aa9elea r13l, [rax+4*rax-0x19ab949c]
0020aaa6cmp [rsp+8], r15
0020aaabjle 0x20a7e2
0020aab1test rsi, rsi
0020aab4je 0x20a7e2
0020aabalea rdi, [r12+8*r15]
0020aabexor eax, eax
0020aac0jmp 0x20aaeb
0020aac2nop [rax+rax]
0020aacdnop [rax+rax]
0020aad8nop [rax]
0020aadccmp [rsp+8], r15
0020aae1jle 0x20a7e2
0020aae7mov rcx, [r8]
0020aaeaadd r15, 1
0020aaeeadd r8, 8
0020aaf2mov [rdi+8*rax], rcx
0020aaf6add rax, 1
0020aafacmp rax, rsi
0020aafdjb 0x20aae0
0020aaffjmp 0x20a7e2
0020ab04call fn_f4590
0020ab09db 0x83
0020ab0adb 0x9a
0020ab0bout dx, al
0020ab0cdb 0xff
0020a700
0020a700caml_hash:
0020a700push r15
0020a702mov eax, 256
0020a707push r14
0020a709push r13
0020a70bpush r12
0020a70dpush rbp
0020a70epush rbx
0020a70fsub rsp, 2088
0020a716mov rbx, [0x28]
0020a71fmov [rsp+2072], rbx
0020a727mov rbx, rsi
0020a72amov [rsp+16], rcx
0020a72fsar rbx, 1
0020a732cmp rsi, 513
0020a739cmovbe rax, rbx
0020a73dsar rdx, 1
0020a740sar rdi, 1
0020a743mov r13l, edx
0020a746mov [rsp+8], rax
0020a74btest rdi, rdi
0020a74ejle 0x20a7ec
0020a754mov r14, rdi
0020a757mov r15l, 1
0020a75dlea r12, [rsp+16]
0020a762xor ebx, ebx
0020a764lea rbp, [rip+0x27281]
0020a76bnop
0020a76cadd rbx, 1
0020a770
0020a770loc_20a770:
0020a770mov rsi, [r12+8*rbx-8]
0020a775test sil, 1
0020a779jne 0x20aa65
0020a77flea rcx, [rsi-8]
0020a783
0020a783loc_20a783:
0020a783movzx edi, [rcx]
0020a786mov r8, rsi
0020a789lea eax, [rdi+11]
0020a78ccmp dil, -11
0020a790jb 0x20aa80
0020a796movzx eax, al
0020a799movsxd rax, [rbp+4*rax]
0020a79eadd rax, rbp
0020a7a1jmp rax
0020a7a4nop [rax+rax]
0020a7acmov rax, [rsi]
0020a7afmov rax, [rax+24]
0020a7b3test rax, rax
0020a7b6je 0x20a7e2
0020a7b8mov rdi, rsi
0020a7bbcall rax
0020a7bdimul eax, eax, 0xffffffffcc9e2d51
0020a7c3sub r14, 1
0020a7c7rol eax, 15
0020a7caimul eax, eax, 0x1b873593
0020a7d0xor eax, r13l
0020a7d3rol eax, 13
0020a7d6lea r13l, [rax+4*rax-0x19ab949c]
0020a7decmp rbx, r15
0020a7e1jge 0x20a7ec
0020a7e3test r14, r14
0020a7e6jg 0x20a770
0020a7e8mov eax, r13l
0020a7ebshr eax, 16
0020a7eexor eax, r13l
0020a7f1imul eax, eax, 0xffffffff85ebca6b
0020a7f7mov edx, eax
0020a7f9shr edx, 13
0020a7fcxor edx, eax
0020a7feimul edx, edx, 0xffffffffc2b2ae35
0020a804mov eax, edx
0020a806shr eax, 16
0020a809xor eax, edx
0020a80badd rax, rax
0020a80eand eax, 0x7ffffffe
0020a813add rax, 1
0020a817mov rdx, [rsp+2072]
0020a81fsub rdx, [0x28]
0020a828jne 0x20ab08
0020a82eadd rsp, 2088
0020a835pop rbx
0020a836pop rbp
0020a837pop r12
0020a839pop r13
0020a83bpop r14
0020a83dpop r15
0020a83fret
0020a840nop [rax]
0020a844mov rax, [rcx]
0020a847shr rax, 10
0020a84bje 0x20a7e2
0020a84dmov rsi, r14
0020a850sub rsi, rax
0020a853jmp 0x20a86d
0020a855nop [rax]
0020a85cadd r8, 8
0020a860
0020a860loc_20a860:
0020a860cmp r14, rsi
0020a863je 0x20a7e2
0020a869movsd_xmm x0, [r8]
0020a86emov edi, r13l
0020a871call caml_hash_mix_double
0020a876mov r13l, eax
0020a879sub r14, 1
0020a87djne 0x20a860
0020a87fjmp 0x20a7ec
0020a884nop [rax+rax]
0020a88cmovsd_xmm x0, [rsi]
0020a890mov edi, r13l
0020a893sub r14, 1
0020a897call caml_hash_mix_double
0020a89cmov r13l, eax
0020a89fjmp 0x20a7e2
0020a8a4nop [rax+rax]
0020a8acmov edi, r13l
0020a8afsub r14, 1
0020a8b3call caml_hash_mix_string
0020a8b8mov r13l, eax
0020a8bbjmp 0x20a7e2
0020a8c0nop [rax]
0020a8c4mov rax, [rcx]
0020a8c7shr rax, 10
0020a8cbimul eax, eax, 0x64f16a88
0020a8d1rol eax, 15
0020a8d4imul eax, eax, 0x1b873593
0020a8daxor eax, r13l
0020a8ddrol eax, 13
0020a8e0lea r13l, [rax+4*rax-0x19ab949c]
0020a8e8mov rax, [rcx]
0020a8ebshr rax, 10
0020a8efshl rax, 3
0020a8f3sub rsi, rax
0020a8f6jmp 0x20a783
0020a8fbnop
0020a8fcmov rcx, [rsi+8]
0020a900mov rax, rcx
0020a903mov rsi, rcx
0020a906sar rcx, 1
0020a909sar rax, 33
0020a90dsar rsi, 63
0020a911xor eax, esi
0020a913xor eax, ecx
0020a915jmp 0x20a7c1
0020a91anop
0020a91cmov r8, [rcx]
0020a91fmov rdi, [rsi+8]
0020a923mov rax, [rcx]
0020a926shl rdi, 8
0020a92ashr r8, 10
0020a92eand ah, 252
0020a931imul eax, eax, 0xffffffffcc9e2d51
0020a937rol eax, 15
0020a93aimul eax, eax, 0x1b873593
0020a940xor eax, r13l
0020a943rol eax, 13
0020a946shr rdi, 9
0020a94alea r13l, [rax+4*rax-0x19ab949c]
0020a952je 0x20a9c0
0020a954lea r9, [rsi+8*rdi]
0020a958mov rcx, rsi
0020a95bnop [rax+rax]
0020a966nop [rax+rax]
0020a971nop [rax+rax]
0020a97cmov r10, [rcx]
0020a97fadd rcx, 8
0020a983mov rax, r10
0020a986mov r11, r10
0020a989sar rax, 32
0020a98dsar r11, 63
0020a991xor eax, r11l
0020a994xor eax, r10l
0020a997imul eax, eax, 0xffffffffcc9e2d51
0020a99drol eax, 15
0020a9a0imul eax, eax, 0x1b873593
0020a9a6xor eax, r13l
0020a9a9rol eax, 13
0020a9aclea r13l, [rax+4*rax-0x19ab949c]
0020a9b4cmp r9, rcx
0020a9b7jne 0x20a980
0020a9b9sub r14, rdi
0020a9bccmp [rsp+8], r15
0020a9c1jle 0x20a7e2
0020a9c7cmp rdi, r8
0020a9cajae 0x20a7e2
0020a9d0lea rsi, [rsi+8*rdi]
0020a9d4mov rax, r15
0020a9d7jmp 0x20aa07
0020a9d9nop [rax+rax]
0020a9e4nop [rax+rax]
0020a9efnop [rax+rax]
0020a9fanop
0020a9fccmp [rsp+8], rax
0020aa01jle 0x20aa25
0020aa03mov rcx, [rsi]
0020aa06add rax, 1
0020aa0aadd rsi, 8
0020aa0emov [r12+8*rax-8], rcx
0020aa13mov rcx, rax
0020aa16sub rcx, r15
0020aa19add rcx, rdi
0020aa1ccmp rcx, r8
0020aa1fjb 0x20aa00
0020aa21mov r15, rax
0020aa24jmp 0x20a7e2
0020aa29nop [rax]
0020aa2cmov eax, 1000
0020aa31jmp 0x20aa5c
0020aa33nop [rax+rax]
0020aa3cmovzx edi, [rsi-8]
0020aa40
0020aa40loc_20aa40:
0020aa40lea rcx, [rsi-8]
0020aa44cmp dil, -6
0020aa48jne 0x20a787
0020aa4esub rax, 1
0020aa52je 0x20a7e2
0020aa58mov rsi, [rsi]
0020aa5btest sil, 1
0020aa5fje 0x20aa40
0020aa61mov rax, rsi
0020aa64mov rcx, rsi
0020aa67sar rax, 32
0020aa6bsar rcx, 63
0020aa6fxor eax, ecx
0020aa71xor eax, esi
0020aa73jmp 0x20a7c1
0020aa78nop [rax]
0020aa7cmov rax, [rcx]
0020aa7fmov rsi, [rcx]
0020aa82and ah, 252
0020aa85shr rsi, 10
0020aa89imul eax, eax, 0xffffffffcc9e2d51
0020aa8frol eax, 15
0020aa92imul eax, eax, 0x1b873593
0020aa98xor eax, r13l
0020aa9brol eax, 13
0020aa9elea r13l, [rax+4*rax-0x19ab949c]
0020aaa6cmp [rsp+8], r15
0020aaabjle 0x20a7e2
0020aab1test rsi, rsi
0020aab4je 0x20a7e2
0020aabalea rdi, [r12+8*r15]
0020aabexor eax, eax
0020aac0jmp 0x20aaeb
0020aac2nop [rax+rax]
0020aacdnop [rax+rax]
0020aad8nop [rax]
0020aadccmp [rsp+8], r15
0020aae1jle 0x20a7e2
0020aae7mov rcx, [r8]
0020aaeaadd r15, 1
0020aaeeadd r8, 8
0020aaf2mov [rdi+8*rax], rcx
0020aaf6add rax, 1
0020aafacmp rax, rsi
0020aafdjb 0x20aae0
0020aaffjmp 0x20a7e2
0020ab04call fn_f4590
0020ab09db 0x83
0020ab0adb 0x9a
0020ab0bout dx, al
0020ab0cdb 0xff
0020a700
Loading..