Function at 0x421db4
Capabilities:
Execute command

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x4cc
call sym._mcount
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
mov eax, dword [ebp + 0x48c]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp + 0x490]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x1c], 1
jmp 0x42244a
mov dword [ebp - 0x20], 1
jmp 0x42243c
mov dword [ebp - 0x24], 1
jmp 0x42242e
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
test eax, eax
jne 0x421e2c
jmp 0x42242a
mov eax, dword [0x496024]
test eax, eax
je 0x421ed0
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov ebx, dword [ebp + eax*4 + 8]
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
mov ecx, 0x48c3c0
call method.std::ostream.operator___int_
sub esp, 4
mov dword [esp + 4], 0x20
mov dword [esp], eax
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_
mov edx, eax
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
mov ecx, edx
call method.std::ostream.operator___int_
sub esp, 4
mov dword [esp + 4], 0x20
mov dword [esp], eax
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_
mov edx, eax
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
mov ecx, edx
call method.std::ostream.operator___int_
sub esp, 4
mov dword [esp + 4], 0x20
mov dword [esp], eax
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_
mov dword [esp], ebx
mov ecx, eax
call method.std::ostream.operator___int_
sub esp, 4
mov dword [esp + 4], 0xa
mov dword [esp], eax
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_
mov eax, dword [ebp - 0x24]
mov dword [esp + 0x48c], eax
mov eax, dword [ebp - 0x20]
mov dword [esp + 0x488], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp + 0x484], eax
mov edx, esp
lea ebx, [ebp + 8]
mov eax, 0x121
mov edi, edx
mov esi, ebx
mov ecx, eax
rep movsd dword es:[edi], dword [esi]
call sym.iszhihuo_Gird__int__int__int_
test al, al
je 0x421f64
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov ecx, dword [ebp + eax*4 + 8]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov ebx, dword [ebp + eax*4 - 0x30]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov edx, dword [ebp + eax*4 - 0x3c]
mov eax, edx
add eax, eax
add eax, edx
add eax, eax
mov edx, dword [ebp - 0x24]
add eax, edx
mov eax, dword [eax*4 + 0x486020]
add eax, ebx
mov dword [ebp + ecx*4 - 0x30], eax
mov eax, dword [ebp - 0x24]
mov dword [esp + 0x48c], eax
mov eax, dword [ebp - 0x20]
mov dword [esp + 0x488], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp + 0x484], eax
mov edx, esp
lea ebx, [ebp + 8]
mov eax, 0x121
mov edi, edx
mov esi, ebx
mov ecx, eax
rep movsd dword es:[edi], dword [esi]
call sym.isxiehuo_Gird__int__int__int_
test al, al
je 0x421ff8
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov ecx, dword [ebp + eax*4 + 8]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov ebx, dword [ebp + eax*4 - 0x30]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov edx, dword [ebp + eax*4 - 0x3c]
mov eax, edx
add eax, eax
add eax, edx
add eax, eax
mov edx, dword [ebp - 0x24]
add eax, edx
mov eax, dword [eax*4 + 0x486060]
add eax, ebx
mov dword [ebp + ecx*4 - 0x30], eax
mov eax, dword [ebp - 0x24]
mov dword [esp + 0x48c], eax
mov eax, dword [ebp - 0x20]
mov dword [esp + 0x488], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp + 0x484], eax
mov edx, esp
lea ebx, [ebp + 8]
mov eax, 0x121
mov edi, edx
mov esi, ebx
mov ecx, eax
rep movsd dword es:[edi], dword [esi]
call sym.iszhichong_Gird__int__int__int_
test al, al
je 0x42208c
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov ecx, dword [ebp + eax*4 + 8]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov ebx, dword [ebp + eax*4 - 0x30]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov edx, dword [ebp + eax*4 - 0x3c]
mov eax, edx
add eax, eax
add eax, edx
add eax, eax
mov edx, dword [ebp - 0x24]
add eax, edx
mov eax, dword [eax*4 + 0x4860a0]
add eax, ebx
mov dword [ebp + ecx*4 - 0x30], eax
mov eax, dword [ebp - 0x24]
mov dword [esp + 0x48c], eax
mov eax, dword [ebp - 0x20]
mov dword [esp + 0x488], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp + 0x484], eax
mov edx, esp
lea ebx, [ebp + 8]
mov eax, 0x121
mov edi, edx
mov esi, ebx
mov ecx, eax
rep movsd dword es:[edi], dword [esi]
call sym.isxiechong_Gird__int__int__int_
test al, al
je 0x422120
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov ecx, dword [ebp + eax*4 + 8]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov ebx, dword [ebp + eax*4 - 0x30]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov edx, dword [ebp + eax*4 - 0x3c]
mov eax, edx
add eax, eax
add eax, edx
add eax, eax
mov edx, dword [ebp - 0x24]
add eax, edx
mov eax, dword [eax*4 + 0x4860e0]
add eax, ebx
mov dword [ebp + ecx*4 - 0x30], eax
mov eax, dword [ebp - 0x24]
mov dword [esp + 0x48c], eax
mov eax, dword [ebp - 0x20]
mov dword [esp + 0x488], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp + 0x484], eax
mov edx, esp
lea ebx, [ebp + 8]
mov eax, 0x121
mov edi, edx
mov esi, ebx
mov ecx, eax
rep movsd dword es:[edi], dword [esi]
call sym.iszhisi_Gird__int__int__int_
test al, al
je 0x4221b4
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov ecx, dword [ebp + eax*4 + 8]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov ebx, dword [ebp + eax*4 - 0x30]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov edx, dword [ebp + eax*4 - 0x3c]
mov eax, edx
add eax, eax
add eax, edx
add eax, eax
mov edx, dword [ebp - 0x24]
add eax, edx
mov eax, dword [eax*4 + 0x486120]
add eax, ebx
mov dword [ebp + ecx*4 - 0x30], eax
mov eax, dword [ebp - 0x24]
mov dword [esp + 0x48c], eax
mov eax, dword [ebp - 0x20]
mov dword [esp + 0x488], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp + 0x484], eax
mov edx, esp
lea ebx, [ebp + 8]
mov eax, 0x121
mov edi, edx
mov esi, ebx
mov ecx, eax
rep movsd dword es:[edi], dword [esi]
call sym.isxiesi_Gird__int__int__int_
test al, al
je 0x422248
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov ecx, dword [ebp + eax*4 + 8]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov ebx, dword [ebp + eax*4 - 0x30]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov edx, dword [ebp + eax*4 - 0x3c]
mov eax, edx
add eax, eax
add eax, edx
add eax, eax
mov edx, dword [ebp - 0x24]
add eax, edx
mov eax, dword [eax*4 + 0x486160]
add eax, ebx
mov dword [ebp + ecx*4 - 0x30], eax
mov eax, dword [ebp - 0x24]
mov dword [esp + 0x48c], eax
mov eax, dword [ebp - 0x20]
mov dword [esp + 0x488], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp + 0x484], eax
mov edx, esp
lea ebx, [ebp + 8]
mov eax, 0x121
mov edi, edx
mov esi, ebx
mov ecx, eax
rep movsd dword es:[edi], dword [esi]
call sym.iszhikong_Gird__int__int__int_
test al, al
je 0x4222dc
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov ecx, dword [ebp + eax*4 + 8]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov ebx, dword [ebp + eax*4 - 0x30]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov edx, dword [ebp + eax*4 - 0x3c]
mov eax, edx
add eax, eax
add eax, edx
add eax, eax
mov edx, dword [ebp - 0x24]
add eax, edx
mov eax, dword [eax*4 + 0x4861a0]
add eax, ebx
mov dword [ebp + ecx*4 - 0x30], eax
mov eax, dword [ebp - 0x24]
mov dword [esp + 0x48c], eax
mov eax, dword [ebp - 0x20]
mov dword [esp + 0x488], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp + 0x484], eax
mov edx, esp
lea ebx, [ebp + 8]
mov eax, 0x121
mov edi, edx
mov esi, ebx
mov ecx, eax
rep movsd dword es:[edi], dword [esi]
call sym.isxiekong_Gird__int__int__int_
test al, al
je 0x422370
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov ecx, dword [ebp + eax*4 + 8]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov ebx, dword [ebp + eax*4 - 0x30]
mov edx, dword [ebp - 0x1c]
mov eax, edx
shl eax, 4
add eax, edx
mov edx, dword [ebp - 0x20]
add eax, edx
mov eax, dword [ebp + eax*4 + 8]
mov edx, dword [ebp + eax*4 - 0x3c]
mov eax, edx
add eax, eax
add eax, edx
add eax, eax
mov edx, dword [ebp - 0x24]
add eax, edx
mov eax, dword [eax*4 + 0x4861e0]
add eax, ebx
mov dword [ebp + ecx*4 - 0x30], eax
mov eax, dword [0x496024]
test eax, eax
je 0x42242a
cmp dword [ebp - 0x24], 2
jg 0x422388
jmp 0x42242a
mov eax, dword [ebp - 0x24]
mov dword [esp + 0x48c], eax
mov eax, dword [ebp - 0x20]
mov dword [esp + 0x488], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp + 0x484], eax
mov edx, esp
lea ebx, [ebp + 8]
mov eax, 0x121
mov edi, edx
mov esi, ebx
mov ecx, eax
rep movsd dword es:[edi], dword [esi]
call sym.iszhikong_Gird__int__int__int_
test al, al
jne 0x4223fa
mov eax, dword [ebp - 0x24]
mov dword [esp + 0x48c], eax
mov eax, dword [ebp - 0x20]
mov dword [esp + 0x488], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp + 0x484], eax
mov edx, esp
lea ebx, [ebp + 8]
mov eax, 0x121
mov edi, edx
mov esi, ebx
mov ecx, eax
rep movsd dword es:[edi], dword [esi]
call sym.isxiekong_Gird__int__int__int_
test al, al
je 0x422401
mov eax, 1
jmp 0x422406
mov eax, 0
test al, al
je 0x42242a
mov dword [esp + 4], str.KONG___n
mov dword [esp], 0x48c3c0
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const_
mov dword [esp], str.pause
call sym._system
add dword [ebp - 0x24], 1
cmp dword [ebp - 0x24], 5
jle 0x421e10
add dword [ebp - 0x20], 1
cmp dword [ebp - 0x20], 0xf
jle 0x421e04
add dword [ebp - 0x1c], 1
cmp dword [ebp - 0x1c], 0xf
jle 0x421df8
lea eax, [ebp - 0x30]
add eax, 8
mov dword [esp + 4], eax
lea eax, [ebp - 0x30]
add eax, 4
mov dword [esp], eax
call fcn.0047f770
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret