File hevea_f46f610a6b0078f4aa208dda361f21de574cc56ad64b32889301afc466d33979.elf
Function:
Loading..
00217ce0
00217ce0fn_217ce0:
00217ce0push r15
00217ce2push r14
00217ce4mov r14l, 1
00217ceapush r13
00217cecpush r12
00217ceepush rbp
00217cefpush rbx
00217cf0sub rsp, 120
00217cf4mov rax, [rsi+24]
00217cf8mov [rsp], rdi
00217cfcmov rbx, [0x28]
00217d05mov [rsp+104], rbx
00217d0amov rbx, rsi
00217d0dcmp [rsi+48], rax
00217d11jb 0x217d54
00217d13jmp 0x217d5e
00217d15
00217d15 0f 1f 00 ...
00217d18
00217d18loc_217d18:
00217d18mov rdx, [rax]
00217d1bsar rdx, 1
00217d1ecmp edx, 2
00217d21je 0x217eb0
00217d27
00217d27loc_217d27:
00217d27mov r15, [rbx+48]
00217d2blea rbp, [r15+2*r15]
00217d2fshl rbp, 4
00217d33add rbp, [rbx]
00217d36movzx ecx, [rbp+40]
00217d3atest cl, 64
00217d3djne 0x217d46
00217d3fcmp [rbp+32], 0
00217d44je 0x217da8
00217d46
00217d46loc_217d46:
00217d46lea rax, [r15+1]
00217d4amov [rbx+48], rax
00217d4e
00217d4eloc_217d4e:
00217d4ecmp rax, [rbx+24]
00217d52jae 0x217d5e
00217d54
00217d54loc_217d54:
00217d54mov rax, [rbx+56]
00217d58cmp rax, 1
00217d5cjne 0x217d18
00217d5e
00217d5eloc_217d5e:
00217d5exor ebp, ebp
00217d60
00217d60loc_217d60:
00217d60mov rdi, rbx
00217d63call fn_216f50
00217d68mov rdx, r14
00217d6bmov rax, 0xffffffff00000000
00217d75and r12, rax
00217d78or r12, rbp
00217d7bmov rax, r12
00217d7emov rcx, [rsp+104]
00217d83sub rcx, [0x28]
00217d8cjne 0x2180bb
00217d92add rsp, 120
00217d96pop rbx
00217d97pop rbp
00217d98pop r12
00217d9apop r13
00217d9cpop r14
00217d9epop r15
00217da0ret
00217da1
00217da1 0f 1f 80 00 00 00 00 .......
00217da8
00217da8loc_217da8:
00217da8movzx esi, [rbp+41]
00217dacshr sil, 1
00217dafand esi, 7
00217db2test sil, 1
00217db6jne 0x217f50
00217dbcmov rax, [rax]
00217dbfsar rax, 1
00217dc2test eax, eax
00217dc4jne 0x217fb0
00217dcamov r13, [rbp+8]
00217dcemov rax, [rip+0x5e213]
00217dd5mov [rsp+24], r13
00217ddamov r14, [rax]
00217ddelea rax, [rsp+32]
00217de3mov r8, [r14+160]
00217deamov [r14+160], rax
00217df1mov eax, 1
00217df6movq x0, rax
00217dfblea rax, [rsp+24]
00217e00punpcklqdq x0, x0
00217e04mov [rsp+32], r8
00217e09mov [rsp+56], rax
00217e0emovups [rsp+40], x0
00217e13test r13b, 1
00217e17jne 0x218028
00217e1d
00217e1dloc_217e1d:
00217e1dmov [r14+160], r8
00217e24xor esi, esi
00217e26mov edi, 4
00217e2bmov [rbp+8], r13
00217e2fcall caml_alloc_small
00217e34mov r8, rax
00217e37mov rax, [rbp+16]
00217e3blea rax, [rax+rax+1]
00217e40mov [r8], rax
00217e43mov rax, [rbp+24]
00217e47lea rax, [rax+rax+1]
00217e4cmov [r8+8], rax
00217e50movzx eax, [rbp+40]
00217e54and eax, 3
00217e57lea rax, [rax+rax+1]
00217e5cmov [r8+16], rax
00217e60mov rax, [rbp+8]
00217e64mov [r8+24], rax
00217e68mov rax, [rbx+56]
00217e6ctest [rbp+40], 8
00217e70jne 0x218010
00217e76mov rcx, [rax+40]
00217e7a
00217e7aloc_217e7a:
00217e7amov rdi, [rsp]
00217e7emov rdx, r15
00217e81mov r9l, 1
00217e87mov rsi, rbx
00217e8acall fn_2175a0
00217e8fmov ebp, eax
00217e91mov r12, rax
00217e94mov r14, rdx
00217e97test ebp, ebp
00217e99jne 0x217d60
00217e9f
00217e9floc_217e9f:
00217e9fmov rax, [rbx+48]
00217ea3jmp 0x217d4e
00217ea8
00217ea8 0f 1f 84 00 00 00 00 00 ........
00217eb0
00217eb0loc_217eb0:
00217eb0xor edx, edx
00217eb2xor eax, eax
00217eb4cmp [rbx+24], 0
00217eb9mov [rbx+56], 1
00217ec1jne 0x217eee
00217ec3jmp 0x217f30
00217ec5
00217ec5 66 66 2e 0f 1f 84 00 00 00 00 00 ff.........
00217ed0 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 ff...........D..
00217ee0
00217ee0loc_217ee0:
00217ee0add rax, 1
00217ee4add rdx, 48
00217ee8cmp rax, [rbx+24]
00217eecjae 0x217f30
00217eee
00217eeeloc_217eee:
00217eeemov rcx, [rbx]
00217ef1add rcx, rdx
00217ef4cmp [rcx+32], 0
00217ef9jne 0x217ee0
00217efbmovzx esi, [rcx+40]
00217effmovdqa x1, [rip+0x12249]
00217f07and esi, -69
00217f0amovups [rcx], x1
00217f0dor esi, 64
00217f10mov [rcx+40], sil
00217f14cmp rax, [rbx+40]
00217f18jae 0x217ee0
00217f1amov [rbx+40], rax
00217f1eadd rdx, 48
00217f22add rax, 1
00217f26cmp rax, [rbx+24]
00217f2ajb 0x217eee
00217f2cnop [rax]
00217f30
00217f30loc_217f30:
00217f30mov rdi, rbx
00217f33call fn_216f50
00217f38mov rax, [rbx+56]
00217f3ccmp rax, 1
00217f40jne 0x217d27
00217f46jmp 0x217d5e
00217f4b
00217f4b 0f 1f 44 00 00 ..D..
00217f50
00217f50loc_217f50:
00217f50test cl, 16
00217f53je 0x217fe8
00217f59test sil, 2
00217f5dje 0x218019
00217f63and ecx, 32
00217f66je 0x217d46
00217f6ccmp sil, 3
00217f70ja 0x217d46
00217f76
00217f76loc_217f76:
00217f76mov rcx, [rax+64]
00217f7a
00217f7aloc_217f7a:
00217f7amov r9l, 3
00217f80
00217f80loc_217f80:
00217f80mov r8, [rbp+8]
00217f84mov rdi, [rsp]
00217f88mov rdx, r15
00217f8bmov rsi, rbx
00217f8ecall fn_2175a0
00217f93mov ebp, eax
00217f95mov r12, rax
00217f98mov r14, rdx
00217f9btest ebp, ebp
00217f9dje 0x217e9f
00217fa3jmp 0x217d60
00217fa8
00217fa8 0f 1f 84 00 00 00 00 00 ........
00217fb0
00217fb0loc_217fb0:
00217fb0mov eax, 1
00217fb5and ecx, -69
00217fb8movq x0, rax
00217fbdor ecx, 64
00217fc0punpcklqdq x0, x0
00217fc4mov [rbp+40], cl
00217fc7movups [rbp], x0
00217fcbmov rax, [rbx+48]
00217fcfcmp r15, [rbx+40]
00217fd3jae 0x217d4e
00217fd9mov [rbx+40], r15
00217fddjmp 0x217d4e
00217fe2
00217fe2 66 0f 1f 44 00 00 f..D..
00217fe8
00217fe8loc_217fe8:
00217fe8test cl, 32
00217febje 0x217d46
00217ff1cmp sil, 3
00217ff5ja 0x217d46
00217ffband ecx, 8
00217ffeje 0x217f76
00218004mov rcx, [rax+56]
00218008jmp 0x217f7a
0021800d
0021800d 0f 1f 00 ...
00218010
00218010loc_218010:
00218010mov rcx, [rax+32]
00218014jmp 0x217e7a
00218019
00218019loc_218019:
00218019mov rcx, [rax+48]
0021801dmov r9l, 2
00218023jmp 0x217f80
00218028
00218028loc_218028:
00218028mov rdi, [r13-1]
0021802cxor esi, esi
0021802emov [rsp+8], r8
00218033lea r12, [r13-1]
00218037call caml_alloc
0021803cmov r8, [rsp+8]
00218041mov [rsp+24], rax
00218046cmp [r13-1], 0
0021804bje 0x21809f
0021804dmov rcx, [r12+8]
00218052or rcx, 1
00218056mov [rax], rcx
00218059cmp [r13-1], 1
0021805emov eax, 1
00218063jbe 0x21809f
00218065nop [rax+rax]
00218070nop [rax+rax]
0021807bnop [rax+rax]
00218080
00218080loc_218080:
00218080mov rcx, [rsp+24]
00218085lea rsi, [rcx+8*rax]
00218089mov rcx, [r12+8*rax+8]
0021808eadd rax, 1
00218092or rcx, 1
00218096mov [rsi], rcx
00218099cmp rax, [r12]
0021809djb 0x218080
0021809f
0021809floc_21809f:
0021809fmov rdi, r12
002180a2mov [rsp+8], r8
002180a7call caml_stat_free
002180acmov r13, [rsp+24]
002180b1mov r8, [rsp+8]
002180b6jmp 0x217e1d
002180bb
002180bbloc_2180bb:
002180bbcall fn_f4590
00217ce0
00217ce0fn_217ce0:
00217ce0push r15
00217ce2push r14
00217ce4mov r14l, 1
00217ceapush r13
00217cecpush r12
00217ceepush rbp
00217cefpush rbx
00217cf0sub rsp, 120
00217cf4mov rax, [rsi+24]
00217cf8mov [rsp], rdi
00217cfcmov rbx, [0x28]
00217d05mov [rsp+104], rbx
00217d0amov rbx, rsi
00217d0dcmp [rsi+48], rax
00217d11jb 0x217d54
00217d13jmp 0x217d5e
00217d15
00217d15 0f 1f 00 ...
00217d18
00217d18loc_217d18:
00217d18mov rdx, [rax]
00217d1bsar rdx, 1
00217d1ecmp edx, 2
00217d21je 0x217eb0
00217d27
00217d27loc_217d27:
00217d27mov r15, [rbx+48]
00217d2blea rbp, [r15+2*r15]
00217d2fshl rbp, 4
00217d33add rbp, [rbx]
00217d36movzx ecx, [rbp+40]
00217d3atest cl, 64
00217d3djne 0x217d46
00217d3fcmp [rbp+32], 0
00217d44je 0x217da8
00217d46
00217d46loc_217d46:
00217d46lea rax, [r15+1]
00217d4amov [rbx+48], rax
00217d4e
00217d4eloc_217d4e:
00217d4ecmp rax, [rbx+24]
00217d52jae 0x217d5e
00217d54
00217d54loc_217d54:
00217d54mov rax, [rbx+56]
00217d58cmp rax, 1
00217d5cjne 0x217d18
00217d5e
00217d5eloc_217d5e:
00217d5exor ebp, ebp
00217d60
00217d60loc_217d60:
00217d60mov rdi, rbx
00217d63call fn_216f50
00217d68mov rdx, r14
00217d6bmov rax, 0xffffffff00000000
00217d75and r12, rax
00217d78or r12, rbp
00217d7bmov rax, r12
00217d7emov rcx, [rsp+104]
00217d83sub rcx, [0x28]
00217d8cjne 0x2180bb
00217d92add rsp, 120
00217d96pop rbx
00217d97pop rbp
00217d98pop r12
00217d9apop r13
00217d9cpop r14
00217d9epop r15
00217da0ret
00217da1
00217da1 0f 1f 80 00 00 00 00 .......
00217da8
00217da8loc_217da8:
00217da8movzx esi, [rbp+41]
00217dacshr sil, 1
00217dafand esi, 7
00217db2test sil, 1
00217db6jne 0x217f50
00217dbcmov rax, [rax]
00217dbfsar rax, 1
00217dc2test eax, eax
00217dc4jne 0x217fb0
00217dcamov r13, [rbp+8]
00217dcemov rax, [rip+0x5e213]
00217dd5mov [rsp+24], r13
00217ddamov r14, [rax]
00217ddelea rax, [rsp+32]
00217de3mov r8, [r14+160]
00217deamov [r14+160], rax
00217df1mov eax, 1
00217df6movq x0, rax
00217dfblea rax, [rsp+24]
00217e00punpcklqdq x0, x0
00217e04mov [rsp+32], r8
00217e09mov [rsp+56], rax
00217e0emovups [rsp+40], x0
00217e13test r13b, 1
00217e17jne 0x218028
00217e1d
00217e1dloc_217e1d:
00217e1dmov [r14+160], r8
00217e24xor esi, esi
00217e26mov edi, 4
00217e2bmov [rbp+8], r13
00217e2fcall caml_alloc_small
00217e34mov r8, rax
00217e37mov rax, [rbp+16]
00217e3blea rax, [rax+rax+1]
00217e40mov [r8], rax
00217e43mov rax, [rbp+24]
00217e47lea rax, [rax+rax+1]
00217e4cmov [r8+8], rax
00217e50movzx eax, [rbp+40]
00217e54and eax, 3
00217e57lea rax, [rax+rax+1]
00217e5cmov [r8+16], rax
00217e60mov rax, [rbp+8]
00217e64mov [r8+24], rax
00217e68mov rax, [rbx+56]
00217e6ctest [rbp+40], 8
00217e70jne 0x218010
00217e76mov rcx, [rax+40]
00217e7a
00217e7aloc_217e7a:
00217e7amov rdi, [rsp]
00217e7emov rdx, r15
00217e81mov r9l, 1
00217e87mov rsi, rbx
00217e8acall fn_2175a0
00217e8fmov ebp, eax
00217e91mov r12, rax
00217e94mov r14, rdx
00217e97test ebp, ebp
00217e99jne 0x217d60
00217e9f
00217e9floc_217e9f:
00217e9fmov rax, [rbx+48]
00217ea3jmp 0x217d4e
00217ea8
00217ea8 0f 1f 84 00 00 00 00 00 ........
00217eb0
00217eb0loc_217eb0:
00217eb0xor edx, edx
00217eb2xor eax, eax
00217eb4cmp [rbx+24], 0
00217eb9mov [rbx+56], 1
00217ec1jne 0x217eee
00217ec3jmp 0x217f30
00217ec5
00217ec5 66 66 2e 0f 1f 84 00 00 00 00 00 ff.........
00217ed0 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 ff...........D..
00217ee0
00217ee0loc_217ee0:
00217ee0add rax, 1
00217ee4add rdx, 48
00217ee8cmp rax, [rbx+24]
00217eecjae 0x217f30
00217eee
00217eeeloc_217eee:
00217eeemov rcx, [rbx]
00217ef1add rcx, rdx
00217ef4cmp [rcx+32], 0
00217ef9jne 0x217ee0
00217efbmovzx esi, [rcx+40]
00217effmovdqa x1, [rip+0x12249]
00217f07and esi, -69
00217f0amovups [rcx], x1
00217f0dor esi, 64
00217f10mov [rcx+40], sil
00217f14cmp rax, [rbx+40]
00217f18jae 0x217ee0
00217f1amov [rbx+40], rax
00217f1eadd rdx, 48
00217f22add rax, 1
00217f26cmp rax, [rbx+24]
00217f2ajb 0x217eee
00217f2cnop [rax]
00217f30
00217f30loc_217f30:
00217f30mov rdi, rbx
00217f33call fn_216f50
00217f38mov rax, [rbx+56]
00217f3ccmp rax, 1
00217f40jne 0x217d27
00217f46jmp 0x217d5e
00217f4b
00217f4b 0f 1f 44 00 00 ..D..
00217f50
00217f50loc_217f50:
00217f50test cl, 16
00217f53je 0x217fe8
00217f59test sil, 2
00217f5dje 0x218019
00217f63and ecx, 32
00217f66je 0x217d46
00217f6ccmp sil, 3
00217f70ja 0x217d46
00217f76
00217f76loc_217f76:
00217f76mov rcx, [rax+64]
00217f7a
00217f7aloc_217f7a:
00217f7amov r9l, 3
00217f80
00217f80loc_217f80:
00217f80mov r8, [rbp+8]
00217f84mov rdi, [rsp]
00217f88mov rdx, r15
00217f8bmov rsi, rbx
00217f8ecall fn_2175a0
00217f93mov ebp, eax
00217f95mov r12, rax
00217f98mov r14, rdx
00217f9btest ebp, ebp
00217f9dje 0x217e9f
00217fa3jmp 0x217d60
00217fa8
00217fa8 0f 1f 84 00 00 00 00 00 ........
00217fb0
00217fb0loc_217fb0:
00217fb0mov eax, 1
00217fb5and ecx, -69
00217fb8movq x0, rax
00217fbdor ecx, 64
00217fc0punpcklqdq x0, x0
00217fc4mov [rbp+40], cl
00217fc7movups [rbp], x0
00217fcbmov rax, [rbx+48]
00217fcfcmp r15, [rbx+40]
00217fd3jae 0x217d4e
00217fd9mov [rbx+40], r15
00217fddjmp 0x217d4e
00217fe2
00217fe2 66 0f 1f 44 00 00 f..D..
00217fe8
00217fe8loc_217fe8:
00217fe8test cl, 32
00217febje 0x217d46
00217ff1cmp sil, 3
00217ff5ja 0x217d46
00217ffband ecx, 8
00217ffeje 0x217f76
00218004mov rcx, [rax+56]
00218008jmp 0x217f7a
0021800d
0021800d 0f 1f 00 ...
00218010
00218010loc_218010:
00218010mov rcx, [rax+32]
00218014jmp 0x217e7a
00218019
00218019loc_218019:
00218019mov rcx, [rax+48]
0021801dmov r9l, 2
00218023jmp 0x217f80
00218028
00218028loc_218028:
00218028mov rdi, [r13-1]
0021802cxor esi, esi
0021802emov [rsp+8], r8
00218033lea r12, [r13-1]
00218037call caml_alloc
0021803cmov r8, [rsp+8]
00218041mov [rsp+24], rax
00218046cmp [r13-1], 0
0021804bje 0x21809f
0021804dmov rcx, [r12+8]
00218052or rcx, 1
00218056mov [rax], rcx
00218059cmp [r13-1], 1
0021805emov eax, 1
00218063jbe 0x21809f
00218065nop [rax+rax]
00218070nop [rax+rax]
0021807bnop [rax+rax]
00218080
00218080loc_218080:
00218080mov rcx, [rsp+24]
00218085lea rsi, [rcx+8*rax]
00218089mov rcx, [r12+8*rax+8]
0021808eadd rax, 1
00218092or rcx, 1
00218096mov [rsi], rcx
00218099cmp rax, [r12]
0021809djb 0x218080
0021809f
0021809floc_21809f:
0021809fmov rdi, r12
002180a2mov [rsp+8], r8
002180a7call caml_stat_free
002180acmov r13, [rsp+24]
002180b1mov r8, [rsp+8]
002180b6jmp 0x217e1d
002180bb
002180bbloc_2180bb:
002180bbcall fn_f4590
00217ce0
002180c0
002180c0caml_memprof_scan_roots:
002180c0push r14
002180c2push r13
002180c4mov r13, rdi
002180c7push r12
002180c9mov r12, rdx
002180ccpush rbp
002180cdpush rbx
002180cemov ebx, esi
002180d0sub rsp, 48
002180d4mov r14, [rcx+464]
002180dbmov rbp, [0x28]
002180e4mov [rsp+40], rbp
002180e9mov ebp, r8l
002180ecmov rax, [rip+0x160aa9]
002180f3test rax, rax
002180f6je 0x218104
002180f8mov rdi, r14
002180fbcall fn_2170f0
00218100mov [rsp+8], ebx
00218104
00218104loc_218104:
00218104and ebx, 1
00218107mov rcx, rsp
0021810amov rdi, r14
0021810dmov esi, ebx
0021810flea r8, [rip-4858]
00218116lea rdx, [rip-4401]
0021811dmov [rsp], r13
00218121mov [rsp+16], r12
00218126mov [rsp+24], bpl
0021812bcall fn_217500
00218130mov rax, [rsp+40]
00218135sub rax, [0x28]
0021813ejne 0x218151
00218140add rsp, 48
00218144pop rbx
00218145pop rbp
00218146pop r12
00218148pop r13
0021814apop r14
0021814cret
0021814dcall fn_f4590
00218152db 0x3a
00218153db 0xc4
00218154in eax, dx
00218155db 0xff
002180c0
002180c0caml_memprof_scan_roots:
002180c0push r14
002180c2push r13
002180c4mov r13, rdi
002180c7push r12
002180c9mov r12, rdx
002180ccpush rbp
002180cdpush rbx
002180cemov ebx, esi
002180d0sub rsp, 48
002180d4mov r14, [rcx+464]
002180dbmov rbp, [0x28]
002180e4mov [rsp+40], rbp
002180e9mov ebp, r8l
002180ecmov rax, [rip+0x160aa9]
002180f3test rax, rax
002180f6je 0x218104
002180f8mov rdi, r14
002180fbcall fn_2170f0
00218100mov [rsp+8], ebx
00218104
00218104loc_218104:
00218104and ebx, 1
00218107mov rcx, rsp
0021810amov rdi, r14
0021810dmov esi, ebx
0021810flea r8, [rip-4858]
00218116lea rdx, [rip-4401]
0021811dmov [rsp], r13
00218121mov [rsp+16], r12
00218126mov [rsp+24], bpl
0021812bcall fn_217500
00218130mov rax, [rsp+40]
00218135sub rax, [0x28]
0021813ejne 0x218151
00218140add rsp, 48
00218144pop rbx
00218145pop rbp
00218146pop r12
00218148pop r13
0021814apop r14
0021814cret
0021814dcall fn_f4590
00218152db 0x3a
00218153db 0xc4
00218154in eax, dx
00218155db 0xff
002180c0
00218156
00218156 // align 0x10
00218156 // align 0x10
00218160
00218160caml_memprof_after_minor_gc:
00218160push rbx
00218161mov rbx, [rdi+464]
00218168mov rax, [rip+0x160a2d]
0021816ftest rax, rax
00218172je 0x218180
00218174mov rdi, rbx
00218177call fn_2170f0
0021817cmov rdi, rbx
0021817flea r8, [rip-4938]
00218186xor ecx, ecx
00218188mov esi, 1
0021818dlea rdx, [rip-4440]
00218194call fn_217500
00218199mov rdi, rbx
0021819ccall fn_217760
002181a1mov rdi, rbx
002181a4pop rbx
002181a5jmp 0x2170b0
002181aadb 0x02
002181about dx, eax
002181acdb 0xff
002181addb 0xff
00218160
00218160caml_memprof_after_minor_gc:
00218160push rbx
00218161mov rbx, [rdi+464]
00218168mov rax, [rip+0x160a2d]
0021816ftest rax, rax
00218172je 0x218180
00218174mov rdi, rbx
00218177call fn_2170f0
0021817cmov rdi, rbx
0021817flea r8, [rip-4938]
00218186xor ecx, ecx
00218188mov esi, 1
0021818dlea rdx, [rip-4440]
00218194call fn_217500
00218199mov rdi, rbx
0021819ccall fn_217760
002181a1mov rdi, rbx
002181a4pop rbx
002181a5jmp 0x2170b0
002181aadb 0x02
002181about dx, eax
002181acdb 0xff
002181addb 0xff
00218160
002181ae
002181ae // align 0x10
002181ae // align 0x10
002181b0
002181b0caml_memprof_after_major_gc:
002181b0push rbx
002181b1mov rbx, [rdi+464]
002181b8mov rax, [rip+0x1609dd]
002181bftest rax, rax
002181c2je 0x2181d0
002181c4mov rdi, rbx
002181c7call fn_2170f0
002181ccmov rdi, rbx
002181cfxor r8l, r8l
002181d2xor ecx, ecx
002181d4xor esi, esi
002181d6lea rdx, [rip-5009]
002181ddcall fn_217500
002181e2mov rdi, rbx
002181e5call fn_217760
002181eamov rdi, rbx
002181edpop rbx
002181eejmp 0x2170b0
002181f3db 0xb9
002181f4out dx, al
002181f5db 0xff
002181f6db 0xff
002181b0
002181b0caml_memprof_after_major_gc:
002181b0push rbx
002181b1mov rbx, [rdi+464]
002181b8mov rax, [rip+0x1609dd]
002181bftest rax, rax
002181c2je 0x2181d0
002181c4mov rdi, rbx
002181c7call fn_2170f0
002181ccmov rdi, rbx
002181cfxor r8l, r8l
002181d2xor ecx, ecx
002181d4xor esi, esi
002181d6lea rdx, [rip-5009]
002181ddcall fn_217500
002181e2mov rdi, rbx
002181e5call fn_217760
002181eamov rdi, rbx
002181edpop rbx
002181eejmp 0x2170b0
002181f3db 0xb9
002181f4out dx, al
002181f5db 0xff
002181f6db 0xff
002181b0
002181f7
002181f7 // align 0x10
002181f7 // align 0x10
00218200
00218200caml_memprof_new_domain:
00218200push r12
00218202mov r12, rdi
00218205mov edi, 1672
0021820apush rbp
0021820bmov rbp, rsi
0021820epush rbx
0021820fcall caml_stat_alloc
00218214test rax, rax
00218217je 0x2183ec
0021821dmovdqa x0, [rip+0x11f47]
00218225mov [rax], rbp
00218228mov rbx, rax
0021822bmov edi, 104
00218230mov [rax+8], 0
00218238movups [rax+16], x0
0021823cpxor x0, x0
00218240movups [rax+32], x0
00218244movups [rax+48], x0
00218248mov [rax+64], 1
00218250mov [rax+72], 0
00218258xor eax, eax
0021825amov [rbx+80], ax
0021825emov [rbx+104], 0
00218266mov [rbx+112], 0
0021826emovups [rbx+88], x0
00218272call caml_stat_alloc
00218277pxor x0, x0
0021827bmovq x1, rax
00218280test rax, rax
00218283punpcklqdq x1, x1
00218287je 0x2183e4
0021828dmov [rax], 0
00218290movdqa x2, [rip+0x11ec4]
00218298mov [rax+8], 0
002182a0mov [rax+16], 0
002182a8mov rdx, [rbx+64]
002182acmov [rax+24], 0
002182b4mov [rax+80], rdx
002182b8mov [rax+88], rbx
002182bcmovups [rax+32], x2
002182c0movups [rax+48], x0
002182c4movups [rax+64], x0
002182c8mov rdx, [rbx+88]
002182ccmov [rax+96], rdx
002182d0movups [rbx+88], x1
002182d4mov [rbp+464], rbx
002182dbtest r12, r12
002182deje 0x2182fc
002182e0mov rax, [r12+464]
002182e8mov rdx, [rbx+96]
002182ecmov rax, [rax+64]
002182f0mov [rbx+64], rax
002182f4mov [rdx+80], rax
002182f8movsxd rcx, [rbp+288]
002182fflea rsi, [rbx+120]
00218303mov r9, 0x1bbcdcbfa53e0a80
0021830dmov r11, 0x9e3779b97f4a7c15
00218317mov r8, 0xbf58476d1ce4e5b9
00218321mov rdi, 0x94d049bb133111eb
0021832bmov r10, 0x3c6ef372fe94f82a
00218335add r9, rcx
00218338nop [rax]
0021833clea rdx, [rcx+r11]
00218340
00218340loc_218340:
00218340add rcx, r10
00218343add rsi, 4
00218347mov rax, rdx
0021834ashr rax, 30
0021834exor rax, rdx
00218351imul rax, r8
00218355mov rdx, rax
00218358shr rdx, 27
0021835cxor rdx, rax
0021835fimul rdx, rdi
00218363mov rax, rdx
00218366shr rax, 31
0021836axor rax, rdx
0021836dmov [rsi-4], eax
00218370shr rax, 32
00218374mov [rsi+252], eax
0021837amov rax, rcx
0021837dshr rax, 30
00218381xor rax, rcx
00218384imul rax, r8
00218388mov rdx, rax
0021838bshr rdx, 27
0021838fxor rdx, rax
00218392imul rdx, rdi
00218396mov rax, rdx
00218399shr rax, 31
0021839dxor rax, rdx
002183a0mov [rsi+508], eax
002183a6shr rax, 32
002183aamov [rsi+764], eax
002183b0cmp rcx, r9
002183b3jne 0x218340
002183b5mov [rbx+1656], 64
002183bfmov rax, [rbx+64]
002183c3cmp rax, 1
002183c7je 0x2183df
002183c9mov rax, [rax+16]
002183cdmovsd_xmm x0, [rip+0x1247f]
002183d5ucomisd x0, [rax]
002183d9jbe 0x2183fc
002183dbpop rbx
002183dcpop rbp
002183ddpop r12
002183df
002183dfloc_2183df:
002183dfret
002183e0mov rdi, rbx
002183e3call fn_217bc0
002183e8mov [rbp+464], 0
002183f3pop rbx
002183f4pop rbp
002183f5pop r12
002183f7ret
002183f8mov rdi, rbx
002183fbcall fn_216ba0
00218400mov eax, [rbx+1656]
00218406lea edx, [rax+1]
00218409mov [rbx+1656], edx
0021840fmov rax, [rbx+8*rax+1144]
00218417sub rax, 1
0021841bmov [rbx+1664], rax
00218422pop rbx
00218423pop rbp
00218424pop r12
00218426ret
00218427db 0x5d
00218428pop r12
0021842aret
00218200
00218200caml_memprof_new_domain:
00218200push r12
00218202mov r12, rdi
00218205mov edi, 1672
0021820apush rbp
0021820bmov rbp, rsi
0021820epush rbx
0021820fcall caml_stat_alloc
00218214test rax, rax
00218217je 0x2183ec
0021821dmovdqa x0, [rip+0x11f47]
00218225mov [rax], rbp
00218228mov rbx, rax
0021822bmov edi, 104
00218230mov [rax+8], 0
00218238movups [rax+16], x0
0021823cpxor x0, x0
00218240movups [rax+32], x0
00218244movups [rax+48], x0
00218248mov [rax+64], 1
00218250mov [rax+72], 0
00218258xor eax, eax
0021825amov [rbx+80], ax
0021825emov [rbx+104], 0
00218266mov [rbx+112], 0
0021826emovups [rbx+88], x0
00218272call caml_stat_alloc
00218277pxor x0, x0
0021827bmovq x1, rax
00218280test rax, rax
00218283punpcklqdq x1, x1
00218287je 0x2183e4
0021828dmov [rax], 0
00218290movdqa x2, [rip+0x11ec4]
00218298mov [rax+8], 0
002182a0mov [rax+16], 0
002182a8mov rdx, [rbx+64]
002182acmov [rax+24], 0
002182b4mov [rax+80], rdx
002182b8mov [rax+88], rbx
002182bcmovups [rax+32], x2
002182c0movups [rax+48], x0
002182c4movups [rax+64], x0
002182c8mov rdx, [rbx+88]
002182ccmov [rax+96], rdx
002182d0movups [rbx+88], x1
002182d4mov [rbp+464], rbx
002182dbtest r12, r12
002182deje 0x2182fc
002182e0mov rax, [r12+464]
002182e8mov rdx, [rbx+96]
002182ecmov rax, [rax+64]
002182f0mov [rbx+64], rax
002182f4mov [rdx+80], rax
002182f8movsxd rcx, [rbp+288]
002182fflea rsi, [rbx+120]
00218303mov r9, 0x1bbcdcbfa53e0a80
0021830dmov r11, 0x9e3779b97f4a7c15
00218317mov r8, 0xbf58476d1ce4e5b9
00218321mov rdi, 0x94d049bb133111eb
0021832bmov r10, 0x3c6ef372fe94f82a
00218335add r9, rcx
00218338nop [rax]
0021833clea rdx, [rcx+r11]
00218340
00218340loc_218340:
00218340add rcx, r10
00218343add rsi, 4
00218347mov rax, rdx
0021834ashr rax, 30
0021834exor rax, rdx
00218351imul rax, r8
00218355mov rdx, rax
00218358shr rdx, 27
0021835cxor rdx, rax
0021835fimul rdx, rdi
00218363mov rax, rdx
00218366shr rax, 31
0021836axor rax, rdx
0021836dmov [rsi-4], eax
00218370shr rax, 32
00218374mov [rsi+252], eax
0021837amov rax, rcx
0021837dshr rax, 30
00218381xor rax, rcx
00218384imul rax, r8
00218388mov rdx, rax
0021838bshr rdx, 27
0021838fxor rdx, rax
00218392imul rdx, rdi
00218396mov rax, rdx
00218399shr rax, 31
0021839dxor rax, rdx
002183a0mov [rsi+508], eax
002183a6shr rax, 32
002183aamov [rsi+764], eax
002183b0cmp rcx, r9
002183b3jne 0x218340
002183b5mov [rbx+1656], 64
002183bfmov rax, [rbx+64]
002183c3cmp rax, 1
002183c7je 0x2183df
002183c9mov rax, [rax+16]
002183cdmovsd_xmm x0, [rip+0x1247f]
002183d5ucomisd x0, [rax]
002183d9jbe 0x2183fc
002183dbpop rbx
002183dcpop rbp
002183ddpop r12
002183df
002183dfloc_2183df:
002183dfret
002183e0mov rdi, rbx
002183e3call fn_217bc0
002183e8mov [rbp+464], 0
002183f3pop rbx
002183f4pop rbp
002183f5pop r12
002183f7ret
002183f8mov rdi, rbx
002183fbcall fn_216ba0
00218400mov eax, [rbx+1656]
00218406lea edx, [rax+1]
00218409mov [rbx+1656], edx
0021840fmov rax, [rbx+8*rax+1144]
00218417sub rax, 1
0021841bmov [rbx+1664], rax
00218422pop rbx
00218423pop rbp
00218424pop r12
00218426ret
00218427db 0x5d
00218428pop r12
0021842aret
00218200
0021842b
0021842b // align 0x10
0021842b // align 0x10
00218430
00218430caml_memprof_delete_domain:
00218430push rbx
00218431mov rbx, rdi
00218434mov rdi, [rdi+464]
0021843bcall fn_217bc0
00218440mov [rbx+464], 0
0021844bpop rbx
0021844cret
0021844ddb 0x00
0021844eadd [rbx-61], bl
00218430
00218430caml_memprof_delete_domain:
00218430push rbx
00218431mov rbx, rdi
00218434mov rdi, [rdi+464]
0021843bcall fn_217bc0
00218440mov [rbx+464], 0
0021844bpop rbx
0021844cret
0021844ddb 0x00
0021844eadd [rbx-61], bl
00218430
00218451
00218451 // align 0x10
00218451 // align 0x10
00218460
00218460caml_memprof_set_trigger:
00218460push r12
00218462push rbp
00218463push rbx
00218464mov rbp, [rdi+464]
0021846bmov rbx, rdi
0021846emov r12, [rdi+16]
00218472mov rdi, [rbp+96]
00218476test rdi, rdi
00218479je 0x218484
0021847bcmp [rdi], 0
0021847eje 0x218490
00218480mov [rbx+472], r12
00218487pop rbx
00218488pop rbp
00218489pop r12
0021848bret
0021848cadd rdi, 24
00218490
00218490loc_218490:
00218490call fn_2173a0
00218495cmp rax, 1
00218499je 0x218484
0021849bmov rdx, [rax]
0021849esar rdx, 1
002184a1test edx, edx
002184a3jne 0x218484
002184a5mov rax, [rax+16]
002184a9movsd_xmm x0, [rip+0x123a3]
002184b1ucomisd x0, [rax]
002184b5ja 0x218484
002184b7mov eax, [rbp+1656]
002184bdcmp eax, 64
002184c0je 0x218508
002184c2lea edx, [rax+1]
002184c5mov [rbp+1656], edx
002184cbmov rdx, [rbx+8]
002184cfmov rcx, [rbp+8*rax+1144]
002184d7mov rax, rdx
002184dasub rax, [rbx+16]
002184desar rax, 3
002184e2cmp rcx, rax
002184e5jae 0x218484
002184e7mov eax, 1
002184ecsub rax, rcx
002184eflea r12, [rdx+8*rax]
002184f3mov [rbx+472], r12
002184fapop rbx
002184fbpop rbp
002184fcpop r12
002184feret
002184ffdb 0x5d
00218500pop r12
00218502ret
00218503
00218503 0f 1f 44 00 00 ..D..
00218508
00218508loc_218508:
00218508mov rdi, rbp
0021850bcall fn_216ba0
00218510mov eax, [rbp+1656]
00218516jmp 0x2184c6
00218460
00218460caml_memprof_set_trigger:
00218460push r12
00218462push rbp
00218463push rbx
00218464mov rbp, [rdi+464]
0021846bmov rbx, rdi
0021846emov r12, [rdi+16]
00218472mov rdi, [rbp+96]
00218476test rdi, rdi
00218479je 0x218484
0021847bcmp [rdi], 0
0021847eje 0x218490
00218480mov [rbx+472], r12
00218487pop rbx
00218488pop rbp
00218489pop r12
0021848bret
0021848cadd rdi, 24
00218490
00218490loc_218490:
00218490call fn_2173a0
00218495cmp rax, 1
00218499je 0x218484
0021849bmov rdx, [rax]
0021849esar rdx, 1
002184a1test edx, edx
002184a3jne 0x218484
002184a5mov rax, [rax+16]
002184a9movsd_xmm x0, [rip+0x123a3]
002184b1ucomisd x0, [rax]
002184b5ja 0x218484
002184b7mov eax, [rbp+1656]
002184bdcmp eax, 64
002184c0je 0x218508
002184c2lea edx, [rax+1]
002184c5mov [rbp+1656], edx
002184cbmov rdx, [rbx+8]
002184cfmov rcx, [rbp+8*rax+1144]
002184d7mov rax, rdx
002184dasub rax, [rbx+16]
002184desar rax, 3
002184e2cmp rcx, rax
002184e5jae 0x218484
002184e7mov eax, 1
002184ecsub rax, rcx
002184eflea r12, [rdx+8*rax]
002184f3mov [rbx+472], r12
002184fapop rbx
002184fbpop rbp
002184fcpop r12
002184feret
002184ffdb 0x5d
00218500pop r12
00218502ret
00218503
00218503 0f 1f 44 00 00 ..D..
00218508
00218508loc_218508:
00218508mov rdi, rbp
0021850bcall fn_216ba0
00218510mov eax, [rbp+1656]
00218516jmp 0x2184c6
00218460
00218518
00218518 // align 0x10
00218518 // align 0x10
00218520
00218520caml_memprof_update_suspended:
00218520mov rax, [rip+0x5dabd]
00218527push rbx
00218528mov rax, [rax]
0021852cmov rbx, [rax+464]
00218533mov rax, [rbx+96]
00218537mov [rax], dil
0021853atest dil, dil
0021853dje 0x218558
0021853fmov rdi, [rbx]
00218542call caml_memprof_set_trigger
00218547mov rdi, [rbx]
0021854apop rbx
0021854bjmp 0x201700
00218550db 0xac
00218551xchg eax, ecx
00218552db 0xfe
00218553db 0xff
00218554
00218554 0f 1f 40 00 ..@.
00218558
00218558loc_218558:
00218558mov rdi, rbx
0021855bcall fn_2170b0
00218560jmp 0x218543
00218520
00218520caml_memprof_update_suspended:
00218520mov rax, [rip+0x5dabd]
00218527push rbx
00218528mov rax, [rax]
0021852cmov rbx, [rax+464]
00218533mov rax, [rbx+96]
00218537mov [rax], dil
0021853atest dil, dil
0021853dje 0x218558
0021853fmov rdi, [rbx]
00218542call caml_memprof_set_trigger
00218547mov rdi, [rbx]
0021854apop rbx
0021854bjmp 0x201700
00218550db 0xac
00218551xchg eax, ecx
00218552db 0xfe
00218553db 0xff
00218554
00218554 0f 1f 40 00 ..@.
00218558
00218558loc_218558:
00218558mov rdi, rbx
0021855bcall fn_2170b0
00218560jmp 0x218543
00218520
00218562
00218562 // align 0x10
00218562 // align 0x10
00218570
00218570caml_memprof_run_callbacks_res:
00218570push r15
00218572push r14
00218574push r13
00218576push r12
00218578push rbp
00218579push rbx
0021857asub rsp, 24
0021857emov rax, [rip+0x5da5f]
00218585mov rax, [rax]
00218589mov rbx, [rax+464]
00218590mov r15, [rbx+96]
00218594cmp [r15], 0
00218598jne 0x2185a4
0021859acmp [rbx+81], 0
0021859ejne 0x2185e0
002185a0mov [rsp], 1
002185a8xor ebp, ebp
002185aamov r8, r12
002185admov r13, [rsp]
002185b1add rsp, 24
002185b5mov rax, 0xffffffff00000000
002185bfand r8, rax
002185c2pop rbx
002185c3or r8, rbp
002185c6mov rdx, r13
002185c9pop rbp
002185capop r12
002185ccmov rax, r8
002185cfpop r13
002185d1pop r14
002185d3pop r15
002185d5ret
002185d6db 0x5e
002185d7pop r15
002185d9ret
002185da
002185da 66 0f 1f 44 00 00 f..D..
002185e0
002185e0loc_2185e0:
002185e0mov rax, [rip+0x1605b9]
002185e7test rax, rax
002185eaje 0x2185f4
002185ecmov rdi, rbx
002185efcall fn_2170f0
002185f4
002185f4loc_2185f4:
002185f4mov rax, [rbx+96]
002185f8lea r14, [rbx+8]
002185fcmov [rax], 1
002185ffmov rdi, [rbx]
00218602call caml_memprof_set_trigger
00218607mov rdi, [rbx]
0021860acall caml_reset_young_limit
0021860fmov rsi, r14
00218612mov rdi, r15
00218615call fn_217ce0
0021861amov ebp, eax
0021861cmov r12, rax
0021861ftest ebp, ebp
00218621je 0x218658
00218623mov [rsp], rdx
00218627
00218627loc_218627:
00218627mov rdi, rbx
0021862acall fn_217760
0021862fmov rax, [rbx+96]
00218633mov rdi, rbx
00218636mov [rax], 0
00218639call fn_2170b0
0021863emov rdi, [rbx]
00218641call caml_memprof_set_trigger
00218646mov rdi, [rbx]
00218649call caml_reset_young_limit
0021864ejmp 0x2185ae
00218653
00218653 0f 1f 44 00 00 ..D..
00218658
00218658loc_218658:
00218658lea rax, [r15+24]
0021865cmov rdi, r15
0021865fmov rsi, rax
00218662mov [rsp+8], rax
00218667call fn_217ce0
0021866cmov ebp, eax
0021866emov [rsp], rdx
00218672mov r12, rax
00218675test ebp, ebp
00218677jne 0x218627
00218679mov rdi, [rsp+8]
0021867emov rsi, r14
00218681call fn_217950
00218686mov r14, [rbx+72]
0021868atest r14, r14
0021868djne 0x2186a1
0021868fjmp 0x218627
00218691
00218691 0f 1f 80 00 00 00 00 .......
00218698
00218698loc_218698:
00218698mov r14, [r14+64]
0021869ctest r14, r14
0021869fje 0x218627
002186a1
002186a1loc_2186a1:
002186a1mov rdi, r14
002186a4call fn_2173a0
002186a9cmp rax, 1
002186adje 0x218698
002186afmov rax, [r14+24]
002186b3cmp [r14+48], rax
002186b7jae 0x218698
002186b9mov rsi, r14
002186bcmov rdi, r15
002186bfcall fn_217ce0
002186c4mov [rsp], rdx
002186c8mov r12, rax
002186cbtest eax, eax
002186cdje 0x218698
002186cfmov ebp, eax
002186d1jmp 0x218627
00218570
00218570caml_memprof_run_callbacks_res:
00218570push r15
00218572push r14
00218574push r13
00218576push r12
00218578push rbp
00218579push rbx
0021857asub rsp, 24
0021857emov rax, [rip+0x5da5f]
00218585mov rax, [rax]
00218589mov rbx, [rax+464]
00218590mov r15, [rbx+96]
00218594cmp [r15], 0
00218598jne 0x2185a4
0021859acmp [rbx+81], 0
0021859ejne 0x2185e0
002185a0mov [rsp], 1
002185a8xor ebp, ebp
002185aamov r8, r12
002185admov r13, [rsp]
002185b1add rsp, 24
002185b5mov rax, 0xffffffff00000000
002185bfand r8, rax
002185c2pop rbx
002185c3or r8, rbp
002185c6mov rdx, r13
002185c9pop rbp
002185capop r12
002185ccmov rax, r8
002185cfpop r13
002185d1pop r14
002185d3pop r15
002185d5ret
002185d6db 0x5e
002185d7pop r15
002185d9ret
002185da
002185da 66 0f 1f 44 00 00 f..D..
002185e0
002185e0loc_2185e0:
002185e0mov rax, [rip+0x1605b9]
002185e7test rax, rax
002185eaje 0x2185f4
002185ecmov rdi, rbx
002185efcall fn_2170f0
002185f4
002185f4loc_2185f4:
002185f4mov rax, [rbx+96]
002185f8lea r14, [rbx+8]
002185fcmov [rax], 1
002185ffmov rdi, [rbx]
00218602call caml_memprof_set_trigger
00218607mov rdi, [rbx]
0021860acall caml_reset_young_limit
0021860fmov rsi, r14
00218612mov rdi, r15
00218615call fn_217ce0
0021861amov ebp, eax
0021861cmov r12, rax
0021861ftest ebp, ebp
00218621je 0x218658
00218623mov [rsp], rdx
00218627
00218627loc_218627:
00218627mov rdi, rbx
0021862acall fn_217760
0021862fmov rax, [rbx+96]
00218633mov rdi, rbx
00218636mov [rax], 0
00218639call fn_2170b0
0021863emov rdi, [rbx]
00218641call caml_memprof_set_trigger
00218646mov rdi, [rbx]
00218649call caml_reset_young_limit
0021864ejmp 0x2185ae
00218653
00218653 0f 1f 44 00 00 ..D..
00218658
00218658loc_218658:
00218658lea rax, [r15+24]
0021865cmov rdi, r15
0021865fmov rsi, rax
00218662mov [rsp+8], rax
00218667call fn_217ce0
0021866cmov ebp, eax
0021866emov [rsp], rdx
00218672mov r12, rax
00218675test ebp, ebp
00218677jne 0x218627
00218679mov rdi, [rsp+8]
0021867emov rsi, r14
00218681call fn_217950
00218686mov r14, [rbx+72]
0021868atest r14, r14
0021868djne 0x2186a1
0021868fjmp 0x218627
00218691
00218691 0f 1f 80 00 00 00 00 .......
00218698
00218698loc_218698:
00218698mov r14, [r14+64]
0021869ctest r14, r14
0021869fje 0x218627
002186a1
002186a1loc_2186a1:
002186a1mov rdi, r14
002186a4call fn_2173a0
002186a9cmp rax, 1
002186adje 0x218698
002186afmov rax, [r14+24]
002186b3cmp [r14+48], rax
002186b7jae 0x218698
002186b9mov rsi, r14
002186bcmov rdi, r15
002186bfcall fn_217ce0
002186c4mov [rsp], rdx
002186c8mov r12, rax
002186cbtest eax, eax
002186cdje 0x218698
002186cfmov ebp, eax
002186d1jmp 0x218627
00218570
002186d6
002186d6 // align 0x40
002186d6 // align 0x40
00218700
00218700caml_memprof_sample_block:
00218700push r15
00218702push r14
00218704push r13
00218706push r12
00218708push rbp
00218709push rbx
0021870asub rsp, 24
0021870emov rax, [rip+0x5d8cf]
00218715mov [rsp+8], rdi
0021871amov rax, [rax]
0021871emov r14, [rax+464]
00218725mov rdi, [r14+96]
00218729test rdi, rdi
0021872cje 0x218737
0021872ecmp [rdi], 0
00218731je 0x218750
00218733add rsp, 24
00218737
00218737loc_218737:
00218737pop rbx
00218738pop rbp
00218739pop r12
0021873bpop r13
0021873dpop r14
0021873fpop r15
00218741ret
00218742db 0x5e
00218743pop r15
00218745ret
00218746
00218746 66 2e 0f 1f 84 00 00 00 00 00 f.........
00218750
00218750loc_218750:
00218750add rdi, 24
00218754mov r12, rsi
00218757mov rbp, rdx
0021875amov r13l, ecx
0021875dcall fn_2173a0
00218762cmp rax, 1
00218766je 0x218737
00218768mov rdx, [rax]
0021876bsar rdx, 1
0021876etest edx, edx
00218770jne 0x218737
00218772mov rax, [rax+16]
00218776movsd_xmm x0, [rip+0x120da]
0021877eucomisd x0, [rax]
00218782ja 0x218737
00218784mov rbx, [r14+1664]
0021878bcmp rbx, rbp
0021878ejae 0x218837
00218794mov edx, [r14+1656]
0021879bxor r15l, r15l
0021879ejmp 0x2187e2
002187a0
002187a0 66 66 2e 0f 1f 84 00 00 00 00 00 66 66 2e 0f 1f ff.........ff...
002187b0 84 00 00 00 00 00 66 2e 0f 1f 84 00 00 00 00 00 ......f.........
002187c0
002187c0loc_2187c0:
002187c0lea edx, [rax+1]
002187c3add r15, 1
002187c7mov [r14+1656], edx
002187ceadd rbx, [r14+8*rax+1144]
002187d6mov [r14+1664], rbx
002187ddcmp rbx, rbp
002187e0jae 0x218800
002187e2
002187e2loc_2187e2:
002187e2mov eax, edx
002187e4cmp eax, 64
002187e7jne 0x2187c0
002187e9mov rdi, r14
002187eccall fn_216ba0
002187f1mov eax, [r14+1656]
002187f8jmp 0x2187c0
002187fa
002187fa 66 0f 1f 44 00 00 f..D..
00218800
00218800loc_218800:
00218800sub rbx, rbp
00218803mov [r14+1664], rbx
0021880atest r15, r15
0021880dje 0x218737
00218813mov rsi, [rsp+8]
00218818add rsp, 24
0021881cmov r8l, r13l
0021881fmov rcx, r12
00218822pop rbx
00218823mov rdx, r15
00218826pop rbp
00218827mov rdi, r14
0021882apop r12
0021882cpop r13
0021882epop r14
00218830pop r15
00218832jmp 0x217190
00218837
00218837loc_218837:
00218837sub rbx, rbp
0021883amov [r14+1664], rbx
00218841jmp 0x218737
00218700
00218700caml_memprof_sample_block:
00218700push r15
00218702push r14
00218704push r13
00218706push r12
00218708push rbp
00218709push rbx
0021870asub rsp, 24
0021870emov rax, [rip+0x5d8cf]
00218715mov [rsp+8], rdi
0021871amov rax, [rax]
0021871emov r14, [rax+464]
00218725mov rdi, [r14+96]
00218729test rdi, rdi
0021872cje 0x218737
0021872ecmp [rdi], 0
00218731je 0x218750
00218733add rsp, 24
00218737
00218737loc_218737:
00218737pop rbx
00218738pop rbp
00218739pop r12
0021873bpop r13
0021873dpop r14
0021873fpop r15
00218741ret
00218742db 0x5e
00218743pop r15
00218745ret
00218746
00218746 66 2e 0f 1f 84 00 00 00 00 00 f.........
00218750
00218750loc_218750:
00218750add rdi, 24
00218754mov r12, rsi
00218757mov rbp, rdx
0021875amov r13l, ecx
0021875dcall fn_2173a0
00218762cmp rax, 1
00218766je 0x218737
00218768mov rdx, [rax]
0021876bsar rdx, 1
0021876etest edx, edx
00218770jne 0x218737
00218772mov rax, [rax+16]
00218776movsd_xmm x0, [rip+0x120da]
0021877eucomisd x0, [rax]
00218782ja 0x218737
00218784mov rbx, [r14+1664]
0021878bcmp rbx, rbp
0021878ejae 0x218837
00218794mov edx, [r14+1656]
0021879bxor r15l, r15l
0021879ejmp 0x2187e2
002187a0
002187a0 66 66 2e 0f 1f 84 00 00 00 00 00 66 66 2e 0f 1f ff.........ff...
002187b0 84 00 00 00 00 00 66 2e 0f 1f 84 00 00 00 00 00 ......f.........
002187c0
002187c0loc_2187c0:
002187c0lea edx, [rax+1]
002187c3add r15, 1
002187c7mov [r14+1656], edx
002187ceadd rbx, [r14+8*rax+1144]
002187d6mov [r14+1664], rbx
002187ddcmp rbx, rbp
002187e0jae 0x218800
002187e2
002187e2loc_2187e2:
002187e2mov eax, edx
002187e4cmp eax, 64
002187e7jne 0x2187c0
002187e9mov rdi, r14
002187eccall fn_216ba0
002187f1mov eax, [r14+1656]
002187f8jmp 0x2187c0
002187fa
002187fa 66 0f 1f 44 00 00 f..D..
00218800
00218800loc_218800:
00218800sub rbx, rbp
00218803mov [r14+1664], rbx
0021880atest r15, r15
0021880dje 0x218737
00218813mov rsi, [rsp+8]
00218818add rsp, 24
0021881cmov r8l, r13l
0021881fmov rcx, r12
00218822pop rbx
00218823mov rdx, r15
00218826pop rbp
00218827mov rdi, r14
0021882apop r12
0021882cpop r13
0021882epop r14
00218830pop r15
00218832jmp 0x217190
00218837
00218837loc_218837:
00218837sub rbx, rbp
0021883amov [r14+1664], rbx
00218841jmp 0x218737
00218700
00218846
00218846 // align 0x40
00218846 // align 0x40
00218880
00218880caml_memprof_sample_young:
00218880push r15
00218882push r14
00218884push r13
00218886push r12
00218888push rbp
00218889push rbx
0021888asub rsp, 264
00218891mov [rsp+16], rdi
00218896mov [rsp+24], rcx
0021889bmov rax, [0x28]
002188a4mov [rsp+248], rax
002188acmov rax, [rip+0x5d731]
002188b3mov r13, [rax]
002188b7mov [rsp+96], 0
002188bfmov [rsp+104], 1
002188c8mov rax, [r13+160]
002188cfmov rbx, [r13+464]
002188d6mov [rsp+56], rax
002188dbmov r15, [rbx+96]
002188dfmov [rsp+112], rax
002188e4mov eax, 1
002188e9movq x0, rax
002188eelea rax, [rsp+104]
002188f3mov [rsp+136], rax
002188fblea rax, [rsp+112]
00218900punpcklqdq x0, x0
00218904mov [rsp+176], rax
0021890clea rax, [rsp+176]
00218914mov [r13+160], rax
0021891blea rax, [rsp+88]
00218920movups [rsp+120], x0
00218925movups [rsp+184], x0
0021892dmov [rsp+200], rax
00218935mov rax, [r15+80]
00218939mov rbp, [r13+472]
00218940mov [rsp+88], rax
00218945mov rax, [r13+8]
00218949test esi, esi
0021894bje 0x218cb8
00218951lea rcx, [r15+24]
00218955sub rbp, rax
00218958movsxd r14, edx
0021895bmov [rsp+32], rcx
00218960mov rcx, [rsp+16]
00218965sar rbp, 3
00218969add rcx, 1
0021896dmov [rsp+8], rcx
00218972shl rcx, 3
00218976add rax, rcx
00218979mov [rsp+72], rcx
0021897emov [r13+8], rax
00218982mov rax, [rbx+96]
00218986mov [rax], 1
00218989mov rdi, [rbx]
0021898ccall caml_memprof_set_trigger
00218991mov rdi, [rbx]
00218994call caml_reset_young_limit
00218999mov [rsp+64], r13
0021899emov [rsp+48], r15
002189a3mov r15, rbx
002189a6nop [rax+rax]
002189acmov rax, [rsp+24]
002189b1mov r12, [rsp+16]
002189b6sub r14, 1
002189batest rax, rax
002189bdje 0x2189cc
002189bfmovzx r12l, [rax+r14]
002189c4add r12, 1
002189c8mov r10, [rsp+8]
002189cdsub r10, 1
002189d1sub r10, r12
002189d4mov [rsp+8], r10
002189d9mov r13, r10
002189dccmp rbp, r10
002189dfjle 0x218a41
002189e1mov edx, [r15+1656]
002189e8xor ebx, ebx
002189eajmp 0x218a17
002189ecdb 0x31
002189edfucomi f3
002189efdb 0x27
002189f0
002189f0 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 ff...........D..
00218a00
00218a00loc_218a00:
00218a00lea edx, [rax+1]
00218a03mov [r15+1656], edx
00218a0asub rbp, [r15+8*rax+1144]
00218a12cmp r13, rbp
00218a15jge 0x218a38
00218a17
00218a17loc_218a17:
00218a17mov eax, edx
00218a19add rbx, 1
00218a1dcmp eax, 64
00218a20jne 0x218a00
00218a22mov rdi, r15
00218a25call fn_216ba0
00218a2amov eax, [r15+1656]
00218a31jmp 0x218a00
00218a33
00218a33 0f 1f 44 00 00 ..D..
00218a38
00218a38loc_218a38:
00218a38test rbx, rbx
00218a3bjne 0x218ba0
00218a41
00218a41loc_218a41:
00218a41test r14, r14
00218a44jne 0x2189b0
00218a4a
00218a4aloc_218a4a:
00218a4amov rbx, r15
00218a4dmov r15, [rsp+48]
00218a52mov rsi, [rsp+32]
00218a57mov r13, [rsp+64]
00218a5cmov rdi, r15
00218a5fcall fn_217ce0
00218a64mov [rsp+96], eax
00218a68mov [rsp+104], rdx
00218a6dtest eax, eax
00218a6fjne 0x218ca9
00218a75mov rax, [rip+0x5d56c]
00218a7cmov rcx, [rsp+72]
00218a81mov rax, [rax]
00218a85mov rbp, rcx
00218a88neg rbp
00218a8bmov rdx, [rax+8]
00218a8fsub rdx, rcx
00218a92cmp rdx, [rax+32]
00218a96jae 0x218acc
00218a98nop [rax+rax]
00218aa0
00218aa0loc_218aa0:
00218aa0mov esi, 1
00218aa5mov edi, 3
00218aaacall caml_ev_counter
00218aafcall caml_poll_gc_work
00218ab4mov rax, [rip+0x5d52d]
00218abbmov rax, [rax]
00218abfmov rdx, [rax+8]
00218ac3add rdx, rbp
00218ac6cmp rdx, [rax+32]
00218acajb 0x218aa0
00218acc
00218accloc_218acc:
00218accmov [rax+8], rdx
00218ad0xor esi, esi
00218ad2cmp [r15+48], 0
00218ad7je 0x218b28
00218ad9nop [rax]
00218ae0
00218ae0loc_218ae0:
00218ae0mov rax, [r15+24]
00218ae4add rax, rsi
00218ae7movzx edx, [rax+40]
00218aebtest dl, 4
00218aeeje 0x218b1a
00218af0mov rcx, [rip+0x5d4f1]
00218af7mov rdi, [rax]
00218afaand edx, -5
00218afdmov rcx, [rcx]
00218b01mov rcx, [rcx+8]
00218b05mov [rax+40], dl
00218b08lea rcx, [rcx+8*rdi+8]
00218b0dmov [rax], rcx
00218b10cmp r14, [r15+56]
00218b14jae 0x218b1a
00218b16mov [r15+56], r14
00218b1a
00218b1aloc_218b1a:
00218b1aadd r14, 1
00218b1eadd rsi, 48
00218b22cmp r14, [r15+48]
00218b26jb 0x218ae0
00218b28
00218b28loc_218b28:
00218b28mov rdi, [rsp+32]
00218b2dlea rsi, [rbx+8]
00218b31call fn_217950
00218b36
00218b36loc_218b36:
00218b36mov rax, [rbx+96]
00218b3amov rdi, rbx
00218b3dmov [rax], 0
00218b40call fn_2170b0
00218b45mov rdi, [rbx]
00218b48call caml_memprof_set_trigger
00218b4dmov rdi, [rbx]
00218b50call caml_reset_young_limit
00218b55mov eax, [rsp+96]
00218b59test eax, eax
00218b5bjne 0x218ddd
00218b61
00218b61loc_218b61:
00218b61mov rax, [rsp+56]
00218b66mov [r13+160], rax
00218b6dmov rax, [rsp+248]
00218b75sub rax, [0x28]
00218b7ejne 0x218de7
00218b84add rsp, 264
00218b8bpop rbx
00218b8cpop rbp
00218b8dpop r12
00218b8fpop r13
00218b91pop r14
00218b93pop r15
00218b95ret
00218b96
00218b96 66 2e 0f 1f 84 00 00 00 00 00 f.........
00218ba0
00218ba0loc_218ba0:
00218ba0mov rax, [r15+64]
00218ba4movsxd rcx, r14l
00218ba7lea rdx, [r15+112]
00218bablea rsi, [r15+104]
00218bafmov rdi, [rax+24]
00218bb3sar rdi, 1
00218bb6movsxd rdi, edi
00218bb9call caml_get_callstack
00218bbexor esi, esi
00218bc0mov rdi, rax
00218bc3mov [rsp+40], rax
00218bc8call caml_alloc
00218bcdmov rcx, [rsp+40]
00218bd2mov rdx, rax
00218bd5test rcx, rcx
00218bd8je 0x218d3b
00218bdemov rdi, rax
00218be1xor eax, eax
00218be3nop [rax+rax]
00218beenop [rax+rax]
00218bf9nop [rax]
00218c00
00218c00loc_218c00:
00218c00mov rsi, [r15+104]
00218c04add rdi, 8
00218c08mov rsi, [rsi+8*rax]
00218c0cadd rax, 1
00218c10or rsi, 1
00218c14mov [rdi-8], rsi
00218c18cmp rcx, rax
00218c1bjne 0x218c00
00218c1dmov rax, [r15+112]
00218c21cmp rax, 256
00218c27jbe 0x218c36
00218c29shl rcx, 3
00218c2dcmp rcx, rax
00218c30jb 0x218d49
00218c36
00218c36loc_218c36:
00218c36mov rdi, [rsp+32]
00218c3bmov esi, 1
00218c40mov [rsp+40], rdx
00218c45call fn_216eb0
00218c4atest al, al
00218c4cje 0x218a41
00218c52mov rdi, [rsp+48]
00218c57mov rdx, [rsp+40]
00218c5cmov rax, [rdi+48]
00218c60lea rcx, [rax+1]
00218c64lea rax, [rax+2*rax]
00218c68shl rax, 4
00218c6cadd rax, [rdi+24]
00218c70mov [rdi+48], rcx
00218c74mov [rax+8], rdx
00218c78movzx edx, [rax+40]
00218c7cmov [rax], r13
00218c7fand dx, -4096
00218c84mov [rax+16], rbx
00218c88or edx, 12
00218c8bmov [rax+24], r12
00218c8fmov [rax+32], 0
00218c97mov [rax+40], dx
00218c9btest r14, r14
00218c9ejne 0x2189b0
00218ca4jmp 0x218a4a
00218ca9
00218ca9loc_218ca9:
00218ca9mov rdi, [rsp+32]
00218caecall fn_2178c0
00218cb3jmp 0x218b36
00218cb8
00218cb8loc_218cb8:
00218cb8lea r12, [rbp-8]
00218cbcmov rbp, [rbx+1664]
00218cc3sub r12, rax
00218cc6sar r12, 3
00218ccacmp rbp, r12
00218ccdjae 0x218dc3
00218cd3mov ecx, [rbx+1656]
00218cd9xor r14l, r14l
00218cdcjmp 0x218d24
00218cde
00218cde 66 66 ff
00218ce0 2e 0f 1f 84 00 00 00 00 00 66 66 2e 0f 1f 84 00 .........ff.....
00218cf0 00 00 00 00 66 66 2e 0f 1f 84 00 00 00 00 00 90 ....ff..........
00218d00
00218d00loc_218d00:
00218d00lea ecx, [rax+1]
00218d03mov [rbx+1656], ecx
00218d09add rbp, [rbx+8*rax+1144]
00218d11lea rax, [r14+1]
00218d15mov [rbx+1664], rbp
00218d1ccmp rbp, r12
00218d1fjae 0x218d71
00218d21mov r14, rax
00218d24
00218d24loc_218d24:
00218d24mov eax, ecx
00218d26cmp eax, 64
00218d29jne 0x218d00
00218d2bmov rdi, rbx
00218d2ecall fn_216ba0
00218d33mov eax, [rbx+1656]
00218d39jmp 0x218d00
00218d3b
00218d3bloc_218d3b:
00218d3bcmp [r15+112], 256
00218d43jbe 0x218c36
00218d49
00218d49loc_218d49:
00218d49mov rdi, [r15+104]
00218d4dmov [rsp+40], rdx
00218d52call caml_stat_free
00218d57mov [r15+104], 0
00218d5fmov rdx, [rsp+40]
00218d64mov [r15+112], 0
00218d6cjmp 0x218c36
00218d71
00218d71loc_218d71:
00218d71sub rbp, r12
00218d74mov [rbx+1664], rbp
00218d7badd r14, 2
00218d7fjne 0x218da6
00218d81
00218d81loc_218d81:
00218d81mov rax, [rip+0x5d260]
00218d88mov rdi, [rax]
00218d8ccall caml_memprof_set_trigger
00218d91mov rax, [rip+0x5d250]
00218d98mov rdi, [rax]
00218d9ccall caml_reset_young_limit
00218da1jmp 0x218b61
00218da6
00218da6loc_218da6:
00218da6mov rax, [r13+8]
00218daalea rsi, [rax+8]
00218dae
00218daeloc_218dae:
00218daemov rcx, [rsp+16]
00218db3xor r8l, r8l
00218db6mov rdx, r14
00218db9mov rdi, rbx
00218dbccall fn_217190
00218dc1jmp 0x218d81
00218dc3
00218dc3loc_218dc3:
00218dc3sub rbp, r12
00218dc6mov r14l, 1
00218dccmov [rbx+1664], rbp
00218dd3mov rax, [r13+8]
00218dd7lea rsi, [rax+8]
00218ddbjmp 0x218dae
00218ddd
00218dddloc_218ddd:
00218dddmov rdi, [rsp+104]
00218de2call caml_raise
00218de7
00218de7loc_218de7:
00218de7call fn_f4590
00218880
00218880caml_memprof_sample_young:
00218880push r15
00218882push r14
00218884push r13
00218886push r12
00218888push rbp
00218889push rbx
0021888asub rsp, 264
00218891mov [rsp+16], rdi
00218896mov [rsp+24], rcx
0021889bmov rax, [0x28]
002188a4mov [rsp+248], rax
002188acmov rax, [rip+0x5d731]
002188b3mov r13, [rax]
002188b7mov [rsp+96], 0
002188bfmov [rsp+104], 1
002188c8mov rax, [r13+160]
002188cfmov rbx, [r13+464]
002188d6mov [rsp+56], rax
002188dbmov r15, [rbx+96]
002188dfmov [rsp+112], rax
002188e4mov eax, 1
002188e9movq x0, rax
002188eelea rax, [rsp+104]
002188f3mov [rsp+136], rax
002188fblea rax, [rsp+112]
00218900punpcklqdq x0, x0
00218904mov [rsp+176], rax
0021890clea rax, [rsp+176]
00218914mov [r13+160], rax
0021891blea rax, [rsp+88]
00218920movups [rsp+120], x0
00218925movups [rsp+184], x0
0021892dmov [rsp+200], rax
00218935mov rax, [r15+80]
00218939mov rbp, [r13+472]
00218940mov [rsp+88], rax
00218945mov rax, [r13+8]
00218949test esi, esi
0021894bje 0x218cb8
00218951lea rcx, [r15+24]
00218955sub rbp, rax
00218958movsxd r14, edx
0021895bmov [rsp+32], rcx
00218960mov rcx, [rsp+16]
00218965sar rbp, 3
00218969add rcx, 1
0021896dmov [rsp+8], rcx
00218972shl rcx, 3
00218976add rax, rcx
00218979mov [rsp+72], rcx
0021897emov [r13+8], rax
00218982mov rax, [rbx+96]
00218986mov [rax], 1
00218989mov rdi, [rbx]
0021898ccall caml_memprof_set_trigger
00218991mov rdi, [rbx]
00218994call caml_reset_young_limit
00218999mov [rsp+64], r13
0021899emov [rsp+48], r15
002189a3mov r15, rbx
002189a6nop [rax+rax]
002189acmov rax, [rsp+24]
002189b1mov r12, [rsp+16]
002189b6sub r14, 1
002189batest rax, rax
002189bdje 0x2189cc
002189bfmovzx r12l, [rax+r14]
002189c4add r12, 1
002189c8mov r10, [rsp+8]
002189cdsub r10, 1
002189d1sub r10, r12
002189d4mov [rsp+8], r10
002189d9mov r13, r10
002189dccmp rbp, r10
002189dfjle 0x218a41
002189e1mov edx, [r15+1656]
002189e8xor ebx, ebx
002189eajmp 0x218a17
002189ecdb 0x31
002189edfucomi f3
002189efdb 0x27
002189f0
002189f0 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 ff...........D..
00218a00
00218a00loc_218a00:
00218a00lea edx, [rax+1]
00218a03mov [r15+1656], edx
00218a0asub rbp, [r15+8*rax+1144]
00218a12cmp r13, rbp
00218a15jge 0x218a38
00218a17
00218a17loc_218a17:
00218a17mov eax, edx
00218a19add rbx, 1
00218a1dcmp eax, 64
00218a20jne 0x218a00
00218a22mov rdi, r15
00218a25call fn_216ba0
00218a2amov eax, [r15+1656]
00218a31jmp 0x218a00
00218a33
00218a33 0f 1f 44 00 00 ..D..
00218a38
00218a38loc_218a38:
00218a38test rbx, rbx
00218a3bjne 0x218ba0
00218a41
00218a41loc_218a41:
00218a41test r14, r14
00218a44jne 0x2189b0
00218a4a
00218a4aloc_218a4a:
00218a4amov rbx, r15
00218a4dmov r15, [rsp+48]
00218a52mov rsi, [rsp+32]
00218a57mov r13, [rsp+64]
00218a5cmov rdi, r15
00218a5fcall fn_217ce0
00218a64mov [rsp+96], eax
00218a68mov [rsp+104], rdx
00218a6dtest eax, eax
00218a6fjne 0x218ca9
00218a75mov rax, [rip+0x5d56c]
00218a7cmov rcx, [rsp+72]
00218a81mov rax, [rax]
00218a85mov rbp, rcx
00218a88neg rbp
00218a8bmov rdx, [rax+8]
00218a8fsub rdx, rcx
00218a92cmp rdx, [rax+32]
00218a96jae 0x218acc
00218a98nop [rax+rax]
00218aa0
00218aa0loc_218aa0:
00218aa0mov esi, 1
00218aa5mov edi, 3
00218aaacall caml_ev_counter
00218aafcall caml_poll_gc_work
00218ab4mov rax, [rip+0x5d52d]
00218abbmov rax, [rax]
00218abfmov rdx, [rax+8]
00218ac3add rdx, rbp
00218ac6cmp rdx, [rax+32]
00218acajb 0x218aa0
00218acc
00218accloc_218acc:
00218accmov [rax+8], rdx
00218ad0xor esi, esi
00218ad2cmp [r15+48], 0
00218ad7je 0x218b28
00218ad9nop [rax]
00218ae0
00218ae0loc_218ae0:
00218ae0mov rax, [r15+24]
00218ae4add rax, rsi
00218ae7movzx edx, [rax+40]
00218aebtest dl, 4
00218aeeje 0x218b1a
00218af0mov rcx, [rip+0x5d4f1]
00218af7mov rdi, [rax]
00218afaand edx, -5
00218afdmov rcx, [rcx]
00218b01mov rcx, [rcx+8]
00218b05mov [rax+40], dl
00218b08lea rcx, [rcx+8*rdi+8]
00218b0dmov [rax], rcx
00218b10cmp r14, [r15+56]
00218b14jae 0x218b1a
00218b16mov [r15+56], r14
00218b1a
00218b1aloc_218b1a:
00218b1aadd r14, 1
00218b1eadd rsi, 48
00218b22cmp r14, [r15+48]
00218b26jb 0x218ae0
00218b28
00218b28loc_218b28:
00218b28mov rdi, [rsp+32]
00218b2dlea rsi, [rbx+8]
00218b31call fn_217950
00218b36
00218b36loc_218b36:
00218b36mov rax, [rbx+96]
00218b3amov rdi, rbx
00218b3dmov [rax], 0
00218b40call fn_2170b0
00218b45mov rdi, [rbx]
00218b48call caml_memprof_set_trigger
00218b4dmov rdi, [rbx]
00218b50call caml_reset_young_limit
00218b55mov eax, [rsp+96]
00218b59test eax, eax
00218b5bjne 0x218ddd
00218b61
00218b61loc_218b61:
00218b61mov rax, [rsp+56]
00218b66mov [r13+160], rax
00218b6dmov rax, [rsp+248]
00218b75sub rax, [0x28]
00218b7ejne 0x218de7
00218b84add rsp, 264
00218b8bpop rbx
00218b8cpop rbp
00218b8dpop r12
00218b8fpop r13
00218b91pop r14
00218b93pop r15
00218b95ret
00218b96
00218b96 66 2e 0f 1f 84 00 00 00 00 00 f.........
00218ba0
00218ba0loc_218ba0:
00218ba0mov rax, [r15+64]
00218ba4movsxd rcx, r14l
00218ba7lea rdx, [r15+112]
00218bablea rsi, [r15+104]
00218bafmov rdi, [rax+24]
00218bb3sar rdi, 1
00218bb6movsxd rdi, edi
00218bb9call caml_get_callstack
00218bbexor esi, esi
00218bc0mov rdi, rax
00218bc3mov [rsp+40], rax
00218bc8call caml_alloc
00218bcdmov rcx, [rsp+40]
00218bd2mov rdx, rax
00218bd5test rcx, rcx
00218bd8je 0x218d3b
00218bdemov rdi, rax
00218be1xor eax, eax
00218be3nop [rax+rax]
00218beenop [rax+rax]
00218bf9nop [rax]
00218c00
00218c00loc_218c00:
00218c00mov rsi, [r15+104]
00218c04add rdi, 8
00218c08mov rsi, [rsi+8*rax]
00218c0cadd rax, 1
00218c10or rsi, 1
00218c14mov [rdi-8], rsi
00218c18cmp rcx, rax
00218c1bjne 0x218c00
00218c1dmov rax, [r15+112]
00218c21cmp rax, 256
00218c27jbe 0x218c36
00218c29shl rcx, 3
00218c2dcmp rcx, rax
00218c30jb 0x218d49
00218c36
00218c36loc_218c36:
00218c36mov rdi, [rsp+32]
00218c3bmov esi, 1
00218c40mov [rsp+40], rdx
00218c45call fn_216eb0
00218c4atest al, al
00218c4cje 0x218a41
00218c52mov rdi, [rsp+48]
00218c57mov rdx, [rsp+40]
00218c5cmov rax, [rdi+48]
00218c60lea rcx, [rax+1]
00218c64lea rax, [rax+2*rax]
00218c68shl rax, 4
00218c6cadd rax, [rdi+24]
00218c70mov [rdi+48], rcx
00218c74mov [rax+8], rdx
00218c78movzx edx, [rax+40]
00218c7cmov [rax], r13
00218c7fand dx, -4096
00218c84mov [rax+16], rbx
00218c88or edx, 12
00218c8bmov [rax+24], r12
00218c8fmov [rax+32], 0
00218c97mov [rax+40], dx
00218c9btest r14, r14
00218c9ejne 0x2189b0
00218ca4jmp 0x218a4a
00218ca9
00218ca9loc_218ca9:
00218ca9mov rdi, [rsp+32]
00218caecall fn_2178c0
00218cb3jmp 0x218b36
00218cb8
00218cb8loc_218cb8:
00218cb8lea r12, [rbp-8]
00218cbcmov rbp, [rbx+1664]
00218cc3sub r12, rax
00218cc6sar r12, 3
00218ccacmp rbp, r12
00218ccdjae 0x218dc3
00218cd3mov ecx, [rbx+1656]
00218cd9xor r14l, r14l
00218cdcjmp 0x218d24
00218cde
00218cde 66 66 ff
00218ce0 2e 0f 1f 84 00 00 00 00 00 66 66 2e 0f 1f 84 00 .........ff.....
00218cf0 00 00 00 00 66 66 2e 0f 1f 84 00 00 00 00 00 90 ....ff..........
00218d00
00218d00loc_218d00:
00218d00lea ecx, [rax+1]
00218d03mov [rbx+1656], ecx
00218d09add rbp, [rbx+8*rax+1144]
00218d11lea rax, [r14+1]
00218d15mov [rbx+1664], rbp
00218d1ccmp rbp, r12
00218d1fjae 0x218d71
00218d21mov r14, rax
00218d24
00218d24loc_218d24:
00218d24mov eax, ecx
00218d26cmp eax, 64
00218d29jne 0x218d00
00218d2bmov rdi, rbx
00218d2ecall fn_216ba0
00218d33mov eax, [rbx+1656]
00218d39jmp 0x218d00
00218d3b
00218d3bloc_218d3b:
00218d3bcmp [r15+112], 256
00218d43jbe 0x218c36
00218d49
00218d49loc_218d49:
00218d49mov rdi, [r15+104]
00218d4dmov [rsp+40], rdx
00218d52call caml_stat_free
00218d57mov [r15+104], 0
00218d5fmov rdx, [rsp+40]
00218d64mov [r15+112], 0
00218d6cjmp 0x218c36
00218d71
00218d71loc_218d71:
00218d71sub rbp, r12
00218d74mov [rbx+1664], rbp
00218d7badd r14, 2
00218d7fjne 0x218da6
00218d81
00218d81loc_218d81:
00218d81mov rax, [rip+0x5d260]
00218d88mov rdi, [rax]
00218d8ccall caml_memprof_set_trigger
00218d91mov rax, [rip+0x5d250]
00218d98mov rdi, [rax]
00218d9ccall caml_reset_young_limit
00218da1jmp 0x218b61
00218da6
00218da6loc_218da6:
00218da6mov rax, [r13+8]
00218daalea rsi, [rax+8]
00218dae
00218daeloc_218dae:
00218daemov rcx, [rsp+16]
00218db3xor r8l, r8l
00218db6mov rdx, r14
00218db9mov rdi, rbx
00218dbccall fn_217190
00218dc1jmp 0x218d81
00218dc3
00218dc3loc_218dc3:
00218dc3sub rbp, r12
00218dc6mov r14l, 1
00218dccmov [rbx+1664], rbp
00218dd3mov rax, [r13+8]
00218dd7lea rsi, [rax+8]
00218ddbjmp 0x218dae
00218ddd
00218dddloc_218ddd:
00218dddmov rdi, [rsp+104]
00218de2call caml_raise
00218de7
00218de7loc_218de7:
00218de7call fn_f4590
00218880
00218dec
00218dec // align 0x10
00218dec // align 0x10
00218df0
00218df0caml_memprof_new_thread:
00218df0push rbx
00218df1mov rbx, [rdi+464]
00218df8mov edi, 104
00218dfdcall caml_stat_alloc
00218e02test rax, rax
00218e05je 0x218e56
00218e07movdqa x0, [rip+0x1134d]
00218e0fmov [rax], 0
00218e12mov [rax+8], 0
00218e1amov [rax+16], 0
00218e22mov rdx, [rbx+64]
00218e26movups [rax+32], x0
00218e2apxor x0, x0
00218e2emov [rax+24], 0
00218e36mov [rax+80], rdx
00218e3amov [rax+88], rbx
00218e3emovups [rax+48], x0
00218e42movups [rax+64], x0
00218e46mov rdx, [rbx+88]
00218e4amov [rax+96], rdx
00218e4emov [rbx+88], rax
00218e52pop rbx
00218e53ret
00218e54db 0x43
00218e55pop rax
00218e56
00218e56loc_218e56:
00218e56pop rbx
00218e57ret
00218df0
00218df0caml_memprof_new_thread:
00218df0push rbx
00218df1mov rbx, [rdi+464]
00218df8mov edi, 104
00218dfdcall caml_stat_alloc
00218e02test rax, rax
00218e05je 0x218e56
00218e07movdqa x0, [rip+0x1134d]
00218e0fmov [rax], 0
00218e12mov [rax+8], 0
00218e1amov [rax+16], 0
00218e22mov rdx, [rbx+64]
00218e26movups [rax+32], x0
00218e2apxor x0, x0
00218e2emov [rax+24], 0
00218e36mov [rax+80], rdx
00218e3amov [rax+88], rbx
00218e3emovups [rax+48], x0
00218e42movups [rax+64], x0
00218e46mov rdx, [rbx+88]
00218e4amov [rax+96], rdx
00218e4emov [rbx+88], rax
00218e52pop rbx
00218e53ret
00218e54db 0x43
00218e55pop rax
00218e56
00218e56loc_218e56:
00218e56pop rbx
00218e57ret
00218df0
00218e58
00218e58 // align 0x10
00218e58 // align 0x10
00218e60
00218e60caml_memprof_main_thread:
00218e60mov rax, [rdi+464]
00218e67mov rax, [rax+88]
00218e6bret
00218e6cdb 0x8b
00218e6dpop rax
00218e6fret
00218e60
00218e60caml_memprof_main_thread:
00218e60mov rax, [rdi+464]
00218e67mov rax, [rax+88]
00218e6bret
00218e6cdb 0x8b
00218e6dpop rax
00218e6fret
00218e60
00218e70
00218e70caml_memprof_delete_thread:
00218e70push rbx
00218e71mov rax, [rdi+88]
00218e75mov rbx, rdi
00218e78lea rdi, [rdi+24]
00218e7clea rsi, [rax+8]
00218e80call fn_217950
00218e85mov rdi, rbx
00218e88pop rbx
00218e89jmp 0x217310
00218e8edb 0x7e
00218e8fin al, 255
00218e91db 0xff
00218e70
00218e70caml_memprof_delete_thread:
00218e70push rbx
00218e71mov rax, [rdi+88]
00218e75mov rbx, rdi
00218e78lea rdi, [rdi+24]
00218e7clea rsi, [rax+8]
00218e80call fn_217950
00218e85mov rdi, rbx
00218e88pop rbx
00218e89jmp 0x217310
00218e8edb 0x7e
00218e8fin al, 255
00218e91db 0xff
00218e70
00218e92
00218e92 // align 0x10
00218e92 // align 0x10
00218ea0
00218ea0caml_memprof_enter_thread:
00218ea0push rbx
00218ea1mov rax, [rdi+88]
00218ea5mov [rax+96], rdi
00218ea9mov rbx, [rdi+88]
00218eadmovzx eax, [rdi]
00218eb0mov rdx, [rbx+96]
00218eb4mov [rdx], al
00218eb6test al, al
00218eb8je 0x218ed0
00218ebamov rdi, [rbx]
00218ebdcall caml_memprof_set_trigger
00218ec2mov rdi, [rbx]
00218ec5pop rbx
00218ec6jmp 0x201700
00218ecbdb 0x31
00218eccmov dh, bh
00218ecedb 0xff
00218ecf
00218ecf 90 .
00218ed0
00218ed0loc_218ed0:
00218ed0mov rdi, rbx
00218ed3call fn_2170b0
00218ed8jmp 0x218ebe
00218ea0
00218ea0caml_memprof_enter_thread:
00218ea0push rbx
00218ea1mov rax, [rdi+88]
00218ea5mov [rax+96], rdi
00218ea9mov rbx, [rdi+88]
00218eadmovzx eax, [rdi]
00218eb0mov rdx, [rbx+96]
00218eb4mov [rdx], al
00218eb6test al, al
00218eb8je 0x218ed0
00218ebamov rdi, [rbx]
00218ebdcall caml_memprof_set_trigger
00218ec2mov rdi, [rbx]
00218ec5pop rbx
00218ec6jmp 0x201700
00218ecbdb 0x31
00218eccmov dh, bh
00218ecedb 0xff
00218ecf
00218ecf 90 .
00218ed0
00218ed0loc_218ed0:
00218ed0mov rdi, rbx
00218ed3call fn_2170b0
00218ed8jmp 0x218ebe
00218ea0
00218eda
00218eda // align 0x10
00218eda // align 0x10
00218ee0
00218ee0caml_memprof_start:
00218ee0push r15
00218ee2push r14
00218ee4push r13
00218ee6push r12
00218ee8push rbp
00218ee9push rbx
00218eeasub rsp, 200
00218ef1movdqa x0, [rip+0x111e3]
00218ef9mov [rsp+24], rdi
00218efemov [rsp+16], rsi
00218f03mov [rsp+8], rdx
00218f08mov rax, [0x28]
00218f11mov [rsp+184], rax
00218f19mov rax, [rip+0x5d0c4]
00218f20mov r12, [rax]
00218f24lea rax, [rsp+24]
00218f29movups [rsp+56], x0
00218f2emov [rsp+40], 1
00218f37movq x0, rax
00218f3clea rax, [rsp+16]
00218f41movq x3, rax
00218f46lea rax, [rsp+8]
00218f4bmov r14, [r12+160]
00218f53mov [rsp+88], rax
00218f58lea rax, [rsp+48]
00218f5dpunpcklqdq x0, x3
00218f61mov [rsp+112], rax
00218f66lea rax, [rsp+112]
00218f6bmov [r12+160], rax
00218f73mov eax, 1
00218f78movups [rsp+72], x0
00218f7dmovq x0, rax
00218f82lea rax, [rsp+40]
00218f87punpcklqdq x0, x0
00218f8bmov [rsp+48], r14
00218f90mov [rsp+136], rax
00218f98movups [rsp+120], x0
00218f9dmovsd_xmm x2, [rdi]
00218fa1movsd_xmm [rsp], x2
00218fa6test rsi, rsi
00218fa9js 0x2191d8
00218fafpxor x0, x0
00218fb3comisd x2, x0
00218fb7jb 0x2191d8
00218fbdmovsd_xmm x4, [rip+0x1183f]
00218fc5comisd x4, x2
00218fc9jb 0x2191d8
00218fcfmov rbp, [r12+464]
00218fd7mov rax, [rbp+96]
00218fdblea rdi, [rax+24]
00218fdfcall fn_2173a0
00218fe4cmp rax, 1
00218fe8je 0x219009
00218feamov rax, [rbp+96]
00218feelea rdi, [rax+24]
00218ff2call fn_2173a0
00218ff7mov rax, [rax]
00218ffasar rax, 1
00218ffdtest eax, eax
00218fffje 0x2191ee
00219005mov rdi, rbp
00219008call fn_217aa0
0021900dtest al, al
0021900fje 0x2191e9
00219015movsd_xmm x5, [rsp]
0021901aucomisd x5, [rip+0x117e2]
00219022jp 0x219190
00219028pxor x0, x0
0021902cjne 0x219190
00219032call caml_copy_double
00219037xor esi, esi
00219039mov edi, 9
0021903exor r13l, r13l
00219041mov [rsp+40], rax
00219046call caml_alloc_shr
0021904bmov esi, 1
00219050mov rdi, rax
00219053mov rbx, rax
00219056call caml_initialize
0021905bmov rsi, [rsp+24]
00219060lea rdi, [rbx+8]
00219064lea r15, [rbx+32]
00219068call caml_initialize
0021906dmov rsi, [rsp+40]
00219072lea rdi, [rbx+16]
00219076call caml_initialize
0021907bmov rsi, [rsp+16]
00219080lea rdi, [rbx+24]
00219084call caml_initialize
00219089mov rdx, [rsp+8]
0021908elea rdi, [r15+r13]
00219092add rdx, r13
00219095add r13, 8
00219099mov rsi, [rdx]
0021909ccall caml_initialize
002190a1cmp r13, 40
002190a5jne 0x21908d
002190a7mov rax, [rbp+88]
002190abmov [rbp+64], rbx
002190aftest rax, rax
002190b2je 0x2191d0
002190b8nop [rax]
002190bcmov [rax+80], rbx
002190c0
002190c0loc_2190c0:
002190c0mov rax, [rax+96]
002190c4test rax, rax
002190c7jne 0x2190c0
002190c9mov rax, [rbp+64]
002190cdmov [rbp+1656], 64
002190d7cmp rax, 1
002190dbje 0x2190f3
002190ddmov rax, [rax+16]
002190e1movsd_xmm x0, [rip+0x1176b]
002190e9ucomisd x0, [rax]
002190edjbe 0x219160
002190efmov rax, [rip+0x5ceee]
002190f6mov rdi, [rax]
002190facall caml_memprof_set_trigger
002190ffmov rax, [rip+0x5cede]
00219106mov rdi, [rax]
0021910acall caml_reset_young_limit
0021910fmov rdi, rbp
00219112call fn_217760
00219117mov rdi, rbp
0021911acall fn_2170b0
0021911fmov [r12+160], r14
00219127mov rax, [rsp+184]
0021912fsub rax, [0x28]
00219138jne 0x2191e4
0021913eadd rsp, 200
00219145mov rax, rbx
00219148pop rbx
00219149pop rbp
0021914apop r12
0021914cpop r13
0021914epop r14
00219150pop r15
00219152ret
00219153db 0x5e
00219154pop r15
00219156ret
00219157
00219157 66 0f 1f 84 00 00 00 00 00 f........
00219160
00219160loc_219160:
00219160mov rdi, rbp
00219163call fn_216ba0
00219168mov eax, [rbp+1656]
0021916elea edx, [rax+1]
00219171mov [rbp+1656], edx
00219177mov rax, [rbp+8*rax+1144]
0021917fsub rax, 1
00219183mov [rbp+1664], rax
0021918ajmp 0x2190f3
0021918f
0021918f 90 .
00219190
00219190loc_219190:
00219190movsd_xmm x0, [rsp]
00219195xorpd x0, [rip+0x10e93]
0021919dcall caml_log1p
002191a2movapd x1, x0
002191a6movsd_xmm x0, [rip+0x1165a]
002191aedivsd x0, x1
002191b2pxor x1, x1
002191b6comisd x1, x0
002191bajae 0x219036
002191c0movsd_xmm x0, [rip+0x11698]
002191c8jmp 0x219036
002191cd
002191cd 0f 1f 00 ...
002191d0
002191d0loc_2191d0:
002191d0mov rax, rbx
002191d3jmp 0x2190d1
002191d8
002191d8loc_2191d8:
002191d8lea rdi, [rip+0x16052]
002191dfcall caml_invalid_argument
002191e4
002191e4loc_2191e4:
002191e4call fn_f4590
002191e9
002191e9loc_2191e9:
002191e9call caml_raise_out_of_memory
002191ee
002191eeloc_2191ee:
002191eelea rdi, [rip+0x17b2b]
002191f5call caml_failwith
00218ee0
00218ee0caml_memprof_start:
00218ee0push r15
00218ee2push r14
00218ee4push r13
00218ee6push r12
00218ee8push rbp
00218ee9push rbx
00218eeasub rsp, 200
00218ef1movdqa x0, [rip+0x111e3]
00218ef9mov [rsp+24], rdi
00218efemov [rsp+16], rsi
00218f03mov [rsp+8], rdx
00218f08mov rax, [0x28]
00218f11mov [rsp+184], rax
00218f19mov rax, [rip+0x5d0c4]
00218f20mov r12, [rax]
00218f24lea rax, [rsp+24]
00218f29movups [rsp+56], x0
00218f2emov [rsp+40], 1
00218f37movq x0, rax
00218f3clea rax, [rsp+16]
00218f41movq x3, rax
00218f46lea rax, [rsp+8]
00218f4bmov r14, [r12+160]
00218f53mov [rsp+88], rax
00218f58lea rax, [rsp+48]
00218f5dpunpcklqdq x0, x3
00218f61mov [rsp+112], rax
00218f66lea rax, [rsp+112]
00218f6bmov [r12+160], rax
00218f73mov eax, 1
00218f78movups [rsp+72], x0
00218f7dmovq x0, rax
00218f82lea rax, [rsp+40]
00218f87punpcklqdq x0, x0
00218f8bmov [rsp+48], r14
00218f90mov [rsp+136], rax
00218f98movups [rsp+120], x0
00218f9dmovsd_xmm x2, [rdi]
00218fa1movsd_xmm [rsp], x2
00218fa6test rsi, rsi
00218fa9js 0x2191d8
00218fafpxor x0, x0
00218fb3comisd x2, x0
00218fb7jb 0x2191d8
00218fbdmovsd_xmm x4, [rip+0x1183f]
00218fc5comisd x4, x2
00218fc9jb 0x2191d8
00218fcfmov rbp, [r12+464]
00218fd7mov rax, [rbp+96]
00218fdblea rdi, [rax+24]
00218fdfcall fn_2173a0
00218fe4cmp rax, 1
00218fe8je 0x219009
00218feamov rax, [rbp+96]
00218feelea rdi, [rax+24]
00218ff2call fn_2173a0
00218ff7mov rax, [rax]
00218ffasar rax, 1
00218ffdtest eax, eax
00218fffje 0x2191ee
00219005mov rdi, rbp
00219008call fn_217aa0
0021900dtest al, al
0021900fje 0x2191e9
00219015movsd_xmm x5, [rsp]
0021901aucomisd x5, [rip+0x117e2]
00219022jp 0x219190
00219028pxor x0, x0
0021902cjne 0x219190
00219032call caml_copy_double
00219037xor esi, esi
00219039mov edi, 9
0021903exor r13l, r13l
00219041mov [rsp+40], rax
00219046call caml_alloc_shr
0021904bmov esi, 1
00219050mov rdi, rax
00219053mov rbx, rax
00219056call caml_initialize
0021905bmov rsi, [rsp+24]
00219060lea rdi, [rbx+8]
00219064lea r15, [rbx+32]
00219068call caml_initialize
0021906dmov rsi, [rsp+40]
00219072lea rdi, [rbx+16]
00219076call caml_initialize
0021907bmov rsi, [rsp+16]
00219080lea rdi, [rbx+24]
00219084call caml_initialize
00219089mov rdx, [rsp+8]
0021908elea rdi, [r15+r13]
00219092add rdx, r13
00219095add r13, 8
00219099mov rsi, [rdx]
0021909ccall caml_initialize
002190a1cmp r13, 40
002190a5jne 0x21908d
002190a7mov rax, [rbp+88]
002190abmov [rbp+64], rbx
002190aftest rax, rax
002190b2je 0x2191d0
002190b8nop [rax]
002190bcmov [rax+80], rbx
002190c0
002190c0loc_2190c0:
002190c0mov rax, [rax+96]
002190c4test rax, rax
002190c7jne 0x2190c0
002190c9mov rax, [rbp+64]
002190cdmov [rbp+1656], 64
002190d7cmp rax, 1
002190dbje 0x2190f3
002190ddmov rax, [rax+16]
002190e1movsd_xmm x0, [rip+0x1176b]
002190e9ucomisd x0, [rax]
002190edjbe 0x219160
002190efmov rax, [rip+0x5ceee]
002190f6mov rdi, [rax]
002190facall caml_memprof_set_trigger
002190ffmov rax, [rip+0x5cede]
00219106mov rdi, [rax]
0021910acall caml_reset_young_limit
0021910fmov rdi, rbp
00219112call fn_217760
00219117mov rdi, rbp
0021911acall fn_2170b0
0021911fmov [r12+160], r14
00219127mov rax, [rsp+184]
0021912fsub rax, [0x28]
00219138jne 0x2191e4
0021913eadd rsp, 200
00219145mov rax, rbx
00219148pop rbx
00219149pop rbp
0021914apop r12
0021914cpop r13
0021914epop r14
00219150pop r15
00219152ret
00219153db 0x5e
00219154pop r15
00219156ret
00219157
00219157 66 0f 1f 84 00 00 00 00 00 f........
00219160
00219160loc_219160:
00219160mov rdi, rbp
00219163call fn_216ba0
00219168mov eax, [rbp+1656]
0021916elea edx, [rax+1]
00219171mov [rbp+1656], edx
00219177mov rax, [rbp+8*rax+1144]
0021917fsub rax, 1
00219183mov [rbp+1664], rax
0021918ajmp 0x2190f3
0021918f
0021918f 90 .
00219190
00219190loc_219190:
00219190movsd_xmm x0, [rsp]
00219195xorpd x0, [rip+0x10e93]
0021919dcall caml_log1p
002191a2movapd x1, x0
002191a6movsd_xmm x0, [rip+0x1165a]
002191aedivsd x0, x1
002191b2pxor x1, x1
002191b6comisd x1, x0
002191bajae 0x219036
002191c0movsd_xmm x0, [rip+0x11698]
002191c8jmp 0x219036
002191cd
002191cd 0f 1f 00 ...
002191d0
002191d0loc_2191d0:
002191d0mov rax, rbx
002191d3jmp 0x2190d1
002191d8
002191d8loc_2191d8:
002191d8lea rdi, [rip+0x16052]
002191dfcall caml_invalid_argument
002191e4
002191e4loc_2191e4:
002191e4call fn_f4590
002191e9
002191e9loc_2191e9:
002191e9call caml_raise_out_of_memory
002191ee
002191eeloc_2191ee:
002191eelea rdi, [rip+0x17b2b]
002191f5call caml_failwith
00218ee0
002191fa
002191fa // align 0x10
002191fa // align 0x10
00219200
00219200caml_memprof_stop:
00219200push r15
00219202push r14
00219204push r13
00219206push r12
00219208push rbp
00219209push rbx
0021920asub rsp, 8
0021920emov r12, [rip+0x5cdcf]
00219215mov rax, [r12]
0021921amov rbx, [rax+464]
00219221mov rbp, [rbx+96]
00219225cmp [rbp], 0
00219229lea r13, [rbp+24]
0021922djne 0x219280
0021922fmov [rbp], 1
00219233mov rdi, [rbx]
00219236lea r13, [rbp+24]
0021923acall caml_memprof_set_trigger
0021923fmov rdi, [rbx]
00219242call caml_reset_young_limit
00219247mov rsi, r13
0021924amov rdi, rbp
0021924dcall fn_217ce0
00219252mov rdi, rbx
00219255mov r14, rax
00219258mov rax, [rbx+96]
0021925cmov r15, rdx
0021925fmov [rax], 0
00219262call fn_2170b0
00219267mov rdi, [rbx]
0021926acall caml_memprof_set_trigger
0021926fmov rdi, [rbx]
00219272call caml_reset_young_limit
00219277test r14l, r14l
0021927ajne 0x2192cd
0021927cmov rdi, r13
0021927fcall fn_2173a0
00219284mov rdi, rax
00219287cmp rax, 1
0021928bje 0x2192d5
0021928dmov rax, [rax]
00219290sar rax, 1
00219293test eax, eax
00219295jne 0x2192d5
00219297mov esi, 3
0021929ccall caml_modify
002192a1mov rdi, [r12]
002192a6call caml_memprof_set_trigger
002192abmov rdi, [r12]
002192b0call caml_reset_young_limit
002192b5add rsp, 8
002192b9mov eax, 1
002192bepop rbx
002192bfpop rbp
002192c0pop r12
002192c2pop r13
002192c4pop r14
002192c6pop r15
002192c8ret
002192c9mov rdi, r15
002192cccall caml_raise
002192d1lea rdi, [rip+0x17a6c]
002192d8call caml_failwith
002192dddb 0xdf
002192dedb 0xd6
002192dfdb 0xfe
002192e0db 0xff
00219200
00219200caml_memprof_stop:
00219200push r15
00219202push r14
00219204push r13
00219206push r12
00219208push rbp
00219209push rbx
0021920asub rsp, 8
0021920emov r12, [rip+0x5cdcf]
00219215mov rax, [r12]
0021921amov rbx, [rax+464]
00219221mov rbp, [rbx+96]
00219225cmp [rbp], 0
00219229lea r13, [rbp+24]
0021922djne 0x219280
0021922fmov [rbp], 1
00219233mov rdi, [rbx]
00219236lea r13, [rbp+24]
0021923acall caml_memprof_set_trigger
0021923fmov rdi, [rbx]
00219242call caml_reset_young_limit
00219247mov rsi, r13
0021924amov rdi, rbp
0021924dcall fn_217ce0
00219252mov rdi, rbx
00219255mov r14, rax
00219258mov rax, [rbx+96]
0021925cmov r15, rdx
0021925fmov [rax], 0
00219262call fn_2170b0
00219267mov rdi, [rbx]
0021926acall caml_memprof_set_trigger
0021926fmov rdi, [rbx]
00219272call caml_reset_young_limit
00219277test r14l, r14l
0021927ajne 0x2192cd
0021927cmov rdi, r13
0021927fcall fn_2173a0
00219284mov rdi, rax
00219287cmp rax, 1
0021928bje 0x2192d5
0021928dmov rax, [rax]
00219290sar rax, 1
00219293test eax, eax
00219295jne 0x2192d5
00219297mov esi, 3
0021929ccall caml_modify
002192a1mov rdi, [r12]
002192a6call caml_memprof_set_trigger
002192abmov rdi, [r12]
002192b0call caml_reset_young_limit
002192b5add rsp, 8
002192b9mov eax, 1
002192bepop rbx
002192bfpop rbp
002192c0pop r12
002192c2pop r13
002192c4pop r14
002192c6pop r15
002192c8ret
002192c9mov rdi, r15
002192cccall caml_raise
002192d1lea rdi, [rip+0x17a6c]
002192d8call caml_failwith
002192dddb 0xdf
002192dedb 0xd6
002192dfdb 0xfe
002192e0db 0xff
00219200
002192e1
002192e1 // align 0x10
002192e1 // align 0x10
002192f0
002192f0caml_memprof_discard:
002192f0sub rsp, 8
002192f4mov rax, [rdi]
002192f7sar rax, 1
002192fatest eax, eax
002192fcje 0x21931b
002192fecmp eax, 2
00219301je 0x219327
00219303mov esi, 5
00219308call caml_modify
0021930dmov eax, 1
00219312add rsp, 8
00219316ret
00219317lea rdi, [rip+0x17a4e]
0021931ecall caml_failwith
00219323lea rdi, [rip+0x17a72]
0021932acall caml_failwith
0021932fdb 0x8d
00219330db 0xd6
00219331db 0xfe
00219332db 0xff
002192f0
002192f0caml_memprof_discard:
002192f0sub rsp, 8
002192f4mov rax, [rdi]
002192f7sar rax, 1
002192fatest eax, eax
002192fcje 0x21931b
002192fecmp eax, 2
00219301je 0x219327
00219303mov esi, 5
00219308call caml_modify
0021930dmov eax, 1
00219312add rsp, 8
00219316ret
00219317lea rdi, [rip+0x17a4e]
0021931ecall caml_failwith
00219323lea rdi, [rip+0x17a72]
0021932acall caml_failwith
0021932fdb 0x8d
00219330db 0xd6
00219331db 0xfe
00219332db 0xff
002192f0
00219333
00219333 // align 0x10
00219333 // align 0x10
00219340
00219340fn_219340:
00219340push r14
00219342push r13
00219344push r12
00219346push rbp
00219347mov rbp, rsi
0021934apush rbx
0021934bmov rax, [rdi]
0021934emov rbx, rdi
00219351test rax, rax
00219354je 0x219440
0021935amov r12, rcx
0021935dmov rcx, [rdi+16]
00219361cmp [rdi+32], rcx
00219365je 0x219408
0021936bmov r14, [rdi+24]
0021936fmov r13, r9
00219372sub r14, rax
00219375mov rax, [rdi+40]
00219379lea r12, [rax+rax]
0021937dmov [rdi+40], r12
00219381add r12, [rdi+48]
00219385mov edi, 8
0021938aimul r12, rsi
0021938emov rsi, r8
00219391test r12, r12
00219394lea rdx, [r12+1023]
0021939ccmovns rdx, r12
002193a0xor eax, eax
002193a2sar rdx, 10
002193a6call caml_gc_message
002193abmov rdi, [rbx]
002193aemov rsi, r12
002193b1call caml_stat_resize_noexc
002193b6mov [rbx], rax
002193b9test rax, rax
002193bcje 0x2194bc
002193c2movdqu x0, [rbx+40]
002193c7movdqa x1, x0
002193cbpsrldq x1, 8
002193d0paddq x0, x1
002193d4movq rdx, x0
002193d9imul rdx, rbp
002193ddimul rbp, [rbx+40]
002193e2add rdx, rax
002193e5add rbp, rax
002193e8add rax, r14
002193ebmov [rbx+8], rdx
002193efmov [rbx+16], rbp
002193f3mov [rbx+24], rax
002193f7mov [rbx+32], rdx
002193fbpop rbx
002193fcpop rbp
002193fdpop r12
002193ffpop r13
00219401pop r14
00219403ret
00219404
00219404 0f 1f 40 00 ..@.
00219408
00219408loc_219408:
00219408mov edi, edx
0021940amov esi, 1
0021940fcall caml_ev_counter
00219414mov rsi, r12
00219417xor eax, eax
00219419xor edx, edx
0021941bmov edi, 8
00219420call caml_gc_message
00219425mov rax, [rbx+8]
00219429mov [rbx+32], rax
0021942dpop rbx
0021942epop rbp
0021942fpop r12
00219431pop r13
00219433pop r14
00219435jmp 0x21fcd0
0021943a
0021943a 66 0f 1f 44 00 00 f..D..
00219440
00219440loc_219440:
00219440mov rax, [rip+0x5cba1]
00219447mov rax, [rax]
0021944bmov rdi, [rax+272]
00219452mov [rbx+48], 256
0021945ashr rdi, 3
0021945emov [rbx+40], rdi
00219462add rdi, 256
00219469imul rdi, rsi
0021946dcall caml_stat_alloc_noexc
00219472mov r12, rax
00219475test rax, rax
00219478je 0x2194cb
0021947amov rdi, [rbx]
0021947dtest rdi, rdi
00219480je 0x219487
00219482call caml_stat_free
00219487
00219487loc_219487:
00219487mov rax, [rbx+40]
0021948bmov rdx, rbp
0021948emov [rbx], r12
00219491mov [rbx+24], r12
00219495imul rdx, rax
00219499add rax, [rbx+48]
0021949dimul rax, rbp
002194a1add rdx, r12
002194a4add r12, rax
002194a7mov [rbx+16], rdx
002194abmov [rbx+32], rdx
002194afmov [rbx+8], r12
002194b3pop rbx
002194b4pop rbp
002194b5pop r12
002194b7pop r13
002194b9pop r14
002194bbret
002194bc
002194bcloc_2194bc:
002194bcmov rsi, r13
002194bflea rdi, [rip+0x15a84]
002194c6call caml_fatal_error
002194cb
002194cbloc_2194cb:
002194cblea rdi, [rip+0x15d70]
002194d2xor eax, eax
002194d4call caml_fatal_error
00219340
00219340fn_219340:
00219340push r14
00219342push r13
00219344push r12
00219346push rbp
00219347mov rbp, rsi
0021934apush rbx
0021934bmov rax, [rdi]
0021934emov rbx, rdi
00219351test rax, rax
00219354je 0x219440
0021935amov r12, rcx
0021935dmov rcx, [rdi+16]
00219361cmp [rdi+32], rcx
00219365je 0x219408
0021936bmov r14, [rdi+24]
0021936fmov r13, r9
00219372sub r14, rax
00219375mov rax, [rdi+40]
00219379lea r12, [rax+rax]
0021937dmov [rdi+40], r12
00219381add r12, [rdi+48]
00219385mov edi, 8
0021938aimul r12, rsi
0021938emov rsi, r8
00219391test r12, r12
00219394lea rdx, [r12+1023]
0021939ccmovns rdx, r12
002193a0xor eax, eax
002193a2sar rdx, 10
002193a6call caml_gc_message
002193abmov rdi, [rbx]
002193aemov rsi, r12
002193b1call caml_stat_resize_noexc
002193b6mov [rbx], rax
002193b9test rax, rax
002193bcje 0x2194bc
002193c2movdqu x0, [rbx+40]
002193c7movdqa x1, x0
002193cbpsrldq x1, 8
002193d0paddq x0, x1
002193d4movq rdx, x0
002193d9imul rdx, rbp
002193ddimul rbp, [rbx+40]
002193e2add rdx, rax
002193e5add rbp, rax
002193e8add rax, r14
002193ebmov [rbx+8], rdx
002193efmov [rbx+16], rbp
002193f3mov [rbx+24], rax
002193f7mov [rbx+32], rdx
002193fbpop rbx
002193fcpop rbp
002193fdpop r12
002193ffpop r13
00219401pop r14
00219403ret
00219404
00219404 0f 1f 40 00 ..@.
00219408
00219408loc_219408:
00219408mov edi, edx
0021940amov esi, 1
0021940fcall caml_ev_counter
00219414mov rsi, r12
00219417xor eax, eax
00219419xor edx, edx
0021941bmov edi, 8
00219420call caml_gc_message
00219425mov rax, [rbx+8]
00219429mov [rbx+32], rax
0021942dpop rbx
0021942epop rbp
0021942fpop r12
00219431pop r13
00219433pop r14
00219435jmp 0x21fcd0
0021943a
0021943a 66 0f 1f 44 00 00 f..D..
00219440
00219440loc_219440:
00219440mov rax, [rip+0x5cba1]
00219447mov rax, [rax]
0021944bmov rdi, [rax+272]
00219452mov [rbx+48], 256
0021945ashr rdi, 3
0021945emov [rbx+40], rdi
00219462add rdi, 256
00219469imul rdi, rsi
0021946dcall caml_stat_alloc_noexc
00219472mov r12, rax
00219475test rax, rax
00219478je 0x2194cb
0021947amov rdi, [rbx]
0021947dtest rdi, rdi
00219480je 0x219487
00219482call caml_stat_free
00219487
00219487loc_219487:
00219487mov rax, [rbx+40]
0021948bmov rdx, rbp
0021948emov [rbx], r12
00219491mov [rbx+24], r12
00219495imul rdx, rax
00219499add rax, [rbx+48]
0021949dimul rax, rbp
002194a1add rdx, r12
002194a4add r12, rax
002194a7mov [rbx+16], rdx
002194abmov [rbx+32], rdx
002194afmov [rbx+8], r12
002194b3pop rbx
002194b4pop rbp
002194b5pop r12
002194b7pop r13
002194b9pop r14
002194bbret
002194bc
002194bcloc_2194bc:
002194bcmov rsi, r13
002194bflea rdi, [rip+0x15a84]
002194c6call caml_fatal_error
002194cb
002194cbloc_2194cb:
002194cblea rdi, [rip+0x15d70]
002194d2xor eax, eax
002194d4call caml_fatal_error
00219340
002194d9
002194d9 // align 0x10
002194d9 // align 0x10
002194e0
002194e0caml_empty_minor_heap_setup:
002194e0mov rax, [rip+0x15f70d]
002194e7add rax, 1
002194ebmov [rip+0x15f702], rax
002194f2mov [rip+0x15f710], 1
002194fcmov [rip+0x15f70d], 0
00219507ret
00219508db 0x00
00219509add [rax], al
0021950bret
002194e0
002194e0caml_empty_minor_heap_setup:
002194e0mov rax, [rip+0x15f70d]
002194e7add rax, 1
002194ebmov [rip+0x15f702], rax
002194f2mov [rip+0x15f710], 1
002194fcmov [rip+0x15f70d], 0
00219507ret
00219508db 0x00
00219509add [rax], al
0021950bret
002194e0
0021950c
0021950c // align 0x10
0021950c // align 0x10
00219510
00219510caml_do_opportunistic_major_slice:
00219510push rbx
00219511call caml_opportunistic_major_work_available
00219516mov ebx, eax
00219518test eax, eax
0021951ajne 0x219528
0021951cmov eax, ebx
0021951epop rbx
0021951fret
00219520db 0x89
00219521fcomp [rbx-61]
00219524
00219524 0f 1f 40 00 ..@.
00219528
00219528loc_219528:
00219528mov rax, [rip+0x15f701]
0021952ftest al, 64
00219531jne 0x219548
00219533mov edi, 512
00219538call caml_opportunistic_major_collection_slice
0021953dmov eax, ebx
0021953fpop rbx
00219540ret
00219541
00219541 0f 1f 80 00 00 00 00 .......
00219548
00219548loc_219548:
00219548mov edi, 26
0021954dcall caml_ev_begin
00219552mov edi, 512
00219557call caml_opportunistic_major_collection_slice
0021955cmov edi, 26
00219561call caml_ev_end
00219566mov eax, ebx
00219568pop rbx
00219569ret
00219510
00219510caml_do_opportunistic_major_slice:
00219510push rbx
00219511call caml_opportunistic_major_work_available
00219516mov ebx, eax
00219518test eax, eax
0021951ajne 0x219528
0021951cmov eax, ebx
0021951epop rbx
0021951fret
00219520db 0x89
00219521fcomp [rbx-61]
00219524
00219524 0f 1f 40 00 ..@.
00219528
00219528loc_219528:
00219528mov rax, [rip+0x15f701]
0021952ftest al, 64
00219531jne 0x219548
00219533mov edi, 512
00219538call caml_opportunistic_major_collection_slice
0021953dmov eax, ebx
0021953fpop rbx
00219540ret
00219541
00219541 0f 1f 80 00 00 00 00 .......
00219548
00219548loc_219548:
00219548mov edi, 26
0021954dcall caml_ev_begin
00219552mov edi, 512
00219557call caml_opportunistic_major_collection_slice
0021955cmov edi, 26
00219561call caml_ev_end
00219566mov eax, ebx
00219568pop rbx
00219569ret
00219510
0021956a
0021956a // align 0x10
0021956a // align 0x10
00219570
00219570fn_219570:
00219570push r13
00219572push r12
00219574mov r12, rsi
00219577push rbp
00219578mov rbp, rcx
0021957bpush rbx
0021957cmov rbx, rdi
0021957fsub rsp, 8
00219583mov rax, [rip+0x15f056]
0021958acmp rax, 1
0021958ejne 0x2195b0
00219590mov [rdi-8], 0
00219598mov [rdi], rdx
0021959b
0021959bloc_21959b:
0021959badd rdx, rbp
0021959emov [r12], rdx
002195a2add rsp, 8
002195a6pop rbx
002195a7pop rbp
002195a8pop r12
002195aapop r13
002195acret
002195ad
002195ad 0f 1f 00 ...
002195b0
002195b0loc_2195b0:
002195b0mov rax, [rdi-8]
002195b4test rax, rax
002195b7jne 0x2195c0
002195b9mov rdx, [rdi]
002195bcjmp 0x21959b
002195be
002195be 66 90 f.
002195c0
002195c0loc_2195c0:
002195c0lea r13, [rdi-8]
002195c4cmp rax, 256
002195caje 0x2195f0
002195ccmov ecx, 256
002195d1lock cmpxchg [r13], rcx
002195d7jne 0x219628
002195d9mov [rdi], rdx
002195dcmov eax, 1
002195e1mov [rdi-8], 0
002195e9jmp 0x21959b
002195eb
002195eb 0f 1f 44 00 00 ..D..
002195f0
002195f0loc_2195f0:
002195f0xor edi, edi
002195f2jmp 0x219605
002195f4
002195f4 0f 1f 40 00 ..@.
002195f8
002195f8loc_2195f8:
002195f8nop
002195facmp edi, 999
00219600ja 0x219618
00219602add edi, 1
00219605
00219605loc_219605:
00219605mov rax, [r13]
00219609test rax, rax
0021960cjne 0x2195f8
0021960e
0021960eloc_21960e:
0021960emov rdx, [rbx]
00219611xor eax, eax
00219613jmp 0x21959b
00219615
00219615 0f 1f 00 ...
00219618
00219618loc_219618:
00219618lea rsi, [rip+0x5c301]
0021961fcall caml_plat_spin_back_off
00219624mov edi, eax
00219626jmp 0x219605
00219628
00219628loc_219628:
00219628xor edi, edi
0021962ajmp 0x219639
0021962c
0021962cloc_21962c:
0021962cnop
0021962ecmp edi, 999
00219634ja 0x219644
00219636add edi, 1
00219639
00219639loc_219639:
00219639mov rax, [r13]
0021963dtest rax, rax
00219640jne 0x21962c
00219642jmp 0x21960e
00219644
00219644loc_219644:
00219644lea rsi, [rip+0x5c2d5]
0021964bcall caml_plat_spin_back_off
00219650mov edi, eax
00219652jmp 0x219639
00219570
00219570fn_219570:
00219570push r13
00219572push r12
00219574mov r12, rsi
00219577push rbp
00219578mov rbp, rcx
0021957bpush rbx
0021957cmov rbx, rdi
0021957fsub rsp, 8
00219583mov rax, [rip+0x15f056]
0021958acmp rax, 1
0021958ejne 0x2195b0
00219590mov [rdi-8], 0
00219598mov [rdi], rdx
0021959b
0021959bloc_21959b:
0021959badd rdx, rbp
0021959emov [r12], rdx
002195a2add rsp, 8
002195a6pop rbx
002195a7pop rbp
002195a8pop r12
002195aapop r13
002195acret
002195ad
002195ad 0f 1f 00 ...
002195b0
002195b0loc_2195b0:
002195b0mov rax, [rdi-8]
002195b4test rax, rax
002195b7jne 0x2195c0
002195b9mov rdx, [rdi]
002195bcjmp 0x21959b
002195be
002195be 66 90 f.
002195c0
002195c0loc_2195c0:
002195c0lea r13, [rdi-8]
002195c4cmp rax, 256
002195caje 0x2195f0
002195ccmov ecx, 256
002195d1lock cmpxchg [r13], rcx
002195d7jne 0x219628
002195d9mov [rdi], rdx
002195dcmov eax, 1
002195e1mov [rdi-8], 0
002195e9jmp 0x21959b
002195eb
002195eb 0f 1f 44 00 00 ..D..
002195f0
002195f0loc_2195f0:
002195f0xor edi, edi
002195f2jmp 0x219605
002195f4
002195f4 0f 1f 40 00 ..@.
002195f8
002195f8loc_2195f8:
002195f8nop
002195facmp edi, 999
00219600ja 0x219618
00219602add edi, 1
00219605
00219605loc_219605:
00219605mov rax, [r13]
00219609test rax, rax
0021960cjne 0x2195f8
0021960e
0021960eloc_21960e:
0021960emov rdx, [rbx]
00219611xor eax, eax
00219613jmp 0x21959b
00219615
00219615 0f 1f 00 ...
00219618
00219618loc_219618:
00219618lea rsi, [rip+0x5c301]
0021961fcall caml_plat_spin_back_off
00219624mov edi, eax
00219626jmp 0x219605
00219628
00219628loc_219628:
00219628xor edi, edi
0021962ajmp 0x219639
0021962c
0021962cloc_21962c:
0021962cnop
0021962ecmp edi, 999
00219634ja 0x219644
00219636add edi, 1
00219639
00219639loc_219639:
00219639mov rax, [r13]
0021963dtest rax, rax
00219640jne 0x21962c
00219642jmp 0x21960e
00219644
00219644loc_219644:
00219644lea rsi, [rip+0x5c2d5]
0021964bcall caml_plat_spin_back_off
00219650mov edi, eax
00219652jmp 0x219639
00219570
00219654
00219654 // align 0x10
00219654 // align 0x10
00219660
00219660fn_219660:
00219660push r15
00219662mov r15, rdi
00219665push r14
00219667push r13
00219669mov r13, rsi
0021966cpush r12
0021966emov r12, rdx
00219671push rbp
00219672push rbx
00219673sub rsp, 40
00219677and esi, 1
0021967ajne 0x2198c2
00219680cmp r13, [rip+0x15ef3d]
00219687jae 0x2198c2
0021968dcmp [rip+0x15ef38], r13
00219694jae 0x2198c2
0021969axor r14l, r14l
0021969dmov rbx, [r13-8]
002196a1
002196a1loc_2196a1:
002196a1lea rbp, [r13-8]
002196a5cmp rbx, 256
002196acje 0x219710
002196aetest rbx, rbx
002196b1je 0x21972e
002196b3movzx edx, bl
002196b6cmp bl, -7
002196b9je 0x219750
002196bfcmp edx, 245
002196c5je 0x21991a
002196cbcmp edx, 248
002196d1jbe 0x219778
002196d7cmp edx, 250
002196ddja 0x21999d
002196e3mov rbp, [r13]
002196e7test bpl, 1
002196ebje 0x219824
002196f1mov [r12], rbp
002196f5
002196f5loc_2196f5:
002196f5add rsp, 40
002196f9pop rbx
002196fapop rbp
002196fbpop r12
002196fdpop r13
002196ffpop r14
00219701pop r15
00219703ret
00219704db 0x5e
00219705pop r15
00219707ret
00219708
00219708 0f 1f 84 00 00 00 00 00 ........
00219710
00219710loc_219710:
00219710xor edi, edi
00219712jmp 0x219725
00219714
00219714 0f 1f 40 00 ..@.
00219718
00219718loc_219718:
00219718nop
0021971acmp edi, 999
00219720ja 0x219768
00219722add edi, 1
00219725
00219725loc_219725:
00219725mov rax, [rbp]
00219729test rax, rax
0021972cjne 0x219718
0021972e
0021972eloc_21972e:
0021972emov rax, [r13]
00219732add rax, r14
00219735mov [r12], rax
00219739
00219739loc_219739:
00219739add rsp, 40
0021973dpop rbx
0021973epop rbp
0021973fpop r12
00219741pop r13
00219743pop r14
00219745pop r15
00219747ret
00219748
00219748 0f 1f 84 00 00 00 00 00 ........
00219750
00219750loc_219750:
00219750shr rbx, 10
00219754lea r14, [8*rbx]
0021975csub r13, r14
0021975fjmp 0x2196a1
00219764
00219764 0f 1f 40 00 ..@.
00219768
00219768loc_219768:
00219768lea rsi, [rip+0x5c1b1]
0021976fcall caml_plat_spin_back_off
00219774mov edi, eax
00219776jmp 0x219725
00219778
00219778loc_219778:
00219778mov r9, rbx
0021977bmov rbp, [r15+16]
0021977fxor ecx, ecx
00219781shr r9, 10
00219785lea rax, [8*r9+8]
0021978dadd [r15+8], rax
00219791mov rsi, r9
00219794mov rdi, [rbp+280]
0021979bmov [rsp+8], r9
002197a0call caml_shared_try_alloc
002197a5mov r9, [rsp+8]
002197aamov r8, rax
002197admov rax, [rbp+128]
002197b4mov [rsp+24], r9
002197b9lea rax, [r9+rax+1]
002197bemov [rbp+128], rax
002197c5test r8, r8
002197c8je 0x219a81
002197celea rdx, [r8+8]
002197d2mov rcx, r14
002197d5mov rsi, r12
002197d8mov rdi, r13
002197dbmov [rsp+16], r8
002197e0mov rbp, [r13]
002197e4mov [rsp+8], rdx
002197e9call fn_219570
002197eemov r8, [rsp+16]
002197f3test eax, eax
002197f5je 0x219a50
002197fbmov r9, [rsp+24]
00219800mov rdx, [rsp+8]
00219805cmp r9, 1
00219809ja 0x219a6e
0021980fmov r12, rdx
00219812test bpl, 1
00219816jne 0x2196f5
0021981cmov r13, rbp
0021981fjmp 0x219684
00219824
00219824loc_219824:
00219824mov rax, [rbp-8]
00219828lea r14, [rbp-8]
0021982ccmp rax, 256
00219832je 0x2198ca
00219838test rax, rax
0021983bje 0x2198e3
00219841
00219841loc_219841:
00219841movzx eax, [r14]
00219845add eax, 12
00219848cmp al, 9
0021984aja 0x219900
00219850mov edx, 581
00219855bt rdx, rax
00219859jae 0x219900
0021985fshr rbx, 10
00219863mov r14, [r15+16]
00219867xor ecx, ecx
00219869mov edx, 250
0021986elea rax, [8*rbx+8]
00219876add [r15+8], rax
0021987amov esi, 1
0021987fmov rdi, [r14+280]
00219886call caml_shared_try_alloc
0021988badd [r14+128], 2
00219893mov rbx, rax
00219896test rax, rax
00219899je 0x219a81
0021989flea r14, [rax+8]
002198a3xor ecx, ecx
002198a5mov rsi, r12
002198a8mov rdi, r13
002198abmov rdx, r14
002198aecall fn_219570
002198b3test eax, eax
002198b5je 0x219905
002198b7
002198b7loc_2198b7:
002198b7mov r12, r14
002198bamov r13, rbp
002198bdjmp 0x219684
002198c2
002198c2loc_2198c2:
002198c2mov rbp, r13
002198c5jmp 0x2196f5
002198ca
002198caloc_2198ca:
002198caxor edi, edi
002198ccjmp 0x2198db
002198ce
002198celoc_2198ce:
002198cenop
002198d0cmp edi, 999
002198d6ja 0x2198f0
002198d8add edi, 1
002198db
002198dbloc_2198db:
002198dbmov rax, [r14]
002198detest rax, rax
002198e1jne 0x2198ce
002198e3
002198e3loc_2198e3:
002198e3mov r14, [rbp]
002198e7sub r14, 8
002198ebjmp 0x219841
002198f0
002198f0loc_2198f0:
002198f0lea rsi, [rip+0x5c029]
002198f7call caml_plat_spin_back_off
002198fcmov edi, eax
002198fejmp 0x2198db
00219900
00219900loc_219900:
00219900mov r14, r12
00219903jmp 0x2198b7
00219905
00219905loc_219905:
00219905mov rax, [rip+0x15eab4]
0021990cadd rax, 1275
00219912mov [rbx], rax
00219915jmp 0x219739
0021991a
0021991aloc_21991a:
0021991amov r14, [r15+16]
0021991exor ecx, ecx
00219920mov esi, 2
00219925mov rbp, [r13]
00219929mov rdi, [r14+280]
00219930call caml_shared_try_alloc
00219935add [r14+128], 3
0021993dmov rbx, rax
00219940test rax, rax
00219943je 0x219a81
00219949xor ecx, ecx
0021994blea rdx, [rax+8]
0021994fmov rsi, r12
00219952mov rdi, r13
00219955call fn_219570
0021995atest eax, eax
0021995cje 0x219905
0021995emov [rbx+8], rbp
00219962mov rax, [r13+8]
00219966mov [rbx+16], rax
0021996acmp rbp, 1
0021996eje 0x219739
00219974add rsp, 40
00219978lea rcx, [rbp-1]
0021997cmov rdx, r15
0021997fxor r8l, r8l
00219982pop rbx
00219983mov esi, 1
00219988lea rdi, [rip-815]
0021998fpop rbp
00219990pop r12
00219992pop r13
00219994pop r14
00219996pop r15
00219998jmp 0x206e00
0021999d
0021999dloc_21999d:
0021999dmov r14, rbx
002199a0xor ecx, ecx
002199a2shr r14, 10
002199a6lea r8, [8*r14+8]
002199aeadd [r15+8], r8
002199b2mov r15, [r15+16]
002199b6mov rsi, r14
002199b9mov [rsp+8], r8
002199bemov rdi, [r15+280]
002199c5call caml_shared_try_alloc
002199camov rbp, rax
002199cdmov rax, [r15+128]
002199d4lea rax, [r14+rax+1]
002199d9mov [r15+128], rax
002199e0test rbp, rbp
002199e3je 0x219a81
002199e9mov r8, [rsp+8]
002199eemov rcx, rbp
002199f1lea rdx, [rbp+8]
002199f5mov rax, r13
002199f8sub rcx, r13
002199fblea rsi, [r8+r13-8]
00219a00add rcx, 8
00219a04test r14, r14
00219a07je 0x219a1c
00219a09
00219a09loc_219a09:
00219a09mov r8, [rax]
00219a0clea rdi, [rcx+rax]
00219a10add rax, 8
00219a14mov [rdi], r8
00219a17cmp rax, rsi
00219a1ajne 0x219a09
00219a1c
00219a1cloc_219a1c:
00219a1cxor ecx, ecx
00219a1emov rsi, r12
00219a21mov rdi, r13
00219a24call fn_219570
00219a29test eax, eax
00219a2bjne 0x219739
00219a31mov rax, [rip+0x15e988]
00219a38and rbx, -1024
00219a3flea rax, [rax+rbx+251]
00219a47mov [rbp], rax
00219a4bjmp 0x219739
00219a50
00219a50loc_219a50:
00219a50mov rax, [rip+0x15e969]
00219a57and rbx, -1024
00219a5elea rax, [rax+rbx+251]
00219a66mov [r8], rax
00219a69jmp 0x219739
00219a6e
00219a6eloc_219a6e:
00219a6emov [r8+8], rbp
00219a72mov rax, [r15]
00219a75mov [r8+16], rax
00219a79mov [r15], r13
00219a7cjmp 0x219739
00219a81
00219a81loc_219a81:
00219a81lea rdi, [rip+0x17348]
00219a88xor eax, eax
00219a8acall caml_fatal_error
00219660
00219660fn_219660:
00219660push r15
00219662mov r15, rdi
00219665push r14
00219667push r13
00219669mov r13, rsi
0021966cpush r12
0021966emov r12, rdx
00219671push rbp
00219672push rbx
00219673sub rsp, 40
00219677and esi, 1
0021967ajne 0x2198c2
00219680cmp r13, [rip+0x15ef3d]
00219687jae 0x2198c2
0021968dcmp [rip+0x15ef38], r13
00219694jae 0x2198c2
0021969axor r14l, r14l
0021969dmov rbx, [r13-8]
002196a1
002196a1loc_2196a1:
002196a1lea rbp, [r13-8]
002196a5cmp rbx, 256
002196acje 0x219710
002196aetest rbx, rbx
002196b1je 0x21972e
002196b3movzx edx, bl
002196b6cmp bl, -7
002196b9je 0x219750
002196bfcmp edx, 245
002196c5je 0x21991a
002196cbcmp edx, 248
002196d1jbe 0x219778
002196d7cmp edx, 250
002196ddja 0x21999d
002196e3mov rbp, [r13]
002196e7test bpl, 1
002196ebje 0x219824
002196f1mov [r12], rbp
002196f5
002196f5loc_2196f5:
002196f5add rsp, 40
002196f9pop rbx
002196fapop rbp
002196fbpop r12
002196fdpop r13
002196ffpop r14
00219701pop r15
00219703ret
00219704db 0x5e
00219705pop r15
00219707ret
00219708
00219708 0f 1f 84 00 00 00 00 00 ........
00219710
00219710loc_219710:
00219710xor edi, edi
00219712jmp 0x219725
00219714
00219714 0f 1f 40 00 ..@.
00219718
00219718loc_219718:
00219718nop
0021971acmp edi, 999
00219720ja 0x219768
00219722add edi, 1
00219725
00219725loc_219725:
00219725mov rax, [rbp]
00219729test rax, rax
0021972cjne 0x219718
0021972e
0021972eloc_21972e:
0021972emov rax, [r13]
00219732add rax, r14
00219735mov [r12], rax
00219739
00219739loc_219739:
00219739add rsp, 40
0021973dpop rbx
0021973epop rbp
0021973fpop r12
00219741pop r13
00219743pop r14
00219745pop r15
00219747ret
00219748
00219748 0f 1f 84 00 00 00 00 00 ........
00219750
00219750loc_219750:
00219750shr rbx, 10
00219754lea r14, [8*rbx]
0021975csub r13, r14
0021975fjmp 0x2196a1
00219764
00219764 0f 1f 40 00 ..@.
00219768
00219768loc_219768:
00219768lea rsi, [rip+0x5c1b1]
0021976fcall caml_plat_spin_back_off
00219774mov edi, eax
00219776jmp 0x219725
00219778
00219778loc_219778:
00219778mov r9, rbx
0021977bmov rbp, [r15+16]
0021977fxor ecx, ecx
00219781shr r9, 10
00219785lea rax, [8*r9+8]
0021978dadd [r15+8], rax
00219791mov rsi, r9
00219794mov rdi, [rbp+280]
0021979bmov [rsp+8], r9
002197a0call caml_shared_try_alloc
002197a5mov r9, [rsp+8]
002197aamov r8, rax
002197admov rax, [rbp+128]
002197b4mov [rsp+24], r9
002197b9lea rax, [r9+rax+1]
002197bemov [rbp+128], rax
002197c5test r8, r8
002197c8je 0x219a81
002197celea rdx, [r8+8]
002197d2mov rcx, r14
002197d5mov rsi, r12
002197d8mov rdi, r13
002197dbmov [rsp+16], r8
002197e0mov rbp, [r13]
002197e4mov [rsp+8], rdx
002197e9call fn_219570
002197eemov r8, [rsp+16]
002197f3test eax, eax
002197f5je 0x219a50
002197fbmov r9, [rsp+24]
00219800mov rdx, [rsp+8]
00219805cmp r9, 1
00219809ja 0x219a6e
0021980fmov r12, rdx
00219812test bpl, 1
00219816jne 0x2196f5
0021981cmov r13, rbp
0021981fjmp 0x219684
00219824
00219824loc_219824:
00219824mov rax, [rbp-8]
00219828lea r14, [rbp-8]
0021982ccmp rax, 256
00219832je 0x2198ca
00219838test rax, rax
0021983bje 0x2198e3
00219841
00219841loc_219841:
00219841movzx eax, [r14]
00219845add eax, 12
00219848cmp al, 9
0021984aja 0x219900
00219850mov edx, 581
00219855bt rdx, rax
00219859jae 0x219900
0021985fshr rbx, 10
00219863mov r14, [r15+16]
00219867xor ecx, ecx
00219869mov edx, 250
0021986elea rax, [8*rbx+8]
00219876add [r15+8], rax
0021987amov esi, 1
0021987fmov rdi, [r14+280]
00219886call caml_shared_try_alloc
0021988badd [r14+128], 2
00219893mov rbx, rax
00219896test rax, rax
00219899je 0x219a81
0021989flea r14, [rax+8]
002198a3xor ecx, ecx
002198a5mov rsi, r12
002198a8mov rdi, r13
002198abmov rdx, r14
002198aecall fn_219570
002198b3test eax, eax
002198b5je 0x219905
002198b7
002198b7loc_2198b7:
002198b7mov r12, r14
002198bamov r13, rbp
002198bdjmp 0x219684
002198c2
002198c2loc_2198c2:
002198c2mov rbp, r13
002198c5jmp 0x2196f5
002198ca
002198caloc_2198ca:
002198caxor edi, edi
002198ccjmp 0x2198db
002198ce
002198celoc_2198ce:
002198cenop
002198d0cmp edi, 999
002198d6ja 0x2198f0
002198d8add edi, 1
002198db
002198dbloc_2198db:
002198dbmov rax, [r14]
002198detest rax, rax
002198e1jne 0x2198ce
002198e3
002198e3loc_2198e3:
002198e3mov r14, [rbp]
002198e7sub r14, 8
002198ebjmp 0x219841
002198f0
002198f0loc_2198f0:
002198f0lea rsi, [rip+0x5c029]
002198f7call caml_plat_spin_back_off
002198fcmov edi, eax
002198fejmp 0x2198db
00219900
00219900loc_219900:
00219900mov r14, r12
00219903jmp 0x2198b7
00219905
00219905loc_219905:
00219905mov rax, [rip+0x15eab4]
0021990cadd rax, 1275
00219912mov [rbx], rax
00219915jmp 0x219739
0021991a
0021991aloc_21991a:
0021991amov r14, [r15+16]
0021991exor ecx, ecx
00219920mov esi, 2
00219925mov rbp, [r13]
00219929mov rdi, [r14+280]
00219930call caml_shared_try_alloc
00219935add [r14+128], 3
0021993dmov rbx, rax
00219940test rax, rax
00219943je 0x219a81
00219949xor ecx, ecx
0021994blea rdx, [rax+8]
0021994fmov rsi, r12
00219952mov rdi, r13
00219955call fn_219570
0021995atest eax, eax
0021995cje 0x219905
0021995emov [rbx+8], rbp
00219962mov rax, [r13+8]
00219966mov [rbx+16], rax
0021996acmp rbp, 1
0021996eje 0x219739
00219974add rsp, 40
00219978lea rcx, [rbp-1]
0021997cmov rdx, r15
0021997fxor r8l, r8l
00219982pop rbx
00219983mov esi, 1
00219988lea rdi, [rip-815]
0021998fpop rbp
00219990pop r12
00219992pop r13
00219994pop r14
00219996pop r15
00219998jmp 0x206e00
0021999d
0021999dloc_21999d:
0021999dmov r14, rbx
002199a0xor ecx, ecx
002199a2shr r14, 10
002199a6lea r8, [8*r14+8]
002199aeadd [r15+8], r8
002199b2mov r15, [r15+16]
002199b6mov rsi, r14
002199b9mov [rsp+8], r8
002199bemov rdi, [r15+280]
002199c5call caml_shared_try_alloc
002199camov rbp, rax
002199cdmov rax, [r15+128]
002199d4lea rax, [r14+rax+1]
002199d9mov [r15+128], rax
002199e0test rbp, rbp
002199e3je 0x219a81
002199e9mov r8, [rsp+8]
002199eemov rcx, rbp
002199f1lea rdx, [rbp+8]
002199f5mov rax, r13
002199f8sub rcx, r13
002199fblea rsi, [r8+r13-8]
00219a00add rcx, 8
00219a04test r14, r14
00219a07je 0x219a1c
00219a09
00219a09loc_219a09:
00219a09mov r8, [rax]
00219a0clea rdi, [rcx+rax]
00219a10add rax, 8
00219a14mov [rdi], r8
00219a17cmp rax, rsi
00219a1ajne 0x219a09
00219a1c
00219a1cloc_219a1c:
00219a1cxor ecx, ecx
00219a1emov rsi, r12
00219a21mov rdi, r13
00219a24call fn_219570
00219a29test eax, eax
00219a2bjne 0x219739
00219a31mov rax, [rip+0x15e988]
00219a38and rbx, -1024
00219a3flea rax, [rax+rbx+251]
00219a47mov [rbp], rax
00219a4bjmp 0x219739
00219a50
00219a50loc_219a50:
00219a50mov rax, [rip+0x15e969]
00219a57and rbx, -1024
00219a5elea rax, [rax+rbx+251]
00219a66mov [r8], rax
00219a69jmp 0x219739
00219a6e
00219a6eloc_219a6e:
00219a6emov [r8+8], rbp
00219a72mov rax, [r15]
00219a75mov [r8+16], rax
00219a79mov [r15], r13
00219a7cjmp 0x219739
00219a81
00219a81loc_219a81:
00219a81lea rdi, [rip+0x17348]
00219a88xor eax, eax
00219a8acall caml_fatal_error
00219660
00219a8f
00219a8f // align 0x10
00219a8f // align 0x10
00219a90
00219a90fn_219a90:
00219a90push r15
00219a92push r14
00219a94push r13
00219a96mov r13, rdi
00219a99push r12
00219a9bpush rbp
00219a9cpush rbx
00219a9dsub rsp, 40
00219aa1mov rax, [rdi+16]
00219aa5mov r12, [rdi]
00219aa8mov [rsp+4], esi
00219aacmov rax, [rax+96]
00219ab0mov rcx, [rax+56]
00219ab4mov rbp, [rax+80]
00219ab8mov [rsp+8], rcx
00219abdtest r12, r12
00219ac0je 0x219b64
00219ac6nop [rax+rax]
00219ad0
00219ad0loc_219ad0:
00219ad0mov r15, [r12]
00219ad4mov rax, [r15+8]
00219ad8lea r14, [r15+8]
00219adcmov [r13], rax
00219ae0mov rsi, [r15]
00219ae3test sil, 1
00219ae7jne 0x219b00
00219ae9cmp rsi, [rip+0x15ead8]
00219af0jae 0x219b00
00219af2cmp [rip+0x15ead7], rsi
00219af9jb 0x219c60
00219affnop
00219b00
00219b00loc_219b00:
00219b00sub r15, 8
00219b04mov ebx, 1
00219b09jmp 0x219b4b
00219b0b
00219b0b 0f 1f 44 00 00 ..D..
00219b10
00219b10loc_219b10:
00219b10lea rax, [r12+8*rbx]
00219b14mov rsi, [rax]
00219b17test sil, 1
00219b1bjne 0x219b40
00219b1dcmp rsi, [rip+0x15eaa4]
00219b24jae 0x219b40
00219b26cmp [rip+0x15eaa3], rsi
00219b2djb 0x219c50
00219b33nop [rax+rax]
00219b3enop
00219b40
00219b40loc_219b40:
00219b40mov [r14], rsi
00219b43
00219b43loc_219b43:
00219b43add rbx, 1
00219b47add r14, 8
00219b4b
00219b4bloc_219b4b:
00219b4bmov rax, [r15]
00219b4eshr rax, 10
00219b52cmp rbx, rax
00219b55jb 0x219b10
00219b57mov r12, [r13]
00219b5btest r12, r12
00219b5ejne 0x219ad0
00219b64
00219b64loc_219b64:
00219b64mov eax, [rsp+4]
00219b68test eax, eax
00219b6aje 0x219c3d
00219b70mov rax, [rsp+8]
00219b75cmp rax, rbp
00219b78jae 0x219c3d
00219b7e
00219b7eloc_219b7e:
00219b7emov rbx, rax
00219b81xor r15l, r15l
00219b84nop [rax+rax]
00219b8fnop
00219b90
00219b90loc_219b90:
00219b90mov rax, [rbx+8]
00219b94mov rdx, [rbx]
00219b97cmp rax, 1
00219b9blea r14, [rdx+8*rax]
00219b9flea rsi, [rdx+8]
00219ba3cmove r14, rsi
00219ba7mov rax, [r14]
00219baacmp [rip+0x15e89f], rax
00219bb1je 0x219c10
00219bb3test al, 1
00219bb5jne 0x219c10
00219bb7cmp rax, [rip+0x15ea0a]
00219bbejae 0x219c10
00219bc0cmp [rip+0x15ea09], rax
00219bc7jae 0x219c10
00219bc9movzx esi, [rax-8]
00219bcdmov r8, rax
00219bd0lea rdx, [rax-8]
00219bd4xor r12l, r12l
00219bd7cmp sil, -7
00219bdbje 0x219cbf
00219be1
00219be1loc_219be1:
00219be1mov rax, [rdx]
00219be4cmp rax, 256
00219beaje 0x219c70
00219bf0test rax, rax
00219bf3je 0x219c8d
00219bf9mov rsi, [r14]
00219bfcmov rdx, r14
00219bffmov rdi, r13
00219c02call fn_219660
00219c07mov r15l, [rsp+4]
00219c0cnop [rax]
00219c10
00219c10loc_219c10:
00219c10add rbx, 16
00219c14cmp rbx, rbp
00219c17jb 0x219b90
00219c1dtest r15l, r15l
00219c20je 0x219c3d
00219c22mov r12, [r13]
00219c26test r12, r12
00219c29jne 0x219ad0
00219c2fmov rax, [rsp+8]
00219c34cmp rax, rbp
00219c37jb 0x219b7e
00219c3d
00219c3dloc_219c3d:
00219c3dadd rsp, 40
00219c41pop rbx
00219c42pop rbp
00219c43pop r12
00219c45pop r13
00219c47pop r14
00219c49pop r15
00219c4bret
00219c4c
00219c4c 0f 1f 40 00 ..@.
00219c50
00219c50loc_219c50:
00219c50mov rdx, r14
00219c53mov rdi, r13
00219c56call fn_219660
00219c5bjmp 0x219b43
00219c60
00219c60loc_219c60:
00219c60mov rdx, r15
00219c63mov rdi, r13
00219c66call fn_219660
00219c6bjmp 0x219b00
00219c70
00219c70loc_219c70:
00219c70xor edi, edi
00219c72jmp 0x219c85
00219c74
00219c74 0f 1f 40 00 ..@.
00219c78
00219c78loc_219c78:
00219c78nop
00219c7acmp edi, 999
00219c80ja 0x219c9b
00219c82add edi, 1
00219c85
00219c85loc_219c85:
00219c85mov rax, [rdx]
00219c88test rax, rax
00219c8bjne 0x219c78
00219c8d
00219c8dloc_219c8d:
00219c8dmov rax, [r8]
00219c90add rax, r12
00219c93mov [r14], rax
00219c96jmp 0x219c10
00219c9b
00219c9bloc_219c9b:
00219c9blea rsi, [rip+0x5bc7e]
00219ca2mov [rsp+24], rdx
00219ca7mov [rsp+16], r8
00219caccall caml_plat_spin_back_off
00219cb1mov r8, [rsp+16]
00219cb6mov rdx, [rsp+24]
00219cbbmov edi, eax
00219cbdjmp 0x219c85
00219cbf
00219cbfloc_219cbf:
00219cbfmov r9, [rax-8]
00219cc3shr r9, 10
00219cc7lea r12, [8*r9]
00219ccfsub r8, r12
00219cd2lea rdx, [r8-8]
00219cd6jmp 0x219be1
00219a90
00219a90fn_219a90:
00219a90push r15
00219a92push r14
00219a94push r13
00219a96mov r13, rdi
00219a99push r12
00219a9bpush rbp
00219a9cpush rbx
00219a9dsub rsp, 40
00219aa1mov rax, [rdi+16]
00219aa5mov r12, [rdi]
00219aa8mov [rsp+4], esi
00219aacmov rax, [rax+96]
00219ab0mov rcx, [rax+56]
00219ab4mov rbp, [rax+80]
00219ab8mov [rsp+8], rcx
00219abdtest r12, r12
00219ac0je 0x219b64
00219ac6nop [rax+rax]
00219ad0
00219ad0loc_219ad0:
00219ad0mov r15, [r12]
00219ad4mov rax, [r15+8]
00219ad8lea r14, [r15+8]
00219adcmov [r13], rax
00219ae0mov rsi, [r15]
00219ae3test sil, 1
00219ae7jne 0x219b00
00219ae9cmp rsi, [rip+0x15ead8]
00219af0jae 0x219b00
00219af2cmp [rip+0x15ead7], rsi
00219af9jb 0x219c60
00219affnop
00219b00
00219b00loc_219b00:
00219b00sub r15, 8
00219b04mov ebx, 1
00219b09jmp 0x219b4b
00219b0b
00219b0b 0f 1f 44 00 00 ..D..
00219b10
00219b10loc_219b10:
00219b10lea rax, [r12+8*rbx]
00219b14mov rsi, [rax]
00219b17test sil, 1
00219b1bjne 0x219b40
00219b1dcmp rsi, [rip+0x15eaa4]
00219b24jae 0x219b40
00219b26cmp [rip+0x15eaa3], rsi
00219b2djb 0x219c50
00219b33nop [rax+rax]
00219b3enop
00219b40
00219b40loc_219b40:
00219b40mov [r14], rsi
00219b43
00219b43loc_219b43:
00219b43add rbx, 1
00219b47add r14, 8
00219b4b
00219b4bloc_219b4b:
00219b4bmov rax, [r15]
00219b4eshr rax, 10
00219b52cmp rbx, rax
00219b55jb 0x219b10
00219b57mov r12, [r13]
00219b5btest r12, r12
00219b5ejne 0x219ad0
00219b64
00219b64loc_219b64:
00219b64mov eax, [rsp+4]
00219b68test eax, eax
00219b6aje 0x219c3d
00219b70mov rax, [rsp+8]
00219b75cmp rax, rbp
00219b78jae 0x219c3d
00219b7e
00219b7eloc_219b7e:
00219b7emov rbx, rax
00219b81xor r15l, r15l
00219b84nop [rax+rax]
00219b8fnop
00219b90
00219b90loc_219b90:
00219b90mov rax, [rbx+8]
00219b94mov rdx, [rbx]
00219b97cmp rax, 1
00219b9blea r14, [rdx+8*rax]
00219b9flea rsi, [rdx+8]
00219ba3cmove r14, rsi
00219ba7mov rax, [r14]
00219baacmp [rip+0x15e89f], rax
00219bb1je 0x219c10
00219bb3test al, 1
00219bb5jne 0x219c10
00219bb7cmp rax, [rip+0x15ea0a]
00219bbejae 0x219c10
00219bc0cmp [rip+0x15ea09], rax
00219bc7jae 0x219c10
00219bc9movzx esi, [rax-8]
00219bcdmov r8, rax
00219bd0lea rdx, [rax-8]
00219bd4xor r12l, r12l
00219bd7cmp sil, -7
00219bdbje 0x219cbf
00219be1
00219be1loc_219be1:
00219be1mov rax, [rdx]
00219be4cmp rax, 256
00219beaje 0x219c70
00219bf0test rax, rax
00219bf3je 0x219c8d
00219bf9mov rsi, [r14]
00219bfcmov rdx, r14
00219bffmov rdi, r13
00219c02call fn_219660
00219c07mov r15l, [rsp+4]
00219c0cnop [rax]
00219c10
00219c10loc_219c10:
00219c10add rbx, 16
00219c14cmp rbx, rbp
00219c17jb 0x219b90
00219c1dtest r15l, r15l
00219c20je 0x219c3d
00219c22mov r12, [r13]
00219c26test r12, r12
00219c29jne 0x219ad0
00219c2fmov rax, [rsp+8]
00219c34cmp rax, rbp
00219c37jb 0x219b7e
00219c3d
00219c3dloc_219c3d:
00219c3dadd rsp, 40
00219c41pop rbx
00219c42pop rbp
00219c43pop r12
00219c45pop r13
00219c47pop r14
00219c49pop r15
00219c4bret
00219c4c
00219c4c 0f 1f 40 00 ..@.
00219c50
00219c50loc_219c50:
00219c50mov rdx, r14
00219c53mov rdi, r13
00219c56call fn_219660
00219c5bjmp 0x219b43
00219c60
00219c60loc_219c60:
00219c60mov rdx, r15
00219c63mov rdi, r13
00219c66call fn_219660
00219c6bjmp 0x219b00
00219c70
00219c70loc_219c70:
00219c70xor edi, edi
00219c72jmp 0x219c85
00219c74
00219c74 0f 1f 40 00 ..@.
00219c78
00219c78loc_219c78:
00219c78nop
00219c7acmp edi, 999
00219c80ja 0x219c9b
00219c82add edi, 1
00219c85
00219c85loc_219c85:
00219c85mov rax, [rdx]
00219c88test rax, rax
00219c8bjne 0x219c78
00219c8d
00219c8dloc_219c8d:
00219c8dmov rax, [r8]
00219c90add rax, r12
00219c93mov [r14], rax
00219c96jmp 0x219c10
00219c9b
00219c9bloc_219c9b:
00219c9blea rsi, [rip+0x5bc7e]
00219ca2mov [rsp+24], rdx
00219ca7mov [rsp+16], r8
00219caccall caml_plat_spin_back_off
00219cb1mov r8, [rsp+16]
00219cb6mov rdx, [rsp+24]
00219cbbmov edi, eax
00219cbdjmp 0x219c85
00219cbf
00219cbfloc_219cbf:
00219cbfmov r9, [rax-8]
00219cc3shr r9, 10
00219cc7lea r12, [8*r9]
00219ccfsub r8, r12
00219cd2lea rdx, [r8-8]
00219cd6jmp 0x219be1
00219a90
00219cdb
00219cdb // align 0x10
00219cdb // align 0x10
00219ce0
00219ce0caml_alloc_table:
00219ce0push rbp
00219ce1push rbx
00219ce2mov rbx, rdi
00219ce5sub rsp, 8
00219ce9mov [rdi+40], rsi
00219cedadd rsi, rdx
00219cf0mov [rdi+48], rdx
00219cf4lea rdi, [8*rsi]
00219cfccall caml_stat_alloc_noexc
00219d01test rax, rax
00219d04je 0x219d46
00219d06mov rdi, [rbx]
00219d09mov rbp, rax
00219d0ctest rdi, rdi
00219d0fje 0x219d1a
00219d11call caml_stat_free
00219d16mov rax, [rbx+40]
00219d1a
00219d1aloc_219d1a:
00219d1amov [rbx], rbp
00219d1dmov [rbx+24], rbp
00219d21lea rdx, [rbp+8*rax]
00219d26add rax, [rbx+48]
00219d2alea rax, [rbp+8*rax]
00219d2fmov [rbx+16], rdx
00219d33mov [rbx+32], rdx
00219d37mov [rbx+8], rax
00219d3badd rsp, 8
00219d3fpop rbx
00219d40pop rbp
00219d41ret
00219d42lea rdi, [rip+0x154f5]
00219d49xor eax, eax
00219d4bcall caml_fatal_error
00219d50db 0xdc
00219d51adc [rax], al
00219d53db 0x00
00219ce0
00219ce0caml_alloc_table:
00219ce0push rbp
00219ce1push rbx
00219ce2mov rbx, rdi
00219ce5sub rsp, 8
00219ce9mov [rdi+40], rsi
00219cedadd rsi, rdx
00219cf0mov [rdi+48], rdx
00219cf4lea rdi, [8*rsi]
00219cfccall caml_stat_alloc_noexc
00219d01test rax, rax
00219d04je 0x219d46
00219d06mov rdi, [rbx]
00219d09mov rbp, rax
00219d0ctest rdi, rdi
00219d0fje 0x219d1a
00219d11call caml_stat_free
00219d16mov rax, [rbx+40]
00219d1a
00219d1aloc_219d1a:
00219d1amov [rbx], rbp
00219d1dmov [rbx+24], rbp
00219d21lea rdx, [rbp+8*rax]
00219d26add rax, [rbx+48]
00219d2alea rax, [rbp+8*rax]
00219d2fmov [rbx+16], rdx
00219d33mov [rbx+32], rdx
00219d37mov [rbx+8], rax
00219d3badd rsp, 8
00219d3fpop rbx
00219d40pop rbp
00219d41ret
00219d42lea rdi, [rip+0x154f5]
00219d49xor eax, eax
00219d4bcall caml_fatal_error
00219d50db 0xdc
00219d51adc [rax], al
00219d53db 0x00
00219ce0
00219d54
00219d54 // align 0x10
00219d54 // align 0x10
00219d60
00219d60caml_alloc_minor_tables:
00219d60sub rsp, 8
00219d64mov edi, 168
00219d69call caml_stat_alloc_noexc
00219d6emov rdx, rax
00219d71test rax, rax
00219d74je 0x219da8
00219d76lea rdi, [rax+8]
00219d7amov rcx, rax
00219d7dmov [rax], 0
00219d84mov [rax+160], 0
00219d8fand rdi, -8
00219d93xor eax, eax
00219d95sub rcx, rdi
00219d98add ecx, 168
00219d9eshr ecx, 3
00219da1rep stosq [rdi], rax
00219da4mov rax, rdx
00219da7add rsp, 8
00219dabret
00219dacdb 0x83
00219daddb 0xc4
00219daeor bl, al
00219d60
00219d60caml_alloc_minor_tables:
00219d60sub rsp, 8
00219d64mov edi, 168
00219d69call caml_stat_alloc_noexc
00219d6emov rdx, rax
00219d71test rax, rax
00219d74je 0x219da8
00219d76lea rdi, [rax+8]
00219d7amov rcx, rax
00219d7dmov [rax], 0
00219d84mov [rax+160], 0
00219d8fand rdi, -8
00219d93xor eax, eax
00219d95sub rcx, rdi
00219d98add ecx, 168
00219d9eshr ecx, 3
00219da1rep stosq [rdi], rax
00219da4mov rax, rdx
00219da7add rsp, 8
00219dabret
00219dacdb 0x83
00219daddb 0xc4
00219daeor bl, al
00219d60
00219db0
00219db0caml_free_minor_tables:
00219db0pxor x0, x0
00219db4push rbx
00219db5mov rbx, rdi
00219db8movups [rdi+40], x0
00219dbcmov rdi, [rdi]
00219dbftest rdi, rdi
00219dc2je 0x219dcd
00219dc4call caml_stat_free
00219dc9mov rdi, [rbx+56]
00219dcd
00219dcdloc_219dcd:
00219dcdpxor x0, x0
00219dd1mov [rbx+32], 0
00219dd9movups [rbx], x0
00219ddcmovups [rbx+16], x0
00219de0movups [rbx+96], x0
00219de4test rdi, rdi
00219de7je 0x219df2
00219de9call caml_stat_free
00219deemov rdi, [rbx+112]
00219df2
00219df2loc_219df2:
00219df2pxor x0, x0
00219df6mov [rbx+88], 0
00219dfemovups [rbx+56], x0
00219e02movups [rbx+72], x0
00219e06movups [rbx+152], x0
00219e0dtest rdi, rdi
00219e10je 0x219e1b
00219e12call caml_stat_free
00219e17mov [rbx+144], 0
00219e22pxor x0, x0
00219e26mov rdi, rbx
00219e29movups [rbx+112], x0
00219e2dmovups [rbx+128], x0
00219e34pop rbx
00219e35jmp 0x216690
00219e3adb 0x52
00219e3bdb 0xc8
00219e3cdb 0xff
00219e3ddb 0xff
00219db0
00219db0caml_free_minor_tables:
00219db0pxor x0, x0
00219db4push rbx
00219db5mov rbx, rdi
00219db8movups [rdi+40], x0
00219dbcmov rdi, [rdi]
00219dbftest rdi, rdi
00219dc2je 0x219dcd
00219dc4call caml_stat_free
00219dc9mov rdi, [rbx+56]
00219dcd
00219dcdloc_219dcd:
00219dcdpxor x0, x0
00219dd1mov [rbx+32], 0
00219dd9movups [rbx], x0
00219ddcmovups [rbx+16], x0
00219de0movups [rbx+96], x0
00219de4test rdi, rdi
00219de7je 0x219df2
00219de9call caml_stat_free
00219deemov rdi, [rbx+112]
00219df2
00219df2loc_219df2:
00219df2pxor x0, x0
00219df6mov [rbx+88], 0
00219dfemovups [rbx+56], x0
00219e02movups [rbx+72], x0
00219e06movups [rbx+152], x0
00219e0dtest rdi, rdi
00219e10je 0x219e1b
00219e12call caml_stat_free
00219e17mov [rbx+144], 0
00219e22pxor x0, x0
00219e26mov rdi, rbx
00219e29movups [rbx+112], x0
00219e2dmovups [rbx+128], x0
00219e34pop rbx
00219e35jmp 0x216690
00219e3adb 0x52
00219e3bdb 0xc8
00219e3cdb 0xff
00219e3ddb 0xff
00219db0
00219e3e
00219e3e // align 0x10
00219e3e // align 0x10
00219e40
00219e40caml_set_minor_heap_size:
00219e40push rbp
00219e41mov rbp, rdi
00219e44push rbx
00219e45sub rsp, 8
00219e49mov rax, [rip+0x5c194]
00219e50mov rax, [rax]
00219e54mov rbx, [rax+96]
00219e58mov rdx, [rax+24]
00219e5ccmp [rax+8], rdx
00219e60je 0x219e7f
00219e62mov esi, 1
00219e67mov edi, 2
00219e6ccall caml_ev_counter
00219e71call caml_request_minor_gc
00219e76call caml_handle_gc_interrupt
00219e7bmov rdi, rbp
00219e7ecall caml_reallocate_minor_heap
00219e83test eax, eax
00219e85js 0x219f13
00219e8bmov rdi, [rbx]
00219e8epxor x0, x0
00219e92movups [rbx+40], x0
00219e96test rdi, rdi
00219e99je 0x219ea4
00219e9bcall caml_stat_free
00219ea0mov rdi, [rbx+56]
00219ea4
00219ea4loc_219ea4:
00219ea4pxor x0, x0
00219ea8mov [rbx+32], 0
00219eb0movups [rbx], x0
00219eb3movups [rbx+16], x0
00219eb7movups [rbx+96], x0
00219ebbtest rdi, rdi
00219ebeje 0x219ec9
00219ec0call caml_stat_free
00219ec5mov rdi, [rbx+112]
00219ec9
00219ec9loc_219ec9:
00219ec9pxor x0, x0
00219ecdmov [rbx+88], 0
00219ed5movups [rbx+56], x0
00219ed9movups [rbx+72], x0
00219eddmovups [rbx+152], x0
00219ee4test rdi, rdi
00219ee7je 0x219ef2
00219ee9call caml_stat_free
00219eeemov [rbx+144], 0
00219ef9pxor x0, x0
00219efdmovups [rbx+112], x0
00219f01movups [rbx+128], x0
00219f08add rsp, 8
00219f0cpop rbx
00219f0dpop rbp
00219f0eret
00219f0flea rdi, [rip+0x16066]
00219f16xor eax, eax
00219f18call caml_fatal_error
00219f1ddb 0x0f
00219f1esldt [rax]
00219e40
00219e40caml_set_minor_heap_size:
00219e40push rbp
00219e41mov rbp, rdi
00219e44push rbx
00219e45sub rsp, 8
00219e49mov rax, [rip+0x5c194]
00219e50mov rax, [rax]
00219e54mov rbx, [rax+96]
00219e58mov rdx, [rax+24]
00219e5ccmp [rax+8], rdx
00219e60je 0x219e7f
00219e62mov esi, 1
00219e67mov edi, 2
00219e6ccall caml_ev_counter
00219e71call caml_request_minor_gc
00219e76call caml_handle_gc_interrupt
00219e7bmov rdi, rbp
00219e7ecall caml_reallocate_minor_heap
00219e83test eax, eax
00219e85js 0x219f13
00219e8bmov rdi, [rbx]
00219e8epxor x0, x0
00219e92movups [rbx+40], x0
00219e96test rdi, rdi
00219e99je 0x219ea4
00219e9bcall caml_stat_free
00219ea0mov rdi, [rbx+56]
00219ea4
00219ea4loc_219ea4:
00219ea4pxor x0, x0
00219ea8mov [rbx+32], 0
00219eb0movups [rbx], x0
00219eb3movups [rbx+16], x0
00219eb7movups [rbx+96], x0
00219ebbtest rdi, rdi
00219ebeje 0x219ec9
00219ec0call caml_stat_free
00219ec5mov rdi, [rbx+112]
00219ec9
00219ec9loc_219ec9:
00219ec9pxor x0, x0
00219ecdmov [rbx+88], 0
00219ed5movups [rbx+56], x0
00219ed9movups [rbx+72], x0
00219eddmovups [rbx+152], x0
00219ee4test rdi, rdi
00219ee7je 0x219ef2
00219ee9call caml_stat_free
00219eeemov [rbx+144], 0
00219ef9pxor x0, x0
00219efdmovups [rbx+112], x0
00219f01movups [rbx+128], x0
00219f08add rsp, 8
00219f0cpop rbx
00219f0dpop rbp
00219f0eret
00219f0flea rdi, [rip+0x16066]
00219f16xor eax, eax
00219f18call caml_fatal_error
00219f1ddb 0x0f
00219f1esldt [rax]
00219e40
00219f21
00219f21 // align 0x10
00219f21 // align 0x10
00219f30
00219f30caml_get_header_val:
00219f30mov rax, [rdi-8]
00219f34cmp rax, 256
00219f3aje 0x219f48
00219f3cret
00219f3ddb 0x00
00219f3eje 0x219f48
00219f40ret
00219f41
00219f41 0f 1f 80 00 00 00 00 .......
00219f48
00219f48loc_219f48:
00219f48push rbx
00219f49lea rbx, [rdi-8]
00219f4dxor edi, edi
00219f4fjmp 0x219f65
00219f51
00219f51 0f 1f 80 00 00 00 00 .......
00219f58
00219f58loc_219f58:
00219f58nop
00219f5acmp edi, 999
00219f60ja 0x219f70
00219f62add edi, 1
00219f65
00219f65loc_219f65:
00219f65mov rax, [rbx]
00219f68test rax, rax
00219f6bjne 0x219f58
00219f6dpop rbx
00219f6eret
00219f6f
00219f6f 90 .
00219f70
00219f70loc_219f70:
00219f70lea rsi, [rip+0x5b9a9]
00219f77call caml_plat_spin_back_off
00219f7cmov edi, eax
00219f7ejmp 0x219f65
00219f30
00219f30caml_get_header_val:
00219f30mov rax, [rdi-8]
00219f34cmp rax, 256
00219f3aje 0x219f48
00219f3cret
00219f3ddb 0x00
00219f3eje 0x219f48
00219f40ret
00219f41
00219f41 0f 1f 80 00 00 00 00 .......
00219f48
00219f48loc_219f48:
00219f48push rbx
00219f49lea rbx, [rdi-8]
00219f4dxor edi, edi
00219f4fjmp 0x219f65
00219f51
00219f51 0f 1f 80 00 00 00 00 .......
00219f58
00219f58loc_219f58:
00219f58nop
00219f5acmp edi, 999
00219f60ja 0x219f70
00219f62add edi, 1
00219f65
00219f65loc_219f65:
00219f65mov rax, [rbx]
00219f68test rax, rax
00219f6bjne 0x219f58
00219f6dpop rbx
00219f6eret
00219f6f
00219f6f 90 .
00219f70
00219f70loc_219f70:
00219f70lea rsi, [rip+0x5b9a9]
00219f77call caml_plat_spin_back_off
00219f7cmov edi, eax
00219f7ejmp 0x219f65
00219f30
00219f80
00219f80caml_empty_minor_heap_domain_clear:
00219f80push rbp
00219f81mov rbp, rdi
00219f84push rbx
00219f85sub rsp, 8
00219f89mov rbx, [rdi+96]
00219f8dcall caml_final_empty_young
00219f92mov rax, [rbx]
00219f95movq x0, [rbx+112]
00219f9amov [rbx+24], rax
00219f9emov rax, [rbx+16]
00219fa2movhps x0, [rbx+128]
00219fa9movups [rbx+136], x0
00219fb0mov [rbx+32], rax
00219fb4mov rax, [rbx+56]
00219fb8mov [rbx+80], rax
00219fbcmov rax, [rbx+72]
00219fc0mov [rbx+88], rax
00219fc4mov [rbp+320], 0
00219fcfadd rsp, 8
00219fd3pop rbx
00219fd4pop rbp
00219fd5ret
00219fd6db 0x08
00219fd7pop rbx
00219fd8pop rbp
00219fd9ret
00219f80
00219f80caml_empty_minor_heap_domain_clear:
00219f80push rbp
00219f81mov rbp, rdi
00219f84push rbx
00219f85sub rsp, 8
00219f89mov rbx, [rdi+96]
00219f8dcall caml_final_empty_young
00219f92mov rax, [rbx]
00219f95movq x0, [rbx+112]
00219f9amov [rbx+24], rax
00219f9emov rax, [rbx+16]
00219fa2movhps x0, [rbx+128]
00219fa9movups [rbx+136], x0
00219fb0mov [rbx+32], rax
00219fb4mov rax, [rbx+56]
00219fb8mov [rbx+80], rax
00219fbcmov rax, [rbx+72]
00219fc0mov [rbx+88], rax
00219fc4mov [rbp+320], 0
00219fcfadd rsp, 8
00219fd3pop rbx
00219fd4pop rbp
00219fd5ret
00219fd6db 0x08
00219fd7pop rbx
00219fd8pop rbp
00219fd9ret
00219f80
Loading..