James Thorne

92 papers A* 10A 1B 3Journal 48Unranked 28
YearRankTypeTitle / Venue / Authors
2026 A* conf
AAAI
Jiwoo Hong, Sayak Paul, Noah Lee, Kashif Rasul, James Thorne, Jongheon Jeong
2025 B conf
COLING
Sangryul Kim, James Thorne
2025 conf
NAACL (Short Papers)
Jiwoo Hong, Noah Lee, Rodrigo Martínez-Castaño, César Rodríguez, James Thorne
2025 conf
ACL (1)
Zahra Bayramli, Ayhan Suleymanzade, Na Min An, Huzama Ahmad, Eunsu Kim, Junyeong Park, James Thorne, Alice Oh
2025 J jnl
CoRR
Zahra Bayramli, Ayhan Suleymanzade, Na Min An, Huzama Ahmad, Eunsu Kim, Junyeong Park, James Thorne, Alice Oh
2025 B conf
COLING
Noah Lee, Jiwoo Hong, James Thorne
2025 conf
NAACL (Long Papers)
Minsu Kim, Sangryul Kim, James Thorne
2025 J jnl
CoRR
Minsu Kim, Sangryul Kim, James Thorne
2025 conf
ACL (1)
Na Min An, Eunki Kim, James Thorne, Hyunjung Shim
2025 conf
ACL (Findings)
Eunki Kim, Sangryul Kim, James Thorne
2025 J jnl
CoRR
Eunki Kim, Sangryul Kim, James Thorne
2025 conf
ACL (1)
Guijin Son, Jiwoo Hong, Hyunwoo Ko, James Thorne
2025 J jnl
CoRR
Guijin Son, Jiwoo Hong, Hyunwoo Ko, James Thorne
2025 J jnl
CoRR
Eunki Kim, Na Min An, James Thorne, Hyunjung Shim
2025 A* conf
ICML
Jiwoo Hong, Noah Lee, Eunki Kim, Guijin Son, Woojin Chung, Aman Gupta, Shao Tang, James Thorne
2025 J jnl
CoRR
Jiwoo Hong, Noah Lee, Eunki Kim, Guijin Son, Woojin Chung, Aman Gupta, Shao Tang, James Thorne
2025 J jnl
CoRR
Philhoon Oh, Jinwoo Shin, James Thorne
2025 conf
ACL (1)
Wan Ju Kang, Eunki Kim, Na Min An, Sangryul Kim, Haemin Choi, Ki Hoon Kwak, James Thorne
2025 J jnl
CoRR
Wan Ju Kang, Eunki Kim, Na Min An, Sangryul Kim, Haemin Choi, Ki Hoon Kwak, James Thorne
2025 J jnl
CoRR
Jun Seong Kim, Ye Kyaw Thu, Javad Ismayilzada, Junyeong Park, Eunsu Kim, Huzama Ahmad, Na Min An, James Thorne, Alice Oh
2024 J jnl
Trans. Assoc. Comput. Linguistics
Max Glockner, Ieva Staliunaite, James Thorne, Gisela Vallejo, Andreas Vlachos, Iryna Gurevych
2024 conf
ACL (Findings)
Sheikh Shafayat, H. M. Quamran Hasan, Minhajur Rahman Chowdhury Mahim, Rifki Afina Putri, James Thorne, Alice Oh
2024 J jnl
CoRR
Sheikh Shafayat, H. M. Quamran Hasan, Minhajur Rahman Chowdhury Mahim, Rifki Afina Putri, James Thorne, Alice Oh
2024 A* conf
NeurIPS
Namgyu Ho, Sangmin Bae, Taehyeon Kim, Hyunjik Jo, Yireun Kim, Tal Schuster, Adam Fisch, James Thorne, Se-Young Yun
2024 J jnl
CoRR
Namgyu Ho, Sangmin Bae, Taehyeon Kim, Hyunjik Jo, Yireun Kim, Tal Schuster, Adam Fisch, James Thorne, Se-Young Yun
2024 conf
LREC/COLING
Eunsu Kim, Juyoung Suk, Philhoon Oh, Haneul Yoo, James Thorne, Alice Oh
2024 J jnl
CoRR
Eunsu Kim, Juyoung Suk, Philhoon Oh, Haneul Yoo, James Thorne, Alice Oh
2024 conf
EACL (Findings)
Na Min An, Sania Waheed, James Thorne
2024 J jnl
CoRR
Sangryul Kim, James Thorne
2024 J jnl
CoRR
Jiwoo Hong, Noah Lee, Rodrigo Martínez-Castaño, César Rodríguez, James Thorne
2024 conf
ACL (Findings)
Minsu Kim, James Thorne
2024 J jnl
CoRR
Minsu Kim, James Thorne
2024 J jnl
CoRR
Noah Lee, Jiwoo Hong, James Thorne
2024 A* conf
ICLR
Seonghyeon Ye, Doyoung Kim, Sungdong Kim, Hyeonbin Hwang, Seungone Kim, Yongrae Jo, James Thorne, Juho Kim, Minjoon Seo
2024 J jnl
CoRR
Na Min An, Eunki Kim, James Thorne, Hyunjung Shim
2024 J jnl
CoRR
Jiwoo Hong, Sayak Paul, Noah Lee, Kashif Rasul, James Thorne, Jongheon Jeong
2024 A* conf
EMNLP
Jiwoo Hong, Noah Lee, James Thorne
2024 J jnl
CoRR
Jiwoo Hong, Noah Lee, James Thorne
2024 A* conf
ICLR
Seungone Kim, Jamin Shin, Yejin Choi, Joel Jang, Shayne Longpre, Hwaran Lee, Sangdoo Yun, Seongjin Shin, Sungdong Kim, James Thorne, Minjoon Seo
2024 conf
EACL (Findings)
EuiYul Song, Sangryul Kim, Haeju Lee, Joonkee Kim, James Thorne
2024 J jnl
CoRR
EuiYul Song, Sangryul Kim, Haeju Lee, Joonkee Kim, James Thorne
2024 J jnl
CoRR
Minju Seo, Jinheon Baek, James Thorne, Sung Ju Hwang
2024 A* conf
EMNLP
Woojin Chung, Jiwoo Hong, Na Min An, James Thorne, Se-Young Yun
2024 J jnl
CoRR
Woojin Chung, Jiwoo Hong, Na Min An, James Thorne, Se-Young Yun
2024 J jnl
CoRR
Michael Sejr Schlichtkrull, Yulong Chen, Chenxi Whitehouse, Zhenyun Deng, Mubashara Akhtar, Rami Aly, Zhijiang Guo, Christos Christodoulopoulos, Oana Cocarascu, Arpit Mittal, James Thorne, Andreas Vlachos
2024 conf
ArgMining
Wan Ju Kang, Jiyoung Han, Jaemin Jung, James Thorne
2024 J jnl
CoRR
EuiYul Song, Philhoon Oh, Sangryul Kim, James Thorne
2023 A* conf
EMNLP
Noah Lee, Na An, James Thorne
2023 J jnl
CoRR
Noah Lee, Na Min An, James Thorne
2023 conf
EMNLP (Findings)
Philhoon Oh, James Thorne
2023 J jnl
CoRR
Philhoon Oh, James Thorne
2023 conf
EMNLP (Findings)
Jiwoo Hong, Yejin Cho, Jiyoung Han, Jaemin Jung, James Thorne
2023 J jnl
CoRR
Jiwoo Hong, Yejin Cho, Jaemin Jung, Jiyoung Han, James Thorne
2023 J jnl
CoRR
Seonghyeon Ye, Doyoung Kim, Sungdong Kim, Hyeonbin Hwang, Seungone Kim, Yongrae Jo, James Thorne, Juho Kim, Minjoon Seo
2023 conf
ACL (1)
Jiho Kim, Sungjin Park, Yeonsu Kwon, Yohan Jo, James Thorne, Edward Choi
2023 J jnl
CoRR
Jiho Kim, Sungjin Park, Yeonsu Kwon, Yohan Jo, James Thorne, Edward Choi
2023 conf
EMNLP (Findings)
Yongjin Yang, Joonkee Kim, Yujin Kim, Namgyu Ho, James Thorne, Se-Young Yun
2023 J jnl
CoRR
Yongjin Yang, Joonkee Kim, Yujin Kim, Namgyu Ho, James Thorne, Se-Young Yun
2023 conf
EMNLP (Findings)
Yejoon Lee, Philhoon Oh, James Thorne
2023 J jnl
CoRR
Yejoon Lee, Philhoon Oh, James Thorne
2023 J jnl
CoRR
Seungone Kim, Jamin Shin, Yejin Cho, Joel Jang, Shayne Longpre, Hwaran Lee, Sangdoo Yun, Seongjin Shin, Sungdong Kim, James Thorne, Minjoon Seo
2023 A* conf
NeurIPS
Jiyoung Lee, Seungho Kim, Seunghyun Won, Joonseok Lee, Marzyeh Ghassemi, James Thorne, Jaeseok Choi, O.-Kil Kwon, Edward Choi
2023 J jnl
CoRR
Jiyoung Lee, Seungho Kim, Seunghyun Won, Joonseok Lee, Marzyeh Ghassemi, James Thorne, Jaeseok Choi, O.-Kil Kwon, Edward Choi
2022 ed.
AKBC
Sebastian Riedel, Eunsol Choi, Andreas Vlachos, James Thorne, Marek Rei, Fabio Petroni
2022 J jnl
CoRR
James Thorne
2022 A* conf
SIGIR
Artsiom Sauchuk, James Thorne, Alon Y. Halevy, Nicola Tonellotto, Fabrizio Silvestri
2021 J jnl
CoRR
James Thorne, Majid Yazdani, Marzieh Saeidi, Fabrizio Silvestri, Sebastian Riedel, Alon Y. Halevy
2021 conf
ACL/IJCNLP (1)
James Thorne, Majid Yazdani, Marzieh Saeidi, Fabrizio Silvestri, Sebastian Riedel, Alon Y. Halevy
2021 A conf
EACL
James Thorne, Andreas Vlachos
2021 conf
ACL/IJCNLP (1)
James Thorne, Andreas Vlachos
2021 J jnl
CoRR
James Thorne, Max Glockner, Gisela Vallejo, Andreas Vlachos, Iryna Gurevych
2021 conf
NeurIPS Datasets and Benchmarks
Rami Aly, Zhijiang Guo, Michael Sejr Schlichtkrull, James Thorne, Andreas Vlachos, Christos Christodoulopoulos, Oana Cocarascu, Arpit Mittal
2021 J jnl
CoRR
Rami Aly, Zhijiang Guo, Michael Sejr Schlichtkrull, James Thorne, Andreas Vlachos, Christos Christodoulopoulos, Oana Cocarascu, Arpit Mittal
2021 J jnl
Proc. VLDB Endow.
James Thorne, Majid Yazdani, Marzieh Saeidi, Fabrizio Silvestri, Sebastian Riedel, Alon Y. Levy
2021 conf
NAACL-HLT
Fabio Petroni, Aleksandra Piktus, Angela Fan, Patrick Lewis, Majid Yazdani, Nicola De Cao, James Thorne, Yacine Jernite, Vladimir Karpukhin, Jean Maillard, Vassilis Plachouras, Tim Rocktäschel, Sebastian Riedel
2020 J jnl
CoRR
James Thorne, Andreas Vlachos
2020 J jnl
CoRR
James Thorne, Andreas Vlachos
2020 J jnl
CoRR
Fabio Petroni, Aleksandra Piktus, Angela Fan, Patrick Lewis, Majid Yazdani, Nicola De Cao, James Thorne, Yacine Jernite, Vassilis Plachouras, Tim Rocktäschel, Sebastian Riedel
2020 J jnl
CoRR
James Thorne, Majid Yazdani, Marzieh Saeidi, Fabrizio Silvestri, Sebastian Riedel, Alon Y. Halevy
2019 J jnl
CoRR
James Thorne, Andreas Vlachos
2019 conf
EMNLP/IJCNLP (1)
James Thorne, Andreas Vlachos, Christos Christodoulopoulos, Arpit Mittal
2019 conf
NAACL-HLT (1)
James Thorne, Andreas Vlachos, Christos Christodoulopoulos, Arpit Mittal
2019 J jnl
CoRR
James Thorne, Andreas Vlachos, Christos Christodoulopoulos, Arpit Mittal
2018 B conf
COLING
James Thorne, Andreas Vlachos
2018 J jnl
CoRR
James Thorne, Andreas Vlachos
2018 conf
NAACL-HLT
James Thorne, Andreas Vlachos, Christos Christodoulopoulos, Arpit Mittal
2018 J jnl
CoRR
James Thorne, Andreas Vlachos, Christos Christodoulopoulos, Arpit Mittal
2018 ed.
FEVER@EMNLP
James Thorne, Andreas Vlachos, Oana Cocarascu, Christos Christodoulopoulos, Arpit Mittal
2018 conf
FEVER@EMNLP
James Thorne, Andreas Vlachos, Oana Cocarascu, Christos Christodoulopoulos, Arpit Mittal
2018 J jnl
CoRR
James Thorne, Andreas Vlachos, Oana Cocarascu, Christos Christodoulopoulos, Arpit Mittal
2017 conf
EACL (Software Demonstrations)
James Thorne, Andreas Vlachos
2017 conf
NLPmJ@EMNLP
James Thorne, Mingjie Chen, Giorgos Myrianthous, Jiashu Pu, Xiaoxuan Wang, Andreas Vlachos
redb/extractors/pe_extractors/pe_overlay.py
← Index redb/extractors/pe_extractors/pe_overlay.py python
from hashlib import md5, sha1, sha256
import inspect
from datetime import datetime, timezone
from typing import Any

import magic
from magika import Magika

from redb.extractors.enum import Tag
from redb.extractors.pe_extractor import PEExtractor
from redb.models.dataclasses import PEOverlay


class PEOverlayExtractor(PEExtractor):

    def __init__(
        self,
        filepath,
        log,
        exporters=None,
        index_prefix=None,
        elastic_index=None,
        known_benign=False,
        known_malicious=False,
        pe=None,
    ):
        super().__init__(
            filepath,
            log,
            exporters,
            index_prefix,
            elastic_index,
            known_benign,
            known_malicious,
            pe,
        )
        self.elastic_index = self.index_prefix + "-pe_overlay"
        self.log.debug(inspect.currentframe().f_code.co_name)

    def tag(self):
        return Tag.PE_OVERLAY.value

    def _extract_pe_overlay(self):
        self.log.debug(inspect.currentframe().f_code.co_name)
        overlay = self.pe.get_overlay()
        if overlay:
            return PEOverlay(
                _id=sha256(overlay).hexdigest(),
                overlay_size=len(overlay),
                overlay_entropy=self.calculate_entropy(overlay),
                overlay_offset=self.pe.get_overlay_data_start_offset(),
                overlay_mimetype=magic.from_buffer(overlay, mime=True),
                overlay_type=magic.from_buffer(overlay),
                overlay_magika=Magika().identify_bytes(overlay).output.ct_label,
                overlay_sha256=sha256(overlay).hexdigest(),
                overlay_sha1=sha1(overlay).hexdigest(),
                overlay_md5=md5(overlay).hexdigest(),
            )
        return None

    def extract(self):
        try:
            self.log.debug(inspect.currentframe().f_code.co_name)
            overlay = self._extract_pe_overlay()
            # self.export_to_elastic([overlay])  # Let the exporters handle this
            return overlay
        except Exception as e:
            self.log.error(f"Error extracting PE overlay: {e}")
            return None

    def prepare_export_data(self, exporter_type: str) -> Any:
        if exporter_type == "ElasticsearchExporter":
            return self.extract()
        elif exporter_type == "ClickHouseExporter":
            overlay = self.extract()
            if overlay is None:
                return None
            
            data = []
            current_time = datetime.now(timezone.utc)
            
            data.append([
                self.sha256,              # sha256
                self.md5,                 # md5
                self.sha1,                # sha1
                overlay.overlay_size,     # overlay_size
                overlay.overlay_entropy,  # overlay_entropy
                overlay.overlay_offset,   # overlay_offset
                overlay.overlay_mimetype, # overlay_mimetype
                overlay.overlay_type,     # overlay_type
                overlay.overlay_magika,   # overlay_magika
                overlay.overlay_sha256,   # overlay_sha256
                overlay.overlay_sha1,     # overlay_sha1
                overlay.overlay_md5,      # overlay_md5
                current_time             # analysis_date
            ])
            
            column_names = [
                'sha256', 'md5', 'sha1', 'overlay_size', 'overlay_entropy',
                'overlay_offset', 'overlay_mimetype', 'overlay_type', 'overlay_magika',
                'overlay_sha256', 'overlay_sha1', 'overlay_md5',
                'analysis_date'
            ]
            
            if not data:
                return None

            column_type_names = [
                'FixedString(64)', 'FixedString(32)', 'FixedString(40)',
                'UInt64', 'Float64', 'UInt64',
                'LowCardinality(String)', 'LowCardinality(String)', 'LowCardinality(String)',
                'FixedString(64)', 'FixedString(40)', 'FixedString(32)',
                'DateTime64(3, \'UTC\')'
            ]

            return (data, column_names, column_type_names)

    def get_clickhouse_table(self) -> str:
        return "redb_pe_overlays"