Skip to content

Instantly share code, notes, and snippets.

@rmolina
Created July 28, 2016 14:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rmolina/b3c1b45b86706c05be203ebb0a88a544 to your computer and use it in GitHub Desktop.
Save rmolina/b3c1b45b86706c05be203ebb0a88a544 to your computer and use it in GitHub Desktop.
.text:08048080 ; =============== S U B R O U T I N E =======================================
.text:08048080
.text:08048080 ; Attributes: noreturn
.text:08048080
.text:08048080 public a7f143da
.text:08048080 a7f143da proc near
.text:08048080 mov eax, 4
.text:08048085 mov ebx, 1 ; fd
.text:0804808A mov ecx, offset p1 ; "Can you reverse me?\n"
.text:0804808F mov edx, 14h ; len
.text:08048094 int 80h ; LINUX - sys_write
.text:08048096 shr ecx, 4
.text:08048099 add eax, ecx
.text:0804809B cmp eax, edx
.text:0804809D jnz short d80f4395
.text:0804809F
.text:0804809F a650fe19: ; CODE XREF: a7f143da+2C↓j
.text:0804809F add ebx, eax
.text:080480A1 mov edx, ebx
.text:080480A3 cmp edx, ecx
.text:080480A5 ja short b8653e9a
.text:080480A7
.text:080480A7 d80f4395: ; CODE XREF: a7f143da+1D↑j
.text:080480A7 sub ebx, ecx
.text:080480A9 shl ebx, 12h
.text:080480AC jmp short a650fe19
.text:080480AE ; ---------------------------------------------------------------------------
.text:080480AE
.text:080480AE b8653e9a: ; CODE XREF: a7f143da+25↑j
.text:080480AE mov ecx, 0
.text:080480B3 cmp ecx, 0EFBA893Fh
.text:080480B9 jz short b30e55a8
.text:080480BB mov eax, 1
.text:080480C0 xor ebx, ebx ; status
.text:080480C2 int 80h ; LINUX - sys_exit
.text:080480C4 ; ---------------------------------------------------------------------------
.text:080480C4
.text:080480C4 b30e55a8: ; CODE XREF: a7f143da+39↑j
.text:080480C4 xor eax, eax
.text:080480C6 xor ebx, ebx
.text:080480C8 xor ecx, ecx
.text:080480CA xor edx, edx
.text:080480CC push eax
.text:080480CD mov ecx, eax
.text:080480CF sub eax, ecx
.text:080480D1 mov ebx, 2A2E4D41h
.text:080480D6 mov ecx, 2A2E4D37h
.text:080480DB add eax, ebx
.text:080480DD sub eax, ecx
.text:080480DF mov esi, eax
.text:080480E1 mov ebx, ecx
.text:080480E3 sub ecx, ebx
.text:080480E5 mov eax, 4724BF82h
.text:080480EA mov ebx, 4724BF4Bh
.text:080480EF add ecx, eax
.text:080480F1 sub ecx, ebx
.text:080480F3 shl esi, 8
.text:080480F6 or esi, ecx
.text:080480F8 mov edx, ebx
.text:080480FA sub ebx, edx
.text:080480FC mov eax, 7FA9BB5Dh
.text:08048101 mov edx, 7FA9BB29h
.text:08048106 add ebx, eax
.text:08048108 sub ebx, edx
.text:0804810A shl esi, 8
.text:0804810D or esi, ebx
.text:0804810F mov edx, ecx
.text:08048111 sub ecx, edx
.text:08048113 mov eax, 7D9F011Dh
.text:08048118 mov edx, 7D9F00EAh
.text:0804811D add ecx, eax
.text:0804811F sub ecx, edx
.text:08048121 shl esi, 8
.text:08048124 or esi, ecx
.text:08048126 push esi
.text:08048127 xor esi, esi
.text:08048129 mov edx, eax
.text:0804812B sub eax, edx
.text:0804812D mov ecx, 3B8EDBF0h
.text:08048132 mov edx, 3B8EDB7Eh
.text:08048137 add eax, ecx
.text:08048139 sub eax, edx
.text:0804813B mov esi, eax
.text:0804813D mov edx, ebx
.text:0804813F sub ebx, edx
.text:08048141 mov eax, 2097240Ah
.text:08048146 mov edx, 209723C3h
.text:0804814B add ebx, eax
.text:0804814D sub ebx, edx
.text:0804814F shl esi, 8
.text:08048152 or esi, ebx
.text:08048154 mov edx, ebx
.text:08048156 sub ebx, edx
.text:08048158 mov ecx, 703F7A75h
.text:0804815D mov edx, 703F7A55h
.text:08048162 add ebx, ecx
.text:08048164 sub ebx, edx
.text:08048166 shl esi, 8
.text:08048169 or esi, ebx
.text:0804816B mov ebx, eax
.text:0804816D sub eax, ebx
.text:0804816F mov edx, 1684C2A4h
.text:08048174 mov ebx, 1684C280h
.text:08048179 add eax, edx
.text:0804817B sub eax, ebx
.text:0804817D shl esi, 8
.text:08048180 or esi, eax
.text:08048182 push esi
.text:08048183 xor esi, esi
.text:08048185 mov ebx, eax
.text:08048187 sub eax, ebx
.text:08048189 mov edx, 68D0E7D3h
.text:0804818E mov ebx, 68D0E7B2h
.text:08048193 add eax, edx
.text:08048195 sub eax, ebx
.text:08048197 mov esi, eax
.text:08048199 mov edx, ecx
.text:0804819B sub ecx, edx
.text:0804819D mov eax, 27F6E2B8h
.text:080481A2 mov edx, 27F6E298h
.text:080481A7 add ecx, eax
.text:080481A9 sub ecx, edx
.text:080481AB shl esi, 8
.text:080481AE or esi, ecx
.text:080481B0 mov eax, edx
.text:080481B2 sub edx, eax
.text:080481B4 mov ebx, 5231B7ECh
.text:080481B9 mov eax, 5231B7A5h
.text:080481BE add edx, ebx
.text:080481C0 sub edx, eax
.text:080481C2 shl esi, 8
.text:080481C5 or esi, edx
.text:080481C7 mov edx, ebx
.text:080481C9 sub ebx, edx
.text:080481CB mov eax, 6AE48D52h
.text:080481D0 mov edx, 6AE48CE4h
.text:080481D5 add ebx, eax
.text:080481D7 sub ebx, edx
.text:080481D9 shl esi, 8
.text:080481DC or esi, ebx
.text:080481DE push esi
.text:080481DF xor esi, esi
.text:080481E1 mov ebx, edx
.text:080481E3 sub edx, ebx
.text:080481E5 mov ecx, 6E747119h
.text:080481EA mov ebx, 6E7470F8h
.text:080481EF add edx, ecx
.text:080481F1 sub edx, ebx
.text:080481F3 mov esi, edx
.text:080481F5 mov edx, ecx
.text:080481F7 sub ecx, edx
.text:080481F9 mov ebx, 6D271978h
.text:080481FE mov edx, 6D271943h
.text:08048203 add ecx, ebx
.text:08048205 sub ecx, edx
.text:08048207 shl esi, 8
.text:0804820A or esi, ecx
.text:0804820C mov ecx, eax
.text:0804820E sub eax, ecx
.text:08048210 mov edx, 1514826h
.text:08048215 mov ecx, 15147B4h
.text:0804821A add eax, edx
.text:0804821C sub eax, ecx
.text:0804821E shl esi, 8
.text:08048221 or esi, eax
.text:08048223 mov eax, ecx
.text:08048225 sub ecx, eax
.text:08048227 mov ebx, 154B36A7h
.text:0804822C mov eax, 154B3642h
.text:08048231 add ecx, ebx
.text:08048233 sub ecx, eax
.text:08048235 shl esi, 8
.text:08048238 or esi, ecx
.text:0804823A push esi
.text:0804823B xor esi, esi
.text:0804823D mov edx, eax
.text:0804823F sub eax, edx
.text:08048241 mov ecx, 3E6D9D39h
.text:08048246 mov edx, 3E6D9CC3h
.text:0804824B add eax, ecx
.text:0804824D sub eax, edx
.text:0804824F mov esi, eax
.text:08048251 mov ecx, eax
.text:08048253 sub eax, ecx
.text:08048255 mov edx, 5CEDB20Dh
.text:0804825A mov ecx, 5CEDB1DAh
.text:0804825F add eax, edx
.text:08048261 sub eax, ecx
.text:08048263 shl esi, 8
.text:08048266 or esi, eax
.text:08048268 mov ecx, edx
.text:0804826A sub edx, ecx
.text:0804826C mov eax, 3FA8182h
.text:08048271 mov ecx, 3FA8130h
.text:08048276 add edx, eax
.text:08048278 sub edx, ecx
.text:0804827A shl esi, 8
.text:0804827D or esi, edx
.text:0804827F mov ecx, eax
.text:08048281 sub eax, ecx
.text:08048283 mov edx, 18F34319h
.text:08048288 mov ecx, 18F342F9h
.text:0804828D add eax, edx
.text:0804828F sub eax, ecx
.text:08048291 shl esi, 8
.text:08048294 or esi, eax
.text:08048296 push esi
.text:08048297 xor esi, esi
.text:08048299 mov edx, ebx
.text:0804829B sub ebx, edx
.text:0804829D mov eax, 125E7475h
.text:080482A2 mov edx, 125E743Bh
.text:080482A7 add ebx, eax
.text:080482A9 sub ebx, edx
.text:080482AB mov esi, ebx
.text:080482AD mov ecx, eax
.text:080482AF sub eax, ecx
.text:080482B1 mov ebx, 495C7498h
.text:080482B6 mov ecx, 495C7425h
.text:080482BB add eax, ebx
.text:080482BD sub eax, ecx
.text:080482BF shl esi, 8
.text:080482C2 or esi, eax
.text:080482C4 mov edx, eax
.text:080482C6 sub eax, edx
.text:080482C8 mov ebx, 39A86FEh
.text:080482CD mov edx, 39A86DDh
.text:080482D2 add eax, ebx
.text:080482D4 sub eax, edx
.text:080482D6 shl esi, 8
.text:080482D9 or esi, eax
.text:080482DB mov eax, ecx
.text:080482DD sub ecx, eax
.text:080482DF mov edx, 4061CDC0h
.text:080482E4 mov eax, 4061CDA0h
.text:080482E9 add ecx, edx
.text:080482EB sub ecx, eax
.text:080482ED shl esi, 8
.text:080482F0 or esi, ecx
.text:080482F2 push esi
.text:080482F3 xor esi, esi
.text:080482F5 mov edx, eax
.text:080482F7 sub eax, edx
.text:080482F9 mov ecx, 2F5DF01Bh
.text:080482FE mov edx, 2F5DEFB0h
.text:08048303 add eax, ecx
.text:08048305 sub eax, edx
.text:08048307 mov esi, eax
.text:08048309 mov ebx, ecx
.text:0804830B sub ecx, ebx
.text:0804830D mov edx, 3677748Bh
.text:08048312 mov ebx, 36777458h
.text:08048317 add ecx, edx
.text:08048319 sub ecx, ebx
.text:0804831B shl esi, 8
.text:0804831E or esi, ecx
.text:08048320 mov eax, ebx
.text:08048322 sub ebx, eax
.text:08048324 mov ecx, 7E41DE6Fh
.text:08048329 mov eax, 7E41DE3Ch
.text:0804832E add ebx, ecx
.text:08048330 sub ebx, eax
.text:08048332 shl esi, 8
.text:08048335 or esi, ebx
.text:08048337 mov edx, eax
.text:08048339 sub eax, edx
.text:0804833B mov ebx, 478D5BC8h
.text:08048340 mov edx, 478D5B55h
.text:08048345 add eax, ebx
.text:08048347 sub eax, edx
.text:08048349 shl esi, 8
.text:0804834C or esi, eax
.text:0804834E push esi
.text:0804834F xor esi, esi
.text:08048351 mov eax, ebx
.text:08048353 sub ebx, eax
.text:08048355 mov ecx, 58E314CCh
.text:0804835A mov eax, 58E314ACh
.text:0804835F add ebx, ecx
.text:08048361 sub ebx, eax
.text:08048363 mov esi, ebx
.text:08048365 mov edx, eax
.text:08048367 sub eax, edx
.text:08048369 mov ebx, 6D1D4445h
.text:0804836E mov edx, 6D1D43D0h
.text:08048373 add eax, ebx
.text:08048375 sub eax, edx
.text:08048377 shl esi, 8
.text:0804837A or esi, eax
.text:0804837C mov edx, eax
.text:0804837E sub eax, edx
.text:08048380 mov ecx, 17EC583Bh
.text:08048385 mov edx, 17EC580Bh
.text:0804838A add eax, ecx
.text:0804838C sub eax, edx
.text:0804838E shl esi, 8
.text:08048391 or esi, eax
.text:08048393 mov edx, eax
.text:08048395 sub eax, edx
.text:08048397 mov ecx, 587E7ED3h
.text:0804839C mov edx, 587E7E5Ah
.text:080483A1 add eax, ecx
.text:080483A3 sub eax, edx
.text:080483A5 shl esi, 8
.text:080483A8 or esi, eax
.text:080483AA push esi
.text:080483AB xor esi, esi
.text:080483AD mov ebx, eax
.text:080483AF sub eax, ebx
.text:080483B1 mov edx, 74B962B1h
.text:080483B6 mov ebx, 74B96291h
.text:080483BB add eax, edx
.text:080483BD sub eax, ebx
.text:080483BF mov esi, eax
.text:080483C1 mov ecx, eax
.text:080483C3 sub eax, ecx
.text:080483C5 mov edx, 0D17859Eh
.text:080483CA mov ecx, 0D178525h
.text:080483CF add eax, edx
.text:080483D1 sub eax, ecx
.text:080483D3 shl esi, 8
.text:080483D6 or esi, eax
.text:080483D8 mov eax, ebx
.text:080483DA sub ebx, eax
.text:080483DC mov edx, 5D69150Fh
.text:080483E1 mov eax, 5D6914DCh
.text:080483E6 add ebx, edx
.text:080483E8 sub ebx, eax
.text:080483EA shl esi, 8
.text:080483ED or esi, ebx
.text:080483EF mov eax, edx
.text:080483F1 sub edx, eax
.text:080483F3 mov ebx, 4F337664h
.text:080483F8 mov eax, 4F3375F9h
.text:080483FD add edx, ebx
.text:080483FF sub edx, eax
.text:08048401 shl esi, 8
.text:08048404 or esi, edx
.text:08048406 push esi
.text:08048407 xor esi, esi
.text:08048409 mov ecx, eax
.text:0804840B sub eax, ecx
.text:0804840D mov edx, 6412B1F7h
.text:08048412 mov ecx, 6412B1D7h
.text:08048417 add eax, edx
.text:08048419 sub eax, ecx
.text:0804841B mov esi, eax
.text:0804841D mov edx, ebx
.text:0804841F sub ebx, edx
.text:08048421 mov ecx, 4CEC2AC3h
.text:08048426 mov edx, 4CEC2A90h
.text:0804842B add ebx, ecx
.text:0804842D sub ebx, edx
.text:0804842F shl esi, 8
.text:08048432 or esi, ebx
.text:08048434 mov ebx, eax
.text:08048436 sub eax, ebx
.text:08048438 mov edx, 0A5B277Ah
.text:0804843D mov ebx, 0A5B2712h
.text:08048442 add eax, edx
.text:08048444 sub eax, ebx
.text:08048446 shl esi, 8
.text:08048449 or esi, eax
.text:0804844B mov ebx, ecx
.text:0804844D sub ecx, ebx
.text:0804844F mov eax, 6AFEB53Dh
.text:08048454 mov ebx, 6AFEB4C9h
.text:08048459 add ecx, eax
.text:0804845B sub ecx, ebx
.text:0804845D shl esi, 8
.text:08048460 or esi, ecx
.text:08048462 push esi
.text:08048463 xor esi, esi
.text:08048465 mov edx, 28h ; '(' ; len
.text:0804846A mov eax, 4
.text:0804846F mov ebx, 1 ; fd
.text:08048474 mov ecx, esp ; addr
.text:08048476 int 80h ; LINUX - sys_write
.text:08048478 mov eax, 1
.text:0804847D xor ebx, ebx ; status
.text:0804847F int 80h ; LINUX - sys_exit
.text:0804847F a7f143da endp ; sp-analysis failed
.text:0804847F
.text:0804847F _text ends
.text:0804847F
.data:08049484 ; ===========================================================================
.data:08049484
.data:08049484 ; Segment type: Pure data
.data:08049484 ; Segment permissions: Read/Write
.data:08049484 _data segment dword public 'DATA' use32
.data:08049484 assume cs:_data
.data:08049484 ;org 8049484h
.data:08049484 p1 db 'Can you reverse me?',0Ah,0 ; DATA XREF: a7f143da+A↑o
.data:08049484 _data ends
.data:08049484
.data:08049484
.data:08049484 end a7f143da
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment