File hevea_f46f610a6b0078f4aa208dda361f21de574cc56ad64b32889301afc466d33979.elf
Function:
Loading..
00213760
00213760fn_213760:
00213760push r15
00213762push r14
00213764push r13
00213766push r12
00213768push rbp
00213769push rbx
0021376amov rbx, rdi
0021376dsub rsp, 24
00213771mov r12, [rip+0x62870]
00213778mov rbp, [r12]
0021377d
0021377dloc_21377d:
0021377dtest rbx, rbx
00213780jle 0x21379d
00213782
00213782loc_213782:
00213782cmp [rbp+112], 0
00213787jne 0x21379d
00213789mov rdi, [rbp+104]
0021378dmov rsi, rbx
00213790call fn_213460
00213795mov rbx, rax
00213798test rax, rax
0021379bjg 0x2137b0
0021379d
0021379dloc_21379d:
0021379dadd rsp, 24
002137a1mov rax, rbx
002137a4pop rbx
002137a5pop rbp
002137a6pop r12
002137a8pop r13
002137aapop r14
002137acpop r15
002137aeret
002137af
002137af 90 .
002137b0
002137b0loc_2137b0:
002137b0mov rdi, [rbp+104]
002137b4mov rax, [rdi+40]
002137b8mov rcx, [rdi+32]
002137bccmp rax, rcx
002137bfjae 0x213918
002137c5mov rsi, [rdi+24]
002137c9mov rdx, rax
002137ccshl rdx, 4
002137d0add rdx, rsi
002137d3mov r15, [rdx]
002137d6mov r13, [rdx+8]
002137datest rsi, rsi
002137ddjne 0x21380e
002137dfjmp 0x213992
002137e4
002137e4 66 66 2e 0f 1f 84 00 00 00 00 00 66 ff.........f
002137f0 66 2e 0f 1f 84 00 00 00 00 00 66 0f 1f 44 00 00 f.........f..D..
00213800
00213800loc_213800:
00213800mov rdx, rax
00213803shl rdx, 4
00213807cmp [rsi+rdx], 0
0021380cjne 0x213817
0021380e
0021380eloc_21380e:
0021380eadd rax, 1
00213812cmp rax, rcx
00213815jb 0x213800
00213817
00213817loc_213817:
00213817mov [rdi+40], rax
0021381bshl r15, 3
0021381fxor r14l, r14l
00213822jmp 0x213852
00213824
00213824 66 66 2e 0f 1f 84 00 00 00 00 00 66 ff.........f
00213830 66 2e 0f 1f 84 00 00 00 00 00 66 0f 1f 44 00 00 f.........f..D..
00213840
00213840loc_213840:
00213840add r14l, 1
00213844add r15, 8
00213848cmp r14l, 64
0021384cje 0x21377d
00213852
00213852loc_213852:
00213852bt r13, r14
00213856jae 0x213840
00213858mov rsi, [r15]
0021385btest sil, 1
0021385fjne 0x213840
00213861cmp rsi, [rip+0x164d60]
00213868jae 0x213873
0021386acmp [rip+0x164d5f], rsi
00213871jb 0x213840
00213873
00213873loc_213873:
00213873mov rdi, [rbp+104]
00213877mov rax, [rsi-8]
0021387bcmp al, -7
0021387dje 0x213900
00213883
00213883loc_213883:
00213883mov rdx, rax
00213886and edx, 768
0021388ccmp [rip+0x164b35], rdx
00213893jne 0x213840
00213895mov rdx, [r12]
0021389aadd [rdx+416], 1
002138a2movzx edx, al
002138a5cmp al, -11
002138a7je 0x213974
002138admov ecx, eax
002138aflea r8, [rip+0x164b0a]
002138b6and ecx, 253
002138bccmp ecx, 244
002138c2jne 0x2139b8
002138c8lea rcx, [rsi-8]
002138cclea r8, [rip+0x164aed]
002138d3
002138d3loc_2138d3:
002138d3mov rdx, rax
002138d6and dh, 252
002138d9or rdx, [r8]
002138dclock cmpxchg [rcx], rdx
002138e1jne 0x21399e
002138e7movzx edx, al
002138ea
002138ealoc_2138ea:
002138eacmp edx, 250
002138f0jbe 0x213967
002138f2shr rax, 10
002138f6sub rbx, rax
002138f9jmp 0x213840
002138fe
002138fe 66 90 f.
00213900
00213900loc_213900:
00213900shr rax, 10
00213904shl rax, 3
00213908sub rsi, rax
0021390bmov rax, [rsi-8]
0021390fjmp 0x213883
00213914
00213914 0f 1f 40 00 ..@.
00213918
00213918loc_213918:
00213918lea r13, [rip+0x1651a1]
0021391fmov rdi, r13
00213922call fn_f4710
00213927test eax, eax
00213929jne 0x2139ca
0021392flock add [rip+0x1651c0], 1
00213938xor eax, eax
0021393axchg [rip+0x1651bf], rax
00213941mov rdi, r13
00213944call fn_f47c0
00213949test eax, eax
0021394bjne 0x2139d8
00213951mov [rbp+112], 1
00213959lock sub [rip+0x1651de], 1
00213962jmp 0x213782
00213967
00213967loc_213967:
00213967call fn_2122b0
0021396csub rbx, rax
0021396fjmp 0x213840
00213974
00213974loc_213974:
00213974mov rdi, rsi
00213977mov [rsp+8], rax
0021397ccall caml_darken_cont
00213981mov rax, [rsp+8]
00213986shr rax, 10
0021398asub rbx, rax
0021398djmp 0x213840
00213992
00213992loc_213992:
00213992mov rax, -1
00213999jmp 0x213817
0021399e
0021399eloc_21399e:
0021399emov rax, [rcx]
002139a1mov edx, eax
002139a3and edx, 253
002139a9cmp edx, 244
002139afje 0x2138d3
002139b5movzx edx, al
002139b8
002139b8loc_2139b8:
002139b8mov rcx, rax
002139bband ch, 252
002139beor rcx, [r8]
002139c1mov [rsi-8], rcx
002139c5jmp 0x2138ea
002139ca
002139caloc_2139ca:
002139camov esi, eax
002139cclea rdi, [rip+0x1bb3c]
002139d3call caml_plat_fatal_error
002139d8
002139d8loc_2139d8:
002139d8mov esi, eax
002139dalea rdi, [rip+0x1bb39]
002139e1call caml_plat_fatal_error
00213760
00213760fn_213760:
00213760push r15
00213762push r14
00213764push r13
00213766push r12
00213768push rbp
00213769push rbx
0021376amov rbx, rdi
0021376dsub rsp, 24
00213771mov r12, [rip+0x62870]
00213778mov rbp, [r12]
0021377d
0021377dloc_21377d:
0021377dtest rbx, rbx
00213780jle 0x21379d
00213782
00213782loc_213782:
00213782cmp [rbp+112], 0
00213787jne 0x21379d
00213789mov rdi, [rbp+104]
0021378dmov rsi, rbx
00213790call fn_213460
00213795mov rbx, rax
00213798test rax, rax
0021379bjg 0x2137b0
0021379d
0021379dloc_21379d:
0021379dadd rsp, 24
002137a1mov rax, rbx
002137a4pop rbx
002137a5pop rbp
002137a6pop r12
002137a8pop r13
002137aapop r14
002137acpop r15
002137aeret
002137af
002137af 90 .
002137b0
002137b0loc_2137b0:
002137b0mov rdi, [rbp+104]
002137b4mov rax, [rdi+40]
002137b8mov rcx, [rdi+32]
002137bccmp rax, rcx
002137bfjae 0x213918
002137c5mov rsi, [rdi+24]
002137c9mov rdx, rax
002137ccshl rdx, 4
002137d0add rdx, rsi
002137d3mov r15, [rdx]
002137d6mov r13, [rdx+8]
002137datest rsi, rsi
002137ddjne 0x21380e
002137dfjmp 0x213992
002137e4
002137e4 66 66 2e 0f 1f 84 00 00 00 00 00 66 ff.........f
002137f0 66 2e 0f 1f 84 00 00 00 00 00 66 0f 1f 44 00 00 f.........f..D..
00213800
00213800loc_213800:
00213800mov rdx, rax
00213803shl rdx, 4
00213807cmp [rsi+rdx], 0
0021380cjne 0x213817
0021380e
0021380eloc_21380e:
0021380eadd rax, 1
00213812cmp rax, rcx
00213815jb 0x213800
00213817
00213817loc_213817:
00213817mov [rdi+40], rax
0021381bshl r15, 3
0021381fxor r14l, r14l
00213822jmp 0x213852
00213824
00213824 66 66 2e 0f 1f 84 00 00 00 00 00 66 ff.........f
00213830 66 2e 0f 1f 84 00 00 00 00 00 66 0f 1f 44 00 00 f.........f..D..
00213840
00213840loc_213840:
00213840add r14l, 1
00213844add r15, 8
00213848cmp r14l, 64
0021384cje 0x21377d
00213852
00213852loc_213852:
00213852bt r13, r14
00213856jae 0x213840
00213858mov rsi, [r15]
0021385btest sil, 1
0021385fjne 0x213840
00213861cmp rsi, [rip+0x164d60]
00213868jae 0x213873
0021386acmp [rip+0x164d5f], rsi
00213871jb 0x213840
00213873
00213873loc_213873:
00213873mov rdi, [rbp+104]
00213877mov rax, [rsi-8]
0021387bcmp al, -7
0021387dje 0x213900
00213883
00213883loc_213883:
00213883mov rdx, rax
00213886and edx, 768
0021388ccmp [rip+0x164b35], rdx
00213893jne 0x213840
00213895mov rdx, [r12]
0021389aadd [rdx+416], 1
002138a2movzx edx, al
002138a5cmp al, -11
002138a7je 0x213974
002138admov ecx, eax
002138aflea r8, [rip+0x164b0a]
002138b6and ecx, 253
002138bccmp ecx, 244
002138c2jne 0x2139b8
002138c8lea rcx, [rsi-8]
002138cclea r8, [rip+0x164aed]
002138d3
002138d3loc_2138d3:
002138d3mov rdx, rax
002138d6and dh, 252
002138d9or rdx, [r8]
002138dclock cmpxchg [rcx], rdx
002138e1jne 0x21399e
002138e7movzx edx, al
002138ea
002138ealoc_2138ea:
002138eacmp edx, 250
002138f0jbe 0x213967
002138f2shr rax, 10
002138f6sub rbx, rax
002138f9jmp 0x213840
002138fe
002138fe 66 90 f.
00213900
00213900loc_213900:
00213900shr rax, 10
00213904shl rax, 3
00213908sub rsi, rax
0021390bmov rax, [rsi-8]
0021390fjmp 0x213883
00213914
00213914 0f 1f 40 00 ..@.
00213918
00213918loc_213918:
00213918lea r13, [rip+0x1651a1]
0021391fmov rdi, r13
00213922call fn_f4710
00213927test eax, eax
00213929jne 0x2139ca
0021392flock add [rip+0x1651c0], 1
00213938xor eax, eax
0021393axchg [rip+0x1651bf], rax
00213941mov rdi, r13
00213944call fn_f47c0
00213949test eax, eax
0021394bjne 0x2139d8
00213951mov [rbp+112], 1
00213959lock sub [rip+0x1651de], 1
00213962jmp 0x213782
00213967
00213967loc_213967:
00213967call fn_2122b0
0021396csub rbx, rax
0021396fjmp 0x213840
00213974
00213974loc_213974:
00213974mov rdi, rsi
00213977mov [rsp+8], rax
0021397ccall caml_darken_cont
00213981mov rax, [rsp+8]
00213986shr rax, 10
0021398asub rbx, rax
0021398djmp 0x213840
00213992
00213992loc_213992:
00213992mov rax, -1
00213999jmp 0x213817
0021399e
0021399eloc_21399e:
0021399emov rax, [rcx]
002139a1mov edx, eax
002139a3and edx, 253
002139a9cmp edx, 244
002139afje 0x2138d3
002139b5movzx edx, al
002139b8
002139b8loc_2139b8:
002139b8mov rcx, rax
002139bband ch, 252
002139beor rcx, [r8]
002139c1mov [rsi-8], rcx
002139c5jmp 0x2138ea
002139ca
002139caloc_2139ca:
002139camov esi, eax
002139cclea rdi, [rip+0x1bb3c]
002139d3call caml_plat_fatal_error
002139d8
002139d8loc_2139d8:
002139d8mov esi, eax
002139dalea rdi, [rip+0x1bb39]
002139e1call caml_plat_fatal_error
00213760
002139e6
002139e6 // align 0x10
002139e6 // align 0x10
002139f0
002139f0fn_2139f0:
002139f0push r15
002139f2push r14
002139f4mov r14l, esi
002139f7push r13
002139f9mov r13, rdx
002139fcpush r12
002139fepush rbp
002139ffpush rbx
00213a00mov ebx, ecx
00213a02sub rsp, 88
00213a06mov [rsp+52], r8l
00213a0bmov rbp, [0x28]
00213a14mov [rsp+72], rbp
00213a19mov rbp, [rip+0x625c8]
00213a20mov r15, [rbp]
00213a25mov rax, [r15+416]
00213a2cmov [rsp+24], rax
00213a31cmp ecx, 2
00213a34je 0x2143b2
00213a3amov edx, 1
00213a3fmov esi, 1
00213a44call fn_211a10
00213a49
00213a49loc_213a49:
00213a49mov edi, 27
00213a4ecall caml_ev_begin
00213a53mov [rsp+48], 1
00213a5b
00213a5bloc_213a5b:
00213a5bmov rax, [rip+0x1651fe]
00213a62test rax, rax
00213a65je 0x213a69
00213a67call rax
00213a69
00213a69loc_213a69:
00213a69mov [rsp+16], 0
00213a72cmp [r15+120], 0
00213a77je 0x214250
00213a7d
00213a7dloc_213a7d:
00213a7dxor r12l, r12l
00213a80mov esi, ebx
00213a82mov rax, [r15+112]
00213a86mov rbx, r12
00213a89mov r12l, esi
00213a8cjmp 0x213b17
00213a91
00213a91 0f 1f 80 00 00 00 00 .......
00213a98
00213a98loc_213a98:
00213a98mov rax, [r15+168]
00213a9fmov r11l, [rax+16]
00213aa3test r11l, r11l
00213aa6jne 0x213ed0
00213aac
00213aacloc_213aac:
00213aaccmp [rax], 0
00213ab0jne 0x213f22
00213ab6
00213ab6loc_213ab6:
00213ab6call fn_212ae0
00213abbtest eax, eax
00213abdje 0x213b88
00213ac3
00213ac3loc_213ac3:
00213ac3test r13, r13
00213ac6je 0x213cf0
00213accmov rcx, r13
00213acfmov edx, r14l
00213ad2xor esi, esi
00213ad4mov rdi, r15
00213ad7call fn_212b60
00213adc
00213adcloc_213adc:
00213adcmov rdx, [rbp]
00213ae1cmp r12l, 1
00213ae5je 0x213cd0
00213aeb
00213aebloc_213aeb:
00213aebmov rcx, [rdx+352]
00213af2mov rsi, [rip+0x165017]
00213af9mov rax, [rdx+344]
00213b00sub rax, rsi
00213b03cmp rax, rcx
00213b06cmovl rax, rcx
00213b0atest rax, rax
00213b0djle 0x213ba0
00213b13
00213b13loc_213b13:
00213b13mov rax, [r15+112]
00213b17
00213b17loc_213b17:
00213b17test rax, rax
00213b1aje 0x213c70
00213b20
00213b20loc_213b20:
00213b20cmp r12l, 2
00213b24je 0x213ba0
00213b26
00213b26loc_213b26:
00213b26mov eax, [rip+0x164f34]
00213b2ccmp eax, 1
00213b2fje 0x213d60
00213b35
00213b35loc_213b35:
00213b35cmp eax, 2
00213b38je 0x213d08
00213b3e
00213b3eloc_213b3e:
00213b3ecall fn_212410
00213b43cmp [rip+0x164f16], 2
00213b4aje 0x213a98
00213b50mov rcx, [rip+0x164fa1]
00213b57mov rax, [r15+168]
00213b5ecmp [rax], 0
00213b62je 0x213b6e
00213b64cmp [rax+24], rcx
00213b68jb 0x2140f0
00213b6e
00213b6eloc_213b6e:
00213b6ecmp [rip+0x164eeb], 2
00213b75je 0x213a98
00213b7bcall fn_212ae0
00213b80test eax, eax
00213b82jne 0x213ac3
00213b88
00213b88loc_213b88:
00213b88call fn_212a80
00213b8dtest eax, eax
00213b8fjne 0x213ac3
00213b95nop [rax+rax]
00213ba0
00213ba0loc_213ba0:
00213ba0mov eax, r12l
00213ba3mov r12, rbx
00213ba6mov ebx, eax
00213ba8mov rax, [rip+0x1650a9]
00213baftest rax, rax
00213bb2je 0x213bb6
00213bb4call rax
00213bb6
00213bb6loc_213bb6:
00213bb6mov r10l, [rsp+48]
00213bbbtest r10l, r10l
00213bbejne 0x21437d
00213bc4
00213bc4loc_213bc4:
00213bc4mov rbp, [r15+416]
00213bcbmov rax, [rsp+24]
00213bd0sub rbp, rax
00213bd3cmp ebx, 2
00213bd6je 0x21443c
00213bdcmov eax, [rip+0x164e7e]
00213be2mov ecx, 85
00213be7cmp eax, 2
00213beaja 0x213bf7
00213beclea rdx, [rip+0x1dfb0]
00213bf3movsx ecx, [rdx+rax]
00213bf7
00213bf7loc_213bf7:
00213bf7mov [rsp+8], ecx
00213bfbcall caml_incoming_interrupts_queued
00213c00mov r9, r12
00213c03lea rdi, [rip+0x1d076]
00213c0acmp eax, 1
00213c0dlea rax, [rip+0x1df8c]
00213c14sbb edx, edx
00213c16sub rsp, 8
00213c1amovsx esi, [rax+rbx]
00213c1exor eax, eax
00213c20push rbp
00213c21and edx, 4
00213c24mov r8, [rsp+32]
00213c29mov ecx, [rsp+24]
00213c2dadd edx, 42
00213c30call caml_gc_log
00213c35cmp [rip+0x164e24], 2
00213c3cpop r8
00213c3epop r9
00213c40je 0x2144c3
00213c46
00213c46loc_213c46:
00213c46mov rax, [rsp+72]
00213c4bsub rax, [0x28]
00213c54jne 0x214587
00213c5aadd rsp, 88
00213c5epop rbx
00213c5fpop rbp
00213c60pop r12
00213c62pop r13
00213c64pop r14
00213c66pop r15
00213c68ret
00213c69
00213c69 0f 1f 80 00 00 00 00 .......
00213c70
00213c70loc_213c70:
00213c70mov rdx, [rbp]
00213c75cmp r12l, 1
00213c79je 0x213da8
00213c7fmov rcx, [rdx+352]
00213c86mov rsi, [rip+0x164e83]
00213c8dmov rax, [rdx+344]
00213c94sub rax, rsi
00213c97cmp rax, rcx
00213c9acmovl rax, rcx
00213c9etest rax, rax
00213ca1jg 0x213e20
00213ca7cmp r12l, 2
00213cabje 0x213ba0
00213cb1mov eax, [rip+0x164da9]
00213cb7cmp eax, 1
00213cbajne 0x213b35
00213cc0mov rdx, [rbp]
00213cc5jmp 0x213d6f
00213cca
00213cca 66 0f 1f 44 00 00 f..D..
00213cd0
00213cd0loc_213cd0:
00213cd0mov [rsp+8], rdx
00213cd5call caml_incoming_interrupts_queued
00213cdamov rdx, [rsp+8]
00213cdftest eax, eax
00213ce1je 0x213aeb
00213ce7jmp 0x213ba0
00213cec
00213cec 0f 1f 40 00 ..@.
00213cf0
00213cf0loc_213cf0:
00213cf0xor edx, edx
00213cf2xor esi, esi
00213cf4lea rdi, [rip-4507]
00213cfbcall caml_try_run_on_all_domains
00213d00jmp 0x213adc
00213d05
00213d05 0f 1f 00 ...
00213d08
00213d08loc_213d08:
00213d08mov rdx, [rbp]
00213d0dcmp r12l, 1
00213d11je 0x213e00
00213d17
00213d17loc_213d17:
00213d17mov rcx, [rdx+352]
00213d1emov rsi, [rip+0x164deb]
00213d25mov rax, [rdx+344]
00213d2csub rax, rsi
00213d2fcmp rax, rcx
00213d32cmovl rax, rcx
00213d36test rax, rax
00213d39jle 0x213b3e
00213d3fmov rdi, r15
00213d42call caml_final_update_last
00213d47test eax, eax
00213d49je 0x213b3e
00213d4flock sub [rip+0x164dd0], 1
00213d58jmp 0x213b3e
00213d5d
00213d5d 0f 1f 00 ...
00213d60
00213d60loc_213d60:
00213d60mov rdx, [rbp]
00213d65cmp r12l, 1
00213d69je 0x214207
00213d6f
00213d6floc_213d6f:
00213d6fmov rcx, [rdx+352]
00213d76mov rsi, [rip+0x164d93]
00213d7dmov rax, [rdx+344]
00213d84sub rax, rsi
00213d87cmp rax, rcx
00213d8acmovl rax, rcx
00213d8etest rax, rax
00213d91jg 0x214090
00213d97
00213d97loc_213d97:
00213d97mov eax, [rip+0x164cc3]
00213d9djmp 0x213b35
00213da2
00213da2 66 0f 1f 44 00 00 f..D..
00213da8
00213da8loc_213da8:
00213da8mov [rsp+8], rdx
00213dadcall caml_incoming_interrupts_queued
00213db2mov rdx, [rsp+8]
00213db7test eax, eax
00213db9jne 0x213de3
00213dbbmov rcx, [rdx+352]
00213dc2mov rsi, [rip+0x164d47]
00213dc9mov rax, [rdx+344]
00213dd0sub rax, rsi
00213dd3cmp rax, rcx
00213dd6cmovl rax, rcx
00213ddatest rax, rax
00213dddjg 0x21433f
00213de3
00213de3loc_213de3:
00213de3mov eax, [rip+0x164c77]
00213de9cmp eax, 1
00213decje 0x214202
00213df2cmp eax, 2
00213df5jne 0x213b3e
00213dfb
00213dfbloc_213dfb:
00213dfbmov rdx, [rbp]
00213e00
00213e00loc_213e00:
00213e00mov [rsp+8], rdx
00213e05call caml_incoming_interrupts_queued
00213e0amov rdx, [rsp+8]
00213e0ftest eax, eax
00213e11je 0x213d17
00213e17jmp 0x213b3e
00213e1c
00213e1c 0f 1f 40 00 ..@.
00213e20
00213e20loc_213e20:
00213e20mov eax, [rsp+48]
00213e24test eax, eax
00213e26jne 0x21434b
00213e2ccmp [r15+112], 0
00213e31jne 0x213b20
00213e37
00213e37loc_213e37:
00213e37mov [rsp+8], r13
00213e3cjmp 0x213e98
00213e3e
00213e3e 66 90 f.
00213e40
00213e40loc_213e40:
00213e40mov rcx, [r13+352]
00213e47mov edi, 16384
00213e4cmov rsi, [rip+0x164cbd]
00213e53mov rax, [r13+344]
00213e5asub rax, rsi
00213e5dcmp rax, rcx
00213e60cmovl rax, rcx
00213e64cmp rax, rdi
00213e67cmovle rdi, rax
00213e6bmov r13, rdi
00213e6etest rax, rax
00213e71jle 0x214230
00213e77mov rdi, r13
00213e7acall fn_213760
00213e7fmov rdi, r13
00213e82sub rdi, rax
00213e85add rbx, rdi
00213e88call fn_2119b0
00213e8dcmp [r15+112], 0
00213e92jne 0x214230
00213e98
00213e98loc_213e98:
00213e98mov r13, [rbp]
00213e9dcmp r12l, 1
00213ea1jne 0x213e40
00213ea3call caml_incoming_interrupts_queued
00213ea8test eax, eax
00213eaaje 0x213e40
00213eacmov eax, [rsp+48]
00213eb0mov r13, [rsp+8]
00213eb5test eax, eax
00213eb7je 0x213de3
00213ebdmov edi, 10
00213ec2call caml_ev_end
00213ec7jmp 0x213b26
00213ecc
00213ecc 0f 1f 40 00 ..@.
00213ed0
00213ed0loc_213ed0:
00213ed0mov [rax+16], 0
00213ed7mov rcx, [r15+168]
00213edemov rax, [rcx]
00213ee1test rax, rax
00213ee4je 0x214333
00213eeanop [rax+rax]
00213ef0
00213ef0loc_213ef0:
00213ef0mov rdx, rax
00213ef3mov rax, [rax]
00213ef6test rax, rax
00213ef9jne 0x213ef0
00213efbmov rax, [rcx+8]
00213effmov [rdx], rax
00213f02
00213f02loc_213f02:
00213f02mov rax, [r15+168]
00213f09mov [rax+8], 0
00213f11mov rax, [r15+168]
00213f18cmp [rax], 0
00213f1cje 0x214368
00213f22
00213f22loc_213f22:
00213f22mov edi, 21
00213f27call caml_ev_begin
00213f2cmov rax, [r15+168]
00213f33cmp [rax], 0
00213f37je 0x214051
00213f3dmov [rsp+8], rbx
00213f42mov [rsp+32], r14l
00213f47mov [rsp+40], r13
00213f4cmov r13, r15
00213f4fnop
00213f50
00213f50loc_213f50:
00213f50mov rbx, [rbp]
00213f55cmp r12l, 1
00213f59je 0x214080
00213f5f
00213f5floc_213f5f:
00213f5fmov rdx, [rbx+352]
00213f66mov rcx, [rip+0x164ba3]
00213f6dmov rax, [rbx+344]
00213f74sub rax, rcx
00213f77mov ecx, 16384
00213f7ccmp rax, rdx
00213f7fcmovl rax, rdx
00213f83cmp rax, rcx
00213f86cmovle rcx, rax
00213f8amov r15, rcx
00213f8dtest rax, rax
00213f90jle 0x21403f
00213f96mov rax, [r13+168]
00213f9dmov r14, rcx
00213fa0mov rbx, [rax]
00213fa3test rbx, rbx
00213fa6jne 0x213fc8
00213fa8jmp 0x214026
00213faa
00213faa 66 0f 1f 44 00 00 f..D..
00213fb0
00213fb0loc_213fb0:
00213fb0mov rax, [r13+168]
00213fb7sub r14, 1
00213fbbmov rbx, [rax]
00213fbetest rbx, rbx
00213fc1je 0x214020
00213fc3
00213fc3loc_213fc3:
00213fc3test r14, r14
00213fc6jle 0x214020
00213fc8
00213fc8loc_213fc8:
00213fc8mov rdx, [rbx]
00213fcbmov [rax], rdx
00213fcemov rax, [rbx-8]
00213fd2and eax, 768
00213fd7cmp [rip+0x1643ea], rax
00213fdeje 0x213fb0
00213fe0mov rdi, rbx
00213fe3sub r14, 1
00213fe7call caml_ephe_clean
00213fecmov rax, [r13+168]
00213ff3mov rax, [rax+8]
00213ff7mov [rbx], rax
00213ffamov rax, [r13+168]
00214001mov [rax+8], rbx
00214005mov rax, [rbx-8]
00214009shr rax, 10
0021400dsub r14, rax
00214010mov rax, [r13+168]
00214017mov rbx, [rax]
0021401atest rbx, rbx
0021401djne 0x213fc3
0021401fnop
00214020
00214020loc_214020:
00214020mov rbx, r15
00214023sub rbx, r14
00214026
00214026loc_214026:
00214026mov rdi, rbx
00214029call fn_2119b0
0021402emov rax, [r13+168]
00214035cmp [rax], 0
00214039jne 0x213f50
0021403f
0021403floc_21403f:
0021403fmov r15, r13
00214042mov rbx, [rsp+8]
00214047mov r14l, [rsp+32]
0021404cmov r13, [rsp+40]
00214051
00214051loc_214051:
00214051mov edi, 21
00214056call caml_ev_end
0021405bmov rax, [r15+168]
00214062cmp [rax], 0
00214066jne 0x213ab6
0021406clock sub [rip+0x164ac3], 1
00214075jmp 0x213ab6
0021407a
0021407a 66 0f 1f 44 00 00 f..D..
00214080
00214080loc_214080:
00214080call caml_incoming_interrupts_queued
00214085test eax, eax
00214087je 0x213f5f
0021408djmp 0x21403f
0021408f
0021408f 90 .
00214090
00214090loc_214090:
00214090mov rdi, r15
00214093call caml_final_update_first
00214098test eax, eax
0021409aje 0x213d97
002140a0lock sub [rip+0x164a87], 1
002140a9cmp [r15+112], 0
002140aejne 0x213d97
002140b4mov rcx, [rbp]
002140b9cmp r12l, 1
002140bdje 0x21456b
002140c3
002140c3loc_2140c3:
002140c3mov rdx, [rcx+352]
002140camov rsi, [rip+0x164a3f]
002140d1mov rax, [rcx+344]
002140d8sub rax, rsi
002140dbcmp rax, rdx
002140decmovl rax, rdx
002140e2test rax, rax
002140e5jle 0x213d97
002140ebjmp 0x213b13
002140f0
002140f0loc_2140f0:
002140f0mov rdx, [rbp]
002140f5cmp r12l, 1
002140f9je 0x21438c
002140ff
002140ffloc_2140ff:
002140ffmov rsi, [rdx+352]
00214106mov rdi, [rip+0x164a03]
0021410dmov rax, [rdx+344]
00214114sub rax, rdi
00214117cmp rax, rsi
0021411acmovl rax, rsi
0021411etest rax, rax
00214121jle 0x213b6e
00214127mov edi, 20
0021412cmov [rsp+32], rcx
00214131call caml_ev_begin
00214136mov [rsp+8], rbx
0021413bmov rbx, [rsp+32]
00214140mov [rsp+40], r13
00214145mov [rsp+32], r14l
0021414ajmp 0x2141a7
0021414c
0021414c 0f 1f 40 00 ..@.
00214150
00214150loc_214150:
00214150mov rcx, [r13+352]
00214157mov edi, 16384
0021415cmov rsi, [rip+0x1649ad]
00214163mov rax, [r13+344]
0021416asub rax, rsi
0021416dcmp rax, rcx
00214170cmovl rax, rcx
00214174cmp rax, rdi
00214177cmovle rdi, rax
0021417bmov r13, rdi
0021417etest rax, rax
00214181jle 0x2141ce
00214183xor edx, edx
00214185mov rdi, r13
00214188mov rsi, rbx
0021418bcall fn_213020
00214190mov rdi, r13
00214193mov r14, rax
00214196sub rdi, rax
00214199call fn_2119b0
0021419etest r14, r14
002141a1jg 0x21458c
002141a7
002141a7loc_2141a7:
002141a7mov rax, [r15+168]
002141aecmp [rax], 0
002141b2je 0x2141ce
002141b4cmp [rax+24], rbx
002141b8jae 0x2141ce
002141bamov r13, [rbp]
002141bfcmp r12l, 1
002141c3jne 0x214150
002141c5call caml_incoming_interrupts_queued
002141catest eax, eax
002141ccje 0x214150
002141ce
002141celoc_2141ce:
002141cemov edi, 20
002141d3mov rbx, [rsp+8]
002141d8mov r14l, [rsp+32]
002141ddmov r13, [rsp+40]
002141e2call caml_ev_end
002141e7mov rax, [r15+168]
002141eecmp [rax], 0
002141f2jne 0x213b6e
002141f8call fn_2123b0
002141fdjmp 0x213b6e
00214202
00214202loc_214202:
00214202mov rdx, [rbp]
00214207
00214207loc_214207:
00214207mov [rsp+8], rdx
0021420ccall caml_incoming_interrupts_queued
00214211mov rdx, [rsp+8]
00214216test eax, eax
00214218je 0x213d6f
0021421e
0021421eloc_21421e:
0021421ecmp [rip+0x16483b], 2
00214225jne 0x213b3e
0021422bjmp 0x213dfb
00214230
00214230loc_214230:
00214230mov eax, [rsp+48]
00214234mov r13, [rsp+8]
00214239test eax, eax
0021423bje 0x213b20
00214241
00214241loc_214241:
00214241mov edi, 10
00214246call caml_ev_end
0021424bjmp 0x213b20
00214250
00214250loc_214250:
00214250mov eax, [rsp+48]
00214254test eax, eax
00214256jne 0x214476
0021425c
0021425cloc_21425c:
0021425cxor eax, eax
0021425emov [rsp+8], r14l
00214263mov r14, r15
00214266mov r15, r13
00214269mov r13l, ebx
0021426cmov rbx, rax
0021426fjmp 0x2142d4
00214271
00214271 0f 1f 80 00 00 00 00 .......
00214278
00214278loc_214278:
00214278mov rcx, [r12+352]
00214280mov rsi, [rip+0x164889]
00214287mov rax, [r12+344]
0021428fmov r12l, 16384
00214295sub rax, rsi
00214298cmp rax, rcx
0021429bcmovl rax, rcx
0021429fcmp rax, r12
002142a2cmovle r12, rax
002142a6test rax, rax
002142a9jle 0x2142e8
002142abmov rdi, [r14+280]
002142b2mov rsi, r12
002142b5call caml_sweep
002142basub r12, rax
002142bdmov rdi, r12
002142c0call fn_2119b0
002142c5test r12, r12
002142c8je 0x214320
002142caadd rbx, r12
002142cd
002142cdloc_2142cd:
002142cdcmp [r14+120], 0
002142d2jne 0x2142e8
002142d4
002142d4loc_2142d4:
002142d4mov r12, [rbp]
002142d9cmp r13l, 1
002142ddjne 0x214278
002142dfcall caml_incoming_interrupts_queued
002142e4test eax, eax
002142e6je 0x214278
002142e8
002142e8loc_2142e8:
002142e8mov eax, [rsp+48]
002142ecmov [rsp+16], rbx
002142f1mov ebx, r13l
002142f4mov r13, r15
002142f7mov r15, r14
002142famov r14l, [rsp+8]
002142fftest eax, eax
00214301je 0x213a7d
00214307
00214307loc_214307:
00214307mov edi, 7
0021430ccall caml_ev_end
00214311jmp 0x213a7d
00214316
00214316 66 2e 0f 1f 84 00 00 00 00 00 f.........
00214320
00214320loc_214320:
00214320mov [r14+120], 1
00214328lock sub [rip+0x164817], 1
00214331jmp 0x2142cd
00214333
00214333loc_214333:
00214333mov rax, [rcx+8]
00214337mov [rcx], rax
0021433ajmp 0x213f02
0021433f
0021433floc_21433f:
0021433fmov eax, [rsp+48]
00214343test eax, eax
00214345je 0x214408
0021434b
0021434bloc_21434b:
0021434bmov edi, 10
00214350call caml_ev_begin
00214355cmp [r15+112], 0
0021435aje 0x213e37
00214360jmp 0x214241
00214365
00214365 0f 1f 00 ...
00214368
00214368loc_214368:
00214368lock sub [rip+0x1647c7], 1
00214371mov rax, [r15+168]
00214378jmp 0x213aac
0021437d
0021437dloc_21437d:
0021437dmov edi, 27
00214382call caml_ev_end
00214387jmp 0x213bc4
0021438c
0021438cloc_21438c:
0021438cmov [rsp+32], rdx
00214391mov [rsp+8], rcx
00214396call caml_incoming_interrupts_queued
0021439bmov rcx, [rsp+8]
002143a0mov rdx, [rsp+32]
002143a5test eax, eax
002143a7je 0x2140ff
002143adjmp 0x213b6e
002143b2
002143b2loc_2143b2:
002143b2mov rax, [rip+0x164877]
002143b9test al, 64
002143bbje 0x214418
002143bdxor esi, esi
002143bfmov edx, 1
002143c4call fn_211a10
002143c9cmp [r15+120], 0
002143ceje 0x213a49
002143d4cmp [r15+112], 0
002143d9je 0x213a49
002143df
002143dfloc_2143df:
002143dfmov rax, [rsp+72]
002143e4sub rax, [0x28]
002143edjne 0x214587
002143f3add rsp, 88
002143f7xor edi, edi
002143f9pop rbx
002143fapop rbp
002143fbpop r12
002143fdpop r13
002143ffpop r14
00214401pop r15
00214403jmp 0x2119b0
00214408
00214408loc_214408:
00214408cmp [r15+112], 0
0021440dje 0x213e37
00214413jmp 0x213b26
00214418
00214418loc_214418:
00214418xor edx, edx
0021441axor esi, esi
0021441ccall fn_211a10
00214421cmp [r15+120], 0
00214426je 0x21442f
00214428cmp [r15+112], 0
0021442djne 0x2143df
0021442f
0021442floc_21442f:
0021442fmov [rsp+48], 0
00214437jmp 0x213a5b
0021443c
0021443cloc_21443c:
0021443ccall caml_incoming_interrupts_queued
00214441test eax, eax
00214443jne 0x214490
00214445sub rsp, 8
00214449mov esi, 111
0021444emov r9, r12
00214451xor eax, eax
00214453push rbp
00214454mov r8, [rsp+32]
00214459mov ecx, 85
0021445elea rdi, [rip+0x1c81b]
00214465mov edx, 46
0021446acall caml_gc_log
0021446fpop rsi
00214470pop rdi
00214471jmp 0x213c46
00214476
00214476loc_214476:
00214476mov edi, 7
0021447bcall caml_ev_begin
00214480cmp [r15+120], 0
00214485je 0x21425c
0021448bjmp 0x214307
00214490
00214490loc_214490:
00214490sub rsp, 8
00214494movsx esi, [rip+0x1d707]
0021449bmov r9, r12
0021449exor eax, eax
002144a0push rbp
002144a1mov r8, [rsp+32]
002144a6mov ecx, 85
002144abmov edx, 42
002144b0lea rdi, [rip+0x1c7c9]
002144b7call caml_gc_log
002144bcpop rdx
002144bdpop rcx
002144bejmp 0x213c46
002144c3
002144c3loc_2144c3:
002144c3mov rax, [rip+0x16466e]
002144catest rax, rax
002144cdjne 0x213c46
002144d3mov rax, [rip+0x16464e]
002144datest rax, rax
002144ddjne 0x213c46
002144e3mov rax, [rip+0x1645c6]
002144eatest rax, rax
002144edjne 0x213c46
002144f3mov rax, [rip+0x1645be]
002144fatest rax, rax
002144fdjne 0x213c46
00214503mov eax, [rsp+52]
00214507mov rbx, [rip+0x16455a]
0021450elea rbp, [rsp+68]
00214513mov [rsp+68], eax
00214517test r13, r13
0021451aje 0x21453f
0021451cnop [rax]
00214520
00214520loc_214520:
00214520mov rcx, r13
00214523mov edx, r14l
00214526mov rsi, rbp
00214529mov rdi, r15
0021452ccall fn_2125b0
00214531cmp rbx, [rip+0x164530]
00214538je 0x214520
0021453ajmp 0x213c46
0021453f
0021453floc_21453f:
0021453flea r12, [rip-8086]
00214546nop [rax+rax]
00214550
00214550loc_214550:
00214550xor edx, edx
00214552mov rsi, rbp
00214555mov rdi, r12
00214558call caml_try_run_on_all_domains
0021455dcmp rbx, [rip+0x164504]
00214564je 0x214550
00214566jmp 0x213c46
0021456b
0021456bloc_21456b:
0021456bmov [rsp+8], rcx
00214570call caml_incoming_interrupts_queued
00214575mov rcx, [rsp+8]
0021457atest eax, eax
0021457cje 0x2140c3
00214582jmp 0x21421e
00214587
00214587loc_214587:
00214587call fn_f4590
0021458c
0021458cloc_21458c:
0021458cmov edi, 20
00214591mov [rsp+56], rbx
00214596mov r14l, [rsp+32]
0021459bmov rbx, [rsp+8]
002145a0mov r13, [rsp+40]
002145a5call caml_ev_end
002145aamov rax, [r15+168]
002145b1mov rcx, [rsp+56]
002145b6cmp [rax], 0
002145bajne 0x2145cb
002145bcmov [rsp+8], rcx
002145c1call fn_2123b0
002145c6mov rcx, [rsp+8]
002145cb
002145cbloc_2145cb:
002145cbcmp [r15+112], 0
002145d0je 0x213c70
002145d6mov rax, [rip+0x16451b]
002145ddmov [rsp+8], rcx
002145e2cmp rcx, rax
002145e5jb 0x213b6e
002145eblea rdi, [rip+0x1644ce]
002145f2call fn_f4710
002145f7mov rcx, [rsp+8]
002145fclea rdi, [rip+0x1644bd]
00214603test eax, eax
00214605mov esi, eax
00214607jne 0x21464b
00214609mov rax, [rip+0x1644e8]
00214610cmp rcx, rax
00214613je 0x214630
00214615
00214615loc_214615:
00214615call fn_f47c0
0021461amov esi, eax
0021461ctest eax, eax
0021461eje 0x213b6e
00214624lea rdi, [rip+0x1aeef]
0021462bcall caml_plat_fatal_error
00214630
00214630loc_214630:
00214630mov rax, [rbp]
00214635mov rax, [rax+168]
0021463cmov [rax+24], rcx
00214640lock add [rip+0x1644b7], 1
00214649jmp 0x214615
0021464b
0021464bloc_21464b:
0021464blea rdi, [rip+0x1aebd]
00214652call caml_plat_fatal_error
002139f0
002139f0fn_2139f0:
002139f0push r15
002139f2push r14
002139f4mov r14l, esi
002139f7push r13
002139f9mov r13, rdx
002139fcpush r12
002139fepush rbp
002139ffpush rbx
00213a00mov ebx, ecx
00213a02sub rsp, 88
00213a06mov [rsp+52], r8l
00213a0bmov rbp, [0x28]
00213a14mov [rsp+72], rbp
00213a19mov rbp, [rip+0x625c8]
00213a20mov r15, [rbp]
00213a25mov rax, [r15+416]
00213a2cmov [rsp+24], rax
00213a31cmp ecx, 2
00213a34je 0x2143b2
00213a3amov edx, 1
00213a3fmov esi, 1
00213a44call fn_211a10
00213a49
00213a49loc_213a49:
00213a49mov edi, 27
00213a4ecall caml_ev_begin
00213a53mov [rsp+48], 1
00213a5b
00213a5bloc_213a5b:
00213a5bmov rax, [rip+0x1651fe]
00213a62test rax, rax
00213a65je 0x213a69
00213a67call rax
00213a69
00213a69loc_213a69:
00213a69mov [rsp+16], 0
00213a72cmp [r15+120], 0
00213a77je 0x214250
00213a7d
00213a7dloc_213a7d:
00213a7dxor r12l, r12l
00213a80mov esi, ebx
00213a82mov rax, [r15+112]
00213a86mov rbx, r12
00213a89mov r12l, esi
00213a8cjmp 0x213b17
00213a91
00213a91 0f 1f 80 00 00 00 00 .......
00213a98
00213a98loc_213a98:
00213a98mov rax, [r15+168]
00213a9fmov r11l, [rax+16]
00213aa3test r11l, r11l
00213aa6jne 0x213ed0
00213aac
00213aacloc_213aac:
00213aaccmp [rax], 0
00213ab0jne 0x213f22
00213ab6
00213ab6loc_213ab6:
00213ab6call fn_212ae0
00213abbtest eax, eax
00213abdje 0x213b88
00213ac3
00213ac3loc_213ac3:
00213ac3test r13, r13
00213ac6je 0x213cf0
00213accmov rcx, r13
00213acfmov edx, r14l
00213ad2xor esi, esi
00213ad4mov rdi, r15
00213ad7call fn_212b60
00213adc
00213adcloc_213adc:
00213adcmov rdx, [rbp]
00213ae1cmp r12l, 1
00213ae5je 0x213cd0
00213aeb
00213aebloc_213aeb:
00213aebmov rcx, [rdx+352]
00213af2mov rsi, [rip+0x165017]
00213af9mov rax, [rdx+344]
00213b00sub rax, rsi
00213b03cmp rax, rcx
00213b06cmovl rax, rcx
00213b0atest rax, rax
00213b0djle 0x213ba0
00213b13
00213b13loc_213b13:
00213b13mov rax, [r15+112]
00213b17
00213b17loc_213b17:
00213b17test rax, rax
00213b1aje 0x213c70
00213b20
00213b20loc_213b20:
00213b20cmp r12l, 2
00213b24je 0x213ba0
00213b26
00213b26loc_213b26:
00213b26mov eax, [rip+0x164f34]
00213b2ccmp eax, 1
00213b2fje 0x213d60
00213b35
00213b35loc_213b35:
00213b35cmp eax, 2
00213b38je 0x213d08
00213b3e
00213b3eloc_213b3e:
00213b3ecall fn_212410
00213b43cmp [rip+0x164f16], 2
00213b4aje 0x213a98
00213b50mov rcx, [rip+0x164fa1]
00213b57mov rax, [r15+168]
00213b5ecmp [rax], 0
00213b62je 0x213b6e
00213b64cmp [rax+24], rcx
00213b68jb 0x2140f0
00213b6e
00213b6eloc_213b6e:
00213b6ecmp [rip+0x164eeb], 2
00213b75je 0x213a98
00213b7bcall fn_212ae0
00213b80test eax, eax
00213b82jne 0x213ac3
00213b88
00213b88loc_213b88:
00213b88call fn_212a80
00213b8dtest eax, eax
00213b8fjne 0x213ac3
00213b95nop [rax+rax]
00213ba0
00213ba0loc_213ba0:
00213ba0mov eax, r12l
00213ba3mov r12, rbx
00213ba6mov ebx, eax
00213ba8mov rax, [rip+0x1650a9]
00213baftest rax, rax
00213bb2je 0x213bb6
00213bb4call rax
00213bb6
00213bb6loc_213bb6:
00213bb6mov r10l, [rsp+48]
00213bbbtest r10l, r10l
00213bbejne 0x21437d
00213bc4
00213bc4loc_213bc4:
00213bc4mov rbp, [r15+416]
00213bcbmov rax, [rsp+24]
00213bd0sub rbp, rax
00213bd3cmp ebx, 2
00213bd6je 0x21443c
00213bdcmov eax, [rip+0x164e7e]
00213be2mov ecx, 85
00213be7cmp eax, 2
00213beaja 0x213bf7
00213beclea rdx, [rip+0x1dfb0]
00213bf3movsx ecx, [rdx+rax]
00213bf7
00213bf7loc_213bf7:
00213bf7mov [rsp+8], ecx
00213bfbcall caml_incoming_interrupts_queued
00213c00mov r9, r12
00213c03lea rdi, [rip+0x1d076]
00213c0acmp eax, 1
00213c0dlea rax, [rip+0x1df8c]
00213c14sbb edx, edx
00213c16sub rsp, 8
00213c1amovsx esi, [rax+rbx]
00213c1exor eax, eax
00213c20push rbp
00213c21and edx, 4
00213c24mov r8, [rsp+32]
00213c29mov ecx, [rsp+24]
00213c2dadd edx, 42
00213c30call caml_gc_log
00213c35cmp [rip+0x164e24], 2
00213c3cpop r8
00213c3epop r9
00213c40je 0x2144c3
00213c46
00213c46loc_213c46:
00213c46mov rax, [rsp+72]
00213c4bsub rax, [0x28]
00213c54jne 0x214587
00213c5aadd rsp, 88
00213c5epop rbx
00213c5fpop rbp
00213c60pop r12
00213c62pop r13
00213c64pop r14
00213c66pop r15
00213c68ret
00213c69
00213c69 0f 1f 80 00 00 00 00 .......
00213c70
00213c70loc_213c70:
00213c70mov rdx, [rbp]
00213c75cmp r12l, 1
00213c79je 0x213da8
00213c7fmov rcx, [rdx+352]
00213c86mov rsi, [rip+0x164e83]
00213c8dmov rax, [rdx+344]
00213c94sub rax, rsi
00213c97cmp rax, rcx
00213c9acmovl rax, rcx
00213c9etest rax, rax
00213ca1jg 0x213e20
00213ca7cmp r12l, 2
00213cabje 0x213ba0
00213cb1mov eax, [rip+0x164da9]
00213cb7cmp eax, 1
00213cbajne 0x213b35
00213cc0mov rdx, [rbp]
00213cc5jmp 0x213d6f
00213cca
00213cca 66 0f 1f 44 00 00 f..D..
00213cd0
00213cd0loc_213cd0:
00213cd0mov [rsp+8], rdx
00213cd5call caml_incoming_interrupts_queued
00213cdamov rdx, [rsp+8]
00213cdftest eax, eax
00213ce1je 0x213aeb
00213ce7jmp 0x213ba0
00213cec
00213cec 0f 1f 40 00 ..@.
00213cf0
00213cf0loc_213cf0:
00213cf0xor edx, edx
00213cf2xor esi, esi
00213cf4lea rdi, [rip-4507]
00213cfbcall caml_try_run_on_all_domains
00213d00jmp 0x213adc
00213d05
00213d05 0f 1f 00 ...
00213d08
00213d08loc_213d08:
00213d08mov rdx, [rbp]
00213d0dcmp r12l, 1
00213d11je 0x213e00
00213d17
00213d17loc_213d17:
00213d17mov rcx, [rdx+352]
00213d1emov rsi, [rip+0x164deb]
00213d25mov rax, [rdx+344]
00213d2csub rax, rsi
00213d2fcmp rax, rcx
00213d32cmovl rax, rcx
00213d36test rax, rax
00213d39jle 0x213b3e
00213d3fmov rdi, r15
00213d42call caml_final_update_last
00213d47test eax, eax
00213d49je 0x213b3e
00213d4flock sub [rip+0x164dd0], 1
00213d58jmp 0x213b3e
00213d5d
00213d5d 0f 1f 00 ...
00213d60
00213d60loc_213d60:
00213d60mov rdx, [rbp]
00213d65cmp r12l, 1
00213d69je 0x214207
00213d6f
00213d6floc_213d6f:
00213d6fmov rcx, [rdx+352]
00213d76mov rsi, [rip+0x164d93]
00213d7dmov rax, [rdx+344]
00213d84sub rax, rsi
00213d87cmp rax, rcx
00213d8acmovl rax, rcx
00213d8etest rax, rax
00213d91jg 0x214090
00213d97
00213d97loc_213d97:
00213d97mov eax, [rip+0x164cc3]
00213d9djmp 0x213b35
00213da2
00213da2 66 0f 1f 44 00 00 f..D..
00213da8
00213da8loc_213da8:
00213da8mov [rsp+8], rdx
00213dadcall caml_incoming_interrupts_queued
00213db2mov rdx, [rsp+8]
00213db7test eax, eax
00213db9jne 0x213de3
00213dbbmov rcx, [rdx+352]
00213dc2mov rsi, [rip+0x164d47]
00213dc9mov rax, [rdx+344]
00213dd0sub rax, rsi
00213dd3cmp rax, rcx
00213dd6cmovl rax, rcx
00213ddatest rax, rax
00213dddjg 0x21433f
00213de3
00213de3loc_213de3:
00213de3mov eax, [rip+0x164c77]
00213de9cmp eax, 1
00213decje 0x214202
00213df2cmp eax, 2
00213df5jne 0x213b3e
00213dfb
00213dfbloc_213dfb:
00213dfbmov rdx, [rbp]
00213e00
00213e00loc_213e00:
00213e00mov [rsp+8], rdx
00213e05call caml_incoming_interrupts_queued
00213e0amov rdx, [rsp+8]
00213e0ftest eax, eax
00213e11je 0x213d17
00213e17jmp 0x213b3e
00213e1c
00213e1c 0f 1f 40 00 ..@.
00213e20
00213e20loc_213e20:
00213e20mov eax, [rsp+48]
00213e24test eax, eax
00213e26jne 0x21434b
00213e2ccmp [r15+112], 0
00213e31jne 0x213b20
00213e37
00213e37loc_213e37:
00213e37mov [rsp+8], r13
00213e3cjmp 0x213e98
00213e3e
00213e3e 66 90 f.
00213e40
00213e40loc_213e40:
00213e40mov rcx, [r13+352]
00213e47mov edi, 16384
00213e4cmov rsi, [rip+0x164cbd]
00213e53mov rax, [r13+344]
00213e5asub rax, rsi
00213e5dcmp rax, rcx
00213e60cmovl rax, rcx
00213e64cmp rax, rdi
00213e67cmovle rdi, rax
00213e6bmov r13, rdi
00213e6etest rax, rax
00213e71jle 0x214230
00213e77mov rdi, r13
00213e7acall fn_213760
00213e7fmov rdi, r13
00213e82sub rdi, rax
00213e85add rbx, rdi
00213e88call fn_2119b0
00213e8dcmp [r15+112], 0
00213e92jne 0x214230
00213e98
00213e98loc_213e98:
00213e98mov r13, [rbp]
00213e9dcmp r12l, 1
00213ea1jne 0x213e40
00213ea3call caml_incoming_interrupts_queued
00213ea8test eax, eax
00213eaaje 0x213e40
00213eacmov eax, [rsp+48]
00213eb0mov r13, [rsp+8]
00213eb5test eax, eax
00213eb7je 0x213de3
00213ebdmov edi, 10
00213ec2call caml_ev_end
00213ec7jmp 0x213b26
00213ecc
00213ecc 0f 1f 40 00 ..@.
00213ed0
00213ed0loc_213ed0:
00213ed0mov [rax+16], 0
00213ed7mov rcx, [r15+168]
00213edemov rax, [rcx]
00213ee1test rax, rax
00213ee4je 0x214333
00213eeanop [rax+rax]
00213ef0
00213ef0loc_213ef0:
00213ef0mov rdx, rax
00213ef3mov rax, [rax]
00213ef6test rax, rax
00213ef9jne 0x213ef0
00213efbmov rax, [rcx+8]
00213effmov [rdx], rax
00213f02
00213f02loc_213f02:
00213f02mov rax, [r15+168]
00213f09mov [rax+8], 0
00213f11mov rax, [r15+168]
00213f18cmp [rax], 0
00213f1cje 0x214368
00213f22
00213f22loc_213f22:
00213f22mov edi, 21
00213f27call caml_ev_begin
00213f2cmov rax, [r15+168]
00213f33cmp [rax], 0
00213f37je 0x214051
00213f3dmov [rsp+8], rbx
00213f42mov [rsp+32], r14l
00213f47mov [rsp+40], r13
00213f4cmov r13, r15
00213f4fnop
00213f50
00213f50loc_213f50:
00213f50mov rbx, [rbp]
00213f55cmp r12l, 1
00213f59je 0x214080
00213f5f
00213f5floc_213f5f:
00213f5fmov rdx, [rbx+352]
00213f66mov rcx, [rip+0x164ba3]
00213f6dmov rax, [rbx+344]
00213f74sub rax, rcx
00213f77mov ecx, 16384
00213f7ccmp rax, rdx
00213f7fcmovl rax, rdx
00213f83cmp rax, rcx
00213f86cmovle rcx, rax
00213f8amov r15, rcx
00213f8dtest rax, rax
00213f90jle 0x21403f
00213f96mov rax, [r13+168]
00213f9dmov r14, rcx
00213fa0mov rbx, [rax]
00213fa3test rbx, rbx
00213fa6jne 0x213fc8
00213fa8jmp 0x214026
00213faa
00213faa 66 0f 1f 44 00 00 f..D..
00213fb0
00213fb0loc_213fb0:
00213fb0mov rax, [r13+168]
00213fb7sub r14, 1
00213fbbmov rbx, [rax]
00213fbetest rbx, rbx
00213fc1je 0x214020
00213fc3
00213fc3loc_213fc3:
00213fc3test r14, r14
00213fc6jle 0x214020
00213fc8
00213fc8loc_213fc8:
00213fc8mov rdx, [rbx]
00213fcbmov [rax], rdx
00213fcemov rax, [rbx-8]
00213fd2and eax, 768
00213fd7cmp [rip+0x1643ea], rax
00213fdeje 0x213fb0
00213fe0mov rdi, rbx
00213fe3sub r14, 1
00213fe7call caml_ephe_clean
00213fecmov rax, [r13+168]
00213ff3mov rax, [rax+8]
00213ff7mov [rbx], rax
00213ffamov rax, [r13+168]
00214001mov [rax+8], rbx
00214005mov rax, [rbx-8]
00214009shr rax, 10
0021400dsub r14, rax
00214010mov rax, [r13+168]
00214017mov rbx, [rax]
0021401atest rbx, rbx
0021401djne 0x213fc3
0021401fnop
00214020
00214020loc_214020:
00214020mov rbx, r15
00214023sub rbx, r14
00214026
00214026loc_214026:
00214026mov rdi, rbx
00214029call fn_2119b0
0021402emov rax, [r13+168]
00214035cmp [rax], 0
00214039jne 0x213f50
0021403f
0021403floc_21403f:
0021403fmov r15, r13
00214042mov rbx, [rsp+8]
00214047mov r14l, [rsp+32]
0021404cmov r13, [rsp+40]
00214051
00214051loc_214051:
00214051mov edi, 21
00214056call caml_ev_end
0021405bmov rax, [r15+168]
00214062cmp [rax], 0
00214066jne 0x213ab6
0021406clock sub [rip+0x164ac3], 1
00214075jmp 0x213ab6
0021407a
0021407a 66 0f 1f 44 00 00 f..D..
00214080
00214080loc_214080:
00214080call caml_incoming_interrupts_queued
00214085test eax, eax
00214087je 0x213f5f
0021408djmp 0x21403f
0021408f
0021408f 90 .
00214090
00214090loc_214090:
00214090mov rdi, r15
00214093call caml_final_update_first
00214098test eax, eax
0021409aje 0x213d97
002140a0lock sub [rip+0x164a87], 1
002140a9cmp [r15+112], 0
002140aejne 0x213d97
002140b4mov rcx, [rbp]
002140b9cmp r12l, 1
002140bdje 0x21456b
002140c3
002140c3loc_2140c3:
002140c3mov rdx, [rcx+352]
002140camov rsi, [rip+0x164a3f]
002140d1mov rax, [rcx+344]
002140d8sub rax, rsi
002140dbcmp rax, rdx
002140decmovl rax, rdx
002140e2test rax, rax
002140e5jle 0x213d97
002140ebjmp 0x213b13
002140f0
002140f0loc_2140f0:
002140f0mov rdx, [rbp]
002140f5cmp r12l, 1
002140f9je 0x21438c
002140ff
002140ffloc_2140ff:
002140ffmov rsi, [rdx+352]
00214106mov rdi, [rip+0x164a03]
0021410dmov rax, [rdx+344]
00214114sub rax, rdi
00214117cmp rax, rsi
0021411acmovl rax, rsi
0021411etest rax, rax
00214121jle 0x213b6e
00214127mov edi, 20
0021412cmov [rsp+32], rcx
00214131call caml_ev_begin
00214136mov [rsp+8], rbx
0021413bmov rbx, [rsp+32]
00214140mov [rsp+40], r13
00214145mov [rsp+32], r14l
0021414ajmp 0x2141a7
0021414c
0021414c 0f 1f 40 00 ..@.
00214150
00214150loc_214150:
00214150mov rcx, [r13+352]
00214157mov edi, 16384
0021415cmov rsi, [rip+0x1649ad]
00214163mov rax, [r13+344]
0021416asub rax, rsi
0021416dcmp rax, rcx
00214170cmovl rax, rcx
00214174cmp rax, rdi
00214177cmovle rdi, rax
0021417bmov r13, rdi
0021417etest rax, rax
00214181jle 0x2141ce
00214183xor edx, edx
00214185mov rdi, r13
00214188mov rsi, rbx
0021418bcall fn_213020
00214190mov rdi, r13
00214193mov r14, rax
00214196sub rdi, rax
00214199call fn_2119b0
0021419etest r14, r14
002141a1jg 0x21458c
002141a7
002141a7loc_2141a7:
002141a7mov rax, [r15+168]
002141aecmp [rax], 0
002141b2je 0x2141ce
002141b4cmp [rax+24], rbx
002141b8jae 0x2141ce
002141bamov r13, [rbp]
002141bfcmp r12l, 1
002141c3jne 0x214150
002141c5call caml_incoming_interrupts_queued
002141catest eax, eax
002141ccje 0x214150
002141ce
002141celoc_2141ce:
002141cemov edi, 20
002141d3mov rbx, [rsp+8]
002141d8mov r14l, [rsp+32]
002141ddmov r13, [rsp+40]
002141e2call caml_ev_end
002141e7mov rax, [r15+168]
002141eecmp [rax], 0
002141f2jne 0x213b6e
002141f8call fn_2123b0
002141fdjmp 0x213b6e
00214202
00214202loc_214202:
00214202mov rdx, [rbp]
00214207
00214207loc_214207:
00214207mov [rsp+8], rdx
0021420ccall caml_incoming_interrupts_queued
00214211mov rdx, [rsp+8]
00214216test eax, eax
00214218je 0x213d6f
0021421e
0021421eloc_21421e:
0021421ecmp [rip+0x16483b], 2
00214225jne 0x213b3e
0021422bjmp 0x213dfb
00214230
00214230loc_214230:
00214230mov eax, [rsp+48]
00214234mov r13, [rsp+8]
00214239test eax, eax
0021423bje 0x213b20
00214241
00214241loc_214241:
00214241mov edi, 10
00214246call caml_ev_end
0021424bjmp 0x213b20
00214250
00214250loc_214250:
00214250mov eax, [rsp+48]
00214254test eax, eax
00214256jne 0x214476
0021425c
0021425cloc_21425c:
0021425cxor eax, eax
0021425emov [rsp+8], r14l
00214263mov r14, r15
00214266mov r15, r13
00214269mov r13l, ebx
0021426cmov rbx, rax
0021426fjmp 0x2142d4
00214271
00214271 0f 1f 80 00 00 00 00 .......
00214278
00214278loc_214278:
00214278mov rcx, [r12+352]
00214280mov rsi, [rip+0x164889]
00214287mov rax, [r12+344]
0021428fmov r12l, 16384
00214295sub rax, rsi
00214298cmp rax, rcx
0021429bcmovl rax, rcx
0021429fcmp rax, r12
002142a2cmovle r12, rax
002142a6test rax, rax
002142a9jle 0x2142e8
002142abmov rdi, [r14+280]
002142b2mov rsi, r12
002142b5call caml_sweep
002142basub r12, rax
002142bdmov rdi, r12
002142c0call fn_2119b0
002142c5test r12, r12
002142c8je 0x214320
002142caadd rbx, r12
002142cd
002142cdloc_2142cd:
002142cdcmp [r14+120], 0
002142d2jne 0x2142e8
002142d4
002142d4loc_2142d4:
002142d4mov r12, [rbp]
002142d9cmp r13l, 1
002142ddjne 0x214278
002142dfcall caml_incoming_interrupts_queued
002142e4test eax, eax
002142e6je 0x214278
002142e8
002142e8loc_2142e8:
002142e8mov eax, [rsp+48]
002142ecmov [rsp+16], rbx
002142f1mov ebx, r13l
002142f4mov r13, r15
002142f7mov r15, r14
002142famov r14l, [rsp+8]
002142fftest eax, eax
00214301je 0x213a7d
00214307
00214307loc_214307:
00214307mov edi, 7
0021430ccall caml_ev_end
00214311jmp 0x213a7d
00214316
00214316 66 2e 0f 1f 84 00 00 00 00 00 f.........
00214320
00214320loc_214320:
00214320mov [r14+120], 1
00214328lock sub [rip+0x164817], 1
00214331jmp 0x2142cd
00214333
00214333loc_214333:
00214333mov rax, [rcx+8]
00214337mov [rcx], rax
0021433ajmp 0x213f02
0021433f
0021433floc_21433f:
0021433fmov eax, [rsp+48]
00214343test eax, eax
00214345je 0x214408
0021434b
0021434bloc_21434b:
0021434bmov edi, 10
00214350call caml_ev_begin
00214355cmp [r15+112], 0
0021435aje 0x213e37
00214360jmp 0x214241
00214365
00214365 0f 1f 00 ...
00214368
00214368loc_214368:
00214368lock sub [rip+0x1647c7], 1
00214371mov rax, [r15+168]
00214378jmp 0x213aac
0021437d
0021437dloc_21437d:
0021437dmov edi, 27
00214382call caml_ev_end
00214387jmp 0x213bc4
0021438c
0021438cloc_21438c:
0021438cmov [rsp+32], rdx
00214391mov [rsp+8], rcx
00214396call caml_incoming_interrupts_queued
0021439bmov rcx, [rsp+8]
002143a0mov rdx, [rsp+32]
002143a5test eax, eax
002143a7je 0x2140ff
002143adjmp 0x213b6e
002143b2
002143b2loc_2143b2:
002143b2mov rax, [rip+0x164877]
002143b9test al, 64
002143bbje 0x214418
002143bdxor esi, esi
002143bfmov edx, 1
002143c4call fn_211a10
002143c9cmp [r15+120], 0
002143ceje 0x213a49
002143d4cmp [r15+112], 0
002143d9je 0x213a49
002143df
002143dfloc_2143df:
002143dfmov rax, [rsp+72]
002143e4sub rax, [0x28]
002143edjne 0x214587
002143f3add rsp, 88
002143f7xor edi, edi
002143f9pop rbx
002143fapop rbp
002143fbpop r12
002143fdpop r13
002143ffpop r14
00214401pop r15
00214403jmp 0x2119b0
00214408
00214408loc_214408:
00214408cmp [r15+112], 0
0021440dje 0x213e37
00214413jmp 0x213b26
00214418
00214418loc_214418:
00214418xor edx, edx
0021441axor esi, esi
0021441ccall fn_211a10
00214421cmp [r15+120], 0
00214426je 0x21442f
00214428cmp [r15+112], 0
0021442djne 0x2143df
0021442f
0021442floc_21442f:
0021442fmov [rsp+48], 0
00214437jmp 0x213a5b
0021443c
0021443cloc_21443c:
0021443ccall caml_incoming_interrupts_queued
00214441test eax, eax
00214443jne 0x214490
00214445sub rsp, 8
00214449mov esi, 111
0021444emov r9, r12
00214451xor eax, eax
00214453push rbp
00214454mov r8, [rsp+32]
00214459mov ecx, 85
0021445elea rdi, [rip+0x1c81b]
00214465mov edx, 46
0021446acall caml_gc_log
0021446fpop rsi
00214470pop rdi
00214471jmp 0x213c46
00214476
00214476loc_214476:
00214476mov edi, 7
0021447bcall caml_ev_begin
00214480cmp [r15+120], 0
00214485je 0x21425c
0021448bjmp 0x214307
00214490
00214490loc_214490:
00214490sub rsp, 8
00214494movsx esi, [rip+0x1d707]
0021449bmov r9, r12
0021449exor eax, eax
002144a0push rbp
002144a1mov r8, [rsp+32]
002144a6mov ecx, 85
002144abmov edx, 42
002144b0lea rdi, [rip+0x1c7c9]
002144b7call caml_gc_log
002144bcpop rdx
002144bdpop rcx
002144bejmp 0x213c46
002144c3
002144c3loc_2144c3:
002144c3mov rax, [rip+0x16466e]
002144catest rax, rax
002144cdjne 0x213c46
002144d3mov rax, [rip+0x16464e]
002144datest rax, rax
002144ddjne 0x213c46
002144e3mov rax, [rip+0x1645c6]
002144eatest rax, rax
002144edjne 0x213c46
002144f3mov rax, [rip+0x1645be]
002144fatest rax, rax
002144fdjne 0x213c46
00214503mov eax, [rsp+52]
00214507mov rbx, [rip+0x16455a]
0021450elea rbp, [rsp+68]
00214513mov [rsp+68], eax
00214517test r13, r13
0021451aje 0x21453f
0021451cnop [rax]
00214520
00214520loc_214520:
00214520mov rcx, r13
00214523mov edx, r14l
00214526mov rsi, rbp
00214529mov rdi, r15
0021452ccall fn_2125b0
00214531cmp rbx, [rip+0x164530]
00214538je 0x214520
0021453ajmp 0x213c46
0021453f
0021453floc_21453f:
0021453flea r12, [rip-8086]
00214546nop [rax+rax]
00214550
00214550loc_214550:
00214550xor edx, edx
00214552mov rsi, rbp
00214555mov rdi, r12
00214558call caml_try_run_on_all_domains
0021455dcmp rbx, [rip+0x164504]
00214564je 0x214550
00214566jmp 0x213c46
0021456b
0021456bloc_21456b:
0021456bmov [rsp+8], rcx
00214570call caml_incoming_interrupts_queued
00214575mov rcx, [rsp+8]
0021457atest eax, eax
0021457cje 0x2140c3
00214582jmp 0x21421e
00214587
00214587loc_214587:
00214587call fn_f4590
0021458c
0021458cloc_21458c:
0021458cmov edi, 20
00214591mov [rsp+56], rbx
00214596mov r14l, [rsp+32]
0021459bmov rbx, [rsp+8]
002145a0mov r13, [rsp+40]
002145a5call caml_ev_end
002145aamov rax, [r15+168]
002145b1mov rcx, [rsp+56]
002145b6cmp [rax], 0
002145bajne 0x2145cb
002145bcmov [rsp+8], rcx
002145c1call fn_2123b0
002145c6mov rcx, [rsp+8]
002145cb
002145cbloc_2145cb:
002145cbcmp [r15+112], 0
002145d0je 0x213c70
002145d6mov rax, [rip+0x16451b]
002145ddmov [rsp+8], rcx
002145e2cmp rcx, rax
002145e5jb 0x213b6e
002145eblea rdi, [rip+0x1644ce]
002145f2call fn_f4710
002145f7mov rcx, [rsp+8]
002145fclea rdi, [rip+0x1644bd]
00214603test eax, eax
00214605mov esi, eax
00214607jne 0x21464b
00214609mov rax, [rip+0x1644e8]
00214610cmp rcx, rax
00214613je 0x214630
00214615
00214615loc_214615:
00214615call fn_f47c0
0021461amov esi, eax
0021461ctest eax, eax
0021461eje 0x213b6e
00214624lea rdi, [rip+0x1aeef]
0021462bcall caml_plat_fatal_error
00214630
00214630loc_214630:
00214630mov rax, [rbp]
00214635mov rax, [rax+168]
0021463cmov [rax+24], rcx
00214640lock add [rip+0x1644b7], 1
00214649jmp 0x214615
0021464b
0021464bloc_21464b:
0021464blea rdi, [rip+0x1aebd]
00214652call caml_plat_fatal_error
002139f0
00214657
00214657 // align 0x10
00214657 // align 0x10
00214660
00214660fn_214660:
00214660push r13
00214662push r12
00214664push rbp
00214665mov rbp, rcx
00214668push rbx
00214669mov ebx, edx
0021466bsub rsp, 8
0021466fmov r12, [rsi]
00214672mov r13l, [rsi+8]
00214676xor esi, esi
00214678call caml_empty_minor_heap_no_major_slice_from_stw
0021467dmov edi, 28
00214682call caml_ev_begin
00214687cmp r12, [rip+0x1643d6]
0021468ejne 0x2146bd
00214690nop [rax+rax]
0021469bnop
0021469cxor ecx, ecx
0021469emov r8l, r13l
002146a1mov rdx, rbp
002146a4mov esi, ebx
002146a6mov edi, 0x989680
002146abcall fn_2139f0
002146b0cmp [rip+0x1643ad], r12
002146b7je 0x2146a0
002146b9add rsp, 8
002146bd
002146bdloc_2146bd:
002146bdmov edi, 28
002146c2pop rbx
002146c3pop rbp
002146c4pop r12
002146c6pop r13
002146c8jmp 0x21cae0
002146cddb 0x0f
002146cetest [rax], al
002146d0db 0x00
00214660
00214660fn_214660:
00214660push r13
00214662push r12
00214664push rbp
00214665mov rbp, rcx
00214668push rbx
00214669mov ebx, edx
0021466bsub rsp, 8
0021466fmov r12, [rsi]
00214672mov r13l, [rsi+8]
00214676xor esi, esi
00214678call caml_empty_minor_heap_no_major_slice_from_stw
0021467dmov edi, 28
00214682call caml_ev_begin
00214687cmp r12, [rip+0x1643d6]
0021468ejne 0x2146bd
00214690nop [rax+rax]
0021469bnop
0021469cxor ecx, ecx
0021469emov r8l, r13l
002146a1mov rdx, rbp
002146a4mov esi, ebx
002146a6mov edi, 0x989680
002146abcall fn_2139f0
002146b0cmp [rip+0x1643ad], r12
002146b7je 0x2146a0
002146b9add rsp, 8
002146bd
002146bdloc_2146bd:
002146bdmov edi, 28
002146c2pop rbx
002146c3pop rbp
002146c4pop r12
002146c6pop r13
002146c8jmp 0x21cae0
002146cddb 0x0f
002146cetest [rax], al
002146d0db 0x00
00214660
002146d1
002146d1 // align 0x10
002146d1 // align 0x10
002146e0
002146e0caml_opportunistic_major_work_available:
002146e0cmp [rdi+120], 0
002146e5mov eax, 1
002146eaje 0x2146fa
002146ecxor eax, eax
002146eecmp [rdi+112], 0
002146f3sete al
002146f6ret
002146f7db 0x0f
002146f8xchg eax, esp
002146f9db 0xc0
002146fa
002146faloc_2146fa:
002146faret
002146e0
002146e0caml_opportunistic_major_work_available:
002146e0cmp [rdi+120], 0
002146e5mov eax, 1
002146eaje 0x2146fa
002146ecxor eax, eax
002146eecmp [rdi+112], 0
002146f3sete al
002146f6ret
002146f7db 0x0f
002146f8xchg eax, esp
002146f9db 0xc0
002146fa
002146faloc_2146fa:
002146faret
002146e0
002146fb
002146fb // align 0x10
002146fb // align 0x10
00214700
00214700caml_opportunistic_major_collection_slice:
00214700xor r8l, r8l
00214703mov ecx, 2
00214708xor edx, edx
0021470axor esi, esi
0021470cjmp 0x2139f0
00214711db 0xdb
00214712db 0xf2
00214713db 0xff
00214714db 0xff
00214700
00214700caml_opportunistic_major_collection_slice:
00214700xor r8l, r8l
00214703mov ecx, 2
00214708xor edx, edx
0021470axor esi, esi
0021470cjmp 0x2139f0
00214711db 0xdb
00214712db 0xf2
00214713db 0xff
00214714db 0xff
00214700
00214715
00214715 // align 0x10
00214715 // align 0x10
00214720
00214720caml_major_collection_slice:
00214720push rbx
00214721xor r8l, r8l
00214724mov rbx, [rip+0x1644c1]
0021472bcmp rdi, -1
0021472fje 0x214758
00214731xor ecx, ecx
00214733xor edx, edx
00214735xor esi, esi
00214737call fn_2139f0
0021473cmov rax, [rip+0x618a1]
00214743mov rax, [rax]
00214747mov [rax+152], rbx
0021474epop rbx
0021474fret
00214750db 0x00
00214751add [rbx-61], bl
00214754
00214754 0f 1f 40 00 ..@.
00214758
00214758loc_214758:
00214758xor edx, edx
0021475axor esi, esi
0021475cmov ecx, 1
00214761call fn_2139f0
00214766call caml_incoming_interrupts_queued
0021476btest eax, eax
0021476dje 0x214740
0021476flea rdi, [rip+0x1c542]
00214776xor eax, eax
00214778call caml_gc_log
0021477dxor edi, edi
0021477fcall caml_request_major_slice
00214784jmp 0x214740
00214720
00214720caml_major_collection_slice:
00214720push rbx
00214721xor r8l, r8l
00214724mov rbx, [rip+0x1644c1]
0021472bcmp rdi, -1
0021472fje 0x214758
00214731xor ecx, ecx
00214733xor edx, edx
00214735xor esi, esi
00214737call fn_2139f0
0021473cmov rax, [rip+0x618a1]
00214743mov rax, [rax]
00214747mov [rax+152], rbx
0021474epop rbx
0021474fret
00214750db 0x00
00214751add [rbx-61], bl
00214754
00214754 0f 1f 40 00 ..@.
00214758
00214758loc_214758:
00214758xor edx, edx
0021475axor esi, esi
0021475cmov ecx, 1
00214761call fn_2139f0
00214766call caml_incoming_interrupts_queued
0021476btest eax, eax
0021476dje 0x214740
0021476flea rdi, [rip+0x1c542]
00214776xor eax, eax
00214778call caml_gc_log
0021477dxor edi, edi
0021477fcall caml_request_major_slice
00214784jmp 0x214740
00214720
00214786
00214786 // align 0x10
00214786 // align 0x10
00214790
00214790caml_finish_major_cycle:
00214790push r13
00214792push r12
00214794lea r12, [rip-319]
0021479bpush rbp
0021479cpush rbx
0021479dsub rsp, 40
002147a1mov rbp, [rip+0x1642bc]
002147a8mov rbx, [0x28]
002147b1mov [rsp+24], rbx
002147b6mov ebx, edi
002147b8mov r13, rsp
002147bbmov rax, rbp
002147benop [rax+rax]
002147c9nop [rax]
002147ccxor edx, edx
002147cemov rsi, r13
002147d1mov rdi, r12
002147d4mov [rsp+8], ebx
002147d8mov [rsp], rax
002147dccall caml_try_run_on_all_domains
002147e1mov rax, [rip+0x16427c]
002147e8cmp rax, rbp
002147ebje 0x2147d0
002147edmov rax, [rsp+24]
002147f2sub rax, [0x28]
002147fbjne 0x21480c
002147fdadd rsp, 40
00214801pop rbx
00214802pop rbp
00214803pop r12
00214805pop r13
00214807ret
00214808call fn_f4590
0021480ddb 0x7f
0021480estd
0021480fin eax, dx
00214810db 0xff
00214790
00214790caml_finish_major_cycle:
00214790push r13
00214792push r12
00214794lea r12, [rip-319]
0021479bpush rbp
0021479cpush rbx
0021479dsub rsp, 40
002147a1mov rbp, [rip+0x1642bc]
002147a8mov rbx, [0x28]
002147b1mov [rsp+24], rbx
002147b6mov ebx, edi
002147b8mov r13, rsp
002147bbmov rax, rbp
002147benop [rax+rax]
002147c9nop [rax]
002147ccxor edx, edx
002147cemov rsi, r13
002147d1mov rdi, r12
002147d4mov [rsp+8], ebx
002147d8mov [rsp], rax
002147dccall caml_try_run_on_all_domains
002147e1mov rax, [rip+0x16427c]
002147e8cmp rax, rbp
002147ebje 0x2147d0
002147edmov rax, [rsp+24]
002147f2sub rax, [0x28]
002147fbjne 0x21480c
002147fdadd rsp, 40
00214801pop rbx
00214802pop rbp
00214803pop r12
00214805pop r13
00214807ret
00214808call fn_f4590
0021480ddb 0x7f
0021480estd
0021480fin eax, dx
00214810db 0xff
00214790
00214811
00214811 // align 0x10
00214811 // align 0x10
00214820
00214820caml_empty_mark_stack:
00214820push rbx
00214821mov rbx, [rip+0x617bc]
00214828mov rax, [rbx]
0021482ccmp [rax+112], 0
00214831jne 0x21485a
00214833nop [rax+rax]
0021483cmov edi, 1000
00214841call fn_213760
00214846call caml_handle_incoming_interrupts
0021484bmov rax, [rbx]
0021484fcmp [rax+112], 0
00214854je 0x214840
00214856mov rsi, [rax+416]
0021485dtest rsi, rsi
00214860jne 0x214880
00214862mov rax, [rbx]
00214866
00214866loc_214866:
00214866mov [rax+416], 0
00214871pop rbx
00214872ret
00214873db 0x00
00214874add [rbx-61], bl
00214877
00214877 66 0f 1f 84 00 00 00 00 00 f........
00214880
00214880loc_214880:
00214880lea rdi, [rip+0x1c469]
00214887xor eax, eax
00214889call caml_gc_log
0021488ejmp 0x214866
00214820
00214820caml_empty_mark_stack:
00214820push rbx
00214821mov rbx, [rip+0x617bc]
00214828mov rax, [rbx]
0021482ccmp [rax+112], 0
00214831jne 0x21485a
00214833nop [rax+rax]
0021483cmov edi, 1000
00214841call fn_213760
00214846call caml_handle_incoming_interrupts
0021484bmov rax, [rbx]
0021484fcmp [rax+112], 0
00214854je 0x214840
00214856mov rsi, [rax+416]
0021485dtest rsi, rsi
00214860jne 0x214880
00214862mov rax, [rbx]
00214866
00214866loc_214866:
00214866mov [rax+416], 0
00214871pop rbx
00214872ret
00214873db 0x00
00214874add [rbx-61], bl
00214877
00214877 66 0f 1f 84 00 00 00 00 00 f........
00214880
00214880loc_214880:
00214880lea rdi, [rip+0x1c469]
00214887xor eax, eax
00214889call caml_gc_log
0021488ejmp 0x214866
00214820
00214890
00214890caml_finish_marking:
00214890push rbx
00214891mov rbx, [rip+0x6174c]
00214898mov rax, [rbx]
0021489ccmp [rax+112], 0
002148a1je 0x2148b0
002148a3pop rbx
002148a4ret
002148a5db 0x74
002148a6or [rbx-61], ebx
002148a9
002148a9 0f 1f 80 00 00 00 00 .......
002148b0
002148b0loc_2148b0:
002148b0mov edi, 22
002148b5call caml_ev_begin
002148bamov rax, [rbx]
002148becmp [rax+112], 0
002148c3jne 0x2148ea
002148c5nop [rax+rax]
002148d0
002148d0loc_2148d0:
002148d0mov edi, 1000
002148d5call fn_213760
002148dacall caml_handle_incoming_interrupts
002148dfmov rax, [rbx]
002148e3cmp [rax+112], 0
002148e8je 0x2148d0
002148ea
002148ealoc_2148ea:
002148eamov rsi, [rax+416]
002148f1test rsi, rsi
002148f4jne 0x214938
002148f6
002148f6loc_2148f6:
002148f6mov rax, [rbx]
002148famov [rax+416], 0
00214905call caml_shrink_mark_stack
0021490amov rax, [rbx]
0021490epxor x0, x0
00214912mov edi, 22
00214917mov rdx, [rax+128]
0021491eadd [rax+400], rdx
00214925movups [rax+128], x0
0021492cpop rbx
0021492djmp 0x21cae0
00214932
00214932 66 0f 1f 44 00 00 f..D..
00214938
00214938loc_214938:
00214938lea rdi, [rip+0x1c3b1]
0021493fxor eax, eax
00214941call caml_gc_log
00214946jmp 0x2148f6
00214890
00214890caml_finish_marking:
00214890push rbx
00214891mov rbx, [rip+0x6174c]
00214898mov rax, [rbx]
0021489ccmp [rax+112], 0
002148a1je 0x2148b0
002148a3pop rbx
002148a4ret
002148a5db 0x74
002148a6or [rbx-61], ebx
002148a9
002148a9 0f 1f 80 00 00 00 00 .......
002148b0
002148b0loc_2148b0:
002148b0mov edi, 22
002148b5call caml_ev_begin
002148bamov rax, [rbx]
002148becmp [rax+112], 0
002148c3jne 0x2148ea
002148c5nop [rax+rax]
002148d0
002148d0loc_2148d0:
002148d0mov edi, 1000
002148d5call fn_213760
002148dacall caml_handle_incoming_interrupts
002148dfmov rax, [rbx]
002148e3cmp [rax+112], 0
002148e8je 0x2148d0
002148ea
002148ealoc_2148ea:
002148eamov rsi, [rax+416]
002148f1test rsi, rsi
002148f4jne 0x214938
002148f6
002148f6loc_2148f6:
002148f6mov rax, [rbx]
002148famov [rax+416], 0
00214905call caml_shrink_mark_stack
0021490amov rax, [rbx]
0021490epxor x0, x0
00214912mov edi, 22
00214917mov rdx, [rax+128]
0021491eadd [rax+400], rdx
00214925movups [rax+128], x0
0021492cpop rbx
0021492djmp 0x21cae0
00214932
00214932 66 0f 1f 44 00 00 f..D..
00214938
00214938loc_214938:
00214938lea rdi, [rip+0x1c3b1]
0021493fxor eax, eax
00214941call caml_gc_log
00214946jmp 0x2148f6
00214890
00214948
00214948 // align 0x10
00214948 // align 0x10
00214950
00214950caml_finish_sweeping:
00214950push rbx
00214951mov rbx, [rip+0x6168c]
00214958mov rax, [rbx]
0021495ccmp [rax+120], 0
00214961je 0x214970
00214963pop rbx
00214964ret
00214965db 0x74
00214966or [rbx-61], ebx
00214969
00214969 0f 1f 80 00 00 00 00 .......
00214970
00214970loc_214970:
00214970mov edi, 36
00214975call caml_ev_begin
0021497amov rax, [rbx]
0021497ecmp [rax+120], 0
00214983je 0x2149a0
00214985jmp 0x2149cb
00214987
00214987 66 0f 1f 84 00 00 00 00 00 f........
00214990
00214990loc_214990:
00214990call caml_handle_incoming_interrupts
00214995mov rax, [rbx]
00214999cmp [rax+120], 0
0021499ejne 0x2149cb
002149a0
002149a0loc_2149a0:
002149a0mov rdi, [rax+280]
002149a7mov esi, 10
002149accall caml_sweep
002149b1test rax, rax
002149b4jle 0x214990
002149b6mov rax, [rbx]
002149bamov [rax+120], 1
002149c2lock sub [rip+0x16417d], 1
002149cb
002149cbloc_2149cb:
002149cbmov edi, 36
002149d0pop rbx
002149d1jmp 0x21cae0
00214950
00214950caml_finish_sweeping:
00214950push rbx
00214951mov rbx, [rip+0x6168c]
00214958mov rax, [rbx]
0021495ccmp [rax+120], 0
00214961je 0x214970
00214963pop rbx
00214964ret
00214965db 0x74
00214966or [rbx-61], ebx
00214969
00214969 0f 1f 80 00 00 00 00 .......
00214970
00214970loc_214970:
00214970mov edi, 36
00214975call caml_ev_begin
0021497amov rax, [rbx]
0021497ecmp [rax+120], 0
00214983je 0x2149a0
00214985jmp 0x2149cb
00214987
00214987 66 0f 1f 84 00 00 00 00 00 f........
00214990
00214990loc_214990:
00214990call caml_handle_incoming_interrupts
00214995mov rax, [rbx]
00214999cmp [rax+120], 0
0021499ejne 0x2149cb
002149a0
002149a0loc_2149a0:
002149a0mov rdi, [rax+280]
002149a7mov esi, 10
002149accall caml_sweep
002149b1test rax, rax
002149b4jle 0x214990
002149b6mov rax, [rbx]
002149bamov [rax+120], 1
002149c2lock sub [rip+0x16417d], 1
002149cb
002149cbloc_2149cb:
002149cbmov edi, 36
002149d0pop rbx
002149d1jmp 0x21cae0
00214950
002149d6
002149d6 // align 0x10
002149d6 // align 0x10
002149e0
002149e0caml_init_major_gc:
002149e0push rbp
002149e1push rbx
002149e2mov rbx, rdi
002149e5mov edi, 48
002149easub rsp, 8
002149eecall caml_stat_alloc_noexc
002149f3mov [rbx+104], rax
002149f7test rax, rax
002149faje 0x214b0e
00214a00mov edi, 0x10000
00214a05mov rbp, rax
00214a08call caml_stat_alloc_noexc
00214a0dmov [rbp], rax
00214a11mov rdi, [rbx+104]
00214a15cmp [rdi], 0
00214a19je 0x214b01
00214a1fmov [rdi+8], 0
00214a27mov rax, [rbx+104]
00214a2bmov [rax+16], 4096
00214a33mov rax, [rbx+104]
00214a37lea rdi, [rax+24]
00214a3bcall caml_addrmap_init
00214a40mov rdi, [rbx+104]
00214a44mov rsi, [rdi+24]
00214a48test rsi, rsi
00214a4bje 0x214af8
00214a51mov rcx, [rdi+32]
00214a55xor eax, eax
00214a57test rcx, rcx
00214a5ajne 0x214a89
00214a5cjmp 0x214a9a
00214a5edb 0x75
00214a5fsub ebx, ebp
00214a61db 0x38
00214a62
00214a62 66 66 2e 0f 1f 84 00 00 00 00 00 66 66 2e ff.........ff.
00214a70 0f 1f 84 00 00 00 00 00 0f 1f 84 00 00 00 00 00 ................
00214a80
00214a80loc_214a80:
00214a80add rax, 1
00214a84cmp rcx, rax
00214a87je 0x214a9a
00214a89
00214a89loc_214a89:
00214a89mov rdx, rax
00214a8cshl rdx, 4
00214a90cmp [rsi+rdx], 0
00214a95je 0x214a80
00214a97mov rcx, rax
00214a9a
00214a9aloc_214a9a:
00214a9amov eax, 1
00214a9fmov [rdi+40], rcx
00214aa3movq x0, rax
00214aa8punpcklqdq x0, x0
00214aacmovups [rbx+112], x0
00214ab0call caml_alloc_final_info
00214ab5mov [rbx+176], rax
00214abctest rax, rax
00214abfje 0x214b4b
00214ac5call caml_alloc_ephe_info
00214acamov [rbx+168], rax
00214ad1test rax, rax
00214ad4je 0x214b15
00214ad6lock add [rip+0x164051], 1
00214adflock add [rip+0x164040], 1
00214ae8xor eax, eax
00214aea
00214aealoc_214aea:
00214aeaadd rsp, 8
00214aeepop rbx
00214aefpop rbp
00214af0ret
00214af1
00214af1 0f 1f 80 00 00 00 00 .......
00214af8
00214af8loc_214af8:
00214af8mov rcx, -1
00214affjmp 0x214a9a
00214b01
00214b01loc_214b01:
00214b01call caml_stat_free
00214b06mov [rbx+104], 0
00214b0e
00214b0eloc_214b0e:
00214b0emov eax, -1
00214b13jmp 0x214aea
00214b15
00214b15loc_214b15:
00214b15mov rdi, [rbx+176]
00214b1ccall caml_stat_free
00214b21mov rax, [rbx+104]
00214b25mov rdi, [rax]
00214b28call caml_stat_free
00214b2dmov rdi, [rbx+104]
00214b31call caml_stat_free
00214b36mov [rbx+104], 0
00214b3emov [rbx+176], 0
00214b49jmp 0x214b0e
00214b4b
00214b4bloc_214b4b:
00214b4bmov rax, [rbx+104]
00214b4fmov rdi, [rax]
00214b52call caml_stat_free
00214b57mov rdi, [rbx+104]
00214b5bcall caml_stat_free
00214b60jmp 0x214b0e
002149e0
002149e0caml_init_major_gc:
002149e0push rbp
002149e1push rbx
002149e2mov rbx, rdi
002149e5mov edi, 48
002149easub rsp, 8
002149eecall caml_stat_alloc_noexc
002149f3mov [rbx+104], rax
002149f7test rax, rax
002149faje 0x214b0e
00214a00mov edi, 0x10000
00214a05mov rbp, rax
00214a08call caml_stat_alloc_noexc
00214a0dmov [rbp], rax
00214a11mov rdi, [rbx+104]
00214a15cmp [rdi], 0
00214a19je 0x214b01
00214a1fmov [rdi+8], 0
00214a27mov rax, [rbx+104]
00214a2bmov [rax+16], 4096
00214a33mov rax, [rbx+104]
00214a37lea rdi, [rax+24]
00214a3bcall caml_addrmap_init
00214a40mov rdi, [rbx+104]
00214a44mov rsi, [rdi+24]
00214a48test rsi, rsi
00214a4bje 0x214af8
00214a51mov rcx, [rdi+32]
00214a55xor eax, eax
00214a57test rcx, rcx
00214a5ajne 0x214a89
00214a5cjmp 0x214a9a
00214a5edb 0x75
00214a5fsub ebx, ebp
00214a61db 0x38
00214a62
00214a62 66 66 2e 0f 1f 84 00 00 00 00 00 66 66 2e ff.........ff.
00214a70 0f 1f 84 00 00 00 00 00 0f 1f 84 00 00 00 00 00 ................
00214a80
00214a80loc_214a80:
00214a80add rax, 1
00214a84cmp rcx, rax
00214a87je 0x214a9a
00214a89
00214a89loc_214a89:
00214a89mov rdx, rax
00214a8cshl rdx, 4
00214a90cmp [rsi+rdx], 0
00214a95je 0x214a80
00214a97mov rcx, rax
00214a9a
00214a9aloc_214a9a:
00214a9amov eax, 1
00214a9fmov [rdi+40], rcx
00214aa3movq x0, rax
00214aa8punpcklqdq x0, x0
00214aacmovups [rbx+112], x0
00214ab0call caml_alloc_final_info
00214ab5mov [rbx+176], rax
00214abctest rax, rax
00214abfje 0x214b4b
00214ac5call caml_alloc_ephe_info
00214acamov [rbx+168], rax
00214ad1test rax, rax
00214ad4je 0x214b15
00214ad6lock add [rip+0x164051], 1
00214adflock add [rip+0x164040], 1
00214ae8xor eax, eax
00214aea
00214aealoc_214aea:
00214aeaadd rsp, 8
00214aeepop rbx
00214aefpop rbp
00214af0ret
00214af1
00214af1 0f 1f 80 00 00 00 00 .......
00214af8
00214af8loc_214af8:
00214af8mov rcx, -1
00214affjmp 0x214a9a
00214b01
00214b01loc_214b01:
00214b01call caml_stat_free
00214b06mov [rbx+104], 0
00214b0e
00214b0eloc_214b0e:
00214b0emov eax, -1
00214b13jmp 0x214aea
00214b15
00214b15loc_214b15:
00214b15mov rdi, [rbx+176]
00214b1ccall caml_stat_free
00214b21mov rax, [rbx+104]
00214b25mov rdi, [rax]
00214b28call caml_stat_free
00214b2dmov rdi, [rbx+104]
00214b31call caml_stat_free
00214b36mov [rbx+104], 0
00214b3emov [rbx+176], 0
00214b49jmp 0x214b0e
00214b4b
00214b4bloc_214b4b:
00214b4bmov rax, [rbx+104]
00214b4fmov rdi, [rax]
00214b52call caml_stat_free
00214b57mov rdi, [rbx+104]
00214b5bcall caml_stat_free
00214b60jmp 0x214b0e
002149e0
00214b62
00214b62 // align 0x10
00214b62 // align 0x10
00214b70
00214b70caml_teardown_major_gc:
00214b70mov rax, [rip+0x6146d]
00214b77push rbx
00214b78xor edx, edx
00214b7axor esi, esi
00214b7cxor edi, edi
00214b7emov rbx, [rax]
00214b82call fn_211a10
00214b87mov rax, [rbx+104]
00214b8blea rdi, [rax+24]
00214b8fcall caml_addrmap_clear
00214b94mov rax, [rbx+104]
00214b98mov rdi, [rax]
00214b9bcall caml_stat_free
00214ba0mov rdi, [rbx+104]
00214ba4call caml_stat_free
00214ba9mov [rbx+104], 0
00214bb1pop rbx
00214bb2ret
00214bb3db 0x00
00214bb4add [rbx-61], bl
00214b70
00214b70caml_teardown_major_gc:
00214b70mov rax, [rip+0x6146d]
00214b77push rbx
00214b78xor edx, edx
00214b7axor esi, esi
00214b7cxor edi, edi
00214b7emov rbx, [rax]
00214b82call fn_211a10
00214b87mov rax, [rbx+104]
00214b8blea rdi, [rax+24]
00214b8fcall caml_addrmap_clear
00214b94mov rax, [rbx+104]
00214b98mov rdi, [rax]
00214b9bcall caml_stat_free
00214ba0mov rdi, [rbx+104]
00214ba4call caml_stat_free
00214ba9mov [rbx+104], 0
00214bb1pop rbx
00214bb2ret
00214bb3db 0x00
00214bb4add [rbx-61], bl
00214b70
00214bb7
00214bb7 // align 0x10
00214bb7 // align 0x10
00214bc0
00214bc0caml_finalise_heap:
00214bc0ret
00214bc1db 0x0f
00214bc2db 0x1e
00214bc3cli
00214bc4ret
00214bc0
00214bc0caml_finalise_heap:
00214bc0ret
00214bc1db 0x0f
00214bc2db 0x1e
00214bc3cli
00214bc4ret
00214bc0
00214bc5
00214bc5 // align 0x10
00214bc5 // align 0x10
00214bd0
00214bd0caml_MD5Init:
00214bd0movdqa x0, [rip+0x15564]
00214bd8mov [rdi+16], 0
00214be0movups [rdi], x0
00214be3ret
00214be4db 0x0f
00214be5adc [rdi], eax
00214be7ret
00214bd0
00214bd0caml_MD5Init:
00214bd0movdqa x0, [rip+0x15564]
00214bd8mov [rdi+16], 0
00214be0movups [rdi], x0
00214be3ret
00214be4db 0x0f
00214be5adc [rdi], eax
00214be7ret
00214bd0
00214be8
00214be8 // align 0x10
00214be8 // align 0x10
00214bf0
00214bf0caml_MD5Transform:
00214bf0push r15
00214bf2mov r8, rdi
00214bf5mov rax, rsi
00214bf8push r14
00214bfapush r13
00214bfcpush r12
00214bfepush rbp
00214bffpush rbx
00214c00mov r15l, [rdi+4]
00214c04mov r14l, [rsi]
00214c07mov ebx, [rdi]
00214c09mov edi, [rdi+8]
00214c0cxor edi, [r8+12]
00214c10lea edx, [r14+rbx-0x28955b88]
00214c18and edi, r15l
00214c1bxor edi, [r8+12]
00214c1fmov ebx, [rsi+4]
00214c22add edi, edx
00214c24mov edx, [r8+8]
00214c28mov esi, [r8+12]
00214c2crol edi, 7
00214c2fmov r11l, [rax+12]
00214c33mov [rsp-44], ebx
00214c37add edi, r15l
00214c3axor edx, r15l
00214c3dlea ecx, [rbx+rsi-0x173848aa]
00214c44mov esi, [rax+8]
00214c47and edx, edi
00214c49xor edx, [r8+8]
00214c4dmov r10l, edi
00214c50mov [rsp-16], r11l
00214c55add edx, ecx
00214c57mov ecx, [r8+8]
00214c5bmov [rsp-40], esi
00214c5flea r9l, [r11+r15-0x3e423112]
00214c67rol edx, 12
00214c6alea esi, [rsi+rcx+0x242070db]
00214c71mov ecx, r15l
00214c74add edx, edi
00214c76xor ecx, edi
00214c78xor r10l, edx
00214c7bmov ebp, edx
00214c7dand ecx, edx
00214c7fxor ecx, r15l
00214c82add ecx, esi
00214c84mov esi, r10l
00214c87mov r10l, [rax+16]
00214c8bror ecx, 15
00214c8eadd ecx, edx
00214c90mov [rsp-36], r10l
00214c95and esi, ecx
00214c97xor ebp, ecx
00214c99xor esi, edi
00214c9badd esi, r9l
00214c9elea r9l, [r10+rdi-0xa83f051]
00214ca6mov edi, ebp
00214ca8mov ebp, [rax+20]
00214cabror esi, 10
00214caeadd esi, ecx
00214cb0and edi, esi
00214cb2xor edi, edx
00214cb4add edi, r9l
00214cb7lea r9l, [rbp+rdx+0x4787c62a]
00214cbfmov edx, ecx
00214cc1rol edi, 7
00214cc4xor edx, esi
00214cc6add edi, esi
00214cc8and edx, edi
00214ccamov r12l, edi
00214ccdxor edx, ecx
00214ccfadd edx, r9l
00214cd2mov r9l, [rax+24]
00214cd6rol edx, 12
00214cd9mov [rsp-32], r9l
00214cdelea r9l, [r9+rcx-0x57cfb9ed]
00214ce6mov ecx, esi
00214ce8add edx, edi
00214ceaxor ecx, edi
00214cecmov r13l, [rax+28]
00214cf0xor r12l, edx
00214cf3mov ebx, [rax+36]
00214cf6and ecx, edx
00214cf8xor ecx, esi
00214cfamov [rsp-24], ebx
00214cfeadd ecx, r9l
00214d01lea r9l, [r13+rsi-0x2b96aff]
00214d09mov esi, r12l
00214d0cmov r12l, [rax+32]
00214d10ror ecx, 15
00214d13add ecx, edx
00214d15mov [rsp-28], r12l
00214d1aand esi, ecx
00214d1cxor esi, edi
00214d1eadd esi, r9l
00214d21lea r9l, [r12+rdi+0x698098d8]
00214d29mov edi, edx
00214d2bmov r12l, [rax+56]
00214d2fror esi, 10
00214d32xor edi, ecx
00214d34add esi, ecx
00214d36and edi, esi
00214d38xor edi, edx
00214d3aadd edi, r9l
00214d3dlea r9l, [rbx+rdx-0x74bb0851]
00214d45mov edx, ecx
00214d47mov ebx, [rax+40]
00214d4arol edi, 7
00214d4dxor edx, esi
00214d4fadd edi, esi
00214d51mov [rsp-20], ebx
00214d55and edx, edi
00214d57xor edx, ecx
00214d59add edx, r9l
00214d5clea r9l, [rbx+rcx-42063]
00214d64mov ecx, esi
00214d66mov ebx, [rax+48]
00214d69rol edx, 12
00214d6cxor ecx, edi
00214d6eadd edx, edi
00214d70and ecx, edx
00214d72xor ecx, esi
00214d74add ecx, r9l
00214d77mov r9l, [rax+44]
00214d7bror ecx, 15
00214d7emov r11l, r9l
00214d81lea r9l, [r9+rsi-0x76a32842]
00214d89mov esi, edi
00214d8badd ecx, edx
00214d8dxor esi, edx
00214d8fmov [rsp-12], r11l
00214d94and esi, ecx
00214d96xor esi, edi
00214d98add esi, r9l
00214d9blea r9l, [rbx+rdi+0x6b901122]
00214da3mov edi, edx
00214da5ror esi, 10
00214da8xor edi, ecx
00214daaadd esi, ecx
00214dacand edi, esi
00214daexor edi, edx
00214db0add edi, r9l
00214db3mov r9l, [rax+52]
00214db7rol edi, 7
00214dbalea r10l, [r9+rdx-0x2678e6d]
00214dc2mov edx, ecx
00214dc4add edi, esi
00214dc6xor edx, esi
00214dc8and edx, edi
00214dcaxor edx, ecx
00214dccadd edx, r10l
00214dcflea r10l, [r12+rcx-0x5986bc72]
00214dd7mov ecx, esi
00214dd9rol edx, 12
00214ddcxor ecx, edi
00214ddeadd edx, edi
00214de0and ecx, edx
00214de2xor ecx, esi
00214de4add ecx, r10l
00214de7mov r10l, [rax+60]
00214debror ecx, 15
00214deelea eax, [r10+rsi+0x49b40821]
00214df6mov esi, edi
00214df8add ecx, edx
00214dfaxor esi, edx
00214dfcand esi, ecx
00214dfexor esi, edi
00214e00add esi, eax
00214e02mov eax, [rsp-44]
00214e06ror esi, 10
00214e09add esi, ecx
00214e0blea edi, [rax+rdi-0x9e1da9e]
00214e12mov eax, ecx
00214e14xor eax, esi
00214e16and eax, edx
00214e18xor eax, ecx
00214e1aadd eax, edi
00214e1cmov edi, [rsp-32]
00214e20rol eax, 5
00214e23add eax, esi
00214e25lea edi, [rdi+rdx-0x3fbf4cc0]
00214e2cmov edx, esi
00214e2exor edx, eax
00214e30and edx, ecx
00214e32xor edx, esi
00214e34add edx, edi
00214e36lea edi, [r11+rcx+0x265e5a51]
00214e3emov ecx, eax
00214e40rol edx, 9
00214e43add edx, eax
00214e45xor ecx, edx
00214e47and ecx, esi
00214e49xor ecx, eax
00214e4badd ecx, edi
00214e4dlea edi, [r14+rsi-0x16493856]
00214e55mov esi, edx
00214e57rol ecx, 14
00214e5aadd ecx, edx
00214e5cxor esi, ecx
00214e5eand esi, eax
00214e60xor esi, edx
00214e62add esi, edi
00214e64lea edi, [rbp+rax-0x29d0efa3]
00214e6bmov eax, ecx
00214e6dror esi, 12
00214e70add esi, ecx
00214e72xor eax, esi
00214e74and eax, edx
00214e76xor eax, ecx
00214e78add eax, edi
00214e7amov edi, [rsp-20]
00214e7erol eax, 5
00214e81add eax, esi
00214e83lea edi, [rdi+rdx+0x2441453]
00214e8amov edx, esi
00214e8cxor edx, eax
00214e8eand edx, ecx
00214e90xor edx, esi
00214e92add edx, edi
00214e94lea edi, [r10+rcx-0x275e197f]
00214e9cmov ecx, eax
00214e9erol edx, 9
00214ea1add edx, eax
00214ea3xor ecx, edx
00214ea5and ecx, esi
00214ea7xor ecx, eax
00214ea9add ecx, edi
00214eabmov edi, [rsp-36]
00214eafrol ecx, 14
00214eb2add ecx, edx
00214eb4lea edi, [rdi+rsi-0x182c0438]
00214ebbmov esi, edx
00214ebdxor esi, ecx
00214ebfand esi, eax
00214ec1xor esi, edx
00214ec3add esi, edi
00214ec5mov edi, [rsp-24]
00214ec9ror esi, 12
00214eccadd esi, ecx
00214ecelea edi, [rdi+rax+0x21e1cde6]
00214ed5mov eax, ecx
00214ed7xor eax, esi
00214ed9and eax, edx
00214edbxor eax, ecx
00214eddadd eax, edi
00214edflea edi, [r12+rdx-0x3cc8f82a]
00214ee7mov edx, esi
00214ee9rol eax, 5
00214eecadd eax, esi
00214eeexor edx, eax
00214ef0and edx, ecx
00214ef2xor edx, esi
00214ef4add edx, edi
00214ef6mov edi, [rsp-16]
00214efarol edx, 9
00214efdadd edx, eax
00214efflea edi, [rdi+rcx-0xb2af279]
00214f06mov ecx, eax
00214f08xor ecx, edx
00214f0aand ecx, esi
00214f0cxor ecx, eax
00214f0eadd ecx, edi
00214f10mov edi, [rsp-28]
00214f14rol ecx, 14
00214f17add ecx, edx
00214f19lea esi, [rdi+rsi+0x455a14ed]
00214f20mov edi, edx
00214f22xor edi, ecx
00214f24and edi, eax
00214f26xor edi, edx
00214f28add edi, esi
00214f2alea esi, [r9+rax-0x561c16fb]
00214f32mov eax, ecx
00214f34ror edi, 12
00214f37add edi, ecx
00214f39xor eax, edi
00214f3band eax, edx
00214f3dxor eax, ecx
00214f3fadd eax, esi
00214f41mov esi, [rsp-40]
00214f45rol eax, 5
00214f48add eax, edi
00214f4alea esi, [rsi+rdx-0x3105c08]
00214f51mov edx, edi
00214f53xor edx, eax
00214f55and edx, ecx
00214f57lea ecx, [r13+rcx+0x676f02d9]
00214f5fxor edx, edi
00214f61add edx, esi
00214f63mov esi, eax
00214f65rol edx, 9
00214f68add edx, eax
00214f6axor esi, edx
00214f6cand esi, edi
00214f6elea edi, [rbx+rdi-0x72d5b376]
00214f75xor esi, eax
00214f77mov r11l, edi
00214f7aadd esi, ecx
00214f7cmov ecx, edx
00214f7erol esi, 14
00214f81add esi, edx
00214f83xor ecx, esi
00214f85mov edi, ecx
00214f87and edi, eax
00214f89lea eax, [rbp+rax-0x5c6be]
00214f90xor edi, edx
00214f92add edi, r11l
00214f95mov r11l, [rsp-16]
00214f9aror edi, 12
00214f9dadd edi, esi
00214f9fxor ecx, edi
00214fa1add ecx, eax
00214fa3mov eax, [rsp-28]
00214fa7rol ecx, 4
00214faalea eax, [rax+rdx-0x788e097f]
00214fb1mov edx, esi
00214fb3add ecx, edi
00214fb5xor edx, edi
00214fb7xor edx, ecx
00214fb9add edx, eax
00214fbbmov eax, [rsp-12]
00214fbfrol edx, 11
00214fc2lea eax, [rax+rsi+0x6d9d6122]
00214fc9mov esi, edi
00214fcbadd edx, ecx
00214fcdxor esi, ecx
00214fcflea edi, [r12+rdi-0x21ac7f4]
00214fd7xor esi, edx
00214fd9add esi, eax
00214fdbmov eax, ecx
00214fddrol esi, 16
00214fe0xor eax, edx
00214fe2add esi, edx
00214fe4xor eax, esi
00214fe6add eax, edi
00214fe8mov edi, [rsp-44]
00214fecror eax, 9
00214feflea edi, [rdi+rcx-0x5b4115bc]
00214ff6mov ecx, edx
00214ff8add eax, esi
00214ffaxor ecx, esi
00214ffcxor ecx, eax
00214ffeadd ecx, edi
00215000mov edi, [rsp-36]
00215004rol ecx, 4
00215007lea edx, [rdi+rdx+0x4bdecfa9]
0021500emov edi, esi
00215010add ecx, eax
00215012xor edi, eax
00215014lea esi, [r13+rsi-0x944b4a0]
0021501cxor edi, ecx
0021501eadd edi, edx
00215020mov edx, eax
00215022rol edi, 11
00215025xor edx, ecx
00215027add edi, ecx
00215029xor edx, edi
0021502badd edx, esi
0021502dmov esi, [rsp-20]
00215031rol edx, 16
00215034lea eax, [rsi+rax-0x41404390]
0021503bmov esi, ecx
0021503dadd edx, edi
0021503fxor esi, edi
00215041xor esi, edx
00215043add esi, eax
00215045lea eax, [r9+rcx+0x289b7ec6]
0021504dmov ecx, edi
0021504fror esi, 9
00215052xor ecx, edx
00215054lea edi, [r14+rdi-0x155ed806]
0021505cadd esi, edx
0021505exor ecx, esi
00215060add ecx, eax
00215062mov eax, edx
00215064lea edx, [r11+rdx-0x2b10cf7b]
0021506crol ecx, 4
0021506fxor eax, esi
00215071add ecx, esi
00215073xor eax, ecx
00215075add eax, edi
00215077mov edi, esi
00215079rol eax, 11
0021507cxor edi, ecx
0021507eadd eax, ecx
00215080xor edi, eax
00215082add edi, edx
00215084mov edx, [rsp-32]
00215088rol edi, 16
0021508blea edx, [rdx+rsi+0x4881d05]
00215092mov esi, ecx
00215094add edi, eax
00215096xor esi, eax
00215098xor esi, edi
0021509aadd esi, edx
0021509cmov edx, [rsp-24]
002150a0ror esi, 9
002150a3lea ecx, [rdx+rcx-0x262b2fc7]
002150aamov edx, eax
002150acadd esi, edi
002150aexor edx, edi
002150b0lea eax, [rbx+rax-0x1924661b]
002150b7xor edx, esi
002150b9add edx, ecx
002150bbmov ecx, edi
002150bdrol edx, 4
002150c0add edx, esi
002150c2xor ecx, esi
002150c4xor ecx, edx
002150c6add ecx, eax
002150c8lea eax, [r10+rdi+0x1fa27cf8]
002150d0mov edi, esi
002150d2rol ecx, 11
002150d5xor edi, edx
002150d7add ecx, edx
002150d9xor edi, ecx
002150dbadd edi, eax
002150ddmov eax, [rsp-40]
002150e1rol edi, 16
002150e4lea esi, [rax+rsi-0x3b53a99b]
002150ebmov eax, edx
002150edadd edi, ecx
002150efxor eax, ecx
002150f1xor eax, edi
002150f3add eax, esi
002150f5lea esi, [r14+rdx-0xbd6ddbc]
002150fdmov edx, ecx
002150ffror eax, 9
00215102not edx
00215104add eax, edi
00215106or edx, eax
00215108xor edx, edi
0021510aadd edx, esi
0021510clea esi, [r13+rcx+0x432aff97]
00215114mov ecx, edi
00215116rol edx, 6
00215119not ecx
0021511blea edi, [r12+rdi-0x546bdc59]
00215123add edx, eax
00215125or ecx, edx
00215127xor ecx, eax
00215129add ecx, esi
0021512bmov esi, eax
0021512drol ecx, 10
00215130not esi
00215132add ecx, edx
00215134or esi, ecx
00215136xor esi, edx
00215138add esi, edi
0021513alea edi, [rbp+rax-0x36c5fc7]
00215141mov ebp, edx
00215143rol esi, 15
00215146not ebp
00215148add esi, ecx
0021514amov eax, ebp
0021514cmov ebp, ecx
0021514eor eax, esi
00215150not ebp
00215152xor eax, ecx
00215154add eax, edi
00215156lea edi, [rbx+rdx+0x655b59c3]
0021515dmov edx, ebp
0021515fmov ebx, [rsp-20]
00215163ror eax, 11
00215166add eax, esi
00215168or edx, eax
0021516axor edx, esi
0021516cadd edx, edi
0021516elea edi, [r11+rcx-0x70f3336e]
00215176mov ecx, esi
00215178rol edx, 6
0021517bnot ecx
0021517dadd edx, eax
0021517for ecx, edx
00215181mov ebp, edx
00215183xor ecx, eax
00215185not ebp
00215187add ecx, edi
00215189lea edi, [rbx+rsi-0x100b83]
00215190mov esi, eax
00215192rol ecx, 10
00215195not esi
00215197add ecx, edx
00215199or esi, ecx
0021519bxor esi, edx
0021519dadd esi, edi
0021519fmov edi, [rsp-44]
002151a3mov r11l, [rsp-28]
002151a8rol esi, 15
002151abmov r14l, [rsp-32]
002151b0mov ebx, [rsp-40]
002151b4add esi, ecx
002151b6lea edi, [rdi+rax-0x7a7ba22f]
002151bdmov eax, ebp
002151bfor eax, esi
002151c1xor eax, ecx
002151c3add eax, edi
002151c5lea edi, [r11+rdx+0x6fa87e4f]
002151cdmov r11l, ecx
002151d0ror eax, 11
002151d3not r11l
002151d6add eax, esi
002151d8mov edx, r11l
002151dbor edx, eax
002151ddxor edx, esi
002151dfadd edx, edi
002151e1lea edi, [r10+rcx-0x1d31920]
002151e9mov ecx, esi
002151ebmov r10l, [rsp-36]
002151f0rol edx, 6
002151f3not ecx
002151f5add edx, eax
002151f7or ecx, edx
002151f9mov r11l, edx
002151fcxor ecx, eax
002151fenot r11l
00215201add ecx, edi
00215203lea edi, [r14+rsi-0x5cfebcec]
0021520bmov esi, eax
0021520dmov r14l, [rsp-12]
00215212rol ecx, 10
00215215not esi
00215217lea eax, [r9+rax+0x4e0811a1]
0021521fadd ecx, edx
00215221or esi, ecx
00215223xor esi, edx
00215225lea edx, [r10+rdx-0x8ac817e]
0021522dadd esi, edi
0021522fmov edi, r11l
00215232mov r11l, ecx
00215235rol esi, 15
00215238not r11l
0021523badd esi, ecx
0021523dor edi, esi
0021523fxor edi, ecx
00215241lea ecx, [r14+rcx-0x42c50dcb]
00215249add edi, eax
0021524bmov eax, r11l
0021524eror edi, 11
00215251add edi, esi
00215253or eax, edi
00215255xor eax, esi
00215257add eax, edx
00215259mov edx, esi
0021525blea esi, [rbx+rsi+0x2ad7d2bb]
00215262mov ebx, [rsp-24]
00215266rol eax, 6
00215269not edx
0021526badd eax, edi
0021526dor edx, eax
0021526fxor edx, edi
00215271add edx, ecx
00215273mov ecx, edi
00215275lea edi, [rbx+rdi-0x14792c6f]
0021527cpop rbx
0021527drol edx, 10
00215280not ecx
00215282pop rbp
00215283pop r12
00215285add edx, eax
00215287pop r13
00215289pop r14
0021528bor ecx, edx
0021528dxor ecx, eax
0021528fadd ecx, esi
00215291mov esi, eax
00215293add eax, [r8]
00215296rol ecx, 15
00215299not esi
0021529bmovd x1, eax
0021529fadd ecx, edx
002152a1or esi, ecx
002152a3xor esi, edx
002152a5add esi, edi
002152a7mov eax, esi
002152a9lea esi, [r15+rcx]
002152adpop r15
002152afror eax, 11
002152b2add eax, esi
002152b4add ecx, [r8+8]
002152b8add edx, [r8+12]
002152bcmovd x0, ecx
002152c0movd x2, edx
002152c4movd x3, eax
002152c8punpckldq x0, x2
002152ccpunpckldq x1, x3
002152d0punpcklqdq x1, x0
002152d4movups [r8], x1
002152d8ret
002152d9db 0x0f
002152daadc [rax], ecx
002152dcret
00214bf0
00214bf0caml_MD5Transform:
00214bf0push r15
00214bf2mov r8, rdi
00214bf5mov rax, rsi
00214bf8push r14
00214bfapush r13
00214bfcpush r12
00214bfepush rbp
00214bffpush rbx
00214c00mov r15l, [rdi+4]
00214c04mov r14l, [rsi]
00214c07mov ebx, [rdi]
00214c09mov edi, [rdi+8]
00214c0cxor edi, [r8+12]
00214c10lea edx, [r14+rbx-0x28955b88]
00214c18and edi, r15l
00214c1bxor edi, [r8+12]
00214c1fmov ebx, [rsi+4]
00214c22add edi, edx
00214c24mov edx, [r8+8]
00214c28mov esi, [r8+12]
00214c2crol edi, 7
00214c2fmov r11l, [rax+12]
00214c33mov [rsp-44], ebx
00214c37add edi, r15l
00214c3axor edx, r15l
00214c3dlea ecx, [rbx+rsi-0x173848aa]
00214c44mov esi, [rax+8]
00214c47and edx, edi
00214c49xor edx, [r8+8]
00214c4dmov r10l, edi
00214c50mov [rsp-16], r11l
00214c55add edx, ecx
00214c57mov ecx, [r8+8]
00214c5bmov [rsp-40], esi
00214c5flea r9l, [r11+r15-0x3e423112]
00214c67rol edx, 12
00214c6alea esi, [rsi+rcx+0x242070db]
00214c71mov ecx, r15l
00214c74add edx, edi
00214c76xor ecx, edi
00214c78xor r10l, edx
00214c7bmov ebp, edx
00214c7dand ecx, edx
00214c7fxor ecx, r15l
00214c82add ecx, esi
00214c84mov esi, r10l
00214c87mov r10l, [rax+16]
00214c8bror ecx, 15
00214c8eadd ecx, edx
00214c90mov [rsp-36], r10l
00214c95and esi, ecx
00214c97xor ebp, ecx
00214c99xor esi, edi
00214c9badd esi, r9l
00214c9elea r9l, [r10+rdi-0xa83f051]
00214ca6mov edi, ebp
00214ca8mov ebp, [rax+20]
00214cabror esi, 10
00214caeadd esi, ecx
00214cb0and edi, esi
00214cb2xor edi, edx
00214cb4add edi, r9l
00214cb7lea r9l, [rbp+rdx+0x4787c62a]
00214cbfmov edx, ecx
00214cc1rol edi, 7
00214cc4xor edx, esi
00214cc6add edi, esi
00214cc8and edx, edi
00214ccamov r12l, edi
00214ccdxor edx, ecx
00214ccfadd edx, r9l
00214cd2mov r9l, [rax+24]
00214cd6rol edx, 12
00214cd9mov [rsp-32], r9l
00214cdelea r9l, [r9+rcx-0x57cfb9ed]
00214ce6mov ecx, esi
00214ce8add edx, edi
00214ceaxor ecx, edi
00214cecmov r13l, [rax+28]
00214cf0xor r12l, edx
00214cf3mov ebx, [rax+36]
00214cf6and ecx, edx
00214cf8xor ecx, esi
00214cfamov [rsp-24], ebx
00214cfeadd ecx, r9l
00214d01lea r9l, [r13+rsi-0x2b96aff]
00214d09mov esi, r12l
00214d0cmov r12l, [rax+32]
00214d10ror ecx, 15
00214d13add ecx, edx
00214d15mov [rsp-28], r12l
00214d1aand esi, ecx
00214d1cxor esi, edi
00214d1eadd esi, r9l
00214d21lea r9l, [r12+rdi+0x698098d8]
00214d29mov edi, edx
00214d2bmov r12l, [rax+56]
00214d2fror esi, 10
00214d32xor edi, ecx
00214d34add esi, ecx
00214d36and edi, esi
00214d38xor edi, edx
00214d3aadd edi, r9l
00214d3dlea r9l, [rbx+rdx-0x74bb0851]
00214d45mov edx, ecx
00214d47mov ebx, [rax+40]
00214d4arol edi, 7
00214d4dxor edx, esi
00214d4fadd edi, esi
00214d51mov [rsp-20], ebx
00214d55and edx, edi
00214d57xor edx, ecx
00214d59add edx, r9l
00214d5clea r9l, [rbx+rcx-42063]
00214d64mov ecx, esi
00214d66mov ebx, [rax+48]
00214d69rol edx, 12
00214d6cxor ecx, edi
00214d6eadd edx, edi
00214d70and ecx, edx
00214d72xor ecx, esi
00214d74add ecx, r9l
00214d77mov r9l, [rax+44]
00214d7bror ecx, 15
00214d7emov r11l, r9l
00214d81lea r9l, [r9+rsi-0x76a32842]
00214d89mov esi, edi
00214d8badd ecx, edx
00214d8dxor esi, edx
00214d8fmov [rsp-12], r11l
00214d94and esi, ecx
00214d96xor esi, edi
00214d98add esi, r9l
00214d9blea r9l, [rbx+rdi+0x6b901122]
00214da3mov edi, edx
00214da5ror esi, 10
00214da8xor edi, ecx
00214daaadd esi, ecx
00214dacand edi, esi
00214daexor edi, edx
00214db0add edi, r9l
00214db3mov r9l, [rax+52]
00214db7rol edi, 7
00214dbalea r10l, [r9+rdx-0x2678e6d]
00214dc2mov edx, ecx
00214dc4add edi, esi
00214dc6xor edx, esi
00214dc8and edx, edi
00214dcaxor edx, ecx
00214dccadd edx, r10l
00214dcflea r10l, [r12+rcx-0x5986bc72]
00214dd7mov ecx, esi
00214dd9rol edx, 12
00214ddcxor ecx, edi
00214ddeadd edx, edi
00214de0and ecx, edx
00214de2xor ecx, esi
00214de4add ecx, r10l
00214de7mov r10l, [rax+60]
00214debror ecx, 15
00214deelea eax, [r10+rsi+0x49b40821]
00214df6mov esi, edi
00214df8add ecx, edx
00214dfaxor esi, edx
00214dfcand esi, ecx
00214dfexor esi, edi
00214e00add esi, eax
00214e02mov eax, [rsp-44]
00214e06ror esi, 10
00214e09add esi, ecx
00214e0blea edi, [rax+rdi-0x9e1da9e]
00214e12mov eax, ecx
00214e14xor eax, esi
00214e16and eax, edx
00214e18xor eax, ecx
00214e1aadd eax, edi
00214e1cmov edi, [rsp-32]
00214e20rol eax, 5
00214e23add eax, esi
00214e25lea edi, [rdi+rdx-0x3fbf4cc0]
00214e2cmov edx, esi
00214e2exor edx, eax
00214e30and edx, ecx
00214e32xor edx, esi
00214e34add edx, edi
00214e36lea edi, [r11+rcx+0x265e5a51]
00214e3emov ecx, eax
00214e40rol edx, 9
00214e43add edx, eax
00214e45xor ecx, edx
00214e47and ecx, esi
00214e49xor ecx, eax
00214e4badd ecx, edi
00214e4dlea edi, [r14+rsi-0x16493856]
00214e55mov esi, edx
00214e57rol ecx, 14
00214e5aadd ecx, edx
00214e5cxor esi, ecx
00214e5eand esi, eax
00214e60xor esi, edx
00214e62add esi, edi
00214e64lea edi, [rbp+rax-0x29d0efa3]
00214e6bmov eax, ecx
00214e6dror esi, 12
00214e70add esi, ecx
00214e72xor eax, esi
00214e74and eax, edx
00214e76xor eax, ecx
00214e78add eax, edi
00214e7amov edi, [rsp-20]
00214e7erol eax, 5
00214e81add eax, esi
00214e83lea edi, [rdi+rdx+0x2441453]
00214e8amov edx, esi
00214e8cxor edx, eax
00214e8eand edx, ecx
00214e90xor edx, esi
00214e92add edx, edi
00214e94lea edi, [r10+rcx-0x275e197f]
00214e9cmov ecx, eax
00214e9erol edx, 9
00214ea1add edx, eax
00214ea3xor ecx, edx
00214ea5and ecx, esi
00214ea7xor ecx, eax
00214ea9add ecx, edi
00214eabmov edi, [rsp-36]
00214eafrol ecx, 14
00214eb2add ecx, edx
00214eb4lea edi, [rdi+rsi-0x182c0438]
00214ebbmov esi, edx
00214ebdxor esi, ecx
00214ebfand esi, eax
00214ec1xor esi, edx
00214ec3add esi, edi
00214ec5mov edi, [rsp-24]
00214ec9ror esi, 12
00214eccadd esi, ecx
00214ecelea edi, [rdi+rax+0x21e1cde6]
00214ed5mov eax, ecx
00214ed7xor eax, esi
00214ed9and eax, edx
00214edbxor eax, ecx
00214eddadd eax, edi
00214edflea edi, [r12+rdx-0x3cc8f82a]
00214ee7mov edx, esi
00214ee9rol eax, 5
00214eecadd eax, esi
00214eeexor edx, eax
00214ef0and edx, ecx
00214ef2xor edx, esi
00214ef4add edx, edi
00214ef6mov edi, [rsp-16]
00214efarol edx, 9
00214efdadd edx, eax
00214efflea edi, [rdi+rcx-0xb2af279]
00214f06mov ecx, eax
00214f08xor ecx, edx
00214f0aand ecx, esi
00214f0cxor ecx, eax
00214f0eadd ecx, edi
00214f10mov edi, [rsp-28]
00214f14rol ecx, 14
00214f17add ecx, edx
00214f19lea esi, [rdi+rsi+0x455a14ed]
00214f20mov edi, edx
00214f22xor edi, ecx
00214f24and edi, eax
00214f26xor edi, edx
00214f28add edi, esi
00214f2alea esi, [r9+rax-0x561c16fb]
00214f32mov eax, ecx
00214f34ror edi, 12
00214f37add edi, ecx
00214f39xor eax, edi
00214f3band eax, edx
00214f3dxor eax, ecx
00214f3fadd eax, esi
00214f41mov esi, [rsp-40]
00214f45rol eax, 5
00214f48add eax, edi
00214f4alea esi, [rsi+rdx-0x3105c08]
00214f51mov edx, edi
00214f53xor edx, eax
00214f55and edx, ecx
00214f57lea ecx, [r13+rcx+0x676f02d9]
00214f5fxor edx, edi
00214f61add edx, esi
00214f63mov esi, eax
00214f65rol edx, 9
00214f68add edx, eax
00214f6axor esi, edx
00214f6cand esi, edi
00214f6elea edi, [rbx+rdi-0x72d5b376]
00214f75xor esi, eax
00214f77mov r11l, edi
00214f7aadd esi, ecx
00214f7cmov ecx, edx
00214f7erol esi, 14
00214f81add esi, edx
00214f83xor ecx, esi
00214f85mov edi, ecx
00214f87and edi, eax
00214f89lea eax, [rbp+rax-0x5c6be]
00214f90xor edi, edx
00214f92add edi, r11l
00214f95mov r11l, [rsp-16]
00214f9aror edi, 12
00214f9dadd edi, esi
00214f9fxor ecx, edi
00214fa1add ecx, eax
00214fa3mov eax, [rsp-28]
00214fa7rol ecx, 4
00214faalea eax, [rax+rdx-0x788e097f]
00214fb1mov edx, esi
00214fb3add ecx, edi
00214fb5xor edx, edi
00214fb7xor edx, ecx
00214fb9add edx, eax
00214fbbmov eax, [rsp-12]
00214fbfrol edx, 11
00214fc2lea eax, [rax+rsi+0x6d9d6122]
00214fc9mov esi, edi
00214fcbadd edx, ecx
00214fcdxor esi, ecx
00214fcflea edi, [r12+rdi-0x21ac7f4]
00214fd7xor esi, edx
00214fd9add esi, eax
00214fdbmov eax, ecx
00214fddrol esi, 16
00214fe0xor eax, edx
00214fe2add esi, edx
00214fe4xor eax, esi
00214fe6add eax, edi
00214fe8mov edi, [rsp-44]
00214fecror eax, 9
00214feflea edi, [rdi+rcx-0x5b4115bc]
00214ff6mov ecx, edx
00214ff8add eax, esi
00214ffaxor ecx, esi
00214ffcxor ecx, eax
00214ffeadd ecx, edi
00215000mov edi, [rsp-36]
00215004rol ecx, 4
00215007lea edx, [rdi+rdx+0x4bdecfa9]
0021500emov edi, esi
00215010add ecx, eax
00215012xor edi, eax
00215014lea esi, [r13+rsi-0x944b4a0]
0021501cxor edi, ecx
0021501eadd edi, edx
00215020mov edx, eax
00215022rol edi, 11
00215025xor edx, ecx
00215027add edi, ecx
00215029xor edx, edi
0021502badd edx, esi
0021502dmov esi, [rsp-20]
00215031rol edx, 16
00215034lea eax, [rsi+rax-0x41404390]
0021503bmov esi, ecx
0021503dadd edx, edi
0021503fxor esi, edi
00215041xor esi, edx
00215043add esi, eax
00215045lea eax, [r9+rcx+0x289b7ec6]
0021504dmov ecx, edi
0021504fror esi, 9
00215052xor ecx, edx
00215054lea edi, [r14+rdi-0x155ed806]
0021505cadd esi, edx
0021505exor ecx, esi
00215060add ecx, eax
00215062mov eax, edx
00215064lea edx, [r11+rdx-0x2b10cf7b]
0021506crol ecx, 4
0021506fxor eax, esi
00215071add ecx, esi
00215073xor eax, ecx
00215075add eax, edi
00215077mov edi, esi
00215079rol eax, 11
0021507cxor edi, ecx
0021507eadd eax, ecx
00215080xor edi, eax
00215082add edi, edx
00215084mov edx, [rsp-32]
00215088rol edi, 16
0021508blea edx, [rdx+rsi+0x4881d05]
00215092mov esi, ecx
00215094add edi, eax
00215096xor esi, eax
00215098xor esi, edi
0021509aadd esi, edx
0021509cmov edx, [rsp-24]
002150a0ror esi, 9
002150a3lea ecx, [rdx+rcx-0x262b2fc7]
002150aamov edx, eax
002150acadd esi, edi
002150aexor edx, edi
002150b0lea eax, [rbx+rax-0x1924661b]
002150b7xor edx, esi
002150b9add edx, ecx
002150bbmov ecx, edi
002150bdrol edx, 4
002150c0add edx, esi
002150c2xor ecx, esi
002150c4xor ecx, edx
002150c6add ecx, eax
002150c8lea eax, [r10+rdi+0x1fa27cf8]
002150d0mov edi, esi
002150d2rol ecx, 11
002150d5xor edi, edx
002150d7add ecx, edx
002150d9xor edi, ecx
002150dbadd edi, eax
002150ddmov eax, [rsp-40]
002150e1rol edi, 16
002150e4lea esi, [rax+rsi-0x3b53a99b]
002150ebmov eax, edx
002150edadd edi, ecx
002150efxor eax, ecx
002150f1xor eax, edi
002150f3add eax, esi
002150f5lea esi, [r14+rdx-0xbd6ddbc]
002150fdmov edx, ecx
002150ffror eax, 9
00215102not edx
00215104add eax, edi
00215106or edx, eax
00215108xor edx, edi
0021510aadd edx, esi
0021510clea esi, [r13+rcx+0x432aff97]
00215114mov ecx, edi
00215116rol edx, 6
00215119not ecx
0021511blea edi, [r12+rdi-0x546bdc59]
00215123add edx, eax
00215125or ecx, edx
00215127xor ecx, eax
00215129add ecx, esi
0021512bmov esi, eax
0021512drol ecx, 10
00215130not esi
00215132add ecx, edx
00215134or esi, ecx
00215136xor esi, edx
00215138add esi, edi
0021513alea edi, [rbp+rax-0x36c5fc7]
00215141mov ebp, edx
00215143rol esi, 15
00215146not ebp
00215148add esi, ecx
0021514amov eax, ebp
0021514cmov ebp, ecx
0021514eor eax, esi
00215150not ebp
00215152xor eax, ecx
00215154add eax, edi
00215156lea edi, [rbx+rdx+0x655b59c3]
0021515dmov edx, ebp
0021515fmov ebx, [rsp-20]
00215163ror eax, 11
00215166add eax, esi
00215168or edx, eax
0021516axor edx, esi
0021516cadd edx, edi
0021516elea edi, [r11+rcx-0x70f3336e]
00215176mov ecx, esi
00215178rol edx, 6
0021517bnot ecx
0021517dadd edx, eax
0021517for ecx, edx
00215181mov ebp, edx
00215183xor ecx, eax
00215185not ebp
00215187add ecx, edi
00215189lea edi, [rbx+rsi-0x100b83]
00215190mov esi, eax
00215192rol ecx, 10
00215195not esi
00215197add ecx, edx
00215199or esi, ecx
0021519bxor esi, edx
0021519dadd esi, edi
0021519fmov edi, [rsp-44]
002151a3mov r11l, [rsp-28]
002151a8rol esi, 15
002151abmov r14l, [rsp-32]
002151b0mov ebx, [rsp-40]
002151b4add esi, ecx
002151b6lea edi, [rdi+rax-0x7a7ba22f]
002151bdmov eax, ebp
002151bfor eax, esi
002151c1xor eax, ecx
002151c3add eax, edi
002151c5lea edi, [r11+rdx+0x6fa87e4f]
002151cdmov r11l, ecx
002151d0ror eax, 11
002151d3not r11l
002151d6add eax, esi
002151d8mov edx, r11l
002151dbor edx, eax
002151ddxor edx, esi
002151dfadd edx, edi
002151e1lea edi, [r10+rcx-0x1d31920]
002151e9mov ecx, esi
002151ebmov r10l, [rsp-36]
002151f0rol edx, 6
002151f3not ecx
002151f5add edx, eax
002151f7or ecx, edx
002151f9mov r11l, edx
002151fcxor ecx, eax
002151fenot r11l
00215201add ecx, edi
00215203lea edi, [r14+rsi-0x5cfebcec]
0021520bmov esi, eax
0021520dmov r14l, [rsp-12]
00215212rol ecx, 10
00215215not esi
00215217lea eax, [r9+rax+0x4e0811a1]
0021521fadd ecx, edx
00215221or esi, ecx
00215223xor esi, edx
00215225lea edx, [r10+rdx-0x8ac817e]
0021522dadd esi, edi
0021522fmov edi, r11l
00215232mov r11l, ecx
00215235rol esi, 15
00215238not r11l
0021523badd esi, ecx
0021523dor edi, esi
0021523fxor edi, ecx
00215241lea ecx, [r14+rcx-0x42c50dcb]
00215249add edi, eax
0021524bmov eax, r11l
0021524eror edi, 11
00215251add edi, esi
00215253or eax, edi
00215255xor eax, esi
00215257add eax, edx
00215259mov edx, esi
0021525blea esi, [rbx+rsi+0x2ad7d2bb]
00215262mov ebx, [rsp-24]
00215266rol eax, 6
00215269not edx
0021526badd eax, edi
0021526dor edx, eax
0021526fxor edx, edi
00215271add edx, ecx
00215273mov ecx, edi
00215275lea edi, [rbx+rdi-0x14792c6f]
0021527cpop rbx
0021527drol edx, 10
00215280not ecx
00215282pop rbp
00215283pop r12
00215285add edx, eax
00215287pop r13
00215289pop r14
0021528bor ecx, edx
0021528dxor ecx, eax
0021528fadd ecx, esi
00215291mov esi, eax
00215293add eax, [r8]
00215296rol ecx, 15
00215299not esi
0021529bmovd x1, eax
0021529fadd ecx, edx
002152a1or esi, ecx
002152a3xor esi, edx
002152a5add esi, edi
002152a7mov eax, esi
002152a9lea esi, [r15+rcx]
002152adpop r15
002152afror eax, 11
002152b2add eax, esi
002152b4add ecx, [r8+8]
002152b8add edx, [r8+12]
002152bcmovd x0, ecx
002152c0movd x2, edx
002152c4movd x3, eax
002152c8punpckldq x0, x2
002152ccpunpckldq x1, x3
002152d0punpcklqdq x1, x0
002152d4movups [r8], x1
002152d8ret
002152d9db 0x0f
002152daadc [rax], ecx
002152dcret
00214bf0
002152dd
002152dd // align 0x10
002152dd // align 0x10
002152e0
002152e0caml_MD5Update:
002152e0push r15
002152e2xor ecx, ecx
002152e4lea r15, [rdi+24]
002152e8push r14
002152eapush r13
002152ecmov r13, rsi
002152efpush r12
002152f1mov r12, rdx
002152f4shl edx, 3
002152f7push rbp
002152f8mov rbp, rdi
002152fbpush rbx
002152fcsub rsp, 24
00215300mov eax, [rdi+16]
00215303add edx, eax
00215305setb cl
00215308mov [rdi+16], edx
0021530bmov edx, [rdi+20]
0021530ecmp ecx, 1
00215311mov rcx, r12
00215314sbb edx, -1
00215317shr rcx, 29
0021531bshr eax, 3
0021531eadd edx, ecx
00215320and eax, 63
00215323mov [rdi+20], edx
00215326je 0x21537c
00215328mov ecx, 64
0021532dlea r15, [rdi+24]
00215331mov edi, eax
00215333sub ecx, eax
00215335add rdi, r15
00215338mov ebx, ecx
0021533acmp r12, rbx
0021533djb 0x215480
00215343cmp ecx, 8
00215346jae 0x2154a0
0021534ctest cl, 4
0021534fjne 0x215500
00215355test ecx, ecx
00215357je 0x21536b
00215359movzx edx, [rsi]
0021535cand ecx, 2
0021535fmov [rdi], dl
00215361jne 0x215511
00215367mov rsi, r15
0021536amov rdi, rbp
0021536dadd r13, rbx
00215370sub r12, rbx
00215373call caml_MD5Transform
00215378cmp r12, 63
0021537c
0021537cloc_21537c:
0021537cjbe 0x2153ec
0021537elea rax, [r12-64]
00215383mov rbx, r13
00215386mov rdx, rax
00215389mov [rsp+8], rax
0021538eand rdx, -64
00215392lea r14, [r13+rdx+64]
00215397nop [rax+rax]
0021539cmovdqu x0, [rbx]
002153a0
002153a0loc_2153a0:
002153a0mov rsi, r15
002153a3mov rdi, rbp
002153a6add rbx, 64
002153aamovups [r15], x0
002153aemovdqu x0, [rbx-48]
002153b3movups [r15+16], x0
002153b8movdqu x0, [rbx-32]
002153bdmovups [r15+32], x0
002153c2movdqu x0, [rbx-16]
002153c7movups [r15+48], x0
002153cccall caml_MD5Transform
002153d1cmp rbx, r14
002153d4jne 0x2153a0
002153d6mov rax, [rsp+8]
002153dband r12l, 63
002153dfand rax, -64
002153e3lea r13, [r13+rax+64]
002153e8mov edx, r12l
002153ebcmp r12l, 8
002153efjb 0x215450
002153f1mov rdx, [r13]
002153f5add rbp, 32
002153f9mov rax, r15
002153fcmov [rbp-8], rdx
00215400mov edx, r12l
00215403and rbp, -8
00215407mov rcx, [r13+rdx-8]
0021540csub rax, rbp
0021540fsub r13, rax
00215412mov [r15+rdx-8], rcx
00215417lea edx, [r12+rax]
0021541band edx, -8
0021541ecmp edx, 8
00215421jb 0x21543f
00215423and edx, -8
00215426xor eax, eax
00215428mov ecx, eax
0021542aadd eax, 8
0021542dmov rsi, [r13+rcx]
00215432mov [rbp+rcx], rsi
00215437cmp eax, edx
00215439jb 0x21542c
0021543badd rsp, 24
0021543f
0021543floc_21543f:
0021543fpop rbx
00215440pop rbp
00215441pop r12
00215443pop r13
00215445pop r14
00215447pop r15
00215449ret
0021544adb 0x5e
0021544bpop r15
0021544dret
0021544e
0021544e 66 90 f.
00215450
00215450loc_215450:
00215450test r12b, 4
00215454jne 0x2154ea
0021545atest r12l, r12l
0021545dje 0x21543f
0021545fmovzx edx, [r13]
00215464mov [rbp+24], dl
00215467test r12b, 2
0021546bje 0x21543f
0021546dmov r12l, r12l
00215470movzx edx, [r13+r12-2]
00215476mov [r15+r12-2], dx
0021547cjmp 0x21543f
0021547e
0021547e 66 90 f.
00215480
00215480loc_215480:
00215480add rsp, 24
00215484mov rdx, r12
00215487pop rbx
00215488pop rbp
00215489pop r12
0021548bpop r13
0021548dpop r14
0021548fpop r15
00215491jmp 0xf47d0
00215496
00215496 66 2e 0f 1f 84 00 00 00 00 00 f.........
002154a0
002154a0loc_2154a0:
002154a0mov rdx, [rsi]
002154a3mov r8, rsi
002154a6mov [rdi], rdx
002154a9mov rdx, [rsi+rbx-8]
002154aemov [rdi+rbx-8], rdx
002154b3lea rdx, [rdi+8]
002154b7and rdx, -8
002154bbsub rdi, rdx
002154beadd ecx, edi
002154c0sub r8, rdi
002154c3and ecx, -8
002154c6cmp ecx, 8
002154c9jb 0x21536b
002154cfand ecx, -8
002154d2xor esi, esi
002154d4
002154d4loc_2154d4:
002154d4mov edi, esi
002154d6add esi, 8
002154d9mov r9, [r8+rdi]
002154ddmov [rdx+rdi], r9
002154e1cmp esi, ecx
002154e3jb 0x2154d4
002154e5jmp 0x21536b
002154ea
002154ealoc_2154ea:
002154eamov ecx, [r13]
002154eemov [rbp+24], ecx
002154f1mov ecx, [r13+rdx-4]
002154f6mov [r15+rdx-4], ecx
002154fbjmp 0x21543f
00215500
00215500loc_215500:
00215500mov edx, [rsi]
00215502mov [rdi], edx
00215504mov edx, [rsi+rbx-4]
00215508mov [rdi+rbx-4], edx
0021550cjmp 0x21536b
00215511
00215511loc_215511:
00215511movzx edx, [rsi+rbx-2]
00215516mov [rdi+rbx-2], dx
0021551bjmp 0x21536b
002152e0
002152e0caml_MD5Update:
002152e0push r15
002152e2xor ecx, ecx
002152e4lea r15, [rdi+24]
002152e8push r14
002152eapush r13
002152ecmov r13, rsi
002152efpush r12
002152f1mov r12, rdx
002152f4shl edx, 3
002152f7push rbp
002152f8mov rbp, rdi
002152fbpush rbx
002152fcsub rsp, 24
00215300mov eax, [rdi+16]
00215303add edx, eax
00215305setb cl
00215308mov [rdi+16], edx
0021530bmov edx, [rdi+20]
0021530ecmp ecx, 1
00215311mov rcx, r12
00215314sbb edx, -1
00215317shr rcx, 29
0021531bshr eax, 3
0021531eadd edx, ecx
00215320and eax, 63
00215323mov [rdi+20], edx
00215326je 0x21537c
00215328mov ecx, 64
0021532dlea r15, [rdi+24]
00215331mov edi, eax
00215333sub ecx, eax
00215335add rdi, r15
00215338mov ebx, ecx
0021533acmp r12, rbx
0021533djb 0x215480
00215343cmp ecx, 8
00215346jae 0x2154a0
0021534ctest cl, 4
0021534fjne 0x215500
00215355test ecx, ecx
00215357je 0x21536b
00215359movzx edx, [rsi]
0021535cand ecx, 2
0021535fmov [rdi], dl
00215361jne 0x215511
00215367mov rsi, r15
0021536amov rdi, rbp
0021536dadd r13, rbx
00215370sub r12, rbx
00215373call caml_MD5Transform
00215378cmp r12, 63
0021537c
0021537cloc_21537c:
0021537cjbe 0x2153ec
0021537elea rax, [r12-64]
00215383mov rbx, r13
00215386mov rdx, rax
00215389mov [rsp+8], rax
0021538eand rdx, -64
00215392lea r14, [r13+rdx+64]
00215397nop [rax+rax]
0021539cmovdqu x0, [rbx]
002153a0
002153a0loc_2153a0:
002153a0mov rsi, r15
002153a3mov rdi, rbp
002153a6add rbx, 64
002153aamovups [r15], x0
002153aemovdqu x0, [rbx-48]
002153b3movups [r15+16], x0
002153b8movdqu x0, [rbx-32]
002153bdmovups [r15+32], x0
002153c2movdqu x0, [rbx-16]
002153c7movups [r15+48], x0
002153cccall caml_MD5Transform
002153d1cmp rbx, r14
002153d4jne 0x2153a0
002153d6mov rax, [rsp+8]
002153dband r12l, 63
002153dfand rax, -64
002153e3lea r13, [r13+rax+64]
002153e8mov edx, r12l
002153ebcmp r12l, 8
002153efjb 0x215450
002153f1mov rdx, [r13]
002153f5add rbp, 32
002153f9mov rax, r15
002153fcmov [rbp-8], rdx
00215400mov edx, r12l
00215403and rbp, -8
00215407mov rcx, [r13+rdx-8]
0021540csub rax, rbp
0021540fsub r13, rax
00215412mov [r15+rdx-8], rcx
00215417lea edx, [r12+rax]
0021541band edx, -8
0021541ecmp edx, 8
00215421jb 0x21543f
00215423and edx, -8
00215426xor eax, eax
00215428mov ecx, eax
0021542aadd eax, 8
0021542dmov rsi, [r13+rcx]
00215432mov [rbp+rcx], rsi
00215437cmp eax, edx
00215439jb 0x21542c
0021543badd rsp, 24
0021543f
0021543floc_21543f:
0021543fpop rbx
00215440pop rbp
00215441pop r12
00215443pop r13
00215445pop r14
00215447pop r15
00215449ret
0021544adb 0x5e
0021544bpop r15
0021544dret
0021544e
0021544e 66 90 f.
00215450
00215450loc_215450:
00215450test r12b, 4
00215454jne 0x2154ea
0021545atest r12l, r12l
0021545dje 0x21543f
0021545fmovzx edx, [r13]
00215464mov [rbp+24], dl
00215467test r12b, 2
0021546bje 0x21543f
0021546dmov r12l, r12l
00215470movzx edx, [r13+r12-2]
00215476mov [r15+r12-2], dx
0021547cjmp 0x21543f
0021547e
0021547e 66 90 f.
00215480
00215480loc_215480:
00215480add rsp, 24
00215484mov rdx, r12
00215487pop rbx
00215488pop rbp
00215489pop r12
0021548bpop r13
0021548dpop r14
0021548fpop r15
00215491jmp 0xf47d0
00215496
00215496 66 2e 0f 1f 84 00 00 00 00 00 f.........
002154a0
002154a0loc_2154a0:
002154a0mov rdx, [rsi]
002154a3mov r8, rsi
002154a6mov [rdi], rdx
002154a9mov rdx, [rsi+rbx-8]
002154aemov [rdi+rbx-8], rdx
002154b3lea rdx, [rdi+8]
002154b7and rdx, -8
002154bbsub rdi, rdx
002154beadd ecx, edi
002154c0sub r8, rdi
002154c3and ecx, -8
002154c6cmp ecx, 8
002154c9jb 0x21536b
002154cfand ecx, -8
002154d2xor esi, esi
002154d4
002154d4loc_2154d4:
002154d4mov edi, esi
002154d6add esi, 8
002154d9mov r9, [r8+rdi]
002154ddmov [rdx+rdi], r9
002154e1cmp esi, ecx
002154e3jb 0x2154d4
002154e5jmp 0x21536b
002154ea
002154ealoc_2154ea:
002154eamov ecx, [r13]
002154eemov [rbp+24], ecx
002154f1mov ecx, [r13+rdx-4]
002154f6mov [r15+rdx-4], ecx
002154fbjmp 0x21543f
00215500
00215500loc_215500:
00215500mov edx, [rsi]
00215502mov [rdi], edx
00215504mov edx, [rsi+rbx-4]
00215508mov [rdi+rbx-4], edx
0021550cjmp 0x21536b
00215511
00215511loc_215511:
00215511movzx edx, [rsi+rbx-2]
00215516mov [rdi+rbx-2], dx
0021551bjmp 0x21536b
002152e0
00215520
00215520caml_MD5Final:
00215520push rbp
00215521mov ecx, 63
00215526mov rbp, rdi
00215529push rbx
0021552amov rbx, rsi
0021552dadd rsi, 24
00215531sub rsp, 24
00215535mov eax, [rsi-8]
00215538shr eax, 3
0021553band eax, 63
0021553emov edx, eax
00215540sub ecx, eax
00215542add rdx, rsi
00215545mov [rdx], -128
00215548lea rdi, [rdx+1]
0021554ccmp ecx, 7
0021554fja 0x2155e0
00215555test ecx, ecx
00215557je 0x21556c
00215559xor eax, eax
0021555bmov edx, eax
0021555dadd eax, 1
00215560mov [rdi+rdx], 0
00215564cmp eax, ecx
00215566jb 0x21555f
00215568mov rdi, rbx
0021556bmov [rsp+8], rsi
00215570call caml_MD5Transform
00215575mov rsi, [rsp+8]
0021557apxor x0, x0
0021557emovups [rbx+24], x0
00215582mov [rsi+48], 0
0021558amovups [rsi+16], x0
0021558emovups [rsi+32], x0
00215592mov rax, [rbx+16]
00215596
00215596loc_215596:
00215596mov rdi, rbx
00215599mov [rbx+80], rax
0021559dcall caml_MD5Transform
002155a2movdqu x0, [rbx]
002155a6lea rdi, [rbx+8]
002155aaxor eax, eax
002155acand rdi, -8
002155b0movups [rbp], x0
002155b4mov [rbx], 0
002155bbmov [rbx+80], 0
002155c3sub rbx, rdi
002155c6lea ecx, [rbx+88]
002155c9shr ecx, 3
002155ccrep stosq [rdi], rax
002155cfadd rsp, 24
002155d3pop rbx
002155d4pop rbp
002155d5ret
002155d6db 0x18
002155d7pop rbx
002155d8pop rbp
002155d9ret
002155da
002155da 66 0f 1f 44 00 00 f..D..
002155e0
002155e0loc_2155e0:
002155e0mov ecx, 55
002155e5xor r8l, r8l
002155e8sub ecx, eax
002155eacmp ecx, 8
002155edjae 0x215610
002155eftest cl, 4
002155f2jne 0x215658
002155f4test ecx, ecx
002155f6je 0x215596
002155f8mov [rdx+1], 0
002155fctest cl, 2
002155ffje 0x215596
00215601xor eax, eax
00215603mov [rdi+rcx-2], ax
00215608jmp 0x215596
0021560a
0021560a 66 0f 1f 44 00 00 f..D..
00215610
00215610loc_215610:
00215610mov [rdx+1], 0
00215618add rdx, 9
0021561cmov eax, ecx
0021561emov [rdi+rax-8], 0
00215627and rdx, -8
0021562bsub rdi, rdx
0021562eadd ecx, edi
00215630and ecx, -8
00215633cmp ecx, 8
00215636jb 0x215596
0021563cand ecx, -8
0021563fxor eax, eax
00215641
00215641loc_215641:
00215641mov edi, eax
00215643add eax, 8
00215646mov [rdx+rdi], r8
0021564acmp eax, ecx
0021564cjb 0x215641
0021564ejmp 0x215596
00215653
00215653 0f 1f 44 00 00 ..D..
00215658
00215658loc_215658:
00215658mov [rdx+1], 0
0021565fmov [rdi+rcx-4], 0
00215667jmp 0x215596
00215520
00215520caml_MD5Final:
00215520push rbp
00215521mov ecx, 63
00215526mov rbp, rdi
00215529push rbx
0021552amov rbx, rsi
0021552dadd rsi, 24
00215531sub rsp, 24
00215535mov eax, [rsi-8]
00215538shr eax, 3
0021553band eax, 63
0021553emov edx, eax
00215540sub ecx, eax
00215542add rdx, rsi
00215545mov [rdx], -128
00215548lea rdi, [rdx+1]
0021554ccmp ecx, 7
0021554fja 0x2155e0
00215555test ecx, ecx
00215557je 0x21556c
00215559xor eax, eax
0021555bmov edx, eax
0021555dadd eax, 1
00215560mov [rdi+rdx], 0
00215564cmp eax, ecx
00215566jb 0x21555f
00215568mov rdi, rbx
0021556bmov [rsp+8], rsi
00215570call caml_MD5Transform
00215575mov rsi, [rsp+8]
0021557apxor x0, x0
0021557emovups [rbx+24], x0
00215582mov [rsi+48], 0
0021558amovups [rsi+16], x0
0021558emovups [rsi+32], x0
00215592mov rax, [rbx+16]
00215596
00215596loc_215596:
00215596mov rdi, rbx
00215599mov [rbx+80], rax
0021559dcall caml_MD5Transform
002155a2movdqu x0, [rbx]
002155a6lea rdi, [rbx+8]
002155aaxor eax, eax
002155acand rdi, -8
002155b0movups [rbp], x0
002155b4mov [rbx], 0
002155bbmov [rbx+80], 0
002155c3sub rbx, rdi
002155c6lea ecx, [rbx+88]
002155c9shr ecx, 3
002155ccrep stosq [rdi], rax
002155cfadd rsp, 24
002155d3pop rbx
002155d4pop rbp
002155d5ret
002155d6db 0x18
002155d7pop rbx
002155d8pop rbp
002155d9ret
002155da
002155da 66 0f 1f 44 00 00 f..D..
002155e0
002155e0loc_2155e0:
002155e0mov ecx, 55
002155e5xor r8l, r8l
002155e8sub ecx, eax
002155eacmp ecx, 8
002155edjae 0x215610
002155eftest cl, 4
002155f2jne 0x215658
002155f4test ecx, ecx
002155f6je 0x215596
002155f8mov [rdx+1], 0
002155fctest cl, 2
002155ffje 0x215596
00215601xor eax, eax
00215603mov [rdi+rcx-2], ax
00215608jmp 0x215596
0021560a
0021560a 66 0f 1f 44 00 00 f..D..
00215610
00215610loc_215610:
00215610mov [rdx+1], 0
00215618add rdx, 9
0021561cmov eax, ecx
0021561emov [rdi+rax-8], 0
00215627and rdx, -8
0021562bsub rdi, rdx
0021562eadd ecx, edi
00215630and ecx, -8
00215633cmp ecx, 8
00215636jb 0x215596
0021563cand ecx, -8
0021563fxor eax, eax
00215641
00215641loc_215641:
00215641mov edi, eax
00215643add eax, 8
00215646mov [rdx+rdi], r8
0021564acmp eax, ecx
0021564cjb 0x215641
0021564ejmp 0x215596
00215653
00215653 0f 1f 44 00 00 ..D..
00215658
00215658loc_215658:
00215658mov [rdx+1], 0
0021565fmov [rdi+rcx-4], 0
00215667jmp 0x215596
00215520
0021566c
0021566c // align 0x10
0021566c // align 0x10
00215670
00215670caml_md5_string:
00215670push rbp
00215671sar rsi, 1
00215674sar rdx, 1
00215677push rbx
00215678add rsi, rdi
0021567bsub rsp, 104
0021567fmovdqa x0, [rip+0x14ab5]
00215687mov rax, [0x28]
00215690mov [rsp+88], rax
00215695xor eax, eax
00215697mov rdi, rsp
0021569amov [rsp+16], 0
002156a3movaps [rsp], x0
002156a7call caml_MD5Update
002156acmov edi, 16
002156b1call caml_alloc_string
002156b6mov rsi, rsp
002156b9mov rdi, rax
002156bcmov rbx, rax
002156bfcall caml_MD5Final
002156c4mov rax, [rsp+88]
002156c9sub rax, [0x28]
002156d2jne 0x2156e2
002156d4add rsp, 104
002156d8mov rax, rbx
002156dbpop rbx
002156dcpop rbp
002156ddret
002156decall fn_f4590
002156e3db 0xa9
002156e4out dx, al
002156e5in eax, dx
002156e6db 0xff
00215670
00215670caml_md5_string:
00215670push rbp
00215671sar rsi, 1
00215674sar rdx, 1
00215677push rbx
00215678add rsi, rdi
0021567bsub rsp, 104
0021567fmovdqa x0, [rip+0x14ab5]
00215687mov rax, [0x28]
00215690mov [rsp+88], rax
00215695xor eax, eax
00215697mov rdi, rsp
0021569amov [rsp+16], 0
002156a3movaps [rsp], x0
002156a7call caml_MD5Update
002156acmov edi, 16
002156b1call caml_alloc_string
002156b6mov rsi, rsp
002156b9mov rdi, rax
002156bcmov rbx, rax
002156bfcall caml_MD5Final
002156c4mov rax, [rsp+88]
002156c9sub rax, [0x28]
002156d2jne 0x2156e2
002156d4add rsp, 104
002156d8mov rax, rbx
002156dbpop rbx
002156dcpop rbp
002156ddret
002156decall fn_f4590
002156e3db 0xa9
002156e4out dx, al
002156e5in eax, dx
002156e6db 0xff
00215670
002156e7
002156e7 // align 0x10
002156e7 // align 0x10
002156f0
002156f0caml_md5_channel:
002156f0push r15
002156f2push r14
002156f4push r13
002156f6push r12
002156f8push rbp
002156f9push rbx
002156fasub rsp, 4096
00215701or [rsp], 0
00215706sub rsp, 136
0021570dmov rax, [rip+0x608d0]
00215714mov r15, [0x28]
0021571dmov [rsp+4216], r15
00215725mov r15, rsi
00215728mov r12, rdi
0021572blea rbx, [rsp+112]
00215730lea r13, [rsp+16]
00215735mov rax, [rax]
00215739mov [rsp], rax
0021573dmov rax, [rax+160]
00215744mov [rsp+8], rax
00215749call caml_channel_lock
0021574emovdqa x0, [rip+0x149e6]
00215756mov [rsp+32], 0
0021575fmovaps [rsp+16], x0
00215764test r15, r15
00215767js 0x215826
0021576djle 0x21583c
00215773lea rbp, [rsp+16]
00215778nop [rax]
0021577cmov edx, 4096
00215781mov rsi, rbx
00215784mov rdi, r12
00215787cmp r15, rdx
0021578acmovbe rdx, r15
0021578ecall caml_getblock
00215793movsxd r14, eax
00215796test r14, r14
00215799je 0x215846
0021579fmov rdx, r14
002157a2mov rsi, rbx
002157a5mov rdi, rbp
002157a8sub r15, r14
002157abcall caml_MD5Update
002157b0mov r13, rbp
002157b3test r15, r15
002157b6jg 0x215780
002157b8mov edi, 16
002157bdcall caml_alloc_string
002157c2mov rsi, r13
002157c5mov rdi, rax
002157c8mov rbx, rax
002157cbcall caml_MD5Final
002157d0mov rdi, r12
002157d3call caml_channel_unlock
002157d8mov rax, [rsp]
002157dcmov rcx, [rsp+8]
002157e1mov [rax+160], rcx
002157e8mov rax, [rsp+4216]
002157f0sub rax, [0x28]
002157f9jne 0x21584b
002157fbadd rsp, 4232
00215802mov rax, rbx
00215805pop rbx
00215806pop rbp
00215807pop r12
00215809pop r13
0021580bpop r14
0021580dpop r15
0021580fret
00215810db 0x5e
00215811pop r15
00215813ret
00215814
00215814 0f 1f 40 00 ..@.
00215818
00215818loc_215818:
00215818movsxd rdx, eax
0021581bmov rsi, rbx
0021581emov rdi, r13
00215821call caml_MD5Update
00215826
00215826loc_215826:
00215826mov edx, 4096
0021582bmov rsi, rbx
0021582emov rdi, r12
00215831call caml_getblock
00215836test eax, eax
00215838jne 0x215818
0021583ajmp 0x2157bc
0021583c
0021583cloc_21583c:
0021583clea r13, [rsp+16]
00215841jmp 0x2157bc
00215846
00215846loc_215846:
00215846call caml_raise_end_of_file
0021584b
0021584bloc_21584b:
0021584bcall fn_f4590
002156f0
002156f0caml_md5_channel:
002156f0push r15
002156f2push r14
002156f4push r13
002156f6push r12
002156f8push rbp
002156f9push rbx
002156fasub rsp, 4096
00215701or [rsp], 0
00215706sub rsp, 136
0021570dmov rax, [rip+0x608d0]
00215714mov r15, [0x28]
0021571dmov [rsp+4216], r15
00215725mov r15, rsi
00215728mov r12, rdi
0021572blea rbx, [rsp+112]
00215730lea r13, [rsp+16]
00215735mov rax, [rax]
00215739mov [rsp], rax
0021573dmov rax, [rax+160]
00215744mov [rsp+8], rax
00215749call caml_channel_lock
0021574emovdqa x0, [rip+0x149e6]
00215756mov [rsp+32], 0
0021575fmovaps [rsp+16], x0
00215764test r15, r15
00215767js 0x215826
0021576djle 0x21583c
00215773lea rbp, [rsp+16]
00215778nop [rax]
0021577cmov edx, 4096
00215781mov rsi, rbx
00215784mov rdi, r12
00215787cmp r15, rdx
0021578acmovbe rdx, r15
0021578ecall caml_getblock
00215793movsxd r14, eax
00215796test r14, r14
00215799je 0x215846
0021579fmov rdx, r14
002157a2mov rsi, rbx
002157a5mov rdi, rbp
002157a8sub r15, r14
002157abcall caml_MD5Update
002157b0mov r13, rbp
002157b3test r15, r15
002157b6jg 0x215780
002157b8mov edi, 16
002157bdcall caml_alloc_string
002157c2mov rsi, r13
002157c5mov rdi, rax
002157c8mov rbx, rax
002157cbcall caml_MD5Final
002157d0mov rdi, r12
002157d3call caml_channel_unlock
002157d8mov rax, [rsp]
002157dcmov rcx, [rsp+8]
002157e1mov [rax+160], rcx
002157e8mov rax, [rsp+4216]
002157f0sub rax, [0x28]
002157f9jne 0x21584b
002157fbadd rsp, 4232
00215802mov rax, rbx
00215805pop rbx
00215806pop rbp
00215807pop r12
00215809pop r13
0021580bpop r14
0021580dpop r15
0021580fret
00215810db 0x5e
00215811pop r15
00215813ret
00215814
00215814 0f 1f 40 00 ..@.
00215818
00215818loc_215818:
00215818movsxd rdx, eax
0021581bmov rsi, rbx
0021581emov rdi, r13
00215821call caml_MD5Update
00215826
00215826loc_215826:
00215826mov edx, 4096
0021582bmov rsi, rbx
0021582emov rdi, r12
00215831call caml_getblock
00215836test eax, eax
00215838jne 0x215818
0021583ajmp 0x2157bc
0021583c
0021583cloc_21583c:
0021583clea r13, [rsp+16]
00215841jmp 0x2157bc
00215846
00215846loc_215846:
00215846call caml_raise_end_of_file
0021584b
0021584bloc_21584b:
0021584bcall fn_f4590
002156f0
00215850
00215850caml_md5_chan:
00215850push rbp
00215851push rbx
00215852sub rsp, 104
00215856movdqa x0, [rip+0x1486e]
0021585emov [rsp], rsi
00215862movq x1, rsp
00215867sar rsi, 1
0021586amov [rsp+8], rdi
0021586fmov rax, [0x28]
00215878mov [rsp+88], rax
0021587dmov rax, [rip+0x60760]
00215884mov rbx, [rax]
00215888lea rax, [rsp+16]
0021588dmovups [rsp+24], x0
00215892mov rbp, [rbx+160]
00215899mov [rbx+160], rax
002158a0lea rax, [rsp+8]
002158a5movq x0, rax
002158aapunpcklqdq x0, x1
002158aemov [rsp+16], rbp
002158b3movups [rsp+40], x0
002158b8mov rdi, [rdi+8]
002158bccall caml_md5_channel
002158c1mov [rbx+160], rbp
002158c8mov rdx, [rsp+88]
002158cdsub rdx, [0x28]
002158d6jne 0x2158e3
002158d8add rsp, 104
002158dcpop rbx
002158ddpop rbp
002158deret
002158dfcall fn_f4590
002158e4db 0xa8
002158e5in al, dx
002158e6in eax, dx
002158e7db 0xff
00215850
00215850caml_md5_chan:
00215850push rbp
00215851push rbx
00215852sub rsp, 104
00215856movdqa x0, [rip+0x1486e]
0021585emov [rsp], rsi
00215862movq x1, rsp
00215867sar rsi, 1
0021586amov [rsp+8], rdi
0021586fmov rax, [0x28]
00215878mov [rsp+88], rax
0021587dmov rax, [rip+0x60760]
00215884mov rbx, [rax]
00215888lea rax, [rsp+16]
0021588dmovups [rsp+24], x0
00215892mov rbp, [rbx+160]
00215899mov [rbx+160], rax
002158a0lea rax, [rsp+8]
002158a5movq x0, rax
002158aapunpcklqdq x0, x1
002158aemov [rsp+16], rbp
002158b3movups [rsp+40], x0
002158b8mov rdi, [rdi+8]
002158bccall caml_md5_channel
002158c1mov [rbx+160], rbp
002158c8mov rdx, [rsp+88]
002158cdsub rdx, [0x28]
002158d6jne 0x2158e3
002158d8add rsp, 104
002158dcpop rbx
002158ddpop rbp
002158deret
002158dfcall fn_f4590
002158e4db 0xa8
002158e5in al, dx
002158e6in eax, dx
002158e7db 0xff
00215850
002158e8
002158e8 // align 0x10
002158e8 // align 0x10
002158f0
002158f0caml_md5_block:
002158f0push rbp
002158f1push rbx
002158f2sub rsp, 104
002158f6movdqa x0, [rip+0x1483e]
002158femov rbx, [0x28]
00215907mov [rsp+88], rbx
0021590cmov rbx, rdi
0021590fmov rdi, rsp
00215912mov [rsp+16], 0
0021591bmovaps [rsp], x0
0021591fcall caml_MD5Update
00215924mov rsi, rsp
00215927mov rdi, rbx
0021592acall caml_MD5Final
0021592fmov rax, [rsp+88]
00215934sub rax, [0x28]
0021593djne 0x21594a
0021593fadd rsp, 104
00215943pop rbx
00215944pop rbp
00215945ret
00215946call fn_f4590
0021594bdb 0x41
0021594cin al, dx
0021594din eax, dx
0021594edb 0xff
002158f0
002158f0caml_md5_block:
002158f0push rbp
002158f1push rbx
002158f2sub rsp, 104
002158f6movdqa x0, [rip+0x1483e]
002158femov rbx, [0x28]
00215907mov [rsp+88], rbx
0021590cmov rbx, rdi
0021590fmov rdi, rsp
00215912mov [rsp+16], 0
0021591bmovaps [rsp], x0
0021591fcall caml_MD5Update
00215924mov rsi, rsp
00215927mov rdi, rbx
0021592acall caml_MD5Final
0021592fmov rax, [rsp+88]
00215934sub rax, [0x28]
0021593djne 0x21594a
0021593fadd rsp, 104
00215943pop rbx
00215944pop rbp
00215945ret
00215946call fn_f4590
0021594bdb 0x41
0021594cin al, dx
0021594din eax, dx
0021594edb 0xff
002158f0
0021594f
0021594f // align 0x10
0021594f // align 0x10
Loading..