File hevea_f46f610a6b0078f4aa208dda361f21de574cc56ad64b32889301afc466d33979.elf
Function:
Loading..
00205fa0
00205fa0caml_serialize_block_2:
00205fa0push r13
00205fa2push r12
00205fa4push rbp
00205fa5push rbx
00205fa6sub rsp, 8
00205faamov rax, [rip+0x70033]
00205fb1mov rax, [rax]
00205fb5test rax, rax
00205fb8je 0x206048
00205fbemov rbp, [rax+368]
00205fc5test rbp, rbp
00205fc8je 0x20604d
00205fcamov rbx, rdi
00205fcdmov rdi, [rbp+8328]
00205fd4lea r13, [rsi+rsi]
00205fd8mov r12, rsi
00205fdblea rax, [rdi+r13]
00205fdfcmp [rbp+8336], rax
00205fe6jb 0x206030
00205fe8test r12, r12
00205febjle 0x20601d
00205fedlea rsi, [rbx+r13]
00205ff1mov rax, rdi
00205ff4nop [rax+rax]
00205ffcmovzx edx, [rbx]
00205fffmovzx ecx, [rbx+1]
00206003add rbx, 2
00206007add rax, 2
0020600bmov [rax-2], cl
0020600emov [rax-1], dl
00206011cmp rbx, rsi
00206014jne 0x206000
00206016add rdi, r13
00206019mov [rbp+8328], rdi
00206020add rsp, 8
00206024pop rbx
00206025pop rbp
00206026pop r12
00206028pop r13
0020602aret
0020602bdb 0x5c
0020602cpop r13
0020602eret
0020602f
0020602f 90 .
00206030
00206030loc_206030:
00206030mov rdi, rbp
00206033mov rsi, r13
00206036call fn_203430
0020603bmov rdi, [rbp+8328]
00206042jmp 0x205fec
00206044
00206044 0f 1f 40 00 ..@.
00206048
00206048loc_206048:
00206048call caml_bad_caml_state
0020604d
0020604dloc_20604d:
0020604dlea rdi, [rip+0x2a27c]
00206054xor eax, eax
00206056call caml_fatal_error
00205fa0
00205fa0caml_serialize_block_2:
00205fa0push r13
00205fa2push r12
00205fa4push rbp
00205fa5push rbx
00205fa6sub rsp, 8
00205faamov rax, [rip+0x70033]
00205fb1mov rax, [rax]
00205fb5test rax, rax
00205fb8je 0x206048
00205fbemov rbp, [rax+368]
00205fc5test rbp, rbp
00205fc8je 0x20604d
00205fcamov rbx, rdi
00205fcdmov rdi, [rbp+8328]
00205fd4lea r13, [rsi+rsi]
00205fd8mov r12, rsi
00205fdblea rax, [rdi+r13]
00205fdfcmp [rbp+8336], rax
00205fe6jb 0x206030
00205fe8test r12, r12
00205febjle 0x20601d
00205fedlea rsi, [rbx+r13]
00205ff1mov rax, rdi
00205ff4nop [rax+rax]
00205ffcmovzx edx, [rbx]
00205fffmovzx ecx, [rbx+1]
00206003add rbx, 2
00206007add rax, 2
0020600bmov [rax-2], cl
0020600emov [rax-1], dl
00206011cmp rbx, rsi
00206014jne 0x206000
00206016add rdi, r13
00206019mov [rbp+8328], rdi
00206020add rsp, 8
00206024pop rbx
00206025pop rbp
00206026pop r12
00206028pop r13
0020602aret
0020602bdb 0x5c
0020602cpop r13
0020602eret
0020602f
0020602f 90 .
00206030
00206030loc_206030:
00206030mov rdi, rbp
00206033mov rsi, r13
00206036call fn_203430
0020603bmov rdi, [rbp+8328]
00206042jmp 0x205fec
00206044
00206044 0f 1f 40 00 ..@.
00206048
00206048loc_206048:
00206048call caml_bad_caml_state
0020604d
0020604dloc_20604d:
0020604dlea rdi, [rip+0x2a27c]
00206054xor eax, eax
00206056call caml_fatal_error
00205fa0
0020605b
0020605b // align 0x40
0020605b // align 0x40
00206080
00206080caml_serialize_block_4:
00206080push r13
00206082push r12
00206084push rbp
00206085push rbx
00206086sub rsp, 8
0020608amov rax, [rip+0x6ff53]
00206091mov rax, [rax]
00206095test rax, rax
00206098je 0x206160
0020609emov r12, [rax+368]
002060a5test r12, r12
002060a8je 0x206165
002060aemov rbp, rsi
002060b1mov rsi, [r12+8328]
002060b9mov rbx, rdi
002060bclea r13, [4*rbp]
002060c4lea rax, [rsi+r13]
002060c8cmp [r12+8336], rax
002060d0jb 0x206148
002060d2test rbp, rbp
002060d5jle 0x206131
002060d7xor edx, edx
002060d9nop [rax+rax]
002060e4nop [rax+rax]
002060efnop [rax+rax]
002060fanop
002060fcmovzx eax, [rbx+4*rdx]
00206100
00206100loc_206100:
00206100movzx ecx, [rbx+4*rdx+1]
00206105shl eax, 8
00206108or eax, ecx
0020610amovzx ecx, [rbx+4*rdx+2]
0020610fshl eax, 8
00206112or eax, ecx
00206114movzx ecx, [rbx+4*rdx+3]
00206119shl eax, 8
0020611cor eax, ecx
0020611emov [rsi+4*rdx], eax
00206121add rdx, 1
00206125cmp rbp, rdx
00206128jne 0x206100
0020612aadd rsi, r13
0020612dmov [r12+8328], rsi
00206135add rsp, 8
00206139pop rbx
0020613apop rbp
0020613bpop r12
0020613dpop r13
0020613fret
00206140db 0x5c
00206141pop r13
00206143ret
00206144
00206144 0f 1f 40 00 ..@.
00206148
00206148loc_206148:
00206148mov rsi, r13
0020614bmov rdi, r12
0020614ecall fn_203430
00206153mov rsi, [r12+8328]
0020615bjmp 0x2060d6
00206160
00206160loc_206160:
00206160call caml_bad_caml_state
00206165
00206165loc_206165:
00206165lea rdi, [rip+0x2a164]
0020616cxor eax, eax
0020616ecall caml_fatal_error
00206080
00206080caml_serialize_block_4:
00206080push r13
00206082push r12
00206084push rbp
00206085push rbx
00206086sub rsp, 8
0020608amov rax, [rip+0x6ff53]
00206091mov rax, [rax]
00206095test rax, rax
00206098je 0x206160
0020609emov r12, [rax+368]
002060a5test r12, r12
002060a8je 0x206165
002060aemov rbp, rsi
002060b1mov rsi, [r12+8328]
002060b9mov rbx, rdi
002060bclea r13, [4*rbp]
002060c4lea rax, [rsi+r13]
002060c8cmp [r12+8336], rax
002060d0jb 0x206148
002060d2test rbp, rbp
002060d5jle 0x206131
002060d7xor edx, edx
002060d9nop [rax+rax]
002060e4nop [rax+rax]
002060efnop [rax+rax]
002060fanop
002060fcmovzx eax, [rbx+4*rdx]
00206100
00206100loc_206100:
00206100movzx ecx, [rbx+4*rdx+1]
00206105shl eax, 8
00206108or eax, ecx
0020610amovzx ecx, [rbx+4*rdx+2]
0020610fshl eax, 8
00206112or eax, ecx
00206114movzx ecx, [rbx+4*rdx+3]
00206119shl eax, 8
0020611cor eax, ecx
0020611emov [rsi+4*rdx], eax
00206121add rdx, 1
00206125cmp rbp, rdx
00206128jne 0x206100
0020612aadd rsi, r13
0020612dmov [r12+8328], rsi
00206135add rsp, 8
00206139pop rbx
0020613apop rbp
0020613bpop r12
0020613dpop r13
0020613fret
00206140db 0x5c
00206141pop r13
00206143ret
00206144
00206144 0f 1f 40 00 ..@.
00206148
00206148loc_206148:
00206148mov rsi, r13
0020614bmov rdi, r12
0020614ecall fn_203430
00206153mov rsi, [r12+8328]
0020615bjmp 0x2060d6
00206160
00206160loc_206160:
00206160call caml_bad_caml_state
00206165
00206165loc_206165:
00206165lea rdi, [rip+0x2a164]
0020616cxor eax, eax
0020616ecall caml_fatal_error
00206080
00206173
00206173 // align 0x10
00206173 // align 0x10
00206180
00206180caml_serialize_block_8:
00206180push r13
00206182push r12
00206184push rbp
00206185push rbx
00206186sub rsp, 8
0020618amov rax, [rip+0x6fe53]
00206191mov rax, [rax]
00206195test rax, rax
00206198je 0x206290
0020619emov r12, [rax+368]
002061a5test r12, r12
002061a8je 0x206295
002061aemov rcx, [r12+8328]
002061b6lea r13, [8*rsi]
002061bemov rbx, rdi
002061c1mov rbp, rsi
002061c4lea rax, [rcx+r13]
002061c8cmp [r12+8336], rax
002061d0jb 0x206270
002061d6test rbp, rbp
002061d9jle 0x206255
002061dbmov rdx, rcx
002061denop [rax+rax]
002061e9nop [rax]
002061ecmovzx eax, [rbx]
002061efmovzx esi, [rbx+1]
002061f3add rdx, 8
002061f7add rbx, 8
002061fbshl rax, 8
002061ffor rax, rsi
00206202movzx esi, [rbx-6]
00206206shl rax, 8
0020620aor rax, rsi
0020620dmovzx esi, [rbx-5]
00206211shl rax, 8
00206215or rax, rsi
00206218movzx esi, [rbx-4]
0020621cshl rax, 8
00206220or rax, rsi
00206223movzx esi, [rbx-3]
00206227shl rax, 8
0020622bor rax, rsi
0020622emovzx esi, [rbx-2]
00206232shl rax, 8
00206236or rax, rsi
00206239movzx esi, [rbx-1]
0020623dshl rax, 8
00206241or rax, rsi
00206244mov [rdx-8], rax
00206248sub rbp, 1
0020624cjne 0x2061f0
0020624eadd rcx, r13
00206251mov [r12+8328], rcx
00206259add rsp, 8
0020625dpop rbx
0020625epop rbp
0020625fpop r12
00206261pop r13
00206263ret
00206264db 0x5c
00206265pop r13
00206267ret
00206268
00206268 0f 1f 84 00 00 00 00 00 ........
00206270
00206270loc_206270:
00206270mov rsi, r13
00206273mov rdi, r12
00206276call fn_203430
0020627bmov rcx, [r12+8328]
00206283jmp 0x2061da
00206288
00206288 0f 1f 84 00 00 00 00 00 ........
00206290
00206290loc_206290:
00206290call caml_bad_caml_state
00206295
00206295loc_206295:
00206295lea rdi, [rip+0x2a034]
0020629cxor eax, eax
0020629ecall caml_fatal_error
00206180
00206180caml_serialize_block_8:
00206180push r13
00206182push r12
00206184push rbp
00206185push rbx
00206186sub rsp, 8
0020618amov rax, [rip+0x6fe53]
00206191mov rax, [rax]
00206195test rax, rax
00206198je 0x206290
0020619emov r12, [rax+368]
002061a5test r12, r12
002061a8je 0x206295
002061aemov rcx, [r12+8328]
002061b6lea r13, [8*rsi]
002061bemov rbx, rdi
002061c1mov rbp, rsi
002061c4lea rax, [rcx+r13]
002061c8cmp [r12+8336], rax
002061d0jb 0x206270
002061d6test rbp, rbp
002061d9jle 0x206255
002061dbmov rdx, rcx
002061denop [rax+rax]
002061e9nop [rax]
002061ecmovzx eax, [rbx]
002061efmovzx esi, [rbx+1]
002061f3add rdx, 8
002061f7add rbx, 8
002061fbshl rax, 8
002061ffor rax, rsi
00206202movzx esi, [rbx-6]
00206206shl rax, 8
0020620aor rax, rsi
0020620dmovzx esi, [rbx-5]
00206211shl rax, 8
00206215or rax, rsi
00206218movzx esi, [rbx-4]
0020621cshl rax, 8
00206220or rax, rsi
00206223movzx esi, [rbx-3]
00206227shl rax, 8
0020622bor rax, rsi
0020622emovzx esi, [rbx-2]
00206232shl rax, 8
00206236or rax, rsi
00206239movzx esi, [rbx-1]
0020623dshl rax, 8
00206241or rax, rsi
00206244mov [rdx-8], rax
00206248sub rbp, 1
0020624cjne 0x2061f0
0020624eadd rcx, r13
00206251mov [r12+8328], rcx
00206259add rsp, 8
0020625dpop rbx
0020625epop rbp
0020625fpop r12
00206261pop r13
00206263ret
00206264db 0x5c
00206265pop r13
00206267ret
00206268
00206268 0f 1f 84 00 00 00 00 00 ........
00206270
00206270loc_206270:
00206270mov rsi, r13
00206273mov rdi, r12
00206276call fn_203430
0020627bmov rcx, [r12+8328]
00206283jmp 0x2061da
00206288
00206288 0f 1f 84 00 00 00 00 00 ........
00206290
00206290loc_206290:
00206290call caml_bad_caml_state
00206295
00206295loc_206295:
00206295lea rdi, [rip+0x2a034]
0020629cxor eax, eax
0020629ecall caml_fatal_error
00206180
002062a3
002062a3 // align 0x10
002062a3 // align 0x10
002062b0
002062b0caml_serialize_block_float_8:
002062b0mov rax, [rip+0x6fd2d]
002062b7push r12
002062b9push rbp
002062bapush rbx
002062bbmov rax, [rax]
002062bftest rax, rax
002062c2je 0x206328
002062c4mov rbp, [rax+368]
002062cbtest rbp, rbp
002062ceje 0x20632d
002062d0mov r12, rdi
002062d3mov rdi, [rbp+8328]
002062dalea rbx, [8*rsi]
002062e2lea rax, [rdi+rbx]
002062e6cmp [rbp+8336], rax
002062edjb 0x206310
002062efmov rdx, rbx
002062f2mov rsi, r12
002062f5call fn_f47d0
002062faadd [rbp+8328], rbx
00206301pop rbx
00206302pop rbp
00206303pop r12
00206305ret
00206306db 0x5d
00206307pop r12
00206309ret
0020630a
0020630a 66 0f 1f 44 00 00 f..D..
00206310
00206310loc_206310:
00206310mov rdi, rbp
00206313mov rsi, rbx
00206316call fn_203430
0020631bmov rdi, [rbp+8328]
00206322jmp 0x2062f3
00206324
00206324 0f 1f 40 00 ..@.
00206328
00206328loc_206328:
00206328call caml_bad_caml_state
0020632d
0020632dloc_20632d:
0020632dlea rdi, [rip+0x29f9c]
00206334xor eax, eax
00206336call caml_fatal_error
002062b0
002062b0caml_serialize_block_float_8:
002062b0mov rax, [rip+0x6fd2d]
002062b7push r12
002062b9push rbp
002062bapush rbx
002062bbmov rax, [rax]
002062bftest rax, rax
002062c2je 0x206328
002062c4mov rbp, [rax+368]
002062cbtest rbp, rbp
002062ceje 0x20632d
002062d0mov r12, rdi
002062d3mov rdi, [rbp+8328]
002062dalea rbx, [8*rsi]
002062e2lea rax, [rdi+rbx]
002062e6cmp [rbp+8336], rax
002062edjb 0x206310
002062efmov rdx, rbx
002062f2mov rsi, r12
002062f5call fn_f47d0
002062faadd [rbp+8328], rbx
00206301pop rbx
00206302pop rbp
00206303pop r12
00206305ret
00206306db 0x5d
00206307pop r12
00206309ret
0020630a
0020630a 66 0f 1f 44 00 00 f..D..
00206310
00206310loc_206310:
00206310mov rdi, rbp
00206313mov rsi, rbx
00206316call fn_203430
0020631bmov rdi, [rbp+8328]
00206322jmp 0x2062f3
00206324
00206324 0f 1f 40 00 ..@.
00206328
00206328loc_206328:
00206328call caml_bad_caml_state
0020632d
0020632dloc_20632d:
0020632dlea rdi, [rip+0x29f9c]
00206334xor eax, eax
00206336call caml_fatal_error
002062b0
0020633b
0020633b // align 0x10
0020633b // align 0x10
00206340
00206340caml_serialize_float_8:
00206340sub rsp, 24
00206344mov esi, 1
00206349lea rdi, [rsp+8]
0020634emovsd_xmm [rsp+8], x0
00206354call caml_serialize_block_float_8
00206359add rsp, 24
0020635dret
0020635edb 0x83
0020635fdb 0xc4
00206360sbb bl, al
00206340
00206340caml_serialize_float_8:
00206340sub rsp, 24
00206344mov esi, 1
00206349lea rdi, [rsp+8]
0020634emovsd_xmm [rsp+8], x0
00206354call caml_serialize_block_float_8
00206359add rsp, 24
0020635dret
0020635edb 0x83
0020635fdb 0xc4
00206360sbb bl, al
00206340
00206362
00206362 // align 0x20
00206362 // align 0x20
00206380
00206380caml_obj_reachable_words:
00206380push r15
00206382mov r15, 0x9e3779b97f4a7c16
0020638cpush r14
0020638emov r14l, 1
00206394push r13
00206396xor r13l, r13l
00206399push r12
0020639bmov r12, rdi
0020639epush rbp
0020639fpush rbx
002063a0sub rsp, 56
002063a4call fn_2032b0
002063a9movdqa x0, [rip+0x23d4b]
002063b1lea r8, [rax+4144]
002063b8mov [rax], 0
002063bemov rbp, rax
002063c1lea rax, [rax+4176]
002063c8movups [rax+4104], x0
002063cfpxor x0, x0
002063d3mov [rax-4168], 0
002063demov [rax+4096], 56
002063e8mov [rax+4120], 170
002063f3mov [rax+4128], r8
002063famov [rbp+8312], rax
00206401movups [rbp+4144], x0
00206408mov [rsp+32], rax
0020640dmovups [r8+16], x0
00206412mov rbx, [rbp+4128]
00206419jmp 0x206467
0020641bdb 0x00
0020641cadd bl, ch
0020641edb 0x48
0020641f
0020641f 66 f
00206420 66 2e 0f 1f 84 00 00 00 00 00 66 66 2e 0f 1f 84 f.........ff....
00206430 00 00 00 00 00 66 66 2e 0f 1f 84 00 00 00 00 00 .....ff.........
00206440
00206440loc_206440:
00206440cmp [rbp+4128], rbx
00206447je 0x2065a8
0020644dmov rax, [rbx]
00206450lea rdx, [rax+8]
00206454mov [rbx], rdx
00206457mov r12, [rax]
0020645alea rdx, [rbx-16]
0020645esub [rbx+8], 1
00206463cmove rbx, rdx
00206467
00206467loc_206467:
00206467test r12b, 1
0020646bjne 0x206440
0020646dmov edi, [rbp+8272]
00206473mov rsi, [rbp+8304]
0020647a
0020647aloc_20647a:
0020647amov rdx, r12
0020647dmov ecx, edi
0020647fmov rax, r14
00206482imul rdx, r15
00206486shr rdx, cl
00206489mov r10, rdx
0020648cmov ecx, edx
0020648eshr r10, 6
00206492shl rax, cl
00206495and rax, [rsi+8*r10]
00206499je 0x2064f1
0020649bmov r10, [rbp+8312]
002064a2nop [rax+rax]
002064adnop [rax+rax]
002064b8nop [rax+rax]
002064c0
002064c0loc_2064c0:
002064c0mov rax, rdx
002064c3shl rax, 4
002064c7cmp r12, [r10+rax]
002064cbje 0x206440
002064d1add rdx, 1
002064d5and rdx, [rbp+8288]
002064dcmov rax, r14
002064dfmov r11, rdx
002064e2mov ecx, edx
002064e4shr r11, 6
002064e8shl rax, cl
002064eband rax, [rsi+8*r11]
002064efjne 0x2064c0
002064f1
002064f1loc_2064f1:
002064f1mov r10, [r12-8]
002064f6mov rax, r10
002064f9movzx ecx, r10b
002064fdshr rax, 10
00206501cmp r10b, -7
00206505je 0x206630
0020650bmov rsi, r12
0020650emov rdi, rbp
00206511mov [rsp+24], r8
00206516mov [rsp+16], rax
0020651bmov [rsp+8], ecx
0020651fcall fn_203500
00206524mov ecx, [rsp+8]
00206528mov rax, [rsp+16]
0020652dmov r8, [rsp+24]
00206532cmp ecx, 250
00206538lea r13, [r13+rax+1]
0020653dja 0x206440
00206543xor edx, edx
00206545cmp ecx, 247
0020654bjne 0x20655a
0020654dmov rdx, [r12+8]
00206552shl rdx, 8
00206556shr rdx, 9
0020655a
0020655aloc_20655a:
0020655acmp rdx, rax
0020655djae 0x206440
00206563lea r10, [rax-1]
00206567lea rcx, [8*rdx]
0020656fcmp rdx, r10
00206572jae 0x206597
00206574add rbx, 16
00206578cmp rbx, [rbp+4136]
0020657fjae 0x20663c
00206585
00206585loc_206585:
00206585lea rax, [rcx+r12+8]
0020658amov [rbx], rax
0020658dmov rax, r10
00206590sub rax, rdx
00206593mov [rbx+8], rax
00206597
00206597loc_206597:
00206597add rcx, r12
0020659amov r12, [rcx]
0020659djmp 0x206467
002065a2
002065a2 66 0f 1f 44 00 00 f..D..
002065a8
002065a8loc_2065a8:
002065a8lea r12, [rbp+32]
002065accmp rbx, r12
002065afje 0x2065d8
002065b1mov rdi, rbx
002065b4mov [rsp+8], r8
002065b9call caml_stat_free
002065belea rax, [rbp+4128]
002065c5mov r8, [rsp+8]
002065camov [rbp+4128], r12
002065d1mov [rbp+4136], rax
002065d8
002065d8loc_2065d8:
002065d8test [rbp], 1
002065dcjne 0x206618
002065demov rdi, [rbp+8304]
002065e5mov [rsp+8], r8
002065eacmp r8, rdi
002065edje 0x206618
002065efcall caml_stat_free
002065f4mov rdi, [rbp+8312]
002065fbcall caml_stat_free
00206600mov r8, [rsp+8]
00206605mov rax, [rsp+32]
0020660amov [rbp+8304], r8
00206611mov [rbp+8312], rax
00206618
00206618loc_206618:
00206618add rsp, 56
0020661clea rax, [r13+r13+1]
00206621pop rbx
00206622pop rbp
00206623pop r12
00206625pop r13
00206627pop r14
00206629pop r15
0020662bret
0020662c
0020662c 0f 1f 40 00 ..@.
00206630
00206630loc_206630:
00206630shl rax, 3
00206634sub r12, rax
00206637jmp 0x20647a
0020663c
0020663cloc_20663c:
0020663cmov rsi, rbx
0020663fmov rdi, rbp
00206642mov [rsp+40], r8
00206647mov [rsp+24], rcx
0020664cmov [rsp+16], rdx
00206651mov [rsp+8], r10
00206656call fn_203820
0020665bmov r8, [rsp+40]
00206660mov rcx, [rsp+24]
00206665mov rdx, [rsp+16]
0020666amov r10, [rsp+8]
0020666fmov rbx, rax
00206672jmp 0x206585
00206380
00206380caml_obj_reachable_words:
00206380push r15
00206382mov r15, 0x9e3779b97f4a7c16
0020638cpush r14
0020638emov r14l, 1
00206394push r13
00206396xor r13l, r13l
00206399push r12
0020639bmov r12, rdi
0020639epush rbp
0020639fpush rbx
002063a0sub rsp, 56
002063a4call fn_2032b0
002063a9movdqa x0, [rip+0x23d4b]
002063b1lea r8, [rax+4144]
002063b8mov [rax], 0
002063bemov rbp, rax
002063c1lea rax, [rax+4176]
002063c8movups [rax+4104], x0
002063cfpxor x0, x0
002063d3mov [rax-4168], 0
002063demov [rax+4096], 56
002063e8mov [rax+4120], 170
002063f3mov [rax+4128], r8
002063famov [rbp+8312], rax
00206401movups [rbp+4144], x0
00206408mov [rsp+32], rax
0020640dmovups [r8+16], x0
00206412mov rbx, [rbp+4128]
00206419jmp 0x206467
0020641bdb 0x00
0020641cadd bl, ch
0020641edb 0x48
0020641f
0020641f 66 f
00206420 66 2e 0f 1f 84 00 00 00 00 00 66 66 2e 0f 1f 84 f.........ff....
00206430 00 00 00 00 00 66 66 2e 0f 1f 84 00 00 00 00 00 .....ff.........
00206440
00206440loc_206440:
00206440cmp [rbp+4128], rbx
00206447je 0x2065a8
0020644dmov rax, [rbx]
00206450lea rdx, [rax+8]
00206454mov [rbx], rdx
00206457mov r12, [rax]
0020645alea rdx, [rbx-16]
0020645esub [rbx+8], 1
00206463cmove rbx, rdx
00206467
00206467loc_206467:
00206467test r12b, 1
0020646bjne 0x206440
0020646dmov edi, [rbp+8272]
00206473mov rsi, [rbp+8304]
0020647a
0020647aloc_20647a:
0020647amov rdx, r12
0020647dmov ecx, edi
0020647fmov rax, r14
00206482imul rdx, r15
00206486shr rdx, cl
00206489mov r10, rdx
0020648cmov ecx, edx
0020648eshr r10, 6
00206492shl rax, cl
00206495and rax, [rsi+8*r10]
00206499je 0x2064f1
0020649bmov r10, [rbp+8312]
002064a2nop [rax+rax]
002064adnop [rax+rax]
002064b8nop [rax+rax]
002064c0
002064c0loc_2064c0:
002064c0mov rax, rdx
002064c3shl rax, 4
002064c7cmp r12, [r10+rax]
002064cbje 0x206440
002064d1add rdx, 1
002064d5and rdx, [rbp+8288]
002064dcmov rax, r14
002064dfmov r11, rdx
002064e2mov ecx, edx
002064e4shr r11, 6
002064e8shl rax, cl
002064eband rax, [rsi+8*r11]
002064efjne 0x2064c0
002064f1
002064f1loc_2064f1:
002064f1mov r10, [r12-8]
002064f6mov rax, r10
002064f9movzx ecx, r10b
002064fdshr rax, 10
00206501cmp r10b, -7
00206505je 0x206630
0020650bmov rsi, r12
0020650emov rdi, rbp
00206511mov [rsp+24], r8
00206516mov [rsp+16], rax
0020651bmov [rsp+8], ecx
0020651fcall fn_203500
00206524mov ecx, [rsp+8]
00206528mov rax, [rsp+16]
0020652dmov r8, [rsp+24]
00206532cmp ecx, 250
00206538lea r13, [r13+rax+1]
0020653dja 0x206440
00206543xor edx, edx
00206545cmp ecx, 247
0020654bjne 0x20655a
0020654dmov rdx, [r12+8]
00206552shl rdx, 8
00206556shr rdx, 9
0020655a
0020655aloc_20655a:
0020655acmp rdx, rax
0020655djae 0x206440
00206563lea r10, [rax-1]
00206567lea rcx, [8*rdx]
0020656fcmp rdx, r10
00206572jae 0x206597
00206574add rbx, 16
00206578cmp rbx, [rbp+4136]
0020657fjae 0x20663c
00206585
00206585loc_206585:
00206585lea rax, [rcx+r12+8]
0020658amov [rbx], rax
0020658dmov rax, r10
00206590sub rax, rdx
00206593mov [rbx+8], rax
00206597
00206597loc_206597:
00206597add rcx, r12
0020659amov r12, [rcx]
0020659djmp 0x206467
002065a2
002065a2 66 0f 1f 44 00 00 f..D..
002065a8
002065a8loc_2065a8:
002065a8lea r12, [rbp+32]
002065accmp rbx, r12
002065afje 0x2065d8
002065b1mov rdi, rbx
002065b4mov [rsp+8], r8
002065b9call caml_stat_free
002065belea rax, [rbp+4128]
002065c5mov r8, [rsp+8]
002065camov [rbp+4128], r12
002065d1mov [rbp+4136], rax
002065d8
002065d8loc_2065d8:
002065d8test [rbp], 1
002065dcjne 0x206618
002065demov rdi, [rbp+8304]
002065e5mov [rsp+8], r8
002065eacmp r8, rdi
002065edje 0x206618
002065efcall caml_stat_free
002065f4mov rdi, [rbp+8312]
002065fbcall caml_stat_free
00206600mov r8, [rsp+8]
00206605mov rax, [rsp+32]
0020660amov [rbp+8304], r8
00206611mov [rbp+8312], rax
00206618
00206618loc_206618:
00206618add rsp, 56
0020661clea rax, [r13+r13+1]
00206621pop rbx
00206622pop rbp
00206623pop r12
00206625pop r13
00206627pop r14
00206629pop r15
0020662bret
0020662c
0020662c 0f 1f 40 00 ..@.
00206630
00206630loc_206630:
00206630shl rax, 3
00206634sub r12, rax
00206637jmp 0x20647a
0020663c
0020663cloc_20663c:
0020663cmov rsi, rbx
0020663fmov rdi, rbp
00206642mov [rsp+40], r8
00206647mov [rsp+24], rcx
0020664cmov [rsp+16], rdx
00206651mov [rsp+8], r10
00206656call fn_203820
0020665bmov r8, [rsp+40]
00206660mov rcx, [rsp+24]
00206665mov rdx, [rsp+16]
0020666amov r10, [rsp+8]
0020666fmov rbx, rax
00206672jmp 0x206585
00206380
00206677
00206677 // align 0x10
00206677 // align 0x10
00206680
00206680caml_exception_constant:
00206680mov rax, rdi
00206683ret
00206684db 0x48
00206685mov eax, edi
00206687ret
00206680
00206680caml_exception_constant:
00206680mov rax, rdi
00206683ret
00206684db 0x48
00206685mov eax, edi
00206687ret
00206680
00206688
00206688 // align 0x10
00206688 // align 0x10
00206690
00206690caml_exception_with_arg:
00206690push rbp
00206691push rbx
00206692sub rsp, 184
00206699movdqa x0, [rip+0x23a2b]
002066a1mov [rsp+8], rdi
002066a6movq x1, rsp
002066abmov edi, 2
002066b0mov [rsp], rsi
002066b4xor esi, esi
002066b6mov rax, [0x28]
002066bfmov [rsp+168], rax
002066c7mov rax, [rip+0x6f916]
002066cemov rbx, [rax]
002066d2lea rax, [rsp+8]
002066d7movups [rsp+40], x0
002066dcmov [rsp+24], 1
002066e5movq x0, rax
002066ealea rax, [rsp+32]
002066efmov [rsp+96], rax
002066f4lea rax, [rsp+96]
002066f9mov rbp, [rbx+160]
00206700punpcklqdq x0, x1
00206704mov [rbx+160], rax
0020670bmov eax, 1
00206710movups [rsp+56], x0
00206715movq x0, rax
0020671alea rax, [rsp+24]
0020671fpunpcklqdq x0, x0
00206723mov [rsp+32], rbp
00206728mov [rsp+120], rax
0020672dmovups [rsp+104], x0
00206732call caml_alloc_small
00206737mov rdx, [rsp+8]
0020673cmov [rsp+24], rax
00206741mov [rax], rdx
00206744mov rax, [rsp+24]
00206749mov rdx, [rsp]
0020674dmov [rax+8], rdx
00206751mov rax, [rsp+24]
00206756mov [rbx+160], rbp
0020675dmov rdx, [rsp+168]
00206765sub rdx, [0x28]
0020676ejne 0x20677e
00206770add rsp, 184
00206777pop rbx
00206778pop rbp
00206779ret
0020677acall fn_f4590
0020677fdb 0x0d
00206780fsubp f6
00206782db 0xff
00206690
00206690caml_exception_with_arg:
00206690push rbp
00206691push rbx
00206692sub rsp, 184
00206699movdqa x0, [rip+0x23a2b]
002066a1mov [rsp+8], rdi
002066a6movq x1, rsp
002066abmov edi, 2
002066b0mov [rsp], rsi
002066b4xor esi, esi
002066b6mov rax, [0x28]
002066bfmov [rsp+168], rax
002066c7mov rax, [rip+0x6f916]
002066cemov rbx, [rax]
002066d2lea rax, [rsp+8]
002066d7movups [rsp+40], x0
002066dcmov [rsp+24], 1
002066e5movq x0, rax
002066ealea rax, [rsp+32]
002066efmov [rsp+96], rax
002066f4lea rax, [rsp+96]
002066f9mov rbp, [rbx+160]
00206700punpcklqdq x0, x1
00206704mov [rbx+160], rax
0020670bmov eax, 1
00206710movups [rsp+56], x0
00206715movq x0, rax
0020671alea rax, [rsp+24]
0020671fpunpcklqdq x0, x0
00206723mov [rsp+32], rbp
00206728mov [rsp+120], rax
0020672dmovups [rsp+104], x0
00206732call caml_alloc_small
00206737mov rdx, [rsp+8]
0020673cmov [rsp+24], rax
00206741mov [rax], rdx
00206744mov rax, [rsp+24]
00206749mov rdx, [rsp]
0020674dmov [rax+8], rdx
00206751mov rax, [rsp+24]
00206756mov [rbx+160], rbp
0020675dmov rdx, [rsp+168]
00206765sub rdx, [0x28]
0020676ejne 0x20677e
00206770add rsp, 184
00206777pop rbx
00206778pop rbp
00206779ret
0020677acall fn_f4590
0020677fdb 0x0d
00206780fsubp f6
00206782db 0xff
00206690
00206783
00206783 // align 0x20
00206783 // align 0x20
002067a0
002067a0caml_exception_with_args:
002067a0push r14
002067a2movsxd r14, esi
002067a5xor esi, esi
002067a7push r13
002067a9push r12
002067abpush rbp
002067acpush rbx
002067adsub rsp, 160
002067b4mov rax, [rip+0x6f829]
002067bbmov [rsp+8], rdi
002067c0lea edi, [r14+1]
002067c4movsxd rdi, edi
002067c7mov rbx, [0x28]
002067d0mov [rsp+152], rbx
002067d8mov rbx, rdx
002067dbmov r12, [rax]
002067dfmov eax, 1
002067e4mov [rsp+104], rdx
002067e9movq x0, rax
002067eelea rax, [rsp+8]
002067f3mov [rsp+96], r14
002067f8mov [rsp+40], rax
002067fdlea rax, [rsp+16]
00206802mov r13, [r12+160]
0020680apunpcklqdq x0, x0
0020680emov [rsp+80], rax
00206813lea rax, [rsp+80]
00206818mov [r12+160], rax
00206820mov [rsp+16], r13
00206825mov [rsp+88], 1
0020682emovups [rsp+24], x0
00206833call caml_alloc_small
00206838mov rdx, [rsp+8]
0020683dmov [rax], rdx
00206840test r14l, r14l
00206843jle 0x206872
00206845sub rbx, rax
00206848lea rdx, [rax+8]
0020684clea rdi, [rax+8*r14+8]
00206851mov rsi, rbx
00206854nop [rax+rax]
0020685cmov rcx, [rsi+rdx-8]
00206861add rdx, 8
00206865mov [rdx-8], rcx
00206869cmp rdx, rdi
0020686cjne 0x206860
0020686emov [r12+160], r13
00206876mov rdx, [rsp+152]
0020687esub rdx, [0x28]
00206887jne 0x20689d
00206889add rsp, 160
00206890pop rbx
00206891pop rbp
00206892pop r12
00206894pop r13
00206896pop r14
00206898ret
00206899call fn_f4590
0020689edb 0xee
0020689ffsub f6, f0
002068a1db 0xff
002067a0
002067a0caml_exception_with_args:
002067a0push r14
002067a2movsxd r14, esi
002067a5xor esi, esi
002067a7push r13
002067a9push r12
002067abpush rbp
002067acpush rbx
002067adsub rsp, 160
002067b4mov rax, [rip+0x6f829]
002067bbmov [rsp+8], rdi
002067c0lea edi, [r14+1]
002067c4movsxd rdi, edi
002067c7mov rbx, [0x28]
002067d0mov [rsp+152], rbx
002067d8mov rbx, rdx
002067dbmov r12, [rax]
002067dfmov eax, 1
002067e4mov [rsp+104], rdx
002067e9movq x0, rax
002067eelea rax, [rsp+8]
002067f3mov [rsp+96], r14
002067f8mov [rsp+40], rax
002067fdlea rax, [rsp+16]
00206802mov r13, [r12+160]
0020680apunpcklqdq x0, x0
0020680emov [rsp+80], rax
00206813lea rax, [rsp+80]
00206818mov [r12+160], rax
00206820mov [rsp+16], r13
00206825mov [rsp+88], 1
0020682emovups [rsp+24], x0
00206833call caml_alloc_small
00206838mov rdx, [rsp+8]
0020683dmov [rax], rdx
00206840test r14l, r14l
00206843jle 0x206872
00206845sub rbx, rax
00206848lea rdx, [rax+8]
0020684clea rdi, [rax+8*r14+8]
00206851mov rsi, rbx
00206854nop [rax+rax]
0020685cmov rcx, [rsi+rdx-8]
00206861add rdx, 8
00206865mov [rdx-8], rcx
00206869cmp rdx, rdi
0020686cjne 0x206860
0020686emov [r12+160], r13
00206876mov rdx, [rsp+152]
0020687esub rdx, [0x28]
00206887jne 0x20689d
00206889add rsp, 160
00206890pop rbx
00206891pop rbp
00206892pop r12
00206894pop r13
00206896pop r14
00206898ret
00206899call fn_f4590
0020689edb 0xee
0020689ffsub f6, f0
002068a1db 0xff
002067a0
002068a2
002068a2 // align 0x10
002068a2 // align 0x10
002068b0
002068b0caml_exception_with_string:
002068b0push rbp
002068b1push rbx
002068b2sub rsp, 104
002068b6mov rax, [rip+0x6f727]
002068bdmov [rsp+8], rdi
002068c2mov rdi, [0x28]
002068cbmov [rsp+88], rdi
002068d0mov rdi, rsi
002068d3mov rbx, [rax]
002068d7lea rax, [rsp+16]
002068dcmov rbp, [rbx+160]
002068e3mov [rbx+160], rax
002068eamov eax, 1
002068efmovq x0, rax
002068f4lea rax, [rsp+8]
002068f9punpcklqdq x0, x0
002068fdmov [rsp+16], rbp
00206902movups [rsp+24], x0
00206907mov [rsp+40], rax
0020690ccall caml_copy_string
00206911mov rdi, [rsp+8]
00206916mov rsi, rax
00206919call caml_exception_with_arg
0020691emov [rbx+160], rbp
00206925mov rdx, [rsp+88]
0020692asub rdx, [0x28]
00206933jne 0x206940
00206935add rsp, 104
00206939pop rbx
0020693apop rbp
0020693bret
0020693ccall fn_f4590
00206941db 0x4b
00206942fsub f6, f0
00206944db 0xff
002068b0
002068b0caml_exception_with_string:
002068b0push rbp
002068b1push rbx
002068b2sub rsp, 104
002068b6mov rax, [rip+0x6f727]
002068bdmov [rsp+8], rdi
002068c2mov rdi, [0x28]
002068cbmov [rsp+88], rdi
002068d0mov rdi, rsi
002068d3mov rbx, [rax]
002068d7lea rax, [rsp+16]
002068dcmov rbp, [rbx+160]
002068e3mov [rbx+160], rax
002068eamov eax, 1
002068efmovq x0, rax
002068f4lea rax, [rsp+8]
002068f9punpcklqdq x0, x0
002068fdmov [rsp+16], rbp
00206902movups [rsp+24], x0
00206907mov [rsp+40], rax
0020690ccall caml_copy_string
00206911mov rdi, [rsp+8]
00206916mov rsi, rax
00206919call caml_exception_with_arg
0020691emov [rbx+160], rbp
00206925mov rdx, [rsp+88]
0020692asub rdx, [0x28]
00206933jne 0x206940
00206935add rsp, 104
00206939pop rbx
0020693apop rbp
0020693bret
0020693ccall fn_f4590
00206941db 0x4b
00206942fsub f6, f0
00206944db 0xff
002068b0
00206945
00206945 // align 0x10
00206945 // align 0x10
00206950
00206950caml_raise_constant:
00206950push rax
00206951pop rax
00206952sub rsp, 8
00206956call caml_raise
0020695bdb 0x41
0020695cdb 0xf7
0020695dadd [rax], eax
00206950
00206950caml_raise_constant:
00206950push rax
00206951pop rax
00206952sub rsp, 8
00206956call caml_raise
0020695bdb 0x41
0020695cdb 0xf7
0020695dadd [rax], eax
00206950
0020695f
0020695f // align 0x10
0020695f // align 0x10
00206960
00206960caml_raise_with_arg:
00206960push rax
00206961pop rax
00206962sub rsp, 8
00206966call caml_exception_with_arg
0020696bmov rdi, rax
0020696ecall caml_raise
00206973db 0x29
00206974db 0xf7
00206975add [rax], eax
00206960
00206960caml_raise_with_arg:
00206960push rax
00206961pop rax
00206962sub rsp, 8
00206966call caml_exception_with_arg
0020696bmov rdi, rax
0020696ecall caml_raise
00206973db 0x29
00206974db 0xf7
00206975add [rax], eax
00206960
00206977
00206977 // align 0x10
00206977 // align 0x10
00206980
00206980caml_raise_with_args:
00206980push rax
00206981pop rax
00206982sub rsp, 8
00206986call caml_exception_with_args
0020698bmov rdi, rax
0020698ecall caml_raise
00206993db 0x09
00206994db 0xf7
00206995add [rax], eax
00206980
00206980caml_raise_with_args:
00206980push rax
00206981pop rax
00206982sub rsp, 8
00206986call caml_exception_with_args
0020698bmov rdi, rax
0020698ecall caml_raise
00206993db 0x09
00206994db 0xf7
00206995add [rax], eax
00206980
00206997
00206997 // align 0x10
00206997 // align 0x10
002069a0
002069a0caml_raise_with_string:
002069a0push rax
002069a1pop rax
002069a2sub rsp, 8
002069a6call caml_exception_with_string
002069abmov rdi, rax
002069aecall caml_raise
002069b3db 0xe9
002069b4test [rcx], 0
002069a0
002069a0caml_raise_with_string:
002069a0push rax
002069a1pop rax
002069a2sub rsp, 8
002069a6call caml_exception_with_string
002069abmov rdi, rax
002069aecall caml_raise
002069b3db 0xe9
002069b4test [rcx], 0
002069a0
002069b7
002069b7 // align 0x10
002069b7 // align 0x10
002069c0
002069c0caml_failwith:
002069c0push rax
002069c1pop rax
002069c2sub rsp, 8
002069c6call caml_exception_failure
002069cbmov rdi, rax
002069cecall caml_raise
002069d3db 0xc9
002069d4test [rcx], 0
002069c0
002069c0caml_failwith:
002069c0push rax
002069c1pop rax
002069c2sub rsp, 8
002069c6call caml_exception_failure
002069cbmov rdi, rax
002069cecall caml_raise
002069d3db 0xc9
002069d4test [rcx], 0
002069c0
002069d7
002069d7 // align 0x10
002069d7 // align 0x10
002069e0
002069e0caml_failwith_value:
002069e0push rax
002069e1pop rax
002069e2sub rsp, 8
002069e6call caml_exception_failure_value
002069ebmov rdi, rax
002069eecall caml_raise
002069f3db 0xa9
002069f4test [rcx], 0
002069e0
002069e0caml_failwith_value:
002069e0push rax
002069e1pop rax
002069e2sub rsp, 8
002069e6call caml_exception_failure_value
002069ebmov rdi, rax
002069eecall caml_raise
002069f3db 0xa9
002069f4test [rcx], 0
002069e0
002069f7
002069f7 // align 0x10
002069f7 // align 0x10
00206a00
00206a00caml_invalid_argument:
00206a00push rax
00206a01pop rax
00206a02sub rsp, 8
00206a06call caml_exception_invalid_argument
00206a0bmov rdi, rax
00206a0ecall caml_raise
00206a13db 0x89
00206a14test [rcx], 0
00206a00
00206a00caml_invalid_argument:
00206a00push rax
00206a01pop rax
00206a02sub rsp, 8
00206a06call caml_exception_invalid_argument
00206a0bmov rdi, rax
00206a0ecall caml_raise
00206a13db 0x89
00206a14test [rcx], 0
00206a00
00206a17
00206a17 // align 0x10
00206a17 // align 0x10
00206a20
00206a20caml_invalid_argument_value:
00206a20push rax
00206a21pop rax
00206a22sub rsp, 8
00206a26call caml_exception_invalid_argument_value
00206a2bmov rdi, rax
00206a2ecall caml_raise
00206a33db 0x69
00206a34test [rcx], 0
00206a20
00206a20caml_invalid_argument_value:
00206a20push rax
00206a21pop rax
00206a22sub rsp, 8
00206a26call caml_exception_invalid_argument_value
00206a2bmov rdi, rax
00206a2ecall caml_raise
00206a33db 0x69
00206a34test [rcx], 0
00206a20
00206a37
00206a37 // align 0x10
00206a37 // align 0x10
00206a40
00206a40caml_raise_out_of_memory:
00206a40push rax
00206a41pop rax
00206a42sub rsp, 8
00206a46call caml_exception_out_of_memory
00206a4bmov rdi, rax
00206a4ecall caml_raise
00206a53db 0x49
00206a54test [rcx], 0
00206a40
00206a40caml_raise_out_of_memory:
00206a40push rax
00206a41pop rax
00206a42sub rsp, 8
00206a46call caml_exception_out_of_memory
00206a4bmov rdi, rax
00206a4ecall caml_raise
00206a53db 0x49
00206a54test [rcx], 0
00206a40
00206a57
00206a57 // align 0x10
00206a57 // align 0x10
00206a60
00206a60caml_raise_stack_overflow:
00206a60push rax
00206a61pop rax
00206a62sub rsp, 8
00206a66call caml_exception_stack_overflow
00206a6bmov rdi, rax
00206a6ecall caml_raise
00206a73db 0x29
00206a74test [rcx], 0
00206a60
00206a60caml_raise_stack_overflow:
00206a60push rax
00206a61pop rax
00206a62sub rsp, 8
00206a66call caml_exception_stack_overflow
00206a6bmov rdi, rax
00206a6ecall caml_raise
00206a73db 0x29
00206a74test [rcx], 0
00206a60
00206a77
00206a77 // align 0x10
00206a77 // align 0x10
00206a80
00206a80caml_raise_sys_error:
00206a80push rax
00206a81pop rax
00206a82sub rsp, 8
00206a86call caml_exception_sys_error
00206a8bmov rdi, rax
00206a8ecall caml_raise
00206a93db 0x09
00206a94test [rcx], 0
00206a80
00206a80caml_raise_sys_error:
00206a80push rax
00206a81pop rax
00206a82sub rsp, 8
00206a86call caml_exception_sys_error
00206a8bmov rdi, rax
00206a8ecall caml_raise
00206a93db 0x09
00206a94test [rcx], 0
00206a80
00206a97
00206a97 // align 0x10
00206a97 // align 0x10
00206aa0
00206aa0caml_raise_end_of_file:
00206aa0push rax
00206aa1pop rax
00206aa2sub rsp, 8
00206aa6call caml_exception_end_of_file
00206aabmov rdi, rax
00206aaecall caml_raise
00206ab3db 0xe9
00206ab4cmc
00206ab5add [rax], eax
00206aa0
00206aa0caml_raise_end_of_file:
00206aa0push rax
00206aa1pop rax
00206aa2sub rsp, 8
00206aa6call caml_exception_end_of_file
00206aabmov rdi, rax
00206aaecall caml_raise
00206ab3db 0xe9
00206ab4cmc
00206ab5add [rax], eax
00206aa0
00206ab7
00206ab7 // align 0x10
00206ab7 // align 0x10
00206ac0
00206ac0caml_raise_zero_divide:
00206ac0push rax
00206ac1pop rax
00206ac2sub rsp, 8
00206ac6call caml_exception_zero_divide
00206acbmov rdi, rax
00206acecall caml_raise
00206ad3db 0xc9
00206ad4cmc
00206ad5add [rax], eax
00206ac0
00206ac0caml_raise_zero_divide:
00206ac0push rax
00206ac1pop rax
00206ac2sub rsp, 8
00206ac6call caml_exception_zero_divide
00206acbmov rdi, rax
00206acecall caml_raise
00206ad3db 0xc9
00206ad4cmc
00206ad5add [rax], eax
00206ac0
00206ad7
00206ad7 // align 0x10
00206ad7 // align 0x10
00206ae0
00206ae0caml_raise_not_found:
00206ae0push rax
00206ae1pop rax
00206ae2sub rsp, 8
00206ae6call caml_exception_not_found
00206aebmov rdi, rax
00206aeecall caml_raise
00206af3db 0xa9
00206af4cmc
00206af5add [rax], eax
00206ae0
00206ae0caml_raise_not_found:
00206ae0push rax
00206ae1pop rax
00206ae2sub rsp, 8
00206ae6call caml_exception_not_found
00206aebmov rdi, rax
00206aeecall caml_raise
00206af3db 0xa9
00206af4cmc
00206af5add [rax], eax
00206ae0
00206af7
00206af7 // align 0x10
00206af7 // align 0x10
00206b00
00206b00caml_array_bound_error:
00206b00push rax
00206b01pop rax
00206b02sub rsp, 8
00206b06call caml_exception_array_bound_error
00206b0bmov rdi, rax
00206b0ecall caml_raise
00206b13db 0x89
00206b14cmc
00206b15add [rax], eax
00206b00
00206b00caml_array_bound_error:
00206b00push rax
00206b01pop rax
00206b02sub rsp, 8
00206b06call caml_exception_array_bound_error
00206b0bmov rdi, rax
00206b0ecall caml_raise
00206b13db 0x89
00206b14cmc
00206b15add [rax], eax
00206b00
00206b17
00206b17 // align 0x10
00206b17 // align 0x10
00206b20
00206b20caml_raise_sys_blocked_io:
00206b20push rax
00206b21pop rax
00206b22sub rsp, 8
00206b26call caml_exception_sys_blocked_io
00206b2bmov rdi, rax
00206b2ecall caml_raise
00206b33db 0x69
00206b34cmc
00206b35add [rax], eax
00206b20
00206b20caml_raise_sys_blocked_io:
00206b20push rax
00206b21pop rax
00206b22sub rsp, 8
00206b26call caml_exception_sys_blocked_io
00206b2bmov rdi, rax
00206b2ecall caml_raise
00206b33db 0x69
00206b34cmc
00206b35add [rax], eax
00206b20
00206b37
00206b37 // align 0x10
00206b37 // align 0x10
00206b40
00206b40fn_206b40:
00206b40push r15
00206b42mov r15, r9
00206b45push r14
00206b47mov r14, r8
00206b4apush r13
00206b4cmov r13, rcx
00206b4fpush r12
00206b51mov r12, rdx
00206b54push rbp
00206b55push rbx
00206b56mov ebx, esi
00206b58sub rsp, 8
00206b5ccmp esi, -1
00206b5fje 0x206bc0
00206b61mov rax, [rip+0x6f480]
00206b68mov rdx, [rax]
00206b6cmovsxd rax, esi
00206b6fmov rdx, [rdx+72]
00206b73lea rdx, [rdx+8*rax]
00206b77mov rax, [rdx]
00206b7atest rax, rax
00206b7dje 0x206bc0
00206b7fmov rcx, [rax+8]
00206b83mov [rdx], rcx
00206b86mov rdx, [rax+16]
00206b8a
00206b8aloc_206b8a:
00206b8amov [rdx], r12
00206b8dmov [rdx+8], r13
00206b91mov [rdx+16], r14
00206b95mov [rdx+24], 0
00206b9dmov [rax], rdx
00206ba0mov [rax+8], 0
00206ba8mov [rax+48], r15
00206bac
00206bacloc_206bac:
00206bacadd rsp, 8
00206bb0pop rbx
00206bb1pop rbp
00206bb2pop r12
00206bb4pop r13
00206bb6pop r14
00206bb8pop r15
00206bbaret
00206bbb
00206bbb 0f 1f 44 00 00 ..D..
00206bc0
00206bc0loc_206bc0:
00206bc0lea rbp, [8*rdi]
00206bc8lea rdi, [rbp+103]
00206bcccall caml_stat_alloc_noexc
00206bd1test rax, rax
00206bd4je 0x206bac
00206bd6lea rdx, [rax+rbp+71]
00206bdbmov [rax+24], ebx
00206bdeand rdx, -16
00206be2mov [rax+16], rdx
00206be6jmp 0x206b8a
00206b40
00206b40fn_206b40:
00206b40push r15
00206b42mov r15, r9
00206b45push r14
00206b47mov r14, r8
00206b4apush r13
00206b4cmov r13, rcx
00206b4fpush r12
00206b51mov r12, rdx
00206b54push rbp
00206b55push rbx
00206b56mov ebx, esi
00206b58sub rsp, 8
00206b5ccmp esi, -1
00206b5fje 0x206bc0
00206b61mov rax, [rip+0x6f480]
00206b68mov rdx, [rax]
00206b6cmovsxd rax, esi
00206b6fmov rdx, [rdx+72]
00206b73lea rdx, [rdx+8*rax]
00206b77mov rax, [rdx]
00206b7atest rax, rax
00206b7dje 0x206bc0
00206b7fmov rcx, [rax+8]
00206b83mov [rdx], rcx
00206b86mov rdx, [rax+16]
00206b8a
00206b8aloc_206b8a:
00206b8amov [rdx], r12
00206b8dmov [rdx+8], r13
00206b91mov [rdx+16], r14
00206b95mov [rdx+24], 0
00206b9dmov [rax], rdx
00206ba0mov [rax+8], 0
00206ba8mov [rax+48], r15
00206bac
00206bacloc_206bac:
00206bacadd rsp, 8
00206bb0pop rbx
00206bb1pop rbp
00206bb2pop r12
00206bb4pop r13
00206bb6pop r14
00206bb8pop r15
00206bbaret
00206bbb
00206bbb 0f 1f 44 00 00 ..D..
00206bc0
00206bc0loc_206bc0:
00206bc0lea rbp, [8*rdi]
00206bc8lea rdi, [rbp+103]
00206bcccall caml_stat_alloc_noexc
00206bd1test rax, rax
00206bd4je 0x206bac
00206bd6lea rdx, [rax+rbp+71]
00206bdbmov [rax+24], ebx
00206bdeand rdx, -16
00206be2mov [rax+16], rdx
00206be6jmp 0x206b8a
00206b40
00206be8
00206be8 // align 0x10
00206be8 // align 0x10
00206bf0
00206bf0fn_206bf0:
00206bf0push rax
00206bf1pop rax
00206bf2lea rdx, [rip+0x28278]
00206bf9mov esi, 1
00206bfexor eax, eax
00206c00sub rsp, 8
00206c04mov rcx, rdi
00206c07mov rdi, [rip+0x1718d2]
00206c0ecall fn_f41b0
00206c13mov edi, 2
00206c18call fn_f4210
00206bf0
00206bf0fn_206bf0:
00206bf0push rax
00206bf1pop rax
00206bf2lea rdx, [rip+0x28278]
00206bf9mov esi, 1
00206bfexor eax, eax
00206c00sub rsp, 8
00206c04mov rcx, rdi
00206c07mov rdi, [rip+0x1718d2]
00206c0ecall fn_f41b0
00206c13mov edi, 2
00206c18call fn_f4210
00206bf0
00206c1d
00206c1d // align 0x10
00206c1d // align 0x10
00206c20
00206c20caml_get_init_stack_wsize:
00206c20mov eax, 4096
00206c25mov rdx, [rip+0x171b38]
00206c2ccmp rdx, 4096
00206c33jbe 0x206c40
00206c35ret
00206c36db 0x00
00206c37jbe 0x206c40
00206c39ret
00206c3a
00206c3a 66 0f 1f 44 00 00 f..D..
00206c40
00206c40loc_206c40:
00206c40mov rax, [rip+0x171b21]
00206c47ret
00206c20
00206c20caml_get_init_stack_wsize:
00206c20mov eax, 4096
00206c25mov rdx, [rip+0x171b38]
00206c2ccmp rdx, 4096
00206c33jbe 0x206c40
00206c35ret
00206c36db 0x00
00206c37jbe 0x206c40
00206c39ret
00206c3a
00206c3a 66 0f 1f 44 00 00 f..D..
00206c40
00206c40loc_206c40:
00206c40mov rax, [rip+0x171b21]
00206c47ret
00206c20
00206c48
00206c48 // align 0x10
00206c48 // align 0x10
00206c50
00206c50caml_change_max_stack_size:
00206c50mov rax, [rip+0x6f38d]
00206c57push rbx
00206c58mov rax, [rax]
00206c5cmov rax, [rax+40]
00206c60mov rbx, [rax+16]
00206c64sub rbx, [rax]
00206c67sar rbx, 3
00206c6badd rbx, 32
00206c6fcmp rbx, rdi
00206c72mov rax, [rip+0x171aeb]
00206c79cmovb rbx, rdi
00206c7dcmp rax, rbx
00206c80je 0x206ca0
00206c82lea rsi, [8*rbx]
00206c8alea rdi, [rip+0x296bb]
00206c91xor eax, eax
00206c93shr rsi, 10
00206c97call caml_gc_log
00206c9cxchg [rip+0x171ac1], rbx
00206ca3pop rbx
00206ca4ret
00206ca5db 0x17
00206ca6add [rbx-61], bl
00206c50
00206c50caml_change_max_stack_size:
00206c50mov rax, [rip+0x6f38d]
00206c57push rbx
00206c58mov rax, [rax]
00206c5cmov rax, [rax+40]
00206c60mov rbx, [rax+16]
00206c64sub rbx, [rax]
00206c67sar rbx, 3
00206c6badd rbx, 32
00206c6fcmp rbx, rdi
00206c72mov rax, [rip+0x171aeb]
00206c79cmovb rbx, rdi
00206c7dcmp rax, rbx
00206c80je 0x206ca0
00206c82lea rsi, [8*rbx]
00206c8alea rdi, [rip+0x296bb]
00206c91xor eax, eax
00206c93shr rsi, 10
00206c97call caml_gc_log
00206c9cxchg [rip+0x171ac1], rbx
00206ca3pop rbx
00206ca4ret
00206ca5db 0x17
00206ca6add [rbx-61], bl
00206c50
00206ca9
00206ca9 // align 0x10
00206ca9 // align 0x10
00206cb0
00206cb0caml_alloc_stack_cache:
00206cb0sub rsp, 8
00206cb4mov edi, 40
00206cb9call caml_stat_alloc_noexc
00206cbetest rax, rax
00206cc1je 0x206cda
00206cc3mov [rax+32], 0
00206ccbpxor x0, x0
00206ccfmovups [rax], x0
00206cd2movups [rax+16], x0
00206cd6add rsp, 8
00206cda
00206cdaloc_206cda:
00206cdaret
00206cdbdb 0x83
00206cdcdb 0xc4
00206cddor bl, al
00206cb0
00206cb0caml_alloc_stack_cache:
00206cb0sub rsp, 8
00206cb4mov edi, 40
00206cb9call caml_stat_alloc_noexc
00206cbetest rax, rax
00206cc1je 0x206cda
00206cc3mov [rax+32], 0
00206ccbpxor x0, x0
00206ccfmovups [rax], x0
00206cd2movups [rax+16], x0
00206cd6add rsp, 8
00206cda
00206cdaloc_206cda:
00206cdaret
00206cdbdb 0x83
00206cdcdb 0xc4
00206cddor bl, al
00206cb0
00206cdf
00206cdf // align 0x10
00206cdf // align 0x10
00206ce0
00206ce0caml_alloc_stack_noexc:
00206ce0mov rax, [rip+0x171a75]
00206ce7mov r10, rsi
00206ceamov r9, r8
00206cedxor esi, esi
00206cefcmp rdi, rax
00206cf2je 0x206d08
00206cf4add esi, 1
00206cf7add rax, rax
00206cfacmp esi, 5
00206cfdjne 0x206cf3
00206cffmov esi, -1
00206d04mov r8, rcx
00206d07mov rcx, rdx
00206d0amov rdx, r10
00206d0djmp 0x206b40
00206d12db 0x2a
00206d13db 0xfe
00206d14db 0xff
00206d15db 0xff
00206ce0
00206ce0caml_alloc_stack_noexc:
00206ce0mov rax, [rip+0x171a75]
00206ce7mov r10, rsi
00206ceamov r9, r8
00206cedxor esi, esi
00206cefcmp rdi, rax
00206cf2je 0x206d08
00206cf4add esi, 1
00206cf7add rax, rax
00206cfacmp esi, 5
00206cfdjne 0x206cf3
00206cffmov esi, -1
00206d04mov r8, rcx
00206d07mov rcx, rdx
00206d0amov rdx, r10
00206d0djmp 0x206b40
00206d12db 0x2a
00206d13db 0xfe
00206d14db 0xff
00206d15db 0xff
00206ce0
00206d16
00206d16 // align 0x10
00206d16 // align 0x10
00206d20
00206d20caml_alloc_stack:
00206d20push r14
00206d22push r13
00206d24mov r13l, 1
00206d2apush r12
00206d2cmov r12, rsi
00206d2fpush rbp
00206d30mov rbp, rdi
00206d33push rbx
00206d34mov rbx, rdx
00206d37lock xadd [rip+0x171a0c], r13
00206d40mov rax, [rip+0x6f29d]
00206d47mov rax, [rax]
00206d4bmov rdx, [rax+72]
00206d4fmov rax, [rdx]
00206d52test rax, rax
00206d55je 0x206da0
00206d57mov rcx, [rax+8]
00206d5bmov [rdx], rcx
00206d5emov rdx, [rax+16]
00206d62mov [rdx], rbp
00206d65add rax, 1
00206d69mov [rdx+8], r12
00206d6dmov [rdx+16], rbx
00206d71mov [rdx+24], 0
00206d79mov [rax-1], rdx
00206d7dmov [rax+7], 0
00206d85mov [rax+47], r13
00206d89pop rbx
00206d8apop rbp
00206d8bpop r12
00206d8dpop r13
00206d8fpop r14
00206d91ret
00206d92db 0x5d
00206d93pop r14
00206d95ret
00206d96
00206d96 66 2e 0f 1f 84 00 00 00 00 00 f.........
00206da0
00206da0loc_206da0:
00206da0mov rax, [rip+0x1719b9]
00206da7lea r14, [8*rax]
00206daflea rdi, [r14+103]
00206db3call caml_stat_alloc_noexc
00206db8test rax, rax
00206dbbje 0x206dd8
00206dbdlea rdx, [rax+r14+71]
00206dc2mov [rax+24], 0
00206dc9and rdx, -16
00206dcdmov [rax+16], rdx
00206dd1jmp 0x206d66
00206dd3
00206dd3 0f 1f 44 00 00 ..D..
00206dd8
00206dd8loc_206dd8:
00206dd8call caml_raise_out_of_memory
00206d20
00206d20caml_alloc_stack:
00206d20push r14
00206d22push r13
00206d24mov r13l, 1
00206d2apush r12
00206d2cmov r12, rsi
00206d2fpush rbp
00206d30mov rbp, rdi
00206d33push rbx
00206d34mov rbx, rdx
00206d37lock xadd [rip+0x171a0c], r13
00206d40mov rax, [rip+0x6f29d]
00206d47mov rax, [rax]
00206d4bmov rdx, [rax+72]
00206d4fmov rax, [rdx]
00206d52test rax, rax
00206d55je 0x206da0
00206d57mov rcx, [rax+8]
00206d5bmov [rdx], rcx
00206d5emov rdx, [rax+16]
00206d62mov [rdx], rbp
00206d65add rax, 1
00206d69mov [rdx+8], r12
00206d6dmov [rdx+16], rbx
00206d71mov [rdx+24], 0
00206d79mov [rax-1], rdx
00206d7dmov [rax+7], 0
00206d85mov [rax+47], r13
00206d89pop rbx
00206d8apop rbp
00206d8bpop r12
00206d8dpop r13
00206d8fpop r14
00206d91ret
00206d92db 0x5d
00206d93pop r14
00206d95ret
00206d96
00206d96 66 2e 0f 1f 84 00 00 00 00 00 f.........
00206da0
00206da0loc_206da0:
00206da0mov rax, [rip+0x1719b9]
00206da7lea r14, [8*rax]
00206daflea rdi, [r14+103]
00206db3call caml_stat_alloc_noexc
00206db8test rax, rax
00206dbbje 0x206dd8
00206dbdlea rdx, [rax+r14+71]
00206dc2mov [rax+24], 0
00206dc9and rdx, -16
00206dcdmov [rax+16], rdx
00206dd1jmp 0x206d66
00206dd3
00206dd3 0f 1f 44 00 00 ..D..
00206dd8
00206dd8loc_206dd8:
00206dd8call caml_raise_out_of_memory
00206d20
00206ddd
00206ddd // align 0x10
00206ddd // align 0x10
00206de0
00206de0caml_get_stack_sp_pc:
00206de0mov rax, [rdi]
00206de3mov rcx, [rax]
00206de6add rax, 8
00206deamov [rdx], rcx
00206dedmov [rsi], rax
00206df0ret
00206df1db 0x48
00206df2mov [rsi], eax
00206df4ret
00206de0
00206de0caml_get_stack_sp_pc:
00206de0mov rax, [rdi]
00206de3mov rcx, [rax]
00206de6add rax, 8
00206deamov [rdx], rcx
00206dedmov [rsi], rax
00206df0ret
00206df1db 0x48
00206df2mov [rsi], eax
00206df4ret
00206de0
00206df5
00206df5 // align 0x10
00206df5 // align 0x10
00206e00
00206e00caml_scan_stack:
00206e00push r15
00206e02push r14
00206e04push r13
00206e06push r12
00206e08push rbp
00206e09push rbx
00206e0asub rsp, 40
00206e0emov [rsp], rdx
00206e12mov [rsp+16], rcx
00206e17mov [rsp+24], r8
00206e1ctest rcx, rcx
00206e1fje 0x206f43
00206e25mov r14, rdi
00206e28call caml_get_frame_descrs
00206e2dmov [rsp+8], rax
00206e32mov rax, [rsp+16]
00206e37mov rdx, [rax]
00206e3acmp rdx, [rax+16]
00206e3eje 0x206ef7
00206e44mov r12, [rsp+24]
00206e49nop [rax]
00206e4cmov rsi, [rdx]
00206e4flea rbx, [rdx+8]
00206e53nop [rax+rax]
00206e5cmov rdi, [rsp+8]
00206e61call caml_find_frame_descr
00206e66movzx edx, [rax+8]
00206e6amov r15, rax
00206e6dcmp dx, -1
00206e71je 0x206ee0
00206e73movzx esi, [rax+10]
00206e77lea r13, [rax+12]
00206e7btest si, si
00206e7eje 0x206ecd
00206e80lea rbp, [rax+2*rsi+12]
00206e85jmp 0x206eb4
00206e87db 0x70
00206e88or al, 235
00206e8adb 0x29
00206e8b
00206e8b 0f 1f 44 00 00 ..D..
00206e90
00206e90loc_206e90:
00206e90lea rdx, [4*rdx]
00206e98and edx, 0x3fff8
00206e9eadd rdx, r12
00206ea1
00206ea1loc_206ea1:
00206ea1add r13, 2
00206ea5mov rsi, [rdx]
00206ea8mov rdi, [rsp]
00206eaccall r14
00206eafcmp rbp, r13
00206eb2je 0x206ec8
00206eb4
00206eb4loc_206eb4:
00206eb4movzx edx, [r13]
00206eb9test dl, 1
00206ebcjne 0x206e90
00206ebeadd rdx, rbx
00206ec1jmp 0x206ea1
00206ec3
00206ec3 0f 1f 44 00 00 ..D..
00206ec8
00206ec8loc_206ec8:
00206ec8movzx edx, [r15+8]
00206ecd
00206ecdloc_206ecd:
00206ecdand edx, 65532
00206ed3add rbx, rdx
00206ed6mov rsi, [rbx-8]
00206edajmp 0x206e60
00206edc
00206edc 0f 1f 40 00 ..@.
00206ee0
00206ee0loc_206ee0:
00206ee0mov rax, [rsp+16]
00206ee5mov r12, [rbx+24]
00206ee9lea rdx, [rbx+32]
00206eedcmp [rax+16], rdx
00206ef1jne 0x206e50
00206ef7
00206ef7loc_206ef7:
00206ef7mov r15, [rsp]
00206efbmov rsi, [rdx]
00206efemov rdi, r15
00206f01call r14
00206f04mov rbx, [rsp+16]
00206f09mov rdi, r15
00206f0cmov rax, [rbx+16]
00206f10mov rsi, [rax+8]
00206f14lea rdx, [rax+8]
00206f18call r14
00206f1bmov rax, [rbx+16]
00206f1fmov rdi, r15
00206f22mov rsi, [rax+16]
00206f26lea rdx, [rax+16]
00206f2acall r14
00206f2dmov rax, [rbx+16]
00206f31mov rax, [rax+24]
00206f35mov [rsp+16], rax
00206f3atest rax, rax
00206f3djne 0x206e2c
00206f43
00206f43loc_206f43:
00206f43add rsp, 40
00206f47pop rbx
00206f48pop rbp
00206f49pop r12
00206f4bpop r13
00206f4dpop r14
00206f4fpop r15
00206f51ret
00206e00
00206e00caml_scan_stack:
00206e00push r15
00206e02push r14
00206e04push r13
00206e06push r12
00206e08push rbp
00206e09push rbx
00206e0asub rsp, 40
00206e0emov [rsp], rdx
00206e12mov [rsp+16], rcx
00206e17mov [rsp+24], r8
00206e1ctest rcx, rcx
00206e1fje 0x206f43
00206e25mov r14, rdi
00206e28call caml_get_frame_descrs
00206e2dmov [rsp+8], rax
00206e32mov rax, [rsp+16]
00206e37mov rdx, [rax]
00206e3acmp rdx, [rax+16]
00206e3eje 0x206ef7
00206e44mov r12, [rsp+24]
00206e49nop [rax]
00206e4cmov rsi, [rdx]
00206e4flea rbx, [rdx+8]
00206e53nop [rax+rax]
00206e5cmov rdi, [rsp+8]
00206e61call caml_find_frame_descr
00206e66movzx edx, [rax+8]
00206e6amov r15, rax
00206e6dcmp dx, -1
00206e71je 0x206ee0
00206e73movzx esi, [rax+10]
00206e77lea r13, [rax+12]
00206e7btest si, si
00206e7eje 0x206ecd
00206e80lea rbp, [rax+2*rsi+12]
00206e85jmp 0x206eb4
00206e87db 0x70
00206e88or al, 235
00206e8adb 0x29
00206e8b
00206e8b 0f 1f 44 00 00 ..D..
00206e90
00206e90loc_206e90:
00206e90lea rdx, [4*rdx]
00206e98and edx, 0x3fff8
00206e9eadd rdx, r12
00206ea1
00206ea1loc_206ea1:
00206ea1add r13, 2
00206ea5mov rsi, [rdx]
00206ea8mov rdi, [rsp]
00206eaccall r14
00206eafcmp rbp, r13
00206eb2je 0x206ec8
00206eb4
00206eb4loc_206eb4:
00206eb4movzx edx, [r13]
00206eb9test dl, 1
00206ebcjne 0x206e90
00206ebeadd rdx, rbx
00206ec1jmp 0x206ea1
00206ec3
00206ec3 0f 1f 44 00 00 ..D..
00206ec8
00206ec8loc_206ec8:
00206ec8movzx edx, [r15+8]
00206ecd
00206ecdloc_206ecd:
00206ecdand edx, 65532
00206ed3add rbx, rdx
00206ed6mov rsi, [rbx-8]
00206edajmp 0x206e60
00206edc
00206edc 0f 1f 40 00 ..@.
00206ee0
00206ee0loc_206ee0:
00206ee0mov rax, [rsp+16]
00206ee5mov r12, [rbx+24]
00206ee9lea rdx, [rbx+32]
00206eedcmp [rax+16], rdx
00206ef1jne 0x206e50
00206ef7
00206ef7loc_206ef7:
00206ef7mov r15, [rsp]
00206efbmov rsi, [rdx]
00206efemov rdi, r15
00206f01call r14
00206f04mov rbx, [rsp+16]
00206f09mov rdi, r15
00206f0cmov rax, [rbx+16]
00206f10mov rsi, [rax+8]
00206f14lea rdx, [rax+8]
00206f18call r14
00206f1bmov rax, [rbx+16]
00206f1fmov rdi, r15
00206f22mov rsi, [rax+16]
00206f26lea rdx, [rax+16]
00206f2acall r14
00206f2dmov rax, [rbx+16]
00206f31mov rax, [rax+24]
00206f35mov [rsp+16], rax
00206f3atest rax, rax
00206f3djne 0x206e2c
00206f43
00206f43loc_206f43:
00206f43add rsp, 40
00206f47pop rbx
00206f48pop rbp
00206f49pop r12
00206f4bpop r13
00206f4dpop r14
00206f4fpop r15
00206f51ret
00206e00
00206f52
00206f52 // align 0x40
00206f52 // align 0x40
00206f80
00206f80caml_rewrite_exception_stack:
00206f80test rsi, rsi
00206f83je 0x206fe4
00206f85mov r8, [rsi]
00206f88lea r9, [rdi+56]
00206f8ccmp r9, r8
00206f8fjb 0x206fdb
00206f91ret
00206f92db 0xc1
00206f93jb 0x206fdb
00206f95ret
00206f96
00206f96 66 66 2e 0f 1f 84 00 00 00 00 ff........
00206fa0 00 66 66 2e 0f 1f 84 00 00 00 00 00 66 66 2e 0f .ff.........ff..
00206fb0 1f 84 00 00 00 00 00 66 0f 1f 84 00 00 00 00 00 .......f........
00206fc0
00206fc0loc_206fc0:
00206fc0sub rax, r8
00206fc3mov rcx, rax
00206fc6mov rax, [rdx+16]
00206fcasub rax, rcx
00206fcdmov [rsi], rax
00206fd0mov r8, [rax]
00206fd3cmp r9, r8
00206fd6jae 0x206fe4
00206fd8mov rsi, rax
00206fdb
00206fdbloc_206fdb:
00206fdbmov rax, [rdi+16]
00206fdfcmp rax, r8
00206fe2jae 0x206fc0
00206fe4
00206fe4loc_206fe4:
00206fe4ret
00206f80
00206f80caml_rewrite_exception_stack:
00206f80test rsi, rsi
00206f83je 0x206fe4
00206f85mov r8, [rsi]
00206f88lea r9, [rdi+56]
00206f8ccmp r9, r8
00206f8fjb 0x206fdb
00206f91ret
00206f92db 0xc1
00206f93jb 0x206fdb
00206f95ret
00206f96
00206f96 66 66 2e 0f 1f 84 00 00 00 00 ff........
00206fa0 00 66 66 2e 0f 1f 84 00 00 00 00 00 66 66 2e 0f .ff.........ff..
00206fb0 1f 84 00 00 00 00 00 66 0f 1f 84 00 00 00 00 00 .......f........
00206fc0
00206fc0loc_206fc0:
00206fc0sub rax, r8
00206fc3mov rcx, rax
00206fc6mov rax, [rdx+16]
00206fcasub rax, rcx
00206fcdmov [rsi], rax
00206fd0mov r8, [rax]
00206fd3cmp r9, r8
00206fd6jae 0x206fe4
00206fd8mov rsi, rax
00206fdb
00206fdbloc_206fdb:
00206fdbmov rax, [rdi+16]
00206fdfcmp rax, r8
00206fe2jae 0x206fc0
00206fe4
00206fe4loc_206fe4:
00206fe4ret
00206f80
00206fe5
00206fe5 // align 0x20
00206fe5 // align 0x20
00207000
00207000caml_try_realloc_stack:
00207000push r14
00207002push r13
00207004push r12
00207006push rbp
00207007push rbx
00207008mov rbx, [rip+0x6efd5]
0020700fmov rax, [rbx]
00207013mov rbp, [rax+40]
00207017mov rsi, [rbp+16]
0020701blea r12, [rbp+56]
0020701fmov r14, rsi
00207022sub r14, [rbp]
00207026sub rsi, r12
00207029sar r14, 3
0020702dsar rsi, 3
00207031movsxd r14, r14l
00207034mov rax, [rip+0x171729]
0020703badd rdi, r14
0020703ejmp 0x20706c
00207040db 0x01
00207041imul ebx
00207043db 0x28
00207044
00207044 66 66 2e 0f 1f 84 00 00 00 00 00 66 ff.........f
00207050 66 2e 0f 1f 84 00 00 00 00 00 66 0f 1f 44 00 00 f.........f..D..
00207060
00207060loc_207060:
00207060lea r13, [rsi+rsi]
00207064cmp r13, rdi
00207067jae 0x207080
00207069mov rsi, r13
0020706c
0020706cloc_20706c:
0020706ccmp rsi, rax
0020706fjb 0x207060
00207071
00207071loc_207071:
00207071pop rbx
00207072xor eax, eax
00207074pop rbp
00207075pop r12
00207077pop r13
00207079pop r14
0020707bret
0020707c
0020707c 0f 1f 40 00 ..@.
00207080
00207080loc_207080:
00207080shl rsi, 4
00207084cmp r13, 512
0020708bjbe 0x2071e0
00207091shr rsi, 10
00207095lea rdi, [rip+0x27df0]
0020709cxor eax, eax
0020709ecall caml_gc_log
002070a3
002070a3loc_2070a3:
002070a3mov rax, [rbp+16]
002070a7mov r9, [rbp+48]
002070abxor esi, esi
002070admov r8, [rax+16]
002070b1mov rcx, [rax+8]
002070b5mov rdx, [rax]
002070b8mov rax, [rip+0x1716a1]
002070bf
002070bfloc_2070bf:
002070bfcmp r13, rax
002070c2je 0x2070d4
002070c4add esi, 1
002070c7add rax, rax
002070cacmp esi, 5
002070cdjne 0x2070bf
002070cfmov esi, -1
002070d4
002070d4loc_2070d4:
002070d4mov rdi, r13
002070d7call fn_206b40
002070dcmov r13, rax
002070dftest rax, rax
002070e2je 0x207071
002070e4mov rdi, [rax+16]
002070e8mov rsi, [rbp+16]
002070eclea rdx, [8*r14]
002070f4mov r14, rdx
002070f7sub rsi, rdx
002070fasub rdi, rdx
002070fdneg r14
00207100call fn_f47d0
00207105mov rax, [r13+16]
00207109add r14, rax
0020710cmov [r13], r14
00207110mov rdx, [rbp+16]
00207114mov rdx, [rdx+24]
00207118mov [rax+24], rdx
0020711cmov rdx, [rbx]
00207120mov rcx, [rdx+48]
00207124lea rsi, [rdx+48]
00207128cmp r12, rcx
0020712bjb 0x20715b
0020712djmp 0x207168
0020712f
0020712f 66 f
00207130 66 2e 0f 1f 84 00 00 00 00 00 66 0f 1f 44 00 00 f.........f..D..
00207140
00207140loc_207140:
00207140sub rax, rcx
00207143mov rdx, rax
00207146mov rax, [r13+16]
0020714asub rax, rdx
0020714dmov [rsi], rax
00207150mov rcx, [rax]
00207153cmp r12, rcx
00207156jae 0x207164
00207158mov rsi, rax
0020715b
0020715bloc_20715b:
0020715bmov rax, [rbp+16]
0020715fcmp rax, rcx
00207162jae 0x207140
00207164
00207164loc_207164:
00207164mov rdx, [rbx]
00207168
00207168loc_207168:
00207168mov rax, [rdx+64]
0020716ctest rax, rax
0020716fjne 0x207189
00207171jmp 0x2071aa
00207173
00207173 66 66 2e 0f 1f 84 00 00 00 00 00 66 90 ff.........f.
00207180
00207180loc_207180:
00207180mov rax, [rax+16]
00207184test rax, rax
00207187je 0x2071a6
00207189
00207189loc_207189:
00207189cmp [rax], rbp
0020718cjne 0x207180
0020718emov [rax], r13
00207191mov rdx, [r13+16]
00207195sub rdx, [rbp+16]
00207199add [rax+8], rdx
0020719dmov rax, [rax+16]
002071a1test rax, rax
002071a4jne 0x207189
002071a6
002071a6loc_2071a6:
002071a6mov rdx, [rbx]
002071aa
002071aaloc_2071aa:
002071aamovsxd rax, [rbp+24]
002071aecmp eax, -1
002071b1je 0x2071f3
002071b3mov rdx, [rdx+72]
002071b7lea rax, [rdx+8*rax]
002071bbmov rdx, [rax]
002071bemov [rbp+8], rdx
002071c2mov [rax], rbp
002071c5
002071c5loc_2071c5:
002071c5mov rax, [rbx]
002071c9mov [rax+40], r13
002071cdmov eax, 1
002071d2pop rbx
002071d3pop rbp
002071d4pop r12
002071d6pop r13
002071d8pop r14
002071daret
002071db
002071db 0f 1f 44 00 00 ..D..
002071e0
002071e0loc_2071e0:
002071e0lea rdi, [rip+0x27cc1]
002071e7xor eax, eax
002071e9call caml_gc_log
002071eejmp 0x2070a3
002071f3
002071f3loc_2071f3:
002071f3mov rdi, rbp
002071f6call caml_stat_free
002071fbjmp 0x2071c5
00207000
00207000caml_try_realloc_stack:
00207000push r14
00207002push r13
00207004push r12
00207006push rbp
00207007push rbx
00207008mov rbx, [rip+0x6efd5]
0020700fmov rax, [rbx]
00207013mov rbp, [rax+40]
00207017mov rsi, [rbp+16]
0020701blea r12, [rbp+56]
0020701fmov r14, rsi
00207022sub r14, [rbp]
00207026sub rsi, r12
00207029sar r14, 3
0020702dsar rsi, 3
00207031movsxd r14, r14l
00207034mov rax, [rip+0x171729]
0020703badd rdi, r14
0020703ejmp 0x20706c
00207040db 0x01
00207041imul ebx
00207043db 0x28
00207044
00207044 66 66 2e 0f 1f 84 00 00 00 00 00 66 ff.........f
00207050 66 2e 0f 1f 84 00 00 00 00 00 66 0f 1f 44 00 00 f.........f..D..
00207060
00207060loc_207060:
00207060lea r13, [rsi+rsi]
00207064cmp r13, rdi
00207067jae 0x207080
00207069mov rsi, r13
0020706c
0020706cloc_20706c:
0020706ccmp rsi, rax
0020706fjb 0x207060
00207071
00207071loc_207071:
00207071pop rbx
00207072xor eax, eax
00207074pop rbp
00207075pop r12
00207077pop r13
00207079pop r14
0020707bret
0020707c
0020707c 0f 1f 40 00 ..@.
00207080
00207080loc_207080:
00207080shl rsi, 4
00207084cmp r13, 512
0020708bjbe 0x2071e0
00207091shr rsi, 10
00207095lea rdi, [rip+0x27df0]
0020709cxor eax, eax
0020709ecall caml_gc_log
002070a3
002070a3loc_2070a3:
002070a3mov rax, [rbp+16]
002070a7mov r9, [rbp+48]
002070abxor esi, esi
002070admov r8, [rax+16]
002070b1mov rcx, [rax+8]
002070b5mov rdx, [rax]
002070b8mov rax, [rip+0x1716a1]
002070bf
002070bfloc_2070bf:
002070bfcmp r13, rax
002070c2je 0x2070d4
002070c4add esi, 1
002070c7add rax, rax
002070cacmp esi, 5
002070cdjne 0x2070bf
002070cfmov esi, -1
002070d4
002070d4loc_2070d4:
002070d4mov rdi, r13
002070d7call fn_206b40
002070dcmov r13, rax
002070dftest rax, rax
002070e2je 0x207071
002070e4mov rdi, [rax+16]
002070e8mov rsi, [rbp+16]
002070eclea rdx, [8*r14]
002070f4mov r14, rdx
002070f7sub rsi, rdx
002070fasub rdi, rdx
002070fdneg r14
00207100call fn_f47d0
00207105mov rax, [r13+16]
00207109add r14, rax
0020710cmov [r13], r14
00207110mov rdx, [rbp+16]
00207114mov rdx, [rdx+24]
00207118mov [rax+24], rdx
0020711cmov rdx, [rbx]
00207120mov rcx, [rdx+48]
00207124lea rsi, [rdx+48]
00207128cmp r12, rcx
0020712bjb 0x20715b
0020712djmp 0x207168
0020712f
0020712f 66 f
00207130 66 2e 0f 1f 84 00 00 00 00 00 66 0f 1f 44 00 00 f.........f..D..
00207140
00207140loc_207140:
00207140sub rax, rcx
00207143mov rdx, rax
00207146mov rax, [r13+16]
0020714asub rax, rdx
0020714dmov [rsi], rax
00207150mov rcx, [rax]
00207153cmp r12, rcx
00207156jae 0x207164
00207158mov rsi, rax
0020715b
0020715bloc_20715b:
0020715bmov rax, [rbp+16]
0020715fcmp rax, rcx
00207162jae 0x207140
00207164
00207164loc_207164:
00207164mov rdx, [rbx]
00207168
00207168loc_207168:
00207168mov rax, [rdx+64]
0020716ctest rax, rax
0020716fjne 0x207189
00207171jmp 0x2071aa
00207173
00207173 66 66 2e 0f 1f 84 00 00 00 00 00 66 90 ff.........f.
00207180
00207180loc_207180:
00207180mov rax, [rax+16]
00207184test rax, rax
00207187je 0x2071a6
00207189
00207189loc_207189:
00207189cmp [rax], rbp
0020718cjne 0x207180
0020718emov [rax], r13
00207191mov rdx, [r13+16]
00207195sub rdx, [rbp+16]
00207199add [rax+8], rdx
0020719dmov rax, [rax+16]
002071a1test rax, rax
002071a4jne 0x207189
002071a6
002071a6loc_2071a6:
002071a6mov rdx, [rbx]
002071aa
002071aaloc_2071aa:
002071aamovsxd rax, [rbp+24]
002071aecmp eax, -1
002071b1je 0x2071f3
002071b3mov rdx, [rdx+72]
002071b7lea rax, [rdx+8*rax]
002071bbmov rdx, [rax]
002071bemov [rbp+8], rdx
002071c2mov [rax], rbp
002071c5
002071c5loc_2071c5:
002071c5mov rax, [rbx]
002071c9mov [rax+40], r13
002071cdmov eax, 1
002071d2pop rbx
002071d3pop rbp
002071d4pop r12
002071d6pop r13
002071d8pop r14
002071daret
002071db
002071db 0f 1f 44 00 00 ..D..
002071e0
002071e0loc_2071e0:
002071e0lea rdi, [rip+0x27cc1]
002071e7xor eax, eax
002071e9call caml_gc_log
002071eejmp 0x2070a3
002071f3
002071f3loc_2071f3:
002071f3mov rdi, rbp
002071f6call caml_stat_free
002071fbjmp 0x2071c5
00207000
002071fd
002071fd // align 0x10
002071fd // align 0x10
00207200
00207200caml_maybe_expand_stack:
00207200push rbx
00207201mov rbx, [rip+0x6eddc]
00207208mov rdx, [rbx]
0020720cmov rax, [rdx+40]
00207210lea rcx, [rax+56]
00207214mov rax, [rax]
00207217sub rax, rcx
0020721acmp rax, 312
00207220jbe 0x207230
00207222cmp [rdx+80], 0
00207227je 0x207249
00207229pop rbx
0020722aret
0020722bdb 0x74
0020722csbb al, 91
0020722eret
0020722f
0020722f 90 .
00207230
00207230loc_207230:
00207230mov edi, 40
00207235call caml_try_realloc_stack
0020723atest eax, eax
0020723cje 0x207264
0020723emov rdx, [rbx]
00207242cmp [rdx+80], 0
00207247jne 0x20722d
00207249
00207249loc_207249:
00207249mov edi, 232
0020724ecall caml_stat_alloc
00207253mov [rax], 0
0020725amov rdx, [rbx]
0020725emov [rdx+80], rax
00207262pop rbx
00207263ret
00207264
00207264loc_207264:
00207264call caml_raise_stack_overflow
00207200
00207200caml_maybe_expand_stack:
00207200push rbx
00207201mov rbx, [rip+0x6eddc]
00207208mov rdx, [rbx]
0020720cmov rax, [rdx+40]
00207210lea rcx, [rax+56]
00207214mov rax, [rax]
00207217sub rax, rcx
0020721acmp rax, 312
00207220jbe 0x207230
00207222cmp [rdx+80], 0
00207227je 0x207249
00207229pop rbx
0020722aret
0020722bdb 0x74
0020722csbb al, 91
0020722eret
0020722f
0020722f 90 .
00207230
00207230loc_207230:
00207230mov edi, 40
00207235call caml_try_realloc_stack
0020723atest eax, eax
0020723cje 0x207264
0020723emov rdx, [rbx]
00207242cmp [rdx+80], 0
00207247jne 0x20722d
00207249
00207249loc_207249:
00207249mov edi, 232
0020724ecall caml_stat_alloc
00207253mov [rax], 0
0020725amov rdx, [rbx]
0020725emov [rdx+80], rax
00207262pop rbx
00207263ret
00207264
00207264loc_207264:
00207264call caml_raise_stack_overflow
00207200
00207269
00207269 // align 0x10
00207269 // align 0x10
00207270
00207270caml_alloc_main_stack:
00207270mov r9l, 1
00207276lock xadd [rip+0x1714cd], r9
0020727fmov rax, [rip+0x1714d6]
00207286xor esi, esi
00207288cmp rdi, rax
0020728bje 0x2072a1
0020728dadd esi, 1
00207290add rax, rax
00207293cmp esi, 5
00207296jne 0x20728c
00207298mov esi, -1
0020729dmov r8l, 1
002072a3mov ecx, 1
002072a8mov edx, 1
002072adjmp 0x206b40
002072b2db 0x8a
002072b3clc
002072b4db 0xff
002072b5db 0xff
00207270
00207270caml_alloc_main_stack:
00207270mov r9l, 1
00207276lock xadd [rip+0x1714cd], r9
0020727fmov rax, [rip+0x1714d6]
00207286xor esi, esi
00207288cmp rdi, rax
0020728bje 0x2072a1
0020728dadd esi, 1
00207290add rax, rax
00207293cmp esi, 5
00207296jne 0x20728c
00207298mov esi, -1
0020729dmov r8l, 1
002072a3mov ecx, 1
002072a8mov edx, 1
002072adjmp 0x206b40
002072b2db 0x8a
002072b3clc
002072b4db 0xff
002072b5db 0xff
00207270
002072b6
002072b6 // align 0x10
002072b6 // align 0x10
002072c0
002072c0caml_free_stack:
002072c0movsxd rax, [rdi+24]
002072c4cmp eax, -1
002072c7je 0x2072f0
002072c9mov rdx, [rip+0x6ed14]
002072d0mov rdx, [rdx]
002072d4mov rdx, [rdx+72]
002072d8lea rax, [rdx+8*rax]
002072dcmov rdx, [rax]
002072dfmov [rdi+8], rdx
002072e3mov [rax], rdi
002072e6ret
002072e7db 0x48
002072e8mov [rax], edi
002072earet
002072eb
002072eb 0f 1f 44 00 00 ..D..
002072f0
002072f0loc_2072f0:
002072f0jmp 0x216690
002072c0
002072c0caml_free_stack:
002072c0movsxd rax, [rdi+24]
002072c4cmp eax, -1
002072c7je 0x2072f0
002072c9mov rdx, [rip+0x6ed14]
002072d0mov rdx, [rdx]
002072d4mov rdx, [rdx+72]
002072d8lea rax, [rdx+8*rax]
002072dcmov rdx, [rax]
002072dfmov [rdi+8], rdx
002072e3mov [rax], rdi
002072e6ret
002072e7db 0x48
002072e8mov [rax], edi
002072earet
002072eb
002072eb 0f 1f 44 00 00 ..D..
002072f0
002072f0loc_2072f0:
002072f0jmp 0x216690
002072c0
002072f5
002072f5 // align 0x10
002072f5 // align 0x10
00207300
00207300caml_free_gc_regs_buckets:
00207300test rdi, rdi
00207303je 0x207328
00207305push rbx
00207306mov rbx, rdi
00207309nop [rax]
0020730cmov rdi, rbx
0020730fmov rbx, [rbx]
00207312call caml_stat_free
00207317test rbx, rbx
0020731ajne 0x207310
0020731cpop rbx
0020731dret
0020731edb 0x75
0020731fdb 0xf0
00207320pop rbx
00207321ret
00207322
00207322 66 0f 1f 44 00 00 f..D..
00207328
00207328loc_207328:
00207328ret
00207300
00207300caml_free_gc_regs_buckets:
00207300test rdi, rdi
00207303je 0x207328
00207305push rbx
00207306mov rbx, rdi
00207309nop [rax]
0020730cmov rdi, rbx
0020730fmov rbx, [rbx]
00207312call caml_stat_free
00207317test rbx, rbx
0020731ajne 0x207310
0020731cpop rbx
0020731dret
0020731edb 0x75
0020731fdb 0xf0
00207320pop rbx
00207321ret
00207322
00207322 66 0f 1f 44 00 00 f..D..
00207328
00207328loc_207328:
00207328ret
00207300
00207329
00207329 // align 0x10
00207329 // align 0x10
00207330
00207330caml_continuation_use_noexc:
00207330cmp rdi, [rip+0x17128d]
00207337push rbx
00207338mov rbx, rdi
0020733bjae 0x207370
0020733dcmp [rip+0x171288], rdi
00207344jae 0x207370
00207346mov rax, [rbx]
00207349mov rdx, [rip+0x17128c]
00207350cmp rdx, 1
00207354je 0x207388
00207356mov edx, 1
0020735block cmpxchg [rbx], rdx
00207360jne 0x207391
00207362pop rbx
00207363ret
00207364db 0x75
00207365sub ebx, [rbx-61]
00207368
00207368 0f 1f 84 00 00 00 00 00 ........
00207370
00207370loc_207370:
00207370mov rdi, rbx
00207373call caml_darken_cont
00207378mov rax, [rbx]
0020737bmov rdx, [rip+0x17125e]
00207382cmp rdx, 1
00207386jne 0x20735a
00207388
00207388loc_207388:
00207388mov [rbx], 1
0020738fpop rbx
00207390ret
00207391
00207391loc_207391:
00207391mov eax, 1
00207396pop rbx
00207397ret
00207330
00207330caml_continuation_use_noexc:
00207330cmp rdi, [rip+0x17128d]
00207337push rbx
00207338mov rbx, rdi
0020733bjae 0x207370
0020733dcmp [rip+0x171288], rdi
00207344jae 0x207370
00207346mov rax, [rbx]
00207349mov rdx, [rip+0x17128c]
00207350cmp rdx, 1
00207354je 0x207388
00207356mov edx, 1
0020735block cmpxchg [rbx], rdx
00207360jne 0x207391
00207362pop rbx
00207363ret
00207364db 0x75
00207365sub ebx, [rbx-61]
00207368
00207368 0f 1f 84 00 00 00 00 00 ........
00207370
00207370loc_207370:
00207370mov rdi, rbx
00207373call caml_darken_cont
00207378mov rax, [rbx]
0020737bmov rdx, [rip+0x17125e]
00207382cmp rdx, 1
00207386jne 0x20735a
00207388
00207388loc_207388:
00207388mov [rbx], 1
0020738fpop rbx
00207390ret
00207391
00207391loc_207391:
00207391mov eax, 1
00207396pop rbx
00207397ret
00207330
00207398
00207398 // align 0x10
00207398 // align 0x10
002073a0
002073a0caml_continuation_use_and_update_handler_noexc:
002073a0push r12
002073a2mov r12, rsi
002073a5push rbp
002073a6mov rbp, rdx
002073a9push rbx
002073aamov rbx, rcx
002073adcall caml_continuation_use_noexc
002073b2cmp rax, 1
002073b6je 0x2073e3
002073b8lea rdx, [rax-1]
002073bcmov rcx, [rdx+16]
002073c0
002073c0loc_2073c0:
002073c0mov rsi, rdx
002073c3mov rdx, [rcx+24]
002073c7test rdx, rdx
002073cajne 0x2073c0
002073ccmov [rcx], r12
002073cfmov rdx, [rsi+16]
002073d3mov [rdx+8], rbp
002073d7mov rdx, [rsi+16]
002073dbmov [rdx+16], rbx
002073dfpop rbx
002073e0pop rbp
002073e1pop r12
002073e3
002073e3loc_2073e3:
002073e3ret
002073e4db 0x5d
002073e5pop r12
002073e7ret
002073a0
002073a0caml_continuation_use_and_update_handler_noexc:
002073a0push r12
002073a2mov r12, rsi
002073a5push rbp
002073a6mov rbp, rdx
002073a9push rbx
002073aamov rbx, rcx
002073adcall caml_continuation_use_noexc
002073b2cmp rax, 1
002073b6je 0x2073e3
002073b8lea rdx, [rax-1]
002073bcmov rcx, [rdx+16]
002073c0
002073c0loc_2073c0:
002073c0mov rsi, rdx
002073c3mov rdx, [rcx+24]
002073c7test rdx, rdx
002073cajne 0x2073c0
002073ccmov [rcx], r12
002073cfmov rdx, [rsi+16]
002073d3mov [rdx+8], rbp
002073d7mov rdx, [rsi+16]
002073dbmov [rdx+16], rbx
002073dfpop rbx
002073e0pop rbp
002073e1pop r12
002073e3
002073e3loc_2073e3:
002073e3ret
002073e4db 0x5d
002073e5pop r12
002073e7ret
002073a0
002073e8
002073e8 // align 0x10
002073e8 // align 0x10
002073f0
002073f0caml_continuation_replace:
002073f0add rsi, 1
002073f4mov eax, 1
002073f9lock cmpxchg [rdi], rsi
002073feret
002073ffdb 0x0f
00207400mov cl, 55
00207402ret
002073f0
002073f0caml_continuation_replace:
002073f0add rsi, 1
002073f4mov eax, 1
002073f9lock cmpxchg [rdi], rsi
002073feret
002073ffdb 0x0f
00207400mov cl, 55
00207402ret
002073f0
00207403
00207403 // align 0x10
00207403 // align 0x10
00207410
00207410caml_raise_continuation_already_resumed:
00207410push rbx
00207411mov rax, [rip+0x171324]
00207418test rax, rax
0020741bje 0x207429
0020741dmov rdi, [rax]
00207420call caml_raise
00207425lea rbx, [rip+0x28f48]
0020742cmov rdi, rbx
0020742fcall caml_named_value
00207434test rax, rax
00207437je 0x207446
00207439mov [rip+0x1712fc], rax
00207440jmp 0x207421
00207442mov rdi, rbx
00207445call fn_206bf0
0020744adb 0xa2
0020744bidiv edi
0020744ddb 0xff
00207410
00207410caml_raise_continuation_already_resumed:
00207410push rbx
00207411mov rax, [rip+0x171324]
00207418test rax, rax
0020741bje 0x207429
0020741dmov rdi, [rax]
00207420call caml_raise
00207425lea rbx, [rip+0x28f48]
0020742cmov rdi, rbx
0020742fcall caml_named_value
00207434test rax, rax
00207437je 0x207446
00207439mov [rip+0x1712fc], rax
00207440jmp 0x207421
00207442mov rdi, rbx
00207445call fn_206bf0
0020744adb 0xa2
0020744bidiv edi
0020744ddb 0xff
00207410
0020744e
0020744e // align 0x10
0020744e // align 0x10
00207450
00207450caml_continuation_use:
00207450sub rsp, 8
00207454call caml_continuation_use_noexc
00207459cmp rax, 1
0020745dje 0x207468
0020745fadd rsp, 8
00207463ret
00207464call caml_raise_continuation_already_resumed
00207469db 0xa3
0020746adb 0xff
0020746bdb 0xff
0020746cdb 0xff
00207450
00207450caml_continuation_use:
00207450sub rsp, 8
00207454call caml_continuation_use_noexc
00207459cmp rax, 1
0020745dje 0x207468
0020745fadd rsp, 8
00207463ret
00207464call caml_raise_continuation_already_resumed
00207469db 0xa3
0020746adb 0xff
0020746bdb 0xff
0020746cdb 0xff
00207450
0020746d
0020746d // align 0x10
0020746d // align 0x10
00207470
00207470caml_make_unhandled_effect_exn:
00207470push r13
00207472push r12
00207474push rbp
00207475push rbx
00207476sub rsp, 104
0020747amov [rsp+8], rdi
0020747fmov rax, [0x28]
00207488mov [rsp+88], rax
0020748dmov rax, [rip+0x6eb50]
00207494mov rbp, [rax]
00207498lea rax, [rsp+16]
0020749dmov r12, [rbp+160]
002074a4mov [rbp+160], rax
002074abmov eax, 1
002074b0movq x0, rax
002074b5lea rax, [rsp+8]
002074bamov [rsp+16], r12
002074bfpunpcklqdq x0, x0
002074c3mov [rsp+40], rax
002074c8movups [rsp+24], x0
002074cdmov rax, [rip+0x171270]
002074d4mov rbx, rax
002074d7test rax, rax
002074daje 0x207520
002074dcxor esi, esi
002074demov edi, 2
002074e3call caml_alloc_small
002074e8mov rdx, [rbx]
002074ebmov [rax], rdx
002074eemov rdx, [rsp+8]
002074f3mov [rax+8], rdx
002074f7mov [rbp+160], r12
002074femov rdx, [rsp+88]
00207503sub rdx, [0x28]
0020750cjne 0x207540
0020750eadd rsp, 104
00207512pop rbx
00207513pop rbp
00207514pop r12
00207516pop r13
00207518ret
00207519db 0x5c
0020751apop r13
0020751cret
0020751d
0020751d 0f 1f 00 ...
00207520
00207520loc_207520:
00207520lea r13, [rip+0x2799c]
00207527mov rdi, r13
0020752acall caml_named_value
0020752fmov rbx, rax
00207532test rax, rax
00207535je 0x207545
00207537mov [rip+0x17120a], rax
0020753ejmp 0x2074e0
00207540
00207540loc_207540:
00207540call fn_f4590
00207545
00207545loc_207545:
00207545mov rdi, r13
00207548call fn_206bf0
00207470
00207470caml_make_unhandled_effect_exn:
00207470push r13
00207472push r12
00207474push rbp
00207475push rbx
00207476sub rsp, 104
0020747amov [rsp+8], rdi
0020747fmov rax, [0x28]
00207488mov [rsp+88], rax
0020748dmov rax, [rip+0x6eb50]
00207494mov rbp, [rax]
00207498lea rax, [rsp+16]
0020749dmov r12, [rbp+160]
002074a4mov [rbp+160], rax
002074abmov eax, 1
002074b0movq x0, rax
002074b5lea rax, [rsp+8]
002074bamov [rsp+16], r12
002074bfpunpcklqdq x0, x0
002074c3mov [rsp+40], rax
002074c8movups [rsp+24], x0
002074cdmov rax, [rip+0x171270]
002074d4mov rbx, rax
002074d7test rax, rax
002074daje 0x207520
002074dcxor esi, esi
002074demov edi, 2
002074e3call caml_alloc_small
002074e8mov rdx, [rbx]
002074ebmov [rax], rdx
002074eemov rdx, [rsp+8]
002074f3mov [rax+8], rdx
002074f7mov [rbp+160], r12
002074femov rdx, [rsp+88]
00207503sub rdx, [0x28]
0020750cjne 0x207540
0020750eadd rsp, 104
00207512pop rbx
00207513pop rbp
00207514pop r12
00207516pop r13
00207518ret
00207519db 0x5c
0020751apop r13
0020751cret
0020751d
0020751d 0f 1f 00 ...
00207520
00207520loc_207520:
00207520lea r13, [rip+0x2799c]
00207527mov rdi, r13
0020752acall caml_named_value
0020752fmov rbx, rax
00207532test rax, rax
00207535je 0x207545
00207537mov [rip+0x17120a], rax
0020753ejmp 0x2074e0
00207540
00207540loc_207540:
00207540call fn_f4590
00207545
00207545loc_207545:
00207545mov rdi, r13
00207548call fn_206bf0
00207470
0020754d
0020754d // align 0x10
0020754d // align 0x10
00207550
00207550caml_raise_unhandled_effect:
00207550push rax
00207551pop rax
00207552sub rsp, 8
00207556call caml_make_unhandled_effect_exn
0020755bmov rdi, rax
0020755ecall caml_raise
00207563db 0x39
00207564jmp 0x207567
00207566db 0x00
00207550
00207550caml_raise_unhandled_effect:
00207550push rax
00207551pop rax
00207552sub rsp, 8
00207556call caml_make_unhandled_effect_exn
0020755bmov rdi, rax
0020755ecall caml_raise
00207563db 0x39
00207564jmp 0x207567
00207566db 0x00
00207550
00207567
00207567 // align 0x10
00207567 // align 0x10
00207570
00207570caml_init_locale:
00207570cmp [rip+0x1711dc], 0
00207578je 0x207580
0020757aret
0020757bdb 0x00
0020757cje 0x207580
0020757eret
0020757f
0020757f 90 .
00207580
00207580loc_207580:
00207580sub rsp, 8
00207584xor edx, edx
00207586mov edi, 2
0020758blea rsi, [rip+0x27942]
00207592call fn_f4120
00207597mov [rip+0x1711ba], rax
0020759eadd rsp, 8
002075a2ret
00207570
00207570caml_init_locale:
00207570cmp [rip+0x1711dc], 0
00207578je 0x207580
0020757aret
0020757bdb 0x00
0020757cje 0x207580
0020757eret
0020757f
0020757f 90 .
00207580
00207580loc_207580:
00207580sub rsp, 8
00207584xor edx, edx
00207586mov edi, 2
0020758blea rsi, [rip+0x27942]
00207592call fn_f4120
00207597mov [rip+0x1711ba], rax
0020759eadd rsp, 8
002075a2ret
00207570
002075a3
002075a3 // align 0x10
002075a3 // align 0x10
002075b0
002075b0caml_free_locale:
002075b0mov rdi, [rip+0x17119d]
002075b7test rdi, rdi
002075baje 0x2075e0
002075bcsub rsp, 8
002075c0call fn_f4560
002075c5mov [rip+0x171184], 0
002075d0add rsp, 8
002075d4ret
002075d5db 0x83
002075d6db 0xc4
002075d7or bl, al
002075d9
002075d9 0f 1f 80 00 00 00 00 .......
002075e0
002075e0loc_2075e0:
002075e0mov [rip+0x17116d], 0
002075ebret
002075b0
002075b0caml_free_locale:
002075b0mov rdi, [rip+0x17119d]
002075b7test rdi, rdi
002075baje 0x2075e0
002075bcsub rsp, 8
002075c0call fn_f4560
002075c5mov [rip+0x171184], 0
002075d0add rsp, 8
002075d4ret
002075d5db 0x83
002075d6db 0xc4
002075d7or bl, al
002075d9
002075d9 0f 1f 80 00 00 00 00 .......
002075e0
002075e0loc_2075e0:
002075e0mov [rip+0x17116d], 0
002075ebret
002075b0
002075ec
002075ec // align 0x10
002075ec // align 0x10
002075f0
002075f0caml_copy_double:
002075f0push rbx
002075f1sub rsp, 16
002075f5mov rax, [rip+0x6e9e8]
002075fcmov rbx, [rax]
00207600test rbx, rbx
00207603je 0x207668
00207605sub [rbx+8], 16
0020760amov rdx, [rbx]
0020760dmov rax, [rbx+8]
00207611cmp rax, rdx
00207614jb 0x207638
00207616mov [rax], 1277
0020761dmov rax, [rbx+8]
00207621movsd_xmm [rax+8], x0
00207626add rsp, 16
0020762aadd rax, 8
0020762epop rbx
0020762fret
00207630db 0xc0
00207631or [rbx-61], bl
00207634
00207634 0f 1f 40 00 ..@.
00207638
00207638loc_207638:
00207638xor r8l, r8l
0020763bmov ecx, 1
00207640mov edx, 1
00207645mov rdi, rbx
00207648movsd_xmm [rsp+8], x0
0020764emov esi, 1
00207653call caml_alloc_small_dispatch
00207658mov rax, [rbx+8]
0020765cmovsd_xmm x0, [rsp+8]
00207662jmp 0x20761a
00207664
00207664 0f 1f 40 00 ..@.
00207668
00207668loc_207668:
00207668call caml_bad_caml_state
002075f0
002075f0caml_copy_double:
002075f0push rbx
002075f1sub rsp, 16
002075f5mov rax, [rip+0x6e9e8]
002075fcmov rbx, [rax]
00207600test rbx, rbx
00207603je 0x207668
00207605sub [rbx+8], 16
0020760amov rdx, [rbx]
0020760dmov rax, [rbx+8]
00207611cmp rax, rdx
00207614jb 0x207638
00207616mov [rax], 1277
0020761dmov rax, [rbx+8]
00207621movsd_xmm [rax+8], x0
00207626add rsp, 16
0020762aadd rax, 8
0020762epop rbx
0020762fret
00207630db 0xc0
00207631or [rbx-61], bl
00207634
00207634 0f 1f 40 00 ..@.
00207638
00207638loc_207638:
00207638xor r8l, r8l
0020763bmov ecx, 1
00207640mov edx, 1
00207645mov rdi, rbx
00207648movsd_xmm [rsp+8], x0
0020764emov esi, 1
00207653call caml_alloc_small_dispatch
00207658mov rax, [rbx+8]
0020765cmovsd_xmm x0, [rsp+8]
00207662jmp 0x20761a
00207664
00207664 0f 1f 40 00 ..@.
00207668
00207668loc_207668:
00207668call caml_bad_caml_state
002075f0
0020766d
0020766d // align 0x10
0020766d // align 0x10
00207670
00207670caml_format_float:
00207670push rbp
00207671push rbx
00207672mov rbx, rdi
00207675sub rsp, 24
00207679movsd_xmm x0, [rsi]
0020767dmov rdi, [rip+0x1710d0]
00207684movsd_xmm [rsp+8], x0
0020768acall fn_f4500
0020768fmovsd_xmm x0, [rsp+8]
00207695mov rdi, rbx
00207698mov rbp, rax
0020769bmov eax, 1
002076a0call caml_alloc_sprintf
002076a5mov rdi, rbp
002076a8mov rbx, rax
002076abcall fn_f4500
002076b0add rsp, 24
002076b4mov rax, rbx
002076b7pop rbx
002076b8pop rbp
002076b9ret
002076badb 0xd8
002076bbpop rbx
002076bcpop rbp
002076bdret
00207670
00207670caml_format_float:
00207670push rbp
00207671push rbx
00207672mov rbx, rdi
00207675sub rsp, 24
00207679movsd_xmm x0, [rsi]
0020767dmov rdi, [rip+0x1710d0]
00207684movsd_xmm [rsp+8], x0
0020768acall fn_f4500
0020768fmovsd_xmm x0, [rsp+8]
00207695mov rdi, rbx
00207698mov rbp, rax
0020769bmov eax, 1
002076a0call caml_alloc_sprintf
002076a5mov rdi, rbp
002076a8mov rbx, rax
002076abcall fn_f4500
002076b0add rsp, 24
002076b4mov rax, rbx
002076b7pop rbx
002076b8pop rbp
002076b9ret
002076badb 0xd8
002076bbpop rbx
002076bcpop rbp
002076bdret
00207670
002076be
002076be // align 0x10
002076be // align 0x10
002076c0
002076c0caml_hexstring_of_float:
002076c0push r14
002076c2push r13
002076c4mov r13, rdi
002076c7push r12
002076c9push rbp
002076capush rbx
002076cbmov rbx, rsi
002076cesar rbx, 1
002076d1lea rdi, [rbx+12]
002076d5sub rsp, 80
002076d9mov r14, [0x28]
002076e2mov [rsp+72], r14
002076e7mov r14, rdx
002076eamov r12, rsp
002076edmov rbp, rsp
002076f0cmp rdi, 64
002076f4jg 0x207928
002076famov rax, 0xfffffffffffff
00207704mov rdx, [r13]
00207708mov rdi, rdx
0020770band rax, rdx
0020770eshr rdi, 52
00207712and edi, 2047
00207718test rdx, rdx
0020771bjns 0x207880
00207721mov [rbp], 45
00207725lea r13, [rbp+1]
00207729cmp edi, 2047
0020772fje 0x2078b0
00207735mov edx, 30768
0020773amov [r13], dx
0020773ftest edi, edi
00207741je 0x207850
00207747sub edi, 1023
0020774dbts rax, 52
00207752cmp rbx, 12
00207756
00207756loc_207756:
00207756jbe 0x207938
0020775cmov rdx, rax
0020775fshl rax, 4
00207763lea rsi, [r13+3]
00207767mov rcx, 0xffffffffffffff
00207771shr rdx, 52
00207775and rax, rcx
00207778add edx, 48
0020777btest rax, rax
0020777emov [r13+2], dl
00207782setne dl
00207785test rbx, rbx
00207788jns 0x207792
0020778atest dl, dl
0020778cje 0x207800
0020778e
0020778eloc_20778e:
0020778emov [r13+3], 46
00207793lea rsi, [r13+4]
00207797mov r9, 0xffffffffffffff
002077a1jmp 0x2077ee
002077a3db 0xff
002077a4add bl, ch
002077a6db 0x47
002077a7
002077a7 66 66 2e 0f 1f 84 00 00 00 ff.......
002077b0 00 00 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 ..ff............
002077c0
002077c0loc_2077c0:
002077c0setg dl
002077c3test dl, dl
002077c5je 0x207800
002077c7
002077c7loc_2077c7:
002077c7mov rcx, rax
002077cashr rcx, 52
002077cecmp ecx, 9
002077d1lea r8l, [rcx+48]
002077d5lea edx, [rcx+87]
002077d8cmovle edx, r8l
002077dcshl rax, 4
002077e0add rsi, 1
002077e4sub rbx, 1
002077e8and rax, r9
002077ebmov [rsi-1], dl
002077ee
002077eeloc_2077ee:
002077eetest rbx, rbx
002077f1jns 0x2077c0
002077f3test rax, rax
002077f6setne dl
002077f9test dl, dl
002077fbjne 0x2077c7
002077fdnop [rax]
00207800
00207800loc_207800:
00207800mov [rsi], 0
00207803mov edx, edi
00207805mov rsi, rbp
00207808lea rdi, [rip+0x276d4]
0020780fxor eax, eax
00207811call caml_alloc_sprintf
00207816mov rbx, rax
00207819
00207819loc_207819:
00207819cmp rbp, r12
0020781cje 0x207826
0020781emov rdi, rbp
00207821call caml_stat_free
00207826
00207826loc_207826:
00207826mov rax, [rsp+72]
0020782bsub rax, [0x28]
00207834jne 0x207a5a
0020783aadd rsp, 80
0020783emov rax, rbx
00207841pop rbx
00207842pop rbp
00207843pop r12
00207845pop r13
00207847pop r14
00207849ret
0020784a
0020784a 66 0f 1f 44 00 00 f..D..
00207850
00207850loc_207850:
00207850test rax, rax
00207853jne 0x2079d0
00207859cmp rbx, 12
0020785djbe 0x207a20
00207863mov [r13+2], 48
00207868lea rsi, [r13+3]
0020786ctest rbx, rbx
0020786fjs 0x207800
00207871jmp 0x207792
00207876
00207876 66 2e 0f 1f 84 00 00 00 00 00 f.........
00207880
00207880loc_207880:
00207880mov rdx, r14
00207883sar rdx, 1
00207886cmp edx, 32
00207889je 0x207a10
0020788fmov r13, rbp
00207892cmp edx, 43
00207895jne 0x20772d
0020789bmov [rbp], 43
0020789flea r13, [rbp+1]
002078a3cmp edi, 2047
002078a9jne 0x207739
002078afnop
002078b0
002078b0loc_2078b0:
002078b0mov edx, 3
002078b5lea rdi, [rip+0x27623]
002078bctest rax, rax
002078bfjne 0x2078cd
002078c1mov edx, 8
002078c6lea rdi, [rip+0x27609]
002078cd
002078cdloc_2078cd:
002078cdcmp edx, 8
002078d0jb 0x2079a0
002078d6mov rax, [rdi]
002078d9lea rcx, [r13+8]
002078ddmov r8, rdi
002078e0and rcx, -8
002078e4mov [r13], rax
002078e8mov rax, [rdi+rdx-8]
002078edmov [r13+rdx-8], rax
002078f2mov rax, r13
002078f5sub rax, rcx
002078f8sub r8, rax
002078fbadd eax, edx
002078fdand eax, -8
00207900cmp eax, 8
00207903jb 0x2079b4
00207909and eax, -8
0020790cxor edx, edx
0020790e
0020790eloc_20790e:
0020790emov esi, edx
00207910add edx, 8
00207913mov r9, [r8+rsi]
00207917mov [rcx+rsi], r9
0020791bcmp edx, eax
0020791djb 0x20790e
0020791fjmp 0x2079b4
00207924
00207924 0f 1f 40 00 ..@.
00207928
00207928loc_207928:
00207928call caml_stat_alloc
0020792dmov rbp, rax
00207930jmp 0x2076fe
00207935
00207935 0f 1f 00 ...
00207938
00207938loc_207938:
00207938mov ecx, 13
0020793dmov edx, 1
00207942sub rcx, rbx
00207945shl ecx, 2
00207948shl rdx, cl
0020794bmov r8, rdx
0020794elea rsi, [rdx-1]
00207952mov rcx, rdx
00207955neg rcx
00207958shr r8, 1
0020795band rsi, rax
0020795eand rcx, rax
00207961cmp r8, rsi
00207964jae 0x2079e0
00207966
00207966loc_207966:
00207966add rdx, rcx
00207969mov rcx, 0xffffffffffffff
00207973mov rax, rdx
00207976shr rdx, 52
0020797ashl rax, 4
0020797eadd edx, 48
00207981and rax, rcx
00207984
00207984loc_207984:
00207984test rbx, rbx
00207987mov [r13+2], dl
0020798blea rsi, [r13+3]
0020798fsetg dl
00207992jmp 0x20778e
00207997
00207997 66 0f 1f 84 00 00 00 00 00 f........
002079a0
002079a0loc_2079a0:
002079a0test edx, edx
002079a2je 0x2079b4
002079a4movzx eax, [rdi]
002079a7mov [r13], al
002079abtest dl, 2
002079aejne 0x207a4a
002079b4
002079b4loc_2079b4:
002079b4call fn_f43a0
002079b9mov rdi, rbp
002079bcmov [r13+rax], 0
002079c2call caml_copy_string
002079c7mov rbx, rax
002079cajmp 0x207819
002079cf
002079cf 90 .
002079d0
002079d0loc_2079d0:
002079d0mov edi, -1022
002079d5jmp 0x207756
002079da
002079da 66 0f 1f 44 00 00 f..D..
002079e0
002079e0loc_2079e0:
002079e0jne 0x207a2a
002079e2test rdx, rcx
002079e5jne 0x207966
002079ebmov rdx, 0xffffffffffffff
002079f5mov rax, rcx
002079f8shr rcx, 52
002079fcshl rax, 4
00207a00and rax, rdx
00207a03lea edx, [rcx+48]
00207a06jmp 0x207984
00207a0b
00207a0b 0f 1f 44 00 00 ..D..
00207a10
00207a10loc_207a10:
00207a10mov [rbp], 32
00207a14lea r13, [rbp+1]
00207a18jmp 0x20772d
00207a1d
00207a1d 0f 1f 00 ...
00207a20
00207a20loc_207a20:
00207a20mov edx, 48
00207a25jmp 0x207984
00207a2a
00207a2aloc_207a2a:
00207a2amov rax, 0xffffffffffffff
00207a34mov rdx, rcx
00207a37shl rcx, 4
00207a3bshr rdx, 52
00207a3fand rax, rcx
00207a42add edx, 48
00207a45jmp 0x207984
00207a4a
00207a4aloc_207a4a:
00207a4amovzx eax, [rdi+rdx-2]
00207a4fmov [r13+rdx-2], ax
00207a55jmp 0x2079b4
00207a5a
00207a5aloc_207a5a:
00207a5acall fn_f4590
002076c0
002076c0caml_hexstring_of_float:
002076c0push r14
002076c2push r13
002076c4mov r13, rdi
002076c7push r12
002076c9push rbp
002076capush rbx
002076cbmov rbx, rsi
002076cesar rbx, 1
002076d1lea rdi, [rbx+12]
002076d5sub rsp, 80
002076d9mov r14, [0x28]
002076e2mov [rsp+72], r14
002076e7mov r14, rdx
002076eamov r12, rsp
002076edmov rbp, rsp
002076f0cmp rdi, 64
002076f4jg 0x207928
002076famov rax, 0xfffffffffffff
00207704mov rdx, [r13]
00207708mov rdi, rdx
0020770band rax, rdx
0020770eshr rdi, 52
00207712and edi, 2047
00207718test rdx, rdx
0020771bjns 0x207880
00207721mov [rbp], 45
00207725lea r13, [rbp+1]
00207729cmp edi, 2047
0020772fje 0x2078b0
00207735mov edx, 30768
0020773amov [r13], dx
0020773ftest edi, edi
00207741je 0x207850
00207747sub edi, 1023
0020774dbts rax, 52
00207752cmp rbx, 12
00207756
00207756loc_207756:
00207756jbe 0x207938
0020775cmov rdx, rax
0020775fshl rax, 4
00207763lea rsi, [r13+3]
00207767mov rcx, 0xffffffffffffff
00207771shr rdx, 52
00207775and rax, rcx
00207778add edx, 48
0020777btest rax, rax
0020777emov [r13+2], dl
00207782setne dl
00207785test rbx, rbx
00207788jns 0x207792
0020778atest dl, dl
0020778cje 0x207800
0020778e
0020778eloc_20778e:
0020778emov [r13+3], 46
00207793lea rsi, [r13+4]
00207797mov r9, 0xffffffffffffff
002077a1jmp 0x2077ee
002077a3db 0xff
002077a4add bl, ch
002077a6db 0x47
002077a7
002077a7 66 66 2e 0f 1f 84 00 00 00 ff.......
002077b0 00 00 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 ..ff............
002077c0
002077c0loc_2077c0:
002077c0setg dl
002077c3test dl, dl
002077c5je 0x207800
002077c7
002077c7loc_2077c7:
002077c7mov rcx, rax
002077cashr rcx, 52
002077cecmp ecx, 9
002077d1lea r8l, [rcx+48]
002077d5lea edx, [rcx+87]
002077d8cmovle edx, r8l
002077dcshl rax, 4
002077e0add rsi, 1
002077e4sub rbx, 1
002077e8and rax, r9
002077ebmov [rsi-1], dl
002077ee
002077eeloc_2077ee:
002077eetest rbx, rbx
002077f1jns 0x2077c0
002077f3test rax, rax
002077f6setne dl
002077f9test dl, dl
002077fbjne 0x2077c7
002077fdnop [rax]
00207800
00207800loc_207800:
00207800mov [rsi], 0
00207803mov edx, edi
00207805mov rsi, rbp
00207808lea rdi, [rip+0x276d4]
0020780fxor eax, eax
00207811call caml_alloc_sprintf
00207816mov rbx, rax
00207819
00207819loc_207819:
00207819cmp rbp, r12
0020781cje 0x207826
0020781emov rdi, rbp
00207821call caml_stat_free
00207826
00207826loc_207826:
00207826mov rax, [rsp+72]
0020782bsub rax, [0x28]
00207834jne 0x207a5a
0020783aadd rsp, 80
0020783emov rax, rbx
00207841pop rbx
00207842pop rbp
00207843pop r12
00207845pop r13
00207847pop r14
00207849ret
0020784a
0020784a 66 0f 1f 44 00 00 f..D..
00207850
00207850loc_207850:
00207850test rax, rax
00207853jne 0x2079d0
00207859cmp rbx, 12
0020785djbe 0x207a20
00207863mov [r13+2], 48
00207868lea rsi, [r13+3]
0020786ctest rbx, rbx
0020786fjs 0x207800
00207871jmp 0x207792
00207876
00207876 66 2e 0f 1f 84 00 00 00 00 00 f.........
00207880
00207880loc_207880:
00207880mov rdx, r14
00207883sar rdx, 1
00207886cmp edx, 32
00207889je 0x207a10
0020788fmov r13, rbp
00207892cmp edx, 43
00207895jne 0x20772d
0020789bmov [rbp], 43
0020789flea r13, [rbp+1]
002078a3cmp edi, 2047
002078a9jne 0x207739
002078afnop
002078b0
002078b0loc_2078b0:
002078b0mov edx, 3
002078b5lea rdi, [rip+0x27623]
002078bctest rax, rax
002078bfjne 0x2078cd
002078c1mov edx, 8
002078c6lea rdi, [rip+0x27609]
002078cd
002078cdloc_2078cd:
002078cdcmp edx, 8
002078d0jb 0x2079a0
002078d6mov rax, [rdi]
002078d9lea rcx, [r13+8]
002078ddmov r8, rdi
002078e0and rcx, -8
002078e4mov [r13], rax
002078e8mov rax, [rdi+rdx-8]
002078edmov [r13+rdx-8], rax
002078f2mov rax, r13
002078f5sub rax, rcx
002078f8sub r8, rax
002078fbadd eax, edx
002078fdand eax, -8
00207900cmp eax, 8
00207903jb 0x2079b4
00207909and eax, -8
0020790cxor edx, edx
0020790e
0020790eloc_20790e:
0020790emov esi, edx
00207910add edx, 8
00207913mov r9, [r8+rsi]
00207917mov [rcx+rsi], r9
0020791bcmp edx, eax
0020791djb 0x20790e
0020791fjmp 0x2079b4
00207924
00207924 0f 1f 40 00 ..@.
00207928
00207928loc_207928:
00207928call caml_stat_alloc
0020792dmov rbp, rax
00207930jmp 0x2076fe
00207935
00207935 0f 1f 00 ...
00207938
00207938loc_207938:
00207938mov ecx, 13
0020793dmov edx, 1
00207942sub rcx, rbx
00207945shl ecx, 2
00207948shl rdx, cl
0020794bmov r8, rdx
0020794elea rsi, [rdx-1]
00207952mov rcx, rdx
00207955neg rcx
00207958shr r8, 1
0020795band rsi, rax
0020795eand rcx, rax
00207961cmp r8, rsi
00207964jae 0x2079e0
00207966
00207966loc_207966:
00207966add rdx, rcx
00207969mov rcx, 0xffffffffffffff
00207973mov rax, rdx
00207976shr rdx, 52
0020797ashl rax, 4
0020797eadd edx, 48
00207981and rax, rcx
00207984
00207984loc_207984:
00207984test rbx, rbx
00207987mov [r13+2], dl
0020798blea rsi, [r13+3]
0020798fsetg dl
00207992jmp 0x20778e
00207997
00207997 66 0f 1f 84 00 00 00 00 00 f........
002079a0
002079a0loc_2079a0:
002079a0test edx, edx
002079a2je 0x2079b4
002079a4movzx eax, [rdi]
002079a7mov [r13], al
002079abtest dl, 2
002079aejne 0x207a4a
002079b4
002079b4loc_2079b4:
002079b4call fn_f43a0
002079b9mov rdi, rbp
002079bcmov [r13+rax], 0
002079c2call caml_copy_string
002079c7mov rbx, rax
002079cajmp 0x207819
002079cf
002079cf 90 .
002079d0
002079d0loc_2079d0:
002079d0mov edi, -1022
002079d5jmp 0x207756
002079da
002079da 66 0f 1f 44 00 00 f..D..
002079e0
002079e0loc_2079e0:
002079e0jne 0x207a2a
002079e2test rdx, rcx
002079e5jne 0x207966
002079ebmov rdx, 0xffffffffffffff
002079f5mov rax, rcx
002079f8shr rcx, 52
002079fcshl rax, 4
00207a00and rax, rdx
00207a03lea edx, [rcx+48]
00207a06jmp 0x207984
00207a0b
00207a0b 0f 1f 44 00 00 ..D..
00207a10
00207a10loc_207a10:
00207a10mov [rbp], 32
00207a14lea r13, [rbp+1]
00207a18jmp 0x20772d
00207a1d
00207a1d 0f 1f 00 ...
00207a20
00207a20loc_207a20:
00207a20mov edx, 48
00207a25jmp 0x207984
00207a2a
00207a2aloc_207a2a:
00207a2amov rax, 0xffffffffffffff
00207a34mov rdx, rcx
00207a37shl rcx, 4
00207a3bshr rdx, 52
00207a3fand rax, rcx
00207a42add edx, 48
00207a45jmp 0x207984
00207a4a
00207a4aloc_207a4a:
00207a4amovzx eax, [rdi+rdx-2]
00207a4fmov [r13+rdx-2], ax
00207a55jmp 0x2079b4
00207a5a
00207a5aloc_207a5a:
00207a5acall fn_f4590
002076c0
00207a5f
00207a5f // align 0x10
00207a5f // align 0x10
00207a60
00207a60caml_float_of_string:
00207a60push r15
00207a62push r14
00207a64push r13
00207a66push r12
00207a68push rbp
00207a69push rbx
00207a6asub rsp, 120
00207a6emov rbp, [0x28]
00207a77mov [rsp+104], rbp
00207a7cmov rbp, rdi
00207a7fcall caml_string_length
00207a84mov r13, rax
00207a87mov rbx, rbp
00207a8acmp rax, 63
00207a8eja 0x207ba8
00207a94test rax, rax
00207a97je 0x207dac
00207a9dlea r12, [rsp+32]
00207aa2mov r14, r12
00207aa5lea rdi, [rbp+r13]
00207aaamov rbp, r14
00207aadnop [rax+rax]
00207ab8nop [rax]
00207abcmov rax, rbx
00207abfadd rbx, 1
00207ac3movzx eax, [rax]
00207ac6cmp al, 95
00207ac8je 0x207ad5
00207acamov [rbp], al
00207acdadd rbp, 1
00207ad1cmp rbx, rdi
00207ad4jne 0x207ac0
00207ad6mov [rbp], 0
00207adacmp rbp, r14
00207addje 0x207d8c
00207ae3movzx eax, [r14]
00207ae7cmp al, 45
00207ae9je 0x207b90
00207aefmov [rsp], 1
00207af6mov rdi, r14
00207af9cmp al, 43
00207afbje 0x207b78
00207afdcmp al, 48
00207affjne 0x207b14
00207b01
00207b01loc_207b01:
00207b01movzx eax, [rdi+1]
00207b05and eax, -33
00207b08cmp al, 88
00207b0aje 0x207bc0
00207b10mov rdx, [rip+0x170c3d]
00207b17lea rsi, [rsp+24]
00207b1cmov rdi, r14
00207b1fcall fn_f4100
00207b24cmp rbp, [rsp+24]
00207b29jne 0x207d8c
00207b2fcmp r14, r12
00207b32je 0x207b4a
00207b34mov rdi, r14
00207b37movsd_xmm [rsp], x0
00207b3ccall caml_stat_free
00207b41movsd_xmm x0, [rsp]
00207b46call caml_copy_double
00207b4bmov rdx, [rsp+104]
00207b50sub rdx, [0x28]
00207b59jne 0x207db3
00207b5fadd rsp, 120
00207b63pop rbx
00207b64pop rbp
00207b65pop r12
00207b67pop r13
00207b69pop r14
00207b6bpop r15
00207b6dret
00207b6edb 0x5e
00207b6fpop r15
00207b71ret
00207b72
00207b72 66 0f 1f 44 00 00 f..D..
00207b78
00207b78loc_207b78:
00207b78movzx eax, [r14+1]
00207b7dlea rdi, [r14+1]
00207b81jmp 0x207b01
00207b86
00207b86 66 2e 0f 1f 84 00 00 00 00 00 f.........
00207b90
00207b90loc_207b90:
00207b90mov [rsp], -1
00207b97movzx eax, [r14+1]
00207b9clea rdi, [r14+1]
00207ba0jmp 0x207b01
00207ba5
00207ba5 0f 1f 00 ...
00207ba8
00207ba8loc_207ba8:
00207ba8lea rdi, [rax+1]
00207baclea r12, [rsp+32]
00207bb1call caml_stat_alloc
00207bb6mov r14, rax
00207bb9jmp 0x207aa9
00207bbe
00207bbe 66 90 f.
00207bc0
00207bc0loc_207bc0:
00207bc0add rdi, 2
00207bc4cmp rdi, rbp
00207bc7jae 0x207d8c
00207bcdmov [rsp+12], 0
00207bd5xor edx, edx
00207bd7xor r15l, r15l
00207bdaxor ebx, ebx
00207bdcmov r13l, -1
00207be2jmp 0x207bfd
00207be4
00207be4 0f 1f 40 00 ..@.
00207be8
00207be8loc_207be8:
00207be8test r13l, r13l
00207bebjns 0x207d8c
00207bf1mov r13l, r15l
00207bf4
00207bf4loc_207bf4:
00207bf4cmp rbp, rdi
00207bf7je 0x207da5
00207bfd
00207bfdloc_207bfd:
00207bfdmov r9, rdi
00207c00movsx eax, [rdi]
00207c03add rdi, 1
00207c07mov esi, eax
00207c09and esi, -33
00207c0ccmp sil, 80
00207c10je 0x207c40
00207c12cmp al, 46
00207c14je 0x207be8
00207c16lea esi, [rax-48]
00207c19cmp sil, 9
00207c1dja 0x207ce0
00207c23sub eax, 48
00207c26add r15l, 4
00207c2atest eax, eax
00207c2cjne 0x207d20
00207c32
00207c32loc_207c32:
00207c32test rbx, rbx
00207c35jne 0x207d20
00207c3bxor ebx, ebx
00207c3djmp 0x207bf4
00207c3f
00207c3f 90 .
00207c40
00207c40loc_207c40:
00207c40cmp [r9+1], 0
00207c45je 0x207d8c
00207c4blea rsi, [rsp+24]
00207c50mov edx, 10
00207c55call fn_f45d0
00207c5acmp rbp, [rsp+24]
00207c5fjne 0x207d8c
00207c65cmp rax, 0xffffffff80000001
00207c6bjl 0x207d76
00207c71cmp rax, 0x7ffffffe
00207c77jg 0x207d71
00207c7d
00207c7dloc_207c7d:
00207c7dtest r15l, r15l
00207c80je 0x207d8c
00207c86mov ecx, [rsp+12]
00207c8apxor x0, x0
00207c8ecvtsi2sd x0, rbx
00207c93lea edx, [r13+rcx]
00207c98sub edx, r15l
00207c9btest r13l, r13l
00207c9ecmovs edx, ecx
00207ca1mov [rsp+12], edx
00207ca5mov ecx, edx
00207ca7test edx, edx
00207ca9jle 0x207d45
00207cafmov edx, 0x7fffffff
00207cb4sub edx, ecx
00207cb6cmp edx, eax
00207cb8jge 0x207d60
00207cbemov edi, 0x7fffffff
00207cc3
00207cc3loc_207cc3:
00207cc3call fn_f41a0
00207cc8
00207cc8loc_207cc8:
00207cc8mov eax, [rsp]
00207ccbtest eax, eax
00207ccdjns 0x207b33
00207cd3xorpd x0, [rip+0x22355]
00207cdbjmp 0x207b33
00207ce0
00207ce0loc_207ce0:
00207ce0lea esi, [rax-65]
00207ce3cmp sil, 5
00207ce7ja 0x207d08
00207ce9add r15l, 4
00207cedsub eax, 55
00207cf0cmp edx, 59
00207cf3jle 0x207d30
00207cf5
00207cf5loc_207cf5:
00207cf5or rbx, 1
00207cf9
00207cf9loc_207cf9:
00207cf9add [rsp+12], 4
00207cfejmp 0x207bf4
00207d03
00207d03 0f 1f 44 00 00 ..D..
00207d08
00207d08loc_207d08:
00207d08lea esi, [rax-97]
00207d0bcmp sil, 5
00207d0fja 0x207d8c
00207d11sub eax, 87
00207d14add r15l, 4
00207d18test eax, eax
00207d1aje 0x207c32
00207d20
00207d20loc_207d20:
00207d20cmp edx, 59
00207d23jle 0x207d30
00207d25test eax, eax
00207d27je 0x207cf9
00207d29jmp 0x207cf5
00207d2b
00207d2b 0f 1f 44 00 00 ..D..
00207d30
00207d30loc_207d30:
00207d30mov rcx, rbx
00207d33cdqe
00207d35add edx, 4
00207d38shl rcx, 4
00207d3clea rbx, [rax+rcx]
00207d40jmp 0x207bf4
00207d45
00207d45loc_207d45:
00207d45jns 0x207d60
00207d47mov ecx, [rsp+12]
00207d4bmov edx, 0xffffffff80000000
00207d50sub edx, ecx
00207d52cmp edx, eax
00207d54jle 0x207d60
00207d56mov edi, 0xffffffff80000000
00207d5bjmp 0x207cc3
00207d60
00207d60loc_207d60:
00207d60mov edi, [rsp+12]
00207d64add edi, eax
00207d66je 0x207cc8
00207d6cjmp 0x207cc3
00207d71
00207d71loc_207d71:
00207d71test rbx, rbx
00207d74jne 0x207d7f
00207d76
00207d76loc_207d76:
00207d76pxor x0, x0
00207d7ajmp 0x207cc8
00207d7f
00207d7floc_207d7f:
00207d7fmovsd_xmm x0, [rip+0x22aa1]
00207d87jmp 0x207cc8
00207d8c
00207d8cloc_207d8c:
00207d8ccmp r14, r12
00207d8fje 0x207d99
00207d91mov rdi, r14
00207d94call caml_stat_free
00207d99
00207d99loc_207d99:
00207d99lea rdi, [rip+0x2714a]
00207da0call caml_failwith
00207da5
00207da5loc_207da5:
00207da5xor eax, eax
00207da7jmp 0x207c7d
00207dac
00207dacloc_207dac:
00207dacmov [rsp+32], 0
00207db1jmp 0x207d99
00207db3
00207db3loc_207db3:
00207db3call fn_f4590
00207a60
00207a60caml_float_of_string:
00207a60push r15
00207a62push r14
00207a64push r13
00207a66push r12
00207a68push rbp
00207a69push rbx
00207a6asub rsp, 120
00207a6emov rbp, [0x28]
00207a77mov [rsp+104], rbp
00207a7cmov rbp, rdi
00207a7fcall caml_string_length
00207a84mov r13, rax
00207a87mov rbx, rbp
00207a8acmp rax, 63
00207a8eja 0x207ba8
00207a94test rax, rax
00207a97je 0x207dac
00207a9dlea r12, [rsp+32]
00207aa2mov r14, r12
00207aa5lea rdi, [rbp+r13]
00207aaamov rbp, r14
00207aadnop [rax+rax]
00207ab8nop [rax]
00207abcmov rax, rbx
00207abfadd rbx, 1
00207ac3movzx eax, [rax]
00207ac6cmp al, 95
00207ac8je 0x207ad5
00207acamov [rbp], al
00207acdadd rbp, 1
00207ad1cmp rbx, rdi
00207ad4jne 0x207ac0
00207ad6mov [rbp], 0
00207adacmp rbp, r14
00207addje 0x207d8c
00207ae3movzx eax, [r14]
00207ae7cmp al, 45
00207ae9je 0x207b90
00207aefmov [rsp], 1
00207af6mov rdi, r14
00207af9cmp al, 43
00207afbje 0x207b78
00207afdcmp al, 48
00207affjne 0x207b14
00207b01
00207b01loc_207b01:
00207b01movzx eax, [rdi+1]
00207b05and eax, -33
00207b08cmp al, 88
00207b0aje 0x207bc0
00207b10mov rdx, [rip+0x170c3d]
00207b17lea rsi, [rsp+24]
00207b1cmov rdi, r14
00207b1fcall fn_f4100
00207b24cmp rbp, [rsp+24]
00207b29jne 0x207d8c
00207b2fcmp r14, r12
00207b32je 0x207b4a
00207b34mov rdi, r14
00207b37movsd_xmm [rsp], x0
00207b3ccall caml_stat_free
00207b41movsd_xmm x0, [rsp]
00207b46call caml_copy_double
00207b4bmov rdx, [rsp+104]
00207b50sub rdx, [0x28]
00207b59jne 0x207db3
00207b5fadd rsp, 120
00207b63pop rbx
00207b64pop rbp
00207b65pop r12
00207b67pop r13
00207b69pop r14
00207b6bpop r15
00207b6dret
00207b6edb 0x5e
00207b6fpop r15
00207b71ret
00207b72
00207b72 66 0f 1f 44 00 00 f..D..
00207b78
00207b78loc_207b78:
00207b78movzx eax, [r14+1]
00207b7dlea rdi, [r14+1]
00207b81jmp 0x207b01
00207b86
00207b86 66 2e 0f 1f 84 00 00 00 00 00 f.........
00207b90
00207b90loc_207b90:
00207b90mov [rsp], -1
00207b97movzx eax, [r14+1]
00207b9clea rdi, [r14+1]
00207ba0jmp 0x207b01
00207ba5
00207ba5 0f 1f 00 ...
00207ba8
00207ba8loc_207ba8:
00207ba8lea rdi, [rax+1]
00207baclea r12, [rsp+32]
00207bb1call caml_stat_alloc
00207bb6mov r14, rax
00207bb9jmp 0x207aa9
00207bbe
00207bbe 66 90 f.
00207bc0
00207bc0loc_207bc0:
00207bc0add rdi, 2
00207bc4cmp rdi, rbp
00207bc7jae 0x207d8c
00207bcdmov [rsp+12], 0
00207bd5xor edx, edx
00207bd7xor r15l, r15l
00207bdaxor ebx, ebx
00207bdcmov r13l, -1
00207be2jmp 0x207bfd
00207be4
00207be4 0f 1f 40 00 ..@.
00207be8
00207be8loc_207be8:
00207be8test r13l, r13l
00207bebjns 0x207d8c
00207bf1mov r13l, r15l
00207bf4
00207bf4loc_207bf4:
00207bf4cmp rbp, rdi
00207bf7je 0x207da5
00207bfd
00207bfdloc_207bfd:
00207bfdmov r9, rdi
00207c00movsx eax, [rdi]
00207c03add rdi, 1
00207c07mov esi, eax
00207c09and esi, -33
00207c0ccmp sil, 80
00207c10je 0x207c40
00207c12cmp al, 46
00207c14je 0x207be8
00207c16lea esi, [rax-48]
00207c19cmp sil, 9
00207c1dja 0x207ce0
00207c23sub eax, 48
00207c26add r15l, 4
00207c2atest eax, eax
00207c2cjne 0x207d20
00207c32
00207c32loc_207c32:
00207c32test rbx, rbx
00207c35jne 0x207d20
00207c3bxor ebx, ebx
00207c3djmp 0x207bf4
00207c3f
00207c3f 90 .
00207c40
00207c40loc_207c40:
00207c40cmp [r9+1], 0
00207c45je 0x207d8c
00207c4blea rsi, [rsp+24]
00207c50mov edx, 10
00207c55call fn_f45d0
00207c5acmp rbp, [rsp+24]
00207c5fjne 0x207d8c
00207c65cmp rax, 0xffffffff80000001
00207c6bjl 0x207d76
00207c71cmp rax, 0x7ffffffe
00207c77jg 0x207d71
00207c7d
00207c7dloc_207c7d:
00207c7dtest r15l, r15l
00207c80je 0x207d8c
00207c86mov ecx, [rsp+12]
00207c8apxor x0, x0
00207c8ecvtsi2sd x0, rbx
00207c93lea edx, [r13+rcx]
00207c98sub edx, r15l
00207c9btest r13l, r13l
00207c9ecmovs edx, ecx
00207ca1mov [rsp+12], edx
00207ca5mov ecx, edx
00207ca7test edx, edx
00207ca9jle 0x207d45
00207cafmov edx, 0x7fffffff
00207cb4sub edx, ecx
00207cb6cmp edx, eax
00207cb8jge 0x207d60
00207cbemov edi, 0x7fffffff
00207cc3
00207cc3loc_207cc3:
00207cc3call fn_f41a0
00207cc8
00207cc8loc_207cc8:
00207cc8mov eax, [rsp]
00207ccbtest eax, eax
00207ccdjns 0x207b33
00207cd3xorpd x0, [rip+0x22355]
00207cdbjmp 0x207b33
00207ce0
00207ce0loc_207ce0:
00207ce0lea esi, [rax-65]
00207ce3cmp sil, 5
00207ce7ja 0x207d08
00207ce9add r15l, 4
00207cedsub eax, 55
00207cf0cmp edx, 59
00207cf3jle 0x207d30
00207cf5
00207cf5loc_207cf5:
00207cf5or rbx, 1
00207cf9
00207cf9loc_207cf9:
00207cf9add [rsp+12], 4
00207cfejmp 0x207bf4
00207d03
00207d03 0f 1f 44 00 00 ..D..
00207d08
00207d08loc_207d08:
00207d08lea esi, [rax-97]
00207d0bcmp sil, 5
00207d0fja 0x207d8c
00207d11sub eax, 87
00207d14add r15l, 4
00207d18test eax, eax
00207d1aje 0x207c32
00207d20
00207d20loc_207d20:
00207d20cmp edx, 59
00207d23jle 0x207d30
00207d25test eax, eax
00207d27je 0x207cf9
00207d29jmp 0x207cf5
00207d2b
00207d2b 0f 1f 44 00 00 ..D..
00207d30
00207d30loc_207d30:
00207d30mov rcx, rbx
00207d33cdqe
00207d35add edx, 4
00207d38shl rcx, 4
00207d3clea rbx, [rax+rcx]
00207d40jmp 0x207bf4
00207d45
00207d45loc_207d45:
00207d45jns 0x207d60
00207d47mov ecx, [rsp+12]
00207d4bmov edx, 0xffffffff80000000
00207d50sub edx, ecx
00207d52cmp edx, eax
00207d54jle 0x207d60
00207d56mov edi, 0xffffffff80000000
00207d5bjmp 0x207cc3
00207d60
00207d60loc_207d60:
00207d60mov edi, [rsp+12]
00207d64add edi, eax
00207d66je 0x207cc8
00207d6cjmp 0x207cc3
00207d71
00207d71loc_207d71:
00207d71test rbx, rbx
00207d74jne 0x207d7f
00207d76
00207d76loc_207d76:
00207d76pxor x0, x0
00207d7ajmp 0x207cc8
00207d7f
00207d7floc_207d7f:
00207d7fmovsd_xmm x0, [rip+0x22aa1]
00207d87jmp 0x207cc8
00207d8c
00207d8cloc_207d8c:
00207d8ccmp r14, r12
00207d8fje 0x207d99
00207d91mov rdi, r14
00207d94call caml_stat_free
00207d99
00207d99loc_207d99:
00207d99lea rdi, [rip+0x2714a]
00207da0call caml_failwith
00207da5
00207da5loc_207da5:
00207da5xor eax, eax
00207da7jmp 0x207c7d
00207dac
00207dacloc_207dac:
00207dacmov [rsp+32], 0
00207db1jmp 0x207d99
00207db3
00207db3loc_207db3:
00207db3call fn_f4590
00207a60
00207db8
00207db8 // align 0x10
00207db8 // align 0x10
00207dc0
00207dc0caml_int_of_float:
00207dc0cvttsd2si rax, [rdi]
00207dc5lea rax, [rax+rax+1]
00207dcaret
00207dcbdb 0x44
00207dccadd [rcx], al
00207dceret
00207dc0
00207dc0caml_int_of_float:
00207dc0cvttsd2si rax, [rdi]
00207dc5lea rax, [rax+rax+1]
00207dcaret
00207dcbdb 0x44
00207dccadd [rcx], al
00207dceret
00207dc0
00207dcf
00207dcf // align 0x10
00207dcf // align 0x10
00207dd0
00207dd0caml_float_of_int:
00207dd0sar rdi, 1
00207dd3pxor x0, x0
00207dd7cvtsi2sd x0, rdi
00207ddcjmp 0x2075f0
00207de1db 0x0b
00207de2clc
00207de3db 0xff
00207de4db 0xff
00207dd0
00207dd0caml_float_of_int:
00207dd0sar rdi, 1
00207dd3pxor x0, x0
00207dd7cvtsi2sd x0, rdi
00207ddcjmp 0x2075f0
00207de1db 0x0b
00207de2clc
00207de3db 0xff
00207de4db 0xff
00207dd0
00207de5
00207de5 // align 0x10
00207de5 // align 0x10
00207df0
00207df0caml_neg_float:
00207df0movsd_xmm x0, [rdi]
00207df4xorpd x0, [rip+0x22230]
00207dfcjmp 0x2075f0
00207e01db 0xeb
00207e02idiv edi
00207e04db 0xff
00207df0
00207df0caml_neg_float:
00207df0movsd_xmm x0, [rdi]
00207df4xorpd x0, [rip+0x22230]
00207dfcjmp 0x2075f0
00207e01db 0xeb
00207e02idiv edi
00207e04db 0xff
00207df0
00207e05
00207e05 // align 0x10
00207e05 // align 0x10
00207e10
00207e10caml_abs_float:
00207e10movsd_xmm x0, [rdi]
00207e14andpd x0, [rip+0x22300]
00207e1cjmp 0x2075f0
00207e21db 0xcb
00207e22idiv edi
00207e24db 0xff
00207e10
00207e10caml_abs_float:
00207e10movsd_xmm x0, [rdi]
00207e14andpd x0, [rip+0x22300]
00207e1cjmp 0x2075f0
00207e21db 0xcb
00207e22idiv edi
00207e24db 0xff
00207e10
00207e25
00207e25 // align 0x10
00207e25 // align 0x10
00207e30
00207e30caml_add_float:
00207e30movsd_xmm x0, [rdi]
00207e34addsd x0, [rsi]
00207e38jmp 0x2075f0
00207e3ddb 0xaf
00207e3eidiv edi
00207e40db 0xff
00207e30
00207e30caml_add_float:
00207e30movsd_xmm x0, [rdi]
00207e34addsd x0, [rsi]
00207e38jmp 0x2075f0
00207e3ddb 0xaf
00207e3eidiv edi
00207e40db 0xff
00207e30
00207e41
00207e41 // align 0x10
00207e41 // align 0x10
00207e50
00207e50caml_sub_float:
00207e50movsd_xmm x0, [rdi]
00207e54subsd x0, [rsi]
00207e58jmp 0x2075f0
00207e5ddb 0x8f
00207e5eidiv edi
00207e60db 0xff
00207e50
00207e50caml_sub_float:
00207e50movsd_xmm x0, [rdi]
00207e54subsd x0, [rsi]
00207e58jmp 0x2075f0
00207e5ddb 0x8f
00207e5eidiv edi
00207e60db 0xff
00207e50
00207e61
00207e61 // align 0x10
00207e61 // align 0x10
00207e70
00207e70caml_mul_float:
00207e70movsd_xmm x0, [rdi]
00207e74mulsd x0, [rsi]
00207e78jmp 0x2075f0
00207e7ddb 0x6f
00207e7eidiv edi
00207e80db 0xff
00207e70
00207e70caml_mul_float:
00207e70movsd_xmm x0, [rdi]
00207e74mulsd x0, [rsi]
00207e78jmp 0x2075f0
00207e7ddb 0x6f
00207e7eidiv edi
00207e80db 0xff
00207e70
00207e81
00207e81 // align 0x10
00207e81 // align 0x10
00207e90
00207e90caml_div_float:
00207e90movsd_xmm x0, [rdi]
00207e94divsd x0, [rsi]
00207e98jmp 0x2075f0
00207e9ddb 0x4f
00207e9eidiv edi
00207ea0db 0xff
00207e90
00207e90caml_div_float:
00207e90movsd_xmm x0, [rdi]
00207e94divsd x0, [rsi]
00207e98jmp 0x2075f0
00207e9ddb 0x4f
00207e9eidiv edi
00207ea0db 0xff
00207e90
00207ea1
00207ea1 // align 0x10
00207ea1 // align 0x10
00207eb0
00207eb0caml_exp_float:
00207eb0sub rsp, 8
00207eb4movsd_xmm x0, [rdi]
00207eb8call fn_f4170
00207ebdadd rsp, 8
00207ec1jmp 0x2075f0
00207ec6db 0x26
00207ec7idiv edi
00207ec9db 0xff
00207eb0
00207eb0caml_exp_float:
00207eb0sub rsp, 8
00207eb4movsd_xmm x0, [rdi]
00207eb8call fn_f4170
00207ebdadd rsp, 8
00207ec1jmp 0x2075f0
00207ec6db 0x26
00207ec7idiv edi
00207ec9db 0xff
00207eb0
00207eca
00207eca // align 0x10
00207eca // align 0x10
00207ed0
00207ed0caml_exp2:
00207ed0jmp 0xf44f0
00207ed5db 0x17
00207ed6db 0xc6
00207ed7out dx, al
00207ed8db 0xff
00207ed0
00207ed0caml_exp2:
00207ed0jmp 0xf44f0
00207ed5db 0x17
00207ed6db 0xc6
00207ed7out dx, al
00207ed8db 0xff
00207ed0
00207ed9
00207ed9 // align 0x10
00207ed9 // align 0x10
00207ee0
00207ee0caml_exp2_float:
00207ee0sub rsp, 8
00207ee4movsd_xmm x0, [rdi]
00207ee8call fn_f44f0
00207eedadd rsp, 8
00207ef1jmp 0x2075f0
00207ef6db 0xf6
00207ef7idiv bh
00207ef9db 0xff
00207ee0
00207ee0caml_exp2_float:
00207ee0sub rsp, 8
00207ee4movsd_xmm x0, [rdi]
00207ee8call fn_f44f0
00207eedadd rsp, 8
00207ef1jmp 0x2075f0
00207ef6db 0xf6
00207ef7idiv bh
00207ef9db 0xff
00207ee0
00207efa
00207efa // align 0x10
00207efa // align 0x10
00207f00
00207f00caml_trunc:
00207f00movsd_xmm x1, [rip+0x22214]
00207f08movsd_xmm x3, [rip+0x2291c]
00207f10movapd x2, x0
00207f14andpd x2, x1
00207f18ucomisd x3, x2
00207f1cjbe 0x207f3c
00207f1ecvttsd2si rax, x0
00207f23pxor x2, x2
00207f27andnpd x1, x0
00207f2bcvtsi2sd x2, rax
00207f30orpd x2, x1
00207f34movapd x0, x2
00207f38ret
00207f39db 0x0f
00207f3asub dl, al
00207f3c
00207f3cloc_207f3c:
00207f3cret
00207f00
00207f00caml_trunc:
00207f00movsd_xmm x1, [rip+0x22214]
00207f08movsd_xmm x3, [rip+0x2291c]
00207f10movapd x2, x0
00207f14andpd x2, x1
00207f18ucomisd x3, x2
00207f1cjbe 0x207f3c
00207f1ecvttsd2si rax, x0
00207f23pxor x2, x2
00207f27andnpd x1, x0
00207f2bcvtsi2sd x2, rax
00207f30orpd x2, x1
00207f34movapd x0, x2
00207f38ret
00207f39db 0x0f
00207f3asub dl, al
00207f3c
00207f3cloc_207f3c:
00207f3cret
00207f00
00207f3d
00207f3d // align 0x10
00207f3d // align 0x10
00207f40
00207f40caml_trunc_float:
00207f40movsd_xmm x0, [rdi]
00207f44movsd_xmm x1, [rip+0x221d0]
00207f4cmovsd_xmm x3, [rip+0x228d8]
00207f54movapd x2, x0
00207f58andpd x2, x1
00207f5cucomisd x3, x2
00207f60jbe 0x207f80
00207f62cvttsd2si rax, x0
00207f67pxor x2, x2
00207f6bandnpd x1, x0
00207f6fcvtsi2sd x2, rax
00207f74movapd x0, x2
00207f78orpd x0, x1
00207f7cjmp 0x2075f0
00207f81db 0x6b
00207f82idiv bh
00207f84db 0xff
00207f40
00207f40caml_trunc_float:
00207f40movsd_xmm x0, [rdi]
00207f44movsd_xmm x1, [rip+0x221d0]
00207f4cmovsd_xmm x3, [rip+0x228d8]
00207f54movapd x2, x0
00207f58andpd x2, x1
00207f5cucomisd x3, x2
00207f60jbe 0x207f80
00207f62cvttsd2si rax, x0
00207f67pxor x2, x2
00207f6bandnpd x1, x0
00207f6fcvtsi2sd x2, rax
00207f74movapd x0, x2
00207f78orpd x0, x1
00207f7cjmp 0x2075f0
00207f81db 0x6b
00207f82idiv bh
00207f84db 0xff
00207f40
00207f85
00207f85 // align 0x10
00207f85 // align 0x10
00207f90
00207f90caml_round:
00207f90jmp 0xf46a0
00207f95db 0x07
00207f96db 0xc7
00207f97out dx, al
00207f98db 0xff
00207f90
00207f90caml_round:
00207f90jmp 0xf46a0
00207f95db 0x07
00207f96db 0xc7
00207f97out dx, al
00207f98db 0xff
00207f90
00207f99
00207f99 // align 0x10
00207f99 // align 0x10
00207fa0
00207fa0caml_round_float:
00207fa0sub rsp, 8
00207fa4movsd_xmm x0, [rdi]
00207fa8call fn_f46a0
00207fadadd rsp, 8
00207fb1jmp 0x2075f0
00207fb6db 0x36
00207fb7idiv bh
00207fb9db 0xff
00207fa0
00207fa0caml_round_float:
00207fa0sub rsp, 8
00207fa4movsd_xmm x0, [rdi]
00207fa8call fn_f46a0
00207fadadd rsp, 8
00207fb1jmp 0x2075f0
00207fb6db 0x36
00207fb7idiv bh
00207fb9db 0xff
00207fa0
00207fba
00207fba // align 0x10
00207fba // align 0x10
00207fc0
00207fc0caml_floor_float:
00207fc0movsd_xmm x0, [rdi]
00207fc4movsd_xmm x2, [rip+0x22150]
00207fccmovsd_xmm x3, [rip+0x22858]
00207fd4movapd x1, x0
00207fd8andpd x1, x2
00207fdcucomisd x3, x1
00207fe0jbe 0x208019
00207fe2cvttsd2si rax, x0
00207fe7pxor x1, x1
00207febmovsd_xmm x4, [rip+0x22811]
00207ff3andnpd x2, x0
00207ff7cvtsi2sd x1, rax
00207ffcmovapd x3, x1
00208000cmpsd x3, x0, 6
00208005andpd x3, x4
00208009subsd x1, x3
0020800dmovapd x0, x1
00208011orpd x0, x2
00208015jmp 0x2075f0
0020801adb 0xd2
0020801bcmc
0020801cdb 0xff
0020801ddb 0xff
00207fc0
00207fc0caml_floor_float:
00207fc0movsd_xmm x0, [rdi]
00207fc4movsd_xmm x2, [rip+0x22150]
00207fccmovsd_xmm x3, [rip+0x22858]
00207fd4movapd x1, x0
00207fd8andpd x1, x2
00207fdcucomisd x3, x1
00207fe0jbe 0x208019
00207fe2cvttsd2si rax, x0
00207fe7pxor x1, x1
00207febmovsd_xmm x4, [rip+0x22811]
00207ff3andnpd x2, x0
00207ff7cvtsi2sd x1, rax
00207ffcmovapd x3, x1
00208000cmpsd x3, x0, 6
00208005andpd x3, x4
00208009subsd x1, x3
0020800dmovapd x0, x1
00208011orpd x0, x2
00208015jmp 0x2075f0
0020801adb 0xd2
0020801bcmc
0020801cdb 0xff
0020801ddb 0xff
00207fc0
Loading..