Sitemap
A list of all the posts and pages found on the site. For you robots out there is an XML version available for digesting as well.
Pages
Posts
I Always Forget Nakayama’s Lemma
Published:
One theorem that I have learned in algebra and always forget the statement(s) of is the famous Nakayama’s Lemma. A quick Google search shows that I am probably not the only the person who has this issue. In any case, there is a particularly nice case of Nakayama’s Lemma that I use to reconstruct the more general version via quiver representation theory that I thought would be cool to write about.
Thoughts on Signed Measures
Published:
When I first learned about signed measures, I found the idea pretty confusing. I was given the definition verbatim out of Folland’s book, but never actually understood why we would care about such a thing in the first place. What’s an example problem that we would want to solve via signed measures? Sure, Folland says that we can classify the signed measures via Radon-Nikodym, but why should we care about that at all? I spent a bit of time pondering this recently and I came up with an answer that I think is somewhat satisfactory to me.
Meme (Dumb) Ideas for Java Bytecode Constant Obfuscation
Published:
Not too long ago, I took a quick look at some of the activity that has been going on in the Java bytecode obfuscation/deobfuscation communities. So far, I have noticed that most of the same ideas since I have went inactive have remained the same:
- Flow obfuscation:
- opaque predicates;
- reordering blocks through
goto; - weird try-catch block flow;
- callstack-sensitive keys used for branching;
- CFG flattening;
- complicate existing jumps;
- etc.
- Constant obfuscation:
- encrypt strings via context-sensitive keys;
- split numerical constants into a ton of arithmetic;
- abuse constantdynamic;
- etc.
- Reference obfuscation:
- abuse the Reflection API;
- abuse invokedynamics;
- proxying of method and field invocations;
- changing all parameter types to
java.lang.Object; - etc.
- Exploits:
- HTML-injection of vulnerable tools;
- fake directories;
- tool-specific crashers;
- etc.
- And the usual other stuff like class encryption and math obfuscation and whatnot.
redpwnCTF 2021 - javaisez3
Published:
If you participated in redpwnCTF 2021, you might know that I authored the javaisez3 reverse-engineering challenge. So… here is my writeup. I attempted to write this writeup in a way that is friendly to those who do not have a lot of experience with the Java Virtual Machine (JVM), so hopefully you will find this educational and helpful should you ever run into future Java bytecode reverse-engineering scenarios.
Killing Threadtear’s Sandbox
Published:
Full PoC w/ abitrary code execution: Link to Issue
Math Operation Obfuscation of Java Bytecode
Published:
Earlier today, I visited the Tigress C obfuscator website today (I haven’t for awhile) and it looks much nicer now ;). Anyways, something that particularly interested me was Tigress’s page on EncodeArithmetic. Since I, a maintainer of a Java bytecode obfuscator, am always looking for cool things to try, found the book they linked of interest. For reference $\neg$ is the bitwise NOT, $\oplus$ is XOR, $\wedge$ is AND, and $\vee$ is OR. If this notation is interesting to you, consider visiting Wikipedia’s page on boolean algebra. In the linked book, several identities are given but here are the ones relevant to today’s blog post:
publications
talks
Relationship of Mutation Dimer Graphs at 4-Faces and Quiver Mutations at 4-Valent Vertices
Published:
Abstract (written for general audience)
Mutations of Quivers with Potential and Dimer Models
Published:
Abstract
Restricted Quiver Mutation and n-Face Urban Renewal in Dimer Models
Published:
Abstract
Cluster-Like Algebras from Triangulations of Non-Orientable Surfaces
Published:
Abstract
teaching
Art of Problem Solving
Teaching Assistant, Art of Problem Solving Online School, June 2020 - Present
My role as a teaching assistant at the Art of Problem Solving’s Online School entails:
- Answering questions, engaging, and encouraging students in live text-based class sessions ranging from 30 to 75 students.
- Grading student submissions and provides detailed written feedback.
MATH 093 (UOP)
Teaching assistant, University of the Pacific, Fall 2022
Answered student questions on in-class worksheets for a precalculus companion course.
Math Hub Tutor
Tutor, University of the Pacific, Fall 2023 - Spring 2024
Stationed as a CRLA-certified drop-in tutor at University of the Pacific’s library to answer student questions from the college algebra, precalculus, and calculus classes. I also was the primary drop-in tutor for a variety of other higher-level math content such as linear algebra, differential equations, proof-writing, and abstract algebra.
Pacific Math Club Lecture Series: Complex Analysis
Lecturer, Pacific Math Club, Fall 2023
Ran a weekly lecture series through University of the Pacific’s mathematics club to lecture on topics from a typical complex analysis course which is not offered at University of the Pacific. Topics were presented in a way friendly to those with background in calculus at the levels of MATH 051, MATH 053, and MATH 055 at the University of the Pacific.
Pacific Math Club Lecture Series: Topology
Lecturer, Pacific Math Club, Spring 2024
Ran a weekly lecture series through University of the Pacific’s mathematics club to lecture on topics from point-set topology which is not offered as a course at the University of the Pacific. Topics were presented in a way friendly to those with background in calculus at the levels of MATH 051 and MATH 053.
The University of Kansas
Instructor, University of Kansas, Fall 2024 - Present
As a Graduate Teaching Assistant, I receive teaching assignments at the University of Kansas. To date, I have received the following assignments:
- MATH 104 Precalculus: Fall 2025 (1 section)
- MATH 115 (Calculus I for Business/Biology): Summer 2025 (1 section)
- MATH 115 (Calculus I for Business/Biology): Spring 2025 (2 sections)
- MATH 002 (Intermediate Mathematics): Fall 2024 (2 sections)
Art of Problem Solving
Instructor, Art of Problem Solving Virtual Campus, Fall 2024 - Present
Instructor at the Art of Problem Solving Virtual Campus which implements and adapts the Art of Problem Solving Online School curriculum into interactive Zoom classrooms taught entirely via the Socratic method. To date, I have taught or are teaching:
Art of Problem Solving
Instructor, Art of Problem Solving Online School, Fall 2024 - Present
Instructor at the Art of Problem Solving Online School, a world-renowed after-school program dedicated to teaching students mathematics, computer science, and science at levels of high rigor and content-depth via text-based chatrooms. To date, I have taught or are teaching:
UGA Trio Upward Bound/Upward Bound Math & Science
Instructor, University of Georgia, Summer 2025
In the summer of 2025, I served as one of the mathematics instructors for the University of Georgia’s Trio UB/UBMS program where I taught geometry, algebra, and precalculus to traditionally underrepresented students in collegiate eduation.