File hevea_f46f610a6b0078f4aa208dda361f21de574cc56ad64b32889301afc466d33979.elf
Function:
Loading..
00215850
00215850caml_md5_chan:
00215850push rbp
00215851push rbx
00215852sub rsp, 104
00215856movdqa x0, [rip+0x1486e]
0021585emov [rsp], rsi
00215862movq x1, rsp
00215867sar rsi, 1
0021586amov [rsp+8], rdi
0021586fmov rax, [0x28]
00215878mov [rsp+88], rax
0021587dmov rax, [rip+0x60760]
00215884mov rbx, [rax]
00215888lea rax, [rsp+16]
0021588dmovups [rsp+24], x0
00215892mov rbp, [rbx+160]
00215899mov [rbx+160], rax
002158a0lea rax, [rsp+8]
002158a5movq x0, rax
002158aapunpcklqdq x0, x1
002158aemov [rsp+16], rbp
002158b3movups [rsp+40], x0
002158b8mov rdi, [rdi+8]
002158bccall caml_md5_channel
002158c1mov [rbx+160], rbp
002158c8mov rdx, [rsp+88]
002158cdsub rdx, [0x28]
002158d6jne 0x2158e3
002158d8add rsp, 104
002158dcpop rbx
002158ddpop rbp
002158deret
002158dfcall fn_f4590
002158e4db 0xa8
002158e5in al, dx
002158e6in eax, dx
002158e7db 0xff
00215850
00215850caml_md5_chan:
00215850push rbp
00215851push rbx
00215852sub rsp, 104
00215856movdqa x0, [rip+0x1486e]
0021585emov [rsp], rsi
00215862movq x1, rsp
00215867sar rsi, 1
0021586amov [rsp+8], rdi
0021586fmov rax, [0x28]
00215878mov [rsp+88], rax
0021587dmov rax, [rip+0x60760]
00215884mov rbx, [rax]
00215888lea rax, [rsp+16]
0021588dmovups [rsp+24], x0
00215892mov rbp, [rbx+160]
00215899mov [rbx+160], rax
002158a0lea rax, [rsp+8]
002158a5movq x0, rax
002158aapunpcklqdq x0, x1
002158aemov [rsp+16], rbp
002158b3movups [rsp+40], x0
002158b8mov rdi, [rdi+8]
002158bccall caml_md5_channel
002158c1mov [rbx+160], rbp
002158c8mov rdx, [rsp+88]
002158cdsub rdx, [0x28]
002158d6jne 0x2158e3
002158d8add rsp, 104
002158dcpop rbx
002158ddpop rbp
002158deret
002158dfcall fn_f4590
002158e4db 0xa8
002158e5in al, dx
002158e6in eax, dx
002158e7db 0xff
00215850
002158e8
002158e8 // align 0x10
002158e8 // align 0x10
002158f0
002158f0caml_md5_block:
002158f0push rbp
002158f1push rbx
002158f2sub rsp, 104
002158f6movdqa x0, [rip+0x1483e]
002158femov rbx, [0x28]
00215907mov [rsp+88], rbx
0021590cmov rbx, rdi
0021590fmov rdi, rsp
00215912mov [rsp+16], 0
0021591bmovaps [rsp], x0
0021591fcall caml_MD5Update
00215924mov rsi, rsp
00215927mov rdi, rbx
0021592acall caml_MD5Final
0021592fmov rax, [rsp+88]
00215934sub rax, [0x28]
0021593djne 0x21594a
0021593fadd rsp, 104
00215943pop rbx
00215944pop rbp
00215945ret
00215946call fn_f4590
0021594bdb 0x41
0021594cin al, dx
0021594din eax, dx
0021594edb 0xff
002158f0
002158f0caml_md5_block:
002158f0push rbp
002158f1push rbx
002158f2sub rsp, 104
002158f6movdqa x0, [rip+0x1483e]
002158femov rbx, [0x28]
00215907mov [rsp+88], rbx
0021590cmov rbx, rdi
0021590fmov rdi, rsp
00215912mov [rsp+16], 0
0021591bmovaps [rsp], x0
0021591fcall caml_MD5Update
00215924mov rsi, rsp
00215927mov rdi, rbx
0021592acall caml_MD5Final
0021592fmov rax, [rsp+88]
00215934sub rax, [0x28]
0021593djne 0x21594a
0021593fadd rsp, 104
00215943pop rbx
00215944pop rbp
00215945ret
00215946call fn_f4590
0021594bdb 0x41
0021594cin al, dx
0021594din eax, dx
0021594edb 0xff
002158f0
0021594f
0021594f // align 0x10
0021594f // align 0x10
00215950
00215950caml_md5_bytes:
00215950push rbp
00215951sar rsi, 1
00215954sar rdx, 1
00215957push rbx
00215958add rsi, rdi
0021595bsub rsp, 104
0021595fmovdqa x0, [rip+0x147d5]
00215967mov rax, [0x28]
00215970mov [rsp+88], rax
00215975xor eax, eax
00215977mov rdi, rsp
0021597amov [rsp+16], 0
00215983movaps [rsp], x0
00215987call caml_MD5Update
0021598cmov edi, 16
00215991call caml_alloc_string
00215996mov rsi, rsp
00215999mov rdi, rax
0021599cmov rbx, rax
0021599fcall caml_MD5Final
002159a4mov rax, [rsp+88]
002159a9sub rax, [0x28]
002159b2jne 0x2159c2
002159b4add rsp, 104
002159b8mov rax, rbx
002159bbpop rbx
002159bcpop rbp
002159bdret
002159becall fn_f4590
002159c3db 0xc9
002159c4jmp 0x2159b3
002159c6db 0xff
00215950
00215950caml_md5_bytes:
00215950push rbp
00215951sar rsi, 1
00215954sar rdx, 1
00215957push rbx
00215958add rsi, rdi
0021595bsub rsp, 104
0021595fmovdqa x0, [rip+0x147d5]
00215967mov rax, [0x28]
00215970mov [rsp+88], rax
00215975xor eax, eax
00215977mov rdi, rsp
0021597amov [rsp+16], 0
00215983movaps [rsp], x0
00215987call caml_MD5Update
0021598cmov edi, 16
00215991call caml_alloc_string
00215996mov rsi, rsp
00215999mov rdi, rax
0021599cmov rbx, rax
0021599fcall caml_MD5Final
002159a4mov rax, [rsp+88]
002159a9sub rax, [0x28]
002159b2jne 0x2159c2
002159b4add rsp, 104
002159b8mov rax, rbx
002159bbpop rbx
002159bcpop rbp
002159bdret
002159becall fn_f4590
002159c3db 0xc9
002159c4jmp 0x2159b3
002159c6db 0xff
00215950
002159c7
002159c7 // align 0x10
002159c7 // align 0x10
002159d0
002159d0fn_2159d0:
002159d0push rbp
002159d1lea rbp, [rip+0x163188]
002159d8push rbx
002159d9mov rbx, rdi
002159dcmov rdi, rbp
002159dfsub rsp, 8
002159e3call fn_f4710
002159e8test eax, eax
002159eajne 0x215a20
002159ecmov rax, [rip+0x163195]
002159f3mov rdi, rbp
002159f6movq x0, [rax]
002159famovq x1, rax
002159ffpunpcklqdq x0, x1
00215a03movaps [rbx], x0
00215a06mov rdx, [rax]
00215a09mov [rdx+8], rbx
00215a0dmov [rax], rbx
00215a10call fn_f47c0
00215a15test eax, eax
00215a17jne 0x215a2e
00215a19add rsp, 8
00215a1dpop rbx
00215a1epop rbp
00215a1fret
00215a20
00215a20loc_215a20:
00215a20mov esi, eax
00215a22lea rdi, [rip+0x19ae6]
00215a29call caml_plat_fatal_error
00215a2e
00215a2eloc_215a2e:
00215a2emov esi, eax
00215a30lea rdi, [rip+0x19ae3]
00215a37call caml_plat_fatal_error
002159d0
002159d0fn_2159d0:
002159d0push rbp
002159d1lea rbp, [rip+0x163188]
002159d8push rbx
002159d9mov rbx, rdi
002159dcmov rdi, rbp
002159dfsub rsp, 8
002159e3call fn_f4710
002159e8test eax, eax
002159eajne 0x215a20
002159ecmov rax, [rip+0x163195]
002159f3mov rdi, rbp
002159f6movq x0, [rax]
002159famovq x1, rax
002159ffpunpcklqdq x0, x1
00215a03movaps [rbx], x0
00215a06mov rdx, [rax]
00215a09mov [rdx+8], rbx
00215a0dmov [rax], rbx
00215a10call fn_f47c0
00215a15test eax, eax
00215a17jne 0x215a2e
00215a19add rsp, 8
00215a1dpop rbx
00215a1epop rbp
00215a1fret
00215a20
00215a20loc_215a20:
00215a20mov esi, eax
00215a22lea rdi, [rip+0x19ae6]
00215a29call caml_plat_fatal_error
00215a2e
00215a2eloc_215a2e:
00215a2emov esi, eax
00215a30lea rdi, [rip+0x19ae3]
00215a37call caml_plat_fatal_error
002159d0
00215a3c
00215a3c // align 0x10
00215a3c // align 0x10
00215a40
00215a40caml_modify:
00215a40mov rax, [rip+0x162b7d]
00215a47push r12
00215a49push rbp
00215a4amov rbp, rsi
00215a4dpush rbx
00215a4emov rbx, rdi
00215a51mov rsi, [rdi]
00215a54cmp rdi, rax
00215a57jae 0x215a70
00215a59cmp [rip+0x162b6c], rdi
00215a60jae 0x215a70
00215a62mov [rbx], rbp
00215a65pop rbx
00215a66
00215a66loc_215a66:
00215a66pop rbp
00215a67pop r12
00215a69ret
00215a6adb 0x5d
00215a6bpop r12
00215a6dret
00215a6e
00215a6e 66 90 f.
00215a70
00215a70loc_215a70:
00215a70test sil, 1
00215a74jne 0x215a96
00215a76cmp rsi, rax
00215a79jae 0x215a84
00215a7bcmp [rip+0x162b4e], rsi
00215a82jb 0x215a66
00215a84
00215a84loc_215a84:
00215a84mov rax, [rip+0x6055d]
00215a8bxor edx, edx
00215a8dmov rdi, [rax]
00215a91call caml_darken
00215a96
00215a96loc_215a96:
00215a96test bpl, 1
00215a9ajne 0x215a66
00215a9ccmp rbp, [rip+0x162b25]
00215aa3jae 0x215a66
00215aa5cmp [rip+0x162b24], rbp
00215aacjae 0x215a66
00215aaemov rax, [rip+0x60533]
00215ab5mov rax, [rax]
00215ab9mov r12, [rax+96]
00215abdmov rax, [r12+24]
00215ac2cmp rax, [r12+32]
00215ac7jae 0x215ae0
00215ac9
00215ac9loc_215ac9:
00215ac9lea rdx, [rax+8]
00215acdmov [r12+24], rdx
00215ad2mov [rax], rbx
00215ad5jmp 0x215a66
00215ad7
00215ad7 66 0f 1f 84 00 00 00 00 00 f........
00215ae0
00215ae0loc_215ae0:
00215ae0mov rdi, r12
00215ae3call caml_realloc_ref_table
00215ae8mov rax, [r12+24]
00215aedjmp 0x215ac9
00215a40
00215a40caml_modify:
00215a40mov rax, [rip+0x162b7d]
00215a47push r12
00215a49push rbp
00215a4amov rbp, rsi
00215a4dpush rbx
00215a4emov rbx, rdi
00215a51mov rsi, [rdi]
00215a54cmp rdi, rax
00215a57jae 0x215a70
00215a59cmp [rip+0x162b6c], rdi
00215a60jae 0x215a70
00215a62mov [rbx], rbp
00215a65pop rbx
00215a66
00215a66loc_215a66:
00215a66pop rbp
00215a67pop r12
00215a69ret
00215a6adb 0x5d
00215a6bpop r12
00215a6dret
00215a6e
00215a6e 66 90 f.
00215a70
00215a70loc_215a70:
00215a70test sil, 1
00215a74jne 0x215a96
00215a76cmp rsi, rax
00215a79jae 0x215a84
00215a7bcmp [rip+0x162b4e], rsi
00215a82jb 0x215a66
00215a84
00215a84loc_215a84:
00215a84mov rax, [rip+0x6055d]
00215a8bxor edx, edx
00215a8dmov rdi, [rax]
00215a91call caml_darken
00215a96
00215a96loc_215a96:
00215a96test bpl, 1
00215a9ajne 0x215a66
00215a9ccmp rbp, [rip+0x162b25]
00215aa3jae 0x215a66
00215aa5cmp [rip+0x162b24], rbp
00215aacjae 0x215a66
00215aaemov rax, [rip+0x60533]
00215ab5mov rax, [rax]
00215ab9mov r12, [rax+96]
00215abdmov rax, [r12+24]
00215ac2cmp rax, [r12+32]
00215ac7jae 0x215ae0
00215ac9
00215ac9loc_215ac9:
00215ac9lea rdx, [rax+8]
00215acdmov [r12+24], rdx
00215ad2mov [rax], rbx
00215ad5jmp 0x215a66
00215ad7
00215ad7 66 0f 1f 84 00 00 00 00 00 f........
00215ae0
00215ae0loc_215ae0:
00215ae0mov rdi, r12
00215ae3call caml_realloc_ref_table
00215ae8mov rax, [r12+24]
00215aedjmp 0x215ac9
00215a40
00215aef
00215aef // align 0x10
00215aef // align 0x10
00215af0
00215af0caml_alloc_dependent_memory:
00215af0mov rax, [rip+0x604ed]
00215af7shr rdi, 3
00215afbmovq x0, rdi
00215b00mov rax, [rax]
00215b04punpcklqdq x0, x0
00215b08movdqu x1, [rax+328]
00215b10paddq x0, x1
00215b14movups [rax+328], x0
00215b1bret
00215b1cdb 0x01
00215b1dadd [rax], al
00215b1fret
00215af0
00215af0caml_alloc_dependent_memory:
00215af0mov rax, [rip+0x604ed]
00215af7shr rdi, 3
00215afbmovq x0, rdi
00215b00mov rax, [rax]
00215b04punpcklqdq x0, x0
00215b08movdqu x1, [rax+328]
00215b10paddq x0, x1
00215b14movups [rax+328], x0
00215b1bret
00215b1cdb 0x01
00215b1dadd [rax], al
00215b1fret
00215af0
00215b20
00215b20caml_free_dependent_memory:
00215b20mov rax, [rip+0x604bd]
00215b27shr rdi, 3
00215b2bmov rdx, [rax]
00215b2fmov rcx, [rdx+328]
00215b36mov rax, rcx
00215b39sub rax, rdi
00215b3ccmp rcx, rdi
00215b3fmov ecx, 0
00215b44cmovb rax, rcx
00215b48mov [rdx+328], rax
00215b4fret
00215b50db 0x01
00215b51add [rax], al
00215b53ret
00215b20
00215b20caml_free_dependent_memory:
00215b20mov rax, [rip+0x604bd]
00215b27shr rdi, 3
00215b2bmov rdx, [rax]
00215b2fmov rcx, [rdx+328]
00215b36mov rax, rcx
00215b39sub rax, rdi
00215b3ccmp rcx, rdi
00215b3fmov ecx, 0
00215b44cmovb rax, rcx
00215b48mov [rdx+328], rax
00215b4fret
00215b50db 0x01
00215b51add [rax], al
00215b53ret
00215b20
00215b54
00215b54 // align 0x10
00215b54 // align 0x10
00215b60
00215b60caml_adjust_gc_speed:
00215b60push rbx
00215b61mov rbx, rdi
00215b64test rsi, rsi
00215b67je 0x215c08
00215b6dcmp rsi, rbx
00215b70mov rax, [rip+0x6046d]
00215b77cmovbe rbx, rsi
00215b7bmov rax, [rax]
00215b7fmov rdi, rbx
00215b82test rbx, rbx
00215b85js 0x215bc8
00215b87pxor x0, x0
00215b8bcvtsi2sd x0, rbx
00215b90test rsi, rsi
00215b93js 0x215be6
00215b95pxor x1, x1
00215b99
00215b99loc_215b99:
00215b99cvtsi2sd x1, rsi
00215b9edivsd x0, x1
00215ba2
00215ba2loc_215ba2:
00215ba2addsd x0, [rax+312]
00215baacomisd x0, [rip+0x14c9a]
00215bb2movsd_xmm [rax+312], x0
00215bbaja 0x215c18
00215bbcpop rbx
00215bbdret
00215bbedb 0x77
00215bbfpop rax
00215bc0pop rbx
00215bc1ret
00215bc2
00215bc2 66 0f 1f 44 00 00 f..D..
00215bc8
00215bc8loc_215bc8:
00215bc8mov rdx, rbx
00215bcband edi, 1
00215bcepxor x0, x0
00215bd2shr rdx, 1
00215bd5or rdx, rdi
00215bd8cvtsi2sd x0, rdx
00215bddaddsd x0, x0
00215be1test rsi, rsi
00215be4jns 0x215b99
00215be6
00215be6loc_215be6:
00215be6mov rdx, rsi
00215be9and esi, 1
00215becpxor x1, x1
00215bf0shr rdx, 1
00215bf3or rdx, rsi
00215bf6cvtsi2sd x1, rdx
00215bfbaddsd x1, x1
00215bffjmp 0x215ba2
00215c01
00215c01 0f 1f 80 00 00 00 00 .......
00215c08
00215c08loc_215c08:
00215c08call caml_custom_get_max_major
00215c0dmov rsi, rax
00215c10jmp 0x215b71
00215c15
00215c15 0f 1f 00 ...
00215c18
00215c18loc_215c18:
00215c18mov edi, 7
00215c1dmov esi, 1
00215c22call caml_ev_counter
00215c27mov edi, 1
00215c2cpop rbx
00215c2djmp 0x21fc90
00215b60
00215b60caml_adjust_gc_speed:
00215b60push rbx
00215b61mov rbx, rdi
00215b64test rsi, rsi
00215b67je 0x215c08
00215b6dcmp rsi, rbx
00215b70mov rax, [rip+0x6046d]
00215b77cmovbe rbx, rsi
00215b7bmov rax, [rax]
00215b7fmov rdi, rbx
00215b82test rbx, rbx
00215b85js 0x215bc8
00215b87pxor x0, x0
00215b8bcvtsi2sd x0, rbx
00215b90test rsi, rsi
00215b93js 0x215be6
00215b95pxor x1, x1
00215b99
00215b99loc_215b99:
00215b99cvtsi2sd x1, rsi
00215b9edivsd x0, x1
00215ba2
00215ba2loc_215ba2:
00215ba2addsd x0, [rax+312]
00215baacomisd x0, [rip+0x14c9a]
00215bb2movsd_xmm [rax+312], x0
00215bbaja 0x215c18
00215bbcpop rbx
00215bbdret
00215bbedb 0x77
00215bbfpop rax
00215bc0pop rbx
00215bc1ret
00215bc2
00215bc2 66 0f 1f 44 00 00 f..D..
00215bc8
00215bc8loc_215bc8:
00215bc8mov rdx, rbx
00215bcband edi, 1
00215bcepxor x0, x0
00215bd2shr rdx, 1
00215bd5or rdx, rdi
00215bd8cvtsi2sd x0, rdx
00215bddaddsd x0, x0
00215be1test rsi, rsi
00215be4jns 0x215b99
00215be6
00215be6loc_215be6:
00215be6mov rdx, rsi
00215be9and esi, 1
00215becpxor x1, x1
00215bf0shr rdx, 1
00215bf3or rdx, rsi
00215bf6cvtsi2sd x1, rdx
00215bfbaddsd x1, x1
00215bffjmp 0x215ba2
00215c01
00215c01 0f 1f 80 00 00 00 00 .......
00215c08
00215c08loc_215c08:
00215c08call caml_custom_get_max_major
00215c0dmov rsi, rax
00215c10jmp 0x215b71
00215c15
00215c15 0f 1f 00 ...
00215c18
00215c18loc_215c18:
00215c18mov edi, 7
00215c1dmov esi, 1
00215c22call caml_ev_counter
00215c27mov edi, 1
00215c2cpop rbx
00215c2djmp 0x21fc90
00215b60
00215c32
00215c32 // align 0x10
00215c32 // align 0x10
00215c40
00215c40caml_adjust_minor_gc_speed:
00215c40mov rax, [rip+0x6039d]
00215c47mov rax, [rax]
00215c4btest rdi, rdi
00215c4ejs 0x215cc8
00215c50pxor x0, x0
00215c54cvtsi2sd x0, rdi
00215c59test rsi, rsi
00215c5cmov edx, 1
00215c61cmove rsi, rdx
00215c65test rsi, rsi
00215c68js 0x215ca8
00215c6apxor x1, x1
00215c6ecvtsi2sd x1, rsi
00215c73divsd x0, x1
00215c77
00215c77loc_215c77:
00215c77addsd x0, [rax+320]
00215c7fcomisd x0, [rip+0x14b7d]
00215c87movsd_xmm [rax+320], x0
00215c8fja 0x215ca0
00215c91ret
00215c92db 0x00
00215c93ja 0x215ca0
00215c95ret
00215c96
00215c96 66 2e 0f 1f 84 00 00 00 00 00 f.........
00215ca0
00215ca0loc_215ca0:
00215ca0jmp 0x21fcd0
00215ca5
00215ca5 0f 1f 00 ...
00215ca8
00215ca8loc_215ca8:
00215ca8mov rdx, rsi
00215caband esi, 1
00215caepxor x1, x1
00215cb2shr rdx, 1
00215cb5or rdx, rsi
00215cb8cvtsi2sd x1, rdx
00215cbdaddsd x1, x1
00215cc1jmp 0x215c77
00215cc3
00215cc3 0f 1f 44 00 00 ..D..
00215cc8
00215cc8loc_215cc8:
00215cc8mov rdx, rdi
00215ccband edi, 1
00215ccepxor x0, x0
00215cd2shr rdx, 1
00215cd5or rdx, rdi
00215cd8cvtsi2sd x0, rdx
00215cddaddsd x0, x0
00215ce1jmp 0x215c5d
00215c40
00215c40caml_adjust_minor_gc_speed:
00215c40mov rax, [rip+0x6039d]
00215c47mov rax, [rax]
00215c4btest rdi, rdi
00215c4ejs 0x215cc8
00215c50pxor x0, x0
00215c54cvtsi2sd x0, rdi
00215c59test rsi, rsi
00215c5cmov edx, 1
00215c61cmove rsi, rdx
00215c65test rsi, rsi
00215c68js 0x215ca8
00215c6apxor x1, x1
00215c6ecvtsi2sd x1, rsi
00215c73divsd x0, x1
00215c77
00215c77loc_215c77:
00215c77addsd x0, [rax+320]
00215c7fcomisd x0, [rip+0x14b7d]
00215c87movsd_xmm [rax+320], x0
00215c8fja 0x215ca0
00215c91ret
00215c92db 0x00
00215c93ja 0x215ca0
00215c95ret
00215c96
00215c96 66 2e 0f 1f 84 00 00 00 00 00 f.........
00215ca0
00215ca0loc_215ca0:
00215ca0jmp 0x21fcd0
00215ca5
00215ca5 0f 1f 00 ...
00215ca8
00215ca8loc_215ca8:
00215ca8mov rdx, rsi
00215caband esi, 1
00215caepxor x1, x1
00215cb2shr rdx, 1
00215cb5or rdx, rsi
00215cb8cvtsi2sd x1, rdx
00215cbdaddsd x1, x1
00215cc1jmp 0x215c77
00215cc3
00215cc3 0f 1f 44 00 00 ..D..
00215cc8
00215cc8loc_215cc8:
00215cc8mov rdx, rdi
00215ccband edi, 1
00215ccepxor x0, x0
00215cd2shr rdx, 1
00215cd5or rdx, rdi
00215cd8cvtsi2sd x0, rdx
00215cddaddsd x0, x0
00215ce1jmp 0x215c5d
00215c40
00215ce6
00215ce6 // align 0x10
00215ce6 // align 0x10
00215cf0
00215cf0caml_initialize:
00215cf0push rbp
00215cf1push rbx
00215cf2mov rbx, rdi
00215cf5sub rsp, 8
00215cf9mov [rdi], rsi
00215cfcmov rax, [rip+0x1628c1]
00215d03cmp rdi, rax
00215d06jae 0x215d20
00215d08cmp [rip+0x1628bd], rdi
00215d0fjae 0x215d20
00215d11add rsp, 8
00215d15
00215d15loc_215d15:
00215d15pop rbx
00215d16pop rbp
00215d17ret
00215d18db 0x08
00215d19pop rbx
00215d1apop rbp
00215d1bret
00215d1c
00215d1c 0f 1f 40 00 ..@.
00215d20
00215d20loc_215d20:
00215d20test sil, 1
00215d24jne 0x215d15
00215d26cmp rsi, rax
00215d29jae 0x215d15
00215d2bcmp [rip+0x16289e], rsi
00215d32jae 0x215d15
00215d34mov rax, [rip+0x602ad]
00215d3bmov rax, [rax]
00215d3fmov rbp, [rax+96]
00215d43mov rax, [rbp+24]
00215d47cmp rax, [rbp+32]
00215d4bjae 0x215d60
00215d4d
00215d4dloc_215d4d:
00215d4dlea rdx, [rax+8]
00215d51mov [rbp+24], rdx
00215d55mov [rax], rbx
00215d58jmp 0x215d15
00215d5a
00215d5a 66 0f 1f 44 00 00 f..D..
00215d60
00215d60loc_215d60:
00215d60mov rdi, rbp
00215d63call caml_realloc_ref_table
00215d68mov rax, [rbp+24]
00215d6cjmp 0x215d4d
00215cf0
00215cf0caml_initialize:
00215cf0push rbp
00215cf1push rbx
00215cf2mov rbx, rdi
00215cf5sub rsp, 8
00215cf9mov [rdi], rsi
00215cfcmov rax, [rip+0x1628c1]
00215d03cmp rdi, rax
00215d06jae 0x215d20
00215d08cmp [rip+0x1628bd], rdi
00215d0fjae 0x215d20
00215d11add rsp, 8
00215d15
00215d15loc_215d15:
00215d15pop rbx
00215d16pop rbp
00215d17ret
00215d18db 0x08
00215d19pop rbx
00215d1apop rbp
00215d1bret
00215d1c
00215d1c 0f 1f 40 00 ..@.
00215d20
00215d20loc_215d20:
00215d20test sil, 1
00215d24jne 0x215d15
00215d26cmp rsi, rax
00215d29jae 0x215d15
00215d2bcmp [rip+0x16289e], rsi
00215d32jae 0x215d15
00215d34mov rax, [rip+0x602ad]
00215d3bmov rax, [rax]
00215d3fmov rbp, [rax+96]
00215d43mov rax, [rbp+24]
00215d47cmp rax, [rbp+32]
00215d4bjae 0x215d60
00215d4d
00215d4dloc_215d4d:
00215d4dlea rdx, [rax+8]
00215d51mov [rbp+24], rdx
00215d55mov [rax], rbx
00215d58jmp 0x215d15
00215d5a
00215d5a 66 0f 1f 44 00 00 f..D..
00215d60
00215d60loc_215d60:
00215d60mov rdi, rbp
00215d63call caml_realloc_ref_table
00215d68mov rax, [rbp+24]
00215d6cjmp 0x215d4d
00215cf0
00215d6e
00215d6e // align 0x10
00215d6e // align 0x10
00215d70
00215d70caml_atomic_cas_field:
00215d70push rbp
00215d71mov rax, rdx
00215d74lea rbp, [rdi+8*rsi]
00215d78push rbx
00215d79mov rbx, rcx
00215d7csub rsp, 8
00215d80mov rdx, [rip+0x162855]
00215d87cmp rdx, 1
00215d8bjne 0x215db0
00215d8dmov rdx, [rbp]
00215d91cmp rdx, rax
00215d94je 0x215e40
00215d9aadd rsp, 8
00215d9e
00215d9eloc_215d9e:
00215d9exor eax, eax
00215da0pop rbx
00215da1pop rbp
00215da2ret
00215da3db 0xc0
00215da4pop rbx
00215da5pop rbp
00215da6ret
00215da7
00215da7 66 0f 1f 84 00 00 00 00 00 f........
00215db0
00215db0loc_215db0:
00215db0lock cmpxchg [rbp], rcx
00215db6jne 0x215d9e
00215db8mov rdx, [rip+0x162809]
00215dbfcmp rdi, rdx
00215dc2jae 0x215dcd
00215dc4
00215dc4loc_215dc4:
00215dc4cmp [rip+0x162805], rdi
00215dcbjb 0x215e2f
00215dcd
00215dcdloc_215dcd:
00215dcdtest al, 1
00215dcfjne 0x215df4
00215dd1cmp rax, rdx
00215dd4jae 0x215ddf
00215dd6cmp [rip+0x1627f3], rax
00215dddjb 0x215e2f
00215ddf
00215ddfloc_215ddf:
00215ddfmov rdx, [rip+0x60202]
00215de6mov rsi, rax
00215de9mov rdi, [rdx]
00215dedxor edx, edx
00215defcall caml_darken
00215df4
00215df4loc_215df4:
00215df4test bl, 1
00215df7jne 0x215e2f
00215df9cmp rbx, [rip+0x1627c8]
00215e00jae 0x215e2f
00215e02cmp [rip+0x1627c7], rbx
00215e09jae 0x215e2f
00215e0bmov rax, [rip+0x601d6]
00215e12mov rax, [rax]
00215e16mov rbx, [rax+96]
00215e1amov rax, [rbx+24]
00215e1ecmp rax, [rbx+32]
00215e22jae 0x215e60
00215e24
00215e24loc_215e24:
00215e24lea rdx, [rax+8]
00215e28mov [rbx+24], rdx
00215e2cmov [rax], rbp
00215e2f
00215e2floc_215e2f:
00215e2fadd rsp, 8
00215e33mov eax, 1
00215e38pop rbx
00215e39pop rbp
00215e3aret
00215e3b
00215e3b 0f 1f 44 00 00 ..D..
00215e40
00215e40loc_215e40:
00215e40mov [rbp], rcx
00215e44mov rdx, [rip+0x16277d]
00215e4bcmp rdi, rdx
00215e4ejae 0x215dcd
00215e54jmp 0x215dc4
00215e59
00215e59 0f 1f 80 00 00 00 00 .......
00215e60
00215e60loc_215e60:
00215e60mov rdi, rbx
00215e63call caml_realloc_ref_table
00215e68mov rax, [rbx+24]
00215e6cjmp 0x215e24
00215d70
00215d70caml_atomic_cas_field:
00215d70push rbp
00215d71mov rax, rdx
00215d74lea rbp, [rdi+8*rsi]
00215d78push rbx
00215d79mov rbx, rcx
00215d7csub rsp, 8
00215d80mov rdx, [rip+0x162855]
00215d87cmp rdx, 1
00215d8bjne 0x215db0
00215d8dmov rdx, [rbp]
00215d91cmp rdx, rax
00215d94je 0x215e40
00215d9aadd rsp, 8
00215d9e
00215d9eloc_215d9e:
00215d9exor eax, eax
00215da0pop rbx
00215da1pop rbp
00215da2ret
00215da3db 0xc0
00215da4pop rbx
00215da5pop rbp
00215da6ret
00215da7
00215da7 66 0f 1f 84 00 00 00 00 00 f........
00215db0
00215db0loc_215db0:
00215db0lock cmpxchg [rbp], rcx
00215db6jne 0x215d9e
00215db8mov rdx, [rip+0x162809]
00215dbfcmp rdi, rdx
00215dc2jae 0x215dcd
00215dc4
00215dc4loc_215dc4:
00215dc4cmp [rip+0x162805], rdi
00215dcbjb 0x215e2f
00215dcd
00215dcdloc_215dcd:
00215dcdtest al, 1
00215dcfjne 0x215df4
00215dd1cmp rax, rdx
00215dd4jae 0x215ddf
00215dd6cmp [rip+0x1627f3], rax
00215dddjb 0x215e2f
00215ddf
00215ddfloc_215ddf:
00215ddfmov rdx, [rip+0x60202]
00215de6mov rsi, rax
00215de9mov rdi, [rdx]
00215dedxor edx, edx
00215defcall caml_darken
00215df4
00215df4loc_215df4:
00215df4test bl, 1
00215df7jne 0x215e2f
00215df9cmp rbx, [rip+0x1627c8]
00215e00jae 0x215e2f
00215e02cmp [rip+0x1627c7], rbx
00215e09jae 0x215e2f
00215e0bmov rax, [rip+0x601d6]
00215e12mov rax, [rax]
00215e16mov rbx, [rax+96]
00215e1amov rax, [rbx+24]
00215e1ecmp rax, [rbx+32]
00215e22jae 0x215e60
00215e24
00215e24loc_215e24:
00215e24lea rdx, [rax+8]
00215e28mov [rbx+24], rdx
00215e2cmov [rax], rbp
00215e2f
00215e2floc_215e2f:
00215e2fadd rsp, 8
00215e33mov eax, 1
00215e38pop rbx
00215e39pop rbp
00215e3aret
00215e3b
00215e3b 0f 1f 44 00 00 ..D..
00215e40
00215e40loc_215e40:
00215e40mov [rbp], rcx
00215e44mov rdx, [rip+0x16277d]
00215e4bcmp rdi, rdx
00215e4ejae 0x215dcd
00215e54jmp 0x215dc4
00215e59
00215e59 0f 1f 80 00 00 00 00 .......
00215e60
00215e60loc_215e60:
00215e60mov rdi, rbx
00215e63call caml_realloc_ref_table
00215e68mov rax, [rbx+24]
00215e6cjmp 0x215e24
00215d70
00215e6e
00215e6e // align 0x10
00215e6e // align 0x10
00215e70
00215e70caml_atomic_load:
00215e70mov rax, [rip+0x162765]
00215e77cmp rax, 1
00215e7bjne 0x215e88
00215e7dmov rax, [rdi]
00215e80ret
00215e81db 0x48
00215e82mov eax, [rdi]
00215e84ret
00215e85
00215e85 0f 1f 00 ...
00215e88
00215e88loc_215e88:
00215e88mov rax, [rdi]
00215e8bret
00215e70
00215e70caml_atomic_load:
00215e70mov rax, [rip+0x162765]
00215e77cmp rax, 1
00215e7bjne 0x215e88
00215e7dmov rax, [rdi]
00215e80ret
00215e81db 0x48
00215e82mov eax, [rdi]
00215e84ret
00215e85
00215e85 0f 1f 00 ...
00215e88
00215e88loc_215e88:
00215e88mov rax, [rdi]
00215e8bret
00215e70
00215e8c
00215e8c // align 0x10
00215e8c // align 0x10
00215e90
00215e90caml_atomic_exchange:
00215e90push r12
00215e92push rbp
00215e93mov rbp, rsi
00215e96push rbx
00215e97mov rax, [rip+0x16273e]
00215e9emov rbx, rdi
00215ea1cmp rax, 1
00215ea5jne 0x215f40
00215eabmov r12, [rdi]
00215eaemov [rbx], rsi
00215eb1mov rax, [rip+0x16270c]
00215eb8cmp rbx, rax
00215ebbjae 0x215ed8
00215ebdcmp [rip+0x162708], rbx
00215ec4jae 0x215ed8
00215ec6mov rax, r12
00215ec9pop rbx
00215eca
00215ecaloc_215eca:
00215ecapop rbp
00215ecbpop r12
00215ecdret
00215ecedb 0x5d
00215ecfpop r12
00215ed1ret
00215ed2
00215ed2 66 0f 1f 44 00 00 f..D..
00215ed8
00215ed8loc_215ed8:
00215ed8test r12b, 1
00215edcjne 0x215f01
00215edecmp r12, rax
00215ee1jae 0x215eec
00215ee3cmp [rip+0x1626e6], r12
00215eeajb 0x215eca
00215eec
00215eecloc_215eec:
00215eecmov rax, [rip+0x600f5]
00215ef3xor edx, edx
00215ef5mov rsi, r12
00215ef8mov rdi, [rax]
00215efccall caml_darken
00215f01
00215f01loc_215f01:
00215f01test bpl, 1
00215f05jne 0x215eca
00215f07cmp rbp, [rip+0x1626ba]
00215f0ejae 0x215eca
00215f10cmp [rip+0x1626b9], rbp
00215f17jae 0x215eca
00215f19mov rax, [rip+0x600c8]
00215f20mov rax, [rax]
00215f24mov rbp, [rax+96]
00215f28mov rax, [rbp+24]
00215f2ccmp rax, [rbp+32]
00215f30jae 0x215f50
00215f32
00215f32loc_215f32:
00215f32lea rdx, [rax+8]
00215f36mov [rbp+24], rdx
00215f3amov [rax], rbx
00215f3djmp 0x215eca
00215f3f
00215f3f 90 .
00215f40
00215f40loc_215f40:
00215f40mov r12, rsi
00215f43xchg [rdi], r12
00215f46jmp 0x215eb5
00215f4b
00215f4b 0f 1f 44 00 00 ..D..
00215f50
00215f50loc_215f50:
00215f50mov rdi, rbp
00215f53call caml_realloc_ref_table
00215f58mov rax, [rbp+24]
00215f5cjmp 0x215f32
00215e90
00215e90caml_atomic_exchange:
00215e90push r12
00215e92push rbp
00215e93mov rbp, rsi
00215e96push rbx
00215e97mov rax, [rip+0x16273e]
00215e9emov rbx, rdi
00215ea1cmp rax, 1
00215ea5jne 0x215f40
00215eabmov r12, [rdi]
00215eaemov [rbx], rsi
00215eb1mov rax, [rip+0x16270c]
00215eb8cmp rbx, rax
00215ebbjae 0x215ed8
00215ebdcmp [rip+0x162708], rbx
00215ec4jae 0x215ed8
00215ec6mov rax, r12
00215ec9pop rbx
00215eca
00215ecaloc_215eca:
00215ecapop rbp
00215ecbpop r12
00215ecdret
00215ecedb 0x5d
00215ecfpop r12
00215ed1ret
00215ed2
00215ed2 66 0f 1f 44 00 00 f..D..
00215ed8
00215ed8loc_215ed8:
00215ed8test r12b, 1
00215edcjne 0x215f01
00215edecmp r12, rax
00215ee1jae 0x215eec
00215ee3cmp [rip+0x1626e6], r12
00215eeajb 0x215eca
00215eec
00215eecloc_215eec:
00215eecmov rax, [rip+0x600f5]
00215ef3xor edx, edx
00215ef5mov rsi, r12
00215ef8mov rdi, [rax]
00215efccall caml_darken
00215f01
00215f01loc_215f01:
00215f01test bpl, 1
00215f05jne 0x215eca
00215f07cmp rbp, [rip+0x1626ba]
00215f0ejae 0x215eca
00215f10cmp [rip+0x1626b9], rbp
00215f17jae 0x215eca
00215f19mov rax, [rip+0x600c8]
00215f20mov rax, [rax]
00215f24mov rbp, [rax+96]
00215f28mov rax, [rbp+24]
00215f2ccmp rax, [rbp+32]
00215f30jae 0x215f50
00215f32
00215f32loc_215f32:
00215f32lea rdx, [rax+8]
00215f36mov [rbp+24], rdx
00215f3amov [rax], rbx
00215f3djmp 0x215eca
00215f3f
00215f3f 90 .
00215f40
00215f40loc_215f40:
00215f40mov r12, rsi
00215f43xchg [rdi], r12
00215f46jmp 0x215eb5
00215f4b
00215f4b 0f 1f 44 00 00 ..D..
00215f50
00215f50loc_215f50:
00215f50mov rdi, rbp
00215f53call caml_realloc_ref_table
00215f58mov rax, [rbp+24]
00215f5cjmp 0x215f32
00215e90
00215f5e
00215f5e // align 0x10
00215f5e // align 0x10
00215f60
00215f60caml_atomic_cas:
00215f60push rbp
00215f61mov rbp, rdx
00215f64push rbx
00215f65mov rbx, rdi
00215f68sub rsp, 8
00215f6cmov rdx, [rip+0x162669]
00215f73cmp rdx, 1
00215f77jne 0x215f98
00215f79cmp [rdi], rsi
00215f7cje 0x216030
00215f82add rsp, 8
00215f86
00215f86loc_215f86:
00215f86mov eax, 1
00215f8bpop rbx
00215f8cpop rbp
00215f8dret
00215f8edb 0x00
00215f8fpop rbx
00215f90pop rbp
00215f91ret
00215f92
00215f92 66 0f 1f 44 00 00 f..D..
00215f98
00215f98loc_215f98:
00215f98mov rax, rsi
00215f9block cmpxchg [rdi], rbp
00215fa0jne 0x215f86
00215fa2mov rdx, [rip+0x16261f]
00215fa9cmp rdi, rdx
00215facjae 0x215fc8
00215faecmp [rip+0x16261b], rdi
00215fb5jae 0x215fc8
00215fb7
00215fb7loc_215fb7:
00215fb7add rsp, 8
00215fbbmov eax, 3
00215fc0pop rbx
00215fc1pop rbp
00215fc2ret
00215fc3
00215fc3 0f 1f 44 00 00 ..D..
00215fc8
00215fc8loc_215fc8:
00215fc8test al, 1
00215fcajne 0x215fef
00215fcccmp rax, rdx
00215fcfjae 0x215fda
00215fd1cmp [rip+0x1625f8], rax
00215fd8jb 0x215fb7
00215fda
00215fdaloc_215fda:
00215fdamov rdx, [rip+0x60007]
00215fe1mov rsi, rax
00215fe4mov rdi, [rdx]
00215fe8xor edx, edx
00215feacall caml_darken
00215fef
00215fefloc_215fef:
00215feftest bpl, 1
00215ff3jne 0x215fb7
00215ff5cmp rbp, [rip+0x1625cc]
00215ffcjae 0x215fb7
00215ffecmp [rip+0x1625cb], rbp
00216005jae 0x215fb7
00216007mov rax, [rip+0x5ffda]
0021600emov rax, [rax]
00216012mov rbp, [rax+96]
00216016mov rax, [rbp+24]
0021601acmp rax, [rbp+32]
0021601ejae 0x216080
00216020
00216020loc_216020:
00216020lea rdx, [rax+8]
00216024mov [rbp+24], rdx
00216028mov [rax], rbx
0021602bjmp 0x215fb7
0021602d
0021602d 0f 1f 00 ...
00216030
00216030loc_216030:
00216030mov [rdi], rbp
00216033mov rdx, [rip+0x16258e]
0021603acmp rdi, rdx
0021603djb 0x216070
0021603f
0021603floc_21603f:
0021603ftest sil, 1
00216043jne 0x215fef
00216045cmp rsi, rdx
00216048jae 0x216057
0021604acmp [rip+0x16257f], rsi
00216051jb 0x215fb7
00216057
00216057loc_216057:
00216057mov rdx, [rip+0x5ff8a]
0021605emov rdi, [rdx]
00216062xor edx, edx
00216064call caml_darken
00216069jmp 0x215fef
0021606b
0021606b 0f 1f 44 00 00 ..D..
00216070
00216070loc_216070:
00216070cmp [rip+0x162559], rdi
00216077jb 0x215fb7
0021607djmp 0x21603f
0021607f
0021607f 90 .
00216080
00216080loc_216080:
00216080mov rdi, rbp
00216083call caml_realloc_ref_table
00216088mov rax, [rbp+24]
0021608cjmp 0x216020
00215f60
00215f60caml_atomic_cas:
00215f60push rbp
00215f61mov rbp, rdx
00215f64push rbx
00215f65mov rbx, rdi
00215f68sub rsp, 8
00215f6cmov rdx, [rip+0x162669]
00215f73cmp rdx, 1
00215f77jne 0x215f98
00215f79cmp [rdi], rsi
00215f7cje 0x216030
00215f82add rsp, 8
00215f86
00215f86loc_215f86:
00215f86mov eax, 1
00215f8bpop rbx
00215f8cpop rbp
00215f8dret
00215f8edb 0x00
00215f8fpop rbx
00215f90pop rbp
00215f91ret
00215f92
00215f92 66 0f 1f 44 00 00 f..D..
00215f98
00215f98loc_215f98:
00215f98mov rax, rsi
00215f9block cmpxchg [rdi], rbp
00215fa0jne 0x215f86
00215fa2mov rdx, [rip+0x16261f]
00215fa9cmp rdi, rdx
00215facjae 0x215fc8
00215faecmp [rip+0x16261b], rdi
00215fb5jae 0x215fc8
00215fb7
00215fb7loc_215fb7:
00215fb7add rsp, 8
00215fbbmov eax, 3
00215fc0pop rbx
00215fc1pop rbp
00215fc2ret
00215fc3
00215fc3 0f 1f 44 00 00 ..D..
00215fc8
00215fc8loc_215fc8:
00215fc8test al, 1
00215fcajne 0x215fef
00215fcccmp rax, rdx
00215fcfjae 0x215fda
00215fd1cmp [rip+0x1625f8], rax
00215fd8jb 0x215fb7
00215fda
00215fdaloc_215fda:
00215fdamov rdx, [rip+0x60007]
00215fe1mov rsi, rax
00215fe4mov rdi, [rdx]
00215fe8xor edx, edx
00215feacall caml_darken
00215fef
00215fefloc_215fef:
00215feftest bpl, 1
00215ff3jne 0x215fb7
00215ff5cmp rbp, [rip+0x1625cc]
00215ffcjae 0x215fb7
00215ffecmp [rip+0x1625cb], rbp
00216005jae 0x215fb7
00216007mov rax, [rip+0x5ffda]
0021600emov rax, [rax]
00216012mov rbp, [rax+96]
00216016mov rax, [rbp+24]
0021601acmp rax, [rbp+32]
0021601ejae 0x216080
00216020
00216020loc_216020:
00216020lea rdx, [rax+8]
00216024mov [rbp+24], rdx
00216028mov [rax], rbx
0021602bjmp 0x215fb7
0021602d
0021602d 0f 1f 00 ...
00216030
00216030loc_216030:
00216030mov [rdi], rbp
00216033mov rdx, [rip+0x16258e]
0021603acmp rdi, rdx
0021603djb 0x216070
0021603f
0021603floc_21603f:
0021603ftest sil, 1
00216043jne 0x215fef
00216045cmp rsi, rdx
00216048jae 0x216057
0021604acmp [rip+0x16257f], rsi
00216051jb 0x215fb7
00216057
00216057loc_216057:
00216057mov rdx, [rip+0x5ff8a]
0021605emov rdi, [rdx]
00216062xor edx, edx
00216064call caml_darken
00216069jmp 0x215fef
0021606b
0021606b 0f 1f 44 00 00 ..D..
00216070
00216070loc_216070:
00216070cmp [rip+0x162559], rdi
00216077jb 0x215fb7
0021607djmp 0x21603f
0021607f
0021607f 90 .
00216080
00216080loc_216080:
00216080mov rdi, rbp
00216083call caml_realloc_ref_table
00216088mov rax, [rbp+24]
0021608cjmp 0x216020
00215f60
0021608e
0021608e // align 0x10
0021608e // align 0x10
00216090
00216090caml_atomic_fetch_add:
00216090mov rax, [rip+0x162545]
00216097sar rsi, 1
0021609acmp rax, 1
0021609ejne 0x2160c0
002160a0mov rax, [rdi]
002160a3mov rdx, rax
002160a6sar rdx, 1
002160a9add rdx, rsi
002160aclea rdx, [rdx+rdx+1]
002160b1mov [rdi], rdx
002160b4ret
002160b5db 0x48
002160b6mov [rdi], edx
002160b8ret
002160b9
002160b9 0f 1f 80 00 00 00 00 .......
002160c0
002160c0loc_2160c0:
002160c0lea rax, [rsi+rsi]
002160c4lock xadd [rdi], rax
002160c9ret
00216090
00216090caml_atomic_fetch_add:
00216090mov rax, [rip+0x162545]
00216097sar rsi, 1
0021609acmp rax, 1
0021609ejne 0x2160c0
002160a0mov rax, [rdi]
002160a3mov rdx, rax
002160a6sar rdx, 1
002160a9add rdx, rsi
002160aclea rdx, [rdx+rdx+1]
002160b1mov [rdi], rdx
002160b4ret
002160b5db 0x48
002160b6mov [rdi], edx
002160b8ret
002160b9
002160b9 0f 1f 80 00 00 00 00 .......
002160c0
002160c0loc_2160c0:
002160c0lea rax, [rsi+rsi]
002160c4lock xadd [rdi], rax
002160c9ret
00216090
002160ca
002160ca // align 0x10
002160ca // align 0x10
002160d0
002160d0caml_set_fields:
002160d0push r13
002160d2lea r13, [rdi-8]
002160d6push r12
002160d8mov r12, rsi
002160dbpush rbp
002160dcmov rbp, rdi
002160dfpush rbx
002160e0xor ebx, ebx
002160e2sub rsp, 8
002160e6jmp 0x216100
002160e8db 0xec
002160e9or bl, ch
002160ebdb 0x14
002160ec
002160ec 0f 1f 40 00 ..@.
002160f0
002160f0loc_2160f0:
002160f0lea rdi, [rbp+8*rdx]
002160f5mov rsi, r12
002160f8add ebx, 1
002160fbcall caml_modify
00216100
00216100loc_216100:
00216100mov rax, [r13]
00216104movsxd rdx, ebx
00216107shr rax, 10
0021610bcmp rdx, rax
0021610ejb 0x2160f0
00216110add rsp, 8
00216114pop rbx
00216115pop rbp
00216116pop r12
00216118pop r13
0021611aret
002160d0
002160d0caml_set_fields:
002160d0push r13
002160d2lea r13, [rdi-8]
002160d6push r12
002160d8mov r12, rsi
002160dbpush rbp
002160dcmov rbp, rdi
002160dfpush rbx
002160e0xor ebx, ebx
002160e2sub rsp, 8
002160e6jmp 0x216100
002160e8db 0xec
002160e9or bl, ch
002160ebdb 0x14
002160ec
002160ec 0f 1f 40 00 ..@.
002160f0
002160f0loc_2160f0:
002160f0lea rdi, [rbp+8*rdx]
002160f5mov rsi, r12
002160f8add ebx, 1
002160fbcall caml_modify
00216100
00216100loc_216100:
00216100mov rax, [r13]
00216104movsxd rdx, ebx
00216107shr rax, 10
0021610bcmp rdx, rax
0021610ejb 0x2160f0
00216110add rsp, 8
00216114pop rbx
00216115pop rbp
00216116pop r12
00216118pop r13
0021611aret
002160d0
0021611b
0021611b // align 0x10
0021611b // align 0x10
00216120
00216120caml_alloc_shr:
00216120mov rax, [rip+0x5febd]
00216127push r12
00216129push rbp
0021612apush rbx
0021612bmov r12, [rax]
0021612ftest r12, r12
00216132je 0x216200
00216138mov rbp, rdi
0021613bmov rdi, [r12+280]
00216143mov edx, esi
00216145xor ecx, ecx
00216147mov rsi, rbp
0021614acall caml_shared_try_alloc
0021614fmov rbx, rax
00216152test rax, rax
00216155je 0x2161f8
0021615bmov eax, 1
00216160mov rdx, [r12+272]
00216168movq x1, rbp
0021616dmovdqu x2, [r12+128]
00216177movq x0, rax
0021617cpunpcklqdq x1, x1
00216180mov rax, 0xcccccccccccccccd
0021618apunpcklqdq x0, x0
0021618emul rdx
00216191paddq x0, x2
00216195paddq x0, x1
00216199movups [r12+128], x0
002161a2movhlps x3, x0
002161a5shr rdx, 2
002161a9movq rcx, x3
002161aecmp rdx, rcx
002161b1jb 0x2161d8
002161b3add rbx, 8
002161b7
002161b7loc_2161b7:
002161b7lea rdx, [rbp+1]
002161bbmov rsi, rbp
002161bexor ecx, ecx
002161c0mov rdi, rbx
002161c3call caml_memprof_sample_block
002161c8mov rax, rbx
002161cbpop rbx
002161ccpop rbp
002161cdpop r12
002161cfret
002161d0db 0x5d
002161d1pop r12
002161d3ret
002161d4
002161d4 0f 1f 40 00 ..@.
002161d8
002161d8loc_2161d8:
002161d8mov esi, 1
002161ddmov edi, 6
002161e2call caml_ev_counter
002161e7mov edi, 1
002161eccall caml_request_major_slice
002161f1jmp 0x2161b7
002161f3
002161f3 0f 1f 44 00 00 ..D..
002161f8
002161f8loc_2161f8:
002161f8call caml_raise_out_of_memory
002161fdnop [rax]
00216200
00216200loc_216200:
00216200call caml_bad_caml_state
00216120
00216120caml_alloc_shr:
00216120mov rax, [rip+0x5febd]
00216127push r12
00216129push rbp
0021612apush rbx
0021612bmov r12, [rax]
0021612ftest r12, r12
00216132je 0x216200
00216138mov rbp, rdi
0021613bmov rdi, [r12+280]
00216143mov edx, esi
00216145xor ecx, ecx
00216147mov rsi, rbp
0021614acall caml_shared_try_alloc
0021614fmov rbx, rax
00216152test rax, rax
00216155je 0x2161f8
0021615bmov eax, 1
00216160mov rdx, [r12+272]
00216168movq x1, rbp
0021616dmovdqu x2, [r12+128]
00216177movq x0, rax
0021617cpunpcklqdq x1, x1
00216180mov rax, 0xcccccccccccccccd
0021618apunpcklqdq x0, x0
0021618emul rdx
00216191paddq x0, x2
00216195paddq x0, x1
00216199movups [r12+128], x0
002161a2movhlps x3, x0
002161a5shr rdx, 2
002161a9movq rcx, x3
002161aecmp rdx, rcx
002161b1jb 0x2161d8
002161b3add rbx, 8
002161b7
002161b7loc_2161b7:
002161b7lea rdx, [rbp+1]
002161bbmov rsi, rbp
002161bexor ecx, ecx
002161c0mov rdi, rbx
002161c3call caml_memprof_sample_block
002161c8mov rax, rbx
002161cbpop rbx
002161ccpop rbp
002161cdpop r12
002161cfret
002161d0db 0x5d
002161d1pop r12
002161d3ret
002161d4
002161d4 0f 1f 40 00 ..@.
002161d8
002161d8loc_2161d8:
002161d8mov esi, 1
002161ddmov edi, 6
002161e2call caml_ev_counter
002161e7mov edi, 1
002161eccall caml_request_major_slice
002161f1jmp 0x2161b7
002161f3
002161f3 0f 1f 44 00 00 ..D..
002161f8
002161f8loc_2161f8:
002161f8call caml_raise_out_of_memory
002161fdnop [rax]
00216200
00216200loc_216200:
00216200call caml_bad_caml_state
00216120
00216205
00216205 // align 0x10
00216205 // align 0x10
00216210
00216210caml_alloc_shr_reserved:
00216210mov rax, [rip+0x5fdcd]
00216217push r12
00216219push rbp
0021621apush rbx
0021621bmov r12, [rax]
0021621ftest r12, r12
00216222je 0x2162f0
00216228mov rbp, rdi
0021622bmov rdi, [r12+280]
00216233mov rcx, rdx
00216236mov edx, esi
00216238mov rsi, rbp
0021623bcall caml_shared_try_alloc
00216240mov rbx, rax
00216243test rax, rax
00216246je 0x2162e8
0021624cmov eax, 1
00216251mov rdx, [r12+272]
00216259movq x1, rbp
0021625emovdqu x2, [r12+128]
00216268movq x0, rax
0021626dpunpcklqdq x1, x1
00216271mov rax, 0xcccccccccccccccd
0021627bpunpcklqdq x0, x0
0021627fmul rdx
00216282paddq x0, x2
00216286paddq x0, x1
0021628amovups [r12+128], x0
00216293movhlps x3, x0
00216296shr rdx, 2
0021629amovq rcx, x3
0021629fcmp rdx, rcx
002162a2jb 0x2162c8
002162a4add rbx, 8
002162a8
002162a8loc_2162a8:
002162a8lea rdx, [rbp+1]
002162acmov rsi, rbp
002162afxor ecx, ecx
002162b1mov rdi, rbx
002162b4call caml_memprof_sample_block
002162b9mov rax, rbx
002162bcpop rbx
002162bdpop rbp
002162bepop r12
002162c0ret
002162c1db 0x5d
002162c2pop r12
002162c4ret
002162c5
002162c5 0f 1f 00 ...
002162c8
002162c8loc_2162c8:
002162c8mov esi, 1
002162cdmov edi, 6
002162d2call caml_ev_counter
002162d7mov edi, 1
002162dccall caml_request_major_slice
002162e1jmp 0x2162a8
002162e3
002162e3 0f 1f 44 00 00 ..D..
002162e8
002162e8loc_2162e8:
002162e8call caml_raise_out_of_memory
002162ednop [rax]
002162f0
002162f0loc_2162f0:
002162f0call caml_bad_caml_state
00216210
00216210caml_alloc_shr_reserved:
00216210mov rax, [rip+0x5fdcd]
00216217push r12
00216219push rbp
0021621apush rbx
0021621bmov r12, [rax]
0021621ftest r12, r12
00216222je 0x2162f0
00216228mov rbp, rdi
0021622bmov rdi, [r12+280]
00216233mov rcx, rdx
00216236mov edx, esi
00216238mov rsi, rbp
0021623bcall caml_shared_try_alloc
00216240mov rbx, rax
00216243test rax, rax
00216246je 0x2162e8
0021624cmov eax, 1
00216251mov rdx, [r12+272]
00216259movq x1, rbp
0021625emovdqu x2, [r12+128]
00216268movq x0, rax
0021626dpunpcklqdq x1, x1
00216271mov rax, 0xcccccccccccccccd
0021627bpunpcklqdq x0, x0
0021627fmul rdx
00216282paddq x0, x2
00216286paddq x0, x1
0021628amovups [r12+128], x0
00216293movhlps x3, x0
00216296shr rdx, 2
0021629amovq rcx, x3
0021629fcmp rdx, rcx
002162a2jb 0x2162c8
002162a4add rbx, 8
002162a8
002162a8loc_2162a8:
002162a8lea rdx, [rbp+1]
002162acmov rsi, rbp
002162afxor ecx, ecx
002162b1mov rdi, rbx
002162b4call caml_memprof_sample_block
002162b9mov rax, rbx
002162bcpop rbx
002162bdpop rbp
002162bepop r12
002162c0ret
002162c1db 0x5d
002162c2pop r12
002162c4ret
002162c5
002162c5 0f 1f 00 ...
002162c8
002162c8loc_2162c8:
002162c8mov esi, 1
002162cdmov edi, 6
002162d2call caml_ev_counter
002162d7mov edi, 1
002162dccall caml_request_major_slice
002162e1jmp 0x2162a8
002162e3
002162e3 0f 1f 44 00 00 ..D..
002162e8
002162e8loc_2162e8:
002162e8call caml_raise_out_of_memory
002162ednop [rax]
002162f0
002162f0loc_2162f0:
002162f0call caml_bad_caml_state
00216210
002162f5
002162f5 // align 0x10
002162f5 // align 0x10
00216300
00216300caml_alloc_shr_noexc:
00216300push r13
00216302push r12
00216304push rbp
00216305push rbx
00216306sub rsp, 8
0021630amov rax, [rip+0x5fcd3]
00216311mov rbp, [rax]
00216315test rbp, rbp
00216318je 0x2163e0
0021631emov rbx, rdi
00216321mov rdi, [rbp+280]
00216328mov edx, esi
0021632axor ecx, ecx
0021632cmov rsi, rbx
0021632fxor r13l, r13l
00216332call caml_shared_try_alloc
00216337mov r12, rax
0021633atest rax, rax
0021633dje 0x2163ac
0021633fmov eax, 1
00216344movdqu x2, [rbp+128]
0021634cmovq x1, rbx
00216351mov rdx, [rbp+272]
00216358movq x0, rax
0021635dpunpcklqdq x1, x1
00216361mov rax, 0xcccccccccccccccd
0021636bpunpcklqdq x0, x0
0021636fmul rdx
00216372paddq x0, x2
00216376paddq x0, x1
0021637amovhlps x3, x0
0021637dshr rdx, 2
00216381movups [rbp+128], x0
00216388movq rcx, x3
0021638dcmp rdx, rcx
00216390jb 0x2163c0
00216392lea r13, [r12+8]
00216397lea rdx, [rbx+1]
0021639bxor ecx, ecx
0021639dmov rsi, rbx
002163a0mov rdi, r13
002163a3call caml_memprof_sample_block
002163a8add rsp, 8
002163ac
002163acloc_2163ac:
002163acmov rax, r13
002163afpop rbx
002163b0pop rbp
002163b1pop r12
002163b3pop r13
002163b5ret
002163b6db 0x5c
002163b7pop r13
002163b9ret
002163ba
002163ba 66 0f 1f 44 00 00 f..D..
002163c0
002163c0loc_2163c0:
002163c0mov esi, 1
002163c5mov edi, 6
002163cacall caml_ev_counter
002163cfmov edi, 1
002163d4call caml_request_major_slice
002163d9jmp 0x216396
002163db
002163db 0f 1f 44 00 00 ..D..
002163e0
002163e0loc_2163e0:
002163e0call caml_bad_caml_state
00216300
00216300caml_alloc_shr_noexc:
00216300push r13
00216302push r12
00216304push rbp
00216305push rbx
00216306sub rsp, 8
0021630amov rax, [rip+0x5fcd3]
00216311mov rbp, [rax]
00216315test rbp, rbp
00216318je 0x2163e0
0021631emov rbx, rdi
00216321mov rdi, [rbp+280]
00216328mov edx, esi
0021632axor ecx, ecx
0021632cmov rsi, rbx
0021632fxor r13l, r13l
00216332call caml_shared_try_alloc
00216337mov r12, rax
0021633atest rax, rax
0021633dje 0x2163ac
0021633fmov eax, 1
00216344movdqu x2, [rbp+128]
0021634cmovq x1, rbx
00216351mov rdx, [rbp+272]
00216358movq x0, rax
0021635dpunpcklqdq x1, x1
00216361mov rax, 0xcccccccccccccccd
0021636bpunpcklqdq x0, x0
0021636fmul rdx
00216372paddq x0, x2
00216376paddq x0, x1
0021637amovhlps x3, x0
0021637dshr rdx, 2
00216381movups [rbp+128], x0
00216388movq rcx, x3
0021638dcmp rdx, rcx
00216390jb 0x2163c0
00216392lea r13, [r12+8]
00216397lea rdx, [rbx+1]
0021639bxor ecx, ecx
0021639dmov rsi, rbx
002163a0mov rdi, r13
002163a3call caml_memprof_sample_block
002163a8add rsp, 8
002163ac
002163acloc_2163ac:
002163acmov rax, r13
002163afpop rbx
002163b0pop rbp
002163b1pop r12
002163b3pop r13
002163b5ret
002163b6db 0x5c
002163b7pop r13
002163b9ret
002163ba
002163ba 66 0f 1f 44 00 00 f..D..
002163c0
002163c0loc_2163c0:
002163c0mov esi, 1
002163c5mov edi, 6
002163cacall caml_ev_counter
002163cfmov edi, 1
002163d4call caml_request_major_slice
002163d9jmp 0x216396
002163db
002163db 0f 1f 44 00 00 ..D..
002163e0
002163e0loc_2163e0:
002163e0call caml_bad_caml_state
00216300
002163e5
002163e5 // align 0x10
002163e5 // align 0x10
002163f0
002163f0caml_stat_create_pool:
002163f0cmp [rip+0x16278c], 0
002163f8je 0x216400
002163faret
002163fbdb 0x00
002163fcje 0x216400
002163feret
002163ff
002163ff 90 .
00216400
00216400loc_216400:
00216400sub rsp, 8
00216404mov edi, 16
00216409call fn_f4250
0021640emovq x0, rax
00216413mov [rip+0x16276e], rax
0021641apunpcklqdq x0, x0
0021641etest rax, rax
00216421je 0x21642b
00216423movaps [rax], x0
00216426add rsp, 8
0021642aret
0021642b
0021642bloc_21642b:
0021642blea rdi, [rip+0x18de2]
00216432call caml_fatal_error
002163f0
002163f0caml_stat_create_pool:
002163f0cmp [rip+0x16278c], 0
002163f8je 0x216400
002163faret
002163fbdb 0x00
002163fcje 0x216400
002163feret
002163ff
002163ff 90 .
00216400
00216400loc_216400:
00216400sub rsp, 8
00216404mov edi, 16
00216409call fn_f4250
0021640emovq x0, rax
00216413mov [rip+0x16276e], rax
0021641apunpcklqdq x0, x0
0021641etest rax, rax
00216421je 0x21642b
00216423movaps [rax], x0
00216426add rsp, 8
0021642aret
0021642b
0021642bloc_21642b:
0021642blea rdi, [rip+0x18de2]
00216432call caml_fatal_error
002163f0
00216437
00216437 // align 0x10
00216437 // align 0x10
00216440
00216440caml_stat_destroy_pool:
00216440push rbp
00216441lea rbp, [rip+0x162714]
00216448push rbx
00216449mov rdi, rbp
0021644csub rsp, 8
00216450call fn_f4710
00216455test eax, eax
00216457jne 0x2164aa
00216459mov rbx, [rip+0x162724]
00216460test rbx, rbx
00216463je 0x216497
00216465mov rax, [rbx+8]
00216469mov [rax], 0
00216470nop [rax+rax]
0021647bnop
0021647cmov rdi, rbx
0021647fmov rbx, [rbx]
00216482call fn_f4370
00216487mov [rip+0x1626f6], rbx
0021648etest rbx, rbx
00216491jne 0x216480
00216493mov rdi, rbp
00216496call fn_f47c0
0021649btest eax, eax
0021649djne 0x2164b8
0021649fadd rsp, 8
002164a3pop rbx
002164a4pop rbp
002164a5ret
002164a6mov esi, eax
002164a8lea rdi, [rip+0x1905c]
002164afcall caml_plat_fatal_error
002164b4mov esi, eax
002164b6lea rdi, [rip+0x19059]
002164bdcall caml_plat_fatal_error
002164c2db 0x0a
002164c3push rbp
002164c4add [rax], al
00216440
00216440caml_stat_destroy_pool:
00216440push rbp
00216441lea rbp, [rip+0x162714]
00216448push rbx
00216449mov rdi, rbp
0021644csub rsp, 8
00216450call fn_f4710
00216455test eax, eax
00216457jne 0x2164aa
00216459mov rbx, [rip+0x162724]
00216460test rbx, rbx
00216463je 0x216497
00216465mov rax, [rbx+8]
00216469mov [rax], 0
00216470nop [rax+rax]
0021647bnop
0021647cmov rdi, rbx
0021647fmov rbx, [rbx]
00216482call fn_f4370
00216487mov [rip+0x1626f6], rbx
0021648etest rbx, rbx
00216491jne 0x216480
00216493mov rdi, rbp
00216496call fn_f47c0
0021649btest eax, eax
0021649djne 0x2164b8
0021649fadd rsp, 8
002164a3pop rbx
002164a4pop rbp
002164a5ret
002164a6mov esi, eax
002164a8lea rdi, [rip+0x1905c]
002164afcall caml_plat_fatal_error
002164b4mov esi, eax
002164b6lea rdi, [rip+0x19059]
002164bdcall caml_plat_fatal_error
002164c2db 0x0a
002164c3push rbp
002164c4add [rax], al
00216440
002164c6
002164c6 // align 0x10
002164c6 // align 0x10
002164d0
002164d0caml_stat_alloc_noexc:
002164d0cmp [rip+0x1626ac], 0
002164d8je 0x216508
002164dapush rbx
002164dbadd rdi, 16
002164dfcall fn_f4250
002164e4mov rbx, rax
002164e7test rax, rax
002164eaje 0x2164fc
002164ecmov rdi, rax
002164efadd rbx, 16
002164f3call fn_2159d0
002164f8mov rax, rbx
002164fbpop rbx
002164fc
002164fcloc_2164fc:
002164fcret
002164fddb 0x89
002164fefcomp [rbx-61]
00216501
00216501 0f 1f 80 00 00 00 00 .......
00216508
00216508loc_216508:
00216508jmp 0xf4250
002164d0
002164d0caml_stat_alloc_noexc:
002164d0cmp [rip+0x1626ac], 0
002164d8je 0x216508
002164dapush rbx
002164dbadd rdi, 16
002164dfcall fn_f4250
002164e4mov rbx, rax
002164e7test rax, rax
002164eaje 0x2164fc
002164ecmov rdi, rax
002164efadd rbx, 16
002164f3call fn_2159d0
002164f8mov rax, rbx
002164fbpop rbx
002164fc
002164fcloc_2164fc:
002164fcret
002164fddb 0x89
002164fefcomp [rbx-61]
00216501
00216501 0f 1f 80 00 00 00 00 .......
00216508
00216508loc_216508:
00216508jmp 0xf4250
002164d0
0021650d
0021650d // align 0x10
0021650d // align 0x10
00216510
00216510caml_stat_alloc_aligned_noexc:
00216510cmp [rip+0x16266c], 0
00216518push r12
0021651amov r12, rdx
0021651dpush rbp
0021651emovsxd rbp, esi
00216521push rbx
00216522je 0x216568
00216524add rdi, 4112
0021652bcall fn_f4250
00216530mov rbx, rax
00216533test rax, rax
00216536je 0x21657c
00216538mov rdi, rax
0021653badd rbx, 16
0021653fcall fn_2159d0
00216544mov [r12], rbx
00216548
00216548loc_216548:
00216548add rbx, rbp
0021654band rbx, -4096
00216552lea rax, [rbx+4096]
00216559sub rax, rbp
0021655cpop rbx
0021655dpop rbp
0021655epop r12
00216560
00216560loc_216560:
00216560ret
00216561db 0x5d
00216562pop r12
00216564ret
00216565
00216565 0f 1f 00 ...
00216568
00216568loc_216568:
00216568add rdi, 4096
0021656fcall fn_f4250
00216574mov rbx, rax
00216577test rax, rax
0021657ajne 0x216548
0021657c
0021657cloc_21657c:
0021657cxor eax, eax
0021657ejmp 0x216560
00216510
00216510caml_stat_alloc_aligned_noexc:
00216510cmp [rip+0x16266c], 0
00216518push r12
0021651amov r12, rdx
0021651dpush rbp
0021651emovsxd rbp, esi
00216521push rbx
00216522je 0x216568
00216524add rdi, 4112
0021652bcall fn_f4250
00216530mov rbx, rax
00216533test rax, rax
00216536je 0x21657c
00216538mov rdi, rax
0021653badd rbx, 16
0021653fcall fn_2159d0
00216544mov [r12], rbx
00216548
00216548loc_216548:
00216548add rbx, rbp
0021654band rbx, -4096
00216552lea rax, [rbx+4096]
00216559sub rax, rbp
0021655cpop rbx
0021655dpop rbp
0021655epop r12
00216560
00216560loc_216560:
00216560ret
00216561db 0x5d
00216562pop r12
00216564ret
00216565
00216565 0f 1f 00 ...
00216568
00216568loc_216568:
00216568add rdi, 4096
0021656fcall fn_f4250
00216574mov rbx, rax
00216577test rax, rax
0021657ajne 0x216548
0021657c
0021657cloc_21657c:
0021657cxor eax, eax
0021657ejmp 0x216560
00216510
00216580
00216580caml_stat_alloc_aligned:
00216580push r13
00216582mov r13, rdx
00216585push r12
00216587movsxd r12, esi
0021658apush rbp
0021658bmov rbp, rdi
0021658epush rbx
0021658fsub rsp, 8
00216593cmp [rip+0x1625e9], 0
0021659bje 0x216600
0021659dlea rdi, [rdi+4112]
002165a4call fn_f4250
002165a9mov rbx, rax
002165actest rax, rax
002165afje 0x216614
002165b1mov rdi, rax
002165b4add rbx, 16
002165b8call fn_2159d0
002165bdmov [r13], rbx
002165c1
002165c1loc_2165c1:
002165c1add rbx, r12
002165c4and rbx, -4096
002165cblea rax, [rbx+4096]
002165d2mov rdx, rax
002165d5sub rdx, r12
002165d8cmp r12, rax
002165dbsete al
002165detest rbp, rbp
002165e1je 0x2165eb
002165e3test al, al
002165e5jne 0x21661d
002165e7add rsp, 8
002165eb
002165ebloc_2165eb:
002165ebmov rax, rdx
002165eepop rbx
002165efpop rbp
002165f0pop r12
002165f2pop r13
002165f4ret
002165f5db 0x5c
002165f6pop r13
002165f8ret
002165f9
002165f9 0f 1f 80 00 00 00 00 .......
00216600
00216600loc_216600:
00216600lea rdi, [rdi+4096]
00216607call fn_f4250
0021660cmov rbx, rax
0021660ftest rax, rax
00216612jne 0x2165c1
00216614
00216614loc_216614:
00216614mov eax, 1
00216619xor edx, edx
0021661bjmp 0x2165e2
0021661d
0021661dloc_21661d:
0021661dcall caml_raise_out_of_memory
00216580
00216580caml_stat_alloc_aligned:
00216580push r13
00216582mov r13, rdx
00216585push r12
00216587movsxd r12, esi
0021658apush rbp
0021658bmov rbp, rdi
0021658epush rbx
0021658fsub rsp, 8
00216593cmp [rip+0x1625e9], 0
0021659bje 0x216600
0021659dlea rdi, [rdi+4112]
002165a4call fn_f4250
002165a9mov rbx, rax
002165actest rax, rax
002165afje 0x216614
002165b1mov rdi, rax
002165b4add rbx, 16
002165b8call fn_2159d0
002165bdmov [r13], rbx
002165c1
002165c1loc_2165c1:
002165c1add rbx, r12
002165c4and rbx, -4096
002165cblea rax, [rbx+4096]
002165d2mov rdx, rax
002165d5sub rdx, r12
002165d8cmp r12, rax
002165dbsete al
002165detest rbp, rbp
002165e1je 0x2165eb
002165e3test al, al
002165e5jne 0x21661d
002165e7add rsp, 8
002165eb
002165ebloc_2165eb:
002165ebmov rax, rdx
002165eepop rbx
002165efpop rbp
002165f0pop r12
002165f2pop r13
002165f4ret
002165f5db 0x5c
002165f6pop r13
002165f8ret
002165f9
002165f9 0f 1f 80 00 00 00 00 .......
00216600
00216600loc_216600:
00216600lea rdi, [rdi+4096]
00216607call fn_f4250
0021660cmov rbx, rax
0021660ftest rax, rax
00216612jne 0x2165c1
00216614
00216614loc_216614:
00216614mov eax, 1
00216619xor edx, edx
0021661bjmp 0x2165e2
0021661d
0021661dloc_21661d:
0021661dcall caml_raise_out_of_memory
00216580
00216622
00216622 // align 0x10
00216622 // align 0x10
00216630
00216630caml_stat_alloc:
00216630push rbp
00216631mov rbp, rdi
00216634push rbx
00216635sub rsp, 8
00216639cmp [rip+0x162543], 0
00216641je 0x216670
00216643lea rdi, [rdi+16]
00216647call fn_f4250
0021664cmov rbx, rax
0021664ftest rax, rax
00216652je 0x21667d
00216654mov rdi, rax
00216657add rbx, 16
0021665bcall fn_2159d0
00216660add rsp, 8
00216664
00216664loc_216664:
00216664mov rax, rbx
00216667pop rbx
00216668pop rbp
00216669ret
0021666adb 0xd8
0021666bpop rbx
0021666cpop rbp
0021666dret
0021666e
0021666e 66 90 f.
00216670
00216670loc_216670:
00216670call fn_f4250
00216675mov rbx, rax
00216678test rax, rax
0021667bjne 0x216664
0021667d
0021667dloc_21667d:
0021667dtest rbp, rbp
00216680je 0x216664
00216682call caml_raise_out_of_memory
00216630
00216630caml_stat_alloc:
00216630push rbp
00216631mov rbp, rdi
00216634push rbx
00216635sub rsp, 8
00216639cmp [rip+0x162543], 0
00216641je 0x216670
00216643lea rdi, [rdi+16]
00216647call fn_f4250
0021664cmov rbx, rax
0021664ftest rax, rax
00216652je 0x21667d
00216654mov rdi, rax
00216657add rbx, 16
0021665bcall fn_2159d0
00216660add rsp, 8
00216664
00216664loc_216664:
00216664mov rax, rbx
00216667pop rbx
00216668pop rbp
00216669ret
0021666adb 0xd8
0021666bpop rbx
0021666cpop rbp
0021666dret
0021666e
0021666e 66 90 f.
00216670
00216670loc_216670:
00216670call fn_f4250
00216675mov rbx, rax
00216678test rax, rax
0021667bjne 0x216664
0021667d
0021667dloc_21667d:
0021667dtest rbp, rbp
00216680je 0x216664
00216682call caml_raise_out_of_memory
00216630
00216687
00216687 // align 0x10
00216687 // align 0x10
00216690
00216690caml_stat_free:
00216690cmp [rip+0x1624ec], 0
00216698push r12
0021669apush rbp
0021669bpush rbx
0021669cmov rbx, rdi
0021669fje 0x2166f0
002166a1test rdi, rdi
002166a4je 0x216700
002166a6lea r12, [rip+0x1624af]
002166adlea rbp, [rdi-16]
002166b1mov rdi, r12
002166b4call fn_f4710
002166b9test eax, eax
002166bbjne 0x216705
002166bdmov rdx, [rbx-8]
002166c1mov rax, [rbx-16]
002166c5mov rdi, r12
002166c8mov [rdx], rax
002166cbmov rdx, [rbx-8]
002166cfmov [rax+8], rdx
002166d3call fn_f47c0
002166d8test eax, eax
002166dajne 0x216713
002166dcpop rbx
002166ddmov rdi, rbp
002166e0pop rbp
002166e1pop r12
002166e3jmp 0xf4370
002166e8db 0x84
002166e9fsub f5, f0
002166ebdb 0xff
002166ec
002166ec 0f 1f 40 00 ..@.
002166f0
002166f0loc_2166f0:
002166f0pop rbx
002166f1pop rbp
002166f2pop r12
002166f4jmp 0xf4370
002166f9
002166f9 0f 1f 80 00 00 00 00 .......
00216700
00216700loc_216700:
00216700pop rbx
00216701pop rbp
00216702pop r12
00216704ret
00216705
00216705loc_216705:
00216705mov esi, eax
00216707lea rdi, [rip+0x18e01]
0021670ecall caml_plat_fatal_error
00216713
00216713loc_216713:
00216713mov esi, eax
00216715lea rdi, [rip+0x18dfe]
0021671ccall caml_plat_fatal_error
00216690
00216690caml_stat_free:
00216690cmp [rip+0x1624ec], 0
00216698push r12
0021669apush rbp
0021669bpush rbx
0021669cmov rbx, rdi
0021669fje 0x2166f0
002166a1test rdi, rdi
002166a4je 0x216700
002166a6lea r12, [rip+0x1624af]
002166adlea rbp, [rdi-16]
002166b1mov rdi, r12
002166b4call fn_f4710
002166b9test eax, eax
002166bbjne 0x216705
002166bdmov rdx, [rbx-8]
002166c1mov rax, [rbx-16]
002166c5mov rdi, r12
002166c8mov [rdx], rax
002166cbmov rdx, [rbx-8]
002166cfmov [rax+8], rdx
002166d3call fn_f47c0
002166d8test eax, eax
002166dajne 0x216713
002166dcpop rbx
002166ddmov rdi, rbp
002166e0pop rbp
002166e1pop r12
002166e3jmp 0xf4370
002166e8db 0x84
002166e9fsub f5, f0
002166ebdb 0xff
002166ec
002166ec 0f 1f 40 00 ..@.
002166f0
002166f0loc_2166f0:
002166f0pop rbx
002166f1pop rbp
002166f2pop r12
002166f4jmp 0xf4370
002166f9
002166f9 0f 1f 80 00 00 00 00 .......
00216700
00216700loc_216700:
00216700pop rbx
00216701pop rbp
00216702pop r12
00216704ret
00216705
00216705loc_216705:
00216705mov esi, eax
00216707lea rdi, [rip+0x18e01]
0021670ecall caml_plat_fatal_error
00216713
00216713loc_216713:
00216713mov esi, eax
00216715lea rdi, [rip+0x18dfe]
0021671ccall caml_plat_fatal_error
00216690
00216721
00216721 // align 0x10
00216721 // align 0x10
00216730
00216730caml_stat_resize_noexc:
00216730push r13
00216732push r12
00216734push rbp
00216735mov rbp, rsi
00216738push rbx
00216739sub rsp, 8
0021673dmov rax, [rip+0x162440]
00216744test rdi, rdi
00216747je 0x2167d0
0021674dmov rbx, rdi
00216750test rax, rax
00216753je 0x2167c0
00216755lea r13, [rip+0x162400]
0021675clea r12, [rdi-16]
00216760mov rdi, r13
00216763call fn_f4710
00216768test eax, eax
0021676ajne 0x216810
00216770mov rdx, [rbx-8]
00216774mov rax, [rbx-16]
00216778mov rdi, r13
0021677bmov [rdx], rax
0021677emov rdx, [rbx-8]
00216782mov [rax+8], rdx
00216786call fn_f47c0
0021678btest eax, eax
0021678djne 0x216802
0021678flea rsi, [rbp+16]
00216793mov rdi, r12
00216796call fn_f4720
0021679bmov rbx, rax
0021679etest rax, rax
002167a1je 0x21681e
002167a3mov rdi, rbx
002167a6call fn_2159d0
002167ablea rax, [rbx+16]
002167afadd rsp, 8
002167b3
002167b3loc_2167b3:
002167b3pop rbx
002167b4pop rbp
002167b5pop r12
002167b7pop r13
002167b9ret
002167badb 0x5c
002167bbpop r13
002167bdret
002167be
002167be 66 90 f.
002167c0
002167c0loc_2167c0:
002167c0add rsp, 8
002167c4pop rbx
002167c5pop rbp
002167c6pop r12
002167c8pop r13
002167cajmp 0xf4720
002167cf
002167cf 90 .
002167d0
002167d0loc_2167d0:
002167d0test rax, rax
002167d3je 0x2167f0
002167d5lea rdi, [rsi+16]
002167d9call fn_f4250
002167demov rbx, rax
002167e1test rax, rax
002167e4jne 0x2167a7
002167e6xor eax, eax
002167e8jmp 0x2167b3
002167ea
002167ea 66 0f 1f 44 00 00 f..D..
002167f0
002167f0loc_2167f0:
002167f0add rsp, 8
002167f4mov rdi, rsi
002167f7pop rbx
002167f8pop rbp
002167f9pop r12
002167fbpop r13
002167fdjmp 0xf4250
00216802
00216802loc_216802:
00216802mov esi, eax
00216804lea rdi, [rip+0x18d0f]
0021680bcall caml_plat_fatal_error
00216810
00216810loc_216810:
00216810mov esi, eax
00216812lea rdi, [rip+0x18cf6]
00216819call caml_plat_fatal_error
0021681e
0021681eloc_21681e:
0021681emov rdi, r12
00216821call fn_2159d0
00216826xor eax, eax
00216828jmp 0x2167b3
00216730
00216730caml_stat_resize_noexc:
00216730push r13
00216732push r12
00216734push rbp
00216735mov rbp, rsi
00216738push rbx
00216739sub rsp, 8
0021673dmov rax, [rip+0x162440]
00216744test rdi, rdi
00216747je 0x2167d0
0021674dmov rbx, rdi
00216750test rax, rax
00216753je 0x2167c0
00216755lea r13, [rip+0x162400]
0021675clea r12, [rdi-16]
00216760mov rdi, r13
00216763call fn_f4710
00216768test eax, eax
0021676ajne 0x216810
00216770mov rdx, [rbx-8]
00216774mov rax, [rbx-16]
00216778mov rdi, r13
0021677bmov [rdx], rax
0021677emov rdx, [rbx-8]
00216782mov [rax+8], rdx
00216786call fn_f47c0
0021678btest eax, eax
0021678djne 0x216802
0021678flea rsi, [rbp+16]
00216793mov rdi, r12
00216796call fn_f4720
0021679bmov rbx, rax
0021679etest rax, rax
002167a1je 0x21681e
002167a3mov rdi, rbx
002167a6call fn_2159d0
002167ablea rax, [rbx+16]
002167afadd rsp, 8
002167b3
002167b3loc_2167b3:
002167b3pop rbx
002167b4pop rbp
002167b5pop r12
002167b7pop r13
002167b9ret
002167badb 0x5c
002167bbpop r13
002167bdret
002167be
002167be 66 90 f.
002167c0
002167c0loc_2167c0:
002167c0add rsp, 8
002167c4pop rbx
002167c5pop rbp
002167c6pop r12
002167c8pop r13
002167cajmp 0xf4720
002167cf
002167cf 90 .
002167d0
002167d0loc_2167d0:
002167d0test rax, rax
002167d3je 0x2167f0
002167d5lea rdi, [rsi+16]
002167d9call fn_f4250
002167demov rbx, rax
002167e1test rax, rax
002167e4jne 0x2167a7
002167e6xor eax, eax
002167e8jmp 0x2167b3
002167ea
002167ea 66 0f 1f 44 00 00 f..D..
002167f0
002167f0loc_2167f0:
002167f0add rsp, 8
002167f4mov rdi, rsi
002167f7pop rbx
002167f8pop rbp
002167f9pop r12
002167fbpop r13
002167fdjmp 0xf4250
00216802
00216802loc_216802:
00216802mov esi, eax
00216804lea rdi, [rip+0x18d0f]
0021680bcall caml_plat_fatal_error
00216810
00216810loc_216810:
00216810mov esi, eax
00216812lea rdi, [rip+0x18cf6]
00216819call caml_plat_fatal_error
0021681e
0021681eloc_21681e:
0021681emov rdi, r12
00216821call fn_2159d0
00216826xor eax, eax
00216828jmp 0x2167b3
00216730
0021682a
0021682a // align 0x10
0021682a // align 0x10
00216830
00216830caml_stat_resize:
00216830sub rsp, 8
00216834call caml_stat_resize_noexc
00216839test rax, rax
0021683cje 0x216847
0021683eadd rsp, 8
00216842ret
00216843call caml_raise_out_of_memory
00216848db 0xf4
00216849add edi, edi
0021684bdb 0xff
00216830
00216830caml_stat_resize:
00216830sub rsp, 8
00216834call caml_stat_resize_noexc
00216839test rax, rax
0021683cje 0x216847
0021683eadd rsp, 8
00216842ret
00216843call caml_raise_out_of_memory
00216848db 0xf4
00216849add edi, edi
0021684bdb 0xff
00216830
0021684c
0021684c // align 0x10
0021684c // align 0x10
00216850
00216850caml_stat_calloc_noexc:
00216850mov rax, rsi
00216853mul rdi
00216856jo 0x2168d0
00216858push rbp
00216859mov rbp, rax
0021685cpush rbx
0021685dsub rsp, 8
00216861cmp [rip+0x16231b], 0
00216869je 0x2168b0
0021686blea rdi, [rax+16]
0021686fcall fn_f4250
00216874mov rbx, rax
00216877test rax, rax
0021687aje 0x2168c0
0021687cmov rdi, rax
0021687fcall fn_2159d0
00216884lea rcx, [rbx+16]
00216888mov rdx, rbp
0021688bmov rdi, rcx
0021688exor esi, esi
00216890call fn_f40e0
00216895add rsp, 8
00216899mov rcx, rax
0021689cpop rbx
0021689dpop rbp
0021689emov rax, rcx
002168a1ret
002168a2db 0x48
002168a3mov eax, ecx
002168a5ret
002168a6
002168a6 66 2e 0f 1f 84 00 00 00 00 00 f.........
002168b0
002168b0loc_2168b0:
002168b0mov rdi, rax
002168b3call fn_f4250
002168b8mov rcx, rax
002168bbtest rax, rax
002168bejne 0x21688c
002168c0
002168c0loc_2168c0:
002168c0add rsp, 8
002168c4xor ecx, ecx
002168c6mov rax, rcx
002168c9pop rbx
002168capop rbp
002168cbret
002168cc
002168cc 0f 1f 40 00 ..@.
002168d0
002168d0loc_2168d0:
002168d0xor eax, eax
002168d2ret
00216850
00216850caml_stat_calloc_noexc:
00216850mov rax, rsi
00216853mul rdi
00216856jo 0x2168d0
00216858push rbp
00216859mov rbp, rax
0021685cpush rbx
0021685dsub rsp, 8
00216861cmp [rip+0x16231b], 0
00216869je 0x2168b0
0021686blea rdi, [rax+16]
0021686fcall fn_f4250
00216874mov rbx, rax
00216877test rax, rax
0021687aje 0x2168c0
0021687cmov rdi, rax
0021687fcall fn_2159d0
00216884lea rcx, [rbx+16]
00216888mov rdx, rbp
0021688bmov rdi, rcx
0021688exor esi, esi
00216890call fn_f40e0
00216895add rsp, 8
00216899mov rcx, rax
0021689cpop rbx
0021689dpop rbp
0021689emov rax, rcx
002168a1ret
002168a2db 0x48
002168a3mov eax, ecx
002168a5ret
002168a6
002168a6 66 2e 0f 1f 84 00 00 00 00 00 f.........
002168b0
002168b0loc_2168b0:
002168b0mov rdi, rax
002168b3call fn_f4250
002168b8mov rcx, rax
002168bbtest rax, rax
002168bejne 0x21688c
002168c0
002168c0loc_2168c0:
002168c0add rsp, 8
002168c4xor ecx, ecx
002168c6mov rax, rcx
002168c9pop rbx
002168capop rbp
002168cbret
002168cc
002168cc 0f 1f 40 00 ..@.
002168d0
002168d0loc_2168d0:
002168d0xor eax, eax
002168d2ret
00216850
002168d3
002168d3 // align 0x10
002168d3 // align 0x10
002168e0
002168e0caml_stat_strdup_noexc:
002168e0push r12
002168e2push rbp
002168e3mov rbp, rdi
002168e6push rbx
002168e7call fn_f43a0
002168eccmp [rip+0x162290], 0
002168f4lea r12, [rax+1]
002168f8je 0x216938
002168falea rdi, [rax+17]
002168fecall fn_f4250
00216903mov rbx, rax
00216906test rax, rax
00216909je 0x216948
0021690bmov rdi, rax
0021690eadd rbx, 16
00216912call fn_2159d0
00216917mov rdx, r12
0021691amov rsi, rbp
0021691dmov rdi, rbx
00216920call fn_f47d0
00216925mov rax, rbx
00216928pop rbx
00216929pop rbp
0021692apop r12
0021692cret
0021692ddb 0x5d
0021692epop r12
00216930ret
00216931
00216931 0f 1f 80 00 00 00 00 .......
00216938
00216938loc_216938:
00216938mov rdi, r12
0021693bcall fn_f4250
00216940mov rbx, rax
00216943test rax, rax
00216946jne 0x21691b
00216948
00216948loc_216948:
00216948xor ebx, ebx
0021694amov rax, rbx
0021694dpop rbx
0021694epop rbp
0021694fpop r12
00216951ret
002168e0
002168e0caml_stat_strdup_noexc:
002168e0push r12
002168e2push rbp
002168e3mov rbp, rdi
002168e6push rbx
002168e7call fn_f43a0
002168eccmp [rip+0x162290], 0
002168f4lea r12, [rax+1]
002168f8je 0x216938
002168falea rdi, [rax+17]
002168fecall fn_f4250
00216903mov rbx, rax
00216906test rax, rax
00216909je 0x216948
0021690bmov rdi, rax
0021690eadd rbx, 16
00216912call fn_2159d0
00216917mov rdx, r12
0021691amov rsi, rbp
0021691dmov rdi, rbx
00216920call fn_f47d0
00216925mov rax, rbx
00216928pop rbx
00216929pop rbp
0021692apop r12
0021692cret
0021692ddb 0x5d
0021692epop r12
00216930ret
00216931
00216931 0f 1f 80 00 00 00 00 .......
00216938
00216938loc_216938:
00216938mov rdi, r12
0021693bcall fn_f4250
00216940mov rbx, rax
00216943test rax, rax
00216946jne 0x21691b
00216948
00216948loc_216948:
00216948xor ebx, ebx
0021694amov rax, rbx
0021694dpop rbx
0021694epop rbp
0021694fpop r12
00216951ret
002168e0
00216952
00216952 // align 0x10
00216952 // align 0x10
00216960
00216960caml_stat_strdup:
00216960push r12
00216962push rbp
00216963mov rbp, rdi
00216966push rbx
00216967call fn_f43a0
0021696ccmp [rip+0x162210], 0
00216974lea r12, [rax+1]
00216978je 0x2169b0
0021697alea rdi, [rax+17]
0021697ecall fn_f4250
00216983mov rbx, rax
00216986test rax, rax
00216989je 0x2169c0
0021698bmov rdi, rax
0021698eadd rbx, 16
00216992call fn_2159d0
00216997mov rdx, r12
0021699amov rsi, rbp
0021699dmov rdi, rbx
002169a0call fn_f47d0
002169a5pop rbx
002169a6pop rbp
002169a7pop r12
002169a9ret
002169aadb 0x5d
002169abpop r12
002169adret
002169ae
002169ae 66 90 f.
002169b0
002169b0loc_2169b0:
002169b0mov rdi, r12
002169b3call fn_f4250
002169b8mov rbx, rax
002169bbtest rax, rax
002169bejne 0x21699b
002169c0
002169c0loc_2169c0:
002169c0call caml_raise_out_of_memory
00216960
00216960caml_stat_strdup:
00216960push r12
00216962push rbp
00216963mov rbp, rdi
00216966push rbx
00216967call fn_f43a0
0021696ccmp [rip+0x162210], 0
00216974lea r12, [rax+1]
00216978je 0x2169b0
0021697alea rdi, [rax+17]
0021697ecall fn_f4250
00216983mov rbx, rax
00216986test rax, rax
00216989je 0x2169c0
0021698bmov rdi, rax
0021698eadd rbx, 16
00216992call fn_2159d0
00216997mov rdx, r12
0021699amov rsi, rbp
0021699dmov rdi, rbx
002169a0call fn_f47d0
002169a5pop rbx
002169a6pop rbp
002169a7pop r12
002169a9ret
002169aadb 0x5d
002169abpop r12
002169adret
002169ae
002169ae 66 90 f.
002169b0
002169b0loc_2169b0:
002169b0mov rdi, r12
002169b3call fn_f4250
002169b8mov rbx, rax
002169bbtest rax, rax
002169bejne 0x21699b
002169c0
002169c0loc_2169c0:
002169c0call caml_raise_out_of_memory
00216960
002169c5
002169c5 // align 0x10
002169c5 // align 0x10
002169d0
002169d0caml_stat_strconcat:
002169d0push r15
002169d2push r14
002169d4push r13
002169d6push r12
002169d8mov r12l, edi
002169dbpush rbp
002169dcpush rbx
002169ddsub rsp, 88
002169e1mov [rsp+40], rsi
002169e6mov [rsp+48], rdx
002169ebmov [rsp+56], rcx
002169f0mov [rsp+64], r8
002169f5mov [rsp+72], r9
002169famov rax, [0x28]
00216a03mov [rsp+24], rax
00216a08xor eax, eax
00216a0alea rax, [rsp+144]
00216a12mov [rsp], 8
00216a19mov [rsp+8], rax
00216a1elea rax, [rsp+32]
00216a23mov [rsp+16], rax
00216a28test edi, edi
00216a2ajle 0x216b88
00216a30mov rbp, rax
00216a33xor r13l, r13l
00216a36xor ebx, ebx
00216a38jmp 0x216a5f
00216a3adb 0x31
00216a3bfucomi f3
00216a3ddb 0x21
00216a3e
00216a3e 66 90 f.
00216a40
00216a40loc_216a40:
00216a40mov edx, eax
00216a42add eax, 8
00216a45mov [rsp], eax
00216a48add rdx, rbp
00216a4b
00216a4bloc_216a4b:
00216a4bmov rdi, [rdx]
00216a4eadd r13l, 1
00216a52call fn_f43a0
00216a57add rbx, rax
00216a5acmp r12l, r13l
00216a5dje 0x216a80
00216a5f
00216a5floc_216a5f:
00216a5fmov eax, [rsp]
00216a62cmp eax, 47
00216a65jbe 0x216a40
00216a67mov rdx, [rsp+8]
00216a6clea rax, [rdx+8]
00216a70mov [rsp+8], rax
00216a75jmp 0x216a4b
00216a77
00216a77 66 0f 1f 84 00 00 00 00 00 f........
00216a80
00216a80loc_216a80:
00216a80lea rbp, [rbx+1]
00216a84
00216a84loc_216a84:
00216a84cmp [rip+0x1620fc], 0
00216a8cje 0x216b60
00216a92lea rdi, [rbx+17]
00216a96call fn_f4250
00216a9bmov r13, rax
00216a9etest rax, rax
00216aa1je 0x216b74
00216aa7mov rdi, rax
00216aaaadd r13, 16
00216aaecall fn_2159d0
00216ab3
00216ab3loc_216ab3:
00216ab3lea rax, [rsp+144]
00216abbmov [rsp], 8
00216ac2mov rbp, r13
00216ac5mov [rsp+8], rax
00216acalea rax, [rsp+32]
00216acfmov [rsp+16], rax
00216ad4test r12l, r12l
00216ad7jle 0x216b30
00216ad9xor r14l, r14l
00216adcjmp 0x216b15
00216ade
00216ade 66 90 f.
00216ae0
00216ae0loc_216ae0:
00216ae0mov edx, eax
00216ae2add eax, 8
00216ae5add rdx, [rsp+16]
00216aeamov [rsp], eax
00216aed
00216aedloc_216aed:
00216aedmov r15, [rdx]
00216af0add r14l, 1
00216af4mov rdi, r15
00216af7call fn_f43a0
00216afcmov rdi, rbp
00216affmov rsi, r15
00216b02mov rbx, rax
00216b05mov rdx, rax
00216b08call fn_f47d0
00216b0dadd rbp, rbx
00216b10cmp r12l, r14l
00216b13je 0x216b30
00216b15
00216b15loc_216b15:
00216b15mov eax, [rsp]
00216b18cmp eax, 47
00216b1bjbe 0x216ae0
00216b1dmov rdx, [rsp+8]
00216b22lea rax, [rdx+8]
00216b26mov [rsp+8], rax
00216b2bjmp 0x216aed
00216b2d
00216b2d 0f 1f 00 ...
00216b30
00216b30loc_216b30:
00216b30mov [rbp], 0
00216b34mov rax, [rsp+24]
00216b39sub rax, [0x28]
00216b42jne 0x216b94
00216b44add rsp, 88
00216b48mov rax, r13
00216b4bpop rbx
00216b4cpop rbp
00216b4dpop r12
00216b4fpop r13
00216b51pop r14
00216b53pop r15
00216b55ret
00216b56
00216b56 66 2e 0f 1f 84 00 00 00 00 00 f.........
00216b60
00216b60loc_216b60:
00216b60mov rdi, rbp
00216b63call fn_f4250
00216b68mov r13, rax
00216b6btest rax, rax
00216b6ejne 0x216ab3
00216b74
00216b74loc_216b74:
00216b74test rbp, rbp
00216b77je 0x216ab3
00216b7dcall caml_raise_out_of_memory
00216b82nop [rax+rax]
00216b88
00216b88loc_216b88:
00216b88mov ebp, 1
00216b8dxor ebx, ebx
00216b8fjmp 0x216a84
00216b94
00216b94loc_216b94:
00216b94call fn_f4590
002169d0
002169d0caml_stat_strconcat:
002169d0push r15
002169d2push r14
002169d4push r13
002169d6push r12
002169d8mov r12l, edi
002169dbpush rbp
002169dcpush rbx
002169ddsub rsp, 88
002169e1mov [rsp+40], rsi
002169e6mov [rsp+48], rdx
002169ebmov [rsp+56], rcx
002169f0mov [rsp+64], r8
002169f5mov [rsp+72], r9
002169famov rax, [0x28]
00216a03mov [rsp+24], rax
00216a08xor eax, eax
00216a0alea rax, [rsp+144]
00216a12mov [rsp], 8
00216a19mov [rsp+8], rax
00216a1elea rax, [rsp+32]
00216a23mov [rsp+16], rax
00216a28test edi, edi
00216a2ajle 0x216b88
00216a30mov rbp, rax
00216a33xor r13l, r13l
00216a36xor ebx, ebx
00216a38jmp 0x216a5f
00216a3adb 0x31
00216a3bfucomi f3
00216a3ddb 0x21
00216a3e
00216a3e 66 90 f.
00216a40
00216a40loc_216a40:
00216a40mov edx, eax
00216a42add eax, 8
00216a45mov [rsp], eax
00216a48add rdx, rbp
00216a4b
00216a4bloc_216a4b:
00216a4bmov rdi, [rdx]
00216a4eadd r13l, 1
00216a52call fn_f43a0
00216a57add rbx, rax
00216a5acmp r12l, r13l
00216a5dje 0x216a80
00216a5f
00216a5floc_216a5f:
00216a5fmov eax, [rsp]
00216a62cmp eax, 47
00216a65jbe 0x216a40
00216a67mov rdx, [rsp+8]
00216a6clea rax, [rdx+8]
00216a70mov [rsp+8], rax
00216a75jmp 0x216a4b
00216a77
00216a77 66 0f 1f 84 00 00 00 00 00 f........
00216a80
00216a80loc_216a80:
00216a80lea rbp, [rbx+1]
00216a84
00216a84loc_216a84:
00216a84cmp [rip+0x1620fc], 0
00216a8cje 0x216b60
00216a92lea rdi, [rbx+17]
00216a96call fn_f4250
00216a9bmov r13, rax
00216a9etest rax, rax
00216aa1je 0x216b74
00216aa7mov rdi, rax
00216aaaadd r13, 16
00216aaecall fn_2159d0
00216ab3
00216ab3loc_216ab3:
00216ab3lea rax, [rsp+144]
00216abbmov [rsp], 8
00216ac2mov rbp, r13
00216ac5mov [rsp+8], rax
00216acalea rax, [rsp+32]
00216acfmov [rsp+16], rax
00216ad4test r12l, r12l
00216ad7jle 0x216b30
00216ad9xor r14l, r14l
00216adcjmp 0x216b15
00216ade
00216ade 66 90 f.
00216ae0
00216ae0loc_216ae0:
00216ae0mov edx, eax
00216ae2add eax, 8
00216ae5add rdx, [rsp+16]
00216aeamov [rsp], eax
00216aed
00216aedloc_216aed:
00216aedmov r15, [rdx]
00216af0add r14l, 1
00216af4mov rdi, r15
00216af7call fn_f43a0
00216afcmov rdi, rbp
00216affmov rsi, r15
00216b02mov rbx, rax
00216b05mov rdx, rax
00216b08call fn_f47d0
00216b0dadd rbp, rbx
00216b10cmp r12l, r14l
00216b13je 0x216b30
00216b15
00216b15loc_216b15:
00216b15mov eax, [rsp]
00216b18cmp eax, 47
00216b1bjbe 0x216ae0
00216b1dmov rdx, [rsp+8]
00216b22lea rax, [rdx+8]
00216b26mov [rsp+8], rax
00216b2bjmp 0x216aed
00216b2d
00216b2d 0f 1f 00 ...
00216b30
00216b30loc_216b30:
00216b30mov [rbp], 0
00216b34mov rax, [rsp+24]
00216b39sub rax, [0x28]
00216b42jne 0x216b94
00216b44add rsp, 88
00216b48mov rax, r13
00216b4bpop rbx
00216b4cpop rbp
00216b4dpop r12
00216b4fpop r13
00216b51pop r14
00216b53pop r15
00216b55ret
00216b56
00216b56 66 2e 0f 1f 84 00 00 00 00 00 f.........
00216b60
00216b60loc_216b60:
00216b60mov rdi, rbp
00216b63call fn_f4250
00216b68mov r13, rax
00216b6btest rax, rax
00216b6ejne 0x216ab3
00216b74
00216b74loc_216b74:
00216b74test rbp, rbp
00216b77je 0x216ab3
00216b7dcall caml_raise_out_of_memory
00216b82nop [rax+rax]
00216b88
00216b88loc_216b88:
00216b88mov ebp, 1
00216b8dxor ebx, ebx
00216b8fjmp 0x216a84
00216b94
00216b94loc_216b94:
00216b94call fn_f4590
002169d0
00216b99
00216b99 // align 0x10
00216b99 // align 0x10
00216ba0
00216ba0fn_216ba0:
00216ba0sub rsp, 536
00216ba7pxor x5, x5
00216babmov rsi, [0x28]
00216bb4mov [rsp+520], rsi
00216bbcmov rsi, rdi
00216bbfmov rdx, rsp
00216bc2mov rdi, rsp
00216bc5lea rcx, [rsp+256]
00216bcdmov rax, [rsi+64]
00216bd1mov rax, [rax+16]
00216bd5cvtsd2ss x5, [rax]
00216bd9lea rax, [rsi+120]
00216bddnop [rax]
00216be0
00216be0loc_216be0:
00216be0movdqu x4, [rax+768]
00216be8movdqu x1, [rax]
00216becadd rdx, 16
00216bf0add rax, 16
00216bf4movdqu x0, [rax+240]
00216bfcmovdqu x3, [rax+496]
00216c04movdqa x2, x4
00216c08pxor x2, x0
00216c0cpxor x3, x1
00216c10movdqa x6, x0
00216c14pslld x0, 9
00216c19pxor x6, x3
00216c1dpxor x0, x3
00216c21movups [rax+240], x6
00216c28movdqa x6, x1
00216c2cpaddd x1, x4
00216c30movups [rax+496], x0
00216c37movdqa x0, x2
00216c3bpxor x6, x2
00216c3fpsrld x0, 21
00216c44pslld x2, 11
00216c49movups [rax-16], x6
00216c4dpor x0, x2
00216c51movups [rax+752], x0
00216c58movaps [rdx-16], x1
00216c5ccmp rdx, rcx
00216c5fjne 0x216be0
00216c65mov edx, 65535
00216c6axor eax, eax
00216c6cshufps x5, x5, 0
00216c70movss x13, [rip+0x1338f]
00216c79movd x4, edx
00216c7dmov edx, 0x7fffff
00216c82movss x12, [rip+0x13381]
00216c8bmovss x11, [rip+0x1337c]
00216c94movd x3, edx
00216c98mov edx, 0x3f800000
00216c9dmovss x10, [rip+0x1336e]
00216ca6movss x9, [rip+0x13369]
00216cafmovd x2, edx
00216cb3shufps x13, x13, 0
00216cb8shufps x12, x12, 0
00216cbdmovss x8, [rip+0x13356]
00216cc6shufps x11, x11, 0
00216ccbshufps x10, x10, 0
00216cd0shufps x9, x9, 0
00216cd5movss x7, [rip+0x13343]
00216cddshufps x8, x8, 0
00216ce2pshufd x4, x4, 0
00216ce7pshufd x3, x3, 0
00216cecmovss x6, [rip+0x13330]
00216cf4shufps x7, x7, 0
00216cf8pshufd x2, x2, 0
00216cfdshufps x6, x6, 0
00216d01nop [rax+rax]
00216d0cnop [rax]
00216d10
00216d10loc_216d10:
00216d10movdqa x0, [rdi+rax]
00216d15movdqa x14, x3
00216d1amovdqa x1, x0
00216d1epsrld x0, 16
00216d23cvtdq2ps x0, x0
00216d26mulps x0, x13
00216d2apand x1, x4
00216d2ecvtdq2ps x1, x1
00216d31addps x1, x0
00216d34movaps x0, x11
00216d38addps x1, x12
00216d3cpand x14, x1
00216d41psrad x1, 23
00216d46por x14, x2
00216d4bcvtdq2ps x1, x1
00216d4emulps x0, x14
00216d52mulps x1, x7
00216d55addps x0, x10
00216d59mulps x0, x14
00216d5daddps x0, x9
00216d61mulps x0, x14
00216d65addps x0, x8
00216d69addps x0, x1
00216d6cmulps x0, x5
00216d6faddps x0, x6
00216d72movaps [rcx+rax], x0
00216d76add rax, 16
00216d7acmp rax, 256
00216d80jne 0x216d10
00216d82movss x1, [rip+0x132a2]
00216d8axor eax, eax
00216d8cmov rdi, 0x8000000000000000
00216d96jmp 0x216db7
00216d98
00216d98 0f 1f 84 00 00 00 00 00 ........
00216da0
00216da0loc_216da0:
00216da0cvttss2si rdx, x0
00216da5
00216da5loc_216da5:
00216da5mov [rsi+8*rax+1144], rdx
00216dadadd rax, 1
00216db1cmp rax, 64
00216db5je 0x216df0
00216db7
00216db7loc_216db7:
00216db7mov rdx, 0x3fffffffffffffff
00216dc1movss x0, [rcx+4*rax]
00216dc6comiss x0, [rip+0x1325b]
00216dcdjae 0x216da5
00216dcfcomiss x0, [rip+0x13256]
00216dd6jb 0x216da0
00216dd8subss x0, x1
00216ddccvttss2si rdx, x0
00216de1xor rdx, rdi
00216de4jmp 0x216da5
00216de6
00216de6 66 2e 0f 1f 84 00 00 00 00 00 f.........
00216df0
00216df0loc_216df0:
00216df0mov [rsi+1656], 0
00216dfamov rax, [rsp+520]
00216e02sub rax, [0x28]
00216e0bjne 0x216e15
00216e0dadd rsp, 536
00216e14ret
00216e15
00216e15loc_216e15:
00216e15call fn_f4590
00216ba0
00216ba0fn_216ba0:
00216ba0sub rsp, 536
00216ba7pxor x5, x5
00216babmov rsi, [0x28]
00216bb4mov [rsp+520], rsi
00216bbcmov rsi, rdi
00216bbfmov rdx, rsp
00216bc2mov rdi, rsp
00216bc5lea rcx, [rsp+256]
00216bcdmov rax, [rsi+64]
00216bd1mov rax, [rax+16]
00216bd5cvtsd2ss x5, [rax]
00216bd9lea rax, [rsi+120]
00216bddnop [rax]
00216be0
00216be0loc_216be0:
00216be0movdqu x4, [rax+768]
00216be8movdqu x1, [rax]
00216becadd rdx, 16
00216bf0add rax, 16
00216bf4movdqu x0, [rax+240]
00216bfcmovdqu x3, [rax+496]
00216c04movdqa x2, x4
00216c08pxor x2, x0
00216c0cpxor x3, x1
00216c10movdqa x6, x0
00216c14pslld x0, 9
00216c19pxor x6, x3
00216c1dpxor x0, x3
00216c21movups [rax+240], x6
00216c28movdqa x6, x1
00216c2cpaddd x1, x4
00216c30movups [rax+496], x0
00216c37movdqa x0, x2
00216c3bpxor x6, x2
00216c3fpsrld x0, 21
00216c44pslld x2, 11
00216c49movups [rax-16], x6
00216c4dpor x0, x2
00216c51movups [rax+752], x0
00216c58movaps [rdx-16], x1
00216c5ccmp rdx, rcx
00216c5fjne 0x216be0
00216c65mov edx, 65535
00216c6axor eax, eax
00216c6cshufps x5, x5, 0
00216c70movss x13, [rip+0x1338f]
00216c79movd x4, edx
00216c7dmov edx, 0x7fffff
00216c82movss x12, [rip+0x13381]
00216c8bmovss x11, [rip+0x1337c]
00216c94movd x3, edx
00216c98mov edx, 0x3f800000
00216c9dmovss x10, [rip+0x1336e]
00216ca6movss x9, [rip+0x13369]
00216cafmovd x2, edx
00216cb3shufps x13, x13, 0
00216cb8shufps x12, x12, 0
00216cbdmovss x8, [rip+0x13356]
00216cc6shufps x11, x11, 0
00216ccbshufps x10, x10, 0
00216cd0shufps x9, x9, 0
00216cd5movss x7, [rip+0x13343]
00216cddshufps x8, x8, 0
00216ce2pshufd x4, x4, 0
00216ce7pshufd x3, x3, 0
00216cecmovss x6, [rip+0x13330]
00216cf4shufps x7, x7, 0
00216cf8pshufd x2, x2, 0
00216cfdshufps x6, x6, 0
00216d01nop [rax+rax]
00216d0cnop [rax]
00216d10
00216d10loc_216d10:
00216d10movdqa x0, [rdi+rax]
00216d15movdqa x14, x3
00216d1amovdqa x1, x0
00216d1epsrld x0, 16
00216d23cvtdq2ps x0, x0
00216d26mulps x0, x13
00216d2apand x1, x4
00216d2ecvtdq2ps x1, x1
00216d31addps x1, x0
00216d34movaps x0, x11
00216d38addps x1, x12
00216d3cpand x14, x1
00216d41psrad x1, 23
00216d46por x14, x2
00216d4bcvtdq2ps x1, x1
00216d4emulps x0, x14
00216d52mulps x1, x7
00216d55addps x0, x10
00216d59mulps x0, x14
00216d5daddps x0, x9
00216d61mulps x0, x14
00216d65addps x0, x8
00216d69addps x0, x1
00216d6cmulps x0, x5
00216d6faddps x0, x6
00216d72movaps [rcx+rax], x0
00216d76add rax, 16
00216d7acmp rax, 256
00216d80jne 0x216d10
00216d82movss x1, [rip+0x132a2]
00216d8axor eax, eax
00216d8cmov rdi, 0x8000000000000000
00216d96jmp 0x216db7
00216d98
00216d98 0f 1f 84 00 00 00 00 00 ........
00216da0
00216da0loc_216da0:
00216da0cvttss2si rdx, x0
00216da5
00216da5loc_216da5:
00216da5mov [rsi+8*rax+1144], rdx
00216dadadd rax, 1
00216db1cmp rax, 64
00216db5je 0x216df0
00216db7
00216db7loc_216db7:
00216db7mov rdx, 0x3fffffffffffffff
00216dc1movss x0, [rcx+4*rax]
00216dc6comiss x0, [rip+0x1325b]
00216dcdjae 0x216da5
00216dcfcomiss x0, [rip+0x13256]
00216dd6jb 0x216da0
00216dd8subss x0, x1
00216ddccvttss2si rdx, x0
00216de1xor rdx, rdi
00216de4jmp 0x216da5
00216de6
00216de6 66 2e 0f 1f 84 00 00 00 00 00 f.........
00216df0
00216df0loc_216df0:
00216df0mov [rsi+1656], 0
00216dfamov rax, [rsp+520]
00216e02sub rax, [0x28]
00216e0bjne 0x216e15
00216e0dadd rsp, 536
00216e14ret
00216e15
00216e15loc_216e15:
00216e15call fn_f4590
00216ba0
00216e1a
00216e1a // align 0x10
00216e1a // align 0x10
00216e20
00216e20fn_216e20:
00216e20mov rcx, [rdi+56]
00216e24mov rax, [rsi]
00216e27lea rdx, [rdi+56]
00216e2bmov rdi, [rsi+16]
00216e2fmov rsi, rcx
00216e32jmp rax
00216e34db 0x89
00216e35db 0xce
00216e36jmp rax
00216e20
00216e20fn_216e20:
00216e20mov rcx, [rdi+56]
00216e24mov rax, [rsi]
00216e27lea rdx, [rdi+56]
00216e2bmov rdi, [rsi+16]
00216e2fmov rsi, rcx
00216e32jmp rax
00216e34db 0x89
00216e35db 0xce
00216e36jmp rax
00216e20
00216e38
00216e38 // align 0x10
00216e38 // align 0x10
00216e40
00216e40fn_216e40:
00216e40mov rax, [rdi+24]
00216e44mov [rdi+32], rax
00216e48ret
00216e49db 0x89
00216e4aand r11b, r8b
00216e40
00216e40fn_216e40:
00216e40mov rax, [rdi+24]
00216e44mov [rdi+32], rax
00216e48ret
00216e49db 0x89
00216e4aand r11b, r8b
00216e40
00216e4d
00216e4d // align 0x10
00216e4d // align 0x10
00216e50
00216e50fn_216e50:
00216e50test [rdi+40], 4
00216e54jne 0x216ea0
00216e56mov rax, [rdi]
00216e59test al, 1
00216e5bjne 0x216ea0
00216e5dcmp rax, [rip+0x161760]
00216e64jae 0x216e73
00216e66cmp [rip+0x16175f], rax
00216e6djb 0x216ea0
00216e6fmov rax, [rax-8]
00216e73
00216e73loc_216e73:
00216e73and eax, 768
00216e78cmp [rip+0x161545], rax
00216e7fjne 0x216ea0
00216e81or [rdi+40], 32
00216e85mov eax, 1
00216e8amov [rdi], 1
00216e91ret
00216e92db 0x00
00216e93add [rax], al
00216e95ret
00216e96
00216e96 66 2e 0f 1f 84 00 00 00 00 00 f.........
00216ea0
00216ea0loc_216ea0:
00216ea0xor eax, eax
00216ea2ret
00216e50
00216e50fn_216e50:
00216e50test [rdi+40], 4
00216e54jne 0x216ea0
00216e56mov rax, [rdi]
00216e59test al, 1
00216e5bjne 0x216ea0
00216e5dcmp rax, [rip+0x161760]
00216e64jae 0x216e73
00216e66cmp [rip+0x16175f], rax
00216e6djb 0x216ea0
00216e6fmov rax, [rax-8]
00216e73
00216e73loc_216e73:
00216e73and eax, 768
00216e78cmp [rip+0x161545], rax
00216e7fjne 0x216ea0
00216e81or [rdi+40], 32
00216e85mov eax, 1
00216e8amov [rdi], 1
00216e91ret
00216e92db 0x00
00216e93add [rax], al
00216e95ret
00216e96
00216e96 66 2e 0f 1f 84 00 00 00 00 00 f.........
00216ea0
00216ea0loc_216ea0:
00216ea0xor eax, eax
00216ea2ret
00216e50
00216ea3
00216ea3 // align 0x10
00216ea3 // align 0x10
00216eb0
00216eb0fn_216eb0:
00216eb0mov rax, [rdi+16]
00216eb4mov rcx, rax
00216eb7or rcx, rsi
00216ebaje 0x216f30
00216ebcpush rbp
00216ebdmov rbp, rdi
00216ec0push rbx
00216ec1sub rsp, 8
00216ec5add rsi, [rdi+24]
00216ec9cmp rax, rsi
00216eccjb 0x216f20
00216ecelea rdx, [4*rsi]
00216ed6cmp rdx, rax
00216ed9jae 0x216f0f
00216edbmov rdx, [rdi+8]
00216edfcmp rax, rdx
00216ee2je 0x216f0f
00216ee4
00216ee4loc_216ee4:
00216ee4add rsi, rsi
00216ee7mov rbx, rdx
00216eeamov rdi, [rbp]
00216eeecmp rsi, rdx
00216ef1cmovae rbx, rsi
00216ef5lea rsi, [rbx+2*rbx]
00216ef9shl rsi, 4
00216efdcall caml_stat_resize_noexc
00216f02test rax, rax
00216f05je 0x216f40
00216f07mov [rbp], rax
00216f0bmov [rbp+16], rbx
00216f0f
00216f0floc_216f0f:
00216f0fmov eax, 1
00216f14
00216f14loc_216f14:
00216f14add rsp, 8
00216f18pop rbx
00216f19pop rbp
00216f1aret
00216f1b
00216f1b 0f 1f 44 00 00 ..D..
00216f20
00216f20loc_216f20:
00216f20mov rdx, [rdi+8]
00216f24jmp 0x216ee4
00216f26
00216f26 66 2e 0f 1f 84 00 00 00 00 00 f.........
00216f30
00216f30loc_216f30:
00216f30mov eax, 1
00216f35ret
00216f36
00216f36 66 2e 0f 1f 84 00 00 00 00 00 f.........
00216f40
00216f40loc_216f40:
00216f40xor eax, eax
00216f42jmp 0x216f14
00216eb0
00216eb0fn_216eb0:
00216eb0mov rax, [rdi+16]
00216eb4mov rcx, rax
00216eb7or rcx, rsi
00216ebaje 0x216f30
00216ebcpush rbp
00216ebdmov rbp, rdi
00216ec0push rbx
00216ec1sub rsp, 8
00216ec5add rsi, [rdi+24]
00216ec9cmp rax, rsi
00216eccjb 0x216f20
00216ecelea rdx, [4*rsi]
00216ed6cmp rdx, rax
00216ed9jae 0x216f0f
00216edbmov rdx, [rdi+8]
00216edfcmp rax, rdx
00216ee2je 0x216f0f
00216ee4
00216ee4loc_216ee4:
00216ee4add rsi, rsi
00216ee7mov rbx, rdx
00216eeamov rdi, [rbp]
00216eeecmp rsi, rdx
00216ef1cmovae rbx, rsi
00216ef5lea rsi, [rbx+2*rbx]
00216ef9shl rsi, 4
00216efdcall caml_stat_resize_noexc
00216f02test rax, rax
00216f05je 0x216f40
00216f07mov [rbp], rax
00216f0bmov [rbp+16], rbx
00216f0f
00216f0floc_216f0f:
00216f0fmov eax, 1
00216f14
00216f14loc_216f14:
00216f14add rsp, 8
00216f18pop rbx
00216f19pop rbp
00216f1aret
00216f1b
00216f1b 0f 1f 44 00 00 ..D..
00216f20
00216f20loc_216f20:
00216f20mov rdx, [rdi+8]
00216f24jmp 0x216ee4
00216f26
00216f26 66 2e 0f 1f 84 00 00 00 00 00 f.........
00216f30
00216f30loc_216f30:
00216f30mov eax, 1
00216f35ret
00216f36
00216f36 66 2e 0f 1f 84 00 00 00 00 00 f.........
00216f40
00216f40loc_216f40:
00216f40xor eax, eax
00216f42jmp 0x216f14
00216eb0
00216f44
00216f44 // align 0x10
00216f44 // align 0x10
00216f50
00216f50fn_216f50:
00216f50mov rdx, [rdi+40]
00216f54cmp rdx, [rdi+24]
00216f58jae 0x216fe1
00216f5elea rcx, [rdx+2*rdx]
00216f62mov rax, rdx
00216f65shl rcx, 4
00216f69nop [rax]
00216f70
00216f70loc_216f70:
00216f70mov rsi, [rdi]
00216f73lea r8, [rsi+rcx]
00216f77test [r8+40], 64
00216f7cjne 0x216fbf
00216f7ecmp rax, rdx
00216f81je 0x216fbb
00216f83lea r9, [rdx+2*rdx]
00216f87movdqu x0, [r8]
00216f8cshl r9, 4
00216f90add rsi, r9
00216f93movups [rsi], x0
00216f96movdqu x0, [r8+16]
00216f9cmovups [rsi+16], x0
00216fa0movdqu x0, [r8+32]
00216fa6movups [rsi+32], x0
00216faamov rsi, [rdi]
00216fadmov rsi, [rsi+rcx+32]
00216fb2test rsi, rsi
00216fb5je 0x216fbb
00216fb7mov [rsi+8], rdx
00216fbb
00216fbbloc_216fbb:
00216fbbadd rdx, 1
00216fbf
00216fbfloc_216fbf:
00216fbfadd rax, 1
00216fc3cmp [rdi+32], rax
00216fc7jne 0x216fcd
00216fc9mov [rdi+32], rdx
00216fcd
00216fcdloc_216fcd:
00216fcdcmp [rdi+48], rax
00216fd1jne 0x216fd7
00216fd3mov [rdi+48], rdx
00216fd7
00216fd7loc_216fd7:
00216fd7add rcx, 48
00216fdbcmp rax, [rdi+24]
00216fdfjb 0x216f70
00216fe1
00216fe1loc_216fe1:
00216fe1mov [rdi+24], rdx
00216fe5xor esi, esi
00216fe7mov [rdi+40], rdx
00216febjmp 0x216eb0
00216f50
00216f50fn_216f50:
00216f50mov rdx, [rdi+40]
00216f54cmp rdx, [rdi+24]
00216f58jae 0x216fe1
00216f5elea rcx, [rdx+2*rdx]
00216f62mov rax, rdx
00216f65shl rcx, 4
00216f69nop [rax]
00216f70
00216f70loc_216f70:
00216f70mov rsi, [rdi]
00216f73lea r8, [rsi+rcx]
00216f77test [r8+40], 64
00216f7cjne 0x216fbf
00216f7ecmp rax, rdx
00216f81je 0x216fbb
00216f83lea r9, [rdx+2*rdx]
00216f87movdqu x0, [r8]
00216f8cshl r9, 4
00216f90add rsi, r9
00216f93movups [rsi], x0
00216f96movdqu x0, [r8+16]
00216f9cmovups [rsi+16], x0
00216fa0movdqu x0, [r8+32]
00216fa6movups [rsi+32], x0
00216faamov rsi, [rdi]
00216fadmov rsi, [rsi+rcx+32]
00216fb2test rsi, rsi
00216fb5je 0x216fbb
00216fb7mov [rsi+8], rdx
00216fbb
00216fbbloc_216fbb:
00216fbbadd rdx, 1
00216fbf
00216fbfloc_216fbf:
00216fbfadd rax, 1
00216fc3cmp [rdi+32], rax
00216fc7jne 0x216fcd
00216fc9mov [rdi+32], rdx
00216fcd
00216fcdloc_216fcd:
00216fcdcmp [rdi+48], rax
00216fd1jne 0x216fd7
00216fd3mov [rdi+48], rdx
00216fd7
00216fd7loc_216fd7:
00216fd7add rcx, 48
00216fdbcmp rax, [rdi+24]
00216fdfjb 0x216f70
00216fe1
00216fe1loc_216fe1:
00216fe1mov [rdi+24], rdx
00216fe5xor esi, esi
00216fe7mov [rdi+40], rdx
00216febjmp 0x216eb0
00216f50
00216ff0
00216ff0fn_216ff0:
00216ff0push rbp
00216ff1lea rdx, [rdi+8]
00216ff5mov rbp, rdi
00216ff8push rbx
00216ff9mov rbx, rsi
00216ffcsub rsp, 8
00217000mov rsi, [rdi+8]
00217004mov rdi, [rbx+16]
00217008call [rbx]
0021700acmp [rbx+24], 0
0021700eje 0x21702d
00217010test [rbp+40], 4
00217014jne 0x21702d
00217016mov rsi, [rbp]
0021701acmp rsi, 1
0021701eje 0x21702d
00217020mov rdi, [rbx+16]
00217024mov rdx, rbp
00217027call [rbx]
00217029add rsp, 8
0021702d
0021702dloc_21702d:
0021702dxor eax, eax
0021702fpop rbx
00217030pop rbp
00217031ret
00217032db 0xc0
00217033pop rbx
00217034pop rbp
00217035ret
00216ff0
00216ff0fn_216ff0:
00216ff0push rbp
00216ff1lea rdx, [rdi+8]
00216ff5mov rbp, rdi
00216ff8push rbx
00216ff9mov rbx, rsi
00216ffcsub rsp, 8
00217000mov rsi, [rdi+8]
00217004mov rdi, [rbx+16]
00217008call [rbx]
0021700acmp [rbx+24], 0
0021700eje 0x21702d
00217010test [rbp+40], 4
00217014jne 0x21702d
00217016mov rsi, [rbp]
0021701acmp rsi, 1
0021701eje 0x21702d
00217020mov rdi, [rbx+16]
00217024mov rdx, rbp
00217027call [rbx]
00217029add rsp, 8
0021702d
0021702dloc_21702d:
0021702dxor eax, eax
0021702fpop rbx
00217030pop rbp
00217031ret
00217032db 0xc0
00217033pop rbx
00217034pop rbp
00217035ret
00216ff0
00217036
00217036 // align 0x10
00217036 // align 0x10
00217040
00217040fn_217040:
00217040movzx edx, [rdi+40]
00217044mov eax, edx
00217046shr al, 2
00217049and eax, 1
0021704cjne 0x217070
0021704emov rcx, [rdi]
00217051test cl, 1
00217054jne 0x21706c
00217056cmp rcx, [rip+0x161567]
0021705djae 0x21706c
0021705fcmp [rip+0x161566], rcx
00217066jb 0x217078
00217068ret
00217069db 0x00
0021706ajb 0x217078
0021706c
0021706cloc_21706c:
0021706cret
0021706d
0021706d 0f 1f 00 ...
00217070
00217070loc_217070:
00217070xor eax, eax
00217072ret
00217073
00217073 0f 1f 44 00 00 ..D..
00217078
00217078loc_217078:
00217078mov rax, [rcx-8]
0021707ctest rax, rax
0021707fjne 0x217098
00217081mov rax, [rcx]
00217084or edx, 16
00217087mov [rdi+40], dl
0021708amov [rdi], rax
0021708d
0021708dloc_21708d:
0021708dmov eax, 1
00217092ret
00217093
00217093 0f 1f 44 00 00 ..D..
00217098
00217098loc_217098:
00217098or edx, 32
0021709bmov [rdi], 1
002170a2mov [rdi+40], dl
002170a5jmp 0x21708d
00217040
00217040fn_217040:
00217040movzx edx, [rdi+40]
00217044mov eax, edx
00217046shr al, 2
00217049and eax, 1
0021704cjne 0x217070
0021704emov rcx, [rdi]
00217051test cl, 1
00217054jne 0x21706c
00217056cmp rcx, [rip+0x161567]
0021705djae 0x21706c
0021705fcmp [rip+0x161566], rcx
00217066jb 0x217078
00217068ret
00217069db 0x00
0021706ajb 0x217078
0021706c
0021706cloc_21706c:
0021706cret
0021706d
0021706d 0f 1f 00 ...
00217070
00217070loc_217070:
00217070xor eax, eax
00217072ret
00217073
00217073 0f 1f 44 00 00 ..D..
00217078
00217078loc_217078:
00217078mov rax, [rcx-8]
0021707ctest rax, rax
0021707fjne 0x217098
00217081mov rax, [rcx]
00217084or edx, 16
00217087mov [rdi+40], dl
0021708amov [rdi], rax
0021708d
0021708dloc_21708d:
0021708dmov eax, 1
00217092ret
00217093
00217093 0f 1f 44 00 00 ..D..
00217098
00217098loc_217098:
00217098or edx, 32
0021709bmov [rdi], 1
002170a2mov [rdi+40], dl
002170a5jmp 0x21708d
00217040
002170a7
002170a7 // align 0x10
002170a7 // align 0x10
002170b0
002170b0fn_2170b0:
002170b0mov rax, [rdi+96]
002170b4cmp [rax], 0
002170b7jne 0x2170e1
002170b9mov rdx, [rdi+32]
002170bdcmp [rdi+56], rdx
002170c1jae 0x2170d0
002170c3
002170c3loc_2170c3:
002170c3mov [rdi+81], 1
002170c7mov rdi, [rdi]
002170cajmp 0x21fcf0
002170cf
002170cf 90 .
002170d0
002170d0loc_2170d0:
002170d0cmp [rax+48], 0
002170d5jne 0x2170c3
002170d7cmp [rdi+80], 0
002170dbjne 0x2170c3
002170ddmov [rdi+81], 0
002170e1
002170e1loc_2170e1:
002170e1ret
002170b0
002170b0fn_2170b0:
002170b0mov rax, [rdi+96]
002170b4cmp [rax], 0
002170b7jne 0x2170e1
002170b9mov rdx, [rdi+32]
002170bdcmp [rdi+56], rdx
002170c1jae 0x2170d0
002170c3
002170c3loc_2170c3:
002170c3mov [rdi+81], 1
002170c7mov rdi, [rdi]
002170cajmp 0x21fcf0
002170cf
002170cf 90 .
002170d0
002170d0loc_2170d0:
002170d0cmp [rax+48], 0
002170d5jne 0x2170c3
002170d7cmp [rdi+80], 0
002170dbjne 0x2170c3
002170ddmov [rdi+81], 0
002170e1
002170e1loc_2170e1:
002170e1ret
002170b0
002170e2
002170e2 // align 0x10
002170e2 // align 0x10
002170f0
002170f0fn_2170f0:
002170f0push rbp
002170f1push rbx
002170f2sub rsp, 8
002170f6mov rax, [rdi+72]
002170fatest rax, rax
002170fdje 0x217160
002170ffnop
00217100
00217100loc_217100:
00217100mov rdx, rax
00217103mov rax, [rax+64]
00217107test rax, rax
0021710ajne 0x217100
0021710clea rbx, [rdx+64]
00217110
00217110loc_217110:
00217110lea rbp, [rip+0x161aa9]
00217117mov rdi, rbp
0021711acall fn_f4710
0021711ftest eax, eax
00217121jne 0x217166
00217123mov rax, [rip+0x161abe]
0021712atest rax, rax
0021712dje 0x217148
0021712fmov [rbx], rax
00217132mov [rip+0x161aab], 0
0021713dmov [rip+0x161a58], 0
00217148
00217148loc_217148:
00217148mov rdi, rbp
0021714bcall fn_f47c0
00217150test eax, eax
00217152jne 0x217174
00217154add rsp, 8
00217158pop rbx
00217159pop rbp
0021715aret
0021715b
0021715b 0f 1f 44 00 00 ..D..
00217160
00217160loc_217160:
00217160lea rbx, [rdi+72]
00217164jmp 0x217110
00217166
00217166loc_217166:
00217166mov esi, eax
00217168lea rdi, [rip+0x183a0]
0021716fcall caml_plat_fatal_error
00217174
00217174loc_217174:
00217174mov esi, eax
00217176lea rdi, [rip+0x1839d]
0021717dcall caml_plat_fatal_error
002170f0
002170f0fn_2170f0:
002170f0push rbp
002170f1push rbx
002170f2sub rsp, 8
002170f6mov rax, [rdi+72]
002170fatest rax, rax
002170fdje 0x217160
002170ffnop
00217100
00217100loc_217100:
00217100mov rdx, rax
00217103mov rax, [rax+64]
00217107test rax, rax
0021710ajne 0x217100
0021710clea rbx, [rdx+64]
00217110
00217110loc_217110:
00217110lea rbp, [rip+0x161aa9]
00217117mov rdi, rbp
0021711acall fn_f4710
0021711ftest eax, eax
00217121jne 0x217166
00217123mov rax, [rip+0x161abe]
0021712atest rax, rax
0021712dje 0x217148
0021712fmov [rbx], rax
00217132mov [rip+0x161aab], 0
0021713dmov [rip+0x161a58], 0
00217148
00217148loc_217148:
00217148mov rdi, rbp
0021714bcall fn_f47c0
00217150test eax, eax
00217152jne 0x217174
00217154add rsp, 8
00217158pop rbx
00217159pop rbp
0021715aret
0021715b
0021715b 0f 1f 44 00 00 ..D..
00217160
00217160loc_217160:
00217160lea rbx, [rdi+72]
00217164jmp 0x217110
00217166
00217166loc_217166:
00217166mov esi, eax
00217168lea rdi, [rip+0x183a0]
0021716fcall caml_plat_fatal_error
00217174
00217174loc_217174:
00217174mov esi, eax
00217176lea rdi, [rip+0x1839d]
0021717dcall caml_plat_fatal_error
002170f0
00217182
00217182 // align 0x10
00217182 // align 0x10
00217190
00217190fn_217190:
00217190push r15
00217192push r14
00217194push r13
00217196mov r13, rdi
00217199xor edi, edi
0021719bpush r12
0021719dpush rbp
0021719emov rbp, rsi
002171a1push rbx
002171a2mov ebx, r8l
002171a5sub rsp, 40
002171a9mov [rsp+8], rdx
002171aemov [rsp+16], rcx
002171b3call caml_atom
002171b8lea rdx, [r13+112]
002171bclea rsi, [r13+104]
002171c0mov rcx, -1
002171c7mov r12, rax
002171camov rax, [r13+64]
002171cemov rdi, [rax+24]
002171d2sar rdi, 1
002171d5movsxd rdi, edi
002171d8call caml_get_callstack
002171ddtest rax, rax
002171e0jne 0x217290
002171e6cmp [r13+112], 256
002171eeja 0x2172f0
002171f4
002171f4loc_2171f4:
002171f4xor r15l, r15l
002171f7cmp rbp, [rip+0x1613ca]
002171fejae 0x21720b
00217200cmp [rip+0x1613c9], rbp
00217207setb r15b
0021720b
0021720bloc_21720b:
0021720bmov r14, [r13+96]
0021720fmov esi, 1
00217214lea rdi, [r14+24]
00217218call fn_216eb0
0021721dtest al, al
0021721fje 0x217277
00217221mov rax, [r14+48]
00217225movzx r15l, r15b
00217229and ebx, 3
0021722cshl r15l, 3
00217230lea rcx, [rax+1]
00217234lea rax, [rax+2*rax]
00217238or ebx, r15l
0021723bshl rax, 4
0021723fadd rax, [r14+24]
00217243mov [r14+48], rcx
00217247mov rcx, [rsp+8]
0021724cmovzx edx, [rax+40]
00217250mov [rax], rbp
00217253mov [rax+8], r12
00217257mov [rax+16], rcx
0021725band dx, -4096
00217260mov rcx, [rsp+16]
00217265or ebx, edx
00217267mov [rax+32], 0
0021726fmov [rax+24], rcx
00217273mov [rax+40], bx
00217277
00217277loc_217277:
00217277add rsp, 40
0021727bmov rdi, r13
0021727epop rbx
0021727fpop rbp
00217280pop r12
00217282pop r13
00217284pop r14
00217286pop r15
00217288jmp 0x2170b0
0021728d
0021728d 0f 1f 00 ...
00217290
00217290loc_217290:
00217290lea r15, [8*rax+8]
00217298mov [rsp+24], rax
0021729dmov rdi, r15
002172a0call caml_stat_alloc_noexc
002172a5mov r14, rax
002172a8test rax, rax
002172abje 0x2172ca
002172admov rdx, [rsp+24]
002172b2lea rdi, [rax+8]
002172b6lea r12, [r14+1]
002172bamov [rax], rdx
002172bdmov rsi, [r13+104]
002172c1lea rdx, [r15-8]
002172c5call fn_f47d0
002172ca
002172caloc_2172ca:
002172camov rax, [r13+112]
002172cecmp rax, 256
002172d4jbe 0x2171f4
002172dasub r15, 8
002172decmp r15, rax
002172e1jae 0x2171f4
002172e7nop [rax+rax]
002172f0
002172f0loc_2172f0:
002172f0mov rdi, [r13+104]
002172f4call caml_stat_free
002172f9mov [r13+104], 0
00217301mov [r13+112], 0
00217309jmp 0x2171f4
00217190
00217190fn_217190:
00217190push r15
00217192push r14
00217194push r13
00217196mov r13, rdi
00217199xor edi, edi
0021719bpush r12
0021719dpush rbp
0021719emov rbp, rsi
002171a1push rbx
002171a2mov ebx, r8l
002171a5sub rsp, 40
002171a9mov [rsp+8], rdx
002171aemov [rsp+16], rcx
002171b3call caml_atom
002171b8lea rdx, [r13+112]
002171bclea rsi, [r13+104]
002171c0mov rcx, -1
002171c7mov r12, rax
002171camov rax, [r13+64]
002171cemov rdi, [rax+24]
002171d2sar rdi, 1
002171d5movsxd rdi, edi
002171d8call caml_get_callstack
002171ddtest rax, rax
002171e0jne 0x217290
002171e6cmp [r13+112], 256
002171eeja 0x2172f0
002171f4
002171f4loc_2171f4:
002171f4xor r15l, r15l
002171f7cmp rbp, [rip+0x1613ca]
002171fejae 0x21720b
00217200cmp [rip+0x1613c9], rbp
00217207setb r15b
0021720b
0021720bloc_21720b:
0021720bmov r14, [r13+96]
0021720fmov esi, 1
00217214lea rdi, [r14+24]
00217218call fn_216eb0
0021721dtest al, al
0021721fje 0x217277
00217221mov rax, [r14+48]
00217225movzx r15l, r15b
00217229and ebx, 3
0021722cshl r15l, 3
00217230lea rcx, [rax+1]
00217234lea rax, [rax+2*rax]
00217238or ebx, r15l
0021723bshl rax, 4
0021723fadd rax, [r14+24]
00217243mov [r14+48], rcx
00217247mov rcx, [rsp+8]
0021724cmovzx edx, [rax+40]
00217250mov [rax], rbp
00217253mov [rax+8], r12
00217257mov [rax+16], rcx
0021725band dx, -4096
00217260mov rcx, [rsp+16]
00217265or ebx, edx
00217267mov [rax+32], 0
0021726fmov [rax+24], rcx
00217273mov [rax+40], bx
00217277
00217277loc_217277:
00217277add rsp, 40
0021727bmov rdi, r13
0021727epop rbx
0021727fpop rbp
00217280pop r12
00217282pop r13
00217284pop r14
00217286pop r15
00217288jmp 0x2170b0
0021728d
0021728d 0f 1f 00 ...
00217290
00217290loc_217290:
00217290lea r15, [8*rax+8]
00217298mov [rsp+24], rax
0021729dmov rdi, r15
002172a0call caml_stat_alloc_noexc
002172a5mov r14, rax
002172a8test rax, rax
002172abje 0x2172ca
002172admov rdx, [rsp+24]
002172b2lea rdi, [rax+8]
002172b6lea r12, [r14+1]
002172bamov [rax], rdx
002172bdmov rsi, [r13+104]
002172c1lea rdx, [r15-8]
002172c5call fn_f47d0
002172ca
002172caloc_2172ca:
002172camov rax, [r13+112]
002172cecmp rax, 256
002172d4jbe 0x2171f4
002172dasub r15, 8
002172decmp r15, rax
002172e1jae 0x2171f4
002172e7nop [rax+rax]
002172f0
002172f0loc_2172f0:
002172f0mov rdi, [r13+104]
002172f4call caml_stat_free
002172f9mov [r13+104], 0
00217301mov [r13+112], 0
00217309jmp 0x2171f4
00217190
0021730e
0021730e // align 0x10
0021730e // align 0x10
00217310
00217310fn_217310:
00217310push rbp
00217311push rbx
00217312mov rbx, rdi
00217315sub rsp, 8
00217319mov rbp, [rdi+88]
0021731dmov rdi, [rdi+24]
00217321test rdi, rdi
00217324je 0x217333
00217326call caml_stat_free
0021732bmov [rbx+24], 0
00217333
00217333loc_217333:
00217333pxor x0, x0
00217337mov [rbx+72], 0
0021733fmov [rbx+80], 1
00217347movups [rbx+40], x0
0021734bmovups [rbx+56], x0
0021734fcmp [rbp+96], rbx
00217353je 0x217388
00217355mov rax, [rbp+88]
00217359cmp rbx, rax
0021735cje 0x217399
0021735enop
00217360
00217360loc_217360:
00217360mov rdx, rax
00217363mov rax, [rax+96]
00217367cmp rbx, rax
0021736ajne 0x217360
0021736cadd rdx, 96
00217370
00217370loc_217370:
00217370mov rax, [rbx+96]
00217374mov rdi, rbx
00217377mov [rdx], rax
0021737aadd rsp, 8
0021737epop rbx
0021737fpop rbp
00217380jmp 0x216690
00217385
00217385 0f 1f 00 ...
00217388
00217388loc_217388:
00217388mov rax, [rbp+88]
0021738cmov [rbp+96], 0
00217394cmp rbx, rax
00217397jne 0x217360
00217399
00217399loc_217399:
00217399lea rdx, [rbp+88]
0021739djmp 0x217370
00217310
00217310fn_217310:
00217310push rbp
00217311push rbx
00217312mov rbx, rdi
00217315sub rsp, 8
00217319mov rbp, [rdi+88]
0021731dmov rdi, [rdi+24]
00217321test rdi, rdi
00217324je 0x217333
00217326call caml_stat_free
0021732bmov [rbx+24], 0
00217333
00217333loc_217333:
00217333pxor x0, x0
00217337mov [rbx+72], 0
0021733fmov [rbx+80], 1
00217347movups [rbx+40], x0
0021734bmovups [rbx+56], x0
0021734fcmp [rbp+96], rbx
00217353je 0x217388
00217355mov rax, [rbp+88]
00217359cmp rbx, rax
0021735cje 0x217399
0021735enop
00217360
00217360loc_217360:
00217360mov rdx, rax
00217363mov rax, [rax+96]
00217367cmp rbx, rax
0021736ajne 0x217360
0021736cadd rdx, 96
00217370
00217370loc_217370:
00217370mov rax, [rbx+96]
00217374mov rdi, rbx
00217377mov [rdx], rax
0021737aadd rsp, 8
0021737epop rbx
0021737fpop rbp
00217380jmp 0x216690
00217385
00217385 0f 1f 00 ...
00217388
00217388loc_217388:
00217388mov rax, [rbp+88]
0021738cmov [rbp+96], 0
00217394cmp rbx, rax
00217397jne 0x217360
00217399
00217399loc_217399:
00217399lea rdx, [rbp+88]
0021739djmp 0x217370
00217310
0021739f
0021739f // align 0x10
0021739f // align 0x10
002173a0
002173a0fn_2173a0:
002173a0mov rax, [rdi+56]
002173a4cmp rax, 1
002173a8je 0x2173b5
002173aamov rdx, [rax]
002173adsar rdx, 1
002173b0cmp edx, 2
002173b3je 0x2173c0
002173b5
002173b5loc_2173b5:
002173b5ret
002173b6
002173b6 66 2e 0f 1f 84 00 00 00 00 00 f.........
002173c0
002173c0loc_2173c0:
002173c0mov esi, 1
002173c5sub rsp, 24
002173c9xor edx, edx
002173cbxor eax, eax
002173cdmovq x0, rsi
002173d2cmp [rdi+24], 0
002173d7mov [rdi+56], 1
002173dfpunpcklqdq x0, x0
002173e3jne 0x21740e
002173e5jmp 0x217440
002173e7
002173e7 66 66 2e 0f 1f 84 00 00 00 ff.......
002173f0 00 00 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 ..ff............
00217400
00217400loc_217400:
00217400add rax, 1
00217404add rdx, 48
00217408cmp rax, [rdi+24]
0021740cjae 0x217440
0021740e
0021740eloc_21740e:
0021740emov rcx, [rdi]
00217411add rcx, rdx
00217414cmp [rcx+32], 0
00217419jne 0x217400
0021741bmovzx esi, [rcx+40]
0021741fmovups [rcx], x0
00217422and esi, -69
00217425or esi, 64
00217428mov [rcx+40], sil
0021742ccmp rax, [rdi+40]
00217430jae 0x217400
00217432mov [rdi+40], rax
00217436jmp 0x217400
00217438
00217438 0f 1f 84 00 00 00 00 00 ........
00217440
00217440loc_217440:
00217440mov [rsp+8], rdi
00217445call fn_216f50
0021744amov rdi, [rsp+8]
0021744fmov rax, [rdi+56]
00217453add rsp, 24
00217457ret
002173a0
002173a0fn_2173a0:
002173a0mov rax, [rdi+56]
002173a4cmp rax, 1
002173a8je 0x2173b5
002173aamov rdx, [rax]
002173adsar rdx, 1
002173b0cmp edx, 2
002173b3je 0x2173c0
002173b5
002173b5loc_2173b5:
002173b5ret
002173b6
002173b6 66 2e 0f 1f 84 00 00 00 00 00 f.........
002173c0
002173c0loc_2173c0:
002173c0mov esi, 1
002173c5sub rsp, 24
002173c9xor edx, edx
002173cbxor eax, eax
002173cdmovq x0, rsi
002173d2cmp [rdi+24], 0
002173d7mov [rdi+56], 1
002173dfpunpcklqdq x0, x0
002173e3jne 0x21740e
002173e5jmp 0x217440
002173e7
002173e7 66 66 2e 0f 1f 84 00 00 00 ff.......
002173f0 00 00 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 ..ff............
00217400
00217400loc_217400:
00217400add rax, 1
00217404add rdx, 48
00217408cmp rax, [rdi+24]
0021740cjae 0x217440
0021740e
0021740eloc_21740e:
0021740emov rcx, [rdi]
00217411add rcx, rdx
00217414cmp [rcx+32], 0
00217419jne 0x217400
0021741bmovzx esi, [rcx+40]
0021741fmovups [rcx], x0
00217422and esi, -69
00217425or esi, 64
00217428mov [rcx+40], sil
0021742ccmp rax, [rdi+40]
00217430jae 0x217400
00217432mov [rdi+40], rax
00217436jmp 0x217400
00217438
00217438 0f 1f 84 00 00 00 00 00 ........
00217440
00217440loc_217440:
00217440mov [rsp+8], rdi
00217445call fn_216f50
0021744amov rdi, [rsp+8]
0021744fmov rax, [rdi+56]
00217453add rsp, 24
00217457ret
002173a0
00217458
00217458 // align 0x10
00217458 // align 0x10
00217460
00217460fn_217460:
00217460push r15
00217462mov r15l, esi
00217465push r14
00217467mov r14, rdi
0021746apush r13
0021746cmov r13, r8
0021746fpush r12
00217471mov r12, rdx
00217474push rbp
00217475mov rbp, rcx
00217478push rbx
00217479sub rsp, 8
0021747dcall fn_2173a0
00217482cmp rax, 1
00217486je 0x2174f0
00217488xor ebx, ebx
0021748atest r15b, r15b
0021748dje 0x2174c3
0021748fmov rbx, [r14+32]
00217493cmp rbx, [r14+24]
00217497jae 0x2174c9
00217499nop [rax]
002174a0
002174a0loc_2174a0:
002174a0lea rdi, [rbx+2*rbx]
002174a4mov rsi, rbp
002174a7shl rdi, 4
002174abadd rdi, [r14]
002174aecall r12
002174b1test al, al
002174b3je 0x2174bf
002174b5cmp rbx, [r14+48]
002174b9jae 0x2174bf
002174bbmov [r14+48], rbx
002174bf
002174bfloc_2174bf:
002174bfadd rbx, 1
002174c3
002174c3loc_2174c3:
002174c3cmp rbx, [r14+24]
002174c7jb 0x2174a0
002174c9
002174c9loc_2174c9:
002174c9test r13, r13
002174ccje 0x2174f0
002174ceadd rsp, 8
002174d2mov rsi, rbp
002174d5mov rdi, r14
002174d8mov rax, r13
002174dbpop rbx
002174dcpop rbp
002174ddpop r12
002174dfpop r13
002174e1pop r14
002174e3pop r15
002174e5jmp rax
002174e7nop [rax+rax]
002174f0
002174f0loc_2174f0:
002174f0add rsp, 8
002174f4pop rbx
002174f5pop rbp
002174f6pop r12
002174f8pop r13
002174fapop r14
002174fcpop r15
002174feret
00217460
00217460fn_217460:
00217460push r15
00217462mov r15l, esi
00217465push r14
00217467mov r14, rdi
0021746apush r13
0021746cmov r13, r8
0021746fpush r12
00217471mov r12, rdx
00217474push rbp
00217475mov rbp, rcx
00217478push rbx
00217479sub rsp, 8
0021747dcall fn_2173a0
00217482cmp rax, 1
00217486je 0x2174f0
00217488xor ebx, ebx
0021748atest r15b, r15b
0021748dje 0x2174c3
0021748fmov rbx, [r14+32]
00217493cmp rbx, [r14+24]
00217497jae 0x2174c9
00217499nop [rax]
002174a0
002174a0loc_2174a0:
002174a0lea rdi, [rbx+2*rbx]
002174a4mov rsi, rbp
002174a7shl rdi, 4
002174abadd rdi, [r14]
002174aecall r12
002174b1test al, al
002174b3je 0x2174bf
002174b5cmp rbx, [r14+48]
002174b9jae 0x2174bf
002174bbmov [r14+48], rbx
002174bf
002174bfloc_2174bf:
002174bfadd rbx, 1
002174c3
002174c3loc_2174c3:
002174c3cmp rbx, [r14+24]
002174c7jb 0x2174a0
002174c9
002174c9loc_2174c9:
002174c9test r13, r13
002174ccje 0x2174f0
002174ceadd rsp, 8
002174d2mov rsi, rbp
002174d5mov rdi, r14
002174d8mov rax, r13
002174dbpop rbx
002174dcpop rbp
002174ddpop r12
002174dfpop r13
002174e1pop r14
002174e3pop r15
002174e5jmp rax
002174e7nop [rax+rax]
002174f0
002174f0loc_2174f0:
002174f0add rsp, 8
002174f4pop rbx
002174f5pop rbp
002174f6pop r12
002174f8pop r13
002174fapop r14
002174fcpop r15
002174feret
00217460
002174ff
002174ff // align 0x10
002174ff // align 0x10
00217500
00217500fn_217500:
00217500push r15
00217502mov r15, rdi
00217505add rdi, 8
00217509push r14
0021750bmov r14, r8
0021750epush r13
00217510mov r13, rcx
00217513push r12
00217515mov r12, rdx
00217518push rbp
00217519movzx ebp, sil
0021751dpush rbx
0021751emov esi, ebp
00217520sub rsp, 8
00217524call fn_217460
00217529mov rbx, [r15+88]
0021752dtest rbx, rbx
00217530je 0x21755d
00217532nop [rax+rax]
0021753dnop [rax]
00217540
00217540loc_217540:
00217540lea rdi, [rbx+24]
00217544mov r8, r14
00217547mov rcx, r13
0021754amov rdx, r12
0021754dmov esi, ebp
0021754fcall fn_217460
00217554mov rbx, [rbx+96]
00217558test rbx, rbx
0021755bjne 0x217540
0021755d
0021755dloc_21755d:
0021755dmov rbx, [r15+72]
00217561test rbx, rbx
00217564je 0x21758c
00217566nop [rax+rax]
00217570
00217570loc_217570:
00217570mov rdi, rbx
00217573mov r8, r14
00217576mov rcx, r13
00217579mov rdx, r12
0021757cmov esi, ebp
0021757ecall fn_217460
00217583mov rbx, [rbx+64]
00217587test rbx, rbx
0021758ajne 0x217570
0021758c
0021758cloc_21758c:
0021758cadd rsp, 8
00217590pop rbx
00217591pop rbp
00217592pop r12
00217594pop r13
00217596pop r14
00217598pop r15
0021759aret
00217500
00217500fn_217500:
00217500push r15
00217502mov r15, rdi
00217505add rdi, 8
00217509push r14
0021750bmov r14, r8
0021750epush r13
00217510mov r13, rcx
00217513push r12
00217515mov r12, rdx
00217518push rbp
00217519movzx ebp, sil
0021751dpush rbx
0021751emov esi, ebp
00217520sub rsp, 8
00217524call fn_217460
00217529mov rbx, [r15+88]
0021752dtest rbx, rbx
00217530je 0x21755d
00217532nop [rax+rax]
0021753dnop [rax]
00217540
00217540loc_217540:
00217540lea rdi, [rbx+24]
00217544mov r8, r14
00217547mov rcx, r13
0021754amov rdx, r12
0021754dmov esi, ebp
0021754fcall fn_217460
00217554mov rbx, [rbx+96]
00217558test rbx, rbx
0021755bjne 0x217540
0021755d
0021755dloc_21755d:
0021755dmov rbx, [r15+72]
00217561test rbx, rbx
00217564je 0x21758c
00217566nop [rax+rax]
00217570
00217570loc_217570:
00217570mov rdi, rbx
00217573mov r8, r14
00217576mov rcx, r13
00217579mov rdx, r12
0021757cmov esi, ebp
0021757ecall fn_217460
00217583mov rbx, [rbx+64]
00217587test rbx, rbx
0021758ajne 0x217570
0021758c
0021758cloc_21758c:
0021758cadd rsp, 8
00217590pop rbx
00217591pop rbp
00217592pop r12
00217594pop r13
00217596pop r14
00217598pop r15
0021759aret
00217500
0021759b
0021759b // align 0x10
0021759b // align 0x10
002175a0
002175a0fn_2175a0:
002175a0push r15
002175a2lea rax, [rdx+2*rdx]
002175a6push r14
002175a8shl rax, 4
002175acpush r13
002175aepush r12
002175b0push rbp
002175b1push rbx
002175b2sub rsp, 40
002175b6add rax, [rsi]
002175b9cmp [rax+32], 0
002175beje 0x2175f8
002175c0
002175c0loc_2175c0:
002175c0xor r12l, r12l
002175c3mov r13l, 1
002175c9mov rsi, 0xffffffff00000000
002175d3mov rcx, r12
002175d6and rcx, rsi
002175d9mov r12, rcx
002175dc
002175dcloc_2175dc:
002175dcadd rsp, 40
002175e0mov eax, r12l
002175e3mov rdx, r13
002175e6pop rbx
002175e7pop rbp
002175e8pop r12
002175eapop r13
002175ecpop r14
002175eepop r15
002175f0ret
002175f1
002175f1 0f 1f 80 00 00 00 00 .......
002175f8
002175f8loc_2175f8:
002175f8mov rbx, rdi
002175fbmov rdi, rcx
002175felea ecx, [r9-1]
00217602mov rbp, r9
00217605mov [rbx+8], rdx
00217609mov edx, 1
0021760eshl edx, cl
00217610mov [rbx+16], rsi
00217614mov rsi, r8
00217617mov ecx, edx
00217619movzx edx, [rax+41]
0021761dmov [rax+32], rbx
00217621mov [rax+8], 1
00217629shr dl, 1
0021762band edx, 7
0021762eor edx, ecx
00217630mov ecx, r9l
00217633shl ecx, 7
00217636shl edx, 9
00217639or edx, ecx
0021763bmovzx ecx, [rax+40]
0021763fand dx, 3968
00217644and cx, -3969
00217649or edx, ecx
0021764bmov [rax+40], dx
0021764fcall caml_callback_res
00217654mov r14, [rbx+16]
00217658mov r15, [rbx+8]
0021765cmov [rbx+16], 0
00217664mov [rsp+28], eax
00217668mov r12, rax
0021766bmov r13, rdx
0021766emov rcx, [r14]
00217671lea rbx, [r15+2*r15]
00217675mov [rsp+8], rdx
0021767amov rdi, r14
0021767dshl rbx, 4
00217681add rcx, rbx
00217684and [rcx+40], -385
0021768amov [rcx+32], 0
00217692mov [rsp+16], rcx
00217697call fn_2173a0
0021769cmov rcx, [rsp+16]
002176a1cmp rax, 1
002176a5je 0x217720
002176a7mov eax, [rsp+28]
002176abtest eax, eax
002176adjne 0x21772c
002176afcmp [rsp+8], 1
002176b5je 0x21772c
002176b7mov rax, [rsp+8]
002176bcmov rax, [rax]
002176bfmov [rcx+8], rax
002176c3test al, 1
002176c5jne 0x2176f0
002176c7cmp rax, [rip+0x160efa]
002176cejae 0x2176f0
002176d0cmp [rip+0x160ef9], rax
002176d7jae 0x2176f0
002176d9cmp r15, [r14+32]
002176ddjae 0x2176f0
002176dfmov [r14+32], r15
002176e3nop [rax+rax]
002176eenop
002176f0
002176f0loc_2176f0:
002176f0cmp r15, [r14+48]
002176f4jae 0x2175c0
002176famovzx eax, [rcx+40]
002176fetest al, 32
00217700jne 0x217714
00217702test al, 16
00217704je 0x2175c0
0021770acmp rbp, 2
0021770eje 0x2175c0
00217714
00217714loc_217714:
00217714mov [r14+48], r15
00217718jmp 0x2175c0
0021771d
0021771d 0f 1f 00 ...
00217720
00217720loc_217720:
00217720mov edx, [rsp+28]
00217724test edx, edx
00217726je 0x2175c0
0021772c
0021772cloc_21772c:
0021772cadd rbx, [r14]
0021772fmovzx eax, [rbx+40]
00217733and eax, -69
00217736or eax, 64
00217739mov [rbx+40], al
0021773cmov eax, 1
00217741movq x0, rax
00217746punpcklqdq x0, x0
0021774amovups [rbx], x0
0021774dcmp r15, [r14+40]
00217751jae 0x2175dc
00217757mov [r14+40], r15
0021775bjmp 0x2175dc
002175a0
002175a0fn_2175a0:
002175a0push r15
002175a2lea rax, [rdx+2*rdx]
002175a6push r14
002175a8shl rax, 4
002175acpush r13
002175aepush r12
002175b0push rbp
002175b1push rbx
002175b2sub rsp, 40
002175b6add rax, [rsi]
002175b9cmp [rax+32], 0
002175beje 0x2175f8
002175c0
002175c0loc_2175c0:
002175c0xor r12l, r12l
002175c3mov r13l, 1
002175c9mov rsi, 0xffffffff00000000
002175d3mov rcx, r12
002175d6and rcx, rsi
002175d9mov r12, rcx
002175dc
002175dcloc_2175dc:
002175dcadd rsp, 40
002175e0mov eax, r12l
002175e3mov rdx, r13
002175e6pop rbx
002175e7pop rbp
002175e8pop r12
002175eapop r13
002175ecpop r14
002175eepop r15
002175f0ret
002175f1
002175f1 0f 1f 80 00 00 00 00 .......
002175f8
002175f8loc_2175f8:
002175f8mov rbx, rdi
002175fbmov rdi, rcx
002175felea ecx, [r9-1]
00217602mov rbp, r9
00217605mov [rbx+8], rdx
00217609mov edx, 1
0021760eshl edx, cl
00217610mov [rbx+16], rsi
00217614mov rsi, r8
00217617mov ecx, edx
00217619movzx edx, [rax+41]
0021761dmov [rax+32], rbx
00217621mov [rax+8], 1
00217629shr dl, 1
0021762band edx, 7
0021762eor edx, ecx
00217630mov ecx, r9l
00217633shl ecx, 7
00217636shl edx, 9
00217639or edx, ecx
0021763bmovzx ecx, [rax+40]
0021763fand dx, 3968
00217644and cx, -3969
00217649or edx, ecx
0021764bmov [rax+40], dx
0021764fcall caml_callback_res
00217654mov r14, [rbx+16]
00217658mov r15, [rbx+8]
0021765cmov [rbx+16], 0
00217664mov [rsp+28], eax
00217668mov r12, rax
0021766bmov r13, rdx
0021766emov rcx, [r14]
00217671lea rbx, [r15+2*r15]
00217675mov [rsp+8], rdx
0021767amov rdi, r14
0021767dshl rbx, 4
00217681add rcx, rbx
00217684and [rcx+40], -385
0021768amov [rcx+32], 0
00217692mov [rsp+16], rcx
00217697call fn_2173a0
0021769cmov rcx, [rsp+16]
002176a1cmp rax, 1
002176a5je 0x217720
002176a7mov eax, [rsp+28]
002176abtest eax, eax
002176adjne 0x21772c
002176afcmp [rsp+8], 1
002176b5je 0x21772c
002176b7mov rax, [rsp+8]
002176bcmov rax, [rax]
002176bfmov [rcx+8], rax
002176c3test al, 1
002176c5jne 0x2176f0
002176c7cmp rax, [rip+0x160efa]
002176cejae 0x2176f0
002176d0cmp [rip+0x160ef9], rax
002176d7jae 0x2176f0
002176d9cmp r15, [r14+32]
002176ddjae 0x2176f0
002176dfmov [r14+32], r15
002176e3nop [rax+rax]
002176eenop
002176f0
002176f0loc_2176f0:
002176f0cmp r15, [r14+48]
002176f4jae 0x2175c0
002176famovzx eax, [rcx+40]
002176fetest al, 32
00217700jne 0x217714
00217702test al, 16
00217704je 0x2175c0
0021770acmp rbp, 2
0021770eje 0x2175c0
00217714
00217714loc_217714:
00217714mov [r14+48], r15
00217718jmp 0x2175c0
0021771d
0021771d 0f 1f 00 ...
00217720
00217720loc_217720:
00217720mov edx, [rsp+28]
00217724test edx, edx
00217726je 0x2175c0
0021772c
0021772cloc_21772c:
0021772cadd rbx, [r14]
0021772fmovzx eax, [rbx+40]
00217733and eax, -69
00217736or eax, 64
00217739mov [rbx+40], al
0021773cmov eax, 1
00217741movq x0, rax
00217746punpcklqdq x0, x0
0021774amovups [rbx], x0
0021774dcmp r15, [r14+40]
00217751jae 0x2175dc
00217757mov [r14+40], r15
0021775bjmp 0x2175dc
002175a0
00217760
00217760fn_217760:
00217760push r14
00217762mov r14, rdi
00217765push r13
00217767push r12
00217769push rbp
0021776apush rbx
0021776bsub rsp, 16
0021776fmov rbx, [rdi+72]
00217773test rbx, rbx
00217776je 0x21789d
0021777cmov eax, 1
00217781lea r13, [rdi+72]
00217785xor r12l, r12l
00217788movq x2, rax
0021778dpunpcklqdq x2, x2
00217791movaps [rsp], x2
00217795jmp 0x2177b7
00217797
00217797 66 0f 1f 84 00 00 00 00 00 f........
002177a0
002177a0loc_2177a0:
002177a0cmp [rbx+48], rax
002177a4lea r13, [rbx+64]
002177a8mov rbx, [rbx+64]
002177acsetb al
002177afor r12l, eax
002177b2test rbx, rbx
002177b5je 0x217816
002177b7
002177b7loc_2177b7:
002177b7mov rdi, rbx
002177bamov rbp, [rbx+64]
002177becall fn_2173a0
002177c3cmp rax, 1
002177c7je 0x217830
002177c9
002177c9loc_2177c9:
002177c9mov rax, [rbx+24]
002177cdtest rax, rax
002177d0jne 0x2177a0
002177d2mov rdi, [rbx]
002177d5test rdi, rdi
002177d8je 0x2177e6
002177dacall caml_stat_free
002177dfmov [rbx], 0
002177e6
002177e6loc_2177e6:
002177e6mov [rbx+48], 0
002177eepxor x0, x0
002177f2mov rdi, rbx
002177f5mov [rbx+56], 1
002177fdmovups [rbx+16], x0
00217801movups [rbx+32], x0
00217805mov rbx, rbp
00217808call caml_stat_free
0021780dmov [r13], rbp
00217811test rbx, rbx
00217814jne 0x2177b7
00217816
00217816loc_217816:
00217816mov [r14+80], r12b
0021781aadd rsp, 16
0021781epop rbx
0021781fpop rbp
00217820pop r12
00217822pop r13
00217824pop r14
00217826ret
00217827
00217827 66 0f 1f 84 00 00 00 00 00 f........
00217830
00217830loc_217830:
00217830xor edx, edx
00217832xor eax, eax
00217834cmp [rbx+24], 0
00217839jne 0x21784e
0021783bjmp 0x217890
0021783d
0021783d 0f 1f 00 ...
00217840
00217840loc_217840:
00217840add rax, 1
00217844add rdx, 48
00217848cmp rax, [rbx+24]
0021784cjae 0x217890
0021784e
0021784eloc_21784e:
0021784emov rcx, [rbx]
00217851add rcx, rdx
00217854cmp [rcx+32], 0
00217859jne 0x217840
0021785bmovzx esi, [rcx+40]
0021785fmovdqa x1, [rsp]
00217864and esi, -69
00217867movups [rcx], x1
0021786aor esi, 64
0021786dmov [rcx+40], sil
00217871cmp rax, [rbx+40]
00217875jae 0x217840
00217877mov [rbx+40], rax
0021787badd rdx, 48
0021787fadd rax, 1
00217883cmp rax, [rbx+24]
00217887jb 0x21784e
00217889nop [rax]
00217890
00217890loc_217890:
00217890mov rdi, rbx
00217893call fn_216f50
00217898jmp 0x2177c9
0021789d
0021789dloc_21789d:
0021789dxor r12l, r12l
002178a0jmp 0x217816
00217760
00217760fn_217760:
00217760push r14
00217762mov r14, rdi
00217765push r13
00217767push r12
00217769push rbp
0021776apush rbx
0021776bsub rsp, 16
0021776fmov rbx, [rdi+72]
00217773test rbx, rbx
00217776je 0x21789d
0021777cmov eax, 1
00217781lea r13, [rdi+72]
00217785xor r12l, r12l
00217788movq x2, rax
0021778dpunpcklqdq x2, x2
00217791movaps [rsp], x2
00217795jmp 0x2177b7
00217797
00217797 66 0f 1f 84 00 00 00 00 00 f........
002177a0
002177a0loc_2177a0:
002177a0cmp [rbx+48], rax
002177a4lea r13, [rbx+64]
002177a8mov rbx, [rbx+64]
002177acsetb al
002177afor r12l, eax
002177b2test rbx, rbx
002177b5je 0x217816
002177b7
002177b7loc_2177b7:
002177b7mov rdi, rbx
002177bamov rbp, [rbx+64]
002177becall fn_2173a0
002177c3cmp rax, 1
002177c7je 0x217830
002177c9
002177c9loc_2177c9:
002177c9mov rax, [rbx+24]
002177cdtest rax, rax
002177d0jne 0x2177a0
002177d2mov rdi, [rbx]
002177d5test rdi, rdi
002177d8je 0x2177e6
002177dacall caml_stat_free
002177dfmov [rbx], 0
002177e6
002177e6loc_2177e6:
002177e6mov [rbx+48], 0
002177eepxor x0, x0
002177f2mov rdi, rbx
002177f5mov [rbx+56], 1
002177fdmovups [rbx+16], x0
00217801movups [rbx+32], x0
00217805mov rbx, rbp
00217808call caml_stat_free
0021780dmov [r13], rbp
00217811test rbx, rbx
00217814jne 0x2177b7
00217816
00217816loc_217816:
00217816mov [r14+80], r12b
0021781aadd rsp, 16
0021781epop rbx
0021781fpop rbp
00217820pop r12
00217822pop r13
00217824pop r14
00217826ret
00217827
00217827 66 0f 1f 84 00 00 00 00 00 f........
00217830
00217830loc_217830:
00217830xor edx, edx
00217832xor eax, eax
00217834cmp [rbx+24], 0
00217839jne 0x21784e
0021783bjmp 0x217890
0021783d
0021783d 0f 1f 00 ...
00217840
00217840loc_217840:
00217840add rax, 1
00217844add rdx, 48
00217848cmp rax, [rbx+24]
0021784cjae 0x217890
0021784e
0021784eloc_21784e:
0021784emov rcx, [rbx]
00217851add rcx, rdx
00217854cmp [rcx+32], 0
00217859jne 0x217840
0021785bmovzx esi, [rcx+40]
0021785fmovdqa x1, [rsp]
00217864and esi, -69
00217867movups [rcx], x1
0021786aor esi, 64
0021786dmov [rcx+40], sil
00217871cmp rax, [rbx+40]
00217875jae 0x217840
00217877mov [rbx+40], rax
0021787badd rdx, 48
0021787fadd rax, 1
00217883cmp rax, [rbx+24]
00217887jb 0x21784e
00217889nop [rax]
00217890
00217890loc_217890:
00217890mov rdi, rbx
00217893call fn_216f50
00217898jmp 0x2177c9
0021789d
0021789dloc_21789d:
0021789dxor r12l, r12l
002178a0jmp 0x217816
00217760
Loading..