File hevea_f46f610a6b0078f4aa208dda361f21de574cc56ad64b32889301afc466d33979.elf
Function:
Loading..
001fdd40
001fdd40caml_ba_fill:
001fdd40push r15
001fdd42push r14
001fdd44push r13
001fdd46push r12
001fdd48push rbp
001fdd49push rbx
001fdd4asub rsp, 120
001fdd4emov rax, [rip+0x7828f]
001fdd55mov [rsp+24], rdi
001fdd5amov rdi, [0x28]
001fdd63mov [rsp+104], rdi
001fdd68mov rdi, rsi
001fdd6bmov r13, [rax]
001fdd6flea rax, [rsp+32]
001fdd74mov r14, [r13+160]
001fdd7bmov [r13+160], rax
001fdd82mov eax, 1
001fdd87movq x0, rax
001fdd8clea rax, [rsp+24]
001fdd91mov [rsp+56], rax
001fdd96mov rax, [rsp+24]
001fdd9bpunpcklqdq x0, x0
001fdd9fmovups [rsp+40], x0
001fdda4mov rsi, [rax+16]
001fdda8mov [rsp+32], r14
001fddadlea rcx, [rax+8]
001fddb1mov rbp, [rax+8]
001fddb5test rsi, rsi
001fddb8jle 0x1fe360
001fddbemov ebx, 1
001fddc3xor edx, edx
001fddc5xor eax, eax
001fddc7nop [rax+rax]
001fddd2nop [rax+rax]
001fdddcadd edx, 1
001fdddfimul rbx, [rcx+8*rax+32]
001fdde5movsxd rax, edx
001fdde8cmp rax, rsi
001fddebjl 0x1fdde0
001fddedmov rax, [rcx+16]
001fddf1mov r12, rbx
001fddf4movzx edx, al
001fddf7cmp al, 13
001fddf9ja 0xf488e
001fddfflea rcx, [rip+0x33a2a]
001fde06movsxd rdx, [rcx+4*rdx]
001fde0aadd rdx, rcx
001fde0djmp rdx
001fde10nop [rax]
001fde14sar rdi, 1
001fde17mov r15, rdi
001fde1acmp rbx, 4095
001fde21jg 0x1fe456
001fde27test ah, 4
001fde2aje 0x1fe61a
001fde30call caml_enter_blocking_section
001fde35test rbx, rbx
001fde38jle 0x1fdfa8
001fde3emovzx esi, r15b
001fde42
001fde42loc_1fde42:
001fde42mov rdx, r12
001fde45mov rdi, rbp
001fde48call fn_f40e0
001fde4djmp 0x1fdfa8
001fde52nop [rax+rax]
001fde5csar rdi, 1
001fde5fmov r15, rdi
001fde62cmp rbx, 4095
001fde69jg 0x1fe5ec
001fde6ftest ah, 4
001fde72je 0x1fe427
001fde78call caml_enter_blocking_section
001fde7dtest rbx, rbx
001fde80jle 0x1fdfa8
001fde86mov ecx, 1
001fde8blea rdx, [rbp+2*r12]
001fde90and r12l, 1
001fde94mov eax, r15l
001fde97je 0x1fdec0
001fde99mov [rbp], r15w
001fde9eadd rbp, 2
001fdea2cmp rbp, rdx
001fdea5je 0x1fded1
001fdea7nop [rax+rax]
001fdeb2nop [rax+rax]
001fdebcmov [rbp], ax
001fdec0
001fdec0loc_1fdec0:
001fdec0add rbp, 4
001fdec4mov [rbp-2], ax
001fdec8cmp rbp, rdx
001fdecbjne 0x1fdec0
001fdecdtest ecx, ecx
001fdecfje 0x1fe1b0
001fded5jmp 0x1fdfa8
001fdedamov r12l, 1
001fdee0pxor x1, x1
001fdee4cvtsd2ss x1, [rdi]
001fdee8movd edx, x1
001fdeecmov ebx, edx
001fdeeeand ebx, 0x7fffffff
001fdef4cmp ebx, 0x477fffff
001fdefaja 0x1fe380
001fdf00cmp ebx, 0x387fffff
001fdf06ja 0x1fe637
001fdf0cmovd x2, ebx
001fdf10addss x2, [rip+0x2c0f0]
001fdf18movd ebx, x2
001fdf1cshr edx, 16
001fdf1fand edx, 32768
001fdf25or ebx, edx
001fdf27cmp r12, 4095
001fdf2ejg 0x1fe5e2
001fdf34test ah, 4
001fdf37je 0x1fe60a
001fdf3dcall caml_enter_blocking_section
001fdf42test r12, r12
001fdf45jle 0x1fdfa8
001fdf47mov edx, 1
001fdf4clea rax, [rbp+2*r12]
001fdf51and r12l, 1
001fdf55je 0x1fdf80
001fdf57mov [rbp], bx
001fdf5badd rbp, 2
001fdf5fcmp rax, rbp
001fdf62je 0x1fdfa0
001fdf64nop [rax+rax]
001fdf6fnop [rax+rax]
001fdf7anop
001fdf7cmov [rbp], bx
001fdf80
001fdf80loc_1fdf80:
001fdf80add rbp, 4
001fdf84mov [rbp-2], bx
001fdf88cmp rax, rbp
001fdf8bjne 0x1fdf80
001fdf8dnop [rax+rax]
001fdf98nop [rax]
001fdf9ctest edx, edx
001fdf9eje 0x1fe1b0
001fdfa4call caml_leave_blocking_section
001fdfa9jmp 0x1fe1b0
001fdfaemov r15, [rdi+8]
001fdfb2cmp rbx, 4095
001fdfb9jg 0x1fe5f6
001fdfbftest ah, 4
001fdfc2jne 0x1fe3df
001fdfc8test rbx, rbx
001fdfcbjle 0x1fe1b0
001fdfd1xor edx, edx
001fdfd3xor eax, eax
001fdfd5test r12b, 1
001fdfd9je 0x1fe000
001fdfdbmov [rbp], r15
001fdfdfmov eax, 1
001fdfe4cmp r12, 1
001fdfe8je 0x1fdfa0
001fdfeanop [rax+rax]
001fdff5nop [rax]
001fdffcmov [rbp+8*rax], r15
001fe001mov [rbp+8*rax+8], r15
001fe006add rax, 2
001fe00acmp r12, rax
001fe00djne 0x1fe000
001fe00fjmp 0x1fdfa0
001fe011sar rdi, 1
001fe014mov r15, rdi
001fe017cmp rbx, 4095
001fe01ejg 0x1fe5d8
001fe024test ah, 4
001fe027je 0x1fe3bf
001fe02dcall caml_enter_blocking_section
001fe032test rbx, rbx
001fe035jle 0x1fdfa8
001fe03bmov edx, 1
001fe040xor eax, eax
001fe042test r12b, 1
001fe046je 0x1fe060
001fe048mov eax, 1
001fe04dmov [rbp], r15
001fe051cmp rax, r12
001fe054je 0x1fdfa0
001fe05anop
001fe05cmov [rbp+8*rax], r15
001fe061mov [rbp+8*rax+8], r15
001fe066add rax, 2
001fe06acmp rax, r12
001fe06djne 0x1fe060
001fe06fjmp 0x1fdfa0
001fe074mov r15, [rdi+8]
001fe078cmp rbx, 4095
001fe07fjg 0x1fe5a6
001fe085test ah, 4
001fe088jne 0x1fe3a7
001fe08etest rbx, rbx
001fe091jle 0x1fe1b0
001fe097xor edx, edx
001fe099xor eax, eax
001fe09btest r12b, 1
001fe09fje 0x1fe0c0
001fe0a1mov [rbp], r15
001fe0a5mov eax, 1
001fe0aacmp r12, 1
001fe0aeje 0x1fdfa0
001fe0b4nop [rax+rax]
001fe0bcmov [rbp+8*rax], r15
001fe0c1mov [rbp+8*rax+8], r15
001fe0c6add rax, 2
001fe0cacmp r12, rax
001fe0cdjne 0x1fe0c0
001fe0cfjmp 0x1fdfa0
001fe0d4movupd x0, [rdi]
001fe0d8lea rdx, [rbx+rbx]
001fe0dccvtpd2ps x0, x0
001fe0e0cmp rdx, 4095
001fe0e7jg 0x1fe0f6
001fe0e9test ah, 4
001fe0ecje 0x1fe3f7
001fe0f2movlps [rsp], x0
001fe0f6
001fe0f6loc_1fe0f6:
001fe0f6call caml_enter_blocking_section
001fe0fbtest rbx, rbx
001fe0femovq x0, [rsp]
001fe103mov edx, 1
001fe108jle 0x1fdfa8
001fe10exor eax, eax
001fe110test r12b, 1
001fe114je 0x1fe140
001fe116mov eax, 1
001fe11bmovlps [rbp], x0
001fe11fcmp rax, r12
001fe122je 0x1fdfa0
001fe128nop [rax+rax]
001fe133nop [rax+rax]
001fe13cmovlps [rbp+8*rax], x0
001fe141movlps [rbp+8*rax+8], x0
001fe146add rax, 2
001fe14acmp rax, r12
001fe14djne 0x1fe140
001fe14fjmp 0x1fdfa0
001fe154lea rdx, [rbx+rbx]
001fe158movupd x0, [rdi]
001fe15ccmp rdx, 4095
001fe163jg 0x1fe172
001fe165test ah, 4
001fe168je 0x1fe407
001fe16emovaps [rsp], x0
001fe172
001fe172loc_1fe172:
001fe172call caml_enter_blocking_section
001fe177test rbx, rbx
001fe17amovapd x0, [rsp]
001fe17fmov eax, 1
001fe184jle 0x1fdfa8
001fe18anop
001fe18cadd rbp, 16
001fe190
001fe190loc_1fe190:
001fe190movups [rbp-16], x0
001fe194sub r12, 1
001fe198jne 0x1fe190
001fe19atest eax, eax
001fe19cjne 0x1fdfa8
001fe1a2nop [rax+rax]
001fe1acmov [r13+160], r14
001fe1b3mov rax, [rsp+104]
001fe1b8sub rax, [0x28]
001fe1c1jne 0x1fe6cb
001fe1c7add rsp, 120
001fe1cbmov eax, 1
001fe1d0pop rbx
001fe1d1pop rbp
001fe1d2pop r12
001fe1d4pop r13
001fe1d6pop r14
001fe1d8pop r15
001fe1daret
001fe1dbmovsd_xmm x0, [rdi]
001fe1dfcmp rbx, 4095
001fe1e6jg 0x1fe5b0
001fe1ectest ah, 4
001fe1efje 0x1fe397
001fe1f5movsd_xmm [rsp], x0
001fe1facall caml_enter_blocking_section
001fe1fftest rbx, rbx
001fe202movsd_xmm x0, [rsp]
001fe207jle 0x1fdfa8
001fe20dmov edx, 1
001fe212xor eax, eax
001fe214test r12b, 1
001fe218je 0x1fe240
001fe21amovsd_xmm [rbp], x0
001fe21fmov eax, 1
001fe224cmp r12, 1
001fe228je 0x1fdfa0
001fe22enop [rax+rax]
001fe239nop [rax]
001fe23cmovsd_xmm [rbp+8*rax], x0
001fe242movsd_xmm [rbp+8*rax+8], x0
001fe248add rax, 2
001fe24ccmp r12, rax
001fe24fjne 0x1fe240
001fe251jmp 0x1fdfa0
001fe256mov r15l, [rdi+8]
001fe25acmp rbx, 4095
001fe261jg 0x1fe600
001fe267test ah, 4
001fe26aje 0x1fe3cf
001fe270call caml_enter_blocking_section
001fe275test rbx, rbx
001fe278jle 0x1fdfa8
001fe27emov edx, 1
001fe283xor eax, eax
001fe285test r12b, 1
001fe289je 0x1fe2c0
001fe28bmov [rbp], r15l
001fe28fmov eax, 1
001fe294cmp r12, 1
001fe298je 0x1fdfa0
001fe29enop [rax+rax]
001fe2a9nop [rax+rax]
001fe2b4nop [rax+rax]
001fe2bcmov [rbp+4*rax], r15l
001fe2c1mov [rbp+4*rax+4], r15l
001fe2c6add rax, 2
001fe2cacmp r12, rax
001fe2cdjne 0x1fe2c0
001fe2cfjmp 0x1fdfa0
001fe2d4pxor x0, x0
001fe2d8cvtsd2ss x0, [rdi]
001fe2dccmp rbx, 4095
001fe2e3jg 0x1fe5c4
001fe2e9test ah, 4
001fe2ecje 0x1fe417
001fe2f2movss [rsp], x0
001fe2f7call caml_enter_blocking_section
001fe2fctest rbx, rbx
001fe2ffmovss x0, [rsp]
001fe304jle 0x1fdfa8
001fe30amov edx, 1
001fe30fxor eax, eax
001fe311test r12b, 1
001fe315je 0x1fe340
001fe317mov eax, 1
001fe31cmovss [rbp], x0
001fe321cmp rax, r12
001fe324je 0x1fdfa0
001fe32anop [rax+rax]
001fe335nop [rax]
001fe33cmovss [rbp+4*rax], x0
001fe342movss [rbp+4*rax+4], x0
001fe348add rax, 2
001fe34ccmp rax, r12
001fe34fjne 0x1fe340
001fe351jmp 0x1fdfa0
001fe356nop [rax+rax]
001fe35cmov rax, [rcx+16]
001fe360
001fe360loc_1fe360:
001fe360movzx edx, al
001fe363cmp al, 13
001fe365ja 0xf488e
001fe36blea rcx, [rip+0x334f6]
001fe372movsxd rdx, [rcx+4*rdx]
001fe376add rdx, rcx
001fe379jmp rdx
001fe37ccmp ebx, 0x7f800001
001fe382sbb ebx, ebx
001fe384and bx, -512
001fe389add bx, 32256
001fe38ejmp 0x1fdf20
001fe393test rbx, rbx
001fe396jle 0x1fe1b0
001fe39cxor edx, edx
001fe39ejmp 0x1fe216
001fe3a3call caml_enter_blocking_section
001fe3a8test rbx, rbx
001fe3abjle 0x1fdfa8
001fe3b1mov edx, 1
001fe3b6jmp 0x1fe09d
001fe3bbtest rbx, rbx
001fe3bejle 0x1fe1b0
001fe3c4xor edx, edx
001fe3c6jmp 0x1fe044
001fe3cbtest rbx, rbx
001fe3cejle 0x1fe1b0
001fe3d4xor edx, edx
001fe3d6jmp 0x1fe287
001fe3dbcall caml_enter_blocking_section
001fe3e0test rbx, rbx
001fe3e3jle 0x1fdfa8
001fe3e9mov edx, 1
001fe3eejmp 0x1fdfd7
001fe3f3test rbx, rbx
001fe3f6jle 0x1fe1b0
001fe3fcxor edx, edx
001fe3fejmp 0x1fe112
001fe403test rbx, rbx
001fe406jle 0x1fe1b0
001fe40cxor eax, eax
001fe40ejmp 0x1fe190
001fe413test rbx, rbx
001fe416jle 0x1fe1b0
001fe41cxor edx, edx
001fe41ejmp 0x1fe313
001fe423test rbx, rbx
001fe426jle 0x1fe1b0
001fe42cxor ecx, ecx
001fe42ejmp 0x1fde8f
001fe433sar rdi, 1
001fe436mov r15, rdi
001fe439test ah, 4
001fe43cje 0x1fe64e
001fe442call caml_enter_blocking_section
001fe447mov r12l, 1
001fe44djmp 0x1fde42
001fe452call caml_enter_blocking_section
001fe457jmp 0x1fde42
001fe45csar rdi, 1
001fe45fmov r15, rdi
001fe462test ah, 4
001fe465je 0x1fe656
001fe46bcall caml_enter_blocking_section
001fe470mov r12l, 1
001fe476jmp 0x1fde8a
001fe47bpxor x0, x0
001fe47fcvtsd2ss x0, [rdi]
001fe483test ah, 4
001fe486je 0x1fe663
001fe48cmovss [rsp], x0
001fe491mov r12l, 1
001fe497call caml_enter_blocking_section
001fe49cmovss x0, [rsp]
001fe4a1mov edx, 1
001fe4a6jmp 0x1fe313
001fe4abmov r15l, [rdi+8]
001fe4aftest ah, 4
001fe4b2je 0x1fe670
001fe4b8call caml_enter_blocking_section
001fe4bdmov r12l, 1
001fe4c3jmp 0x1fe282
001fe4c8movsd_xmm x0, [rdi]
001fe4cctest ah, 4
001fe4cfje 0x1fe697
001fe4d5movsd_xmm [rsp], x0
001fe4damov r12l, 1
001fe4e0call caml_enter_blocking_section
001fe4e5movsd_xmm x0, [rsp]
001fe4eajmp 0x1fe211
001fe4efmovupd x0, [rdi]
001fe4f3cvtpd2ps x0, x0
001fe4f7test ah, 4
001fe4faje 0x1fe6b1
001fe500movlps [rsp], x0
001fe504mov r12l, 1
001fe50acall caml_enter_blocking_section
001fe50fmovq x0, [rsp]
001fe514mov edx, 1
001fe519jmp 0x1fe112
001fe51esar rdi, 1
001fe521mov r15, rdi
001fe524test ah, 4
001fe527je 0x1fe6a4
001fe52dcall caml_enter_blocking_section
001fe532mov r12l, 1
001fe538jmp 0x1fe03f
001fe53dmov r15, [rdi+8]
001fe541test ah, 4
001fe544je 0x1fe6be
001fe54acall caml_enter_blocking_section
001fe54fmov r12l, 1
001fe555jmp 0x1fe3b5
001fe55amov r15, [rdi+8]
001fe55etest ah, 4
001fe561je 0x1fe67d
001fe567call caml_enter_blocking_section
001fe56cmov r12l, 1
001fe572jmp 0x1fe3ed
001fe577movupd x0, [rdi]
001fe57btest ah, 4
001fe57eje 0x1fe68a
001fe584movaps [rsp], x0
001fe588mov r12l, 1
001fe58ecall caml_enter_blocking_section
001fe593movapd x0, [rsp]
001fe598mov eax, 1
001fe59djmp 0x1fe190
001fe5a2call caml_enter_blocking_section
001fe5a7jmp 0x1fe3b5
001fe5acmovsd_xmm [rsp], x0
001fe5b1call caml_enter_blocking_section
001fe5b6movsd_xmm x0, [rsp]
001fe5bbjmp 0x1fe211
001fe5c0movss [rsp], x0
001fe5c5call caml_enter_blocking_section
001fe5camovss x0, [rsp]
001fe5cfjmp 0x1fe30e
001fe5d4call caml_enter_blocking_section
001fe5d9jmp 0x1fe03f
001fe5decall caml_enter_blocking_section
001fe5e3jmp 0x1fdf4b
001fe5e8call caml_enter_blocking_section
001fe5edjmp 0x1fde8a
001fe5f2call caml_enter_blocking_section
001fe5f7jmp 0x1fe3ed
001fe5fccall caml_enter_blocking_section
001fe601jmp 0x1fe282
001fe606test r12, r12
001fe609jle 0x1fe1b0
001fe60fxor edx, edx
001fe611jmp 0x1fdf50
001fe616test rbx, rbx
001fe619jle 0x1fe1b0
001fe61fmovzx esi, r15b
001fe623
001fe623loc_1fe623:
001fe623mov rdx, r12
001fe626mov rdi, rbp
001fe629call fn_f40e0
001fe62ejmp 0x1fe1b0
001fe633mov ecx, ebx
001fe635shr ecx, 13
001fe638and ecx, 1
001fe63blea ebx, [rbx+rcx-0x37fff001]
001fe642shr ebx, 13
001fe645jmp 0x1fdf20
001fe64amov r12l, 1
001fe650jmp 0x1fe623
001fe652mov r12l, 1
001fe658xor ecx, ecx
001fe65ajmp 0x1fde8f
001fe65fmov r12l, 1
001fe665xor edx, edx
001fe667jmp 0x1fe313
001fe66cmov r12l, 1
001fe672xor edx, edx
001fe674jmp 0x1fe287
001fe679mov r12l, 1
001fe67fxor edx, edx
001fe681jmp 0x1fdfd7
001fe686mov r12l, 1
001fe68cxor eax, eax
001fe68ejmp 0x1fe190
001fe693mov r12l, 1
001fe699xor edx, edx
001fe69bjmp 0x1fe216
001fe6a0mov r12l, 1
001fe6a6xor edx, edx
001fe6a8jmp 0x1fe044
001fe6admov r12l, 1
001fe6b3xor edx, edx
001fe6b5jmp 0x1fe112
001fe6bamov r12l, 1
001fe6c0xor edx, edx
001fe6c2jmp 0x1fe09d
001fe6c7call fn_f4590
001fe6ccdb 0xc0
001fe6cdpop rsi
001fe6ceout dx, eax
001fe6cfdb 0xff
001fdd40
001fdd40caml_ba_fill:
001fdd40push r15
001fdd42push r14
001fdd44push r13
001fdd46push r12
001fdd48push rbp
001fdd49push rbx
001fdd4asub rsp, 120
001fdd4emov rax, [rip+0x7828f]
001fdd55mov [rsp+24], rdi
001fdd5amov rdi, [0x28]
001fdd63mov [rsp+104], rdi
001fdd68mov rdi, rsi
001fdd6bmov r13, [rax]
001fdd6flea rax, [rsp+32]
001fdd74mov r14, [r13+160]
001fdd7bmov [r13+160], rax
001fdd82mov eax, 1
001fdd87movq x0, rax
001fdd8clea rax, [rsp+24]
001fdd91mov [rsp+56], rax
001fdd96mov rax, [rsp+24]
001fdd9bpunpcklqdq x0, x0
001fdd9fmovups [rsp+40], x0
001fdda4mov rsi, [rax+16]
001fdda8mov [rsp+32], r14
001fddadlea rcx, [rax+8]
001fddb1mov rbp, [rax+8]
001fddb5test rsi, rsi
001fddb8jle 0x1fe360
001fddbemov ebx, 1
001fddc3xor edx, edx
001fddc5xor eax, eax
001fddc7nop [rax+rax]
001fddd2nop [rax+rax]
001fdddcadd edx, 1
001fdddfimul rbx, [rcx+8*rax+32]
001fdde5movsxd rax, edx
001fdde8cmp rax, rsi
001fddebjl 0x1fdde0
001fddedmov rax, [rcx+16]
001fddf1mov r12, rbx
001fddf4movzx edx, al
001fddf7cmp al, 13
001fddf9ja 0xf488e
001fddfflea rcx, [rip+0x33a2a]
001fde06movsxd rdx, [rcx+4*rdx]
001fde0aadd rdx, rcx
001fde0djmp rdx
001fde10nop [rax]
001fde14sar rdi, 1
001fde17mov r15, rdi
001fde1acmp rbx, 4095
001fde21jg 0x1fe456
001fde27test ah, 4
001fde2aje 0x1fe61a
001fde30call caml_enter_blocking_section
001fde35test rbx, rbx
001fde38jle 0x1fdfa8
001fde3emovzx esi, r15b
001fde42
001fde42loc_1fde42:
001fde42mov rdx, r12
001fde45mov rdi, rbp
001fde48call fn_f40e0
001fde4djmp 0x1fdfa8
001fde52nop [rax+rax]
001fde5csar rdi, 1
001fde5fmov r15, rdi
001fde62cmp rbx, 4095
001fde69jg 0x1fe5ec
001fde6ftest ah, 4
001fde72je 0x1fe427
001fde78call caml_enter_blocking_section
001fde7dtest rbx, rbx
001fde80jle 0x1fdfa8
001fde86mov ecx, 1
001fde8blea rdx, [rbp+2*r12]
001fde90and r12l, 1
001fde94mov eax, r15l
001fde97je 0x1fdec0
001fde99mov [rbp], r15w
001fde9eadd rbp, 2
001fdea2cmp rbp, rdx
001fdea5je 0x1fded1
001fdea7nop [rax+rax]
001fdeb2nop [rax+rax]
001fdebcmov [rbp], ax
001fdec0
001fdec0loc_1fdec0:
001fdec0add rbp, 4
001fdec4mov [rbp-2], ax
001fdec8cmp rbp, rdx
001fdecbjne 0x1fdec0
001fdecdtest ecx, ecx
001fdecfje 0x1fe1b0
001fded5jmp 0x1fdfa8
001fdedamov r12l, 1
001fdee0pxor x1, x1
001fdee4cvtsd2ss x1, [rdi]
001fdee8movd edx, x1
001fdeecmov ebx, edx
001fdeeeand ebx, 0x7fffffff
001fdef4cmp ebx, 0x477fffff
001fdefaja 0x1fe380
001fdf00cmp ebx, 0x387fffff
001fdf06ja 0x1fe637
001fdf0cmovd x2, ebx
001fdf10addss x2, [rip+0x2c0f0]
001fdf18movd ebx, x2
001fdf1cshr edx, 16
001fdf1fand edx, 32768
001fdf25or ebx, edx
001fdf27cmp r12, 4095
001fdf2ejg 0x1fe5e2
001fdf34test ah, 4
001fdf37je 0x1fe60a
001fdf3dcall caml_enter_blocking_section
001fdf42test r12, r12
001fdf45jle 0x1fdfa8
001fdf47mov edx, 1
001fdf4clea rax, [rbp+2*r12]
001fdf51and r12l, 1
001fdf55je 0x1fdf80
001fdf57mov [rbp], bx
001fdf5badd rbp, 2
001fdf5fcmp rax, rbp
001fdf62je 0x1fdfa0
001fdf64nop [rax+rax]
001fdf6fnop [rax+rax]
001fdf7anop
001fdf7cmov [rbp], bx
001fdf80
001fdf80loc_1fdf80:
001fdf80add rbp, 4
001fdf84mov [rbp-2], bx
001fdf88cmp rax, rbp
001fdf8bjne 0x1fdf80
001fdf8dnop [rax+rax]
001fdf98nop [rax]
001fdf9ctest edx, edx
001fdf9eje 0x1fe1b0
001fdfa4call caml_leave_blocking_section
001fdfa9jmp 0x1fe1b0
001fdfaemov r15, [rdi+8]
001fdfb2cmp rbx, 4095
001fdfb9jg 0x1fe5f6
001fdfbftest ah, 4
001fdfc2jne 0x1fe3df
001fdfc8test rbx, rbx
001fdfcbjle 0x1fe1b0
001fdfd1xor edx, edx
001fdfd3xor eax, eax
001fdfd5test r12b, 1
001fdfd9je 0x1fe000
001fdfdbmov [rbp], r15
001fdfdfmov eax, 1
001fdfe4cmp r12, 1
001fdfe8je 0x1fdfa0
001fdfeanop [rax+rax]
001fdff5nop [rax]
001fdffcmov [rbp+8*rax], r15
001fe001mov [rbp+8*rax+8], r15
001fe006add rax, 2
001fe00acmp r12, rax
001fe00djne 0x1fe000
001fe00fjmp 0x1fdfa0
001fe011sar rdi, 1
001fe014mov r15, rdi
001fe017cmp rbx, 4095
001fe01ejg 0x1fe5d8
001fe024test ah, 4
001fe027je 0x1fe3bf
001fe02dcall caml_enter_blocking_section
001fe032test rbx, rbx
001fe035jle 0x1fdfa8
001fe03bmov edx, 1
001fe040xor eax, eax
001fe042test r12b, 1
001fe046je 0x1fe060
001fe048mov eax, 1
001fe04dmov [rbp], r15
001fe051cmp rax, r12
001fe054je 0x1fdfa0
001fe05anop
001fe05cmov [rbp+8*rax], r15
001fe061mov [rbp+8*rax+8], r15
001fe066add rax, 2
001fe06acmp rax, r12
001fe06djne 0x1fe060
001fe06fjmp 0x1fdfa0
001fe074mov r15, [rdi+8]
001fe078cmp rbx, 4095
001fe07fjg 0x1fe5a6
001fe085test ah, 4
001fe088jne 0x1fe3a7
001fe08etest rbx, rbx
001fe091jle 0x1fe1b0
001fe097xor edx, edx
001fe099xor eax, eax
001fe09btest r12b, 1
001fe09fje 0x1fe0c0
001fe0a1mov [rbp], r15
001fe0a5mov eax, 1
001fe0aacmp r12, 1
001fe0aeje 0x1fdfa0
001fe0b4nop [rax+rax]
001fe0bcmov [rbp+8*rax], r15
001fe0c1mov [rbp+8*rax+8], r15
001fe0c6add rax, 2
001fe0cacmp r12, rax
001fe0cdjne 0x1fe0c0
001fe0cfjmp 0x1fdfa0
001fe0d4movupd x0, [rdi]
001fe0d8lea rdx, [rbx+rbx]
001fe0dccvtpd2ps x0, x0
001fe0e0cmp rdx, 4095
001fe0e7jg 0x1fe0f6
001fe0e9test ah, 4
001fe0ecje 0x1fe3f7
001fe0f2movlps [rsp], x0
001fe0f6
001fe0f6loc_1fe0f6:
001fe0f6call caml_enter_blocking_section
001fe0fbtest rbx, rbx
001fe0femovq x0, [rsp]
001fe103mov edx, 1
001fe108jle 0x1fdfa8
001fe10exor eax, eax
001fe110test r12b, 1
001fe114je 0x1fe140
001fe116mov eax, 1
001fe11bmovlps [rbp], x0
001fe11fcmp rax, r12
001fe122je 0x1fdfa0
001fe128nop [rax+rax]
001fe133nop [rax+rax]
001fe13cmovlps [rbp+8*rax], x0
001fe141movlps [rbp+8*rax+8], x0
001fe146add rax, 2
001fe14acmp rax, r12
001fe14djne 0x1fe140
001fe14fjmp 0x1fdfa0
001fe154lea rdx, [rbx+rbx]
001fe158movupd x0, [rdi]
001fe15ccmp rdx, 4095
001fe163jg 0x1fe172
001fe165test ah, 4
001fe168je 0x1fe407
001fe16emovaps [rsp], x0
001fe172
001fe172loc_1fe172:
001fe172call caml_enter_blocking_section
001fe177test rbx, rbx
001fe17amovapd x0, [rsp]
001fe17fmov eax, 1
001fe184jle 0x1fdfa8
001fe18anop
001fe18cadd rbp, 16
001fe190
001fe190loc_1fe190:
001fe190movups [rbp-16], x0
001fe194sub r12, 1
001fe198jne 0x1fe190
001fe19atest eax, eax
001fe19cjne 0x1fdfa8
001fe1a2nop [rax+rax]
001fe1acmov [r13+160], r14
001fe1b3mov rax, [rsp+104]
001fe1b8sub rax, [0x28]
001fe1c1jne 0x1fe6cb
001fe1c7add rsp, 120
001fe1cbmov eax, 1
001fe1d0pop rbx
001fe1d1pop rbp
001fe1d2pop r12
001fe1d4pop r13
001fe1d6pop r14
001fe1d8pop r15
001fe1daret
001fe1dbmovsd_xmm x0, [rdi]
001fe1dfcmp rbx, 4095
001fe1e6jg 0x1fe5b0
001fe1ectest ah, 4
001fe1efje 0x1fe397
001fe1f5movsd_xmm [rsp], x0
001fe1facall caml_enter_blocking_section
001fe1fftest rbx, rbx
001fe202movsd_xmm x0, [rsp]
001fe207jle 0x1fdfa8
001fe20dmov edx, 1
001fe212xor eax, eax
001fe214test r12b, 1
001fe218je 0x1fe240
001fe21amovsd_xmm [rbp], x0
001fe21fmov eax, 1
001fe224cmp r12, 1
001fe228je 0x1fdfa0
001fe22enop [rax+rax]
001fe239nop [rax]
001fe23cmovsd_xmm [rbp+8*rax], x0
001fe242movsd_xmm [rbp+8*rax+8], x0
001fe248add rax, 2
001fe24ccmp r12, rax
001fe24fjne 0x1fe240
001fe251jmp 0x1fdfa0
001fe256mov r15l, [rdi+8]
001fe25acmp rbx, 4095
001fe261jg 0x1fe600
001fe267test ah, 4
001fe26aje 0x1fe3cf
001fe270call caml_enter_blocking_section
001fe275test rbx, rbx
001fe278jle 0x1fdfa8
001fe27emov edx, 1
001fe283xor eax, eax
001fe285test r12b, 1
001fe289je 0x1fe2c0
001fe28bmov [rbp], r15l
001fe28fmov eax, 1
001fe294cmp r12, 1
001fe298je 0x1fdfa0
001fe29enop [rax+rax]
001fe2a9nop [rax+rax]
001fe2b4nop [rax+rax]
001fe2bcmov [rbp+4*rax], r15l
001fe2c1mov [rbp+4*rax+4], r15l
001fe2c6add rax, 2
001fe2cacmp r12, rax
001fe2cdjne 0x1fe2c0
001fe2cfjmp 0x1fdfa0
001fe2d4pxor x0, x0
001fe2d8cvtsd2ss x0, [rdi]
001fe2dccmp rbx, 4095
001fe2e3jg 0x1fe5c4
001fe2e9test ah, 4
001fe2ecje 0x1fe417
001fe2f2movss [rsp], x0
001fe2f7call caml_enter_blocking_section
001fe2fctest rbx, rbx
001fe2ffmovss x0, [rsp]
001fe304jle 0x1fdfa8
001fe30amov edx, 1
001fe30fxor eax, eax
001fe311test r12b, 1
001fe315je 0x1fe340
001fe317mov eax, 1
001fe31cmovss [rbp], x0
001fe321cmp rax, r12
001fe324je 0x1fdfa0
001fe32anop [rax+rax]
001fe335nop [rax]
001fe33cmovss [rbp+4*rax], x0
001fe342movss [rbp+4*rax+4], x0
001fe348add rax, 2
001fe34ccmp rax, r12
001fe34fjne 0x1fe340
001fe351jmp 0x1fdfa0
001fe356nop [rax+rax]
001fe35cmov rax, [rcx+16]
001fe360
001fe360loc_1fe360:
001fe360movzx edx, al
001fe363cmp al, 13
001fe365ja 0xf488e
001fe36blea rcx, [rip+0x334f6]
001fe372movsxd rdx, [rcx+4*rdx]
001fe376add rdx, rcx
001fe379jmp rdx
001fe37ccmp ebx, 0x7f800001
001fe382sbb ebx, ebx
001fe384and bx, -512
001fe389add bx, 32256
001fe38ejmp 0x1fdf20
001fe393test rbx, rbx
001fe396jle 0x1fe1b0
001fe39cxor edx, edx
001fe39ejmp 0x1fe216
001fe3a3call caml_enter_blocking_section
001fe3a8test rbx, rbx
001fe3abjle 0x1fdfa8
001fe3b1mov edx, 1
001fe3b6jmp 0x1fe09d
001fe3bbtest rbx, rbx
001fe3bejle 0x1fe1b0
001fe3c4xor edx, edx
001fe3c6jmp 0x1fe044
001fe3cbtest rbx, rbx
001fe3cejle 0x1fe1b0
001fe3d4xor edx, edx
001fe3d6jmp 0x1fe287
001fe3dbcall caml_enter_blocking_section
001fe3e0test rbx, rbx
001fe3e3jle 0x1fdfa8
001fe3e9mov edx, 1
001fe3eejmp 0x1fdfd7
001fe3f3test rbx, rbx
001fe3f6jle 0x1fe1b0
001fe3fcxor edx, edx
001fe3fejmp 0x1fe112
001fe403test rbx, rbx
001fe406jle 0x1fe1b0
001fe40cxor eax, eax
001fe40ejmp 0x1fe190
001fe413test rbx, rbx
001fe416jle 0x1fe1b0
001fe41cxor edx, edx
001fe41ejmp 0x1fe313
001fe423test rbx, rbx
001fe426jle 0x1fe1b0
001fe42cxor ecx, ecx
001fe42ejmp 0x1fde8f
001fe433sar rdi, 1
001fe436mov r15, rdi
001fe439test ah, 4
001fe43cje 0x1fe64e
001fe442call caml_enter_blocking_section
001fe447mov r12l, 1
001fe44djmp 0x1fde42
001fe452call caml_enter_blocking_section
001fe457jmp 0x1fde42
001fe45csar rdi, 1
001fe45fmov r15, rdi
001fe462test ah, 4
001fe465je 0x1fe656
001fe46bcall caml_enter_blocking_section
001fe470mov r12l, 1
001fe476jmp 0x1fde8a
001fe47bpxor x0, x0
001fe47fcvtsd2ss x0, [rdi]
001fe483test ah, 4
001fe486je 0x1fe663
001fe48cmovss [rsp], x0
001fe491mov r12l, 1
001fe497call caml_enter_blocking_section
001fe49cmovss x0, [rsp]
001fe4a1mov edx, 1
001fe4a6jmp 0x1fe313
001fe4abmov r15l, [rdi+8]
001fe4aftest ah, 4
001fe4b2je 0x1fe670
001fe4b8call caml_enter_blocking_section
001fe4bdmov r12l, 1
001fe4c3jmp 0x1fe282
001fe4c8movsd_xmm x0, [rdi]
001fe4cctest ah, 4
001fe4cfje 0x1fe697
001fe4d5movsd_xmm [rsp], x0
001fe4damov r12l, 1
001fe4e0call caml_enter_blocking_section
001fe4e5movsd_xmm x0, [rsp]
001fe4eajmp 0x1fe211
001fe4efmovupd x0, [rdi]
001fe4f3cvtpd2ps x0, x0
001fe4f7test ah, 4
001fe4faje 0x1fe6b1
001fe500movlps [rsp], x0
001fe504mov r12l, 1
001fe50acall caml_enter_blocking_section
001fe50fmovq x0, [rsp]
001fe514mov edx, 1
001fe519jmp 0x1fe112
001fe51esar rdi, 1
001fe521mov r15, rdi
001fe524test ah, 4
001fe527je 0x1fe6a4
001fe52dcall caml_enter_blocking_section
001fe532mov r12l, 1
001fe538jmp 0x1fe03f
001fe53dmov r15, [rdi+8]
001fe541test ah, 4
001fe544je 0x1fe6be
001fe54acall caml_enter_blocking_section
001fe54fmov r12l, 1
001fe555jmp 0x1fe3b5
001fe55amov r15, [rdi+8]
001fe55etest ah, 4
001fe561je 0x1fe67d
001fe567call caml_enter_blocking_section
001fe56cmov r12l, 1
001fe572jmp 0x1fe3ed
001fe577movupd x0, [rdi]
001fe57btest ah, 4
001fe57eje 0x1fe68a
001fe584movaps [rsp], x0
001fe588mov r12l, 1
001fe58ecall caml_enter_blocking_section
001fe593movapd x0, [rsp]
001fe598mov eax, 1
001fe59djmp 0x1fe190
001fe5a2call caml_enter_blocking_section
001fe5a7jmp 0x1fe3b5
001fe5acmovsd_xmm [rsp], x0
001fe5b1call caml_enter_blocking_section
001fe5b6movsd_xmm x0, [rsp]
001fe5bbjmp 0x1fe211
001fe5c0movss [rsp], x0
001fe5c5call caml_enter_blocking_section
001fe5camovss x0, [rsp]
001fe5cfjmp 0x1fe30e
001fe5d4call caml_enter_blocking_section
001fe5d9jmp 0x1fe03f
001fe5decall caml_enter_blocking_section
001fe5e3jmp 0x1fdf4b
001fe5e8call caml_enter_blocking_section
001fe5edjmp 0x1fde8a
001fe5f2call caml_enter_blocking_section
001fe5f7jmp 0x1fe3ed
001fe5fccall caml_enter_blocking_section
001fe601jmp 0x1fe282
001fe606test r12, r12
001fe609jle 0x1fe1b0
001fe60fxor edx, edx
001fe611jmp 0x1fdf50
001fe616test rbx, rbx
001fe619jle 0x1fe1b0
001fe61fmovzx esi, r15b
001fe623
001fe623loc_1fe623:
001fe623mov rdx, r12
001fe626mov rdi, rbp
001fe629call fn_f40e0
001fe62ejmp 0x1fe1b0
001fe633mov ecx, ebx
001fe635shr ecx, 13
001fe638and ecx, 1
001fe63blea ebx, [rbx+rcx-0x37fff001]
001fe642shr ebx, 13
001fe645jmp 0x1fdf20
001fe64amov r12l, 1
001fe650jmp 0x1fe623
001fe652mov r12l, 1
001fe658xor ecx, ecx
001fe65ajmp 0x1fde8f
001fe65fmov r12l, 1
001fe665xor edx, edx
001fe667jmp 0x1fe313
001fe66cmov r12l, 1
001fe672xor edx, edx
001fe674jmp 0x1fe287
001fe679mov r12l, 1
001fe67fxor edx, edx
001fe681jmp 0x1fdfd7
001fe686mov r12l, 1
001fe68cxor eax, eax
001fe68ejmp 0x1fe190
001fe693mov r12l, 1
001fe699xor edx, edx
001fe69bjmp 0x1fe216
001fe6a0mov r12l, 1
001fe6a6xor edx, edx
001fe6a8jmp 0x1fe044
001fe6admov r12l, 1
001fe6b3xor edx, edx
001fe6b5jmp 0x1fe112
001fe6bamov r12l, 1
001fe6c0xor edx, edx
001fe6c2jmp 0x1fe09d
001fe6c7call fn_f4590
001fe6ccdb 0xc0
001fe6cdpop rsi
001fe6ceout dx, eax
001fe6cfdb 0xff
001fdd40
001fe6d0
001fe6d0 // align 0x20
001fe6d0 // align 0x20
001fe6e0
001fe6e0caml_ba_reshape:
001fe6e0push rbp
001fe6e1mov rdx, rsi
001fe6e4push rbx
001fe6e5sub rsp, 312
001fe6ecmovdqa x0, [rip+0x2b9d8]
001fe6f4mov [rsp], rsi
001fe6f8movq x1, rsp
001fe6fdmov [rsp+8], rdi
001fe702mov rax, [0x28]
001fe70bmov [rsp+296], rax
001fe713mov rax, [rip+0x778ca]
001fe71amov rbx, [rax]
001fe71elea rax, [rsp+8]
001fe723movups [rsp+40], x0
001fe728mov [rsp+24], 1
001fe731movq x0, rax
001fe736lea rax, [rsp+32]
001fe73bmov [rsp+96], rax
001fe740lea rax, [rsp+96]
001fe745mov rbp, [rbx+160]
001fe74cpunpcklqdq x0, x1
001fe750mov [rbx+160], rax
001fe757mov eax, 1
001fe75cmovups [rsp+56], x0
001fe761movq x0, rax
001fe766lea rax, [rsp+24]
001fe76bpunpcklqdq x0, x0
001fe76fmov [rsp+32], rbp
001fe774mov [rsp+120], rax
001fe779movups [rsp+104], x0
001fe77emov rax, [rsi-8]
001fe782mov rsi, rax
001fe785shr rsi, 10
001fe789cmp rax, 17407
001fe78fja 0x1fe8b7
001fe795test rsi, rsi
001fe798je 0x1fe88b
001fe79elea rdi, [rsp+160]
001fe7a6lea r8, [rdx+8*rsi]
001fe7aamov ecx, 1
001fe7afsub rdi, rdx
001fe7b2nop [rax+rax]
001fe7bcmov rax, [rdx]
001fe7bfsar rax, 1
001fe7c2mov [rdi+rdx], rax
001fe7c6js 0x1fe8ab
001fe7ccadd rdx, 8
001fe7d0imul rcx, rax
001fe7d4cmp rdx, r8
001fe7d7jne 0x1fe7c0
001fe7d9mov rax, [rsp+8]
001fe7demov r9, [rax+16]
001fe7e2lea r8, [rax+8]
001fe7e6test r9, r9
001fe7e9jle 0x1fe884
001fe7efmov edi, 1
001fe7f4xor edx, edx
001fe7f6xor eax, eax
001fe7f8nop [rax]
001fe7fcadd edx, 1
001fe7ffimul rdi, [r8+8*rax+32]
001fe805movsxd rax, edx
001fe808cmp rax, r9
001fe80bjl 0x1fe800
001fe80dcmp rdi, rcx
001fe810jne 0x1fe8c8
001fe816mov rdi, [r8+16]
001fe81a
001fe81aloc_1fe81a:
001fe81amov rdx, [r8]
001fe81dlea rcx, [rsp+160]
001fe825or edi, 2048
001fe82bcall caml_ba_alloc
001fe830mov rdx, [rsp+8]
001fe835mov [rsp+24], rax
001fe83amov rdx, [rdx]
001fe83dmov [rax], rdx
001fe840mov rax, [rsp+24]
001fe845lea rsi, [rax+8]
001fe849mov rax, [rsp+8]
001fe84elea rdi, [rax+8]
001fe852call fn_1fc480
001fe857mov [rbx+160], rbp
001fe85emov rax, [rsp+24]
001fe863mov rdx, [rsp+296]
001fe86bsub rdx, [0x28]
001fe874jne 0x1fe8c3
001fe876add rsp, 312
001fe87dpop rbx
001fe87epop rbp
001fe87fret
001fe880mov edi, 1
001fe885jmp 0x1fe811
001fe887mov rax, [rsp+8]
001fe88cmov ecx, 1
001fe891mov r9, [rax+16]
001fe895lea r8, [rax+8]
001fe899test r9, r9
001fe89cjg 0x1fe7f3
001fe8a2jmp 0x1fe81a
001fe8a7lea rdi, [rip+0x312fe]
001fe8aecall caml_invalid_argument
001fe8b3lea rdi, [rip+0x312c2]
001fe8bacall caml_invalid_argument
001fe8bfcall fn_f4590
001fe8c4lea rdi, [rip+0x31309]
001fe8cbcall caml_invalid_argument
001fe8d0db 0x2c
001fe8d1db 0x81
001fe8d2add [rax], al
001fe6e0
001fe6e0caml_ba_reshape:
001fe6e0push rbp
001fe6e1mov rdx, rsi
001fe6e4push rbx
001fe6e5sub rsp, 312
001fe6ecmovdqa x0, [rip+0x2b9d8]
001fe6f4mov [rsp], rsi
001fe6f8movq x1, rsp
001fe6fdmov [rsp+8], rdi
001fe702mov rax, [0x28]
001fe70bmov [rsp+296], rax
001fe713mov rax, [rip+0x778ca]
001fe71amov rbx, [rax]
001fe71elea rax, [rsp+8]
001fe723movups [rsp+40], x0
001fe728mov [rsp+24], 1
001fe731movq x0, rax
001fe736lea rax, [rsp+32]
001fe73bmov [rsp+96], rax
001fe740lea rax, [rsp+96]
001fe745mov rbp, [rbx+160]
001fe74cpunpcklqdq x0, x1
001fe750mov [rbx+160], rax
001fe757mov eax, 1
001fe75cmovups [rsp+56], x0
001fe761movq x0, rax
001fe766lea rax, [rsp+24]
001fe76bpunpcklqdq x0, x0
001fe76fmov [rsp+32], rbp
001fe774mov [rsp+120], rax
001fe779movups [rsp+104], x0
001fe77emov rax, [rsi-8]
001fe782mov rsi, rax
001fe785shr rsi, 10
001fe789cmp rax, 17407
001fe78fja 0x1fe8b7
001fe795test rsi, rsi
001fe798je 0x1fe88b
001fe79elea rdi, [rsp+160]
001fe7a6lea r8, [rdx+8*rsi]
001fe7aamov ecx, 1
001fe7afsub rdi, rdx
001fe7b2nop [rax+rax]
001fe7bcmov rax, [rdx]
001fe7bfsar rax, 1
001fe7c2mov [rdi+rdx], rax
001fe7c6js 0x1fe8ab
001fe7ccadd rdx, 8
001fe7d0imul rcx, rax
001fe7d4cmp rdx, r8
001fe7d7jne 0x1fe7c0
001fe7d9mov rax, [rsp+8]
001fe7demov r9, [rax+16]
001fe7e2lea r8, [rax+8]
001fe7e6test r9, r9
001fe7e9jle 0x1fe884
001fe7efmov edi, 1
001fe7f4xor edx, edx
001fe7f6xor eax, eax
001fe7f8nop [rax]
001fe7fcadd edx, 1
001fe7ffimul rdi, [r8+8*rax+32]
001fe805movsxd rax, edx
001fe808cmp rax, r9
001fe80bjl 0x1fe800
001fe80dcmp rdi, rcx
001fe810jne 0x1fe8c8
001fe816mov rdi, [r8+16]
001fe81a
001fe81aloc_1fe81a:
001fe81amov rdx, [r8]
001fe81dlea rcx, [rsp+160]
001fe825or edi, 2048
001fe82bcall caml_ba_alloc
001fe830mov rdx, [rsp+8]
001fe835mov [rsp+24], rax
001fe83amov rdx, [rdx]
001fe83dmov [rax], rdx
001fe840mov rax, [rsp+24]
001fe845lea rsi, [rax+8]
001fe849mov rax, [rsp+8]
001fe84elea rdi, [rax+8]
001fe852call fn_1fc480
001fe857mov [rbx+160], rbp
001fe85emov rax, [rsp+24]
001fe863mov rdx, [rsp+296]
001fe86bsub rdx, [0x28]
001fe874jne 0x1fe8c3
001fe876add rsp, 312
001fe87dpop rbx
001fe87epop rbp
001fe87fret
001fe880mov edi, 1
001fe885jmp 0x1fe811
001fe887mov rax, [rsp+8]
001fe88cmov ecx, 1
001fe891mov r9, [rax+16]
001fe895lea r8, [rax+8]
001fe899test r9, r9
001fe89cjg 0x1fe7f3
001fe8a2jmp 0x1fe81a
001fe8a7lea rdi, [rip+0x312fe]
001fe8aecall caml_invalid_argument
001fe8b3lea rdi, [rip+0x312c2]
001fe8bacall caml_invalid_argument
001fe8bfcall fn_f4590
001fe8c4lea rdi, [rip+0x31309]
001fe8cbcall caml_invalid_argument
001fe8d0db 0x2c
001fe8d1db 0x81
001fe8d2add [rax], al
001fe6e0
001fe8d4
001fe8d4 // align 0x10
001fe8d4 // align 0x10
001fe8e0
001fe8e0fn_1fe8e0:
001fe8e0push r15
001fe8e2movsxd rax, ecx
001fe8e5push r14
001fe8e7push r13
001fe8e9push r12
001fe8ebpush rbp
001fe8ecmov rbp, rdi
001fe8efpush rbx
001fe8f0sub rsp, 296
001fe8f7mov rcx, [0x28]
001fe900mov [rsp+280], rcx
001fe908xor ecx, ecx
001fe90aadd rdx, [rdi+64]
001fe90emov rcx, [rdi+72]
001fe912mov [rdi+64], rdx
001fe916jae 0x1fe920
001fe918add rcx, 1
001fe91cmov [rdi+72], rcx
001fe920
001fe920loc_1fe920:
001fe920movdqu x0, [rsi]
001fe924mov r14, [rbp+8]
001fe928neg rax
001fe92bmov rdi, 0x510e527fade682d1
001fe935xor rdx, rdi
001fe938mov r8, [rbp+16]
001fe93cmov r9, [rbp+48]
001fe940mov rdi, 0x9b05688c2b3e6c1f
001fe94amov r12, [rbp+56]
001fe94emov r11, [rbp]
001fe952xor rcx, rdi
001fe955mov [rsp+80], r14
001fe95amovaps [rsp+144], x0
001fe962movdqu x0, [rsi+16]
001fe967mov r10, [rbp+24]
001fe96bmov rdi, 0x1f83d9abfb41bd6b
001fe975mov rbx, [rbp+32]
001fe979mov r13, [rbp+40]
001fe97dxor rax, rdi
001fe980mov [rsp+88], r8
001fe985mov [rsp+120], r9
001fe98amov rdi, r14
001fe98dlea r15, [rip+0x32f2c]
001fe994mov r14, 0x5be0cd19137e2179
001fe99emovaps [rsp+160], x0
001fe9a6movdqu x0, [rsi+32]
001fe9abmov [rsp+128], r12
001fe9b3movaps [rsp+176], x0
001fe9bbmovdqu x0, [rsi+48]
001fe9c0mov [rsp+72], r11
001fe9c5movaps [rsp+192], x0
001fe9cdmovdqu x0, [rsi+64]
001fe9d2mov [rsp+96], r10
001fe9d7movaps [rsp+208], x0
001fe9dfmovdqu x0, [rsi+80]
001fe9e4mov [rsp+104], rbx
001fe9e9movaps [rsp+224], x0
001fe9f1movdqu x0, [rsi+96]
001fe9f6mov [rsp+112], r13
001fe9fbmovaps [rsp+240], x0
001fea03movdqu x0, [rsi+112]
001fea08mov rsi, r8
001fea0bmov r8, 0xbb67ae8584caa73b
001fea15movaps [rsp+256], x0
001fea1dmov [rsp+48], r12
001fea22mov r12, 0xa54ff53a5f1d36f1
001fea2cmov [rsp+56], rax
001fea31mov [rsp+40], r9
001fea36mov r9, 0x6a09e667f3bcc908
001fea40mov [rsp+32], r14
001fea45mov r14, 0x3c6ef372fe94f82b
001fea4fmov [rsp+136], rbp
001fea57mov rbp, rsi
001fea5anop [rax+rax]
001fea60
001fea60loc_1fea60:
001fea60movzx esi, [r15]
001fea64mov rax, [rsp+8*rsi+144]
001fea6cadd rax, rbx
001fea6fmov rsi, rax
001fea72add rsi, r11
001fea75movzx r11l, [r15+1]
001fea7axor rdx, rsi
001fea7drol rdx, 32
001fea81mov rax, [rsp+8*r11+144]
001fea89add r9, rdx
001fea8cxor rbx, r9
001fea8fror rbx, 24
001fea93add rax, rbx
001fea96mov r11, rax
001fea99add r11, rsi
001fea9cmovzx esi, [r15+2]
001feaa1xor rdx, r11
001feaa4ror rdx, 16
001feaa8lea rax, [r9+rdx]
001feaacmov r9, [rsp+8*rsi+144]
001feab4mov [rsp+8], rdx
001feab9xor rbx, rax
001feabcmov [rsp+16], rax
001feac1mov rax, [rsp+56]
001feac6add r9, r13
001feac9rol rbx, 1
001feaccmov rsi, r9
001feacfmov [rsp+64], rbx
001fead4add rsi, rdi
001fead7movzx edi, [r15+3]
001feadcxor rcx, rsi
001feadfrol rcx, 32
001feae3mov r9, [rsp+8*rdi+144]
001feaebadd r8, rcx
001feaeexor r13, r8
001feaf1ror r13, 24
001feaf5add r9, r13
001feaf8mov rdi, r9
001feafbadd rdi, rsi
001feafexor rcx, rdi
001feb01ror rcx, 16
001feb05lea rsi, [r8+rcx]
001feb09mov r8, [rsp+40]
001feb0exor r13, rsi
001feb11mov [rsp+24], rsi
001feb16movzx esi, [r15+4]
001feb1brol r13, 1
001feb1emov r9, [rsp+8*rsi+144]
001feb26add r9, r8
001feb29mov rsi, r9
001feb2cadd rsi, rbp
001feb2fxor rax, rsi
001feb32rol rax, 32
001feb36lea rbx, [rax+r14]
001feb3axor r8, rbx
001feb3dmov r9, r8
001feb40movzx r8l, [r15+5]
001feb45ror r9, 24
001feb49mov rbp, [rsp+8*r8+144]
001feb51mov r8, [rsp+48]
001feb56add rbp, r9
001feb59add rbp, rsi
001feb5cmovzx esi, [r15+6]
001feb61xor rax, rbp
001feb64mov r14, [rsp+8*rsi+144]
001feb6cmov rsi, r8
001feb6fror rax, 16
001feb73add rbx, rax
001feb76add r14, r8
001feb79movzx r8l, [r15+7]
001feb7exor r9, rbx
001feb81add r14, r10
001feb84mov r10, [rsp+32]
001feb89rol r9, 1
001feb8cmov rdx, [rsp+8*r8+144]
001feb94xor r10, r14
001feb97rol r10, 32
001feb9badd r12, r10
001feb9exor rsi, r12
001feba1ror rsi, 24
001feba5add rdx, rsi
001feba8mov r8, rdx
001febabmov rdx, [rsp+8]
001febb0add r8, r14
001febb3movzx r14l, [r15+8]
001febb8xor r10, r8
001febbbadd r11, [rsp+8*r14+144]
001febc3ror r10, 16
001febc7movzx r14l, [r15+9]
001febccadd r11, r13
001febcfadd r12, r10
001febd2xor r10, r11
001febd5add r11, [rsp+8*r14+144]
001febddxor rsi, r12
001febe0rol r10, 32
001febe4rol rsi, 1
001febe7add rbx, r10
001febeaxor r13, rbx
001febedror r13, 24
001febf1add r11, r13
001febf4xor r10, r11
001febf7ror r10, 16
001febfblea r14, [rbx+r10]
001febffmov [rsp+32], r10
001fec04movzx r10l, [r15+10]
001fec09xor r13, r14
001fec0cadd rdi, [rsp+8*r10+144]
001fec14movzx r10l, [r15+11]
001fec19rol r13, 1
001fec1cadd rdi, r9
001fec1fmov rbx, [rsp+64]
001fec24xor rdx, rdi
001fec27add rdi, [rsp+8*r10+144]
001fec2fmovzx r10l, [r15+13]
001fec34rol rdx, 32
001fec38add r12, rdx
001fec3bxor r9, r12
001fec3eror r9, 24
001fec42add rdi, r9
001fec45xor rdx, rdi
001fec48ror rdx, 16
001fec4cadd r12, rdx
001fec4fxor r9, r12
001fec52rol r9, 1
001fec55mov [rsp+40], r9
001fec5amovzx r9l, [r15+12]
001fec5fadd rbp, [rsp+8*r9+144]
001fec67mov r9, [rsp+16]
001fec6cadd rbp, rsi
001fec6fxor rcx, rbp
001fec72add rbp, [rsp+8*r10+144]
001fec7arol rcx, 32
001fec7eadd r9, rcx
001fec81xor rsi, r9
001fec84ror rsi, 24
001fec88add rbp, rsi
001fec8bxor rcx, rbp
001fec8eror rcx, 16
001fec92add r9, rcx
001fec95xor rsi, r9
001fec98mov r10, rsi
001fec9bmovzx esi, [r15+14]
001feca0rol r10, 1
001feca3add r8, [rsp+8*rsi+144]
001fecabmov [rsp+48], r10
001fecb0lea r10, [rbx+r8]
001fecb4mov rsi, [rsp+24]
001fecb9movzx r8l, [r15+15]
001fecbexor rax, r10
001fecc1rol rax, 32
001fecc5add r10, [rsp+8*r8+144]
001feccdadd r15, 16
001fecd1add rsi, rax
001fecd4xor rbx, rsi
001fecd7ror rbx, 24
001fecdbadd r10, rbx
001fecdexor rax, r10
001fece1ror rax, 16
001fece5lea r8, [rsi+rax]
001fece9mov [rsp+56], rax
001feceelea rax, [rip+0x32c8b]
001fecf5xor rbx, r8
001fecf8rol rbx, 1
001fecfbcmp r15, rax
001fecfejne 0x1fea60
001fed04mov r15, [rsp+72]
001fed09mov rsi, rbp
001fed0cmov rbp, [rsp+136]
001fed14mov rax, [rsp+56]
001fed19xor r15, r11
001fed1cmov r11, r15
001fed1fxor r11, r9
001fed22mov [rbp], r11
001fed26mov r11, [rsp+80]
001fed2bxor r11, rdi
001fed2emov rdi, r11
001fed31xor rdi, r8
001fed34mov [rbp+8], rdi
001fed38mov rdi, [rsp+88]
001fed3dxor rdi, rsi
001fed40mov rsi, rdi
001fed43mov rdi, [rsp+104]
001fed48xor rsi, r14
001fed4bxor rdi, rdx
001fed4emov [rbp+16], rsi
001fed52mov rsi, [rsp+96]
001fed57mov rdx, rdi
001fed5amov rdi, [rsp+120]
001fed5fxor rdx, rbx
001fed62xor rsi, r10
001fed65xor rdi, rax
001fed68mov [rbp+32], rdx
001fed6cmov rdx, [rsp+112]
001fed71xor rsi, r12
001fed74mov rax, rdi
001fed77mov rdi, [rsp+40]
001fed7cmov [rbp+24], rsi
001fed80xor rdx, rcx
001fed83xor rax, rdi
001fed86mov rdi, [rsp+32]
001fed8bxor rdx, r13
001fed8emov [rbp+48], rax
001fed92mov rax, [rsp+128]
001fed9amov [rbp+40], rdx
001fed9exor rax, rdi
001feda1mov rdi, [rsp+48]
001feda6xor rax, rdi
001feda9mov [rbp+56], rax
001fedadmov rax, [rsp+280]
001fedb5sub rax, [0x28]
001fedbejne 0x1fedd2
001fedc0add rsp, 296
001fedc7pop rbx
001fedc8pop rbp
001fedc9pop r12
001fedcbpop r13
001fedcdpop r14
001fedcfpop r15
001fedd1ret
001fedd2
001fedd2loc_1fedd2:
001fedd2call fn_f4590
001fe8e0
001fe8e0fn_1fe8e0:
001fe8e0push r15
001fe8e2movsxd rax, ecx
001fe8e5push r14
001fe8e7push r13
001fe8e9push r12
001fe8ebpush rbp
001fe8ecmov rbp, rdi
001fe8efpush rbx
001fe8f0sub rsp, 296
001fe8f7mov rcx, [0x28]
001fe900mov [rsp+280], rcx
001fe908xor ecx, ecx
001fe90aadd rdx, [rdi+64]
001fe90emov rcx, [rdi+72]
001fe912mov [rdi+64], rdx
001fe916jae 0x1fe920
001fe918add rcx, 1
001fe91cmov [rdi+72], rcx
001fe920
001fe920loc_1fe920:
001fe920movdqu x0, [rsi]
001fe924mov r14, [rbp+8]
001fe928neg rax
001fe92bmov rdi, 0x510e527fade682d1
001fe935xor rdx, rdi
001fe938mov r8, [rbp+16]
001fe93cmov r9, [rbp+48]
001fe940mov rdi, 0x9b05688c2b3e6c1f
001fe94amov r12, [rbp+56]
001fe94emov r11, [rbp]
001fe952xor rcx, rdi
001fe955mov [rsp+80], r14
001fe95amovaps [rsp+144], x0
001fe962movdqu x0, [rsi+16]
001fe967mov r10, [rbp+24]
001fe96bmov rdi, 0x1f83d9abfb41bd6b
001fe975mov rbx, [rbp+32]
001fe979mov r13, [rbp+40]
001fe97dxor rax, rdi
001fe980mov [rsp+88], r8
001fe985mov [rsp+120], r9
001fe98amov rdi, r14
001fe98dlea r15, [rip+0x32f2c]
001fe994mov r14, 0x5be0cd19137e2179
001fe99emovaps [rsp+160], x0
001fe9a6movdqu x0, [rsi+32]
001fe9abmov [rsp+128], r12
001fe9b3movaps [rsp+176], x0
001fe9bbmovdqu x0, [rsi+48]
001fe9c0mov [rsp+72], r11
001fe9c5movaps [rsp+192], x0
001fe9cdmovdqu x0, [rsi+64]
001fe9d2mov [rsp+96], r10
001fe9d7movaps [rsp+208], x0
001fe9dfmovdqu x0, [rsi+80]
001fe9e4mov [rsp+104], rbx
001fe9e9movaps [rsp+224], x0
001fe9f1movdqu x0, [rsi+96]
001fe9f6mov [rsp+112], r13
001fe9fbmovaps [rsp+240], x0
001fea03movdqu x0, [rsi+112]
001fea08mov rsi, r8
001fea0bmov r8, 0xbb67ae8584caa73b
001fea15movaps [rsp+256], x0
001fea1dmov [rsp+48], r12
001fea22mov r12, 0xa54ff53a5f1d36f1
001fea2cmov [rsp+56], rax
001fea31mov [rsp+40], r9
001fea36mov r9, 0x6a09e667f3bcc908
001fea40mov [rsp+32], r14
001fea45mov r14, 0x3c6ef372fe94f82b
001fea4fmov [rsp+136], rbp
001fea57mov rbp, rsi
001fea5anop [rax+rax]
001fea60
001fea60loc_1fea60:
001fea60movzx esi, [r15]
001fea64mov rax, [rsp+8*rsi+144]
001fea6cadd rax, rbx
001fea6fmov rsi, rax
001fea72add rsi, r11
001fea75movzx r11l, [r15+1]
001fea7axor rdx, rsi
001fea7drol rdx, 32
001fea81mov rax, [rsp+8*r11+144]
001fea89add r9, rdx
001fea8cxor rbx, r9
001fea8fror rbx, 24
001fea93add rax, rbx
001fea96mov r11, rax
001fea99add r11, rsi
001fea9cmovzx esi, [r15+2]
001feaa1xor rdx, r11
001feaa4ror rdx, 16
001feaa8lea rax, [r9+rdx]
001feaacmov r9, [rsp+8*rsi+144]
001feab4mov [rsp+8], rdx
001feab9xor rbx, rax
001feabcmov [rsp+16], rax
001feac1mov rax, [rsp+56]
001feac6add r9, r13
001feac9rol rbx, 1
001feaccmov rsi, r9
001feacfmov [rsp+64], rbx
001fead4add rsi, rdi
001fead7movzx edi, [r15+3]
001feadcxor rcx, rsi
001feadfrol rcx, 32
001feae3mov r9, [rsp+8*rdi+144]
001feaebadd r8, rcx
001feaeexor r13, r8
001feaf1ror r13, 24
001feaf5add r9, r13
001feaf8mov rdi, r9
001feafbadd rdi, rsi
001feafexor rcx, rdi
001feb01ror rcx, 16
001feb05lea rsi, [r8+rcx]
001feb09mov r8, [rsp+40]
001feb0exor r13, rsi
001feb11mov [rsp+24], rsi
001feb16movzx esi, [r15+4]
001feb1brol r13, 1
001feb1emov r9, [rsp+8*rsi+144]
001feb26add r9, r8
001feb29mov rsi, r9
001feb2cadd rsi, rbp
001feb2fxor rax, rsi
001feb32rol rax, 32
001feb36lea rbx, [rax+r14]
001feb3axor r8, rbx
001feb3dmov r9, r8
001feb40movzx r8l, [r15+5]
001feb45ror r9, 24
001feb49mov rbp, [rsp+8*r8+144]
001feb51mov r8, [rsp+48]
001feb56add rbp, r9
001feb59add rbp, rsi
001feb5cmovzx esi, [r15+6]
001feb61xor rax, rbp
001feb64mov r14, [rsp+8*rsi+144]
001feb6cmov rsi, r8
001feb6fror rax, 16
001feb73add rbx, rax
001feb76add r14, r8
001feb79movzx r8l, [r15+7]
001feb7exor r9, rbx
001feb81add r14, r10
001feb84mov r10, [rsp+32]
001feb89rol r9, 1
001feb8cmov rdx, [rsp+8*r8+144]
001feb94xor r10, r14
001feb97rol r10, 32
001feb9badd r12, r10
001feb9exor rsi, r12
001feba1ror rsi, 24
001feba5add rdx, rsi
001feba8mov r8, rdx
001febabmov rdx, [rsp+8]
001febb0add r8, r14
001febb3movzx r14l, [r15+8]
001febb8xor r10, r8
001febbbadd r11, [rsp+8*r14+144]
001febc3ror r10, 16
001febc7movzx r14l, [r15+9]
001febccadd r11, r13
001febcfadd r12, r10
001febd2xor r10, r11
001febd5add r11, [rsp+8*r14+144]
001febddxor rsi, r12
001febe0rol r10, 32
001febe4rol rsi, 1
001febe7add rbx, r10
001febeaxor r13, rbx
001febedror r13, 24
001febf1add r11, r13
001febf4xor r10, r11
001febf7ror r10, 16
001febfblea r14, [rbx+r10]
001febffmov [rsp+32], r10
001fec04movzx r10l, [r15+10]
001fec09xor r13, r14
001fec0cadd rdi, [rsp+8*r10+144]
001fec14movzx r10l, [r15+11]
001fec19rol r13, 1
001fec1cadd rdi, r9
001fec1fmov rbx, [rsp+64]
001fec24xor rdx, rdi
001fec27add rdi, [rsp+8*r10+144]
001fec2fmovzx r10l, [r15+13]
001fec34rol rdx, 32
001fec38add r12, rdx
001fec3bxor r9, r12
001fec3eror r9, 24
001fec42add rdi, r9
001fec45xor rdx, rdi
001fec48ror rdx, 16
001fec4cadd r12, rdx
001fec4fxor r9, r12
001fec52rol r9, 1
001fec55mov [rsp+40], r9
001fec5amovzx r9l, [r15+12]
001fec5fadd rbp, [rsp+8*r9+144]
001fec67mov r9, [rsp+16]
001fec6cadd rbp, rsi
001fec6fxor rcx, rbp
001fec72add rbp, [rsp+8*r10+144]
001fec7arol rcx, 32
001fec7eadd r9, rcx
001fec81xor rsi, r9
001fec84ror rsi, 24
001fec88add rbp, rsi
001fec8bxor rcx, rbp
001fec8eror rcx, 16
001fec92add r9, rcx
001fec95xor rsi, r9
001fec98mov r10, rsi
001fec9bmovzx esi, [r15+14]
001feca0rol r10, 1
001feca3add r8, [rsp+8*rsi+144]
001fecabmov [rsp+48], r10
001fecb0lea r10, [rbx+r8]
001fecb4mov rsi, [rsp+24]
001fecb9movzx r8l, [r15+15]
001fecbexor rax, r10
001fecc1rol rax, 32
001fecc5add r10, [rsp+8*r8+144]
001feccdadd r15, 16
001fecd1add rsi, rax
001fecd4xor rbx, rsi
001fecd7ror rbx, 24
001fecdbadd r10, rbx
001fecdexor rax, r10
001fece1ror rax, 16
001fece5lea r8, [rsi+rax]
001fece9mov [rsp+56], rax
001feceelea rax, [rip+0x32c8b]
001fecf5xor rbx, r8
001fecf8rol rbx, 1
001fecfbcmp r15, rax
001fecfejne 0x1fea60
001fed04mov r15, [rsp+72]
001fed09mov rsi, rbp
001fed0cmov rbp, [rsp+136]
001fed14mov rax, [rsp+56]
001fed19xor r15, r11
001fed1cmov r11, r15
001fed1fxor r11, r9
001fed22mov [rbp], r11
001fed26mov r11, [rsp+80]
001fed2bxor r11, rdi
001fed2emov rdi, r11
001fed31xor rdi, r8
001fed34mov [rbp+8], rdi
001fed38mov rdi, [rsp+88]
001fed3dxor rdi, rsi
001fed40mov rsi, rdi
001fed43mov rdi, [rsp+104]
001fed48xor rsi, r14
001fed4bxor rdi, rdx
001fed4emov [rbp+16], rsi
001fed52mov rsi, [rsp+96]
001fed57mov rdx, rdi
001fed5amov rdi, [rsp+120]
001fed5fxor rdx, rbx
001fed62xor rsi, r10
001fed65xor rdi, rax
001fed68mov [rbp+32], rdx
001fed6cmov rdx, [rsp+112]
001fed71xor rsi, r12
001fed74mov rax, rdi
001fed77mov rdi, [rsp+40]
001fed7cmov [rbp+24], rsi
001fed80xor rdx, rcx
001fed83xor rax, rdi
001fed86mov rdi, [rsp+32]
001fed8bxor rdx, r13
001fed8emov [rbp+48], rax
001fed92mov rax, [rsp+128]
001fed9amov [rbp+40], rdx
001fed9exor rax, rdi
001feda1mov rdi, [rsp+48]
001feda6xor rax, rdi
001feda9mov [rbp+56], rax
001fedadmov rax, [rsp+280]
001fedb5sub rax, [0x28]
001fedbejne 0x1fedd2
001fedc0add rsp, 296
001fedc7pop rbx
001fedc8pop rbp
001fedc9pop r12
001fedcbpop r13
001fedcdpop r14
001fedcfpop r15
001fedd1ret
001fedd2
001fedd2loc_1fedd2:
001fedd2call fn_f4590
001fe8e0
001fedd7
001fedd7 // align 0x10
001fedd7 // align 0x10
001fede0
001fede0fn_1fede0:
001fede0mov rdi, [rdi+8]
001fede4jmp 0x216690
001fede9db 0xa3
001fedeajs 0x1feded
001fedecdb 0x00
001fede0
001fede0fn_1fede0:
001fede0mov rdi, [rdi+8]
001fede4jmp 0x216690
001fede9db 0xa3
001fedeajs 0x1feded
001fedecdb 0x00
001fede0
001feded
001feded // align 0x10
001feded // align 0x10
001fedf0
001fedf0caml_BLAKE2Init:
001fedf0mov rax, 0xbb67ae8584caa73b
001fedfamov r8, rdi
001fedfdmov rdi, rcx
001fee00mov rcx, 0x6a09e667f3bcc908
001fee0amov [r8+8], rax
001fee0emov rax, 0x3c6ef372fe94f82b
001fee18mov [r8+16], rax
001fee1cmov rax, 0xa54ff53a5f1d36f1
001fee26mov [r8+24], rax
001fee2amov rax, 0x510e527fade682d1
001fee34mov [r8+32], rax
001fee38mov rax, 0x9b05688c2b3e6c1f
001fee42mov [r8+40], rax
001fee46mov rax, 0x1f83d9abfb41bd6b
001fee50mov [r8+48], rax
001fee54mov rax, 0x5be0cd19137e2179
001fee5emov [r8+56], rax
001fee62mov rax, rdx
001fee65shl rax, 8
001fee69mov [r8+72], 0
001fee71or rax, rsi
001fee74mov [r8+64], 0
001fee7cor rax, 0x1010000
001fee82mov [r8+80], 0
001fee8axor rax, rcx
001fee8dmov [r8], rax
001fee90test rdx, rdx
001fee93jne 0x1feea0
001fee95ret
001fee96db 0xd2
001fee97jne 0x1feea0
001fee99ret
001fee9a
001fee9a 66 0f 1f 44 00 00 f..D..
001feea0
001feea0loc_1feea0:
001feea0mov eax, 64
001feea5lea rcx, [r8+88]
001feea9cmp rdx, rax
001feeaccmova rdx, rax
001feeb0cmp edx, 8
001feeb3jae 0x1fef18
001feeb5test dl, 4
001feeb8jne 0x1fef65
001feebetest edx, edx
001feec0je 0x1feed2
001feec2movzx eax, [rdi]
001feec5mov [r8+88], al
001feec9test dl, 2
001feeccjne 0x1fef7a
001feed2
001feed2loc_1feed2:
001feed2mov eax, 128
001feed7sub rax, rdx
001feedaadd rdx, rcx
001feeddlea rdi, [rdx+8]
001feee1mov ecx, eax
001feee3mov [rdx], 0
001feeeamov [rdx+rcx-8], 0
001feef3and rdi, -8
001feef7sub rdx, rdi
001feefalea ecx, [rax+rdx]
001feefdmov eax, ecx
001feeffshr eax, 3
001fef02mov ecx, eax
001fef04xor eax, eax
001fef06rep stosq [rdi], rax
001fef09mov [r8+80], 128
001fef11ret
001fef12
001fef12 66 0f 1f 44 00 00 f..D..
001fef18
001fef18loc_1fef18:
001fef18mov rax, [rdi]
001fef1bmov [r8+88], rax
001fef1fmov eax, edx
001fef21mov rsi, [rdi+rax-8]
001fef26mov [rcx+rax-8], rsi
001fef2blea rsi, [r8+96]
001fef2fmov rax, rcx
001fef32and rsi, -8
001fef36sub rax, rsi
001fef39sub rdi, rax
001fef3cadd eax, edx
001fef3eand eax, -8
001fef41cmp eax, 8
001fef44jb 0x1feed2
001fef46and eax, -8
001fef49xor r9l, r9l
001fef4c
001fef4cloc_1fef4c:
001fef4cmov r10l, r9l
001fef4fadd r9l, 8
001fef53mov r11, [rdi+r10]
001fef57mov [rsi+r10], r11
001fef5bcmp r9l, eax
001fef5ejb 0x1fef4c
001fef60jmp 0x1feed2
001fef65
001fef65loc_1fef65:
001fef65mov eax, [rdi]
001fef67mov [r8+88], eax
001fef6bmov eax, edx
001fef6dmov esi, [rdi+rax-4]
001fef71mov [rcx+rax-4], esi
001fef75jmp 0x1feed2
001fef7a
001fef7aloc_1fef7a:
001fef7amov eax, edx
001fef7cmovzx esi, [rdi+rax-2]
001fef81mov [rcx+rax-2], si
001fef86jmp 0x1feed2
001fedf0
001fedf0caml_BLAKE2Init:
001fedf0mov rax, 0xbb67ae8584caa73b
001fedfamov r8, rdi
001fedfdmov rdi, rcx
001fee00mov rcx, 0x6a09e667f3bcc908
001fee0amov [r8+8], rax
001fee0emov rax, 0x3c6ef372fe94f82b
001fee18mov [r8+16], rax
001fee1cmov rax, 0xa54ff53a5f1d36f1
001fee26mov [r8+24], rax
001fee2amov rax, 0x510e527fade682d1
001fee34mov [r8+32], rax
001fee38mov rax, 0x9b05688c2b3e6c1f
001fee42mov [r8+40], rax
001fee46mov rax, 0x1f83d9abfb41bd6b
001fee50mov [r8+48], rax
001fee54mov rax, 0x5be0cd19137e2179
001fee5emov [r8+56], rax
001fee62mov rax, rdx
001fee65shl rax, 8
001fee69mov [r8+72], 0
001fee71or rax, rsi
001fee74mov [r8+64], 0
001fee7cor rax, 0x1010000
001fee82mov [r8+80], 0
001fee8axor rax, rcx
001fee8dmov [r8], rax
001fee90test rdx, rdx
001fee93jne 0x1feea0
001fee95ret
001fee96db 0xd2
001fee97jne 0x1feea0
001fee99ret
001fee9a
001fee9a 66 0f 1f 44 00 00 f..D..
001feea0
001feea0loc_1feea0:
001feea0mov eax, 64
001feea5lea rcx, [r8+88]
001feea9cmp rdx, rax
001feeaccmova rdx, rax
001feeb0cmp edx, 8
001feeb3jae 0x1fef18
001feeb5test dl, 4
001feeb8jne 0x1fef65
001feebetest edx, edx
001feec0je 0x1feed2
001feec2movzx eax, [rdi]
001feec5mov [r8+88], al
001feec9test dl, 2
001feeccjne 0x1fef7a
001feed2
001feed2loc_1feed2:
001feed2mov eax, 128
001feed7sub rax, rdx
001feedaadd rdx, rcx
001feeddlea rdi, [rdx+8]
001feee1mov ecx, eax
001feee3mov [rdx], 0
001feeeamov [rdx+rcx-8], 0
001feef3and rdi, -8
001feef7sub rdx, rdi
001feefalea ecx, [rax+rdx]
001feefdmov eax, ecx
001feeffshr eax, 3
001fef02mov ecx, eax
001fef04xor eax, eax
001fef06rep stosq [rdi], rax
001fef09mov [r8+80], 128
001fef11ret
001fef12
001fef12 66 0f 1f 44 00 00 f..D..
001fef18
001fef18loc_1fef18:
001fef18mov rax, [rdi]
001fef1bmov [r8+88], rax
001fef1fmov eax, edx
001fef21mov rsi, [rdi+rax-8]
001fef26mov [rcx+rax-8], rsi
001fef2blea rsi, [r8+96]
001fef2fmov rax, rcx
001fef32and rsi, -8
001fef36sub rax, rsi
001fef39sub rdi, rax
001fef3cadd eax, edx
001fef3eand eax, -8
001fef41cmp eax, 8
001fef44jb 0x1feed2
001fef46and eax, -8
001fef49xor r9l, r9l
001fef4c
001fef4cloc_1fef4c:
001fef4cmov r10l, r9l
001fef4fadd r9l, 8
001fef53mov r11, [rdi+r10]
001fef57mov [rsi+r10], r11
001fef5bcmp r9l, eax
001fef5ejb 0x1fef4c
001fef60jmp 0x1feed2
001fef65
001fef65loc_1fef65:
001fef65mov eax, [rdi]
001fef67mov [r8+88], eax
001fef6bmov eax, edx
001fef6dmov esi, [rdi+rax-4]
001fef71mov [rcx+rax-4], esi
001fef75jmp 0x1feed2
001fef7a
001fef7aloc_1fef7a:
001fef7amov eax, edx
001fef7cmovzx esi, [rdi+rax-2]
001fef81mov [rcx+rax-2], si
001fef86jmp 0x1feed2
001fedf0
001fef8b
001fef8b // align 0x10
001fef8b // align 0x10
001fef90
001fef90caml_BLAKE2Update:
001fef90push r15
001fef92push r14
001fef94push r13
001fef96push r12
001fef98mov r12, rsi
001fef9bpush rbp
001fef9cmov rbp, rdx
001fef9fpush rbx
001fefa0mov rbx, rdi
001fefa3sub rsp, 24
001fefa7mov r13, [rdi+80]
001fefabtest r13, r13
001fefaejne 0x1ff0a0
001fefb4lea rax, [rdi+88]
001fefb8mov [rsp+8], rax
001fefbdcmp rbp, 128
001fefc4jbe 0x1ff01e
001fefc6lea r14, [rbp-129]
001fefcdmov r15, r12
001fefd0shr r14, 7
001fefd4lea r13, [r14+1]
001fefd8shl r13, 7
001fefdcadd r13, r12
001fefdfnop [rax+rax]
001fefeanop
001fefecmov rsi, r15
001fefefxor ecx, ecx
001feff1mov edx, 128
001feff6mov rdi, rbx
001feff9call fn_1fe8e0
001feffesub r15, -128
001ff002cmp r15, r13
001ff005jne 0x1feff0
001ff007neg r14
001ff00asub r12, -128
001ff00eshl r14, 7
001ff012lea rbp, [rbp+r14-128]
001ff017sub r12, r14
001ff01amov ecx, ebp
001ff01ccmp ebp, 8
001ff01fjb 0x1ff070
001ff021mov rax, [r12]
001ff025lea rdi, [rbx+96]
001ff029mov rsi, r12
001ff02cand rdi, -8
001ff030mov [rbx+88], rax
001ff034mov eax, ebp
001ff036mov rcx, [rsp+8]
001ff03bmov rdx, [r12+rax-8]
001ff040mov [rcx+rax-8], rdx
001ff045sub rcx, rdi
001ff048sub rsi, rcx
001ff04blea ecx, [rbp+rcx]
001ff04fshr ecx, 3
001ff052rep movsq [rdi], [rsi]
001ff055mov [rbx+80], rbp
001ff059
001ff059loc_1ff059:
001ff059add rsp, 24
001ff05dpop rbx
001ff05epop rbp
001ff05fpop r12
001ff061pop r13
001ff063pop r14
001ff065pop r15
001ff067ret
001ff068db 0x5e
001ff069pop r15
001ff06bret
001ff06c
001ff06c 0f 1f 40 00 ..@.
001ff070
001ff070loc_1ff070:
001ff070test bpl, 4
001ff074jne 0x1ff0fb
001ff07atest ebp, ebp
001ff07cje 0x1ff059
001ff07emovzx eax, [r12]
001ff083mov [rbx+88], al
001ff086test bpl, 2
001ff08aje 0x1ff059
001ff08cmov eax, ebp
001ff08emov rsi, [rsp+8]
001ff093movzx edx, [r12+rax-2]
001ff099mov [rsi+rax-2], dx
001ff09ejmp 0x1ff059
001ff0a0
001ff0a0loc_1ff0a0:
001ff0a0mov r14l, 128
001ff0a6sub r14, r13
001ff0a9cmp r14, rdx
001ff0acjae 0x1ff0e8
001ff0aelea r15, [rdi+88]
001ff0b2mov rdx, r14
001ff0b5lea rbp, [r13+rbp-128]
001ff0baadd r12, r14
001ff0bdlea rdi, [r15+r13]
001ff0c1mov [rsp+8], r15
001ff0c6call fn_f47d0
001ff0cbxor ecx, ecx
001ff0cdmov edx, 128
001ff0d2mov rsi, r15
001ff0d5mov rdi, rbx
001ff0d8call fn_1fe8e0
001ff0ddjmp 0x1fefc1
001ff0e2
001ff0e2 66 0f 1f 44 00 00 f..D..
001ff0e8
001ff0e8loc_1ff0e8:
001ff0e8lea rdi, [rdi+r13+88]
001ff0edcall fn_f47d0
001ff0f2add rbp, [rbx+80]
001ff0f6jmp 0x1ff059
001ff0fb
001ff0fbloc_1ff0fb:
001ff0fbmov eax, [r12]
001ff0ffmov [rbx+88], eax
001ff102mov eax, [r12+rcx-4]
001ff107mov rdx, [rsp+8]
001ff10cmov [rdx+rcx-4], eax
001ff110jmp 0x1ff059
001fef90
001fef90caml_BLAKE2Update:
001fef90push r15
001fef92push r14
001fef94push r13
001fef96push r12
001fef98mov r12, rsi
001fef9bpush rbp
001fef9cmov rbp, rdx
001fef9fpush rbx
001fefa0mov rbx, rdi
001fefa3sub rsp, 24
001fefa7mov r13, [rdi+80]
001fefabtest r13, r13
001fefaejne 0x1ff0a0
001fefb4lea rax, [rdi+88]
001fefb8mov [rsp+8], rax
001fefbdcmp rbp, 128
001fefc4jbe 0x1ff01e
001fefc6lea r14, [rbp-129]
001fefcdmov r15, r12
001fefd0shr r14, 7
001fefd4lea r13, [r14+1]
001fefd8shl r13, 7
001fefdcadd r13, r12
001fefdfnop [rax+rax]
001fefeanop
001fefecmov rsi, r15
001fefefxor ecx, ecx
001feff1mov edx, 128
001feff6mov rdi, rbx
001feff9call fn_1fe8e0
001feffesub r15, -128
001ff002cmp r15, r13
001ff005jne 0x1feff0
001ff007neg r14
001ff00asub r12, -128
001ff00eshl r14, 7
001ff012lea rbp, [rbp+r14-128]
001ff017sub r12, r14
001ff01amov ecx, ebp
001ff01ccmp ebp, 8
001ff01fjb 0x1ff070
001ff021mov rax, [r12]
001ff025lea rdi, [rbx+96]
001ff029mov rsi, r12
001ff02cand rdi, -8
001ff030mov [rbx+88], rax
001ff034mov eax, ebp
001ff036mov rcx, [rsp+8]
001ff03bmov rdx, [r12+rax-8]
001ff040mov [rcx+rax-8], rdx
001ff045sub rcx, rdi
001ff048sub rsi, rcx
001ff04blea ecx, [rbp+rcx]
001ff04fshr ecx, 3
001ff052rep movsq [rdi], [rsi]
001ff055mov [rbx+80], rbp
001ff059
001ff059loc_1ff059:
001ff059add rsp, 24
001ff05dpop rbx
001ff05epop rbp
001ff05fpop r12
001ff061pop r13
001ff063pop r14
001ff065pop r15
001ff067ret
001ff068db 0x5e
001ff069pop r15
001ff06bret
001ff06c
001ff06c 0f 1f 40 00 ..@.
001ff070
001ff070loc_1ff070:
001ff070test bpl, 4
001ff074jne 0x1ff0fb
001ff07atest ebp, ebp
001ff07cje 0x1ff059
001ff07emovzx eax, [r12]
001ff083mov [rbx+88], al
001ff086test bpl, 2
001ff08aje 0x1ff059
001ff08cmov eax, ebp
001ff08emov rsi, [rsp+8]
001ff093movzx edx, [r12+rax-2]
001ff099mov [rsi+rax-2], dx
001ff09ejmp 0x1ff059
001ff0a0
001ff0a0loc_1ff0a0:
001ff0a0mov r14l, 128
001ff0a6sub r14, r13
001ff0a9cmp r14, rdx
001ff0acjae 0x1ff0e8
001ff0aelea r15, [rdi+88]
001ff0b2mov rdx, r14
001ff0b5lea rbp, [r13+rbp-128]
001ff0baadd r12, r14
001ff0bdlea rdi, [r15+r13]
001ff0c1mov [rsp+8], r15
001ff0c6call fn_f47d0
001ff0cbxor ecx, ecx
001ff0cdmov edx, 128
001ff0d2mov rsi, r15
001ff0d5mov rdi, rbx
001ff0d8call fn_1fe8e0
001ff0ddjmp 0x1fefc1
001ff0e2
001ff0e2 66 0f 1f 44 00 00 f..D..
001ff0e8
001ff0e8loc_1ff0e8:
001ff0e8lea rdi, [rdi+r13+88]
001ff0edcall fn_f47d0
001ff0f2add rbp, [rbx+80]
001ff0f6jmp 0x1ff059
001ff0fb
001ff0fbloc_1ff0fb:
001ff0fbmov eax, [r12]
001ff0ffmov [rbx+88], eax
001ff102mov eax, [r12+rcx-4]
001ff107mov rdx, [rsp+8]
001ff10cmov [rdx+rcx-4], eax
001ff110jmp 0x1ff059
001fef90
001ff115
001ff115 // align 0x40
001ff115 // align 0x40
001ff140
001ff140caml_BLAKE2Final:
001ff140push r13
001ff142push r12
001ff144mov r12, rdx
001ff147mov edx, 128
001ff14cpush rbp
001ff14dmov rbp, rsi
001ff150xor esi, esi
001ff152push rbx
001ff153mov rbx, rdi
001ff156lea r13, [rbx+88]
001ff15asub rsp, 8
001ff15emov rdi, [rdi+80]
001ff162sub rdx, rdi
001ff165add rdi, r13
001ff168call fn_f40e0
001ff16dmov rdx, [rbx+80]
001ff171mov rsi, r13
001ff174mov rdi, rbx
001ff177mov ecx, 1
001ff17ccall fn_1fe8e0
001ff181test rbp, rbp
001ff184je 0x1ff1e3
001ff186xor eax, eax
001ff188xor esi, esi
001ff18anop [rax+rax]
001ff195nop [rax+rax]
001ff1a0nop [rax+rax]
001ff1abnop [rax+rax]
001ff1b6nop [rax+rax]
001ff1bcmov edx, eax
001ff1bemov ecx, eax
001ff1c0
001ff1c0loc_1ff1c0:
001ff1c0shr edx, 3
001ff1c3and ecx, 7
001ff1c6mov rdx, [rbx+8*rdx]
001ff1cashl ecx, 3
001ff1cdshr rdx, cl
001ff1d0mov [r12+rsi], dl
001ff1d4lea esi, [rax+1]
001ff1d7mov rax, rsi
001ff1dacmp rsi, rbp
001ff1ddjb 0x1ff1c0
001ff1dfadd rsp, 8
001ff1e3
001ff1e3loc_1ff1e3:
001ff1e3pop rbx
001ff1e4pop rbp
001ff1e5pop r12
001ff1e7pop r13
001ff1e9ret
001ff1eadb 0x5c
001ff1ebpop r13
001ff1edret
001ff140
001ff140caml_BLAKE2Final:
001ff140push r13
001ff142push r12
001ff144mov r12, rdx
001ff147mov edx, 128
001ff14cpush rbp
001ff14dmov rbp, rsi
001ff150xor esi, esi
001ff152push rbx
001ff153mov rbx, rdi
001ff156lea r13, [rbx+88]
001ff15asub rsp, 8
001ff15emov rdi, [rdi+80]
001ff162sub rdx, rdi
001ff165add rdi, r13
001ff168call fn_f40e0
001ff16dmov rdx, [rbx+80]
001ff171mov rsi, r13
001ff174mov rdi, rbx
001ff177mov ecx, 1
001ff17ccall fn_1fe8e0
001ff181test rbp, rbp
001ff184je 0x1ff1e3
001ff186xor eax, eax
001ff188xor esi, esi
001ff18anop [rax+rax]
001ff195nop [rax+rax]
001ff1a0nop [rax+rax]
001ff1abnop [rax+rax]
001ff1b6nop [rax+rax]
001ff1bcmov edx, eax
001ff1bemov ecx, eax
001ff1c0
001ff1c0loc_1ff1c0:
001ff1c0shr edx, 3
001ff1c3and ecx, 7
001ff1c6mov rdx, [rbx+8*rdx]
001ff1cashl ecx, 3
001ff1cdshr rdx, cl
001ff1d0mov [r12+rsi], dl
001ff1d4lea esi, [rax+1]
001ff1d7mov rax, rsi
001ff1dacmp rsi, rbp
001ff1ddjb 0x1ff1c0
001ff1dfadd rsp, 8
001ff1e3
001ff1e3loc_1ff1e3:
001ff1e3pop rbx
001ff1e4pop rbp
001ff1e5pop r12
001ff1e7pop r13
001ff1e9ret
001ff1eadb 0x5c
001ff1ebpop r13
001ff1edret
001ff140
001ff1ee
001ff1ee // align 0x10
001ff1ee // align 0x10
001ff1f0
001ff1f0caml_blake2_create:
001ff1f0push r15
001ff1f2push r14
001ff1f4push r13
001ff1f6push r12
001ff1f8push rbp
001ff1f9push rbx
001ff1famov rbx, rdi
001ff1fdmov edi, 216
001ff202sar rbx, 1
001ff205sub rsp, 104
001ff209mov [rsp+8], rsi
001ff20emov rax, [0x28]
001ff217mov [rsp+88], rax
001ff21cmov rax, [rip+0x76dc1]
001ff223mov r12, [rax]
001ff227lea rax, [rsp+16]
001ff22cmov r14, [r12+160]
001ff234mov [r12+160], rax
001ff23cmov eax, 1
001ff241movq x0, rax
001ff246lea rax, [rsp+8]
001ff24bpunpcklqdq x0, x0
001ff24fmov [rsp+16], r14
001ff254movups [rsp+24], x0
001ff259mov [rsp+40], rax
001ff25ecall caml_stat_alloc
001ff263mov edx, 216
001ff268mov esi, 8
001ff26dlea rdi, [rip+0x179068]
001ff274mov r13, rax
001ff277call caml_alloc_custom_mem
001ff27cmov r15, [rsp+8]
001ff281mov rbp, rax
001ff284mov rdi, r15
001ff287call caml_string_length
001ff28cmov rsi, rbx
001ff28fmov rcx, r15
001ff292mov rdi, r13
001ff295mov rdx, rax
001ff298call caml_BLAKE2Init
001ff29dmov [rbp+8], r13
001ff2a1mov [r12+160], r14
001ff2a9mov rax, [rsp+88]
001ff2aesub rax, [0x28]
001ff2b7jne 0x1ff2cf
001ff2b9add rsp, 104
001ff2bdmov rax, rbp
001ff2c0pop rbx
001ff2c1pop rbp
001ff2c2pop r12
001ff2c4pop r13
001ff2c6pop r14
001ff2c8pop r15
001ff2caret
001ff2cbcall fn_f4590
001ff2d0db 0xbc
001ff2d1push rdx
001ff2d2out dx, eax
001ff2d3db 0xff
001ff1f0
001ff1f0caml_blake2_create:
001ff1f0push r15
001ff1f2push r14
001ff1f4push r13
001ff1f6push r12
001ff1f8push rbp
001ff1f9push rbx
001ff1famov rbx, rdi
001ff1fdmov edi, 216
001ff202sar rbx, 1
001ff205sub rsp, 104
001ff209mov [rsp+8], rsi
001ff20emov rax, [0x28]
001ff217mov [rsp+88], rax
001ff21cmov rax, [rip+0x76dc1]
001ff223mov r12, [rax]
001ff227lea rax, [rsp+16]
001ff22cmov r14, [r12+160]
001ff234mov [r12+160], rax
001ff23cmov eax, 1
001ff241movq x0, rax
001ff246lea rax, [rsp+8]
001ff24bpunpcklqdq x0, x0
001ff24fmov [rsp+16], r14
001ff254movups [rsp+24], x0
001ff259mov [rsp+40], rax
001ff25ecall caml_stat_alloc
001ff263mov edx, 216
001ff268mov esi, 8
001ff26dlea rdi, [rip+0x179068]
001ff274mov r13, rax
001ff277call caml_alloc_custom_mem
001ff27cmov r15, [rsp+8]
001ff281mov rbp, rax
001ff284mov rdi, r15
001ff287call caml_string_length
001ff28cmov rsi, rbx
001ff28fmov rcx, r15
001ff292mov rdi, r13
001ff295mov rdx, rax
001ff298call caml_BLAKE2Init
001ff29dmov [rbp+8], r13
001ff2a1mov [r12+160], r14
001ff2a9mov rax, [rsp+88]
001ff2aesub rax, [0x28]
001ff2b7jne 0x1ff2cf
001ff2b9add rsp, 104
001ff2bdmov rax, rbp
001ff2c0pop rbx
001ff2c1pop rbp
001ff2c2pop r12
001ff2c4pop r13
001ff2c6pop r14
001ff2c8pop r15
001ff2caret
001ff2cbcall fn_f4590
001ff2d0db 0xbc
001ff2d1push rdx
001ff2d2out dx, eax
001ff2d3db 0xff
001ff1f0
001ff2d4
001ff2d4 // align 0x10
001ff2d4 // align 0x10
001ff2e0
001ff2e0caml_blake2_update:
001ff2e0sar rcx, 1
001ff2e3sub rsp, 8
001ff2e7sar rdx, 1
001ff2eamov rdi, [rdi+8]
001ff2eeadd rsi, rdx
001ff2f1mov rdx, rcx
001ff2f4call caml_BLAKE2Update
001ff2f9mov eax, 1
001ff2feadd rsp, 8
001ff302ret
001ff303db 0x83
001ff304db 0xc4
001ff305or bl, al
001ff2e0
001ff2e0caml_blake2_update:
001ff2e0sar rcx, 1
001ff2e3sub rsp, 8
001ff2e7sar rdx, 1
001ff2eamov rdi, [rdi+8]
001ff2eeadd rsi, rdx
001ff2f1mov rdx, rcx
001ff2f4call caml_BLAKE2Update
001ff2f9mov eax, 1
001ff2feadd rsp, 8
001ff302ret
001ff303db 0x83
001ff304db 0xc4
001ff305or bl, al
001ff2e0
001ff307
001ff307 // align 0x10
001ff307 // align 0x10
001ff310
001ff310caml_blake2_final:
001ff310push r13
001ff312push r12
001ff314push rbp
001ff315push rbx
001ff316mov rbx, rsi
001ff319sar rbx, 1
001ff31csub rsp, 104
001ff320mov [rsp+8], rdi
001ff325mov rdi, rbx
001ff328mov rax, [0x28]
001ff331mov [rsp+88], rax
001ff336mov rax, [rip+0x76ca7]
001ff33dmov r12, [rax]
001ff341lea rax, [rsp+16]
001ff346mov r13, [r12+160]
001ff34emov [r12+160], rax
001ff356mov eax, 1
001ff35bmovq x0, rax
001ff360lea rax, [rsp+8]
001ff365punpcklqdq x0, x0
001ff369mov [rsp+16], r13
001ff36emovups [rsp+24], x0
001ff373mov [rsp+40], rax
001ff378call caml_alloc_string
001ff37dmov rsi, rbx
001ff380mov rbp, rax
001ff383mov rax, [rsp+8]
001ff388mov rdx, rbp
001ff38bmov rdi, [rax+8]
001ff38fcall caml_BLAKE2Final
001ff394mov [r12+160], r13
001ff39cmov rax, [rsp+88]
001ff3a1sub rax, [0x28]
001ff3aajne 0x1ff3be
001ff3acadd rsp, 104
001ff3b0mov rax, rbp
001ff3b3pop rbx
001ff3b4pop rbp
001ff3b5pop r12
001ff3b7pop r13
001ff3b9ret
001ff3bacall fn_f4590
001ff3bfdb 0xcd
001ff3c0push rcx
001ff3c1out dx, eax
001ff3c2db 0xff
001ff310
001ff310caml_blake2_final:
001ff310push r13
001ff312push r12
001ff314push rbp
001ff315push rbx
001ff316mov rbx, rsi
001ff319sar rbx, 1
001ff31csub rsp, 104
001ff320mov [rsp+8], rdi
001ff325mov rdi, rbx
001ff328mov rax, [0x28]
001ff331mov [rsp+88], rax
001ff336mov rax, [rip+0x76ca7]
001ff33dmov r12, [rax]
001ff341lea rax, [rsp+16]
001ff346mov r13, [r12+160]
001ff34emov [r12+160], rax
001ff356mov eax, 1
001ff35bmovq x0, rax
001ff360lea rax, [rsp+8]
001ff365punpcklqdq x0, x0
001ff369mov [rsp+16], r13
001ff36emovups [rsp+24], x0
001ff373mov [rsp+40], rax
001ff378call caml_alloc_string
001ff37dmov rsi, rbx
001ff380mov rbp, rax
001ff383mov rax, [rsp+8]
001ff388mov rdx, rbp
001ff38bmov rdi, [rax+8]
001ff38fcall caml_BLAKE2Final
001ff394mov [r12+160], r13
001ff39cmov rax, [rsp+88]
001ff3a1sub rax, [0x28]
001ff3aajne 0x1ff3be
001ff3acadd rsp, 104
001ff3b0mov rax, rbp
001ff3b3pop rbx
001ff3b4pop rbp
001ff3b5pop r12
001ff3b7pop r13
001ff3b9ret
001ff3bacall fn_f4590
001ff3bfdb 0xcd
001ff3c0push rcx
001ff3c1out dx, eax
001ff3c2db 0xff
001ff310
001ff3c3
001ff3c3 // align 0x10
001ff3c3 // align 0x10
001ff3d0
001ff3d0caml_blake2_string:
001ff3d0push r15
001ff3d2sar rdi, 1
001ff3d5mov r15, rsi
001ff3d8push r14
001ff3damov r14, rdx
001ff3ddpush r13
001ff3dfpush r12
001ff3e1push rbp
001ff3e2mov rbp, rdi
001ff3e5mov rdi, rsi
001ff3e8push rbx
001ff3e9mov rbx, rcx
001ff3ecsar rbx, 1
001ff3efsub rsp, 232
001ff3f6mov r12, [0x28]
001ff3ffmov [rsp+216], r12
001ff407mov r12, r8
001ff40acall caml_string_length
001ff40fmov rcx, r15
001ff412mov rsi, rbp
001ff415mov rdi, rsp
001ff418mov rdx, rax
001ff41bcall caml_BLAKE2Init
001ff420lea rsi, [rbx+r14]
001ff424mov rdi, rsp
001ff427mov rdx, r12
001ff42asar rdx, 1
001ff42dcall caml_BLAKE2Update
001ff432mov rdi, rbp
001ff435call caml_alloc_string
001ff43amov rsi, rbp
001ff43dmov rdi, rsp
001ff440mov rdx, rax
001ff443mov rbx, rax
001ff446call caml_BLAKE2Final
001ff44bmov rax, [rsp+216]
001ff453sub rax, [0x28]
001ff45cjne 0x1ff477
001ff45eadd rsp, 232
001ff465mov rax, rbx
001ff468pop rbx
001ff469pop rbp
001ff46apop r12
001ff46cpop r13
001ff46epop r14
001ff470pop r15
001ff472ret
001ff473call fn_f4590
001ff478db 0x14
001ff479push rcx
001ff47aout dx, eax
001ff47bdb 0xff
001ff3d0
001ff3d0caml_blake2_string:
001ff3d0push r15
001ff3d2sar rdi, 1
001ff3d5mov r15, rsi
001ff3d8push r14
001ff3damov r14, rdx
001ff3ddpush r13
001ff3dfpush r12
001ff3e1push rbp
001ff3e2mov rbp, rdi
001ff3e5mov rdi, rsi
001ff3e8push rbx
001ff3e9mov rbx, rcx
001ff3ecsar rbx, 1
001ff3efsub rsp, 232
001ff3f6mov r12, [0x28]
001ff3ffmov [rsp+216], r12
001ff407mov r12, r8
001ff40acall caml_string_length
001ff40fmov rcx, r15
001ff412mov rsi, rbp
001ff415mov rdi, rsp
001ff418mov rdx, rax
001ff41bcall caml_BLAKE2Init
001ff420lea rsi, [rbx+r14]
001ff424mov rdi, rsp
001ff427mov rdx, r12
001ff42asar rdx, 1
001ff42dcall caml_BLAKE2Update
001ff432mov rdi, rbp
001ff435call caml_alloc_string
001ff43amov rsi, rbp
001ff43dmov rdi, rsp
001ff440mov rdx, rax
001ff443mov rbx, rax
001ff446call caml_BLAKE2Final
001ff44bmov rax, [rsp+216]
001ff453sub rax, [0x28]
001ff45cjne 0x1ff477
001ff45eadd rsp, 232
001ff465mov rax, rbx
001ff468pop rbx
001ff469pop rbp
001ff46apop r12
001ff46cpop r13
001ff46epop r14
001ff470pop r15
001ff472ret
001ff473call fn_f4590
001ff478db 0x14
001ff479push rcx
001ff47aout dx, eax
001ff47bdb 0xff
001ff3d0
001ff47c
001ff47c // align 0x10
001ff47c // align 0x10
001ff480
001ff480caml_blake2_bytes:
001ff480jmp 0x1ff3d0
001ff485db 0x47
001ff486db 0xff
001ff487db 0xff
001ff488db 0xff
001ff480
001ff480caml_blake2_bytes:
001ff480jmp 0x1ff3d0
001ff485db 0x47
001ff486db 0xff
001ff487db 0xff
001ff488db 0xff
001ff480
001ff489
001ff489 // align 0x10
001ff489 // align 0x10
001ff490
001ff490caml_init_callbacks:
001ff490ret
001ff491db 0x0f
001ff492db 0x1e
001ff493cli
001ff494ret
001ff490
001ff490caml_init_callbacks:
001ff490ret
001ff491db 0x0f
001ff492db 0x1e
001ff493cli
001ff494ret
001ff490
001ff495
001ff495 // align 0x10
001ff495 // align 0x10
001ff4a0
001ff4a0caml_callback_exn:
001ff4a0push r14
001ff4a2push r13
001ff4a4push r12
001ff4a6push rbp
001ff4a7push rbx
001ff4a8sub rsp, 112
001ff4acmov [rsp+8], rdi
001ff4b1mov [rsp], rsi
001ff4b5mov r12, [0x28]
001ff4bemov [rsp+104], r12
001ff4c3mov r12, [rip+0x76b1a]
001ff4camov rbp, [r12]
001ff4cftest rbp, rbp
001ff4d2je 0x1ff638
001ff4d8call caml_maybe_expand_stack
001ff4ddmov rax, [rbp+40]
001ff4e1mov rax, [rax+16]
001ff4e5cmp [rax+24], 0
001ff4eaje 0x1ff618
001ff4f0mov rbx, [r12]
001ff4f5movdqa x0, [rip+0x2abcf]
001ff4fdlea rax, [rsp+8]
001ff502mov r13, rsp
001ff505lea r14, [rsp+32]
001ff50amovq x1, rsp
001ff50fmov rdx, [rbx+160]
001ff516mov [rsp+32], rdx
001ff51bmov [rbx+160], r14
001ff522movups [rsp+40], x0
001ff527movq x0, rax
001ff52cpunpcklqdq x0, x1
001ff530movups [rsp+56], x0
001ff535mov rax, [rbx+40]
001ff539mov rax, [rax+16]
001ff53dmov rsi, [rax+24]
001ff541mov eax, 1
001ff546test rsi, rsi
001ff549je 0x1ff57c
001ff54bmov edx, 1
001ff550add rsi, 1
001ff554mov edi, 245
001ff559call caml_alloc_2
001ff55emov rdx, [rbx+40]
001ff562mov rdx, [rdx+16]
001ff566mov [rdx+24], 0
001ff56emov rbx, [r12]
001ff573mov rdx, [rsp+32]
001ff578mov [rsp+32], rdx
001ff57dmov rdi, rbx
001ff580mov [rbx+160], r14
001ff587mov [rsp+24], rax
001ff58cmov eax, 1
001ff591movq x0, rax
001ff596lea rax, [rsp+24]
001ff59bpunpcklqdq x0, x0
001ff59fmov [rsp+56], rax
001ff5a4movups [rsp+40], x0
001ff5a9call caml_update_young_limit_after_c_call
001ff5aemov rsi, [rsp+8]
001ff5b3mov rdx, r13
001ff5b6mov rdi, rbx
001ff5b9call caml_callback_asm
001ff5bemov rdx, [r12]
001ff5c3mov rcx, [rsp+32]
001ff5c8mov [rdx+160], rcx
001ff5cfmov rdx, [rsp+24]
001ff5d4test dl, 1
001ff5d7je 0x1ff600
001ff5d9mov rdx, [rsp+104]
001ff5desub rdx, [0x28]
001ff5e7jne 0x1ff63d
001ff5e9add rsp, 112
001ff5edpop rbx
001ff5eepop rbp
001ff5efpop r12
001ff5f1pop r13
001ff5f3pop r14
001ff5f5ret
001ff5f6db 0x5d
001ff5f7pop r14
001ff5f9ret
001ff5fa
001ff5fa 66 0f 1f 44 00 00 f..D..
001ff600
001ff600loc_1ff600:
001ff600mov rcx, [rbp+40]
001ff604mov rdx, [rdx]
001ff607mov rcx, [rcx+16]
001ff60bsub rdx, 1
001ff60fmov [rcx+24], rdx
001ff613jmp 0x1ff5dd
001ff615
001ff615 0f 1f 00 ...
001ff618
001ff618loc_1ff618:
001ff618mov rdi, rbp
001ff61bcall caml_update_young_limit_after_c_call
001ff620mov rsi, [rsp+8]
001ff625mov rdx, rsp
001ff628mov rdi, rbp
001ff62bcall caml_callback_asm
001ff630jmp 0x1ff5dd
001ff632
001ff632 66 0f 1f 44 00 00 f..D..
001ff638
001ff638loc_1ff638:
001ff638call caml_bad_caml_state
001ff63d
001ff63dloc_1ff63d:
001ff63dcall fn_f4590
001ff4a0
001ff4a0caml_callback_exn:
001ff4a0push r14
001ff4a2push r13
001ff4a4push r12
001ff4a6push rbp
001ff4a7push rbx
001ff4a8sub rsp, 112
001ff4acmov [rsp+8], rdi
001ff4b1mov [rsp], rsi
001ff4b5mov r12, [0x28]
001ff4bemov [rsp+104], r12
001ff4c3mov r12, [rip+0x76b1a]
001ff4camov rbp, [r12]
001ff4cftest rbp, rbp
001ff4d2je 0x1ff638
001ff4d8call caml_maybe_expand_stack
001ff4ddmov rax, [rbp+40]
001ff4e1mov rax, [rax+16]
001ff4e5cmp [rax+24], 0
001ff4eaje 0x1ff618
001ff4f0mov rbx, [r12]
001ff4f5movdqa x0, [rip+0x2abcf]
001ff4fdlea rax, [rsp+8]
001ff502mov r13, rsp
001ff505lea r14, [rsp+32]
001ff50amovq x1, rsp
001ff50fmov rdx, [rbx+160]
001ff516mov [rsp+32], rdx
001ff51bmov [rbx+160], r14
001ff522movups [rsp+40], x0
001ff527movq x0, rax
001ff52cpunpcklqdq x0, x1
001ff530movups [rsp+56], x0
001ff535mov rax, [rbx+40]
001ff539mov rax, [rax+16]
001ff53dmov rsi, [rax+24]
001ff541mov eax, 1
001ff546test rsi, rsi
001ff549je 0x1ff57c
001ff54bmov edx, 1
001ff550add rsi, 1
001ff554mov edi, 245
001ff559call caml_alloc_2
001ff55emov rdx, [rbx+40]
001ff562mov rdx, [rdx+16]
001ff566mov [rdx+24], 0
001ff56emov rbx, [r12]
001ff573mov rdx, [rsp+32]
001ff578mov [rsp+32], rdx
001ff57dmov rdi, rbx
001ff580mov [rbx+160], r14
001ff587mov [rsp+24], rax
001ff58cmov eax, 1
001ff591movq x0, rax
001ff596lea rax, [rsp+24]
001ff59bpunpcklqdq x0, x0
001ff59fmov [rsp+56], rax
001ff5a4movups [rsp+40], x0
001ff5a9call caml_update_young_limit_after_c_call
001ff5aemov rsi, [rsp+8]
001ff5b3mov rdx, r13
001ff5b6mov rdi, rbx
001ff5b9call caml_callback_asm
001ff5bemov rdx, [r12]
001ff5c3mov rcx, [rsp+32]
001ff5c8mov [rdx+160], rcx
001ff5cfmov rdx, [rsp+24]
001ff5d4test dl, 1
001ff5d7je 0x1ff600
001ff5d9mov rdx, [rsp+104]
001ff5desub rdx, [0x28]
001ff5e7jne 0x1ff63d
001ff5e9add rsp, 112
001ff5edpop rbx
001ff5eepop rbp
001ff5efpop r12
001ff5f1pop r13
001ff5f3pop r14
001ff5f5ret
001ff5f6db 0x5d
001ff5f7pop r14
001ff5f9ret
001ff5fa
001ff5fa 66 0f 1f 44 00 00 f..D..
001ff600
001ff600loc_1ff600:
001ff600mov rcx, [rbp+40]
001ff604mov rdx, [rdx]
001ff607mov rcx, [rcx+16]
001ff60bsub rdx, 1
001ff60fmov [rcx+24], rdx
001ff613jmp 0x1ff5dd
001ff615
001ff615 0f 1f 00 ...
001ff618
001ff618loc_1ff618:
001ff618mov rdi, rbp
001ff61bcall caml_update_young_limit_after_c_call
001ff620mov rsi, [rsp+8]
001ff625mov rdx, rsp
001ff628mov rdi, rbp
001ff62bcall caml_callback_asm
001ff630jmp 0x1ff5dd
001ff632
001ff632 66 0f 1f 44 00 00 f..D..
001ff638
001ff638loc_1ff638:
001ff638call caml_bad_caml_state
001ff63d
001ff63dloc_1ff63d:
001ff63dcall fn_f4590
001ff4a0
001ff642
001ff642 // align 0x10
001ff642 // align 0x10
001ff650
001ff650caml_callback2_exn:
001ff650push r13
001ff652push r12
001ff654push rbp
001ff655push rbx
001ff656sub rsp, 152
001ff65dmov [rsp+24], rdi
001ff662mov [rsp+16], rsi
001ff667mov [rsp+8], rdx
001ff66cmov r12, [0x28]
001ff675mov [rsp+136], r12
001ff67dmov r12, [rip+0x76960]
001ff684mov rbp, [r12]
001ff689test rbp, rbp
001ff68cje 0x1ff828
001ff692call caml_maybe_expand_stack
001ff697mov rax, [rbp+40]
001ff69bmov rax, [rax+16]
001ff69fcmp [rax+24], 0
001ff6a4je 0x1ff7f8
001ff6aamov rbx, [r12]
001ff6aflea rax, [rsp+24]
001ff6b4lea r13, [rsp+64]
001ff6b9movdqa x0, [rip+0x2aa1b]
001ff6c1mov rdx, [rbx+160]
001ff6c8mov [rsp+64], rdx
001ff6cdmov [rbx+160], r13
001ff6d4movups [rsp+72], x0
001ff6d9movq x0, rax
001ff6delea rax, [rsp+16]
001ff6e3movq x1, rax
001ff6e8lea rax, [rsp+8]
001ff6edpunpcklqdq x0, x1
001ff6f1mov [rsp+104], rax
001ff6f6movups [rsp+88], x0
001ff6fbmov rax, [rbx+40]
001ff6ffmov rax, [rax+16]
001ff703mov rsi, [rax+24]
001ff707mov eax, 1
001ff70ctest rsi, rsi
001ff70fje 0x1ff742
001ff711mov edx, 1
001ff716add rsi, 1
001ff71amov edi, 245
001ff71fcall caml_alloc_2
001ff724mov rdx, [rbx+40]
001ff728mov rdx, [rdx+16]
001ff72cmov [rdx+24], 0
001ff734mov rbx, [r12]
001ff739mov rdx, [rsp+64]
001ff73emov [rsp+40], rax
001ff743mov eax, 1
001ff748mov rdi, rbx
001ff74bmovq x0, rax
001ff750mov [rsp+64], rdx
001ff755lea rax, [rsp+40]
001ff75apunpcklqdq x0, x0
001ff75emov [rbx+160], r13
001ff765movups [rsp+72], x0
001ff76amovq x0, [rsp+16]
001ff770mov [rsp+88], rax
001ff775movhps x0, [rsp+8]
001ff77amovaps [rsp+48], x0
001ff77fcall caml_update_young_limit_after_c_call
001ff784mov rsi, [rsp+24]
001ff789lea rdx, [rsp+48]
001ff78emov rdi, rbx
001ff791call caml_callback2_asm
001ff796mov rdx, [r12]
001ff79bmov rcx, [rsp+64]
001ff7a0mov [rdx+160], rcx
001ff7a7mov rdx, [rsp+40]
001ff7actest dl, 1
001ff7afje 0x1ff7e0
001ff7b1mov rdx, [rsp+136]
001ff7b9sub rdx, [0x28]
001ff7c2jne 0x1ff82d
001ff7c4add rsp, 152
001ff7cbpop rbx
001ff7ccpop rbp
001ff7cdpop r12
001ff7cfpop r13
001ff7d1ret
001ff7d2db 0x5c
001ff7d3pop r13
001ff7d5ret
001ff7d6
001ff7d6 66 2e 0f 1f 84 00 00 00 00 00 f.........
001ff7e0
001ff7e0loc_1ff7e0:
001ff7e0mov rcx, [rbp+40]
001ff7e4mov rdx, [rdx]
001ff7e7mov rcx, [rcx+16]
001ff7ebsub rdx, 1
001ff7efmov [rcx+24], rdx
001ff7f3jmp 0x1ff7b5
001ff7f5
001ff7f5 0f 1f 00 ...
001ff7f8
001ff7f8loc_1ff7f8:
001ff7f8movq x0, [rsp+16]
001ff7femov rdi, rbp
001ff801movhps x0, [rsp+8]
001ff806movaps [rsp+64], x0
001ff80bcall caml_update_young_limit_after_c_call
001ff810mov rsi, [rsp+24]
001ff815lea rdx, [rsp+64]
001ff81amov rdi, rbp
001ff81dcall caml_callback2_asm
001ff822jmp 0x1ff7b5
001ff824
001ff824 0f 1f 40 00 ..@.
001ff828
001ff828loc_1ff828:
001ff828call caml_bad_caml_state
001ff82d
001ff82dloc_1ff82d:
001ff82dcall fn_f4590
001ff650
001ff650caml_callback2_exn:
001ff650push r13
001ff652push r12
001ff654push rbp
001ff655push rbx
001ff656sub rsp, 152
001ff65dmov [rsp+24], rdi
001ff662mov [rsp+16], rsi
001ff667mov [rsp+8], rdx
001ff66cmov r12, [0x28]
001ff675mov [rsp+136], r12
001ff67dmov r12, [rip+0x76960]
001ff684mov rbp, [r12]
001ff689test rbp, rbp
001ff68cje 0x1ff828
001ff692call caml_maybe_expand_stack
001ff697mov rax, [rbp+40]
001ff69bmov rax, [rax+16]
001ff69fcmp [rax+24], 0
001ff6a4je 0x1ff7f8
001ff6aamov rbx, [r12]
001ff6aflea rax, [rsp+24]
001ff6b4lea r13, [rsp+64]
001ff6b9movdqa x0, [rip+0x2aa1b]
001ff6c1mov rdx, [rbx+160]
001ff6c8mov [rsp+64], rdx
001ff6cdmov [rbx+160], r13
001ff6d4movups [rsp+72], x0
001ff6d9movq x0, rax
001ff6delea rax, [rsp+16]
001ff6e3movq x1, rax
001ff6e8lea rax, [rsp+8]
001ff6edpunpcklqdq x0, x1
001ff6f1mov [rsp+104], rax
001ff6f6movups [rsp+88], x0
001ff6fbmov rax, [rbx+40]
001ff6ffmov rax, [rax+16]
001ff703mov rsi, [rax+24]
001ff707mov eax, 1
001ff70ctest rsi, rsi
001ff70fje 0x1ff742
001ff711mov edx, 1
001ff716add rsi, 1
001ff71amov edi, 245
001ff71fcall caml_alloc_2
001ff724mov rdx, [rbx+40]
001ff728mov rdx, [rdx+16]
001ff72cmov [rdx+24], 0
001ff734mov rbx, [r12]
001ff739mov rdx, [rsp+64]
001ff73emov [rsp+40], rax
001ff743mov eax, 1
001ff748mov rdi, rbx
001ff74bmovq x0, rax
001ff750mov [rsp+64], rdx
001ff755lea rax, [rsp+40]
001ff75apunpcklqdq x0, x0
001ff75emov [rbx+160], r13
001ff765movups [rsp+72], x0
001ff76amovq x0, [rsp+16]
001ff770mov [rsp+88], rax
001ff775movhps x0, [rsp+8]
001ff77amovaps [rsp+48], x0
001ff77fcall caml_update_young_limit_after_c_call
001ff784mov rsi, [rsp+24]
001ff789lea rdx, [rsp+48]
001ff78emov rdi, rbx
001ff791call caml_callback2_asm
001ff796mov rdx, [r12]
001ff79bmov rcx, [rsp+64]
001ff7a0mov [rdx+160], rcx
001ff7a7mov rdx, [rsp+40]
001ff7actest dl, 1
001ff7afje 0x1ff7e0
001ff7b1mov rdx, [rsp+136]
001ff7b9sub rdx, [0x28]
001ff7c2jne 0x1ff82d
001ff7c4add rsp, 152
001ff7cbpop rbx
001ff7ccpop rbp
001ff7cdpop r12
001ff7cfpop r13
001ff7d1ret
001ff7d2db 0x5c
001ff7d3pop r13
001ff7d5ret
001ff7d6
001ff7d6 66 2e 0f 1f 84 00 00 00 00 00 f.........
001ff7e0
001ff7e0loc_1ff7e0:
001ff7e0mov rcx, [rbp+40]
001ff7e4mov rdx, [rdx]
001ff7e7mov rcx, [rcx+16]
001ff7ebsub rdx, 1
001ff7efmov [rcx+24], rdx
001ff7f3jmp 0x1ff7b5
001ff7f5
001ff7f5 0f 1f 00 ...
001ff7f8
001ff7f8loc_1ff7f8:
001ff7f8movq x0, [rsp+16]
001ff7femov rdi, rbp
001ff801movhps x0, [rsp+8]
001ff806movaps [rsp+64], x0
001ff80bcall caml_update_young_limit_after_c_call
001ff810mov rsi, [rsp+24]
001ff815lea rdx, [rsp+64]
001ff81amov rdi, rbp
001ff81dcall caml_callback2_asm
001ff822jmp 0x1ff7b5
001ff824
001ff824 0f 1f 40 00 ..@.
001ff828
001ff828loc_1ff828:
001ff828call caml_bad_caml_state
001ff82d
001ff82dloc_1ff82d:
001ff82dcall fn_f4590
001ff650
001ff832
001ff832 // align 0x10
001ff832 // align 0x10
001ff840
001ff840caml_callback3_exn:
001ff840push r13
001ff842push r12
001ff844push rbp
001ff845push rbx
001ff846sub rsp, 168
001ff84dmov [rsp+24], rdi
001ff852mov [rsp+16], rsi
001ff857mov [rsp+8], rdx
001ff85cmov [rsp], rcx
001ff860mov r12, [0x28]
001ff869mov [rsp+152], r12
001ff871mov r12, [rip+0x7676c]
001ff878mov rbp, [r12]
001ff87dtest rbp, rbp
001ff880je 0x1ffa38
001ff886call caml_maybe_expand_stack
001ff88bmov rax, [rbp+40]
001ff88fmov rax, [rax+16]
001ff893cmp [rax+24], 0
001ff898je 0x1ffa00
001ff89emov rbx, [r12]
001ff8a3lea rax, [rsp+24]
001ff8a8lea r13, [rsp+80]
001ff8admovdqa x0, [rip+0x2a837]
001ff8b5movq x2, rsp
001ff8bamov rdx, [rbx+160]
001ff8c1mov [rsp+80], rdx
001ff8c6mov [rbx+160], r13
001ff8cdmovups [rsp+88], x0
001ff8d2movq x0, rax
001ff8d7lea rax, [rsp+16]
001ff8dcmovq x1, rax
001ff8e1lea rax, [rsp+8]
001ff8e6punpcklqdq x0, x1
001ff8eamovups [rsp+104], x0
001ff8efmovq x0, rax
001ff8f4punpcklqdq x0, x2
001ff8f8movups [rsp+120], x0
001ff8fdmov rax, [rbx+40]
001ff901mov rax, [rax+16]
001ff905mov rsi, [rax+24]
001ff909mov eax, 1
001ff90etest rsi, rsi
001ff911je 0x1ff944
001ff913mov edx, 1
001ff918add rsi, 1
001ff91cmov edi, 245
001ff921call caml_alloc_2
001ff926mov rdx, [rbx+40]
001ff92amov rdx, [rdx+16]
001ff92emov [rdx+24], 0
001ff936mov rbx, [r12]
001ff93bmov rdx, [rsp+80]
001ff940mov [rsp+40], rax
001ff945mov eax, 1
001ff94amov rdi, rbx
001ff94dmovq x0, rax
001ff952mov [rsp+80], rdx
001ff957lea rax, [rsp+40]
001ff95cpunpcklqdq x0, x0
001ff960mov [rbx+160], r13
001ff967movups [rsp+88], x0
001ff96cmovq x0, [rsp+16]
001ff972mov [rsp+104], rax
001ff977mov rax, [rsp]
001ff97bmovhps x0, [rsp+8]
001ff980mov [rsp+64], rax
001ff985movaps [rsp+48], x0
001ff98acall caml_update_young_limit_after_c_call
001ff98fmov rsi, [rsp+24]
001ff994lea rdx, [rsp+48]
001ff999mov rdi, rbx
001ff99ccall caml_callback3_asm
001ff9a1mov rdx, [r12]
001ff9a6mov rcx, [rsp+80]
001ff9abmov [rdx+160], rcx
001ff9b2mov rdx, [rsp+40]
001ff9b7test dl, 1
001ff9baje 0x1ff9e8
001ff9bcmov rdx, [rsp+152]
001ff9c4sub rdx, [0x28]
001ff9cdjne 0x1ffa3d
001ff9cfadd rsp, 168
001ff9d6pop rbx
001ff9d7pop rbp
001ff9d8pop r12
001ff9dapop r13
001ff9dcret
001ff9dddb 0x5c
001ff9depop r13
001ff9e0ret
001ff9e1
001ff9e1 0f 1f 80 00 00 00 00 .......
001ff9e8
001ff9e8loc_1ff9e8:
001ff9e8mov rcx, [rbp+40]
001ff9ecmov rdx, [rdx]
001ff9efmov rcx, [rcx+16]
001ff9f3sub rdx, 1
001ff9f7mov [rcx+24], rdx
001ff9fbjmp 0x1ff9c0
001ff9fd
001ff9fd 0f 1f 00 ...
001ffa00
001ffa00loc_1ffa00:
001ffa00movq x0, [rsp+16]
001ffa06mov rax, [rsp]
001ffa0amov rdi, rbp
001ffa0dmovhps x0, [rsp+8]
001ffa12mov [rsp+96], rax
001ffa17movaps [rsp+80], x0
001ffa1ccall caml_update_young_limit_after_c_call
001ffa21mov rsi, [rsp+24]
001ffa26lea rdx, [rsp+80]
001ffa2bmov rdi, rbp
001ffa2ecall caml_callback3_asm
001ffa33jmp 0x1ff9c0
001ffa35
001ffa35 0f 1f 00 ...
001ffa38
001ffa38loc_1ffa38:
001ffa38call caml_bad_caml_state
001ffa3d
001ffa3dloc_1ffa3d:
001ffa3dcall fn_f4590
001ff840
001ff840caml_callback3_exn:
001ff840push r13
001ff842push r12
001ff844push rbp
001ff845push rbx
001ff846sub rsp, 168
001ff84dmov [rsp+24], rdi
001ff852mov [rsp+16], rsi
001ff857mov [rsp+8], rdx
001ff85cmov [rsp], rcx
001ff860mov r12, [0x28]
001ff869mov [rsp+152], r12
001ff871mov r12, [rip+0x7676c]
001ff878mov rbp, [r12]
001ff87dtest rbp, rbp
001ff880je 0x1ffa38
001ff886call caml_maybe_expand_stack
001ff88bmov rax, [rbp+40]
001ff88fmov rax, [rax+16]
001ff893cmp [rax+24], 0
001ff898je 0x1ffa00
001ff89emov rbx, [r12]
001ff8a3lea rax, [rsp+24]
001ff8a8lea r13, [rsp+80]
001ff8admovdqa x0, [rip+0x2a837]
001ff8b5movq x2, rsp
001ff8bamov rdx, [rbx+160]
001ff8c1mov [rsp+80], rdx
001ff8c6mov [rbx+160], r13
001ff8cdmovups [rsp+88], x0
001ff8d2movq x0, rax
001ff8d7lea rax, [rsp+16]
001ff8dcmovq x1, rax
001ff8e1lea rax, [rsp+8]
001ff8e6punpcklqdq x0, x1
001ff8eamovups [rsp+104], x0
001ff8efmovq x0, rax
001ff8f4punpcklqdq x0, x2
001ff8f8movups [rsp+120], x0
001ff8fdmov rax, [rbx+40]
001ff901mov rax, [rax+16]
001ff905mov rsi, [rax+24]
001ff909mov eax, 1
001ff90etest rsi, rsi
001ff911je 0x1ff944
001ff913mov edx, 1
001ff918add rsi, 1
001ff91cmov edi, 245
001ff921call caml_alloc_2
001ff926mov rdx, [rbx+40]
001ff92amov rdx, [rdx+16]
001ff92emov [rdx+24], 0
001ff936mov rbx, [r12]
001ff93bmov rdx, [rsp+80]
001ff940mov [rsp+40], rax
001ff945mov eax, 1
001ff94amov rdi, rbx
001ff94dmovq x0, rax
001ff952mov [rsp+80], rdx
001ff957lea rax, [rsp+40]
001ff95cpunpcklqdq x0, x0
001ff960mov [rbx+160], r13
001ff967movups [rsp+88], x0
001ff96cmovq x0, [rsp+16]
001ff972mov [rsp+104], rax
001ff977mov rax, [rsp]
001ff97bmovhps x0, [rsp+8]
001ff980mov [rsp+64], rax
001ff985movaps [rsp+48], x0
001ff98acall caml_update_young_limit_after_c_call
001ff98fmov rsi, [rsp+24]
001ff994lea rdx, [rsp+48]
001ff999mov rdi, rbx
001ff99ccall caml_callback3_asm
001ff9a1mov rdx, [r12]
001ff9a6mov rcx, [rsp+80]
001ff9abmov [rdx+160], rcx
001ff9b2mov rdx, [rsp+40]
001ff9b7test dl, 1
001ff9baje 0x1ff9e8
001ff9bcmov rdx, [rsp+152]
001ff9c4sub rdx, [0x28]
001ff9cdjne 0x1ffa3d
001ff9cfadd rsp, 168
001ff9d6pop rbx
001ff9d7pop rbp
001ff9d8pop r12
001ff9dapop r13
001ff9dcret
001ff9dddb 0x5c
001ff9depop r13
001ff9e0ret
001ff9e1
001ff9e1 0f 1f 80 00 00 00 00 .......
001ff9e8
001ff9e8loc_1ff9e8:
001ff9e8mov rcx, [rbp+40]
001ff9ecmov rdx, [rdx]
001ff9efmov rcx, [rcx+16]
001ff9f3sub rdx, 1
001ff9f7mov [rcx+24], rdx
001ff9fbjmp 0x1ff9c0
001ff9fd
001ff9fd 0f 1f 00 ...
001ffa00
001ffa00loc_1ffa00:
001ffa00movq x0, [rsp+16]
001ffa06mov rax, [rsp]
001ffa0amov rdi, rbp
001ffa0dmovhps x0, [rsp+8]
001ffa12mov [rsp+96], rax
001ffa17movaps [rsp+80], x0
001ffa1ccall caml_update_young_limit_after_c_call
001ffa21mov rsi, [rsp+24]
001ffa26lea rdx, [rsp+80]
001ffa2bmov rdi, rbp
001ffa2ecall caml_callback3_asm
001ffa33jmp 0x1ff9c0
001ffa35
001ffa35 0f 1f 00 ...
001ffa38
001ffa38loc_1ffa38:
001ffa38call caml_bad_caml_state
001ffa3d
001ffa3dloc_1ffa3d:
001ffa3dcall fn_f4590
001ff840
001ffa42
001ffa42 // align 0x10
001ffa42 // align 0x10
001ffa50
001ffa50caml_callbackN_exn:
001ffa50push r13
001ffa52sub esi, 3
001ffa55push r12
001ffa57push rbp
001ffa58movsxd rbp, esi
001ffa5bpush rbx
001ffa5csub rsp, 88
001ffa60mov rbx, [0x28]
001ffa69mov [rsp+72], rbx
001ffa6emov rbx, rdx
001ffa71mov r13, rsp
001ffa74jmp 0x1ffae9
001ffa76db 0x89
001ffa77in eax, 235
001ffa79outsd dx, [rsi]
001ffa7a
001ffa7a 66 0f 1f 44 00 00 f..D..
001ffa80
001ffa80loc_1ffa80:
001ffa80mov r12, [rip+0x76561]
001ffa87add rbx, 24
001ffa8bmov rax, [r12]
001ffa90mov [rsp+16], rbp
001ffa95sub rbp, 3
001ffa99mov [rsp+8], 1
001ffaa2mov rdx, [rax+160]
001ffaa9mov [rax+160], r13
001ffab0mov rcx, [rbx-8]
001ffab4mov rsi, [rbx-24]
001ffab8mov [rsp+24], rbx
001ffabdmov [rsp], rdx
001ffac1mov rdx, [rbx-16]
001ffac5call caml_callback3_exn
001ffacamov rdx, [rsp]
001ffacemov rdi, rax
001ffad1mov rax, [r12]
001ffad6mov [rax+160], rdx
001ffaddmov rax, rdi
001ffae0and eax, 3
001ffae3cmp rax, 2
001ffae7je 0x1ffb20
001ffae9
001ffae9loc_1ffae9:
001ffae9lea eax, [rbp+3]
001ffaeccmp eax, 2
001ffaefjg 0x1ffa80
001ffaf1test eax, eax
001ffaf3je 0x1ffb20
001ffaf5cmp eax, 1
001ffaf8je 0x1ffb40
001ffafamov rax, [rsp+72]
001ffaffsub rax, [0x28]
001ffb08jne 0x1ffb62
001ffb0amov rdx, [rbx+8]
001ffb0emov rsi, [rbx]
001ffb11add rsp, 88
001ffb15pop rbx
001ffb16pop rbp
001ffb17pop r12
001ffb19pop r13
001ffb1bjmp 0x1ff650
001ffb20
001ffb20loc_1ffb20:
001ffb20mov rax, [rsp+72]
001ffb25sub rax, [0x28]
001ffb2ejne 0x1ffb62
001ffb30add rsp, 88
001ffb34mov rax, rdi
001ffb37pop rbx
001ffb38pop rbp
001ffb39pop r12
001ffb3bpop r13
001ffb3dret
001ffb3e
001ffb3e 66 90 f.
001ffb40
001ffb40loc_1ffb40:
001ffb40mov rax, [rsp+72]
001ffb45sub rax, [0x28]
001ffb4ejne 0x1ffb62
001ffb50mov rsi, [rbx]
001ffb53add rsp, 88
001ffb57pop rbx
001ffb58pop rbp
001ffb59pop r12
001ffb5bpop r13
001ffb5djmp 0x1ff4a0
001ffb62
001ffb62loc_1ffb62:
001ffb62call fn_f4590
001ffa50
001ffa50caml_callbackN_exn:
001ffa50push r13
001ffa52sub esi, 3
001ffa55push r12
001ffa57push rbp
001ffa58movsxd rbp, esi
001ffa5bpush rbx
001ffa5csub rsp, 88
001ffa60mov rbx, [0x28]
001ffa69mov [rsp+72], rbx
001ffa6emov rbx, rdx
001ffa71mov r13, rsp
001ffa74jmp 0x1ffae9
001ffa76db 0x89
001ffa77in eax, 235
001ffa79outsd dx, [rsi]
001ffa7a
001ffa7a 66 0f 1f 44 00 00 f..D..
001ffa80
001ffa80loc_1ffa80:
001ffa80mov r12, [rip+0x76561]
001ffa87add rbx, 24
001ffa8bmov rax, [r12]
001ffa90mov [rsp+16], rbp
001ffa95sub rbp, 3
001ffa99mov [rsp+8], 1
001ffaa2mov rdx, [rax+160]
001ffaa9mov [rax+160], r13
001ffab0mov rcx, [rbx-8]
001ffab4mov rsi, [rbx-24]
001ffab8mov [rsp+24], rbx
001ffabdmov [rsp], rdx
001ffac1mov rdx, [rbx-16]
001ffac5call caml_callback3_exn
001ffacamov rdx, [rsp]
001ffacemov rdi, rax
001ffad1mov rax, [r12]
001ffad6mov [rax+160], rdx
001ffaddmov rax, rdi
001ffae0and eax, 3
001ffae3cmp rax, 2
001ffae7je 0x1ffb20
001ffae9
001ffae9loc_1ffae9:
001ffae9lea eax, [rbp+3]
001ffaeccmp eax, 2
001ffaefjg 0x1ffa80
001ffaf1test eax, eax
001ffaf3je 0x1ffb20
001ffaf5cmp eax, 1
001ffaf8je 0x1ffb40
001ffafamov rax, [rsp+72]
001ffaffsub rax, [0x28]
001ffb08jne 0x1ffb62
001ffb0amov rdx, [rbx+8]
001ffb0emov rsi, [rbx]
001ffb11add rsp, 88
001ffb15pop rbx
001ffb16pop rbp
001ffb17pop r12
001ffb19pop r13
001ffb1bjmp 0x1ff650
001ffb20
001ffb20loc_1ffb20:
001ffb20mov rax, [rsp+72]
001ffb25sub rax, [0x28]
001ffb2ejne 0x1ffb62
001ffb30add rsp, 88
001ffb34mov rax, rdi
001ffb37pop rbx
001ffb38pop rbp
001ffb39pop r12
001ffb3bpop r13
001ffb3dret
001ffb3e
001ffb3e 66 90 f.
001ffb40
001ffb40loc_1ffb40:
001ffb40mov rax, [rsp+72]
001ffb45sub rax, [0x28]
001ffb4ejne 0x1ffb62
001ffb50mov rsi, [rbx]
001ffb53add rsp, 88
001ffb57pop rbx
001ffb58pop rbp
001ffb59pop r12
001ffb5bpop r13
001ffb5djmp 0x1ff4a0
001ffb62
001ffb62loc_1ffb62:
001ffb62call fn_f4590
001ffa50
001ffb67
001ffb67 // align 0x10
001ffb67 // align 0x10
001ffb70
001ffb70caml_callbackN_res:
001ffb70sub rsp, 8
001ffb74call caml_callbackN_exn
001ffb79mov rdx, rax
001ffb7cand edx, 3
001ffb7fcmp rdx, 2
001ffb83je 0x1ffba0
001ffb85xor edx, edx
001ffb87mov rdi, rax
001ffb8aadd rsp, 8
001ffb8eand edx, 1
001ffb91mov eax, edx
001ffb93mov rdx, rdi
001ffb96ret
001ffb97db 0x48
001ffb98mov edx, edi
001ffb9aret
001ffb9b
001ffb9b 0f 1f 44 00 00 ..D..
001ffba0
001ffba0loc_1ffba0:
001ffba0and rax, -4
001ffba4mov edx, 1
001ffba9add rsp, 8
001ffbadand edx, 1
001ffbb0mov rdi, rax
001ffbb3mov eax, edx
001ffbb5mov rdx, rdi
001ffbb8ret
001ffb70
001ffb70caml_callbackN_res:
001ffb70sub rsp, 8
001ffb74call caml_callbackN_exn
001ffb79mov rdx, rax
001ffb7cand edx, 3
001ffb7fcmp rdx, 2
001ffb83je 0x1ffba0
001ffb85xor edx, edx
001ffb87mov rdi, rax
001ffb8aadd rsp, 8
001ffb8eand edx, 1
001ffb91mov eax, edx
001ffb93mov rdx, rdi
001ffb96ret
001ffb97db 0x48
001ffb98mov edx, edi
001ffb9aret
001ffb9b
001ffb9b 0f 1f 44 00 00 ..D..
001ffba0
001ffba0loc_1ffba0:
001ffba0and rax, -4
001ffba4mov edx, 1
001ffba9add rsp, 8
001ffbadand edx, 1
001ffbb0mov rdi, rax
001ffbb3mov eax, edx
001ffbb5mov rdx, rdi
001ffbb8ret
001ffb70
001ffbb9
001ffbb9 // align 0x10
001ffbb9 // align 0x10
001ffbc0
001ffbc0caml_callback_res:
001ffbc0sub rsp, 8
001ffbc4call caml_callback_exn
001ffbc9xor edx, edx
001ffbcbmov rcx, rax
001ffbceand ecx, 3
001ffbd1cmp rcx, 2
001ffbd5jne 0x1ffbe4
001ffbd7and rax, -4
001ffbdbmov edx, 1
001ffbe0and edx, 1
001ffbe3mov rcx, rax
001ffbe6add rsp, 8
001ffbeamov eax, edx
001ffbecmov rdx, rcx
001ffbefret
001ffbf0db 0x48
001ffbf1mov edx, ecx
001ffbf3ret
001ffbc0
001ffbc0caml_callback_res:
001ffbc0sub rsp, 8
001ffbc4call caml_callback_exn
001ffbc9xor edx, edx
001ffbcbmov rcx, rax
001ffbceand ecx, 3
001ffbd1cmp rcx, 2
001ffbd5jne 0x1ffbe4
001ffbd7and rax, -4
001ffbdbmov edx, 1
001ffbe0and edx, 1
001ffbe3mov rcx, rax
001ffbe6add rsp, 8
001ffbeamov eax, edx
001ffbecmov rdx, rcx
001ffbefret
001ffbf0db 0x48
001ffbf1mov edx, ecx
001ffbf3ret
001ffbc0
001ffbf4
001ffbf4 // align 0x10
001ffbf4 // align 0x10
001ffc00
001ffc00caml_callback2_res:
001ffc00sub rsp, 8
001ffc04call caml_callback2_exn
001ffc09mov rdx, rax
001ffc0cand edx, 3
001ffc0fcmp rdx, 2
001ffc13je 0x1ffc30
001ffc15xor edx, edx
001ffc17mov rdi, rax
001ffc1aadd rsp, 8
001ffc1eand edx, 1
001ffc21mov eax, edx
001ffc23mov rdx, rdi
001ffc26ret
001ffc27db 0x48
001ffc28mov edx, edi
001ffc2aret
001ffc2b
001ffc2b 0f 1f 44 00 00 ..D..
001ffc30
001ffc30loc_1ffc30:
001ffc30and rax, -4
001ffc34mov edx, 1
001ffc39add rsp, 8
001ffc3dand edx, 1
001ffc40mov rdi, rax
001ffc43mov eax, edx
001ffc45mov rdx, rdi
001ffc48ret
001ffc00
001ffc00caml_callback2_res:
001ffc00sub rsp, 8
001ffc04call caml_callback2_exn
001ffc09mov rdx, rax
001ffc0cand edx, 3
001ffc0fcmp rdx, 2
001ffc13je 0x1ffc30
001ffc15xor edx, edx
001ffc17mov rdi, rax
001ffc1aadd rsp, 8
001ffc1eand edx, 1
001ffc21mov eax, edx
001ffc23mov rdx, rdi
001ffc26ret
001ffc27db 0x48
001ffc28mov edx, edi
001ffc2aret
001ffc2b
001ffc2b 0f 1f 44 00 00 ..D..
001ffc30
001ffc30loc_1ffc30:
001ffc30and rax, -4
001ffc34mov edx, 1
001ffc39add rsp, 8
001ffc3dand edx, 1
001ffc40mov rdi, rax
001ffc43mov eax, edx
001ffc45mov rdx, rdi
001ffc48ret
001ffc00
001ffc49
001ffc49 // align 0x10
001ffc49 // align 0x10
001ffc50
001ffc50caml_callback3_res:
001ffc50sub rsp, 8
001ffc54call caml_callback3_exn
001ffc59mov rdx, rax
001ffc5cand edx, 3
001ffc5fcmp rdx, 2
001ffc63je 0x1ffc80
001ffc65xor edx, edx
001ffc67mov rdi, rax
001ffc6aadd rsp, 8
001ffc6eand edx, 1
001ffc71mov eax, edx
001ffc73mov rdx, rdi
001ffc76ret
001ffc77db 0x48
001ffc78mov edx, edi
001ffc7aret
001ffc7b
001ffc7b 0f 1f 44 00 00 ..D..
001ffc80
001ffc80loc_1ffc80:
001ffc80and rax, -4
001ffc84mov edx, 1
001ffc89add rsp, 8
001ffc8dand edx, 1
001ffc90mov rdi, rax
001ffc93mov eax, edx
001ffc95mov rdx, rdi
001ffc98ret
001ffc50
001ffc50caml_callback3_res:
001ffc50sub rsp, 8
001ffc54call caml_callback3_exn
001ffc59mov rdx, rax
001ffc5cand edx, 3
001ffc5fcmp rdx, 2
001ffc63je 0x1ffc80
001ffc65xor edx, edx
001ffc67mov rdi, rax
001ffc6aadd rsp, 8
001ffc6eand edx, 1
001ffc71mov eax, edx
001ffc73mov rdx, rdi
001ffc76ret
001ffc77db 0x48
001ffc78mov edx, edi
001ffc7aret
001ffc7b
001ffc7b 0f 1f 44 00 00 ..D..
001ffc80
001ffc80loc_1ffc80:
001ffc80and rax, -4
001ffc84mov edx, 1
001ffc89add rsp, 8
001ffc8dand edx, 1
001ffc90mov rdi, rax
001ffc93mov eax, edx
001ffc95mov rdx, rdi
001ffc98ret
001ffc50
001ffc99
001ffc99 // align 0x10
001ffc99 // align 0x10
001ffca0
001ffca0caml_callback:
001ffca0sub rsp, 8
001ffca4call caml_callback_exn
001ffca9mov rdx, rax
001ffcacand edx, 3
001ffcafcmp rdx, 2
001ffcb3je 0x1ffcbe
001ffcb5add rsp, 8
001ffcb9ret
001ffcbaand rax, -4
001ffcbe
001ffcbeloc_1ffcbe:
001ffcbemov rdi, rax
001ffcc1call caml_raise
001ffcc6db 0xd6
001ffcc7movsxd rax, [rdx]
001ffcc9db 0x00
001ffca0
001ffca0caml_callback:
001ffca0sub rsp, 8
001ffca4call caml_callback_exn
001ffca9mov rdx, rax
001ffcacand edx, 3
001ffcafcmp rdx, 2
001ffcb3je 0x1ffcbe
001ffcb5add rsp, 8
001ffcb9ret
001ffcbaand rax, -4
001ffcbe
001ffcbeloc_1ffcbe:
001ffcbemov rdi, rax
001ffcc1call caml_raise
001ffcc6db 0xd6
001ffcc7movsxd rax, [rdx]
001ffcc9db 0x00
001ffca0
001ffcca
001ffcca // align 0x10
001ffcca // align 0x10
001ffcd0
001ffcd0caml_callback2:
001ffcd0sub rsp, 8
001ffcd4call caml_callback2_exn
001ffcd9mov rdx, rax
001ffcdcand edx, 3
001ffcdfcmp rdx, 2
001ffce3je 0x1ffcee
001ffce5add rsp, 8
001ffce9ret
001ffceaand rax, -4
001ffcee
001ffceeloc_1ffcee:
001ffceemov rdi, rax
001ffcf1call caml_raise
001ffcf6db 0xa6
001ffcf7movsxd rax, [rdx]
001ffcf9db 0x00
001ffcd0
001ffcd0caml_callback2:
001ffcd0sub rsp, 8
001ffcd4call caml_callback2_exn
001ffcd9mov rdx, rax
001ffcdcand edx, 3
001ffcdfcmp rdx, 2
001ffce3je 0x1ffcee
001ffce5add rsp, 8
001ffce9ret
001ffceaand rax, -4
001ffcee
001ffceeloc_1ffcee:
001ffceemov rdi, rax
001ffcf1call caml_raise
001ffcf6db 0xa6
001ffcf7movsxd rax, [rdx]
001ffcf9db 0x00
001ffcd0
001ffcfa
001ffcfa // align 0x10
001ffcfa // align 0x10
001ffd00
001ffd00caml_callback3:
001ffd00sub rsp, 8
001ffd04call caml_callback3_exn
001ffd09mov rdx, rax
001ffd0cand edx, 3
001ffd0fcmp rdx, 2
001ffd13je 0x1ffd1e
001ffd15add rsp, 8
001ffd19ret
001ffd1aand rax, -4
001ffd1e
001ffd1eloc_1ffd1e:
001ffd1emov rdi, rax
001ffd21call caml_raise
001ffd26db 0x76
001ffd27movsxd rax, [rdx]
001ffd29db 0x00
001ffd00
001ffd00caml_callback3:
001ffd00sub rsp, 8
001ffd04call caml_callback3_exn
001ffd09mov rdx, rax
001ffd0cand edx, 3
001ffd0fcmp rdx, 2
001ffd13je 0x1ffd1e
001ffd15add rsp, 8
001ffd19ret
001ffd1aand rax, -4
001ffd1e
001ffd1eloc_1ffd1e:
001ffd1emov rdi, rax
001ffd21call caml_raise
001ffd26db 0x76
001ffd27movsxd rax, [rdx]
001ffd29db 0x00
001ffd00
001ffd2a
001ffd2a // align 0x10
001ffd2a // align 0x10
001ffd30
001ffd30caml_callbackN:
001ffd30sub rsp, 8
001ffd34call caml_callbackN_exn
001ffd39mov rdx, rax
001ffd3cand edx, 3
001ffd3fcmp rdx, 2
001ffd43je 0x1ffd4e
001ffd45add rsp, 8
001ffd49ret
001ffd4aand rax, -4
001ffd4e
001ffd4eloc_1ffd4e:
001ffd4emov rdi, rax
001ffd51call caml_raise
001ffd56db 0x46
001ffd57movsxd rax, [rdx]
001ffd59db 0x00
001ffd30
001ffd30caml_callbackN:
001ffd30sub rsp, 8
001ffd34call caml_callbackN_exn
001ffd39mov rdx, rax
001ffd3cand edx, 3
001ffd3fcmp rdx, 2
001ffd43je 0x1ffd4e
001ffd45add rsp, 8
001ffd49ret
001ffd4aand rax, -4
001ffd4e
001ffd4eloc_1ffd4e:
001ffd4emov rdi, rax
001ffd51call caml_raise
001ffd56db 0x46
001ffd57movsxd rax, [rdx]
001ffd59db 0x00
001ffd30
001ffd5a
001ffd5a // align 0x10
001ffd5a // align 0x10
001ffd60
001ffd60caml_register_named_value:
001ffd60push r15
001ffd62push r14
001ffd64push r13
001ffd66push r12
001ffd68push rbp
001ffd69push rbx
001ffd6amov rbx, rdi
001ffd6dsub rsp, 24
001ffd71mov [rsp], rsi
001ffd75call fn_f43a0
001ffd7amovsx edx, [rbx]
001ffd7dmov rbp, rax
001ffd80test dl, dl
001ffd82je 0x1ffe90
001ffd88mov rcx, rbx
001ffd8bmov eax, 5381
001ffd90nop [rax+rax]
001ffd9bnop
001ffd9cmov esi, eax
001ffd9eadd rcx, 1
001ffda2shl esi, 5
001ffda5add eax, esi
001ffda7add eax, edx
001ffda9movsx edx, [rcx]
001ffdactest dl, dl
001ffdaejne 0x1ffda0
001ffdb0mov r13l, eax
001ffdb3imul r13, r13, 0x4ec4ec4f
001ffdbashr r13, 34
001ffdbelea edx, [r13+2*r13]
001ffdc3lea edx, [r13+4*rdx]
001ffdc8sub eax, edx
001ffdcamov r13l, eax
001ffdcdlea r15, [rip+0x178728]
001ffdd4mov rdi, r15
001ffdd7call fn_f4710
001ffddctest eax, eax
001ffddejne 0x1ffea9
001ffde4lea r14, [rip+0x178751]
001ffdebmov r12, [r14+8*r13]
001ffdeftest r12, r12
001ffdf2jne 0x1ffe0a
001ffdf4jmp 0x1ffe30
001ffdf6db 0x75
001ffdf7adc ch, bl
001ffdf9db 0x36
001ffdfa
001ffdfa 66 0f 1f 44 00 00 f..D..
001ffe00
001ffe00loc_1ffe00:
001ffe00mov r12, [r12+8]
001ffe05test r12, r12
001ffe08je 0x1ffe30
001ffe0a
001ffe0aloc_1ffe0a:
001ffe0alea rsi, [r12+16]
001ffe0fmov rdi, rbx
001ffe12call fn_f45a0
001ffe17test eax, eax
001ffe19jne 0x1ffe00
001ffe1bmov rsi, [rsp]
001ffe1fmov rdi, r12
001ffe22call caml_modify_generational_global_root
001ffe27jmp 0x1ffe6e
001ffe29
001ffe29 0f 1f 80 00 00 00 00 .......
001ffe30
001ffe30loc_1ffe30:
001ffe30lea rdi, [rbp+24]
001ffe34call caml_stat_alloc
001ffe39lea rdx, [rbp+1]
001ffe3dmov rsi, rbx
001ffe40lea rdi, [rax+16]
001ffe44mov [rsp+8], rax
001ffe49call fn_f47d0
001ffe4emov rcx, [rsp+8]
001ffe53mov rax, [rsp]
001ffe57mov [rcx], rax
001ffe5amov rax, [r14+8*r13]
001ffe5emov rdi, rcx
001ffe61mov [r14+8*r13], rcx
001ffe65mov [rcx+8], rax
001ffe69call caml_register_generational_global_root
001ffe6e
001ffe6eloc_1ffe6e:
001ffe6emov rdi, r15
001ffe71call fn_f47c0
001ffe76test eax, eax
001ffe78jne 0x1ffe9b
001ffe7aadd rsp, 24
001ffe7emov eax, 1
001ffe83pop rbx
001ffe84pop rbp
001ffe85pop r12
001ffe87pop r13
001ffe89pop r14
001ffe8bpop r15
001ffe8dret
001ffe8e
001ffe8e 66 90 f.
001ffe90
001ffe90loc_1ffe90:
001ffe90mov r13l, 12
001ffe96jmp 0x1ffdd1
001ffe9b
001ffe9bloc_1ffe9b:
001ffe9bmov esi, eax
001ffe9dlea rdi, [rip+0x2f676]
001ffea4call caml_plat_fatal_error
001ffea9
001ffea9loc_1ffea9:
001ffea9mov esi, eax
001ffeablea rdi, [rip+0x2f65d]
001ffeb2call caml_plat_fatal_error
001ffd60
001ffd60caml_register_named_value:
001ffd60push r15
001ffd62push r14
001ffd64push r13
001ffd66push r12
001ffd68push rbp
001ffd69push rbx
001ffd6amov rbx, rdi
001ffd6dsub rsp, 24
001ffd71mov [rsp], rsi
001ffd75call fn_f43a0
001ffd7amovsx edx, [rbx]
001ffd7dmov rbp, rax
001ffd80test dl, dl
001ffd82je 0x1ffe90
001ffd88mov rcx, rbx
001ffd8bmov eax, 5381
001ffd90nop [rax+rax]
001ffd9bnop
001ffd9cmov esi, eax
001ffd9eadd rcx, 1
001ffda2shl esi, 5
001ffda5add eax, esi
001ffda7add eax, edx
001ffda9movsx edx, [rcx]
001ffdactest dl, dl
001ffdaejne 0x1ffda0
001ffdb0mov r13l, eax
001ffdb3imul r13, r13, 0x4ec4ec4f
001ffdbashr r13, 34
001ffdbelea edx, [r13+2*r13]
001ffdc3lea edx, [r13+4*rdx]
001ffdc8sub eax, edx
001ffdcamov r13l, eax
001ffdcdlea r15, [rip+0x178728]
001ffdd4mov rdi, r15
001ffdd7call fn_f4710
001ffddctest eax, eax
001ffddejne 0x1ffea9
001ffde4lea r14, [rip+0x178751]
001ffdebmov r12, [r14+8*r13]
001ffdeftest r12, r12
001ffdf2jne 0x1ffe0a
001ffdf4jmp 0x1ffe30
001ffdf6db 0x75
001ffdf7adc ch, bl
001ffdf9db 0x36
001ffdfa
001ffdfa 66 0f 1f 44 00 00 f..D..
001ffe00
001ffe00loc_1ffe00:
001ffe00mov r12, [r12+8]
001ffe05test r12, r12
001ffe08je 0x1ffe30
001ffe0a
001ffe0aloc_1ffe0a:
001ffe0alea rsi, [r12+16]
001ffe0fmov rdi, rbx
001ffe12call fn_f45a0
001ffe17test eax, eax
001ffe19jne 0x1ffe00
001ffe1bmov rsi, [rsp]
001ffe1fmov rdi, r12
001ffe22call caml_modify_generational_global_root
001ffe27jmp 0x1ffe6e
001ffe29
001ffe29 0f 1f 80 00 00 00 00 .......
001ffe30
001ffe30loc_1ffe30:
001ffe30lea rdi, [rbp+24]
001ffe34call caml_stat_alloc
001ffe39lea rdx, [rbp+1]
001ffe3dmov rsi, rbx
001ffe40lea rdi, [rax+16]
001ffe44mov [rsp+8], rax
001ffe49call fn_f47d0
001ffe4emov rcx, [rsp+8]
001ffe53mov rax, [rsp]
001ffe57mov [rcx], rax
001ffe5amov rax, [r14+8*r13]
001ffe5emov rdi, rcx
001ffe61mov [r14+8*r13], rcx
001ffe65mov [rcx+8], rax
001ffe69call caml_register_generational_global_root
001ffe6e
001ffe6eloc_1ffe6e:
001ffe6emov rdi, r15
001ffe71call fn_f47c0
001ffe76test eax, eax
001ffe78jne 0x1ffe9b
001ffe7aadd rsp, 24
001ffe7emov eax, 1
001ffe83pop rbx
001ffe84pop rbp
001ffe85pop r12
001ffe87pop r13
001ffe89pop r14
001ffe8bpop r15
001ffe8dret
001ffe8e
001ffe8e 66 90 f.
001ffe90
001ffe90loc_1ffe90:
001ffe90mov r13l, 12
001ffe96jmp 0x1ffdd1
001ffe9b
001ffe9bloc_1ffe9b:
001ffe9bmov esi, eax
001ffe9dlea rdi, [rip+0x2f676]
001ffea4call caml_plat_fatal_error
001ffea9
001ffea9loc_1ffea9:
001ffea9mov esi, eax
001ffeablea rdi, [rip+0x2f65d]
001ffeb2call caml_plat_fatal_error
001ffd60
001ffeb7
001ffeb7 // align 0x10
001ffeb7 // align 0x10
001ffec0
001ffec0caml_named_value:
001ffec0push r12
001ffec2push rbp
001ffec3lea rbp, [rip+0x178632]
001ffecapush rbx
001ffecbmov rbx, rdi
001ffecemov rdi, rbp
001ffed1call fn_f4710
001ffed6test eax, eax
001ffed8jne 0x1fff9d
001ffedemovsx edx, [rbx]
001ffee1mov rcx, rbx
001ffee4mov eax, 5381
001ffee9test dl, dl
001ffeebje 0x1fff88
001ffef1nop [rax+rax]
001ffefcmov esi, eax
001ffefeadd rcx, 1
001fff02shl esi, 5
001fff05add eax, esi
001fff07add eax, edx
001fff09movsx edx, [rcx]
001fff0ctest dl, dl
001fff0ejne 0x1fff00
001fff10mov edx, eax
001fff12imul rdx, rdx, 0x4ec4ec4f
001fff19shr rdx, 34
001fff1dlea ecx, [rdx+2*rdx]
001fff20lea ecx, [rdx+4*rcx]
001fff23sub eax, ecx
001fff25mov edx, eax
001fff27lea rax, [rip+0x17860e]
001fff2emov r12, [rax+8*rdx]
001fff32test r12, r12
001fff35jne 0x1fff4a
001fff37jmp 0x1fff70
001fff39db 0x75
001fff3apor
001fff3d
001fff3d 0f 1f 00 ...
001fff40
001fff40loc_1fff40:
001fff40mov r12, [r12+8]
001fff45test r12, r12
001fff48je 0x1fff70
001fff4a
001fff4aloc_1fff4a:
001fff4alea rsi, [r12+16]
001fff4fmov rdi, rbx
001fff52call fn_f45a0
001fff57test eax, eax
001fff59jne 0x1fff40
001fff5bmov rdi, rbp
001fff5ecall fn_f47c0
001fff63test eax, eax
001fff65jne 0x1fff8f
001fff67mov rax, r12
001fff6apop rbx
001fff6bpop rbp
001fff6cpop r12
001fff6eret
001fff6f
001fff6f 90 .
001fff70
001fff70loc_1fff70:
001fff70mov rdi, rbp
001fff73call fn_f47c0
001fff78test eax, eax
001fff7ajne 0x1fff8f
001fff7cpop rbx
001fff7dxor eax, eax
001fff7fpop rbp
001fff80pop r12
001fff82ret
001fff83
001fff83 0f 1f 44 00 00 ..D..
001fff88
001fff88loc_1fff88:
001fff88mov edx, 12
001fff8djmp 0x1fff2b
001fff8f
001fff8floc_1fff8f:
001fff8fmov esi, eax
001fff91lea rdi, [rip+0x2f582]
001fff98call caml_plat_fatal_error
001fff9d
001fff9dloc_1fff9d:
001fff9dmov esi, eax
001fff9flea rdi, [rip+0x2f569]
001fffa6call caml_plat_fatal_error
001ffec0
001ffec0caml_named_value:
001ffec0push r12
001ffec2push rbp
001ffec3lea rbp, [rip+0x178632]
001ffecapush rbx
001ffecbmov rbx, rdi
001ffecemov rdi, rbp
001ffed1call fn_f4710
001ffed6test eax, eax
001ffed8jne 0x1fff9d
001ffedemovsx edx, [rbx]
001ffee1mov rcx, rbx
001ffee4mov eax, 5381
001ffee9test dl, dl
001ffeebje 0x1fff88
001ffef1nop [rax+rax]
001ffefcmov esi, eax
001ffefeadd rcx, 1
001fff02shl esi, 5
001fff05add eax, esi
001fff07add eax, edx
001fff09movsx edx, [rcx]
001fff0ctest dl, dl
001fff0ejne 0x1fff00
001fff10mov edx, eax
001fff12imul rdx, rdx, 0x4ec4ec4f
001fff19shr rdx, 34
001fff1dlea ecx, [rdx+2*rdx]
001fff20lea ecx, [rdx+4*rcx]
001fff23sub eax, ecx
001fff25mov edx, eax
001fff27lea rax, [rip+0x17860e]
001fff2emov r12, [rax+8*rdx]
001fff32test r12, r12
001fff35jne 0x1fff4a
001fff37jmp 0x1fff70
001fff39db 0x75
001fff3apor
001fff3d
001fff3d 0f 1f 00 ...
001fff40
001fff40loc_1fff40:
001fff40mov r12, [r12+8]
001fff45test r12, r12
001fff48je 0x1fff70
001fff4a
001fff4aloc_1fff4a:
001fff4alea rsi, [r12+16]
001fff4fmov rdi, rbx
001fff52call fn_f45a0
001fff57test eax, eax
001fff59jne 0x1fff40
001fff5bmov rdi, rbp
001fff5ecall fn_f47c0
001fff63test eax, eax
001fff65jne 0x1fff8f
001fff67mov rax, r12
001fff6apop rbx
001fff6bpop rbp
001fff6cpop r12
001fff6eret
001fff6f
001fff6f 90 .
001fff70
001fff70loc_1fff70:
001fff70mov rdi, rbp
001fff73call fn_f47c0
001fff78test eax, eax
001fff7ajne 0x1fff8f
001fff7cpop rbx
001fff7dxor eax, eax
001fff7fpop rbp
001fff80pop r12
001fff82ret
001fff83
001fff83 0f 1f 44 00 00 ..D..
001fff88
001fff88loc_1fff88:
001fff88mov edx, 12
001fff8djmp 0x1fff2b
001fff8f
001fff8floc_1fff8f:
001fff8fmov esi, eax
001fff91lea rdi, [rip+0x2f582]
001fff98call caml_plat_fatal_error
001fff9d
001fff9dloc_1fff9d:
001fff9dmov esi, eax
001fff9flea rdi, [rip+0x2f569]
001fffa6call caml_plat_fatal_error
001ffec0
001fffab
001fffab // align 0x10
001fffab // align 0x10
001fffb0
001fffb0caml_iterate_named_values:
001fffb0push r14
001fffb2lea r14, [rip+0x178543]
001fffb9push r13
001fffbbpush r12
001fffbdpush rbp
001fffbemov rbp, rdi
001fffc1mov rdi, r14
001fffc4push rbx
001fffc5call fn_f4710
001fffcatest eax, eax
001fffccjne 0x200020
001fffcelea r12, [rip+0x178567]
001fffd5lea r13, [r12+104]
001fffdanop
001fffdcmov rbx, [r12]
001fffe0
001fffe0loc_1fffe0:
001fffe0test rbx, rbx
001fffe3je 0x200002
001fffe5nop [rax]
001fffecmov rdi, [rbx]
001fffeflea rsi, [rbx+16]
001ffff3call rbp
001ffff5mov rbx, [rbx+8]
001ffff9test rbx, rbx
001ffffcjne 0x1ffff0
001ffffeadd r12, 8
00200002
00200002loc_200002:
00200002cmp r12, r13
00200005jne 0x1fffe0
00200007mov rdi, r14
0020000acall fn_f47c0
0020000ftest eax, eax
00200011jne 0x20002e
00200013pop rbx
00200014pop rbp
00200015pop r12
00200017pop r13
00200019pop r14
0020001bret
0020001cmov esi, eax
0020001elea rdi, [rip+0x2f4e6]
00200025call caml_plat_fatal_error
0020002amov esi, eax
0020002clea rdi, [rip+0x2f4e3]
00200033call caml_plat_fatal_error
00200038db 0x94
00200039db 0xb9
0020003aadd [rax], eax
001fffb0
001fffb0caml_iterate_named_values:
001fffb0push r14
001fffb2lea r14, [rip+0x178543]
001fffb9push r13
001fffbbpush r12
001fffbdpush rbp
001fffbemov rbp, rdi
001fffc1mov rdi, r14
001fffc4push rbx
001fffc5call fn_f4710
001fffcatest eax, eax
001fffccjne 0x200020
001fffcelea r12, [rip+0x178567]
001fffd5lea r13, [r12+104]
001fffdanop
001fffdcmov rbx, [r12]
001fffe0
001fffe0loc_1fffe0:
001fffe0test rbx, rbx
001fffe3je 0x200002
001fffe5nop [rax]
001fffecmov rdi, [rbx]
001fffeflea rsi, [rbx+16]
001ffff3call rbp
001ffff5mov rbx, [rbx+8]
001ffff9test rbx, rbx
001ffffcjne 0x1ffff0
001ffffeadd r12, 8
00200002
00200002loc_200002:
00200002cmp r12, r13
00200005jne 0x1fffe0
00200007mov rdi, r14
0020000acall fn_f47c0
0020000ftest eax, eax
00200011jne 0x20002e
00200013pop rbx
00200014pop rbp
00200015pop r12
00200017pop r13
00200019pop r14
0020001bret
0020001cmov esi, eax
0020001elea rdi, [rip+0x2f4e6]
00200025call caml_plat_fatal_error
0020002amov esi, eax
0020002clea rdi, [rip+0x2f4e3]
00200033call caml_plat_fatal_error
00200038db 0x94
00200039db 0xb9
0020003aadd [rax], eax
001fffb0
Loading..