File hevea_f46f610a6b0078f4aa208dda361f21de574cc56ad64b32889301afc466d33979.elf
Function:
Loading..
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
0020003c
0020003c // align 0x10
0020003c // align 0x10
00200040
00200040fn_200040:
00200040push rbx
00200041lea rsi, [rip+0x2fbb0]
00200048mov rbx, rdi
0020004bxor eax, eax
0020004dmov edi, 4
00200052call caml_gc_message
00200057mov rdi, [rbx+256]
0020005ecmp rdi, rbx
00200061je 0x200071
00200063call caml_stat_free
00200068xor eax, eax
0020006amov [rbx+256], rax
00200071
00200071loc_200071:
00200071call caml_raise_out_of_memory
00200040
00200040fn_200040:
00200040push rbx
00200041lea rsi, [rip+0x2fbb0]
00200048mov rbx, rdi
0020004bxor eax, eax
0020004dmov edi, 4
00200052call caml_gc_message
00200057mov rdi, [rbx+256]
0020005ecmp rdi, rbx
00200061je 0x200071
00200063call caml_stat_free
00200068xor eax, eax
0020006amov [rbx+256], rax
00200071
00200071loc_200071:
00200071call caml_raise_out_of_memory
00200040
00200076
00200076 // align 0x10
00200076 // align 0x10
00200080
00200080fn_200080:
00200080push r15
00200082push r14
00200084push r13
00200086push r12
00200088push rbp
00200089mov rbp, rsi
0020008cpush rbx
0020008dmov rbx, rdi
00200090sub rsp, 488
00200097mov r14, [0x28]
002000a0mov [rsp+472], r14
002000a8mov r14l, edx
002000ablea rax, [rsp+56]
002000b0lea r15, [rsp+192]
002000b8movq x3, rax
002000bdlea rdx, [rsp+48]
002000c2movq x0, r15
002000c7mov r8, r15
002000calea rax, [rsp+448]
002000d2movq x2, rdx
002000d7movq x4, rax
002000dcpunpcklqdq x2, x3
002000e0punpcklqdq x0, x4
002000e4movaps [rsp], x2
002000e8movaps [rsp+448], x0
002000f0mov ecx, r14l
002000f3and ecx, 1
002000f6
002000f6loc_2000f6:
002000f6mov r12l, 1023
002000fcnop [rax]
00200100
00200100loc_200100:
00200100cmp rbp, rbx
00200103jne 0x20010d
00200105test cl, cl
00200107jne 0x2001e8
0020010d
0020010dloc_20010d:
0020010dtest bl, 1
00200110je 0x200330
00200116cmp rbp, rbx
00200119je 0x2001e8
0020011ftest bpl, 1
00200123jne 0x2006b0
00200129movzx eax, [rbp-8]
0020012dcmp al, -6
0020012fje 0x200440
00200135cmp al, -1
00200137je 0x200188
00200139
00200139loc_200139:
00200139mov r8, [rsp+448]
00200141mov r13, -1
00200148
00200148loc_200148:
00200148cmp r8, r15
0020014bje 0x200155
0020014dmov rdi, r8
00200150call caml_stat_free
00200155
00200155loc_200155:
00200155mov rax, [rsp+472]
0020015dsub rax, [0x28]
00200166jne 0x200875
0020016cadd rsp, 488
00200173mov rax, r13
00200176pop rbx
00200177pop rbp
00200178pop r12
0020017apop r13
0020017cpop r14
0020017epop r15
00200180ret
00200181nop [rax]
00200188
00200188loc_200188:
00200188mov rax, [rbp]
0020018cmov rax, [rax+48]
00200190test rax, rax
00200193je 0x200139
00200195
00200195loc_200195:
00200195mov r13, [rip+0x75e4c]
0020019cmov [rsp+32], r8
002001a1mov rsi, rbp
002001a4mov rdi, rbx
002001a7mov [rsp+24], cl
002001abmov rdx, [r13]
002001b0mov [rdx+216], 0
002001bbcall rax
002001bdmov rdx, [r13]
002001c2movzx ecx, [rsp+24]
002001c7mov r8, [rsp+32]
002001cccmp [rdx+216], 0
002001d4je 0x2001e0
002001d6test r14b, 1
002001daje 0x2006c9
002001e0
002001e0loc_2001e0:
002001e0test eax, eax
002001e2jne 0x2006a0
002001e8
002001e8loc_2001e8:
002001e8cmp [rsp+448], r8
002001f0je 0x200668
002001f6mov rdx, [r8-16]
002001famov rsi, [r8-32]
002001femov rax, rdx
00200201sar rax, 1
00200204shl rax, 3
00200208add rsi, rax
0020020badd rax, [r8-24]
0020020fmov rbx, [rsi]
00200212mov rbp, [rax]
00200215lea rax, [rdx+2]
00200219mov [r8-16], rax
0020021dcmp rax, [r8-8]
00200221jne 0x200227
00200223sub r8, 32
00200227
00200227loc_200227:
00200227sub r12l, 1
0020022bjne 0x200100
00200231mov [rsp+32], r8
00200236mov [rsp+24], cl
0020023acall caml_check_pending_actions
0020023fmovzx ecx, [rsp+24]
00200244mov r8, [rsp+32]
00200249test eax, eax
0020024bje 0x2000f6
00200251mov [rsp+48], rbx
00200256lea rsi, [rsp+64]
0020025bmovdqa x5, [rsp]
00200260mov rbx, [rip+0x75d81]
00200267mov [rsp+32], cl
0020026bmov [rsp+56], rbp
00200270movdqa x0, [rip+0x29e58]
00200278mov rax, [rbx]
0020027cmov [rsp+128], rsi
00200284mov [rsp+24], r8
00200289mov rdx, [rax+160]
00200290mov [rax+160], rsi
00200297lea rsi, [rsp+128]
0020029fmov [rsp+136], 1
002002abmov [rsp+64], rdx
002002b0mov rdx, [rsp+448]
002002b8mov [rax+160], rsi
002002bfmov rax, r8
002002c2sub rax, rdx
002002c5mov [rsp+152], rdx
002002cdshr rax, 3
002002d1movups [rsp+72], x0
002002d6mov [rsp+144], rax
002002demovups [rsp+88], x5
002002e3call caml_do_pending_actions_res
002002e8mov r8, [rsp+24]
002002edmovzx ecx, [rsp+32]
002002f2mov r12, rax
002002f5mov r13, rdx
002002f8mov rax, [rbx]
002002fcmov rdx, [rsp+128]
00200304test r12l, r12l
00200307mov [rax+160], rdx
0020030ejne 0x200882
00200314mov rdx, [rsp+64]
00200319mov rbx, [rsp+48]
0020031emov rbp, [rsp+56]
00200323mov [rax+160], rdx
0020032ajmp 0x2000f6
0020032fnop
00200330
00200330loc_200330:
00200330mov r13, rbp
00200333lea rdi, [rbx-8]
00200337and r13l, 1
0020033bje 0x200360
0020033dmovzx eax, [rbx-8]
00200341cmp al, -6
00200343je 0x200478
00200349cmp al, -1
0020034bje 0x200450
00200351
00200351loc_200351:
00200351mov r8, [rsp+448]
00200359jmp 0x200148
0020035enop
00200360
00200360loc_200360:
00200360movzx edx, [rbx-8]
00200364movzx esi, [rbp-8]
00200368lea r9, [rbp-8]
0020036cmov r13, rdx
0020036fmov rax, rsi
00200372cmp edx, esi
00200374je 0x200480
0020037acmp edx, 250
00200380je 0x200478
00200386cmp esi, 250
0020038cje 0x200440
00200392cmp edx, 249
00200398je 0x200640
0020039ecmp esi, 249
002003a4jne 0x200655
002003aamov eax, 247
002003afcmp edx, 247
002003b5jne 0x200655
002003bb
002003bbloc_2003bb:
002003bbmov rdi, [rsp+448]
002003c3cmp rdi, r15
002003c6je 0x2003d7
002003c8call caml_stat_free
002003cdxor ecx, ecx
002003cfmov [rsp+448], rcx
002003d7
002003d7loc_2003d7:
002003d7lea rdi, [rip+0x2e991]
002003decall caml_invalid_argument
002003e3nop [rax+rax]
002003e8
002003e8loc_2003e8:
002003e8mov r13, [rdi]
002003ebmov rax, [r9]
002003eeshr r13, 10
002003f2shr rax, 10
002003f6cmp r13, rax
002003f9jne 0x200655
002003fftest r13, r13
00200402je 0x2001e8
00200408cmp r13, 1
0020040cjbe 0x20043b
0020040emov rax, [rsp+456]
00200416cmp r8, rax
00200419jae 0x2006e0
0020041f
0020041floc_20041f:
0020041flea rax, [r13+r13+1]
00200424mov [r8], rbx
00200427add r8, 32
0020042bmov [r8-24], rbp
0020042fmov [r8-8], rax
00200433mov [r8-16], 3
0020043b
0020043bloc_20043b:
0020043bmov rbx, [rbx]
0020043enop
00200440
00200440loc_200440:
00200440mov rbp, [rbp]
00200444jmp 0x200227
00200449nop [rax]
00200450
00200450loc_200450:
00200450mov rax, [rbx]
00200453mov rax, [rax+48]
00200457test rax, rax
0020045ajne 0x200195
00200460
00200460loc_200460:
00200460mov r8, [rsp+448]
00200468mov r13l, 1
0020046ejmp 0x200148
00200473nop [rax+rax]
00200478
00200478loc_200478:
00200478mov rbx, [rbx]
0020047bjmp 0x200227
00200480
00200480loc_200480:
00200480lea edx, [rsi+11]
00200483cmp sil, -11
00200487jb 0x2003e8
0020048dlea rsi, [rip+0x314ec]
00200494movzx edx, dl
00200497movsxd rax, [rsi+4*rdx]
0020049badd rax, rsi
0020049ejmp rax
002004a1movsd_xmm x1, [rbx]
002004a5movsd_xmm x0, [rbp]
002004aacomisd x0, x1
002004aeja 0x200139
002004b4comisd x1, x0
002004b8ja 0x200460
002004baucomisd x1, x0
002004bejp 0x2004c6
002004c0je 0x2001e8
002004c6
002004c6loc_2004c6:
002004c6test r14l, r14l
002004c9je 0x2006c9
002004cfucomisd x1, x1
002004d3jnp 0x200460
002004d5ucomisd x0, x0
002004d9jp 0x2001e8
002004dfjmp 0x200139
002004e4nop [rax]
002004e8cmp rbp, rbx
002004ebje 0x2001e8
002004f1mov rdi, rbx
002004f4mov [rsp+40], r8
002004f9mov [rsp+32], cl
002004fdcall caml_string_length
00200502mov rdi, rbp
00200505mov r13, rax
00200508call caml_string_length
0020050dmov rsi, rbp
00200510mov rdi, rbx
00200513cmp r13, rax
00200516mov rdx, rax
00200519mov [rsp+24], rax
0020051ecmovbe rdx, r13
00200522call fn_f4600
00200527mov r9, [rsp+24]
0020052cmovzx ecx, [rsp+32]
00200531test eax, eax
00200533mov r8, [rsp+40]
00200538js 0x200139
0020053ejg 0x200460
00200544cmp r13, r9
00200547je 0x2001e8
0020054dsub r13, r9
00200550jmp 0x200351
00200555nop [rax]
00200558mov rdx, [rbx]
0020055bmov rsi, [rbp]
0020055fmov rax, [rdx+16]
00200563cmp rax, [rsi+16]
00200567jne 0x20075b
0020056dtest rax, rax
00200570jne 0x200195
00200576mov rdi, [rsp+448]
0020057ecmp rdi, r15
00200581je 0x200592
00200583call caml_stat_free
00200588xor esi, esi
0020058amov [rsp+448], rsi
00200592
00200592loc_200592:
00200592lea rdi, [rip+0x2e7be]
00200599call caml_invalid_argument
0020059enop
002005a0mov r13, [rdi]
002005a3mov rax, [r9]
002005a6shr r13, 10
002005aashr rax, 10
002005aecmp r13, rax
002005b1jne 0x200655
002005b7test r13, r13
002005baje 0x2001e8
002005c0lea rax, [rbx+8*r13]
002005c4sub rbp, rbx
002005c7jmp 0x20060c
002005c9nop [rax]
002005d0
002005d0loc_2005d0:
002005d0comisd x0, x1
002005d4ja 0x200460
002005daucomisd x0, x1
002005dejp 0x2005e2
002005e0je 0x2005ff
002005e2
002005e2loc_2005e2:
002005e2test r14l, r14l
002005e5je 0x2006c9
002005ebucomisd x0, x0
002005efjnp 0x200460
002005f5ucomisd x1, x1
002005f9jnp 0x200139
002005ff
002005ffloc_2005ff:
002005ffadd rbx, 8
00200603cmp rax, rbx
00200606je 0x2001e8
0020060c
0020060cloc_20060c:
0020060cmovsd_xmm x0, [rbx]
00200610movsd_xmm x1, [rbp+rbx]
00200616comisd x1, x0
0020061ajbe 0x2005d0
0020061cjmp 0x200139
00200621mov r13, [rbx+8]
00200625mov rax, [rbp+8]
00200629sar r13, 1
0020062csar rax, 1
0020062fcmp r13, rax
00200632je 0x2001e8
00200638jmp 0x200655
0020063anop [rax+rax]
00200640
00200640loc_200640:
00200640lea edx, [rsi+9]
00200643mov r13l, 247
00200649and edx, 253
0020064fje 0x2003bb
00200655
00200655loc_200655:
00200655mov r8, [rsp+448]
0020065dsub r13, rax
00200660jmp 0x200148
00200665nop [rax]
00200668
00200668loc_200668:
00200668xor r13l, r13l
0020066bjmp 0x200148
00200670mov rdi, [rsp+448]
00200678cmp rdi, r15
0020067bje 0x20068c
0020067dcall caml_stat_free
00200682xor edx, edx
00200684mov [rsp+448], rdx
0020068c
0020068cloc_20068c:
0020068clea rdi, [rip+0x2e6f6]
00200693call caml_invalid_argument
00200698nop [rax+rax]
002006a0
002006a0loc_2006a0:
002006a0mov r8, [rsp+448]
002006a8movsxd r13, eax
002006abjmp 0x200148
002006b0
002006b0loc_2006b0:
002006b0sar rbx, 1
002006b3sar rbp, 1
002006b6mov r8, [rsp+448]
002006besub rbx, rbp
002006c1mov r13, rbx
002006c4jmp 0x200148
002006c9
002006c9loc_2006c9:
002006c9mov r8, [rsp+448]
002006d1mov r13, 0x8000000000000000
002006dbjmp 0x200148
002006e0
002006e0loc_2006e0:
002006e0mov rdi, [rsp+448]
002006e8sub r8, rdi
002006ebmov [rsp+24], r8
002006f0cmp rdi, r15
002006f3je 0x20077e
002006f9sub rax, rdi
002006fcmov [rsp+40], cl
00200700mov rsi, rax
00200703sar rsi, 5
00200707lea rax, [rsi+rsi]
0020070bcmp rax, 0xfffff
00200711ja 0x20087a
00200717shl rsi, 6
0020071bmov [rsp+32], rsi
00200720call caml_stat_resize_noexc
00200725mov rsi, [rsp+32]
0020072amovzx ecx, [rsp+40]
0020072ftest rax, rax
00200732mov r8, rax
00200735je 0x20087a
0020073b
0020073bloc_20073b:
0020073bmov rax, [rsp+24]
00200740add rsi, r8
00200743mov [rsp+448], r8
0020074bmov [rsp+456], rsi
00200753add r8, rax
00200756jmp 0x20041f
0020075b
0020075bloc_20075b:
0020075bmov rsi, [rsi]
0020075emov rdi, [rdx]
00200761call fn_f45a0
00200766mov r8, [rsp+448]
0020076emovsxd r13, eax
00200771sar r13, 63
00200775or r13, 1
00200779jmp 0x200148
0020077e
0020077eloc_20077e:
0020077emov edi, 1024
00200783mov [rsp+32], cl
00200787call caml_stat_alloc_noexc
0020078cmovzx ecx, [rsp+32]
00200791test rax, rax
00200794mov r8, rax
00200797je 0x20087a
0020079dmovdqa x0, [r15]
002007a2mov esi, 1024
002007a7movups [rax], x0
002007aamovdqa x0, [r15+16]
002007b0movups [rax+16], x0
002007b4movdqa x0, [r15+32]
002007bamovups [rax+32], x0
002007bemovdqa x0, [r15+48]
002007c4movups [rax+48], x0
002007c8movdqa x0, [r15+64]
002007cemovups [rax+64], x0
002007d2movdqa x0, [r15+80]
002007d8movups [rax+80], x0
002007dcmovdqa x0, [r15+96]
002007e2movups [rax+96], x0
002007e6movdqa x0, [r15+112]
002007ecmovups [rax+112], x0
002007f0movdqa x0, [r15+128]
002007f9movups [rax+128], x0
00200800movdqa x0, [r15+144]
00200809movups [rax+144], x0
00200810movdqa x0, [r15+160]
00200819movups [rax+160], x0
00200820movdqa x0, [r15+176]
00200829movups [rax+176], x0
00200830movdqa x0, [r15+192]
00200839movups [rax+192], x0
00200840movdqa x0, [r15+208]
00200849movups [rax+208], x0
00200850movdqa x0, [r15+224]
00200859movups [rax+224], x0
00200860movdqa x0, [r15+240]
00200869movups [rax+240], x0
00200870jmp 0x20073b
00200875
00200875loc_200875:
00200875call fn_f4590
0020087a
0020087aloc_20087a:
0020087amov rdi, r15
0020087dcall fn_200040
00200882
00200882loc_200882:
00200882mov rdi, [rsp+448]
0020088acmp rdi, r15
0020088dje 0x20089e
0020088fcall caml_stat_free
00200894xor eax, eax
00200896mov [rsp+448], rax
0020089e
0020089eloc_20089e:
0020089emov rdi, r13
002008a1call caml_raise
00200080
00200080fn_200080:
00200080push r15
00200082push r14
00200084push r13
00200086push r12
00200088push rbp
00200089mov rbp, rsi
0020008cpush rbx
0020008dmov rbx, rdi
00200090sub rsp, 488
00200097mov r14, [0x28]
002000a0mov [rsp+472], r14
002000a8mov r14l, edx
002000ablea rax, [rsp+56]
002000b0lea r15, [rsp+192]
002000b8movq x3, rax
002000bdlea rdx, [rsp+48]
002000c2movq x0, r15
002000c7mov r8, r15
002000calea rax, [rsp+448]
002000d2movq x2, rdx
002000d7movq x4, rax
002000dcpunpcklqdq x2, x3
002000e0punpcklqdq x0, x4
002000e4movaps [rsp], x2
002000e8movaps [rsp+448], x0
002000f0mov ecx, r14l
002000f3and ecx, 1
002000f6
002000f6loc_2000f6:
002000f6mov r12l, 1023
002000fcnop [rax]
00200100
00200100loc_200100:
00200100cmp rbp, rbx
00200103jne 0x20010d
00200105test cl, cl
00200107jne 0x2001e8
0020010d
0020010dloc_20010d:
0020010dtest bl, 1
00200110je 0x200330
00200116cmp rbp, rbx
00200119je 0x2001e8
0020011ftest bpl, 1
00200123jne 0x2006b0
00200129movzx eax, [rbp-8]
0020012dcmp al, -6
0020012fje 0x200440
00200135cmp al, -1
00200137je 0x200188
00200139
00200139loc_200139:
00200139mov r8, [rsp+448]
00200141mov r13, -1
00200148
00200148loc_200148:
00200148cmp r8, r15
0020014bje 0x200155
0020014dmov rdi, r8
00200150call caml_stat_free
00200155
00200155loc_200155:
00200155mov rax, [rsp+472]
0020015dsub rax, [0x28]
00200166jne 0x200875
0020016cadd rsp, 488
00200173mov rax, r13
00200176pop rbx
00200177pop rbp
00200178pop r12
0020017apop r13
0020017cpop r14
0020017epop r15
00200180ret
00200181nop [rax]
00200188
00200188loc_200188:
00200188mov rax, [rbp]
0020018cmov rax, [rax+48]
00200190test rax, rax
00200193je 0x200139
00200195
00200195loc_200195:
00200195mov r13, [rip+0x75e4c]
0020019cmov [rsp+32], r8
002001a1mov rsi, rbp
002001a4mov rdi, rbx
002001a7mov [rsp+24], cl
002001abmov rdx, [r13]
002001b0mov [rdx+216], 0
002001bbcall rax
002001bdmov rdx, [r13]
002001c2movzx ecx, [rsp+24]
002001c7mov r8, [rsp+32]
002001cccmp [rdx+216], 0
002001d4je 0x2001e0
002001d6test r14b, 1
002001daje 0x2006c9
002001e0
002001e0loc_2001e0:
002001e0test eax, eax
002001e2jne 0x2006a0
002001e8
002001e8loc_2001e8:
002001e8cmp [rsp+448], r8
002001f0je 0x200668
002001f6mov rdx, [r8-16]
002001famov rsi, [r8-32]
002001femov rax, rdx
00200201sar rax, 1
00200204shl rax, 3
00200208add rsi, rax
0020020badd rax, [r8-24]
0020020fmov rbx, [rsi]
00200212mov rbp, [rax]
00200215lea rax, [rdx+2]
00200219mov [r8-16], rax
0020021dcmp rax, [r8-8]
00200221jne 0x200227
00200223sub r8, 32
00200227
00200227loc_200227:
00200227sub r12l, 1
0020022bjne 0x200100
00200231mov [rsp+32], r8
00200236mov [rsp+24], cl
0020023acall caml_check_pending_actions
0020023fmovzx ecx, [rsp+24]
00200244mov r8, [rsp+32]
00200249test eax, eax
0020024bje 0x2000f6
00200251mov [rsp+48], rbx
00200256lea rsi, [rsp+64]
0020025bmovdqa x5, [rsp]
00200260mov rbx, [rip+0x75d81]
00200267mov [rsp+32], cl
0020026bmov [rsp+56], rbp
00200270movdqa x0, [rip+0x29e58]
00200278mov rax, [rbx]
0020027cmov [rsp+128], rsi
00200284mov [rsp+24], r8
00200289mov rdx, [rax+160]
00200290mov [rax+160], rsi
00200297lea rsi, [rsp+128]
0020029fmov [rsp+136], 1
002002abmov [rsp+64], rdx
002002b0mov rdx, [rsp+448]
002002b8mov [rax+160], rsi
002002bfmov rax, r8
002002c2sub rax, rdx
002002c5mov [rsp+152], rdx
002002cdshr rax, 3
002002d1movups [rsp+72], x0
002002d6mov [rsp+144], rax
002002demovups [rsp+88], x5
002002e3call caml_do_pending_actions_res
002002e8mov r8, [rsp+24]
002002edmovzx ecx, [rsp+32]
002002f2mov r12, rax
002002f5mov r13, rdx
002002f8mov rax, [rbx]
002002fcmov rdx, [rsp+128]
00200304test r12l, r12l
00200307mov [rax+160], rdx
0020030ejne 0x200882
00200314mov rdx, [rsp+64]
00200319mov rbx, [rsp+48]
0020031emov rbp, [rsp+56]
00200323mov [rax+160], rdx
0020032ajmp 0x2000f6
0020032fnop
00200330
00200330loc_200330:
00200330mov r13, rbp
00200333lea rdi, [rbx-8]
00200337and r13l, 1
0020033bje 0x200360
0020033dmovzx eax, [rbx-8]
00200341cmp al, -6
00200343je 0x200478
00200349cmp al, -1
0020034bje 0x200450
00200351
00200351loc_200351:
00200351mov r8, [rsp+448]
00200359jmp 0x200148
0020035enop
00200360
00200360loc_200360:
00200360movzx edx, [rbx-8]
00200364movzx esi, [rbp-8]
00200368lea r9, [rbp-8]
0020036cmov r13, rdx
0020036fmov rax, rsi
00200372cmp edx, esi
00200374je 0x200480
0020037acmp edx, 250
00200380je 0x200478
00200386cmp esi, 250
0020038cje 0x200440
00200392cmp edx, 249
00200398je 0x200640
0020039ecmp esi, 249
002003a4jne 0x200655
002003aamov eax, 247
002003afcmp edx, 247
002003b5jne 0x200655
002003bb
002003bbloc_2003bb:
002003bbmov rdi, [rsp+448]
002003c3cmp rdi, r15
002003c6je 0x2003d7
002003c8call caml_stat_free
002003cdxor ecx, ecx
002003cfmov [rsp+448], rcx
002003d7
002003d7loc_2003d7:
002003d7lea rdi, [rip+0x2e991]
002003decall caml_invalid_argument
002003e3nop [rax+rax]
002003e8
002003e8loc_2003e8:
002003e8mov r13, [rdi]
002003ebmov rax, [r9]
002003eeshr r13, 10
002003f2shr rax, 10
002003f6cmp r13, rax
002003f9jne 0x200655
002003fftest r13, r13
00200402je 0x2001e8
00200408cmp r13, 1
0020040cjbe 0x20043b
0020040emov rax, [rsp+456]
00200416cmp r8, rax
00200419jae 0x2006e0
0020041f
0020041floc_20041f:
0020041flea rax, [r13+r13+1]
00200424mov [r8], rbx
00200427add r8, 32
0020042bmov [r8-24], rbp
0020042fmov [r8-8], rax
00200433mov [r8-16], 3
0020043b
0020043bloc_20043b:
0020043bmov rbx, [rbx]
0020043enop
00200440
00200440loc_200440:
00200440mov rbp, [rbp]
00200444jmp 0x200227
00200449nop [rax]
00200450
00200450loc_200450:
00200450mov rax, [rbx]
00200453mov rax, [rax+48]
00200457test rax, rax
0020045ajne 0x200195
00200460
00200460loc_200460:
00200460mov r8, [rsp+448]
00200468mov r13l, 1
0020046ejmp 0x200148
00200473nop [rax+rax]
00200478
00200478loc_200478:
00200478mov rbx, [rbx]
0020047bjmp 0x200227
00200480
00200480loc_200480:
00200480lea edx, [rsi+11]
00200483cmp sil, -11
00200487jb 0x2003e8
0020048dlea rsi, [rip+0x314ec]
00200494movzx edx, dl
00200497movsxd rax, [rsi+4*rdx]
0020049badd rax, rsi
0020049ejmp rax
002004a1movsd_xmm x1, [rbx]
002004a5movsd_xmm x0, [rbp]
002004aacomisd x0, x1
002004aeja 0x200139
002004b4comisd x1, x0
002004b8ja 0x200460
002004baucomisd x1, x0
002004bejp 0x2004c6
002004c0je 0x2001e8
002004c6
002004c6loc_2004c6:
002004c6test r14l, r14l
002004c9je 0x2006c9
002004cfucomisd x1, x1
002004d3jnp 0x200460
002004d5ucomisd x0, x0
002004d9jp 0x2001e8
002004dfjmp 0x200139
002004e4nop [rax]
002004e8cmp rbp, rbx
002004ebje 0x2001e8
002004f1mov rdi, rbx
002004f4mov [rsp+40], r8
002004f9mov [rsp+32], cl
002004fdcall caml_string_length
00200502mov rdi, rbp
00200505mov r13, rax
00200508call caml_string_length
0020050dmov rsi, rbp
00200510mov rdi, rbx
00200513cmp r13, rax
00200516mov rdx, rax
00200519mov [rsp+24], rax
0020051ecmovbe rdx, r13
00200522call fn_f4600
00200527mov r9, [rsp+24]
0020052cmovzx ecx, [rsp+32]
00200531test eax, eax
00200533mov r8, [rsp+40]
00200538js 0x200139
0020053ejg 0x200460
00200544cmp r13, r9
00200547je 0x2001e8
0020054dsub r13, r9
00200550jmp 0x200351
00200555nop [rax]
00200558mov rdx, [rbx]
0020055bmov rsi, [rbp]
0020055fmov rax, [rdx+16]
00200563cmp rax, [rsi+16]
00200567jne 0x20075b
0020056dtest rax, rax
00200570jne 0x200195
00200576mov rdi, [rsp+448]
0020057ecmp rdi, r15
00200581je 0x200592
00200583call caml_stat_free
00200588xor esi, esi
0020058amov [rsp+448], rsi
00200592
00200592loc_200592:
00200592lea rdi, [rip+0x2e7be]
00200599call caml_invalid_argument
0020059enop
002005a0mov r13, [rdi]
002005a3mov rax, [r9]
002005a6shr r13, 10
002005aashr rax, 10
002005aecmp r13, rax
002005b1jne 0x200655
002005b7test r13, r13
002005baje 0x2001e8
002005c0lea rax, [rbx+8*r13]
002005c4sub rbp, rbx
002005c7jmp 0x20060c
002005c9nop [rax]
002005d0
002005d0loc_2005d0:
002005d0comisd x0, x1
002005d4ja 0x200460
002005daucomisd x0, x1
002005dejp 0x2005e2
002005e0je 0x2005ff
002005e2
002005e2loc_2005e2:
002005e2test r14l, r14l
002005e5je 0x2006c9
002005ebucomisd x0, x0
002005efjnp 0x200460
002005f5ucomisd x1, x1
002005f9jnp 0x200139
002005ff
002005ffloc_2005ff:
002005ffadd rbx, 8
00200603cmp rax, rbx
00200606je 0x2001e8
0020060c
0020060cloc_20060c:
0020060cmovsd_xmm x0, [rbx]
00200610movsd_xmm x1, [rbp+rbx]
00200616comisd x1, x0
0020061ajbe 0x2005d0
0020061cjmp 0x200139
00200621mov r13, [rbx+8]
00200625mov rax, [rbp+8]
00200629sar r13, 1
0020062csar rax, 1
0020062fcmp r13, rax
00200632je 0x2001e8
00200638jmp 0x200655
0020063anop [rax+rax]
00200640
00200640loc_200640:
00200640lea edx, [rsi+9]
00200643mov r13l, 247
00200649and edx, 253
0020064fje 0x2003bb
00200655
00200655loc_200655:
00200655mov r8, [rsp+448]
0020065dsub r13, rax
00200660jmp 0x200148
00200665nop [rax]
00200668
00200668loc_200668:
00200668xor r13l, r13l
0020066bjmp 0x200148
00200670mov rdi, [rsp+448]
00200678cmp rdi, r15
0020067bje 0x20068c
0020067dcall caml_stat_free
00200682xor edx, edx
00200684mov [rsp+448], rdx
0020068c
0020068cloc_20068c:
0020068clea rdi, [rip+0x2e6f6]
00200693call caml_invalid_argument
00200698nop [rax+rax]
002006a0
002006a0loc_2006a0:
002006a0mov r8, [rsp+448]
002006a8movsxd r13, eax
002006abjmp 0x200148
002006b0
002006b0loc_2006b0:
002006b0sar rbx, 1
002006b3sar rbp, 1
002006b6mov r8, [rsp+448]
002006besub rbx, rbp
002006c1mov r13, rbx
002006c4jmp 0x200148
002006c9
002006c9loc_2006c9:
002006c9mov r8, [rsp+448]
002006d1mov r13, 0x8000000000000000
002006dbjmp 0x200148
002006e0
002006e0loc_2006e0:
002006e0mov rdi, [rsp+448]
002006e8sub r8, rdi
002006ebmov [rsp+24], r8
002006f0cmp rdi, r15
002006f3je 0x20077e
002006f9sub rax, rdi
002006fcmov [rsp+40], cl
00200700mov rsi, rax
00200703sar rsi, 5
00200707lea rax, [rsi+rsi]
0020070bcmp rax, 0xfffff
00200711ja 0x20087a
00200717shl rsi, 6
0020071bmov [rsp+32], rsi
00200720call caml_stat_resize_noexc
00200725mov rsi, [rsp+32]
0020072amovzx ecx, [rsp+40]
0020072ftest rax, rax
00200732mov r8, rax
00200735je 0x20087a
0020073b
0020073bloc_20073b:
0020073bmov rax, [rsp+24]
00200740add rsi, r8
00200743mov [rsp+448], r8
0020074bmov [rsp+456], rsi
00200753add r8, rax
00200756jmp 0x20041f
0020075b
0020075bloc_20075b:
0020075bmov rsi, [rsi]
0020075emov rdi, [rdx]
00200761call fn_f45a0
00200766mov r8, [rsp+448]
0020076emovsxd r13, eax
00200771sar r13, 63
00200775or r13, 1
00200779jmp 0x200148
0020077e
0020077eloc_20077e:
0020077emov edi, 1024
00200783mov [rsp+32], cl
00200787call caml_stat_alloc_noexc
0020078cmovzx ecx, [rsp+32]
00200791test rax, rax
00200794mov r8, rax
00200797je 0x20087a
0020079dmovdqa x0, [r15]
002007a2mov esi, 1024
002007a7movups [rax], x0
002007aamovdqa x0, [r15+16]
002007b0movups [rax+16], x0
002007b4movdqa x0, [r15+32]
002007bamovups [rax+32], x0
002007bemovdqa x0, [r15+48]
002007c4movups [rax+48], x0
002007c8movdqa x0, [r15+64]
002007cemovups [rax+64], x0
002007d2movdqa x0, [r15+80]
002007d8movups [rax+80], x0
002007dcmovdqa x0, [r15+96]
002007e2movups [rax+96], x0
002007e6movdqa x0, [r15+112]
002007ecmovups [rax+112], x0
002007f0movdqa x0, [r15+128]
002007f9movups [rax+128], x0
00200800movdqa x0, [r15+144]
00200809movups [rax+144], x0
00200810movdqa x0, [r15+160]
00200819movups [rax+160], x0
00200820movdqa x0, [r15+176]
00200829movups [rax+176], x0
00200830movdqa x0, [r15+192]
00200839movups [rax+192], x0
00200840movdqa x0, [r15+208]
00200849movups [rax+208], x0
00200850movdqa x0, [r15+224]
00200859movups [rax+224], x0
00200860movdqa x0, [r15+240]
00200869movups [rax+240], x0
00200870jmp 0x20073b
00200875
00200875loc_200875:
00200875call fn_f4590
0020087a
0020087aloc_20087a:
0020087amov rdi, r15
0020087dcall fn_200040
00200882
00200882loc_200882:
00200882mov rdi, [rsp+448]
0020088acmp rdi, r15
0020088dje 0x20089e
0020088fcall caml_stat_free
00200894xor eax, eax
00200896mov [rsp+448], rax
0020089e
0020089eloc_20089e:
0020089emov rdi, r13
002008a1call caml_raise
00200080
002008a6
002008a6 // align 0x10
002008a6 // align 0x10
002008b0
002008b0caml_compare:
002008b0sub rsp, 8
002008b4mov edx, 1
002008b9call fn_200080
002008betest rax, rax
002008c1js 0x2008d7
002008c3setg al
002008c6movzx eax, al
002008c9lea rax, [rax+rax+1]
002008ceadd rsp, 8
002008d2
002008d2loc_2008d2:
002008d2ret
002008d3mov rax, -1
002008dajmp 0x2008d2
002008dcdb 0xff
002008dddb 0xff
002008dejmp 0x2008d2
002008b0
002008b0caml_compare:
002008b0sub rsp, 8
002008b4mov edx, 1
002008b9call fn_200080
002008betest rax, rax
002008c1js 0x2008d7
002008c3setg al
002008c6movzx eax, al
002008c9lea rax, [rax+rax+1]
002008ceadd rsp, 8
002008d2
002008d2loc_2008d2:
002008d2ret
002008d3mov rax, -1
002008dajmp 0x2008d2
002008dcdb 0xff
002008dddb 0xff
002008dejmp 0x2008d2
002008b0
002008e0
002008e0caml_equal:
002008e0sub rsp, 8
002008e4xor edx, edx
002008e6call fn_200080
002008ebcmp rax, 1
002008efsbb rax, rax
002008f2add rsp, 8
002008f6and eax, 2
002008f9add rax, 1
002008fdret
002008fedb 0x83
002008ffrol [rcx], -61
002008e0
002008e0caml_equal:
002008e0sub rsp, 8
002008e4xor edx, edx
002008e6call fn_200080
002008ebcmp rax, 1
002008efsbb rax, rax
002008f2add rsp, 8
002008f6and eax, 2
002008f9add rax, 1
002008fdret
002008fedb 0x83
002008ffrol [rcx], -61
002008e0
00200902
00200902 // align 0x10
00200902 // align 0x10
00200910
00200910caml_notequal:
00200910sub rsp, 8
00200914xor edx, edx
00200916call fn_200080
0020091bcmp rax, 1
0020091fsbb rax, rax
00200922add rsp, 8
00200926and rax, -2
0020092aadd rax, 3
0020092eret
0020092fdb 0x83
00200930rol [rbx], -61
00200910
00200910caml_notequal:
00200910sub rsp, 8
00200914xor edx, edx
00200916call fn_200080
0020091bcmp rax, 1
0020091fsbb rax, rax
00200922add rsp, 8
00200926and rax, -2
0020092aadd rax, 3
0020092eret
0020092fdb 0x83
00200930rol [rbx], -61
00200910
00200933
00200933 // align 0x10
00200933 // align 0x10
00200940
00200940caml_lessthan:
00200940sub rsp, 8
00200944xor edx, edx
00200946call fn_200080
0020094bmov rdx, 0x7fffffffffffffff
00200955add rax, rdx
00200958sub rdx, 1
0020095ccmp rdx, rax
0020095fsetae al
00200962add rsp, 8
00200966movzx eax, al
00200969lea rax, [rax+rax+1]
0020096eret
0020096fdb 0x44
00200970add [rcx], al
00200972ret
00200940
00200940caml_lessthan:
00200940sub rsp, 8
00200944xor edx, edx
00200946call fn_200080
0020094bmov rdx, 0x7fffffffffffffff
00200955add rax, rdx
00200958sub rdx, 1
0020095ccmp rdx, rax
0020095fsetae al
00200962add rsp, 8
00200966movzx eax, al
00200969lea rax, [rax+rax+1]
0020096eret
0020096fdb 0x44
00200970add [rcx], al
00200972ret
00200940
00200973
00200973 // align 0x10
00200973 // align 0x10
00200980
00200980caml_lessequal:
00200980sub rsp, 8
00200984xor edx, edx
00200986call fn_200080
0020098badd rsp, 8
0020098fmov rdx, 0x7fffffffffffffff
00200999add rax, rdx
0020099cnot rax
0020099fshr rax, 63
002009a3lea rax, [rax+rax+1]
002009a8ret
002009a9db 0x44
002009aaadd [rcx], al
002009acret
00200980
00200980caml_lessequal:
00200980sub rsp, 8
00200984xor edx, edx
00200986call fn_200080
0020098badd rsp, 8
0020098fmov rdx, 0x7fffffffffffffff
00200999add rax, rdx
0020099cnot rax
0020099fshr rax, 63
002009a3lea rax, [rax+rax+1]
002009a8ret
002009a9db 0x44
002009aaadd [rcx], al
002009acret
00200980
002009ad
002009ad // align 0x10
002009ad // align 0x10
002009b0
002009b0caml_greaterthan:
002009b0sub rsp, 8
002009b4xor edx, edx
002009b6call fn_200080
002009bbtest rax, rax
002009besetg al
002009c1add rsp, 8
002009c5movzx eax, al
002009c8lea rax, [rax+rax+1]
002009cdret
002009cedb 0x44
002009cfadd [rcx], al
002009d1ret
002009b0
002009b0caml_greaterthan:
002009b0sub rsp, 8
002009b4xor edx, edx
002009b6call fn_200080
002009bbtest rax, rax
002009besetg al
002009c1add rsp, 8
002009c5movzx eax, al
002009c8lea rax, [rax+rax+1]
002009cdret
002009cedb 0x44
002009cfadd [rcx], al
002009d1ret
002009b0
002009d2
002009d2 // align 0x10
002009d2 // align 0x10
002009e0
002009e0caml_greaterequal:
002009e0sub rsp, 8
002009e4xor edx, edx
002009e6call fn_200080
002009ebadd rsp, 8
002009efsar rax, 63
002009f3and rax, -2
002009f7add rax, 3
002009fbret
002009fcdb 0x83
002009fdrol [rbx], -61
002009e0
002009e0caml_greaterequal:
002009e0sub rsp, 8
002009e4xor edx, edx
002009e6call fn_200080
002009ebadd rsp, 8
002009efsar rax, 63
002009f3and rax, -2
002009f7add rax, 3
002009fbret
002009fcdb 0x83
002009fdrol [rbx], -61
002009e0
00200a00
00200a00fn_200a00:
00200a00push r15
00200a02push r14
00200a04push r13
00200a06mov r13, rdi
00200a09lea rdi, [rsi+7]
00200a0dpush r12
00200a0fmov rsi, rdi
00200a12mov r12, rdx
00200a15push rbp
00200a16shr rsi, 3
00200a1apush rbx
00200a1blea rdi, [rsi+1]
00200a1fsub rsp, 120
00200a23mov rax, [rip+0x755be]
00200a2amov rbx, [0x28]
00200a33mov [rsp+104], rbx
00200a38mov rbx, rcx
00200a3bmov r14, [rax]
00200a3flea rax, [rsp+32]
00200a44mov [rsp+24], 1
00200a4dmov rbp, [r14+160]
00200a54mov [r14+160], rax
00200a5bmov eax, 1
00200a60movq x0, rax
00200a65lea rax, [rsp+24]
00200a6apunpcklqdq x0, x0
00200a6emov [rsp+32], rbp
00200a73mov [rsp+56], rax
00200a78movups [rsp+40], x0
00200a7dcmp rdi, 256
00200a84ja 0x200a8f
00200a86cmp [rip+0x177893], rdx
00200a8djae 0x200ae0
00200a8f
00200a8floc_200a8f:
00200a8fmov esi, 255
00200a94call caml_alloc_shr
00200a99mov rdi, r12
00200a9cmov rsi, rbx
00200a9fmov [rsp+24], rax
00200aa4mov [rax], r13
00200aa7call caml_adjust_gc_speed
00200aacmov rdi, [rsp+24]
00200ab1call caml_check_urgent_gc
00200ab6
00200ab6loc_200ab6:
00200ab6mov [r14+160], rbp
00200abdmov rdx, [rsp+104]
00200ac2sub rdx, [0x28]
00200acbjne 0x200b7d
00200ad1add rsp, 120
00200ad5pop rbx
00200ad6pop rbp
00200ad7pop r12
00200ad9pop r13
00200adbpop r14
00200addpop r15
00200adfret
00200ae0
00200ae0loc_200ae0:
00200ae0mov esi, 255
00200ae5mov r15, r8
00200ae8call caml_alloc_small
00200aedmov rdx, r12
00200af0mov [rsp+24], rax
00200af5mov [rax], r13
00200af8or rdx, [r13+8]
00200afcmov rax, [rsp+24]
00200b01je 0x200ab6
00200b03mov rcx, [rip+0x754de]
00200b0amov rcx, [rcx]
00200b0emov r13, [rcx+96]
00200b12mov rcx, [r13+136]
00200b19cmp rcx, [r13+144]
00200b20jae 0x200b50
00200b22
00200b22loc_200b22:
00200b22lea rsi, [rcx+24]
00200b26mov [r13+136], rsi
00200b2dmov [rcx], rax
00200b30mov [rcx+8], r12
00200b34mov [rcx+16], rbx
00200b38test r12, r12
00200b3bjne 0x200b70
00200b3d
00200b3dloc_200b3d:
00200b3dmov rax, [rsp+24]
00200b42jmp 0x200ab6
00200b47
00200b47 66 0f 1f 84 00 00 00 00 00 f........
00200b50
00200b50loc_200b50:
00200b50lea rdi, [r13+112]
00200b54mov [rsp+8], rax
00200b59call caml_realloc_custom_table
00200b5emov rcx, [r13+136]
00200b65mov rax, [rsp+8]
00200b6ajmp 0x200b22
00200b6c
00200b6c 0f 1f 40 00 ..@.
00200b70
00200b70loc_200b70:
00200b70mov rsi, r15
00200b73mov rdi, r12
00200b76call caml_adjust_minor_gc_speed
00200b7bjmp 0x200b3d
00200b7d
00200b7dloc_200b7d:
00200b7dcall fn_f4590
00200a00
00200a00fn_200a00:
00200a00push r15
00200a02push r14
00200a04push r13
00200a06mov r13, rdi
00200a09lea rdi, [rsi+7]
00200a0dpush r12
00200a0fmov rsi, rdi
00200a12mov r12, rdx
00200a15push rbp
00200a16shr rsi, 3
00200a1apush rbx
00200a1blea rdi, [rsi+1]
00200a1fsub rsp, 120
00200a23mov rax, [rip+0x755be]
00200a2amov rbx, [0x28]
00200a33mov [rsp+104], rbx
00200a38mov rbx, rcx
00200a3bmov r14, [rax]
00200a3flea rax, [rsp+32]
00200a44mov [rsp+24], 1
00200a4dmov rbp, [r14+160]
00200a54mov [r14+160], rax
00200a5bmov eax, 1
00200a60movq x0, rax
00200a65lea rax, [rsp+24]
00200a6apunpcklqdq x0, x0
00200a6emov [rsp+32], rbp
00200a73mov [rsp+56], rax
00200a78movups [rsp+40], x0
00200a7dcmp rdi, 256
00200a84ja 0x200a8f
00200a86cmp [rip+0x177893], rdx
00200a8djae 0x200ae0
00200a8f
00200a8floc_200a8f:
00200a8fmov esi, 255
00200a94call caml_alloc_shr
00200a99mov rdi, r12
00200a9cmov rsi, rbx
00200a9fmov [rsp+24], rax
00200aa4mov [rax], r13
00200aa7call caml_adjust_gc_speed
00200aacmov rdi, [rsp+24]
00200ab1call caml_check_urgent_gc
00200ab6
00200ab6loc_200ab6:
00200ab6mov [r14+160], rbp
00200abdmov rdx, [rsp+104]
00200ac2sub rdx, [0x28]
00200acbjne 0x200b7d
00200ad1add rsp, 120
00200ad5pop rbx
00200ad6pop rbp
00200ad7pop r12
00200ad9pop r13
00200adbpop r14
00200addpop r15
00200adfret
00200ae0
00200ae0loc_200ae0:
00200ae0mov esi, 255
00200ae5mov r15, r8
00200ae8call caml_alloc_small
00200aedmov rdx, r12
00200af0mov [rsp+24], rax
00200af5mov [rax], r13
00200af8or rdx, [r13+8]
00200afcmov rax, [rsp+24]
00200b01je 0x200ab6
00200b03mov rcx, [rip+0x754de]
00200b0amov rcx, [rcx]
00200b0emov r13, [rcx+96]
00200b12mov rcx, [r13+136]
00200b19cmp rcx, [r13+144]
00200b20jae 0x200b50
00200b22
00200b22loc_200b22:
00200b22lea rsi, [rcx+24]
00200b26mov [r13+136], rsi
00200b2dmov [rcx], rax
00200b30mov [rcx+8], r12
00200b34mov [rcx+16], rbx
00200b38test r12, r12
00200b3bjne 0x200b70
00200b3d
00200b3dloc_200b3d:
00200b3dmov rax, [rsp+24]
00200b42jmp 0x200ab6
00200b47
00200b47 66 0f 1f 84 00 00 00 00 00 f........
00200b50
00200b50loc_200b50:
00200b50lea rdi, [r13+112]
00200b54mov [rsp+8], rax
00200b59call caml_realloc_custom_table
00200b5emov rcx, [r13+136]
00200b65mov rax, [rsp+8]
00200b6ajmp 0x200b22
00200b6c
00200b6c 0f 1f 40 00 ..@.
00200b70
00200b70loc_200b70:
00200b70mov rsi, r15
00200b73mov rdi, r12
00200b76call caml_adjust_minor_gc_speed
00200b7bjmp 0x200b3d
00200b7d
00200b7dloc_200b7d:
00200b7dcall fn_f4590
00200a00
00200b82
00200b82 // align 0x10
00200b82 // align 0x10
00200b90
00200b90caml_custom_get_max_major:
00200b90sub rsp, 8
00200b94mov rax, [rip+0x75449]
00200b9bmov rax, [rax]
00200b9fmov rdi, [rax+280]
00200ba6call caml_heap_size
00200babmov rdx, 0x6d3a06d3a06d3a07
00200bb5mul rdx
00200bb8mov rax, rdx
00200bbbshr rax, 6
00200bbfimul rax, [rip+0x177765]
00200bc7add rsp, 8
00200bcbret
00200bccdb 0x83
00200bcddb 0xc4
00200bceor bl, al
00200b90
00200b90caml_custom_get_max_major:
00200b90sub rsp, 8
00200b94mov rax, [rip+0x75449]
00200b9bmov rax, [rax]
00200b9fmov rdi, [rax+280]
00200ba6call caml_heap_size
00200babmov rdx, 0x6d3a06d3a06d3a07
00200bb5mul rdx
00200bb8mov rax, rdx
00200bbbshr rax, 6
00200bbfimul rax, [rip+0x177765]
00200bc7add rsp, 8
00200bcbret
00200bccdb 0x83
00200bcddb 0xc4
00200bceor bl, al
00200b90
00200bd0
00200bd0caml_alloc_custom:
00200bd0mov r9, rdx
00200bd3mov r8, rcx
00200bd6test rcx, rcx
00200bd9jne 0x200c15
00200bdbmov rax, [rip+0x75402]
00200be2mov r8, [rip+0x17773b]
00200be9mov rax, [rax]
00200bedmov rdx, [rax+272]
00200bf4mov rax, 0x28f5c28f5c28f5c3
00200bfeshl rdx, 3
00200c02shr rdx, 2
00200c06mul rdx
00200c09shr rdx, 2
00200c0dimul r8, rdx
00200c11mov rdx, r9
00200c14jmp 0x200a00
00200c19db 0xe3
00200c1astd
00200c1bdb 0xff
00200c1cdb 0xff
00200bd0
00200bd0caml_alloc_custom:
00200bd0mov r9, rdx
00200bd3mov r8, rcx
00200bd6test rcx, rcx
00200bd9jne 0x200c15
00200bdbmov rax, [rip+0x75402]
00200be2mov r8, [rip+0x17773b]
00200be9mov rax, [rax]
00200bedmov rdx, [rax+272]
00200bf4mov rax, 0x28f5c28f5c28f5c3
00200bfeshl rdx, 3
00200c02shr rdx, 2
00200c06mul rdx
00200c09shr rdx, 2
00200c0dimul r8, rdx
00200c11mov rdx, r9
00200c14jmp 0x200a00
00200c19db 0xe3
00200c1astd
00200c1bdb 0xff
00200c1cdb 0xff
00200bd0
00200c1d
00200c1d // align 0x10
00200c1d // align 0x10
00200c20
00200c20caml_alloc_custom_mem:
00200c20push rbp
00200c21xor ecx, ecx
00200c23push rbx
00200c24mov rbx, rdx
00200c27sub rsp, 8
00200c2bmov rax, [rip+0x753b2]
00200c32mov rax, [rax]
00200c36mov rdx, [rax+272]
00200c3dmov rax, 0x28f5c28f5c28f5c3
00200c47shl rdx, 3
00200c4bshr rdx, 2
00200c4fmul rdx
00200c52shr rdx, 2
00200c56imul rdx, [rip+0x1776c6]
00200c5emov r8, rdx
00200c61mov rdx, rbx
00200c64call fn_200a00
00200c69lea rsi, [rbx+7]
00200c6dmov ecx, 2
00200c72shr rsi, 3
00200c76mov rdi, rax
00200c79mov rbp, rax
00200c7cmov rdx, rsi
00200c7fcall caml_memprof_sample_block
00200c84add rsp, 8
00200c88mov rax, rbp
00200c8bpop rbx
00200c8cpop rbp
00200c8dret
00200c8edb 0xe8
00200c8fpop rbx
00200c90pop rbp
00200c91ret
00200c20
00200c20caml_alloc_custom_mem:
00200c20push rbp
00200c21xor ecx, ecx
00200c23push rbx
00200c24mov rbx, rdx
00200c27sub rsp, 8
00200c2bmov rax, [rip+0x753b2]
00200c32mov rax, [rax]
00200c36mov rdx, [rax+272]
00200c3dmov rax, 0x28f5c28f5c28f5c3
00200c47shl rdx, 3
00200c4bshr rdx, 2
00200c4fmul rdx
00200c52shr rdx, 2
00200c56imul rdx, [rip+0x1776c6]
00200c5emov r8, rdx
00200c61mov rdx, rbx
00200c64call fn_200a00
00200c69lea rsi, [rbx+7]
00200c6dmov ecx, 2
00200c72shr rsi, 3
00200c76mov rdi, rax
00200c79mov rbp, rax
00200c7cmov rdx, rsi
00200c7fcall caml_memprof_sample_block
00200c84add rsp, 8
00200c88mov rax, rbp
00200c8bpop rbx
00200c8cpop rbp
00200c8dret
00200c8edb 0xe8
00200c8fpop rbx
00200c90pop rbp
00200c91ret
00200c20
00200c92
00200c92 // align 0x10
00200c92 // align 0x10
00200ca0
00200ca0caml_register_custom_operations:
00200ca0push rbx
00200ca1mov rbx, rdi
00200ca4mov edi, 16
00200ca9call caml_stat_alloc
00200caemov [rax], rbx
00200cb1mov rdx, rax
00200cb4mov rax, [rip+0x1778f1]
00200cbbmov [rdx+8], rax
00200cbf
00200cbfloc_200cbf:
00200cbflock cmpxchg [rip+0x1778e4], rdx
00200cc8jne 0x200cbf
00200ccapop rbx
00200ccbret
00200cccdb 0x75
00200ccdint 1
00200ccepop rbx
00200ccfret
00200ca0
00200ca0caml_register_custom_operations:
00200ca0push rbx
00200ca1mov rbx, rdi
00200ca4mov edi, 16
00200ca9call caml_stat_alloc
00200caemov [rax], rbx
00200cb1mov rdx, rax
00200cb4mov rax, [rip+0x1778f1]
00200cbbmov [rdx+8], rax
00200cbf
00200cbfloc_200cbf:
00200cbflock cmpxchg [rip+0x1778e4], rdx
00200cc8jne 0x200cbf
00200ccapop rbx
00200ccbret
00200cccdb 0x75
00200ccdint 1
00200ccepop rbx
00200ccfret
00200ca0
00200cd0
00200cd0caml_find_custom_operations:
00200cd0push r12
00200cd2push rbp
00200cd3push rbx
00200cd4mov rbx, [rip+0x1778d1]
00200cdbtest rbx, rbx
00200cdeje 0x200d18
00200ce0mov r12, rdi
00200ce3jmp 0x200cf9
00200ce5db 0x89
00200ce6cld
00200ce7jmp 0x200cf9
00200ce9
00200ce9 0f 1f 80 00 00 00 00 .......
00200cf0
00200cf0loc_200cf0:
00200cf0mov rbx, [rbx+8]
00200cf4test rbx, rbx
00200cf7je 0x200d18
00200cf9
00200cf9loc_200cf9:
00200cf9mov rbp, [rbx]
00200cfcmov rsi, r12
00200cffmov rdi, [rbp]
00200d03call fn_f45a0
00200d08test eax, eax
00200d0ajne 0x200cf0
00200d0cmov rax, rbp
00200d0fpop rbx
00200d10pop rbp
00200d11pop r12
00200d13ret
00200d14
00200d14 0f 1f 40 00 ..@.
00200d18
00200d18loc_200d18:
00200d18xor ebp, ebp
00200d1apop rbx
00200d1bmov rax, rbp
00200d1epop rbp
00200d1fpop r12
00200d21ret
00200cd0
00200cd0caml_find_custom_operations:
00200cd0push r12
00200cd2push rbp
00200cd3push rbx
00200cd4mov rbx, [rip+0x1778d1]
00200cdbtest rbx, rbx
00200cdeje 0x200d18
00200ce0mov r12, rdi
00200ce3jmp 0x200cf9
00200ce5db 0x89
00200ce6cld
00200ce7jmp 0x200cf9
00200ce9
00200ce9 0f 1f 80 00 00 00 00 .......
00200cf0
00200cf0loc_200cf0:
00200cf0mov rbx, [rbx+8]
00200cf4test rbx, rbx
00200cf7je 0x200d18
00200cf9
00200cf9loc_200cf9:
00200cf9mov rbp, [rbx]
00200cfcmov rsi, r12
00200cffmov rdi, [rbp]
00200d03call fn_f45a0
00200d08test eax, eax
00200d0ajne 0x200cf0
00200d0cmov rax, rbp
00200d0fpop rbx
00200d10pop rbp
00200d11pop r12
00200d13ret
00200d14
00200d14 0f 1f 40 00 ..@.
00200d18
00200d18loc_200d18:
00200d18xor ebp, ebp
00200d1apop rbx
00200d1bmov rax, rbp
00200d1epop rbp
00200d1fpop r12
00200d21ret
00200cd0
00200d22
00200d22 // align 0x20
00200d22 // align 0x20
00200d40
00200d40caml_final_custom_operations:
00200d40push rbp
00200d41mov rbp, rdi
00200d44push rbx
00200d45sub rsp, 8
00200d49mov rax, [rip+0x177854]
00200d50test rax, rax
00200d53jne 0x200d69
00200d55jmp 0x200d80
00200d57db 0x75
00200d58adc bl, ch
00200d5adb 0x25
00200d5b
00200d5b 0f 1f 44 00 00 ..D..
00200d60
00200d60loc_200d60:
00200d60mov rax, [rax+8]
00200d64test rax, rax
00200d67je 0x200d80
00200d69
00200d69loc_200d69:
00200d69mov rbx, [rax]
00200d6ccmp [rbx+8], rbp
00200d70jne 0x200d60
00200d72add rsp, 8
00200d76mov rax, rbx
00200d79pop rbx
00200d7apop rbp
00200d7bret
00200d7c
00200d7c 0f 1f 40 00 ..@.
00200d80
00200d80loc_200d80:
00200d80mov edi, 64
00200d85call caml_stat_alloc
00200d8amov edi, 16
00200d8fmov rbx, rax
00200d92lea rax, [rip+0x2e00c]
00200d99mov [rbx], rax
00200d9cmov [rbx+8], rbp
00200da0mov [rbx+16], 0
00200da8mov [rbx+24], 0
00200db0mov [rbx+32], 0
00200db8mov [rbx+40], 0
00200dc0mov [rbx+48], 0
00200dc8mov [rbx+56], 0
00200dd0call caml_stat_alloc
00200dd5mov [rax], rbx
00200dd8mov rdx, rax
00200ddbmov rax, [rip+0x1777c6]
00200de2
00200de2loc_200de2:
00200de2mov [rdx+8], rax
00200de6lock cmpxchg [rip+0x1777b9], rdx
00200defjne 0x200de2
00200df1add rsp, 8
00200df5mov rax, rbx
00200df8pop rbx
00200df9pop rbp
00200dfaret
00200d40
00200d40caml_final_custom_operations:
00200d40push rbp
00200d41mov rbp, rdi
00200d44push rbx
00200d45sub rsp, 8
00200d49mov rax, [rip+0x177854]
00200d50test rax, rax
00200d53jne 0x200d69
00200d55jmp 0x200d80
00200d57db 0x75
00200d58adc bl, ch
00200d5adb 0x25
00200d5b
00200d5b 0f 1f 44 00 00 ..D..
00200d60
00200d60loc_200d60:
00200d60mov rax, [rax+8]
00200d64test rax, rax
00200d67je 0x200d80
00200d69
00200d69loc_200d69:
00200d69mov rbx, [rax]
00200d6ccmp [rbx+8], rbp
00200d70jne 0x200d60
00200d72add rsp, 8
00200d76mov rax, rbx
00200d79pop rbx
00200d7apop rbp
00200d7bret
00200d7c
00200d7c 0f 1f 40 00 ..@.
00200d80
00200d80loc_200d80:
00200d80mov edi, 64
00200d85call caml_stat_alloc
00200d8amov edi, 16
00200d8fmov rbx, rax
00200d92lea rax, [rip+0x2e00c]
00200d99mov [rbx], rax
00200d9cmov [rbx+8], rbp
00200da0mov [rbx+16], 0
00200da8mov [rbx+24], 0
00200db0mov [rbx+32], 0
00200db8mov [rbx+40], 0
00200dc0mov [rbx+48], 0
00200dc8mov [rbx+56], 0
00200dd0call caml_stat_alloc
00200dd5mov [rax], rbx
00200dd8mov rdx, rax
00200ddbmov rax, [rip+0x1777c6]
00200de2
00200de2loc_200de2:
00200de2mov [rdx+8], rax
00200de6lock cmpxchg [rip+0x1777b9], rdx
00200defjne 0x200de2
00200df1add rsp, 8
00200df5mov rax, rbx
00200df8pop rbx
00200df9pop rbp
00200dfaret
00200d40
00200dfb
00200dfb // align 0x10
00200dfb // align 0x10
00200e00
00200e00caml_init_custom_operations:
00200e00sub rsp, 8
00200e04mov edi, 16
00200e09call caml_stat_alloc
00200e0emov rdx, rax
00200e11lea rax, [rip+0x74aa4]
00200e18mov [rdx], rax
00200e1bmov rax, [rip+0x17778a]
00200e22mov [rdx+8], rax
00200e26
00200e26loc_200e26:
00200e26lock cmpxchg [rip+0x17777d], rdx
00200e2fjne 0x200e26
00200e31mov edi, 16
00200e36call caml_stat_alloc
00200e3bmov rdx, rax
00200e3elea rax, [rip+0x749f7]
00200e45mov [rdx], rax
00200e48mov rax, [rip+0x17775d]
00200e4fmov [rdx+8], rax
00200e53
00200e53loc_200e53:
00200e53lock cmpxchg [rip+0x177750], rdx
00200e5cjne 0x200e53
00200e5emov edi, 16
00200e63call caml_stat_alloc
00200e68mov rdx, rax
00200e6blea rax, [rip+0x74a0a]
00200e72mov [rdx], rax
00200e75mov rax, [rip+0x177730]
00200e7cmov [rdx+8], rax
00200e80
00200e80loc_200e80:
00200e80lock cmpxchg [rip+0x177723], rdx
00200e89jne 0x200e80
00200e8bmov edi, 16
00200e90call caml_stat_alloc
00200e95mov rdx, rax
00200e98lea rax, [rip+0x7495d]
00200e9fmov [rdx], rax
00200ea2mov rax, [rip+0x177703]
00200ea9mov [rdx+8], rax
00200ead
00200eadloc_200ead:
00200eadlock cmpxchg [rip+0x1776f6], rdx
00200eb6jne 0x200ead
00200eb8add rsp, 8
00200ebcret
00200ebddb 0x83
00200ebedb 0xc4
00200ebfor bl, al
00200e00
00200e00caml_init_custom_operations:
00200e00sub rsp, 8
00200e04mov edi, 16
00200e09call caml_stat_alloc
00200e0emov rdx, rax
00200e11lea rax, [rip+0x74aa4]
00200e18mov [rdx], rax
00200e1bmov rax, [rip+0x17778a]
00200e22mov [rdx+8], rax
00200e26
00200e26loc_200e26:
00200e26lock cmpxchg [rip+0x17777d], rdx
00200e2fjne 0x200e26
00200e31mov edi, 16
00200e36call caml_stat_alloc
00200e3bmov rdx, rax
00200e3elea rax, [rip+0x749f7]
00200e45mov [rdx], rax
00200e48mov rax, [rip+0x17775d]
00200e4fmov [rdx+8], rax
00200e53
00200e53loc_200e53:
00200e53lock cmpxchg [rip+0x177750], rdx
00200e5cjne 0x200e53
00200e5emov edi, 16
00200e63call caml_stat_alloc
00200e68mov rdx, rax
00200e6blea rax, [rip+0x74a0a]
00200e72mov [rdx], rax
00200e75mov rax, [rip+0x177730]
00200e7cmov [rdx+8], rax
00200e80
00200e80loc_200e80:
00200e80lock cmpxchg [rip+0x177723], rdx
00200e89jne 0x200e80
00200e8bmov edi, 16
00200e90call caml_stat_alloc
00200e95mov rdx, rax
00200e98lea rax, [rip+0x7495d]
00200e9fmov [rdx], rax
00200ea2mov rax, [rip+0x177703]
00200ea9mov [rdx+8], rax
00200ead
00200eadloc_200ead:
00200eadlock cmpxchg [rip+0x1776f6], rdx
00200eb6jne 0x200ead
00200eb8add rsp, 8
00200ebcret
00200ebddb 0x83
00200ebedb 0xc4
00200ebfor bl, al
00200e00
Loading..