<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Re: 제로부터 시작하는 블로그 생활</title>
    <link>https://5kyc1ad.tistory.com/</link>
    <description>E-mail : skyclad0x7b7@gmail.com
나와 계약해서 슈퍼 하-카가 되어 주지 않을래?</description>
    <language>ko</language>
    <pubDate>Thu, 7 May 2026 01:44:56 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>__미니__</managingEditor>
    <image>
      <title>Re: 제로부터 시작하는 블로그 생활</title>
      <url>https://t1.daumcdn.net/cfile/tistory/245E0C355719EC8125</url>
      <link>https://5kyc1ad.tistory.com</link>
    </image>
    <item>
      <title>첫 컨트리뷰트 받아본 기념할만한 날</title>
      <link>https://5kyc1ad.tistory.com/562</link>
      <description>&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br class=&quot;Apple-interchange-newline&quot;&gt;프로젝트 링크 :&amp;nbsp;&lt;a href=&quot;https://github.com/skyclad0x7b7/Mini-Mahjong&quot;&gt;https://github.com/skyclad0x7b7/Mini-Mahjong&lt;/a&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;이스트 다닐 시절, 그러니까 2년쯤 전부터 개인 프로젝트로 재미삼아 마작 게임엔진(말이 엔진이지...)을 만들어보고 있는데, 한동안 일로 바빠서 손대지 못하고 있었다가 오래간만에 코드를 보니 개판이라 다시 리워크 작업을 진행하고 있습니다. 닉네임에다가 적당히 마작을 붙여서 Mini-Mahjong 이라는 이름으로 만들어뒀던 리포지토리인데 리워크 시작한지 며칠만에 누군가가 스타도 찍어주고 심지어는 풀 리퀘스트까지 넣어줬습니다.&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 760px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99FED94A5E93EBE126&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99FED94A5E93EBE126&quot; width=&quot;760&quot; height=&quot;163&quot; filename=&quot;스크린샷 2020-04-13 오후 1.33.56.png&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 760px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/996C324E5E93EC3F28&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F996C324E5E93EC3F28&quot; width=&quot;760&quot; height=&quot;438&quot; filename=&quot;스크린샷 2020-04-13 오후 1.36.00.png&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[감격의 스타와&amp;nbsp;첫 풀 리퀘스트]&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;사실 컨트리뷰팅 내용 자체는 크게 별건 없었고, GCC에서 컴파일이 제대로 안되는 이슈를 해결하기 위해 CMakeFiles를 조금 수정해준 정도이지만 내가 만든 프로젝트에 이렇게 관심을 가지고 기여해준다는 점이 무척 기뻤습니다. 좀더 프로젝트에 관심을 가지고 열심히 만들어 나가야겠다고 다짐하는 계기가 됐습니다 :)&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;위 풀 리퀘스트는 바로 머지 완료했습니다.&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>잡담</category>
      <author>__미니__</author>
      <guid isPermaLink="true">https://5kyc1ad.tistory.com/562</guid>
      <comments>https://5kyc1ad.tistory.com/562#entry562comment</comments>
      <pubDate>Mon, 13 Apr 2020 14:29:40 +0900</pubDate>
    </item>
    <item>
      <title>함대 콜렉션 -칸코레- ED - 눈보라 (TV Size) 기타 커버</title>
      <link>https://5kyc1ad.tistory.com/481</link>
      <description>&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/WXf6_odCGvo&quot; width=&quot;560&quot; height=&quot;315&quot; allow=&quot;accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;미용실 갔다가 돌아오는 길에 갑자기 삘받아서 커버해본 곡입니다.&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;간단하면서도 치는 맛이 있네요.&lt;/p&gt;</description>
      <category>Hobby/커버</category>
      <category>기타</category>
      <category>니시자와 시에나</category>
      <category>일렉기타</category>
      <category>일렉기타 커버</category>
      <category>칸코레</category>
      <category>커버</category>
      <author>__미니__</author>
      <guid isPermaLink="true">https://5kyc1ad.tistory.com/481</guid>
      <comments>https://5kyc1ad.tistory.com/481#entry481comment</comments>
      <pubDate>Tue, 17 Dec 2019 19:48:11 +0900</pubDate>
    </item>
    <item>
      <title>스타더스트 위치 메루루 OP - 메테오☆임팩트 기타 솔로 커버</title>
      <link>https://5kyc1ad.tistory.com/472</link>
      <description>&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/kXXie2GArIQ&quot; width=&quot;560&quot; height=&quot;315&quot; allow=&quot;accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;바쁜 와중에도 기타 솔로가 너무 좋아 며칠동안 커버해보고 벼르다가 날잡고 커버해서 올려봤는데... 생각보다 촬영 끝나고 들어보니 미스한것도 많고 별로인 부분이 보이네요 ㅠㅠ 나중에는 좀더 완벽하게!&lt;br /&gt;&lt;/p&gt;</description>
      <category>Hobby/커버</category>
      <category>기타</category>
      <category>내 여동생이 이렇게 귀여울리가 없어</category>
      <category>스타더스트 위치 메루루</category>
      <category>일렉기타</category>
      <category>일렉기타 커버</category>
      <category>커버</category>
      <category>타무라 유카리</category>
      <author>__미니__</author>
      <guid isPermaLink="true">https://5kyc1ad.tistory.com/472</guid>
      <comments>https://5kyc1ad.tistory.com/472#entry472comment</comments>
      <pubDate>Mon, 9 Dec 2019 00:21:46 +0900</pubDate>
    </item>
    <item>
      <title>C++ Korea 제6회 세미나 - &amp;quot;종합 선물 세트 제2호&amp;quot; 후기</title>
      <link>https://5kyc1ad.tistory.com/407</link>
      <description>&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 760px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/9994EB415D909D8636&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F9994EB415D909D8636&quot; width=&quot;760&quot; height=&quot;570&quot; filename=&quot;광화문.jpg&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;[오래간만의 광화문]&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;C++ 코리아 세미나는 저번에 간 이후 두어번정도 빠졌다고 생각했는데 블로그에 올려놓은거 보니까 그새 3번이나 더 했었던걸 보고 좀 쇼크였습니다. 일단 이번에는 저번처럼 듣고 싶은 강연도 빼먹고 스탭 일을 하진 않았는데 다른 일(회사 일...)로 좀 바빠서 3, 4번째 세션은 못들었고 1, 2, 5번째 세션만 들었습니다. 오래간만에 만난 사람들도 있고 세미나 내용도 알차고 좋았지만 전부 듣지 못한게 좀 아쉬웠네요. 이번에는 케이터링 없이 도시락으로 점심이 제공되었는데 먹는 사람 입장에서는 깔끔하게 먹고 정리할 수 있어서 맘이 편했습니다. 끝나고 정리 조금 돕고 구의 사는 친구좀 만나서 저녁 같이 먹고&amp;nbsp;집에 돌아왔습니다. 별로 뭐 한것도 없으면서 다리가 아프네요.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 760px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/9963CB415D909D8730&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F9963CB415D909D8730&quot; width=&quot;760&quot; height=&quot;570&quot; filename=&quot;세미나 시간표.jpg&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;[세미나 시간표]&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;아래는 세미나 내용을 들으면서 대강 정리한 노트입니다. 잘못된 내용이 있을 수 있습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;button type=&quot;button&quot; class=&quot;btn_more&quot; id=&quot;more407_0&quot; data-id=&quot;407_0&quot;&gt;세미나 요약 노트&lt;/button&gt;&lt;div class=&quot;moreless_content&quot; id=&quot;content407_0&quot; style=&quot;display: none;&quot;&gt;&lt;button type=&quot;button&quot; class=&quot;btn_less&quot; id=&quot;less407_0&quot; data-id=&quot;407_0&quot;&gt;&lt;span class=&quot;txt_fold&quot;&gt;세미나 요약 노트 접기&lt;/span&gt;&lt;/button&gt;
  &lt;p class=&quot;txt_view&quot;&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2&gt;Session 1. Strong Type in C++ (박재영)&lt;/h2&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;p&gt;침팬지와 인간의 차이 : 기억력 vs 추상력 ( 은하수를 여행하는 히치하이커를 위한 안내서 )&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;과한 추상&lt;/strong&gt;의 문제. 컴파일러는 sec이나 msec이나 int 형태의 데이터로만 구별 가능하다. 따로 태그를 붙여주지 않는 이상. 이를 해결하기 위한 방법으로 새로운 Strong Type을 구현할 수 있음. (struct 선언 등. 대표적으로 std::chrono) sec/msec을 단순 단위가 아니라 각각의 타입으로 만드는 것이나 isExists(std::string)이 아닌 isExists(File), isExists(Directory)로 만드는 것을 대표적으로 예시로 들 수 있음.&lt;/p&gt;
&lt;h3&gt;장점&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Type Safety : 문법적 문제가 없던 잘못된 사용을 컴파일러가 문법적인 문제를 찾을 수 있도록 만들어 줌&lt;/li&gt;
&lt;li&gt;Readability :  함수 명을 바꿔가며 여러 함수를 맞출 필요 없이 함수 오버로딩을 통해 간결하고 가독성있는 코드를 작성 가능.&lt;/li&gt;
&lt;li&gt;Testability : Partial{isExists(std::string)}한 함수를 Total한 함수{isExists(File)}로 만들 수 있음. (std::string 속에는 파일명이 아닌 다른 데이터도 들어갈 수 있음). 덕분에 테스트 시 std::string의 모든 데이터를 테스트하지 않아도 되고 File 타입만 신경쓰면 되므로 Testability의 향상도 기대 가능.&lt;/li&gt;
&lt;li&gt;Reusability : std::variant, std::visit 함수 등을 사용 가능해짐. 이부분은 공부 필요.&lt;/li&gt;
&lt;li&gt;std::get, std::apply 등 미리 정의된 라이브러리 함수(ToolBox라고 표현하심)를 꺼내 쓰기 편해짐&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;한계(단점)&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;수 많은 타입을 다 설계해야 한다&lt;/li&gt;
&lt;li&gt;컴파일 에러, 디버깅의 어려움. 바이너리가 쉽게 깨짐.&lt;/li&gt;
&lt;li&gt;std::variant에는 담을 수 있는 타입에 최대 50개정도의 한계가 있음.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Over Abstraction과 Under Abstraction 사이에서 올바른 추상화를 찾아가야 함.&lt;/p&gt;
&lt;h2&gt;&lt;br /&gt;&lt;/h2&gt;&lt;h2&gt;Session 2. 천하제일 C++ 최적화 퀴즈대회 (주준량)&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;iterator에서는 ++iter이 iter++보다 성능 면에서 효율적이다. iter++의 경우 operator++에서 값을 복사한 후 리턴하기 때문에 괜히 iterator의 복사가 한번 더 일어나기 때문.&lt;/li&gt;
&lt;li&gt;iterator에서 순차적 접근 시 List 보다 Vector가 더 빠름. vector의 iterator는 List의 iterator와는 달리 다음 객체를 참조할 필요 없이 바로 데이터의 포인터를 증가시켜 접근하기 때문.&lt;/li&gt;
&lt;li&gt;inline 함수는 일반 함수보다 성능이 훨씬 뛰어나질 수 있다. inline 함수는 call을 만들지 않고 함수의 몸통을 그대로 복사, 붙여넣기하는 함수. 인라인 함수의 경우 함수의 몸통이 합쳐지면서 컴파일러가 그 내부에 들어 있는 상수 변수를 최적화할 수 있게 해주기 때문에 최적화 결과가 더욱 좋게 나온다. (함수 프롤로그 및 에필로그가 발생하지 않는 장점은 덤)&lt;/li&gt;
&lt;li&gt;|(Bitwise) 와 ||(Logical) 연산자의 차이. Logical은 비교의 순서가 매우 중요하기 때문에 하나하나 비교를 진행하지만 Bitwise 연산자의 경우 한번에 벡터라이징하여 비교가 가능하기 때문에 비교 초반에 True가 나오는 케이스가 아닌 이상 대부분의 경우 Bitwise가 훨씬 더 빠름.&lt;/li&gt;
&lt;li&gt;std::move를 통해 객체를 새로 만들어서 리턴할 경우 기존에 있던 객체와 다른 객체가 새로 만들어져 리턴되기 때문에 std::move를 사용하지 않고 바로 리턴하는 방식이 더 빠르다(?)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;&lt;br /&gt;&lt;/h2&gt;&lt;h2&gt;Session 5. 채팅 서버 개발로 알아보는 C++의 기능들 (최흥배)&lt;/h2&gt;
&lt;p&gt;C++ 네트워크 프로그래밍 학습 시 IOCP를 적극 추천함. 비동기 IO, 멀티스레드 프로그래밍 공부하기 매우 좋음. 실제로 국내 게임서버 대다수는 C++과 IOCP를 이용하여 개발되어있을 것. 나온 지 20년 가까이 된 기술이기 때문에 한글로 정리된 자료도 많음.&lt;/p&gt;
&lt;p&gt;IOCP의 특징&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;비동기 I/O 네트워크 프로그래밍이 가능&lt;/li&gt;
&lt;li&gt;함수 7여가지만 가지고도 간단한 개발이 가능할 정도로 쉬움 (함수 개수가 적은 만큼 막상 쓰려면 복잡할 수 있음)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;이외의 내용들은 대부분 모던 C++의 기능들(std::mutex, std::lock_guard, lambda 등)이나 STL을 이용하여 Multi-Thread 처리, 안정적인 메모리 관리 등을 하는 방법에 대한 내용이었음.&lt;/p&gt;&lt;/p&gt;
&lt;button type=&quot;button&quot; class=&quot;btn_less&quot; id=&quot;less407_0&quot; data-id=&quot;407_0&quot;&gt;&lt;span class=&quot;txt_fold&quot;&gt;세미나 요약 노트 접기&lt;/span&gt;&lt;/button&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>Conference</category>
      <author>__미니__</author>
      <guid isPermaLink="true">https://5kyc1ad.tistory.com/407</guid>
      <comments>https://5kyc1ad.tistory.com/407#entry407comment</comments>
      <pubDate>Sun, 29 Sep 2019 21:04:00 +0900</pubDate>
    </item>
    <item>
      <title>[Hooking] x86, x64 API Hooking</title>
      <link>https://5kyc1ad.tistory.com/354</link>
      <description>&lt;p style=&quot;text-align: center;&quot;&gt;&lt;b&gt;WriteFileHook.cpp&lt;/b&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;script src=&quot;https://gist.github.com/skyclad0x7b7/0b6037e6b3fc64b6b0be4b278eb9add3.js&quot;&gt;&lt;/script&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;- 위 소스는 Kernel32.dll의 WriteFile 함수를 후킹하는 DLL의 소스코드입니다. 32비트의 경우 밑에서 설명할 Redirect 루틴을 탈 경우 &lt;b&gt;0x25FF(Absolute Jump)&lt;/b&gt;를 사용하고, 실제 함수 구현체 루틴으로 갈 경우 &lt;b&gt;E9(Relative Jump)&lt;/b&gt;를 사용합니다. 64비트의 경우 Redirect 루틴을 탈 경우 KernelBase의 함수를 후킹하며, 실제 함수 구현체 루틴으로 갈 경우엔 해당 함수를 바로 후킹하는데 둘 모두 기존 코드를 점프에 필요한 크기만큼 백업해두고 인라인 후킹을 진행합니다.&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;- Windows 7에서부터 Kernel32.dll 외에 KernelBase.dll 이라는 DLL 파일이 생겨 일부 함수들에 대해 구현은 KernelBase.dll에 존재하고 Kernel32.dll 을 통해호출시 KernelBase.dll 의 함수로 리다이렉트시킵니다. 자세한 내용은 &lt;a href=&quot;https://sanseolab.tistory.com/17&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;여기&lt;/a&gt;&amp;nbsp;참고. Redirect Call 명령은 0x25FF 로 Absolute Jump를 하고 있기 때문에 x86 환경에서는 이를 주소 오퍼랜드만 변경하여 쉽게 후킹이 가능하지만 x64환경에서는 6바이트만으로는 원하는 메모리 주소로의 점프가 불가능합니다. 이를 위해 위 코드에서는 64비트 환경에서 KernelBase.dll 로의 리다이렉트 코드를 발견&lt;sup class=&quot;footnote&quot;&gt;&lt;a href=&quot;#footnote_354_1&quot; id=&quot;footnote_link_354_1&quot; onmouseover=&quot;tistoryFootnote.show(this, 354, 1)&quot; onmouseout=&quot;tistoryFootnote.hide(354, 1)&quot; style=&quot;color:#f9650d; font-family: Verdana, Sans-serif; display: inline;&quot;&gt;&lt;span style=&quot;display: none;&quot;&gt;[각주:&lt;/span&gt;1&lt;span style=&quot;display: none;&quot;&gt;]&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;할 경우 KernelBase.dll 에서 해당 함수의 주소를 가져와 인라인 후킹을 진행하도록 작성하였습니다.&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;- 함수를 후킹한 후 내부에서 기존 함수를 실행하여 결과를 그대로 반환하고 싶은 경우에는 인라인 후킹을 진행할 때 NOP 다섯 개와 MOV EDI, EDI; PUSH EBP; MOV EBP, ESP로 총 10바이트의 여유 공간이 있기 때문에 이를 이용하여 후킹 함수로의 점프 5바이트, 후킹 함수 내에서 기존 함수 주소 -5로의 점프&lt;sup class=&quot;footnote&quot;&gt;&lt;a href=&quot;#footnote_354_2&quot; id=&quot;footnote_link_354_2&quot; onmouseover=&quot;tistoryFootnote.show(this, 354, 2)&quot; onmouseout=&quot;tistoryFootnote.hide(354, 2)&quot; style=&quot;color:#f9650d; font-family: Verdana, Sans-serif; display: inline;&quot;&gt;&lt;span style=&quot;display: none;&quot;&gt;[각주:&lt;/span&gt;2&lt;span style=&quot;display: none;&quot;&gt;]&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;, 기존 함수 주소 -5에 PUSH EBP; MOV EBP, ESP와 기존 함수 주소 +5로의 점프(EB 05)&lt;sup class=&quot;footnote&quot;&gt;&lt;a href=&quot;#footnote_354_3&quot; id=&quot;footnote_link_354_3&quot; onmouseover=&quot;tistoryFootnote.show(this, 354, 3)&quot; onmouseout=&quot;tistoryFootnote.hide(354, 3)&quot; style=&quot;color:#f9650d; font-family: Verdana, Sans-serif; display: inline;&quot;&gt;&lt;span style=&quot;display: none;&quot;&gt;[각주:&lt;/span&gt;3&lt;span style=&quot;display: none;&quot;&gt;]&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;를 넣어 언훅을 하지 않고도 호출이 가능하게 할 수 있습니다. 하지만 x64에서는 함수 도입부가 정형화되어있지 않은데다 위에서 설명한 KernelBase.dll로의 Redirect Call이 있을 경우 6바이트의 여유밖에 없기 때문에 이것이 불가능하여 위 코드에서는 어떤 방식으로 후킹을 하던 간에 내부에서 언훅 후 기존 함수를 실행하고, 다시 후킹을 건 다음 리턴하도록 작성해 두었습니다. &lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;- 145번째 줄에서 타겟 함수 주소 - 5를 하는 이유는 &lt;a href=&quot;https://5kyc1ad.tistory.com/241&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;여기&lt;/a&gt; 참고&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div class=&quot;footnotes&quot;&gt;
  &lt;ol class=&quot;footnotes&quot;&gt;
    &lt;li id=&quot;footnote_354_1&quot;&gt;260번째 줄 &lt;a href=&quot;#footnote_link_354_1&quot;&gt;[본문으로]&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;footnote_354_2&quot;&gt;145번째 줄 &lt;a href=&quot;#footnote_link_354_2&quot;&gt;[본문으로]&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;footnote_354_3&quot;&gt;148번째 줄 &lt;a href=&quot;#footnote_link_354_3&quot;&gt;[본문으로]&lt;/a&gt;&lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;</description>
      <category>Programming</category>
      <category>Hooking</category>
      <author>__미니__</author>
      <guid isPermaLink="true">https://5kyc1ad.tistory.com/354</guid>
      <comments>https://5kyc1ad.tistory.com/354#entry354comment</comments>
      <pubDate>Mon, 17 Jun 2019 16:28:44 +0900</pubDate>
    </item>
    <item>
      <title>CVE-2013-0808을 이용한 악성 HWP 문서 분석</title>
      <link>https://5kyc1ad.tistory.com/353</link>
      <description>&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot;&gt;&lt;iframe src=&quot;https://drive.google.com/file/d/1OXz1g6gPRe3F2YI07lNHzecNFN5JxwMQ/preview&quot; width=&quot;640&quot; height=&quot;480&quot;&gt;&lt;/iframe&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>Analysis/Malware</category>
      <category>CVE</category>
      <category>Exploit</category>
      <category>hwp</category>
      <category>malware analysis</category>
      <author>__미니__</author>
      <guid isPermaLink="true">https://5kyc1ad.tistory.com/353</guid>
      <comments>https://5kyc1ad.tistory.com/353#entry353comment</comments>
      <pubDate>Wed, 15 May 2019 15:05:17 +0900</pubDate>
    </item>
    <item>
      <title>악성 쉘코드(Shellcode) 분석</title>
      <link>https://5kyc1ad.tistory.com/352</link>
      <description>&lt;p style=&quot;text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;악성 쉘코드(Shellcode) 분석&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;문서 악성코드를 분석하다가 내부에서 익스플로잇 후 쉘코드를 사용하는 것을 보았는데, 분석해보면 좋겠다는 생각이 들어 분석을 진행해봤습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 500px; width: 500px; height: 728px;; height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/998679455CD4CF880C&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F998679455CD4CF880C&quot; width=&quot;500&quot; height=&quot;728&quot; filename=&quot;Shellcode_Disasm.png&quot; filemime=&quot;image/jpeg&quot; style=&quot;width: 500px; height: 728px;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[그림 1. &lt;a href=&quot;https://onlinedisassembler.com/odaweb/&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;ODA&lt;/a&gt;에서 디스어셈블한 쉘코드 전체, 클릭하면 커집니다]&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;쉘코드 전체는 위와 같습니다. 이 쉘코드는 크게 함수를 찾아 실행시키는 함수와 연쇄적으로 함수를 호출하는 두 부분으로 나뉩니다. 함수를 찾아 실행시키는 이 함수가 가장 중요하므로 &lt;b&gt;메인 함수&lt;/b&gt;라고 부르겠습니다. 맨 밑에는 URL String이라고 주석으로 단 것과 같이 URL 문자열이 들어 있습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 760px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/991466425CD4CFBC0C&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F991466425CD4CFBC0C&quot; width=&quot;760&quot; height=&quot;238&quot; filename=&quot;Shellcode_First_Jump.png&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[그림 2. 쉘코드 시작 직후 바로 Call 하는 루틴]&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;우선 함수를 호출하는 부분부터 살펴보면, 쉘코드가 시작하자마자 쉘코드 내의 특정 함수를 Call하는 것을 볼 수 있습니다. Call 명령어의 특징은 JMP 명령과는 달리 실행되면서 자동으로 스택에 다음 명령어의 주소(여기서는 0x30006), 즉 리턴 어드레스를 스택에 Push한다는 점인데, Call된 함수 내부에서는 바로 Pop 명령으로 EBP에 그 값을 저장합니다. 그리고 스택에 몇 가지 인자를 넣고 EBP를 그대로 호출합니다. 첫 번째 인자는 지금은 무엇인지 알 수 없는 4바이트 값이며, 두 번째 인자는 Push ESP를 통해 들어간 문자열 값으로 &quot;urlmon&quot;이라는 값입니다. 이를 알 수 있는 이유는 Push ESP 이전에 두 번의 Push를 통해 스택에 문자열로 &quot;urlmon&quot;을 저장하는 것이 보이기 때문입니다. 이제 EBP에 지정된 함수(0x30006)에 대해 분석해보겠습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 760px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/993C3D4D5CD4D0130D&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F993C3D4D5CD4D0130D&quot; width=&quot;760&quot; height=&quot;545&quot; filename=&quot;Shellcode_main_routine.png&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[그림 3. 함수를 찾아 실행시키는 메인 함수]&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;쉘코드 전체에서 위의 빨간 점선 부분이 Call EBP를 통해 호출되는 부분입니다. 바로 이 함수가 위에서 언급한 메인 함수입니다. 분석을 마치고 내린 결론은 이 함수는 인자로 특정 함수명의 해시를 전달받아 이를 찾아 실행시키는 함수라는 점입니다. 차근차근 위에서부터 분석해보겠습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 760px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99C7E3465CD4D0920F&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99C7E3465CD4D0920F&quot; width=&quot;760&quot; height=&quot;200&quot; filename=&quot;Shellcode_main_find_function.png&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[그림 4. 로드된 모듈과 그 안의 함수 정보를 가져오는 부분]&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;fs:[0x30]으로&lt;b&gt; PEB&lt;/b&gt;를 가져오고, 거기서 또 0xC만큼의 Offset에 있는&lt;b&gt; Ldr&lt;/b&gt;을 가져옵니다. 여기까지만 봐도 벌써 익숙한 코드여서 그 다음은 분석하기 무척 쉬웠습니다. 메모리에 로드된 DLL 정보가 이중 연결 리스트 형태로 저장되어있는 Ldr 구조체를 참조하여 로드된 DLL 정보와 Base Address를 가져오고, 이를 파싱하여 Export Table을 확인합니다. 만약 Export된 함수가 없을 경우에는 밑으로 점프하는데 밑에서는 참조할 DLL을 다음 것으로 로드한 뒤 다시 위로 돌아옵니다. 위 루틴이 끝난 후에는 ESI에 함수 이름이 저장됩니다. 자세한 내용은 전에 공부하며 정리한 적이 있으므로 아래 링크 두 개를 참조하면 되겠습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;b&gt;TIB, PEB를 이용해 로드된 DLL 정보 가져오기 : &lt;a href=&quot;https://5kyc1ad.tistory.com/328&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;https://5kyc1ad.tistory.com/328&lt;/a&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 14em;&quot;&gt;&lt;b&gt;GetProcAddress 없이 API 주소 가져오기 :&amp;nbsp;&lt;a href=&quot;https://5kyc1ad.tistory.com/329&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;https://5kyc1ad.tistory.com/329&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 760px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/9940BA425CD4D1050C&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F9940BA425CD4D1050C&quot; width=&quot;760&quot; height=&quot;87&quot; filename=&quot;Shellcode_Hashing.png&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[그림 5. 찾은 함수명 해싱]&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;그렇게 찾아온 함수를 직접 만든 듯한 루틴에 넣고 돌려 4바이트짜리&amp;nbsp;해시를 뽑습니다. lodsb 명령의 경우 ESI가 가리키는 값 한 바이트를 al에 복사하고 ESI 값을 1바이트 증가시키는 역할을 합니다. (참고 : &lt;a href=&quot;https://blog.naver.com/krquddnr37/20193085864&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;https://blog.naver.com/krquddnr37/20193085864&lt;/a&gt;) 해싱 함수의 경우 무척 간단해서 파이썬으로 루틴을 작성해봤습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class=&quot;colorscripter-code&quot; style=&quot;color:#f0f0f0; font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position:relative !important; overflow:auto&quot;&gt;&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin:0; padding:0; border:none; background-color:#272727; border-radius:4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding:6px; border-right:2px solid #4f4f4f&quot;&gt;&lt;div style=&quot;margin:0; padding:0; word-break:normal; text-align:right; color:#aaa; font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height:130%&quot;&gt;&lt;div style=&quot;line-height:130%&quot;&gt;1&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;2&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;3&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;4&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;5&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;6&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;7&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;8&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;9&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;10&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;11&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;12&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;13&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;14&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;15&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;16&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;17&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;18&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;19&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;padding:6px 0&quot;&gt;&lt;div style=&quot;margin:0; padding:0; color:#f0f0f0; font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height:130%&quot;&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&lt;span style=&quot;color:#999999&quot;&gt;#&amp;nbsp;ROL&amp;nbsp;&amp;amp;&amp;nbsp;ROR&amp;nbsp;Function&amp;nbsp;:&amp;nbsp;https://bbolmin.tistory.com/133&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&lt;span style=&quot;color:#ff3399&quot;&gt;def&lt;/span&gt;&amp;nbsp;ROL(data,&amp;nbsp;shift,&amp;nbsp;size&lt;span style=&quot;color:#ff3399&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#c10aff&quot;&gt;32&lt;/span&gt;):&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;shift&amp;nbsp;%&lt;span style=&quot;color:#ff3399&quot;&gt;=&lt;/span&gt;&amp;nbsp;size&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;remains&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;=&lt;/span&gt;&amp;nbsp;data&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color:#ff3399&quot;&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;(size&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;-&lt;/span&gt;&amp;nbsp;shift)&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;body&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;=&lt;/span&gt;&amp;nbsp;(data&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color:#ff3399&quot;&gt;&amp;lt;&lt;/span&gt;&amp;nbsp;shift)&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;-&lt;/span&gt;&amp;nbsp;(remains&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color:#ff3399&quot;&gt;&amp;lt;&lt;/span&gt;&amp;nbsp;size&amp;nbsp;)&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;return&lt;/span&gt;&amp;nbsp;(body&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;+&lt;/span&gt;&amp;nbsp;remains)&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&lt;span style=&quot;color:#ff3399&quot;&gt;def&lt;/span&gt;&amp;nbsp;ROR(data,&amp;nbsp;shift,&amp;nbsp;size&lt;span style=&quot;color:#ff3399&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color:#c10aff&quot;&gt;32&lt;/span&gt;):&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;shift&amp;nbsp;%&lt;span style=&quot;color:#ff3399&quot;&gt;=&lt;/span&gt;&amp;nbsp;size&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;body&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;=&lt;/span&gt;&amp;nbsp;data&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color:#ff3399&quot;&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;shift&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;remains&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;=&lt;/span&gt;&amp;nbsp;(data&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color:#ff3399&quot;&gt;&amp;lt;&lt;/span&gt;&amp;nbsp;(size&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;-&lt;/span&gt;&amp;nbsp;shift))&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;-&lt;/span&gt;&amp;nbsp;(body&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color:#ff3399&quot;&gt;&amp;lt;&lt;/span&gt;&amp;nbsp;size)&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;return&lt;/span&gt;&amp;nbsp;(body&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;+&lt;/span&gt;&amp;nbsp;remains)&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&lt;span style=&quot;color:#ff3399&quot;&gt;def&lt;/span&gt;&amp;nbsp;HashROR(target):&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ret&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color:#c10aff&quot;&gt;0&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;for&lt;/span&gt;&amp;nbsp;c&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;in&lt;/span&gt;&amp;nbsp;target:&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ret&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;=&lt;/span&gt;&amp;nbsp;ROR(ret,&amp;nbsp;&lt;span style=&quot;color:#c10aff&quot;&gt;0xD&lt;/span&gt;)&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ret&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;+&lt;/span&gt;&lt;span style=&quot;color:#ff3399&quot;&gt;=&lt;/span&gt;&amp;nbsp;ord(c)&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;return&lt;/span&gt;&amp;nbsp;ret&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align:right; margin-top:-13px; margin-right:5px; font-size:9px; font-style:italic&quot;&gt;&lt;a href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; style=&quot;color: rgb(79, 79, 79);&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;vertical-align:bottom; padding:0 2px 4px 0&quot;&gt;&lt;a href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; style=&quot;color: white;&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: rgb(79, 79, 79); border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;그리고 나온 해시를 [EBP+24]와 비교하는데, 이는 위에서 Call EBP를 통해 이 함수를 호출하기 전에 첫 번째 인자로 넣었던 값입니다. 즉, 메인 함수의 첫 번째 인자는 찾고자 하는 함수명의 해시임을 알 수 있습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 760px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99C8F3475CD4D19815&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99C8F3475CD4D19815&quot; width=&quot;760&quot; height=&quot;65&quot; filename=&quot;Shellcode_main_call_function.png&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[그림 6. 찾은 함수 호출 루틴]&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;그렇게 찾아낸 함수는 위 루틴을 거쳐 실행시킵니다. 함수로 Jmp하기 전에 &lt;b&gt;Popad&lt;/b&gt;와 &lt;b&gt;Pop&lt;/b&gt;이 두 번 있는 것을 볼 수 있는데, 그림 3에서 확인할 수 있듯이 메인 함수가 실행된 후 &lt;b&gt;Pushad&lt;/b&gt;를 호출했었습니다. Popad로 스택에서 그 부분을 다시 가져오고, pop을 두 번 진행하여 스택에 쌓여 있던 &lt;b&gt;리턴 어드레스&lt;/b&gt;와 첫 번째 인자(해싱된 함수명)를 제거합니다. &lt;b&gt;SFP(Saved Frame Pointer)&lt;/b&gt;의 경우에는 함수에서 호출되자마자 Push EBP를 통해 스택에 쌓는게 일반적이지만 여기에서는 그런 명령어는 없었으니 논외입니다. 이후 &lt;b&gt;첫 번째로 Pop했던 리턴 어드레스를 다시 Push하고 Call이 아니라 JMP 명령어로 찾아낸 함수를 호출&lt;/b&gt;하는데, 이럴 경우 방금 Push한 메인 함수의 리턴 어드레스가 JMP 명령으로 이동할&amp;nbsp;함수에서 사용할 리턴 어드레스가 되므로 찾아낸 함수가 종료되는 순간 메인 함수를 호출한 다음 명령어로 돌아가게 될 것입니다. (그림 2의 0x300C7) 이렇게 하면 자연스럽게 메인 함수에 넘긴 두 번째 인자부터는 메인 함수 내에서 찾아 호출한 함수의 인자로 들어가게 됩니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 760px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99D5EB465CD4D20C09&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99D5EB465CD4D20C09&quot; width=&quot;760&quot; height=&quot;522&quot; filename=&quot;Shellcode_call_routine.png&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[그림 7. 메인 함수 호출]&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;이 쉘코드는 이런식으로 Call EBP를 연쇄적으로 호출하는데, 지금까지의 과정으로 메인 함수의 첫 번째 인자는 호출할 함수명의 해시이며 두 번째부터는 찾아서 호출될&amp;nbsp;함수에 들어갈 인자들이라는 것을 알 수 있었습니다.&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 560px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99069B495CD4D28915&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99069B495CD4D28915&quot; width=&quot;560&quot; height=&quot;186&quot; filename=&quot;Shellcode_hashed_name.png&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[그림 8. 함수명과 그 해시]&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;이를 통해 찾아낸 각 해시에 대응하는 함수명들은 위와 같습니다. 이는 위에 파이썬으로 작성해 둔 HashROR 함수로 얻어낸 값입니다. 그림 7에 빨간 점선으로 표시된 값과 일치하는 것을 확인할 수 있습니다. 그림 7에도 주석으로 달려 있지만 이 쉘코드에서 호출할 것이라 예상되는 함수와 그 순서는 다음과 같습니다. (이해를 돕기 위해 중간에 Pseudo-Code도 포함되어있습니다)&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class=&quot;colorscripter-code&quot; style=&quot;color:#f0f0f0; font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position:relative !important; overflow:auto&quot;&gt;&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin:0; padding:0; border:none; background-color:#272727; border-radius:4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding:6px; border-right:2px solid #4f4f4f&quot;&gt;&lt;div style=&quot;margin:0; padding:0; word-break:normal; text-align:right; color:#aaa; font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height:130%&quot;&gt;&lt;div style=&quot;line-height:130%&quot;&gt;1&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;2&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;3&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;4&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;5&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;6&lt;/div&gt;&lt;div style=&quot;line-height:130%&quot;&gt;7&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;padding:6px 0&quot;&gt;&lt;div style=&quot;margin:0; padding:0; color:#f0f0f0; font-family:Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height:130%&quot;&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;LoadLibrary(&lt;span style=&quot;color:#ffd500&quot;&gt;&quot;urlmon&quot;&lt;/span&gt;);&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;LPVOID&amp;nbsp;p&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;=&lt;/span&gt;&amp;nbsp;VirtualAlloc(&lt;span style=&quot;color:#0086b3&quot;&gt;NULL&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color:#c10aff&quot;&gt;0x400&lt;/span&gt;,&amp;nbsp;MEM_COMMIT,&amp;nbsp;PAGE_EXECUTE_READWRITE);&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;GetTempPathA(&lt;span style=&quot;color:#c10aff&quot;&gt;0x104&lt;/span&gt;,&amp;nbsp;p);&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;p&amp;nbsp;&lt;span style=&quot;color:#ff3399&quot;&gt;+&lt;/span&gt;&lt;span style=&quot;color:#ff3399&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color:#ffd500&quot;&gt;&quot;tasc.exe&quot;&lt;/span&gt;;&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;URLDownloadToFileA(&lt;span style=&quot;color:#0086b3&quot;&gt;NULL&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color:#ffd500&quot;&gt;&quot;http://hrkumdo.org/xe/files/capsule.jpg&quot;&lt;/span&gt;,&amp;nbsp;p,&amp;nbsp;&lt;span style=&quot;color:#0086b3&quot;&gt;NULL&lt;/span&gt;,&amp;nbsp;&lt;span style=&quot;color:#0086b3&quot;&gt;NULL&lt;/span&gt;);&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;WinExec(p,&amp;nbsp;SW_HIDE);&lt;/div&gt;&lt;div style=&quot;padding:0 6px; white-space:pre; line-height:130%&quot;&gt;TerminateProcess(INVALID_HANDLE_VALUE,&amp;nbsp;&lt;span style=&quot;color:#c10aff&quot;&gt;0&lt;/span&gt;);&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align:right; margin-top:-13px; margin-right:5px; font-size:9px; font-style:italic&quot;&gt;&lt;a href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; style=&quot;color: rgb(79, 79, 79);&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style=&quot;vertical-align:bottom; padding:0 2px 4px 0&quot;&gt;&lt;a href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; style=&quot;color: white;&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: rgb(79, 79, 79); border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;결론을 내리면 이 쉘코드는 특정 URL에서 PE 파일을 다운로드 받아와서 임시 폴더에 저장하고, 콘솔 없이 백그라운드로 실행시키는 동작을 합니다. 난독화나 암호화가 된 것도 아니라서 분석하기는 무척 쉬웠던 것 같습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>Analysis/Malware</category>
      <category>malware analysis</category>
      <category>shellcode</category>
      <author>__미니__</author>
      <guid isPermaLink="true">https://5kyc1ad.tistory.com/352</guid>
      <comments>https://5kyc1ad.tistory.com/352#entry352comment</comments>
      <pubDate>Fri, 10 May 2019 10:29:36 +0900</pubDate>
    </item>
    <item>
      <title>디버깅 중인 프로세스 덤프하기</title>
      <link>https://5kyc1ad.tistory.com/351</link>
      <description>&lt;p style=&quot;text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;디버깅 중인 프로세스 덤프하기&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;x64dbg에는 &lt;b&gt;Scylla&lt;/b&gt;라고 하는 플러그인이 기본으로 내장되어 있고, 이를 사용하면 간단하게 디버깅 중인 프로세스를 덤프하고 IAT를 복구할수 있습니다. 간단하게 UPX 패킹된 샘플을 언패킹하면서 방법을 알아보겠습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 754px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/9957314A5CD27CB02A&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F9957314A5CD27CB02A&quot; width=&quot;754&quot; height=&quot;114&quot; filename=&quot;01.png&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;우선 UPX 패킹의 특징인 PUSHAD에서 POPAD로 이어지는 일련의 언팩 과정을 지나, JMP 명령이 가리키는 주소를 찾습니다.&lt;/p&gt;&lt;p&gt;이 주소가 OEP입니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 608px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99B68D4A5CD27CB032&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99B68D4A5CD27CB032&quot; width=&quot;608&quot; height=&quot;140&quot; filename=&quot;02.png&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;OEP까지 이동한 후 위에 표시된 Scylla 플러그인을 실행시킵니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 606px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99FDF04A5CD27CB02F&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99FDF04A5CD27CB02F&quot; width=&quot;606&quot; height=&quot;653&quot; filename=&quot;03.png&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;IAT Autosearch, Get Imports 버튼을 차례대로 눌러 IAT를 자동으로 찾습니다. 저의 경우 저렇게 찾지 FThunk가 발생하기도 하는데 원인은 잘 모르겠습니다. 해당 주소로 이동해 봐도 그 주소에서 바로 ret을 할 뿐이었습니다. 이후 오른쪽의 Dump 버튼을 눌러 [기존 파일명]_dump.exe 파일명으로 프로세스를 그냥 덤프하고, 그 밑의 Fix Dump 버튼을 누르고 방금 드랍시킨 파일을 선택해 고친 IAT를 적용시켜 프로세스를 다시 덤프합니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 760px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/991FBA4A5CD27CB12D&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F991FBA4A5CD27CB12D&quot; width=&quot;760&quot; height=&quot;72&quot; filename=&quot;04.png&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;그러면 [덤프된 파일명]_SCY.exe로 파일이 새로 생성되고, 이 파일이 IAT까지 Rebuild된 덤프 결과입니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 684px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/9953744A5CD27CB137&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F9953744A5CD27CB137&quot; width=&quot;684&quot; height=&quot;296&quot; filename=&quot;05.png&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;IDA로 까보면 언팩된 코드를 그대로 볼 수 있습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;중간에 발생한 FThunk의 경우 검색해봐도 잘 나오지 않아서 원인을 찾을 수가 없는데 혹시 아시는 분이 있다면 댓글로 알려주시면 감사하겠습니다.&lt;/p&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>Reversing</category>
      <author>__미니__</author>
      <guid isPermaLink="true">https://5kyc1ad.tistory.com/351</guid>
      <comments>https://5kyc1ad.tistory.com/351#entry351comment</comments>
      <pubDate>Wed, 8 May 2019 15:54:29 +0900</pubDate>
    </item>
    <item>
      <title>리치마작을 해보자 - 4. 마작의 역 정리</title>
      <link>https://5kyc1ad.tistory.com/350</link>
      <description>&lt;p style=&quot;text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 14pt;&quot;&gt;리치마작을 해보자 - 4.&lt;/span&gt;&lt;span style=&quot;font-size: 14pt;&quot;&gt;&amp;nbsp;마작의 역 정리&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://5kyc1ad.tistory.com/349&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;이전 강의 : 리치마작을 해보자 - 3. 게임 진행 방식, 역과 도라의 개념&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 458px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99F1FE425CD18BDB18&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99F1FE425CD18BDB18&quot; width=&quot;458&quot; height=&quot;254&quot; filename=&quot;매너.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[매너를 지키며 플레이합시다]&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;역이란 무엇인가에 대해서는 간단히&amp;nbsp;&lt;a href=&quot;https://5kyc1ad.tistory.com/349&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;3. 게임 진행 방식, 역과 도라의 개념&lt;/a&gt;&amp;nbsp;에서 설명했습니다. 마작의 역은 너무나 많아서 한번에 외우기에는 무리가 있으므로 마작을 처음 시작하는 분들이 꼭 알아야 하거나 외우기 쉬운 역들에 대해서는 &lt;span style=&quot;color: rgb(255, 0, 0);&quot;&gt;붉은 색&lt;/span&gt;으로 표시하겠습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;※ 유의점 : 전에도 언급한 적이 있지만 마작의 역들은 멘젠(문전)&lt;sup class=&quot;footnote&quot;&gt;&lt;a href=&quot;#footnote_350_1&quot; id=&quot;footnote_link_350_1&quot; onmouseover=&quot;tistoryFootnote.show(this, 350, 1)&quot; onmouseout=&quot;tistoryFootnote.hide(350, 1)&quot; style=&quot;color:#f9650d; font-family: Verdana, Sans-serif; display: inline;&quot;&gt;&lt;span style=&quot;display: none;&quot;&gt;[각주:&lt;/span&gt;1&lt;span style=&quot;display: none;&quot;&gt;]&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;인지 아닌지 여부에 따라 역의 판수가 낮아지거나 아예 역이 성립하지 않을 수도 있습니다. 어떻게 달라지는지는 각 역에 대해 설명하면서 작성하도록 하겠습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: rgb(255, 0, 0); font-size: 11pt;&quot;&gt;- 문전청자모화 (문전쯔모, 멘젠쯔모)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;b&gt;요약 : 멘젠 상태 1판역, 멘젠 아닐 경우 역 성립 안됨. 멘젠 상태에서 자신이 직접 쯔모한 패로 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;이전부터 계속 설명했던 멘젠 상태일 경우, 마지막 화료패를 자신이 직접 쯔모하는 순간 그것이 역으로 인정되어 날 수 있습니다. 자신이 직접 쯔모해서 나야 하는 역이기 때문에 다른 역들이 하나도 없는 상태에서 론으로 쏘는 것은 불가능합니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: rgb(255, 0, 0);&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 리치&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 458px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/9920B0335CD1880905&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F9920B0335CD1880905&quot; width=&quot;458&quot; height=&quot;254&quot; filename=&quot;리치.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[&lt;a href=&quot;https://namu.wiki/w/%EC%98%A8%EC%A3%A0%EC%A7%80%20%ED%86%A0%ED%82%A4&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;진주인공&lt;/a&gt;의 리치 (세로로 세울 필요는 없습니다)]&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 1판역, 멘젠 아닐 경우 역 성립 안됨. 멘젠 상태에서 리치 선언.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;리치는 멘젠 + 텐파이 상태에서만 선언할 수 있는 것으로, '&lt;b&gt;리치&lt;/b&gt;'라고 발성하고 버림패를 가로로 돌려서 타패합니다. 또, 리치봉이라고 하여 1천점짜리 점수봉을 패산 앞에 올려놓습니다. 만약 리치 선언 후 화료에 성공할 경우 본인이 리치봉을 돌려받지만, 타가가 화료했거나 유국으로 끝날 경우 해당 리치봉은 화료한 플레이어가 가져가거나 그대로 남아 다음 국의 화료자에게 넘어갑니다. 리치란 '&lt;b&gt;내가 멘젠 텐파이 상태이며, 따라서 패 하나만 더 들어오면 화료할 수 있다&lt;/b&gt;'라고 선언하는 행위이기 때문에 필연적으로 다른 플레이어들은 태도가 방어적이 될 수밖에 없습니다. 리치를 걸었을 경우 쯔모한 패가 오름패가 아니라면 무조건 버려야 하며, 타가의 누군가가 오름패를 버렸는데 화료하지 않고 넘길 경우 '&lt;b&gt;영구 후리텐&lt;/b&gt;'&lt;sup class=&quot;footnote&quot;&gt;&lt;a href=&quot;#footnote_350_2&quot; id=&quot;footnote_link_350_2&quot; onmouseover=&quot;tistoryFootnote.show(this, 350, 2)&quot; onmouseout=&quot;tistoryFootnote.hide(350, 2)&quot; style=&quot;color:#f9650d; font-family: Verdana, Sans-serif; display: inline;&quot;&gt;&lt;span style=&quot;display: none;&quot;&gt;[각주:&lt;/span&gt;2&lt;span style=&quot;display: none;&quot;&gt;]&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;에 걸립니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;리치 이후 순정 1순 내로 쯔모화료, 혹은 론화료를 성공할 경우 일발이라고 하여 추가로 1판이 붙습니다. 따라서 아무런 역이 없이 형태만 만들었다고 하더라도 리치 후 1순만에 쯔모하여 화료할 경우 리치, 일발, 멘젠(문전청자모화)으로 최소 3판이 됩니다.&lt;/p&gt;&lt;p&gt;&amp;nbsp;거기에 추가로 리치 후 화료에 성공하면 도라표시패 밑의 패를 뒤집어 &lt;b&gt;우라도라&lt;/b&gt;를 추가로 확보할 수 있습니다. 이런 특성을 조합해 보면 리치라는 역은 일단 리치를 건 후에는 패를 맘대로 버리거나 대기를 바꿀 수 없기 때문에 방어력을 확 낮추는 대신 추가 역과 우라도라 등으로 판수를 늘려 공격력을 극대화시키는 역이라고 볼 수 있습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;color: rgb(255, 0, 0); font-size: 11pt;&quot;&gt;&amp;nbsp;- 역패&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 495px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/992CD6335CD1870F11&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F992CD6335CD1870F11&quot; width=&quot;495&quot; height=&quot;277&quot; filename=&quot;퐁.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[전에 사용했던 &lt;a href=&quot;https://namu.wiki/w/%EC%B9%B4%ED%83%80%EC%98%A4%EC%B9%B4%20%EC%9C%A0%ED%82%A4&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;타코스&lt;/a&gt;의 더블동]&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 1판역. 삼원패, 자풍패, 장풍패를 커쯔로 보유하여 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;초보자들이 노리기 가장 쉬운 역들 중 하나입니다. 단순히 삼원패, 자풍패, 장풍패들 중 아무거나 커쯔로 모으기만 하면 되고, 울어도 상관 없기 때문입니다. 여기서 삼원패는 &lt;b&gt;백&lt;/b&gt;, &lt;b&gt;발&lt;/b&gt;, &lt;b&gt;중&lt;/b&gt;을 말하며 자풍패는 자신의 바람과 같은 패를 말합니다. 즉 자신이 현재 동가라고 한다면 동을 커쯔로 모으면 역패가 성립됩니다. 장풍패는 현재 장의 바람과 같은 패로, 동장이라면 동을 커쯔로 모으면 역패가 성립됩니다. 또 연풍패라고 하여 동장에서 자신이 동가일 경우 동을 모으면 &lt;b&gt;더블동&lt;/b&gt;, 남장에서 자신이 남가일 경우 남을 모으면 &lt;b&gt;더블남&lt;/b&gt;이라고 부르며 자풍과 장풍이 중첩되어 2판이 됩니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;color: rgb(255, 0, 0); font-size: 11pt;&quot;&gt;&amp;nbsp;- 단요구 (단요, 탕야오)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 458px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99E8D63A5CD189941D&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99E8D63A5CD189941D&quot; width=&quot;458&quot; height=&quot;254&quot; filename=&quot;단핑 도라도라.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[단핑(탕야오, 핑후) 도라도라]&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 쿠이탕&lt;sup class=&quot;footnote&quot;&gt;&lt;a href=&quot;#footnote_350_3&quot; id=&quot;footnote_link_350_3&quot; onmouseover=&quot;tistoryFootnote.show(this, 350, 3)&quot; onmouseout=&quot;tistoryFootnote.hide(350, 3)&quot; style=&quot;color:#f9650d; font-family: Verdana, Sans-serif; display: inline;&quot;&gt;&lt;span style=&quot;display: none;&quot;&gt;[각주:&lt;/span&gt;3&lt;span style=&quot;display: none;&quot;&gt;]&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;이 있을 경우 멘젠에 관계없이 1판역, 없을 경우 멘젠이 아닐 때는 성립하지 않음. 2~8의 수패만으로 패를 구성하여 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;역패 다음으로 가장 노리기 쉬운 역들 중 하나입니다. 머리와 몸통에 자패나 수패의 1, 9를 전혀 포함시키지 않고 &lt;b&gt;수패의 2~8만&lt;/b&gt;으로 패를 구성할 경우 역이 성립됩니다. 빠르게 울어서 게임을 끝내고 싶을 경우 주로 노리는 역입니다. 거의 모든 역과의 상성이 좋아 다른 역과 합쳐 점수를 더욱 크게 불릴 때 사용하기도 합니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 평화 (핑후)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 1판역, 멘젠 아닐 경우 역 인정 안됨. 멘젠 상태에서 추가 부수 없이 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;이름 자체는 평화(평범한 화료)이지만 마작의 역 중에서 조건 외우기가 가장 까다롭습니다. 단순하게 한 줄로 설명하면 '&lt;b&gt;멘젠 상태에서 추가 부수가 없이 화료하는 것&lt;/b&gt;'이지만 이걸로 역을 외우기 위해서는 추가로 부수 계산을 공부해야 합니다. 따라서 조건을 나열하여 설명하겠습니다.&lt;/p&gt;&lt;p style=&quot;margin-left: 2em;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 2em;&quot;&gt;&amp;nbsp;* 멘젠 상태일 것&lt;/p&gt;&lt;p style=&quot;margin-left: 2em;&quot;&gt;&amp;nbsp;* 머리에는 객풍패(자풍, 장풍을 제외한 풍패) 또는 수패만 와야 함&lt;/p&gt;&lt;p style=&quot;margin-left: 2em;&quot;&gt;&amp;nbsp;* 몸통은 슌쯔로만 모을 것(따라서 자패는 쓸 수 없음)&lt;/p&gt;&lt;p style=&quot;margin-left: 2em;&quot;&gt;&amp;nbsp;* 화료 대기패는 머리와 몸통 셋을 모은 후 마지막 몸통을 양면으로 대기할 것&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;왜 이런 조건들이 붙는지는 당장 설명하기는 복잡하고, 추후 점수 계산에 대해 설명할 때 함께 서술하겠습니다. 핑후는 필연적으로 멘젠 상태에서 만들어야 하기 때문에 야미텐&lt;sup class=&quot;footnote&quot;&gt;&lt;a href=&quot;#footnote_350_4&quot; id=&quot;footnote_link_350_4&quot; onmouseover=&quot;tistoryFootnote.show(this, 350, 4)&quot; onmouseout=&quot;tistoryFootnote.hide(350, 4)&quot; style=&quot;color:#f9650d; font-family: Verdana, Sans-serif; display: inline;&quot;&gt;&lt;span style=&quot;display: none;&quot;&gt;[각주:&lt;/span&gt;4&lt;span style=&quot;display: none;&quot;&gt;]&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;으로 쏘지 않는 이상 리치(추가로 멘젠쯔모)와 더해져 최소한 2판 이상의 역이 됩니다. 여기에 탕야오를 곁들여 &lt;b&gt;멘탕핑&lt;/b&gt;이라고 부릅니다. 운이 따라줘 탕야오 핑후에 리치 일발 쯔모를 할 경우 리치(1) + 일발(1) + 멘젠쯔모(1) + 탕야오(1) + 핑후(1)로 적어도 만관이며 슌쯔만으로 모으는 특성상 도라가 붙을 확률도 높아 하네만도 노릴 수 있습니다.&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(255, 0, 0);&quot;&gt;&amp;nbsp;- 일배구 (이페코)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 458px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99FA37435CD18D461C&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99FA37435CD18D461C&quot; width=&quot;458&quot; height=&quot;254&quot; filename=&quot;이페코.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[리치일발 + 멘탕핑 + 이페코 + 도라4]&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 1판역, 멘젠 아닐 경우 역 인정 안됨. 숫자와 모양이 동일한 두 개의 슌쯔를 한 쌍 보유하고 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;무척 단순한 역 중 하나로, 멘젠 상태에서 숫자와 모양이 동일한 슌쯔를 한 쌍 모으면 1판이 됩니다. 아카도라의 여부는 관계 없습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 이배구 (량페코)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 3판역, 멘젠 아닐 경우 역 인정 안됨. 숫자와 모양이 동일한 두 개의 슌쯔를 두 쌍 보유하고 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;일배구의 상위역으로, 멘젠 상태에서 숫자와 모양이 동일한 두 개의 슌쯔를 두 쌍 보유하면 됩니다. 모양 특성상 아래에 설명할 치또이츠와 겹치게 되는데, 둘 모두 멘젠 상태여야 하는 데다 이배구 쪽이 3판으로 2판인 치또이츠보다 높은 역이기 때문에 이배구로 화료했을 경우 치또이츠는 무시됩니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(0, 0, 0);&quot;&gt;&amp;nbsp;- 일기통관&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 457px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/9948CF4B5CD18F1E29&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F9948CF4B5CD18F1E29&quot; width=&quot;457&quot; height=&quot;258&quot; filename=&quot;일기통관.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[혼일색 + 일기통관 + 역패]&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 2판역, 멘젠 아닐 경우 1판역. 같은 종류의 수패로 123, 456, 789의 슌쯔를 보유하고 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;화료하면 상당히 아름다운 역중 하나입니다. 1~9까지의 같은 종류의 수패를 모아 123, 456, 789의 슌쯔를 만들면 성립됩니다. 단, 123, 456, 789의 슌쯔 모양을 무조건 만족해야 하므로 [111, 234, 567, 789, **], [***, 123, 456, 678, 99] 같은 경우들은 해당되지 않습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 삼색동순&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 467px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99ECB8475CD1911731&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99ECB8475CD1911731&quot; width=&quot;467&quot; height=&quot;260&quot; filename=&quot;삼색.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[리치일발 + 멘탕핑 + 삼색 + 도라]&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 2판역, 멘젠 아닐 경우 1판역. 숫자가 동일한 슌쯔를 세 종류의 수패에 모두 보유하고 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;숫자가 동일한 슌쯔를 세 종류의 수패 모두에서 모으면 성립하는 역입니다. 마작에서 '삼색'이라고 하면 보통 이 삼색동순을 가리킵니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 삼색동각&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 2판역. 숫자가 동일한 커쯔를 세 종류의 수패에 모두 보유하고 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;삼색동순과 이름은 비슷하지만 이번에는 숫자가 동일한 커쯔를 세 종류의 수패 모두에서 모아야 합니다. 각 패는 4개씩 있으므로 3 * 4로 총 12개의 패들 중 9개를 모아야 하는 만큼 삼색동순에 비해 만들기 무척 어려운 편에 속합니다. 몸통 4개 중 최소한 3개가 커쯔가 되므로 아래에서 설명할 또이또이나 도라들과 중첩하여 점수를 크게 늘릴 수 있습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 혼전대요구 (혼찬타, 찬타)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 2판역, 멘젠 아닐 경우 1판역. 머리와 몸통에 요구패&lt;sup class=&quot;footnote&quot;&gt;&lt;a href=&quot;#footnote_350_5&quot; id=&quot;footnote_link_350_5&quot; onmouseover=&quot;tistoryFootnote.show(this, 350, 5)&quot; onmouseout=&quot;tistoryFootnote.hide(350, 5)&quot; style=&quot;color:#f9650d; font-family: Verdana, Sans-serif; display: inline;&quot;&gt;&lt;span style=&quot;display: none;&quot;&gt;[각주:&lt;/span&gt;5&lt;span style=&quot;display: none;&quot;&gt;]&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;가 적어도 하나 이상 포함된 형태로 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;패들이 1, 9나 자패쪽으로 흩어져 있는데 국사무쌍이나 다른 높은 역들은 노리기 힘든 상황일 경우 가장 먼저 찾게 되는 역입니다. 머리와 몸통에 적어도 한개 이상의 자패나 1, 9의 수패가 들어가면 역이 성립됩니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 순전대요구 (준찬타, 준짱)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 3판역, 멘젠 아닐 경우 2판역. 머리와 몸통에 노두패&lt;sup class=&quot;footnote&quot;&gt;&lt;a href=&quot;#footnote_350_6&quot; id=&quot;footnote_link_350_6&quot; onmouseover=&quot;tistoryFootnote.show(this, 350, 6)&quot; onmouseout=&quot;tistoryFootnote.hide(350, 6)&quot; style=&quot;color:#f9650d; font-family: Verdana, Sans-serif; display: inline;&quot;&gt;&lt;span style=&quot;display: none;&quot;&gt;[각주:&lt;/span&gt;6&lt;span style=&quot;display: none;&quot;&gt;]&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;가 적어도 하나 이상 포함된 형태로 화료.&amp;nbsp;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;찬타의 상위역으로, 머리와 몸통에 자패를 제외하고 수패의 1, 9가 적어도 하나 이상 포함된 상태로 화료하면 됩니다. 수패의 1, 9의 경우 6종밖에 없기 때문에 만들기 만만찮은 역입니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 혼노두&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 2판역. 머리와 몸통을 요구패만으로 구성하여 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;찬타의 상위역으로, 머리와 몸통을 자패 또는 수패의 1, 9만으로 구성하여 화료하면 됩니다. 자패는 총 7종에 1, 9의 수패는 6종이므로 총 13종만의 패를 이용해야 하고 역 특성상 슌쯔로는 몸통을 구성할 수 없으므로 치또이츠 또는 또이또이와 무조건 중첩되어 사실상 4판 이상의 역입니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 청노두 (청로두)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 467px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99931E425CD192521C&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99931E425CD192521C&quot; width=&quot;467&quot; height=&quot;260&quot; filename=&quot;청노두.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[자칭 &lt;a href=&quot;https://namu.wiki/w/%EC%95%84%ED%83%80%EA%B3%A0%20%ED%9E%88%EB%A1%9C%EC%97%90&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;아토힛카게의 히로에&lt;/a&gt;, 청로두 역만 화료]&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 역만. 머리와 몸통을 노두패만으로 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;준찬타, 혼노두의 상위역으로 머리와 몸통을 수패의 1, 9패만으로 화료해야 합니다. 1, 9패는 7종인 자패보다도 적은 6종인데다 높은 역을 만들기 힘들어 가장 먼저 버려지는 패들이기 때문에 화료하기 무척 어려운 편에 속합니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(0, 0, 0);&quot;&gt;&amp;nbsp;- 자일색&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 역만. 자패만으로 패를 구성하여 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;청노두와는 반대의 의미로 혼노두의 상위역입니다. 7종밖에 없는 자패들만으로 패를 구성하여 화료해야 합니다. 7종인 자패의 특성상 치또이츠와 결합이 가능한데, 이럴 경우 대칠성이라는 더블 역만으로 인정하는 로컬 룰도 있습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;color: rgb(255, 0, 0); font-size: 11pt;&quot;&gt;&amp;nbsp;- 혼일색&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 3판역, 멘젠 아닐 경우 2판역. 한 종류의 수패와 자패만으로 패를 구성하여 화료.&amp;nbsp;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;한 종류의 수패와 나머지를 종류에 관계 없이 자패로 채워 넣고 화료하면 성립합니다. 초보자들이 노리기 쉬운 역이고 패가 잘 들어올 경우 청일색이나 자일색으로 변경하거나, 역패, 이페코, 일기통관 등과 섞을 수 있어 점수 자체도 무시할 수 없이 높은 편입니다.&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(255, 0, 0);&quot;&gt;&amp;nbsp;- 청일색&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 458px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/9930DD455CD192E51A&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F9930DD455CD192E51A&quot; width=&quot;458&quot; height=&quot;254&quot; filename=&quot;청일색.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[&lt;a href=&quot;https://namu.wiki/w/%EC%B9%B4%ED%83%80%EC%98%A4%EC%B9%B4%20%EC%9C%A0%ED%82%A4&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;타코스&lt;/a&gt;의 청일색 론화료]&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 6판역, 멘젠 아닐 경우 5판역. 한 종류의 수패만으로 패를 구성하여 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;혼일색의 상위역으로 패에 자패가 없이 한 종류의 수패만으로 패를 구성하여 화료하면 성립합니다. 멘젠이 아니어도 5판이라는 무척 강력한 역이며 역 특성상 패들이 많이 뭉치기 때문에 도라폭탄이 터지기도 좋습니다. 청일색은 대기패를 계산하기가 까다롭기로도 유명합니다. 무엇을 머리나 몸통으로 쓰느냐에 따라 대기패와 점수가 확 달라지기 때문에 청일색 텐파이를 앞둔 경우 무엇을 버릴지 무척 고민하게 됩니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt; color: rgb(255, 0, 0);&quot;&gt;&amp;nbsp;- 칠대자 (치또이츠)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 2판역, 멘젠 아닐 경우 역 성립 안됨. 또이츠를 7개 만들어 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;머리 1개, 몸통 4개를 모아야 하는 평범한 역들과는 달리 머리만 7개를 모으면 성립하는 특수한 역. 절대로 울어서는 만들 수 없기 때문에 리치와 결합되는 경우가 대부분이며 도라가 붙으면 그럭저럭 높은 역이 됩니다. 이배구가 칠대자보다 점수가 높아 상위역으로 작용하므로 이배구와는 중첩이 불가능합니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: rgb(255, 0, 0);&quot;&gt;&amp;nbsp;- 대대화 (돌돌이, 또이또이)&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 2판역. 모든 몸통을 커쯔로 만들어 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;퐁이나 캉을 잘못 치거나 패가 잘 들어오지 않아 역을 만들기 힘들 경우 노리기 쉬운 간단하면서도 강력한 역입니다. 모든 몸통을 커쯔로만 모으면 되니 있는대로 퐁을 쳐서 알몸단기&lt;sup class=&quot;footnote&quot;&gt;&lt;a href=&quot;#footnote_350_7&quot; id=&quot;footnote_link_350_7&quot; onmouseover=&quot;tistoryFootnote.show(this, 350, 7)&quot; onmouseout=&quot;tistoryFootnote.hide(350, 7)&quot; style=&quot;color:#f9650d; font-family: Verdana, Sans-serif; display: inline;&quot;&gt;&lt;span style=&quot;display: none;&quot;&gt;[각주:&lt;/span&gt;7&lt;span style=&quot;display: none;&quot;&gt;]&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;가 되는 경우가 많습니다. 커쯔가 많으니 도라 하나만 붙어도 점수가 확 불어납니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 삼암각 (삼안커)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 2판역. 안커를 3개 가지고 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;스스로 뽑아서 만든 안커를 3개 가지고 화료할 경우 성립합니다. 스안커 대기에 실패한 경우 필연적으로 또이또이와 결합되어 적어도 4판 이상의 역을 보장하며, 마찬가지로 커쯔가 많으므로 도라폭탄이 터지기 쉽습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 사암각 (사안커, 스안커)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 467px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99D4714F5CD1939119&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99D4714F5CD1939119&quot; width=&quot;467&quot; height=&quot;260&quot; filename=&quot;스안커.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[&lt;a href=&quot;https://namu.wiki/w/%EB%AF%B8%EC%95%BC%EB%82%98%EA%B0%80%20%EC%82%AC%ED%82%A4&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;마왕님&lt;/a&gt;의 영상개화 스안커 화료]&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 역만, 멘젠 아닐 경우 역 성립 안됨. 안커를 4개 가지고 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;안커를 4개 가진 상태로 화료할 경우 성립합니다. 머리 1개, 몸통 3개를 가지고 쌍봉대기[또이츠 2개를 가지고 둘 중 하나를 기다리는 대기]를 하는 경우가 있고, 몸통 4개를 이미 안커로 완성한 상태에서 머리 단기대기를 하는 두 가지 경우가 있는데 후자의 경우 특수 대기 형태를 인정하는 룰로 플레이하면 더블 역만으로 인정됩니다. 전자의 대기 상태에서 론으로 화료할 경우 마지막으로 만들어진 커쯔는 상대의 버림패를 가져와 만든 것이므로 안커로 인정되지 않아 삼안커 또이또이가 됩니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 소삼원&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 2판역. 삼원패중 두 개를 커쯔로, 나머지 하나를 또이츠로 가지고 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;3종류밖에 없는 삼원패 중 2종류를 커쯔로, 나머지 하나를 또이츠로 가질 경우 성립됩니다. 커쯔를 하나만 더 만들면 대삼원이라는 역만이 되지만 노리다가 실패한 경우에 종종 발생합니다. 몸통 2개와 머리가 이미 자패이므로 혼일색이나 찬타, 자일색 계열의 역과 중첩하여 큰 역으로 만들 수 있습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 대삼원&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 467px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99C6904B5CD1952D17&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99C6904B5CD1952D17&quot; width=&quot;467&quot; height=&quot;260&quot; filename=&quot;대삼원.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[&lt;a href=&quot;https://namu.wiki/w/%EC%8B%9C%EB%B6%80%EC%95%BC%20%ED%83%80%EC%B9%B4%EB%AF%B8&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;수확의 시간&lt;/a&gt;, 대삼원 화료]&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 역만. 삼원패 세 종류를 모두 커쯔로 가지고 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;삼원패 세 종류를 모두 커쯔로 모은 상태로 화료하면 성립합니다. 멘젠 여부와 관련없으면서도 무척 단순하고 간단하게 역만으로 날 수 있으며, 3대 국민 역만 중 하나라고 할 정도로 화료율도 높은 편입니다. 다만, 막 울어서 패를 만들 경우 상대편에서 경계하고 절대로 나머지 삼원패를 버리지 않으므로 적어도 패에 하나 이상은 안커로 가지고 있어야 노려볼 만 합니다.&lt;/p&gt;&lt;p&gt;&amp;nbsp;참고로 책임지불이라는 룰이 적용되는 경우에는 패를 버려 대삼원을 확정지어준 사람[삼원패중 두 개가 이미 퐁이나 캉으로 공개된 상태에서 나머지 하나를 버렸는데 이것을 울어 대삼원이 확정된 경우]이 대삼원으로 화료한 사람에게 점수를 지불해야 합니다. 쯔모화료했을 경우 론으로 쏘인 것처럼, 다른 사람이 쏘인 경우에는 그 점수의 절반을 대신 지불합니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 국사무쌍&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 467px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99B7D53B5CD1961C0B&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99B7D53B5CD1961C0B&quot; width=&quot;467&quot; height=&quot;260&quot; filename=&quot;국사무쌍.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[&lt;a href=&quot;https://namu.wiki/w/%EC%84%B8%EB%85%B8%EC%98%A4%20%EC%B9%B4%EC%98%A4%EB%A6%AC&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;비기너즈 럭&lt;/a&gt;, 국사무쌍]&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 역만, 멘젠 아닐 경우 성립 안됨. 각 수패의 1, 9와 모든 종류의 자패를 하나씩 모두 보유하고 그중 하나를 추가로 가지고 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;각 수패의 1, 9로 6종, 자패 7종으로 총 13종의 패와 이들 중 하나를 추가로 가지면 성립합니다. 치또이츠와 함께 특수한 형태로 화료 가능한 역입니다. 들어온 패가 1, 9와 자패가 많고 너무 흩어져 있어 다른 역들을 노리기 힘들 것으로 보일 경우 이 역을 노리는 경우가 많습니다.&lt;/p&gt;&lt;p&gt;&amp;nbsp;추가로 저 13종의 패를 모두 하나씩 보유하고 마지막 화료패로 나머지 13종 전부를 대기하는 경우를 국사무쌍 13면팅이라고 하여 특수 대기 형태를 인정하는 룰로 플레이할 경우 더블 역만으로 인정합니다. 단, 이 경우 13종중 하나라도 패를 버렸을 경우 후리텐 상태가 되어 쯔모로밖에 화료하지 못하게 됩니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 구련보등&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/-7su2I_D0y4&quot; width=&quot;560&quot; height=&quot;315&quot; allow=&quot;accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[故 코지마 타케오 프로작사의 구련보등]&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 역만, 멘젠 아닐 경우 인정 안됨. 한 종류의 수패 1112345678999와 같은 종류의 수패 1~9중 하나를 추가로 가지고 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;마작에서 가장 나기 힘든 역이라고 불리는 역입니다. 요약대로 한 종류의 수패만으로 1112345678999 형태에 같은 종류의 수패 중 아무거나 하나를 추가로 가지는 것으로 성립합니다. 멘젠에서만 인정되는데다 안커조차도 인정하지 않고 무조건 위와 같은 모양을 만들어야 합니다.&lt;/p&gt;&lt;p&gt;&amp;nbsp;추가로 1112345678999 모양을 손패에서 만든 후 같은 종류의 수패 1~9중 아무거나 하나를 기다리는 9면 대기가 되는 경우는 순정구련보등이라고 하여 특수 대기 형태를 인정하는 룰로 플레이할 경우 더블 역만으로 인정합니다. 이 경우에도 국사무쌍 13면팅과 마찬가지로 1~9중 하나라도 버렸다면 후리텐에 걸려 쯔모로밖에 화료하지 못하게 됩니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 녹일색&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 역만. 삭수의 2, 3, 4, 6, 8과 삼원패의 발만을 이용하여 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;말 그대로 삭수의 2, 3, 4, 6, 8과 삼원패에서 발만을 이용하여 패를 구성할 경우 성립합니다. 패에 일절 다른 색이 없이 녹색으로만 이루어져 있어 아름다운 역입니다. 멘젠 여부에 관계 없으므로 2, 3, 4를 치로 받아서 구성이 가능합니다.&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 대사희&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 역만, 룰에 따라 더블 역만. 풍패 4종류를 모두 커쯔로 모아서 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;4종류 풍패를 모두 커쯔로 모을 경우 성립합니다. 중간에 하나를 못 모을 경우에는 소사희가 될 수 있습니다. 보통은 대사희를 더블 역만으로, 소사희를 그냥 역만으로 치는 경우가 많습니다. 또한 대삼원과 마찬가지로 책임지불이 적용되며 역 자체의 특성상 자일색과의 중첩이 무척 쉬워 더블, 트리플 역만도 노릴 수 있습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 소사희&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/0G0vECXJ4Ls&quot; width=&quot;560&quot; height=&quot;315&quot; allow=&quot;accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[프로마작에서 등장한 소사희. 대사희는 단 한번도 등장하지 않았다]&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 역만. 풍패 4종류중 3종류를 커쯔로, 1종류를 또이츠로 모아서 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;대사희를 노리다가 하나를 삐끗해서 놓칠 경우 노릴 수 있습니다. (그래도 역만입니다.) 4종류 풍패 중 3종류를 커쯔로, 나머지 하나를 또이츠로 모을 경우 성립하며 대사희와 마찬가지로 자일색을 더해 더블 역만을 노릴 수 있습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 헤아림 역만 (카조에 역만, 판수 역만)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;요약 : 멘젠에 관계없이 역만. 판수의 총합이 13판 이상일 경우.&lt;/p&gt;&lt;p&gt;&amp;nbsp;역만이 아닌 다른 역과 도라들의 조합으로 판수의 총합이 13판 이상을 넘겼을 경우 무조건 역만으로 취급합니다. 단순 또이또이가 도라폭탄으로 헤아림 역만이 되는 경우도 종종 있습니다. 26판을 넘긴다고 해서 더블 역만이 되지는 않습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 천화&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 역만, 멘젠 아닐 경우 성립 안됨. 친이 배패가 끝난 직후 어떤 형태로든 역이 성립되어 화료한 상태.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;하늘이 내린 천지인 1순역 중 '천'을 담당합니다. 친만이 화료 가능하며, 배패가 끝난 직후 이미 역이 성립되어 화료한 상태가 되면 완성된 역의 판수와 관계 없이 바로 역만이 됩니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 지화&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 역만, 멘젠 아닐 경우 성립 안됨. 배패가 끝난 직후 순정 1순 내로 쯔모하여 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;배패 후 친을 제외한 자식들이 순정 1순 내로 쯔모하여 바로 화료할 경우 완성된 역의 판수와 관계 없이 바로 역만이 됩니다.&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 인화&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 만관(역에 관계없이 무조건 만관), 멘젠 아닐 경우 성립 안됨. 배패가 끝난 직후 순정 1순 내로 론화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;배패 후 순정 1순 내로 남이 버린 패로 론화료할 경우 완성된 역의 판수와 관계 없이 만관이 됩니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 삼깡쯔 (산캉츠)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 2판. 혼자서 세 번 캉으로 울기.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;한두번 하기도 힘든 깡을 혼자서 세번 하면 성립되는 역입니다. 난이도에 비해 판수는 작지만 또이또이와 중첩하기 쉽고 깡으로 인해 도라가 많이 늘어나므로 도라폭탄이 터지기 쉬워 잘만 하면 무척 강력해집니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 사공자 (사깡쯔, 스깡쯔)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 역만. 혼자서 네 번 캉으로 울기.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;삼깡쯔의 상위역으로, 혼자서 캉을 네 번 해야 합니다. 본래 캉을 4번 하면 사깡유국이라고 하여 해당 국이 즉시 유국되지만, 혼자서 4번 깡을 칠 경우 이는 역만이 됩니다. 영상개화가 아닌 이상 필연적으로 알몸단기가 됩니다. 구련보등, 대사희와 함께 마작에서 가장 나오지 않는 3대 역으로 불립니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 영상개화&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 467px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/9907163C5CD197532F&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F9907163C5CD197532F&quot; width=&quot;467&quot; height=&quot;260&quot; filename=&quot;영상개화.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[&lt;a href=&quot;https://namu.wiki/w/%EB%AF%B8%EC%95%BC%EB%82%98%EA%B0%80%20%EC%82%AC%ED%82%A4&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;마왕님&lt;/a&gt;이 밥먹듯이 하는 영상개화]&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 1판. 영상패를 쯔모하여 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;캉을 쳐서 가져온 영상패로 화료하면 성립되는 역입니다. 극악의 난이도를 자랑함에도 주는 판수는 1판밖에 되지 않습니다. 괜히 사키 보고 마작 시작해서 영상개화좀 해보겠다고 캉을 막 쳤다간 기껏 만들어둔 역도 날아갈 수 있으니 노리고 치는 것은 자제하는 것이 좋습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 해저로월&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 467px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/9978924F5CD198601B&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F9978924F5CD198601B&quot; width=&quot;467&quot; height=&quot;260&quot; filename=&quot;해저로월.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[&lt;a href=&quot;https://namu.wiki/w/%EC%95%84%EB%A7%88%EC%97%90%20%EC%BD%94%EB%A1%9C%EB%AA%A8&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;로리캐 담당&lt;/a&gt;이&amp;nbsp;밥먹듯이 하는 해저로월]&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 1판. 해저패&lt;sup class=&quot;footnote&quot;&gt;&lt;a href=&quot;#footnote_350_8&quot; id=&quot;footnote_link_350_8&quot; onmouseover=&quot;tistoryFootnote.show(this, 350, 8)&quot; onmouseout=&quot;tistoryFootnote.hide(350, 8)&quot; style=&quot;color:#f9650d; font-family: Verdana, Sans-serif; display: inline;&quot;&gt;&lt;span style=&quot;display: none;&quot;&gt;[각주:&lt;/span&gt;8&lt;span style=&quot;display: none;&quot;&gt;]&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;를 쯔모하여 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;패산의 마지막 패를 쯔모하여 이것으로 화료할 경우 성립되는 역입니다. 한 국에 단 한번밖에 오지 않는 기회인데다 마지막에 패를 뽑는 것이 자신이 아닐 경우 날 수 없어 마찬가지로 잘 나오지 않습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 하저로어&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 1판. 해저패 쯔모 후 버림패를 론하여 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;해저패를 쯔모한 마지막 플레이어가 화료하지 못하고 버린 패로 론화료 할 경우 성립되는 역입니다. 마찬가지로 한 국에 단 한번밖에 오지 않지만 단순 계산상 3명이 대기하고 있으므로 해저로월에 비해서는 3배 더 높은 확률로 나타난다고 생각할 수 있습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 창깡&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 467px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/9956204D5CD1994422&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F9956204D5CD1994422&quot; width=&quot;467&quot; height=&quot;260&quot; filename=&quot;창깡.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[이게 게임이냐]&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠에 관계없이 1판. 타가의 소명깡패로 화료.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;타가가 4개의 패들 중 3개로 퐁을 치고, 남은 하나의 패가 다시 타가에게 들어간 뒤 그것으로 또 캉을 쳤는데 그것이 오름패일 경우 캉을 무효화하고 화료할 수 있습니다. 1판이라고는 생각할 수 없을만큼 극악의 난이도인 역입니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;&amp;nbsp;- 더블리치&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&amp;nbsp;요약 : 멘젠 상태 2판역. 국 시작 후 순정 1순 내로 쯔모 후 리치.&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;적어도 이샹텐으로 시작하고 필요한 패를 순정 1순 내로 쯔모해와야 만들 수 있는 역입니다. 만약 받아온 패가 이미 텐파이였을 경우에는 인화, 지화&amp;nbsp;화료에 실패한 이후 쯔모한 패를 그대로 버리면서 쯔모기리 더블리치도 가능합니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;다음 글에서는 마작의 판수와 부수 계산, 그에 따른 점수 계산법에 대해 알아보겠습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div class=&quot;footnotes&quot;&gt;
  &lt;ol class=&quot;footnotes&quot;&gt;
    &lt;li id=&quot;footnote_350_1&quot;&gt;안깡을 제외한 울기를 하지 않고 쯔모만으로 패를 모은 상태 &lt;a href=&quot;#footnote_link_350_1&quot;&gt;[본문으로]&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;footnote_350_2&quot;&gt;자신의 차례가 지나가고 나서도 풀리지 않는 후리텐. 쯔모로밖에 날 수 없게 된다. &lt;a href=&quot;#footnote_link_350_2&quot;&gt;[본문으로]&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;footnote_350_3&quot;&gt;울어서 만든 탕야오를 역으로 인정할지 여부. 게임 시작 전에 미리 정함. &lt;a href=&quot;#footnote_link_350_3&quot;&gt;[본문으로]&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;footnote_350_4&quot;&gt;리치하지 않고 텐파이 상태를 유지하는 것. &lt;a href=&quot;#footnote_link_350_4&quot;&gt;[본문으로]&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;footnote_350_5&quot;&gt;수패의 1, 9와 자패들 &lt;a href=&quot;#footnote_link_350_5&quot;&gt;[본문으로]&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;footnote_350_6&quot;&gt;수패의 1, 9 &lt;a href=&quot;#footnote_link_350_6&quot;&gt;[본문으로]&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;footnote_350_7&quot;&gt;몸통 4개를 전부 울고 머리만으로 대기하는 경우 &lt;a href=&quot;#footnote_link_350_7&quot;&gt;[본문으로]&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;footnote_350_8&quot;&gt;패산의 마지막 남은 패 &lt;a href=&quot;#footnote_link_350_8&quot;&gt;[본문으로]&lt;/a&gt;&lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;</description>
      <category>Hobby/마작</category>
      <category>마작</category>
      <author>__미니__</author>
      <guid isPermaLink="true">https://5kyc1ad.tistory.com/350</guid>
      <comments>https://5kyc1ad.tistory.com/350#entry350comment</comments>
      <pubDate>Tue, 7 May 2019 23:44:01 +0900</pubDate>
    </item>
    <item>
      <title>리치마작을 해보자 - 3. 게임 진행 방식, 역과 도라의 개념</title>
      <link>https://5kyc1ad.tistory.com/349</link>
      <description>&lt;p style=&quot;text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 14pt;&quot;&gt;리치마작을 해보자 - 3. 게임 진행 방식, 역과 도라의 개념&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://5kyc1ad.tistory.com/348&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;이전 강의 :&amp;nbsp;리치마작을 해보자 - 2. 화료와 울기&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://5kyc1ad.tistory.com/350&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;다음 강의 : 리치마작을 해보자 - 4. 마작의 역 정리&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;이제 구체적으로 마작이 어떻게 진행되는지를 알아볼 차례입니다. 전동작탁을 쓴다면 굳이 직접 패를 섞고 패산을 쌓을 필요가 없겠지만, 일반 작탁이라면 패를 섞고 패산을 쌓고 주사위를 굴리는 모든 작업을 손수 해야 합니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;1. 첫 국 작업&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;이 작업은 전체 게임이 시작하기 전, 가장 처음 한 번만 진행합니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;1-1. 자리 정하기&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 493px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/994B10485CC9569615&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F994B10485CC9569615&quot; width=&quot;493&quot; height=&quot;271&quot; filename=&quot;자리 선정.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[자리 선정]&amp;nbsp;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;동남서북 패를 꺼내서 뒤집고 섞은 후, 한명씩 패를 뒤집어 동가, 남가, 서가, 북가를 정합니다. 여기서 정해진 동가는 &lt;b&gt;좌동&lt;/b&gt;이라고 하여 아직 진짜 친(동가)은 아닙니다. 이후 좌동이 테이블의 원하는 자리에 앉고 그 자리를 기준으로 테이블에 대해 시계 반대 방향으로 동남서북 순서로 앉습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;1-2. 가동, 진동 정하기&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 676px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/9989A74E5CC95EEB28&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F9989A74E5CC95EEB28&quot; width=&quot;676&quot; height=&quot;481&quot; filename=&quot;주사위 자리.png&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[주사위 합에 따라 자리 찾는 법]&lt;sup class=&quot;footnote&quot;&gt;&lt;a href=&quot;#footnote_349_1&quot; id=&quot;footnote_link_349_1&quot; onmouseover=&quot;tistoryFootnote.show(this, 349, 1)&quot; onmouseout=&quot;tistoryFootnote.hide(349, 1)&quot; style=&quot;color:#f9650d; font-family: Verdana, Sans-serif; display: inline;&quot;&gt;&lt;span style=&quot;display: none;&quot;&gt;[각주:&lt;/span&gt;1&lt;span style=&quot;display: none;&quot;&gt;]&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;좌동이 먼저 주사위 두 개를 굴려 해당하는 눈에 있는 사람이 &lt;b&gt;가동(假東)&lt;/b&gt;이 되고, 한번 더 가동이 주사위 두 개를 굴려 나온 눈의 자리에 있는 사람이 &lt;b&gt;진동(眞東)&lt;/b&gt;, 첫 친이 됩니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;2. 패산 쌓고 패 분배하기&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; clear: none; float: none;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: justify; clear: none; float: none;&quot;&gt;&amp;nbsp;&amp;nbsp;패를 모두 뒤집고 무작위로 섞고, 17개의 패를 2겹으로 쌓아 각 플레이어의 앞에 둡니다.&lt;/p&gt;&lt;p style=&quot;text-align: justify; clear: none; float: none;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 760px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99FA9E4A5CCA94E031&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99FA9E4A5CCA94E031&quot; width=&quot;760&quot; height=&quot;428&quot; filename=&quot;작탁.png&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[예 : 주사위 합이 3일 때]&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;친이 된 사람이 주사위를 두개를 굴려 나온 눈의 자리에 있는 사람 앞의 패에서 &lt;b&gt;개문&lt;/b&gt;을 정합니다. 방금 굴린 주사위 눈의 개수만큼 오른쪽에서 패를 분리해 두고, 분리된 왼쪽 패산에서부터 시계방향으로 4개씩 패를 가져갑니다. 이 때 분리된 오른쪽 패산은 주사위 개수에 관계없이 7칸 분리하여 떼어 두어야 하며, 이렇게 분리된 7칸을 &lt;b&gt;왕패&lt;/b&gt;라고 하여 특별한 상황이 아닌 이상은 사용하지 않습니다. (따라서 패를 가져오는 방향은 자연스럽게 시계방향이 됩니다) 그리고 이렇게 분리된 왕패의 왼쪽에서 세번째 패를 뒤집습니다. 이것이 &lt;b&gt;도라표시패&lt;/b&gt;입니다. 패를 가져갈 때는 동가를 기준으로 반시계방향으로 동남서북 순서로 가져갑니다.&amp;nbsp;이것을 3번 반복하여 각자의 손패에 12개의 패가 모이게 되면 이번에는 각자 1개씩 뽑고, 동가는 마지막에 1개를 더 뽑아갑니다. 이러면 동가는 14개, 나머지는 13개씩의 패를 가지게 되며 동가에서 패를 버리면서 게임이 시작됩니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;3. 게임 진행 및 종국&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;3-1. 쯔모 및 타패&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;누군가 울지 않는 한 쯔모하는 순서는 변하지 않으며 동남서북 순서대로 패산에서 패를 하나 가져가고 필요 없는 패를 버리는 것을 반복합니다. 이렇게 패를 버리는 것을 &lt;b&gt;타패&lt;/b&gt;한다고 합니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;3-2. 화료&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;누군가가 화료하는 순간 해당 국은 종료됩니다. 만약 친(부모)이 화료했을 경우에는 다음 국에도 친이 바뀌지 않으며 이를 &lt;b&gt;연장(連莊)&lt;/b&gt;이라고 합니다. 기본적으로 국은 0본장부터 시작하고 연장이 늘어날 때마다 본장수가 늘어납니다. 만약 화료한 것이 자(자식)라면 다음 국으로 넘어가며 친은 남가로 넘어갑니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;3-3. 유국 (流局)&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 493px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/9979AB455CC95B892C&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F9979AB455CC95B892C&quot; width=&quot;493&quot; height=&quot;271&quot; filename=&quot;유국.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[유국]&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;왕패 직전의 패까지 모두 쯔모 후 타패했는데도 아무도 화료하지 못한 경우에도 해당 국은 종료됩니다. 이를 &lt;b&gt;유국&lt;/b&gt;이라고 하며 친이 텐파이 상태일 경우 연장, 노텐 상태일 경우 다음 국으로 넘어갑니다. 하지만 유국일 경우 다음 국의 본장 수는 무조건 1이 늘어납니다. 예를 들어 친이 2연장인 상태에서 노텐파이로 유국했을 경우 친은 넘어가지만 다음 국은 3본장으로 시작합니다. 한 국이 종료되었을 경우 다음 국부터는 '2. 패산 쌓고 패 분배하기'에서부터 다시 진행합니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;3-4. 게임 종료&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 490px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/999A42445CC9677032&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F999A42445CC9677032&quot; width=&quot;490&quot; height=&quot;278&quot; filename=&quot;장풍.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[&lt;a href=&quot;https://namu.wiki/w/%EC%B9%B4%ED%83%80%EC%98%A4%EC%B9%B4%20%EC%9C%A0%ED%82%A4&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;타코스&lt;/a&gt;가 설명해주는 반장전과 동풍전]&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;첫 국이 시작할 때는 '장의 바람'이 동풍이기 때문에 동장이며, 처음에 북가였던 플레이어가 친을 마치고 다음 국으로 넘어가면 '장의 바람'이 바뀌어 남장으로 넘어가게 됩니다. 이렇게 4번 반복하여 연장을 제외하고 총 16게임을 하게 되면 1장으로 게임이 종료되지만, 보통은 이렇게 하면 너무 경기 시간이 오래 걸리기 때문에 동장과 남장까지만 하는 &lt;b&gt;반장전&lt;/b&gt;, 또는 동장만 하는&lt;b&gt; 동풍전(동장전)&lt;/b&gt;을 주로 합니다. 반장전의 경우 남 4국에서, 동풍전의 경우는 동 4국에서 친이 오를 경우 친이 연장을 계속할지 끝낼지를 결정할 수 있으며 자가 오를 경우 무조건 게임이 종료됩니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=&quot;font-size: 11pt;&quot;&gt;4. 역과 도라의 개념&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;4-1. 역&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 434px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99A18D495CC95F8129&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99A18D495CC95F8129&quot; width=&quot;434&quot; height=&quot;47&quot; filename=&quot;탕야오.png&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[대표적인 역 중 하나인 탕야오]&lt;sup class=&quot;footnote&quot;&gt;&lt;a href=&quot;#footnote_349_2&quot; id=&quot;footnote_link_349_2&quot; onmouseover=&quot;tistoryFootnote.show(this, 349, 2)&quot; onmouseout=&quot;tistoryFootnote.hide(349, 2)&quot; style=&quot;color:#f9650d; font-family: Verdana, Sans-serif; display: inline;&quot;&gt;&lt;span style=&quot;display: none;&quot;&gt;[각주:&lt;/span&gt;2&lt;span style=&quot;display: none;&quot;&gt;]&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;역이란 '일정한 조건을 맞춘 패들의 조합'으로, 조건만 맞다면 여러 개의 역을 중첩할 수 있습니다. 역은 화료에 있어 가장 중요한 개념인데 그 이유는 '&lt;span style=&quot;color: rgb(255, 0, 0);&quot;&gt;역이 없으면 화료가 불가능하기 때문&lt;/span&gt;'입니다. 머리 1개, 몸통 4개를 모아 화료할 수 있는 형태를 완성했다고 하더라도 조건을 만족시키는 역이 하나도 없으면 화료할 수 없습니다. 마작에는 수많은 역들이 있기 때문에 이 역들을 외우고 있기만 하다면 역 하나정도는 만들기 어렵지 않지만 개수가 많은 만큼 외우기가 힘들어 마작의 진입장벽이 되고 있습니다. 역에 대한 자세한 내용은 다음 글에서 설명할 예정입니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;4-2. 도라&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 490px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/990FC3455CC969E903&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F990FC3455CC969E903&quot; width=&quot;490&quot; height=&quot;278&quot; filename=&quot;드래곤 로드.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[아치가의 &lt;a href=&quot;https://namu.wiki/w/%EB%A7%88%EC%B8%A0%EB%AF%B8%20%EC%BF%A0%EB%A1%9C&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;드래곤 로드&lt;/a&gt;]&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;도라는 영어 Dragon을 일본식 발음으로 읽은 '도라곤(ドラゴン)'의 앞글자를 따온 것으로, 이것 자체로는 역이 되지 않지만 화료했을 때 많이 가지고 있으면 그만큼 판수가 올라가 얻을 수 있는 점수가 확 늘어납니다.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;'2. 패산 쌓고 패 분배하기'에서 왕패 왼쪽에서 세 번째 패를 뒤집고 이것이&amp;nbsp;'도라표시패'라고 설명했습니다. 헷갈리기 쉽지만&amp;nbsp;&lt;b&gt;도라표시패의 다음 패&lt;/b&gt;가 이번 국의 도라가 됩니다. 예를 들어 도라표시패가 1만이었을 경우&amp;nbsp;2만이 도라이며, 北(북)이 도라표시패일 경우 東(동)이 도라입니다. &lt;a href=&quot;https://5kyc1ad.tistory.com/347&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;첫 번째 강의글&lt;/a&gt;에서 자패의 순서인 '동남서북', '백발중'을 외우는 것이 중요하다고 한 적이 있었을 것입니다. 이런식으로 도라 계산에 사용하기 때문입니다.&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;도라표시패에서 표시된 도라를 제외하고도 도라를 얻는 방법이 몇 가지 더 있습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 490px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99DD7A3B5CC9643C27&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99DD7A3B5CC9643C27&quot; width=&quot;490&quot; height=&quot;278&quot; filename=&quot;깡우라도라.gif&quot; filemime=&quot;image/gif&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[캉 + 우라도라로 점수를 확 불려버리는 &lt;a href=&quot;https://namu.wiki/w/%EC%98%A4%EC%98%A4%ED%98%B8%EC%8B%9C%20%EC%95%84%EC%99%80%EC%9D%B4&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;100학년&lt;/a&gt;]&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;첫 번째는 리치를 걸고 났을 경우입니다. 여기서는 '리치란 텐파이 상태일 때 패를 버리며 선언하는 것' 이라고만 간단히 적어두겠습니다. 리치와 관련된 부분은 다음 글에서 역을 설명하며 함께 살펴보겠습니다. 리치를 걸고 화료할 경우 도라표시패 밑의 패를 뒤집어 도라표시패를 늘릴 수 있습니다. 이렇게 늘어난 도라를&amp;nbsp;&lt;b&gt;뒷도라&lt;/b&gt;, 또는 &lt;b&gt;우라도라&lt;/b&gt;라고 합니다. 원래 2만이 도라표시패였는데 리치를 걸고 화료하여 추가로 도라표시패에 3만이 나왔다면 4만이 우라도라가 되는 것입니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 760px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/9945753A5CC964C02F&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F9945753A5CC964C02F&quot; width=&quot;760&quot; height=&quot;380&quot; filename=&quot;이게 게임이냐.png&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[이게 게임이냐]&lt;sup class=&quot;footnote&quot;&gt;&lt;a href=&quot;#footnote_349_3&quot; id=&quot;footnote_link_349_3&quot; onmouseover=&quot;tistoryFootnote.show(this, 349, 3)&quot; onmouseout=&quot;tistoryFootnote.hide(349, 3)&quot; style=&quot;color:#f9650d; font-family: Verdana, Sans-serif; display: inline;&quot;&gt;&lt;span style=&quot;display: none;&quot;&gt;[각주:&lt;/span&gt;3&lt;span style=&quot;display: none;&quot;&gt;]&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;두 번째는 캉을 칠 경우입니다. &lt;a href=&quot;https://5kyc1ad.tistory.com/348&quot; target=&quot;_blank&quot; class=&quot;tx-link&quot;&gt;두 번째 강의글&lt;/a&gt;에서 캉을 칠 경우 도라표시패 옆의 패를 뒤집어 도라를 늘릴 수 있다고 설명했습니다. 이렇게 늘어난 도라를 &lt;b&gt;캉도라&lt;/b&gt;라고 합니다. 유의할 점은 이렇게 늘어난 캉도라와 위의 우라도라는 중첩이 가능하다는 점입니다. 타가에서 캉을 치거나 본인이 안깡을 쳐서 캉도라가 늘어난 상태에서 리치 화료를 성공시키게 되면 늘어난 캉도라 밑의 패도 도라표시패로 기능하기 때문에 도라가 엄청나게 붙어 점수가 확 늘어날 수 있습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 400px; width: 400px; height: 300px;; height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99C409505CC967FD04&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99C409505CC967FD04&quot; width=&quot;400&quot; height=&quot;300&quot; filename=&quot;아카도라.jpg&quot; filemime=&quot;image/jpeg&quot; style=&quot;width: 400px; height: 300px;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;[아카도라]&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;세 번째는 &lt;b&gt;적도라(아카도라)&lt;/b&gt;입니다. 각 5만, 5삭의 경우 아카도라라고 하는 붉게 칠해진 패가 1매씩, 5통의 경우 2매씩 교체되어 들어갑니다. 즉 일반 5만 3개와 아카도라 5만 1개, 일반 5삭 3개와&amp;nbsp;아카도라 5삭 1개, 일반 5통 2개와 아카도라 5통 2개가 됩니다. 그리고 이 아카도라들은 일반 도라와 완전히 똑같은 기능을 합니다. 화료했을 때 가지고 있으면 그만큼 판수가 늘어나는 것입니다. 이것도 마찬가지로 위의 캉도라, 우라도라와 중첩이 가능합니다. 가능성이 무척이나 희박하지만 예를 들어 5통으로 캉을 쳤는데 기존 도라표시패가 4통, 캉도라표시패도 4통, 우라도라에서도 4통이 나올 경우 도라 3중첩이므로 3 * 4에 아카도라로 2개가 추가로 붙어 14판으로 헤아림 역만 확정이 됩니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;도라를 들고 있으면 자신의 패를 높게 만들기 무척 쉬운 만큼 해당 국의 도라는 잘 버려지지 않고 위험패가 되기 십상입니다. 이에 유의해가면서 도라를 모으고 버리는 섬세함이 필요하겠습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;다음 글에서는 마작의 진입장벽이라고 할 수 있는 역들에 대해 설명하도록 하겠습니다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;div class=&quot;footnotes&quot;&gt;
  &lt;ol class=&quot;footnotes&quot;&gt;
    &lt;li id=&quot;footnote_349_1&quot;&gt;주사위 두 개를 사용하므로 2~12까지의 숫자만이 나올 수 있습니다 &lt;a href=&quot;#footnote_link_349_1&quot;&gt;[본문으로]&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;footnote_349_2&quot;&gt;가장 쉽고 단순한 역 중 하나인 탕야오. 2~8 사이의 수패로만 머리와 몸통을 구성하면 조건을 충족할 수 있다.  &lt;a href=&quot;#footnote_link_349_2&quot;&gt;[본문으로]&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;footnote_349_3&quot;&gt;원래라면 리치 1판뿐이지만 3번의 캉과 우라도라로 추가로 9판이 붙어 10판이라는 거대한 역이 된 모습 &lt;a href=&quot;#footnote_link_349_3&quot;&gt;[본문으로]&lt;/a&gt;&lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;</description>
      <category>Hobby/마작</category>
      <category>마작</category>
      <author>__미니__</author>
      <guid isPermaLink="true">https://5kyc1ad.tistory.com/349</guid>
      <comments>https://5kyc1ad.tistory.com/349#entry349comment</comments>
      <pubDate>Wed, 1 May 2019 18:42:54 +0900</pubDate>
    </item>
  </channel>
</rss>