Rafael P. Laufer

29 papers A* 4A 1B 2C 1Journal 14Unranked 7
YearRankTypeTitle / Venue / Authors
2018 conf
USENIX ATC
Massimo Gallo, Rafael P. Laufer
2017 J jnl
Comput. Networks
Lyno Henrique G. Ferraz, Rafael P. Laufer, Diogo M. F. Mattos, Otto Carlos M. B. Duarte, Guy Pujolle
2017 conf
KBNets@SIGCOMM
Yufeng Duan, Massimo Gallo, Stefano Traverso, Rafael P. Laufer, Paolo Giaccone
2016 conf
INFOCOM Workshops
Diego Perino, Massimo Gallo, Rafael P. Laufer, Zied Ben-Houidi, Fabio Pianese
2016 conf
HotMiddlebox@SIGCOMM
Rafael P. Laufer, Massimo Gallo, Diego Perino, Anandatirtha Nandugudi
2016 J jnl
Comput. Commun. Rev.
Rafael P. Laufer, Massimo Gallo, Diego Perino, Anandatirtha Nandugudi
2016 J jnl
IEEE/ACM Trans. Netw.
Matteo Varvello, Rafael P. Laufer, Feixiong Zhang, T. V. Lakshman
2016 J jnl
Ann. des Télécommunications
Miguel Elias M. Campista, Rafael P. Laufer, Pedro B. Velloso, Abbas Jamalipour
2016 J jnl
IEEE/ACM Trans. Netw.
Rafael P. Laufer, Leonard Kleinrock
2014 J jnl
IEEE/ACM Trans. Netw.
Rafael P. Laufer, Theodoros Salonidis, Henrik Lundgren, Pascal Le Guyadec
2014 conf
ANCS
Diego Perino, Matteo Varvello, Leonardo Linguaglossa, Rafael P. Laufer, Roger Boislaigue
2014 A conf
CoNEXT
Matteo Varvello, Rafael P. Laufer, Feixiong Zhang, T. V. Lakshman
2013 A* conf
INFOCOM
Rafael P. Laufer, Leonard Kleinrock
2012 A* conf
INFOCOM
Rafael P. Laufer, Pedro B. Velloso, Luiz Filipe M. Vieira, Leonard Kleinrock
2012 J jnl
IEEE/ACM Trans. Netw.
Rafael P. Laufer, Henri Dubois-Ferrière, Leonard Kleinrock
2011 J jnl
Comput. Networks
Rafael P. Laufer, Pedro B. Velloso, Otto Carlos Muniz Bandeira Duarte
2011 conf
ICC
Marcelo Duffles Donato Moreira, Rafael P. Laufer, Natalia Castro Fernandes, Otto Carlos Muniz Bandeira Duarte
2011 A* conf
MobiCom
Rafael P. Laufer, Theodoros Salonidis, Henrik Lundgren, Pascal Le Guyadec
2010 J jnl
ACM SIGMOBILE Mob. Comput. Commun. Rev.
Rafael P. Laufer, Theodoros Salonidis, Henrik Lundgren, Pascal Le Guyadec
2010 J jnl
CoRR
Rafael P. Laufer, Henri Dubois-Ferrière, Leonard Kleinrock
2010 J jnl
IEEE Trans. Netw. Serv. Manag.
Pedro B. Velloso, Rafael P. Laufer, Daniel de Oliveira Cunha, Otto Carlos Muniz Bandeira Duarte, Guy Pujolle
2009 J jnl
Photonic Netw. Commun.
Igor M. Moraes, Rafael P. Laufer, Daniel de Oliveira Cunha, Otto Carlos M. B. Duarte
2009 A* conf
INFOCOM
Rafael P. Laufer, Henri Dubois-Ferrière, Leonard Kleinrock
2008 B conf
ICCCN
Pedro B. Velloso, Rafael P. Laufer, Otto Carlos Muniz Bandeira Duarte, Guy Pujolle
2008 C conf
ISCC
Pedro B. Velloso, Rafael P. Laufer, Otto Carlos Muniz Bandeira Duarte, Guy Pujolle
2008 J jnl
CoRR
Rafael P. Laufer, Leonard Kleinrock
2007 B conf
LCN
Rafael P. Laufer, Pedro B. Velloso, Daniel de Oliveira Cunha, Igor M. Moraes, Marco D. D. Bicudo, Marcelo Duffles Donato Moreira, Otto Carlos Muniz Bandeira Duarte
2006 conf
MWCN
Pedro B. Velloso, Rafael P. Laufer, Otto Carlos M. B. Duarte, Guy Pujolle
2005 J jnl
Ann. des Télécommunications
Daniel de Oliveira Cunha, Rafael P. Laufer, Igor M. Moraes, Marco D. D. Bicudo, Pedro B. Velloso, Otto Carlos Muniz Bandeira Duarte
test1.txt
← Index test1.txt plaintext
Truncated preview: showing the first 16384 bytes out of 43286155 total.
{'decompiled': [{'decompiled_function_hash': '1f0dd5f0fe1f0f28d39c8f98bf5eb5b06a98405389873053efd1df2f3ca12179', 'decompiled_function': 'bool z\n\nif (arg3 == *arg2)\n    *arg2 = arg1\n    z = true\nelse\n    *arg2\n    z = false\n\nint64_t result\nresult.b = z\nreturn result', 'decompiled_function_name': 'sync/atomic.CompareAndSwapUintptr', 'decompiled_function_prototype': 'int64_t sync/atomic.CompareAndSwapUintptr(int64_t arg1, int64_t* arg2 @ rax, int64_t arg3 @ rbx)', 'decompiled_function_address': 4198528, 'function_type': 'USER', 'functions_caller': [], 'functions_call': [], 'flattened_score': 0.0, 'mba_score': 0.0, 'disassembled_function_hash': '09e03a03d3a93deea76172fc49c83d407cff050807a0e40d5b25b8848182f060'}, {'decompiled_function_hash': '02b054c1841b6532a667e3e61f8c3363dffbc0893dc9cee31e16e6438a6b32ee', 'decompiled_function': 'int64_t rcx = data_6531e8\nint64_t* internal/abi.kindNames_1 = internal/abi.kindNames\n\nif (arg1 s>= rcx)\n    if (rcx u> 0)\n        internal/abi.kindNames_1[1]\n        return *internal/abi.kindNames_1\n    \n    runtime.panicIndex(0)\nelse if (arg1 u< rcx)\n    internal/abi.kindNames_1[arg1 * 2 + 1]\n    return internal/abi.kindNames_1[arg1 * 2]\n\nruntime.panicIndexU()\nbreakpoint', 'decompiled_function_name': 'internal/abi.Kind.String', 'decompiled_function_prototype': 'int64_t internal/abi.Kind.String(int64_t arg1 @ rax)', 'decompiled_function_address': 4198720, 'function_type': 'USER', 'functions_caller': [], 'functions_call': ['runtime.panicIndex(0)', 'runtime.panicIndexU()'], 'flattened_score': 0.0, 'mba_score': 0.0, 'disassembled_function_hash': 'ba0c8a4a2a408f300d085876a7263294d4b54f4214bc693afe46b9e8378cbf31'}, {'decompiled_function_hash': '03a962adee69ce6e97437b8250ca1e912d9f55f0c17a29845e7e55e9544b5fa9', 'decompiled_function': 'if ((zx.q(*(arg1 + 0x17)) & 0x1f) != 0x11)\n    return 0\n\nreturn *(arg1 + 0x40)', 'decompiled_function_name': 'internal/abi.(*Type).Len', 'decompiled_function_prototype': 'int64_t internal/abi.(*Type).Len(void* arg1 @ rax)', 'decompiled_function_address': 4198816, 'function_type': 'USER', 'functions_caller': [], 'functions_call': [], 'flattened_score': 0.0, 'mba_score': 0.3333333333333333, 'disassembled_function_hash': 'a2843f9a81f7822d6b6b55e43df329ee31eed92dae8dc41ca991d56d7632c1b9'}, {'decompiled_function_hash': 'd782b427b58ad2cf84c6a7c609d1d872f14db0788919434f18e9c183125af6d3', 'decompiled_function': 'void* rsi_4\n\nif ((*(arg1 + 0x14) & 1) == 0)\n    rsi_4 = nullptr\nelse\n    int64_t rsi_3 = (zx.q(*(arg1 + 0x17)) & 0x1f) - 0x11\n    \n    if (rsi_3 u<= 8)\n        jump(internal/abi.(*Type).ExportedMethods.jump7[rsi_3])\n    \n    rsi_4 = arg1 + 0x30\n\nif (rsi_4 == 0)\n    return 0\n\nuint64_t rdx = zx.q(*(rsi_4 + 6))\n\nif (rdx.w == 0)\n    return nullptr\n\nif (rdx u<= 0x10000)\n    return rsi_4 + zx.q(*(rsi_4 + 8))\n\nruntime.panicSlice3Alen()\nbreakpoint', 'decompiled_function_name': 'internal/abi.(*Type).ExportedMethods', 'decompiled_function_prototype': 'void* internal/abi.(*Type).ExportedMethods(void* arg1 @ rax)', 'decompiled_function_address': 4198880, 'function_type': 'USER', 'functions_caller': [], 'functions_call': ['jump(internal/abi.(*Type).ExportedMethods.jump7[rsi_3])', 'runtime.panicSlice3Alen()'], 'flattened_score': 0.0, 'mba_score': 0.125, 'disassembled_function_hash': 'e2558c9cf3ebac3a28dff29dcc0b8918965ca5091e4d5e0361af301ebc9d7fba'}, {'decompiled_function_hash': '407d3d24d10ffe65a17c09aa88e6d7283d00fcdd9df10741af968c91841cc9b2', 'decompiled_function': 'while (&__return_addr u<= *(arg3 + 0x10))\n    runtime.morestack_noctxt.abi0()\n\nuint64_t rcx_1 = zx.q(*(arg1 + 0x17)) & 0x1f\n\nif (rcx_1 == 0x14)\n    return *(arg1 + 0x40)\n\ninternal/abi.(*Type).ExportedMethods(arg1, rcx_1)\nreturn arg2', 'decompiled_function_name': 'internal/abi.(*Type).NumMethod', 'decompiled_function_prototype': 'int64_t internal/abi.(*Type).NumMethod(void* arg1 @ rax, int64_t arg2 @ rbx, void* arg3 @ r14)', 'decompiled_function_address': 4199072, 'function_type': 'USER', 'functions_caller': [], 'functions_call': ['internal/abi.(*Type).ExportedMethods(arg1, rcx_1)', 'runtime.morestack_noctxt.abi0()'], 'flattened_score': 1.0, 'mba_score': 0.14285714285714285, 'disassembled_function_hash': '270037f0c8addf478f25bc075eb0dc05fc54dff87fba6dff63ab8d0555e4929a'}, {'decompiled_function_hash': '9f2a44ad4622a0e2d0e1b439b1d46754301fd5f7060b91e3766482b1383494da', 'decompiled_function': 'if (arg1 == 0)\n    return 0\n\nint64_t rcx = 0\nint64_t rdx = 0\n\nwhile (true)\n    int64_t rbx_2 = rcx * 7\n    *(arg1 + rcx + 1)\n    \n    if (rbx_2 s< 0)\n        runtime.panicshift()\n        breakpoint\n    \n    uint32_t rdi_3 = zx.d(*(arg1 + rcx + 1))\n    rdx += (zx.q(rdi_3) & 0x7f) << rbx_2.b & sbb.q(rbx_2, rbx_2, rbx_2 u< 0x40)\n    \n    if ((rdi_3.b & 0x80) == 0)\n        break\n    \n    rcx += 1\n\nint64_t rcx_1\n\nif (rdx != 1)\n    rcx_1 = 0\nelse\n    rcx_1.b = *(arg1 + 2) == 0x5f\n\nreturn zx.q(rcx_1.d)', 'decompiled_function_name': 'internal/abi.Name.IsBlank', 'decompiled_function_prototype': 'uint64_t internal/abi.Name.IsBlank(void* arg1 @ rax)', 'decompiled_function_address': 4199168, 'function_type': 'USER', 'functions_caller': [], 'functions_call': ['runtime.panicshift()'], 'flattened_score': 0.7692307692307693, 'mba_score': 0.05, 'disassembled_function_hash': '7a693574e5a54de381301402832a96b61c8f4d2a2671d8150e93fb29f8692e0f'}, {'decompiled_function_hash': 'aaadbfaff6f26ed203060269065749f25f44d295aadde2386ab73f8c4a5dd767', 'decompiled_function': 'while (true)\n    int64_t* rsp\n    \n    if (rsp u> *(arg3 + 0x10))\n        *(rsp - 8) = arg2\n        rsp -= 8\n        arg2 = rsp\n        \n        if (arg1 == 0)\n            *rsp\n            return 0\n        \n        void* rcx_1 = nullptr\n        int64_t rdx_1 = 0\n        \n        while (true)\n            void* rsi_2 = rcx_1 * 7\n            *(rcx_1 + arg1 + 1)\n            \n            if (rsi_2 s< 0)\n                break\n            \n            uint32_t r8_3 = zx.d(*(rcx_1 + arg1 + 1))\n            rdx_1 += (zx.q(r8_3) & 0x7f) << rsi_2.b & sbb.q(rsi_2, rsi_2, rsi_2 u< 0x40)\n            \n            if ((r8_3.b & 0x80) == 0)\n                if (rdx_1 s>= 0)\n                    int64_t rcx_4 = neg.q(rcx_1 + arg1 + 2)\n                    \n                    if (rcx_4 u>= rdx_1)\n                        *rsp\n                        return rcx_1 + arg1 + 2\n                    \n                    if (rcx_1 + arg1 != -2)\n                        runtime.panicunsafestringlen(rcx_4)\n                    \n                    runtime.panicunsafestringnilptr()\n                \n                runtime.panicunsafestringlen()\n                break\n            \n            rcx_1 += 1\n        \n        arg1 = runtime.panicshift()\n    \n    rsp[1] = arg1\n    runtime.morestack_noctxt.abi0()\n    arg1 = rsp[1]', 'decompiled_function_name': 'internal/abi.Name.Name', 'decompiled_function_prototype': 'void* internal/abi.Name.Name(int64_t arg1 @ rax, int64_t* arg2 @ rbp, void* arg3 @ r14)', 'decompiled_function_address': 4199296, 'function_type': 'USER', 'functions_caller': [], 'functions_call': ['runtime.panicunsafestringlen(rcx_4)', 'runtime.panicunsafestringnilptr()', 'runtime.panicunsafestringlen()', 'arg1 = runtime.panicshift()', 'runtime.morestack_noctxt.abi0()'], 'flattened_score': 1.0, 'mba_score': 0.029411764705882353, 'disassembled_function_hash': '21ad7fe65b5907f2e2bd82711c3d5cda50e2cda11dd6cb13e472a1879a0f5ee0'}, {'decompiled_function_hash': '6bc616921202fbee6edcbe36548ca6c0123ae51ecb86c0eea217f3889c581d25', 'decompiled_function': 'while (true)\n    int64_t* rsp\n    \n    if (rsp u> *(arg3 + 0x10))\n        *(rsp - 8) = arg2\n        rsp -= 8\n        arg2 = rsp\n        \n        if ((*arg1 & 2) == 0)\n            *rsp\n            return 0\n        \n        void* rcx_1 = nullptr\n        void* rdx_2 = nullptr\n        \n        while (true)\n            void* rsi_2 = rcx_1 * 7\n            *(rcx_1 + arg1 + 1)\n            \n            if (rsi_2 s< 0)\n                break\n            \n            uint32_t r8_3 = zx.d(*(rcx_1 + arg1 + 1))\n            rdx_2 += (zx.q(r8_3) & 0x7f) << rsi_2.b & sbb.q(rsi_2, rsi_2, rsi_2 u< 0x40)\n            \n            if ((r8_3.b & 0x80) == 0)\n                int64_t rcx_3 = 0\n                int64_t rbx_3 = 0\n                \n                while (true)\n                    void* rsi_4 = rdx_2 + rcx_1 + rcx_3\n                    int64_t rdi_3 = rcx_3 * 7\n                    *(arg1 + rsi_4 + 2)\n                    \n                    if (rdi_3 s< 0)\n                        break\n                    \n                    uint32_t r8_9 = zx.d(*(arg1 + rsi_4 + 2))\n                    rbx_3 += (zx.q(r8_9) & 0x7f) << rdi_3.b & sbb.q(rdi_3, rdi_3, rdi_3 u< 0x40)\n                    \n                    if ((r8_9.b & 0x80) == 0)\n                        if (rbx_3 s>= 0)\n                            int64_t rcx_6 = neg.q(arg1 + rsi_4 + 3)\n                            \n                            if (rcx_6 u>= rbx_3)\n                                *rsp\n                                return arg1 + rsi_4 + 3\n                            \n                            if (arg1 + rsi_4 != -3)\n                                runtime.panicunsafestringlen(rcx_6)\n                            \n                            runtime.panicunsafestringnilptr()\n                        \n                        runtime.panicunsafestringlen()\n                        break\n                    \n                    rcx_3 += 1\n                \n                runtime.panicshift()\n                break\n            \n            rcx_1 += 1\n        \n        arg1 = runtime.panicshift()\n    \n    rsp[1] = arg1\n    runtime.morestack_noctxt.abi0()\n    arg1 = rsp[1]', 'decompiled_function_name': 'internal/abi.Name.Tag', 'decompiled_function_prototype': 'void* internal/abi.Name.Tag(char* arg1 @ rax, int64_t* arg2 @ rbp, void* arg3 @ r14)', 'decompiled_function_address': 4199488, 'function_type': 'USER', 'functions_caller': [], 'functions_call': ['runtime.panicunsafestringlen(rcx_6)', 'runtime.panicunsafestringnilptr()', 'runtime.panicunsafestringlen()', 'runtime.panicshift()', 'arg1 = runtime.panicshift()', 'runtime.morestack_noctxt.abi0()'], 'flattened_score': 1.0, 'mba_score': 0.041666666666666664, 'disassembled_function_hash': '0621c0c17af04d429b48b7855fd82627f2e835ec864eaa49d0de3183fd3d9fbf'}, {'decompiled_function_hash': '917d57a1b59aad9ee7b1197909e67f4ee8d39a0d26f2390ceacbbc54bde37a43', 'decompiled_function': 'while (true)\n    void* rsp\n    \n    if (rsp - 0x30 u> *(arg9 + 0x10))\n        *(rsp - 8) = arg6\n        arg6 = rsp - 8\n        rsp -= 0xb0\n        *(rsp + 0xb8) = arg4\n        *(rsp + 0xc8) = arg1\n        \n        if (arg5 s< 0x20000000)\n            if (arg8 s< 0x20000000)\n                __builtin_memset(rsp + 0x84, 0, 0x14)\n                int64_t rdx = arg5\n                int64_t r9_1 = 0\n                \n                while (true)\n                    char r10_2 = arg5.b\n                    arg5 s>>= 7\n                    char r10_3 = r10_2 & 0x7f\n                    \n                    if (arg5 == 0)\n                        if (r9_1 u< 0xa)\n                            *(rsp + r9_1 + 0x8e) = r10_3\n                            int64_t rbx = arg8\n                            int64_t r10_4 = 0\n                            \n                            while (true)\n                                char r11_2 = arg8.b\n                                arg8 s>>= 7\n                                char r11_3 = r11_2 & 0x7f\n                                \n                                if (arg8 == 0)\n                                    if (r10_4 u< 0xa)\n                                        *(rsp + r10_4 + 0x84) = r11_3\n                                        int64_t r11_4 = rdx + r9_1\n                                        int64_t r12_3\n                                        \n                                        if (rbx == 0)\n                                            r12_3 = r9_1 + rdx + 2\n                                        else\n                                            r12_3 = rbx + r10_4 + r11_4 + 3\n                                            arg7 |= 2\n                                        \n                                        *(rsp + 0x78) = rdx\n                                        *(rsp + 0x48) = r9_1 + rdx + 2\n                                        *(rsp + 0x70) = rbx\n                                        *(rsp + 0xb8) = arg4\n                                        *(rsp + 0xc8) = arg1\n                                        *(rsp + 0x68) = r11_4\n                                        *(rsp + 0x50) = r10_4\n                                        *(rsp + 0x58) = r9_1\n                                        \n                                        if (arg3 != 0)\n                                            arg7 |= 8\n                                        \n                                        *(rsp + 0x3f) = arg7.b\n                                        *(rsp + 0x60) = r12_3\n                                        char* result = runtime.makeslice(r12_3)\n                                        void* rcx_1 = *(rsp + 0x60)\n                                        \n                                        if (rcx_1 u> 0)\n                                            *(rsp + 0xa0) = result\n                                            *result = *(rsp + 0x3f)\n                                            void* rsi = rcx_1 - 1\n                                            uint64_t rdx_6 = (zx.q((neg.q(rcx_1 - 1) s>> 0x3f).d) & 1) + result\n                                            void* rdi_2 = *(rsp + 0x58)\n                                            \n                                            if (rdi_2 + 1 s< rsi)\n                                                rsi = rdi_2 + 1\n                                            \n                                            if (rsp + 0x8e != rdx_6)\n                                                runtime.memmove(rsi, rdx_6, rsp + 0x8e)\n                                                result = *(rsp + 0xa0)\n                                                rcx_1 = *(rsp + 0x60)\n                                                rdi_2 = *(rsp + 0x58)\n                                            \n                                            if (rcx_1 u>= rdi_2 + 2)\n                                                void* rdi_3 = rcx_1 - rdi_2 - 2\n                                                void* rdx_9 = ((rdi_2 + 2) & neg.q(rcx_1 - rdi_2 - 2) s>> 0x3f) + result\n                                                void* rsi_6 = *(rsp + 0x78)\n                                                \n                                                if (rsi_6 s< rdi_3)\n                                                    rdi_3 = rsi_6\n                                                \n                                                int128_t* rbx_3 = *(rsp + 0xb8)\n                                                void* rdx_10\n                                                bool cond:0_1\n                                                \n                                                if (rbx_3 != rdx_9)\n                                                    runtime.memmove(rdi_3, rdx_9, rbx_3)\n                                                    rdx_10 = *(rsp + 0x70)\n                                                    cond:0_1 = rdx_10 == 0\n                                                    result = *(rsp + 0xa0)\n                                                    rcx_1 = *(rsp + 0x60)\n                                                else\n                                                    rdx_10 = *(rsp + 0x70)\n                                                    cond:0_1 = rdx_10 == 0\n                                                \n                                                if (cond:0_1)\n                                                    *(rsp + 0xa8)\n                                                    return result\n                                                \n                                                uint64_t rsi_7 = *(rsp + 0x48)\n