Function at 0x4b5ae0
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x7404ad
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x944
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
xor edi, edi
mov esi, ecx
cmp ebx, edi
jne 0x4b5b20
push 0x824
push 0x7a5950
push str.pAction
jmp 0x4b880d
mov eax, dword [ebx]
push 3
mov ecx, ebx
call dword [eax + 0x10]
add eax, 0xffffff37
cmp eax, 0x1c
ja case.0x4b5b37.202
jmp dword [eax*4 + 0x4b88c4]
mov eax, dword [ebp + 0x10]
cmp eax, edi
je 0x4b88ac
mov eax, dword [eax + 0x5e4]
cmp eax, edi
je 0x4b88ac
push eax
push str.cq_lock_clear
lea ecx, [ebp - 0x730]
push str.SELECT_account_id_FROM__s_WHERE_account_id_u_LIMIT_1
push ecx
call fcn.0070258b
mov ecx, dword [0x7fd5f0]
add esp, 0x10
lea eax, [ebp - 0x730]
mov edx, dword [ecx]
push 1
push eax
call dword [edx]
cmp eax, edi
je 0x4b88ac
mov edx, dword [eax]
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
call dword [edx + 4]
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov eax, dword [ebp + 0x10]
cmp eax, edi
je 0x4b88ac
mov eax, dword [eax + 0x5e4]
cmp eax, edi
je 0x4b88ac
push eax
push str.cq_lock_clear
lea eax, [ebp - 0x730]
push str.DELETE_FROM__s_WHERE_account_id_u
push eax
call fcn.0070258b
mov ecx, dword [0x7fd5f0]
add esp, 0x10
lea eax, [ebp - 0x730]
mov edx, dword [ecx]
push edi
push eax
call dword [edx + 8]
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edi, dword [ebp + 0x10]
test edi, edi
je 0x4b88ac
mov edx, dword [ebx]
push 4
mov ecx, ebx
call dword [edx + 0x10]
mov ecx, dword [esi + 0x20]
mov ebx, eax
cmp ecx, 4
jb 0x4b5c4b
mov edx, dword [0x7fd4fc]
mov esi, dword [0x7fd4f8]
sub edx, esi
mov eax, 0x66666667
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp ecx, edx
jb 0x4b5c70
push 0x157
push 0x797a90
push str.CMapGroup::IsValidMapGroupProcessID_idProcess_
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b5c78
lea eax, [ecx + ecx*4]
shl eax, 5
add eax, esi
mov eax, dword [eax + 0x70]
test eax, eax
jne 0x4b5cbc
push 0xdf
push 0x797a90
push str.m_pSynWarMgr
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor ecx, ecx
push ebx
push edi
call fcn.005199c0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
push ebx
mov ecx, eax
push edi
call fcn.005199c0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov ecx, dword [esi + 0x20]
cmp ecx, 4
jb 0x4b5d03
mov edx, dword [0x7fd4fc]
mov esi, dword [0x7fd4f8]
sub edx, esi
mov eax, 0x66666667
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp ecx, edx
jb 0x4b5d28
push 0x157
push 0x797a90
push str.CMapGroup::IsValidMapGroupProcessID_idProcess_
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b5d30
lea eax, [ecx + ecx*4]
shl eax, 5
add eax, esi
mov eax, dword [eax + 0x70]
cmp eax, edi
jne 0x4b5d72
push 0xdf
push 0x797a90
push str.m_pSynWarMgr
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor ecx, ecx
call fcn.00517d00
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov ecx, eax
call fcn.00517d00
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov esi, dword [ebp + 0x10]
cmp esi, edi
je 0x4b88ac
mov ecx, dword [0x7fd604]
cmp ecx, edi
jne 0x4b5dc4
push 0x1be
push 0x797a90
push str.g_pCastleMgr
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor ecx, ecx
push esi
call fcn.00513e70
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov ecx, dword [esi + 0x20]
cmp ecx, 4
jb 0x4b5e08
mov edx, dword [0x7fd4fc]
mov esi, dword [0x7fd4f8]
sub edx, esi
mov eax, 0x66666667
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp ecx, edx
jb 0x4b5e2d
push 0x157
push 0x797a90
push str.CMapGroup::IsValidMapGroupProcessID_idProcess_
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b5e35
lea eax, [ecx + ecx*4]
shl eax, 5
add eax, esi
mov eax, dword [eax + 0x70]
cmp eax, edi
jne 0x4b5e7b
push 0xdf
push 0x797a90
push str.m_pSynWarMgr
push str.CHECKF
push 0x793720
call fcn.00401080
mov edx, dword [ebp + 0x10]
add esp, 0x14
xor ecx, ecx
push edx
call fcn.00517bb0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edx, dword [ebp + 0x10]
mov ecx, eax
push edx
call fcn.00517bb0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov ecx, dword [esi + 0x20]
cmp ecx, 4
jb 0x4b5ec4
mov edx, dword [0x7fd4fc]
mov esi, dword [0x7fd4f8]
sub edx, esi
mov eax, 0x66666667
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp ecx, edx
jb 0x4b5ee9
push 0x157
push 0x797a90
push str.CMapGroup::IsValidMapGroupProcessID_idProcess_
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b5ef1
lea eax, [ecx + ecx*4]
shl eax, 5
add eax, esi
mov eax, dword [eax + 0x70]
cmp eax, edi
jne 0x4b5f38
push 0xdf
push 0x797a90
push str.m_pSynWarMgr
push str.CHECKF
push 0x793720
call fcn.00401080
mov edx, dword [ebp + 0x10]
add esp, 0x14
xor ecx, ecx
push edi
push edx
call fcn.005172d0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edx, dword [ebp + 0x10]
push edi
mov ecx, eax
push edx
call fcn.005172d0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov ecx, dword [ebp + 0x14]
mov dword [ebp + 0xc], edi
cmp ecx, edi
jne 0x4b5f75
push 0x86b
push 0x7a5950
push str.pRole
jmp 0x4b880d
mov eax, dword [ecx]
lea edx, [ebp + 0xc]
push edx
push 0x100040
call dword [eax + 0x114]
test al, al
jne 0x4b5fb0
push 0x86c
push 0x7a5950
push str.pRole__QueryObj_OBJ_NPC__IPP_OF_pNpc__
push str.IF_NOT
push 0x793720
call fcn.00401080
add esp, 0x14
jmp 0x4b88ac
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 8]
lea ecx, [eax + 8]
call dword [edx + 0xa4]
mov ecx, dword [eax + 0x24]
push 4
mov eax, dword [ecx]
call dword [eax + 4]
shr eax, 7
test al, 1
je 0x4b88ac
mov ecx, dword [ebp + 0xc]
push 4
mov ecx, dword [ecx + 0x98]
mov edx, dword [ecx]
call dword [edx + 8]
cmp eax, 0x1a
jne 0x4b88ac
mov ecx, dword [ebp + 0x10]
call fcn.00467cd0
mov ebx, eax
cmp ebx, edi
mov dword [ebp + 0x10], ebx
je 0x4b88ac
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 8]
lea ecx, [eax + 8]
call dword [edx + 0xa4]
mov edi, eax
test edi, edi
je 0x4b88ac
mov ecx, dword [edi + 0x24]
push 0x11
mov eax, dword [ecx]
call dword [eax + 4]
cmp eax, 2
jne 0x4b603a
mov edi, dword [edi + 0x24]
push 6
mov ecx, edi
mov edx, dword [edi]
call dword [edx + 4]
mov edi, eax
jmp 0x4b603c
xor edi, edi
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
cmp edi, eax
jne 0x4b88ac
mov ecx, dword [esi + 0x20]
cmp ecx, 4
jb 0x4b6076
mov edx, dword [0x7fd4fc]
mov esi, dword [0x7fd4f8]
sub edx, esi
mov eax, 0x66666667
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp ecx, edx
jb 0x4b609b
push 0x157
push 0x797a90
push str.CMapGroup::IsValidMapGroupProcessID_idProcess_
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b60a3
lea eax, [ecx + ecx*4]
shl eax, 5
add eax, esi
mov eax, dword [eax + 0x70]
test eax, eax
jne 0x4b60cf
push 0xdf
push 0x797a90
push str.m_pSynWarMgr
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor ecx, ecx
jmp 0x4b60d1
mov ecx, eax
call fcn.00517d00
test al, al
jne 0x4b88ac
mov ecx, dword [ebp + 0xc]
push 1
add ecx, 8
mov edx, dword [ecx]
call dword [edx + 0x44]
test eax, eax
jbe 0x4b88ac
mov edi, dword [ebp + 0xc]
push 1
mov edx, dword [edi + 8]
lea eax, [edi + 8]
add edi, 8
mov dword [ebp + 0x14], eax
mov ecx, edi
call dword [edx + 0x44]
mov esi, eax
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x40]
sub esi, eax
test esi, esi
mov dword [ebp + 0x1c], esi
jle 0x4b7ffe
mov ecx, dword [ebp + 0xc]
mov ecx, dword [ecx + 0x98]
test ecx, ecx
jne 0x4b6156
push 0x19c
push 0x797d04
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
mov dword [ebp + 0x14], 0
jmp 0x4b6160
mov edx, dword [ecx]
push 0x14
call dword [edx + 8]
mov dword [ebp + 0x14], eax
mov eax, dword [ebp + 0xc]
push 1
fild dword [ebp + 0x14]
mov edx, dword [eax + 8]
lea ecx, [eax + 8]
fstp qword [ebp - 0x1c]
call dword [edx + 0x44]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0
fild qword [ebp - 0x14]
fdivr qword [ebp - 0x1c]
fimul dword [ebp + 0x1c]
call fcn.00702d1c
mov ebx, eax
mov eax, dword [ebp + 0x10]
mov edi, edx
mov ecx, dword [eax + 0x28]
test ecx, ecx
jne 0x4b61c1
push 0xf4
push 0x79b9c4
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
xor edx, edx
jmp 0x4b61c8
mov edx, dword [ecx]
push 7
call dword [edx + 0x18]
cmp edx, edi
jg 0x4b61da
jl 0x4b88ac
cmp eax, ebx
jb 0x4b88ac
mov ecx, dword [ebp + 0x10]
push 0
neg ebx
adc edi, 0
neg edi
push edi
push ebx
call fcn.00492530
mov ecx, dword [ebp + 0x10]
push 1
call fcn.00496320
mov eax, dword [ebp + 0xc]
push 2
mov edi, dword [eax + 8]
lea ecx, [eax + 8]
mov eax, esi
cdq
push edx
push eax
push 0
call dword [edi + 0x138]
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edx, dword [ebx]
push 4
mov ecx, ebx
call dword [edx + 0x10]
mov dword [ebp + 0x14], eax
or ecx, 0xffffffff
mov edi, 0x7e5328
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [ebp - 0x230]
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [ebp - 0x130]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x7e5328
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [ebp - 0x330]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x7e5328
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [ebp + 0xc]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 0xff
jg 0x4b8571
mov edi, dword [ebp + 0xc]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [ebp - 0x850]
mov eax, ecx
mov esi, edi
mov edi, edx
push 0x797318
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x850]
xor edi, edi
push ecx
xor esi, esi
call fcn.00704caf
add esp, 8
test eax, eax
je 0x4b8571
inc esi
cmp esi, 0x3e8
jg 0x4b6324
push 0x797318
push 0
inc edi
call fcn.00704caf
add esp, 8
test eax, eax
jne 0x4b6305
jmp 0x4b634e
mov edx, str.DEAD_LOCK_BREAK
test edx, edx
je 0x4b634e
push 0x8c2
push 0x7a5950
push str.__DEAD_LOCK_BREAK_
push str.ASSERT
push 0x793720
call fcn.00401080
add esp, 0x14
test edi, edi
je 0x4b8571
mov eax, edi
mov ecx, 3
cdq
idiv ecx
test edx, edx
jne 0x4b8571
mov edi, dword [ebp + 0xc]
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x950]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x797318
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x950]
push ecx
call fcn.00704caf
mov edi, eax
add esp, 8
xor ebx, ebx
mov byte [ebp + 0xf], 1
test edi, edi
je 0x4b6800
inc ebx
cmp ebx, 0x3e8
mov dword [ebp + 8], ebx
jg 0x4b67d6
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [ebp - 0x230]
mov eax, ecx
mov esi, edi
mov edi, edx
push 0x797318
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00704caf
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x130]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x797318
mov eax, ecx
mov esi, edi
mov edi, edx
push 0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00704caf
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x330]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x797318
mov eax, ecx
mov esi, edi
mov edi, edx
push 0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00704caf
mov edi, eax
add esp, 0x18
mov dword [ebp + 0x1c], edi
mov esi, 0x7e5328
lea eax, [ebp - 0x230]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x4b648a
test cl, cl
je 0x4b6486
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x4b648a
add eax, 2
add esi, 2
test cl, cl
jne 0x4b6466
xor eax, eax
jmp 0x4b648f
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4b67b8
mov esi, 0x7e5328
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x4b64c6
test cl, cl
je 0x4b64c2
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x4b64c6
add eax, 2
add esi, 2
test cl, cl
jne 0x4b64a2
xor eax, eax
jmp 0x4b64cb
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4b67b8
mov esi, 0x7e5328
lea eax, [ebp - 0x330]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x4b6502
test cl, cl
je 0x4b64fe
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x4b6502
add eax, 2
add esi, 2
test cl, cl
jne 0x4b64de
xor eax, eax
jmp 0x4b6507
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4b67b8
lea eax, [ebp - 0x330]
push eax
call fcn.00703ee0
lea ecx, [ebp - 0x230]
push str.booklevel
push ecx
mov ebx, eax
call fcn.00712ce0
add esp, 0xc
test eax, eax
jne 0x4b6733
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 8]
lea ecx, [edx + 8]
call dword [eax + 0x2d4]
mov ecx, eax
test ecx, ecx
je 0x4b88ac
mov eax, 0xcccccccd
mov esi, 0x64
mul dword [ebp + 0x14]
mov eax, edx
xor edx, edx
shr eax, 3
div esi
add edx, 0x1f4
push edx
call fcn.00613f80
test eax, eax
je 0x4b88ac
mov edx, dword [eax]
push 3
mov ecx, eax
call dword [edx + 0x10]
mov edi, eax
mov esi, 0x7a65b4
lea ecx, [ebp - 0x130]
mov al, byte [ecx]
mov dl, al
cmp al, byte [esi]
jne 0x4b65b6
test dl, dl
je 0x4b65b2
mov al, byte [ecx + 1]
mov dl, al
cmp al, byte [esi + 1]
jne 0x4b65b6
add ecx, 2
add esi, 2
test dl, dl
jne 0x4b6592
xor ecx, ecx
jmp 0x4b65bb
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x4b65d0
cmp edi, ebx
jne 0x4b672f
and byte [ebp + 0xf], 1
jmp 0x4b6733
mov esi, 0x7a65b0
lea ecx, [ebp - 0x130]
mov al, byte [ecx]
mov dl, al
cmp al, byte [esi]
jne 0x4b65ff
test dl, dl
je 0x4b65fb
mov al, byte [ecx + 1]
mov dl, al
cmp al, byte [esi + 1]
jne 0x4b65ff
add ecx, 2
add esi, 2
test dl, dl
jne 0x4b65db
xor ecx, ecx
jmp 0x4b6604
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x4b6619
cmp edi, ebx
jle 0x4b672f
and byte [ebp + 0xf], 1
jmp 0x4b6733
mov esi, 0x7a65ac
lea ecx, [ebp - 0x130]
mov al, byte [ecx]
mov dl, al
cmp al, byte [esi]
jne 0x4b6648
test dl, dl
je 0x4b6644
mov al, byte [ecx + 1]
mov dl, al
cmp al, byte [esi + 1]
jne 0x4b6648
add ecx, 2
add esi, 2
test dl, dl
jne 0x4b6624
xor ecx, ecx
jmp 0x4b664d
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x4b6662
cmp edi, ebx
jl 0x4b672f
and byte [ebp + 0xf], 1
jmp 0x4b6733
mov esi, 0x7a65a8
lea ecx, [ebp - 0x130]
mov al, byte [ecx]
mov dl, al
cmp al, byte [esi]
jne 0x4b6691
test dl, dl
je 0x4b668d
mov al, byte [ecx + 1]
mov dl, al
cmp al, byte [esi + 1]
jne 0x4b6691
add ecx, 2
add esi, 2
test dl, dl
jne 0x4b666d
xor ecx, ecx
jmp 0x4b6696
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x4b66ab
cmp edi, ebx
jge 0x4b672f
and byte [ebp + 0xf], 1
jmp 0x4b6733
mov esi, 0x7a65a4
lea ecx, [ebp - 0x130]
mov al, byte [ecx]
mov dl, al
cmp al, byte [esi]
jne 0x4b66da
test dl, dl
je 0x4b66d6
mov al, byte [ecx + 1]
mov dl, al
cmp al, byte [esi + 1]
jne 0x4b66da
add ecx, 2
add esi, 2
test dl, dl
jne 0x4b66b6
xor ecx, ecx
jmp 0x4b66df
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x4b66ed
cmp edi, ebx
jg 0x4b672f
and byte [ebp + 0xf], 1
jmp 0x4b6733
mov esi, 0x7a65a0
lea ecx, [ebp - 0x130]
mov al, byte [ecx]
mov dl, al
cmp al, byte [esi]
jne 0x4b671c
test dl, dl
je 0x4b6718
mov al, byte [ecx + 1]
mov dl, al
cmp al, byte [esi + 1]
jne 0x4b671c
add ecx, 2
add esi, 2
test dl, dl
jne 0x4b66f8
xor ecx, ecx
jmp 0x4b6721
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x4b672f
cmp edi, ebx
je 0x4b672f
and byte [ebp + 0xf], 1
jmp 0x4b6733
mov byte [ebp + 0xf], 0
mov edi, 0x7e5328
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x230]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [ebp - 0x130]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x7e5328
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [ebp - 0x330]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x7e5328
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov al, byte [ebp + 0xf]
and ecx, 3
test al, al
rep movsb byte es:[edi], byte [esi]
je 0x4b6800
mov edi, dword [ebp + 0x1c]
mov ebx, dword [ebp + 8]
test edi, edi
jne 0x4b63b2
mov al, byte [ebp + 0xf]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov ecx, str.DEAD_LOCK_BREAK
test ecx, ecx
je 0x4b6800
push 0x8d2
push 0x7a5950
push str.__DEAD_LOCK_BREAK_
push str.ASSERT
push 0x793720
call fcn.00401080
add esp, 0x14
mov al, byte [ebp + 0xf]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov esi, dword [ebp + 0x10]
mov eax, dword [esi + 0x304]
cmp eax, edi
je 0x4b88ac
mov ecx, dword [eax + 8]
cmp ecx, edi
je 0x4b88ac
mov eax, dword [ecx]
push 1
call dword [eax + 8]
cmp eax, edi
je 0x4b88ac
mov ecx, dword [0x7fd5a8]
cmp ecx, edi
jne 0x4b686e
push 0x1bc
push 0x797a90
push str.g_pFamilyMgr
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor ecx, ecx
push esi
call fcn.0053f830
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
lea ecx, [ebp + 8]
lea edx, [ebp + 0xc]
push ecx
mov ecx, dword [ebp + 0xc]
lea eax, [ebp + 0x14]
push edx
push eax
push str._d__d__d
push ecx
call fcn.00704547
add esp, 0x14
cmp eax, 3
jl 0x4b8571
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx + 0x304]
cmp eax, edi
je 0x4b68d0
mov ecx, dword [eax + 8]
cmp ecx, edi
je 0x4b68d0
mov eax, dword [ecx]
push 1
call dword [eax + 8]
cmp eax, edi
jne 0x4b88ac
mov esi, dword [0x7fd5a8]
cmp esi, edi
jne 0x4b68fd
push 0x1bc
push 0x797a90
push str.g_pFamilyMgr
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor esi, esi
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 4]
push eax
mov ecx, esi
call fcn.0053fa70
test eax, eax
jle 0x4b692a
mov ecx, dword [ebx + 8]
lea eax, [ebx + 8]
push 0x7a6550
push eax
call dword [ecx + 0x1b4]
add esp, 8
jmp 0x4b88ac
mov esi, dword [ebp + 0x1c]
cmp esi, edi
je 0x4b88ac
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 2
jb 0x4b6a01
mov edi, esi
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 0x10
jae 0x4b6a01
push esi
call fcn.0040b030
add esp, 4
test al, al
je 0x4b6a01
mov ecx, dword [0x7fd5a8]
test ecx, ecx
jne 0x4b699b
push 0x1bc
push 0x797a90
push str.g_pFamilyMgr
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor ecx, ecx
push esi
call fcn.0053f4a0
test al, al
jne 0x4b88ac
mov ecx, dword [0x7fd5a8]
test ecx, ecx
jne 0x4b69d6
push 0x1bc
push 0x797a90
push str.g_pFamilyMgr
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor ecx, ecx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 8]
push eax
push edx
push esi
push ebx
call fcn.0053f4c0
test eax, eax
pop edi
pop esi
setne al
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov ecx, dword [ebx + 8]
lea eax, [ebx + 8]
push 0x7a6540
push eax
call dword [ecx + 0x1b4]
add esp, 8
jmp 0x4b88ac
mov ebx, dword [ebp + 0x14]
mov dword [ebp + 0x1c], edi
cmp ebx, edi
jne 0x4b6a39
push 0x956
push 0x7a5950
push str.pRole
jmp 0x4b880d
mov edi, dword [ebp + 0x10]
mov edx, dword [edi + 8]
lea esi, [edi + 8]
mov ecx, esi
call dword [edx + 0xa4]
mov ecx, dword [eax + 0x24]
push 4
mov eax, dword [ecx]
call dword [eax + 4]
shr eax, 7
and al, 1
mov byte [ebp + 0xf], al
je 0x4b88ac
mov edx, dword [ebx]
lea eax, [ebp + 0x1c]
push eax
push 0x100040
mov ecx, ebx
call dword [edx + 0x114]
test al, al
jne 0x4b6a9f
push 0x95b
push 0x7a5950
push str.pRole__QueryObj_OBJ_NPC__IPP_OF_pNpc__
push str.IF_NOT
push 0x793720
call fcn.00401080
add esp, 0x14
jmp 0x4b88ac
mov ecx, dword [ebp + 0x1c]
add ecx, 8
mov edx, dword [ecx]
call dword [edx + 0xa8]
mov ebx, eax
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xa8]
cmp ebx, eax
jne 0x4b88ac
mov ecx, dword [ebp + 0x1c]
mov ecx, dword [ecx + 0x98]
test ecx, ecx
jne 0x4b6af8
push 0x19c
push 0x797d04
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
mov dword [ebp + 0x14], 0
jmp 0x4b6b13
mov edx, dword [ecx]
push 0x14
call dword [edx + 8]
test eax, eax
mov dword [ebp + 0x14], eax
jl 0x4b88ac
cmp eax, 5
jge 0x4b88ac
mov eax, dword [ebp + 0x1c]
mov ecx, dword [eax + 0x98]
test ecx, ecx
jne 0x4b6b45
push 0x19c
push 0x797d04
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor ebx, ebx
jmp 0x4b6b4e
mov edx, dword [ecx]
push 0x15
call dword [edx + 8]
mov ebx, eax
push ebx
lea eax, [ebp - 0x24]
push 0x7977a8
push eax
call fcn.0070258b
add esp, 0xc
mov ecx, edi
call fcn.0045ab60
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0xa8]
mov ecx, dword [edi + 0x2f0]
test ecx, ecx
jne 0x4b6b9e
push 0x77c
push 0x79bd40
push str.m_pSyn
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor ecx, ecx
call fcn.0057cad0
mov ecx, dword [ebp + 0x10]
mov edi, eax
call fcn.00467cd0
mov ecx, dword [eax + 0x28]
test ecx, ecx
jne 0x4b6bd9
push 0xf1
push 0x79b9c4
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b6be5
mov eax, dword [ecx]
push 0x15
call dword [eax + 8]
cmp eax, 0x3c
je 0x4b6c12
cmp edi, 3
je 0x4b6c12
cmp edi, 4
je 0x4b6c12
cmp eax, 0x50
je 0x4b6c0b
cmp edi, 5
je 0x4b6c0b
xor ecx, ecx
cmp eax, 0x3e8
setne cl
dec ecx
and ecx, 3
mov eax, ecx
jmp 0x4b6c17
mov eax, 2
jmp 0x4b6c17
mov eax, 1
test ebx, ebx
je 0x4b6c32
mov dl, byte [ebp + eax - 0x24]
lea eax, [ebp + 0xf]
dec dl
push eax
mov byte [ebp + 0xf], dl
call fcn.00703ee0
add esp, 4
mov ebx, eax
mov ecx, dword [ebp + 0x14]
lea edx, [ebp - 0x14]
push ecx
push ebx
push str.137_d_d0
push edx
call fcn.0070258b
lea eax, [ebp - 0x14]
push eax
call fcn.00703ee0
mov edi, dword [ebp + 0x10]
add esp, 0x14
mov ecx, edi
push eax
call fcn.0046bfb0
lea ecx, [ebp - 0x750]
call fcn.005ada30
mov edx, dword [esi]
mov ecx, esi
mov dword [ebp - 4], 1
call dword [edx + 0x88]
cdq
push edx
push eax
mov eax, dword [edi]
push 0x26
mov ecx, edi
call dword [eax + 4]
push eax
lea ecx, [ebp - 0x750]
call fcn.005adad0
test eax, eax
je 0x4b6ca5
mov edx, dword [esi]
lea eax, [ebp - 0x750]
push eax
mov ecx, esi
call dword [edx + 0x1b0]
lea ecx, [ebp - 0x750]
mov dword [ebp - 4], 0xffffffff
call fcn.005adac0
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov esi, dword [ebp + 0x14]
mov dword [ebp + 0xc], edi
cmp esi, edi
jne 0x4b6cea
push 0x992
push 0x7a5950
push str.pRole
jmp 0x4b880d
mov ebx, dword [ebp + 0x10]
mov edx, dword [ebx + 8]
lea edi, [ebx + 8]
mov ecx, edi
call dword [edx + 0xa4]
mov ecx, dword [eax + 0x24]
push 4
mov eax, dword [ecx]
call dword [eax + 4]
shr eax, 7
and al, 1
mov byte [ebp + 0x13], al
je 0x4b88ac
mov edx, dword [esi]
lea eax, [ebp + 0xc]
push eax
push 0x100040
mov ecx, esi
call dword [edx + 0x114]
test al, al
jne 0x4b6d50
push 0x996
push 0x7a5950
push str.pRole__QueryObj_OBJ_NPC__IPP_OF_pNpc__
push str.IF_NOT
push 0x793720
call fcn.00401080
add esp, 0x14
jmp 0x4b88ac
push 0
mov ecx, ebx
call fcn.0046bfb0
lea ecx, [ebp - 0x750]
call fcn.005ada30
mov edx, dword [edi]
mov ecx, edi
mov dword [ebp - 4], 2
call dword [edx + 0x88]
cdq
push edx
push eax
mov eax, dword [ebx]
push 0x26
mov ecx, ebx
call dword [eax + 4]
push eax
lea ecx, [ebp - 0x750]
call fcn.005adad0
test eax, eax
je 0x4b6da2
mov edx, dword [edi]
lea eax, [ebp - 0x750]
push eax
mov ecx, edi
call dword [edx + 0x1b0]
lea ecx, [ebp - 0x750]
mov dword [ebp - 4], 0xffffffff
call fcn.005adac0
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
lea ecx, [ebp + 8]
lea edx, [ebp - 0x330]
push ecx
lea eax, [ebp - 0x130]
push edx
mov edx, dword [ebp + 0xc]
lea ecx, [ebp - 0x230]
push eax
push ecx
push str._s__s__s__u
push edx
mov dword [ebp + 8], edi
call fcn.00704547
add esp, 0x18
cmp eax, 3
jge 0x4b6e15
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0xc]
push eax
push 0x7a5cb0
call fcn.00401080
add esp, 8
jmp 0x4b88ac
lea ecx, [ebp - 0x330]
push ecx
call fcn.00703ee0
mov esi, eax
mov eax, dword [ebp + 8]
add esp, 4
cmp eax, edi
mov dword [ebp + 0xc], esi
mov dword [ebp + 0x10], edi
je 0x4b6e44
mov ecx, dword [0x7fd5e0]
push eax
mov edx, dword [ecx]
call dword [edx + 0x18]
mov dword [ebp + 0x10], eax
jmp 0x4b6e70
mov ecx, dword [ebp + 0x14]
cmp ecx, edi
jne 0x4b6e5f
push 0x9bb
push 0x7a5950
push str.pRole
jmp 0x4b880d
mov eax, dword [ecx]
lea edx, [ebp + 0x10]
push edx
push 0x100040
call dword [eax + 0x114]
cmp dword [ebp + 0x10], edi
jne 0x4b6eb1
push 0x9be
push 0x7a5950
push str.pNpc
push str.IF_NOT
push 0x793720
call fcn.00401080
mov eax, dword [ebx]
add esp, 0x14
mov ecx, ebx
call dword [eax + 0xc]
mov ecx, dword [ebp + 8]
push eax
push ecx
push str.Cant_find_npc_id__u__in_action__u_.
call fcn.00401080
jmp 0x4b88a9
lea edx, [ebp - 0x230]
push str.ownerid
push edx
call fcn.00712ce0
add esp, 8
test eax, eax
jne 0x4b6fdd
mov edi, 0x7977b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b6f00
test cl, cl
je 0x4b6efc
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b6f00
add eax, 2
add edi, 2
test cl, cl
jne 0x4b6ed8
xor eax, eax
jmp 0x4b6f05
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b6f47
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
je 0x4b6f3d
mov dl, byte [eax + 0x9c]
test dl, dl
je 0x4b6f3d
mov eax, dword [ecx]
push esi
push 1
call dword [eax + 0x10]
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
push 0x1a0
jmp 0x4b7fe2
mov edi, 0x7a65b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b6f7a
test cl, cl
je 0x4b6f76
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b6f7a
add eax, 2
add edi, 2
test cl, cl
jne 0x4b6f52
xor eax, eax
jmp 0x4b6f7f
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b88ac
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
jne 0x4b6fb9
push 0x199
push 0x797d04
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b6fc0
mov edx, dword [ecx]
push 1
call dword [edx + 8]
cmp eax, esi
jne 0x4b88ac
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
lea eax, [ebp - 0x230]
push str.ownertype
push eax
call fcn.00712ce0
add esp, 8
test eax, eax
jne 0x4b7107
mov edi, 0x7977b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b702c
test cl, cl
je 0x4b7028
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b702c
add eax, 2
add edi, 2
test cl, cl
jne 0x4b7004
xor eax, eax
jmp 0x4b7031
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b7071
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
je 0x4b6f3d
mov dl, byte [eax + 0x9c]
test dl, dl
je 0x4b6f3d
mov eax, dword [ecx]
push esi
push 2
call dword [eax + 0x10]
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edi, 0x7a65b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b70a4
test cl, cl
je 0x4b70a0
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b70a4
add eax, 2
add edi, 2
test cl, cl
jne 0x4b707c
xor eax, eax
jmp 0x4b70a9
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b88ac
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
jne 0x4b70e3
push 0x199
push 0x797d04
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b70ea
mov edx, dword [ecx]
push 2
call dword [edx + 8]
cmp eax, esi
jne 0x4b88ac
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
lea eax, [ebp - 0x230]
push str.lookface
push eax
call fcn.00712ce0
add esp, 8
test eax, eax
jne 0x4b72ce
mov edi, 0x7977b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b7156
test cl, cl
je 0x4b7152
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b7156
add eax, 2
add edi, 2
test cl, cl
jne 0x4b712e
xor eax, eax
jmp 0x4b715b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b7238
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
je 0x4b7184
mov dl, byte [eax + 0x9c]
test dl, dl
je 0x4b7184
mov eax, dword [ecx]
push esi
push 5
call dword [eax + 0x10]
jmp 0x4b71a5
push 0x1a0
push 0x797d04
push str.m_pData__IsDynaNpc__
push str.CHECK
push 0x793720
call fcn.00401080
add esp, 0x14
lea ecx, [ebp - 0x750]
call fcn.005ada30
mov ecx, dword [ebp + 0x10]
mov eax, esi
cdq
push edx
mov edx, dword [ecx]
push eax
push 0xc
mov dword [ebp - 4], 3
call dword [edx + 4]
push eax
lea ecx, [ebp - 0x750]
call fcn.005adad0
test eax, eax
jne 0x4b71f9
push 0x9e5
push 0x7a5950
push str.msg.Create_pNpc__GetID_____USERATTRIB_LOOKFACE__nData_
push str.IF_OK
push 0x793720
call fcn.00401080
add esp, 0x14
jmp 0x4b7211
mov eax, dword [ebp + 0x10]
push 0
mov edx, dword [eax + 8]
lea ecx, [eax + 8]
lea eax, [ebp - 0x750]
push eax
call dword [edx + 0x1ac]
lea ecx, [ebp - 0x750]
mov dword [ebp - 4], 0xffffffff
call fcn.005adac0
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edi, 0x7a65b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b726b
test cl, cl
je 0x4b7267
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b726b
add eax, 2
add edi, 2
test cl, cl
jne 0x4b7243
xor eax, eax
jmp 0x4b7270
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b88ac
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
jne 0x4b72aa
push 0x199
push 0x797d04
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b72b1
mov edx, dword [ecx]
push 5
call dword [edx + 8]
cmp eax, esi
jne 0x4b88ac
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
lea eax, [ebp - 0x230]
push str.datastr
push eax
call fcn.00712ce0
add esp, 8
test eax, eax
jne 0x4b73e5
mov edi, 0x7977b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b731d
test cl, cl
je 0x4b7319
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b731d
add eax, 2
add edi, 2
test cl, cl
jne 0x4b72f5
xor eax, eax
jmp 0x4b7322
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b734f
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
je 0x4b6f3d
mov dl, byte [eax + 0x9c]
test dl, dl
je 0x4b6f3d
mov eax, dword [ecx]
push esi
push 0x18
jmp 0x4b6f25
mov edi, 0x7a65b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b7382
test cl, cl
je 0x4b737e
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b7382
add eax, 2
add edi, 2
test cl, cl
jne 0x4b735a
xor eax, eax
jmp 0x4b7387
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b88ac
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
jne 0x4b73c1
push 0x199
push 0x797d04
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b73c8
mov edx, dword [ecx]
push 0x18
call dword [edx + 8]
cmp eax, esi
jne 0x4b88ac
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
push 4
lea eax, [ebp - 0x230]
push str.data
push eax
call fcn.00716780
add esp, 0xc
test eax, eax
jne 0x4b7929
lea ecx, [ebp - 0x330]
push 0x7a64ac
push ecx
call fcn.00712ce0
add esp, 8
test eax, eax
jne 0x4b742a
mov edx, dword [ebp + 0x1c]
push edx
call fcn.00703e55
add esp, 4
mov dword [ebp + 0xc], eax
movsx esi, byte [ebp - 0x22c]
sub esi, 0x30
js 0x4b88ac
cmp esi, 4
jge 0x4b88ac
mov edi, 0x7977b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b7476
test cl, cl
je 0x4b7472
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b7476
add eax, 2
add edi, 2
test cl, cl
jne 0x4b744e
xor eax, eax
jmp 0x4b747b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b74c0
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
je 0x4b7fdd
mov dl, byte [eax + 0x9c]
test dl, dl
je 0x4b7fdd
mov edx, dword [ebp + 0xc]
mov eax, dword [ecx]
add esi, 0x14
push edx
push esi
call dword [eax + 0x10]
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edi, 0x7a64a8
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b74f3
test cl, cl
je 0x4b74ef
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b74f3
add eax, 2
add edi, 2
test cl, cl
jne 0x4b74cb
xor eax, eax
jmp 0x4b74f8
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b757a
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
jne 0x4b752e
push 0x19c
push 0x797d04
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b7537
mov edx, dword [ecx]
lea eax, [esi + 0x14]
push eax
call dword [edx + 8]
mov edx, dword [ebp + 0x10]
mov ecx, dword [edx + 0x98]
test ecx, ecx
je 0x4b7fdd
mov bl, byte [edx + 0x9c]
test bl, bl
je 0x4b7fdd
mov edi, dword [ebp + 0xc]
mov edx, dword [ecx]
add edi, eax
add esi, 0x14
push edi
push esi
call dword [edx + 0x10]
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edi, 0x7a65b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b75ad
test cl, cl
je 0x4b75a9
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b75ad
add eax, 2
add edi, 2
test cl, cl
jne 0x4b7585
xor eax, eax
jmp 0x4b75b2
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b760f
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
jne 0x4b75e8
push 0x19c
push 0x797d04
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b75f1
mov edx, dword [ecx]
add esi, 0x14
push esi
call dword [edx + 8]
cmp eax, dword [ebp + 0xc]
jne 0x4b88ac
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edi, 0x7a65a8
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b7642
test cl, cl
je 0x4b763e
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b7642
add eax, 2
add edi, 2
test cl, cl
jne 0x4b761a
xor eax, eax
jmp 0x4b7647
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b76a4
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
jne 0x4b767d
push 0x19c
push 0x797d04
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b7686
mov edx, dword [ecx]
add esi, 0x14
push esi
call dword [edx + 8]
cmp eax, dword [ebp + 0xc]
jge 0x4b88ac
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edi, 0x7a65a4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b76d7
test cl, cl
je 0x4b76d3
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b76d7
add eax, 2
add edi, 2
test cl, cl
jne 0x4b76af
xor eax, eax
jmp 0x4b76dc
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b7739
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
jne 0x4b7712
push 0x19c
push 0x797d04
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b771b
mov edx, dword [ecx]
add esi, 0x14
push esi
call dword [edx + 8]
cmp eax, dword [ebp + 0xc]
jg 0x4b88ac
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edi, 0x7a65b0
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b776c
test cl, cl
je 0x4b7768
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b776c
add eax, 2
add edi, 2
test cl, cl
jne 0x4b7744
xor eax, eax
jmp 0x4b7771
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b77ce
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
jne 0x4b77a7
push 0x19c
push 0x797d04
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b77b0
mov edx, dword [ecx]
add esi, 0x14
push esi
call dword [edx + 8]
cmp eax, dword [ebp + 0xc]
jle 0x4b88ac
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edi, 0x7a65ac
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b7801
test cl, cl
je 0x4b77fd
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b7801
add eax, 2
add edi, 2
test cl, cl
jne 0x4b77d9
xor eax, eax
jmp 0x4b7806
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b7863
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
jne 0x4b783c
push 0x19c
push 0x797d04
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b7845
mov edx, dword [ecx]
add esi, 0x14
push esi
call dword [edx + 8]
cmp eax, dword [ebp + 0xc]
jl 0x4b88ac
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edi, 0x7a64a0
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b7896
test cl, cl
je 0x4b7892
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b7896
add eax, 2
add edi, 2
test cl, cl
jne 0x4b786e
xor eax, eax
jmp 0x4b789b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b88ac
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
jne 0x4b78d5
push 0x19c
push 0x797d04
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
jmp 0x4b78de
mov edx, dword [ecx]
lea eax, [esi + 0x14]
push eax
call dword [edx + 8]
mov ecx, dword [ebp + 0xc]
push ecx
push eax
call fcn.00409ea0
mov edx, dword [ebp + 0x10]
add esp, 8
mov ecx, dword [edx + 0x98]
test ecx, ecx
je 0x4b7fdd
mov bl, byte [edx + 0x9c]
test bl, bl
je 0x4b7fdd
mov edx, dword [ecx]
add esi, 0x14
push eax
push esi
call dword [edx + 0x10]
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
lea eax, [ebp - 0x230]
push 0x7a6498
push eax
call fcn.00712ce0
add esp, 8
test eax, eax
jne 0x4b7b01
mov edi, 0x7977b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b7978
test cl, cl
je 0x4b7974
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b7978
add eax, 2
add edi, 2
test cl, cl
jne 0x4b7950
xor eax, eax
jmp 0x4b797d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b7a5a
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
je 0x4b79a6
mov dl, byte [eax + 0x9c]
test dl, dl
je 0x4b79a6
mov eax, dword [ecx]
push esi
push 0x1a
call dword [eax + 0x10]
jmp 0x4b79c7
push 0x1a0
push 0x797d04
push str.m_pData__IsDynaNpc__
push str.CHECK
push 0x793720
call fcn.00401080
add esp, 0x14
lea ecx, [ebp - 0x750]
call fcn.005ada30
mov ecx, dword [ebp + 0x10]
mov eax, esi
cdq
push edx
mov edx, dword [ecx]
push eax
push 0
mov dword [ebp - 4], 4
call dword [edx + 4]
push eax
lea ecx, [ebp - 0x750]
call fcn.005adad0
test eax, eax
jne 0x4b7a1b
push 0xa37
push 0x7a5950
push str.msg.Create_pNpc__GetID_____USERATTRIB_LIFE__nData_
push str.IF_OK
push 0x793720
call fcn.00401080
add esp, 0x14
jmp 0x4b7a33
mov eax, dword [ebp + 0x10]
push 0
mov edx, dword [eax + 8]
lea ecx, [eax + 8]
lea eax, [ebp - 0x750]
push eax
call dword [edx + 0x1ac]
lea ecx, [ebp - 0x750]
mov dword [ebp - 4], 0xffffffff
call fcn.005adac0
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edi, 0x7a65b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b7a8d
test cl, cl
je 0x4b7a89
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b7a8d
add eax, 2
add edi, 2
test cl, cl
jne 0x4b7a65
xor eax, eax
jmp 0x4b7a92
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b88ac
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
jne 0x4b7ae2
push 0x199
push 0x797d04
push str.m_pData
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor eax, eax
cmp eax, esi
pop edi
pop esi
sete al
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edx, dword [ecx]
push 0x1a
call dword [edx + 8]
cmp eax, esi
pop edi
pop esi
pop ebx
sete al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
lea eax, [ebp - 0x230]
push str.maxlife
push eax
call fcn.00712ce0
add esp, 8
test eax, eax
jne 0x4b7c32
mov edi, 0x7977b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b7b50
test cl, cl
je 0x4b7b4c
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b7b50
add eax, 2
add edi, 2
test cl, cl
jne 0x4b7b28
xor eax, eax
jmp 0x4b7b55
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b88ac
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
je 0x4b7b7e
mov dl, byte [eax + 0x9c]
test dl, dl
je 0x4b7b7e
mov eax, dword [ecx]
push esi
push 0x1b
call dword [eax + 0x10]
jmp 0x4b7b9f
push 0x1a0
push 0x797d04
push str.m_pData__IsDynaNpc__
push str.CHECK
push 0x793720
call fcn.00401080
add esp, 0x14
lea ecx, [ebp - 0x750]
call fcn.005ada30
mov ecx, dword [ebp + 0x10]
mov eax, esi
cdq
push edx
mov edx, dword [ecx]
push eax
push 1
mov dword [ebp - 4], 5
call dword [edx + 4]
push eax
lea ecx, [ebp - 0x750]
call fcn.005adad0
test eax, eax
jne 0x4b7bf3
push 0xa49
push 0x7a5950
push str.msg.Create_pNpc__GetID_____USERATTRIB_MAXLIFE__nData_
push str.IF_OK
push 0x793720
call fcn.00401080
add esp, 0x14
jmp 0x4b7c0b
mov eax, dword [ebp + 0x10]
push 0
mov edx, dword [eax + 8]
lea ecx, [eax + 8]
lea eax, [ebp - 0x750]
push eax
call dword [edx + 0x1ac]
lea ecx, [ebp - 0x750]
mov dword [ebp - 4], 0xffffffff
call fcn.005adac0
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edx, dword [ebx]
lea ecx, [ebp - 0x230]
push ecx
mov ecx, ebx
call dword [edx + 0xc]
push eax
push 0x7a6408
jmp 0x4b88a4
lea eax, [ebp - 0x330]
lea ecx, [ebp - 0x130]
push eax
lea edx, [ebp - 0x230]
push ecx
mov ecx, dword [ebp + 0xc]
lea eax, [ebp + 0x14]
push edx
push eax
push str._u__s__s__s
push ecx
call fcn.00704547
add esp, 0x18
cmp eax, 4
jl 0x4b8571
lea eax, [ebp - 0x330]
push eax
call fcn.00703ee0
mov ecx, dword [0x7fd5e0]
add esp, 4
mov dword [ebp + 0xc], eax
mov eax, dword [ebp + 0x14]
mov edx, dword [ecx]
push eax
call dword [edx + 0x18]
cmp eax, edi
mov dword [ebp + 0x10], eax
jne 0x4b7d2e
mov edi, dword [esi + 0x20]
cmp edi, 4
jb 0x4b7cd5
mov ecx, dword [0x7fd4fc]
mov esi, dword [0x7fd4f8]
sub ecx, esi
mov eax, 0x66666667
imul ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
cmp edi, edx
jb 0x4b7cfa
push 0x157
push 0x797a90
push str.CMapGroup::IsValidMapGroupProcessID_idProcess_
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
xor ecx, ecx
jmp 0x4b7d02
lea ecx, [edi + edi*4]
shl ecx, 5
add ecx, esi
mov edx, dword [ecx]
lea eax, [ebp - 0x330]
push eax
lea eax, [ebp - 0x230]
push eax
mov eax, dword [ebp + 0x14]
push eax
call dword [edx + 0x58]
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
lea ecx, [ebp - 0x230]
push str.lookface
push ecx
call fcn.00712ce0
add esp, 8
test eax, eax
jne 0x4b7e5f
mov edi, 0x7977b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b7d7d
test cl, cl
je 0x4b7d79
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b7d7d
add eax, 2
add edi, 2
test cl, cl
jne 0x4b7d55
xor eax, eax
jmp 0x4b7d82
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b88ac
mov esi, dword [ebp + 0x10]
mov ecx, dword [esi + 0x98]
test ecx, ecx
je 0x4b7dae
mov al, byte [esi + 0x9c]
test al, al
je 0x4b7dae
mov edx, dword [ebp + 0xc]
mov eax, dword [ecx]
push edx
push 5
call dword [eax + 0x10]
jmp 0x4b7dcf
push 0x1a0
push 0x797d04
push str.m_pData__IsDynaNpc__
push str.CHECK
push 0x793720
call fcn.00401080
add esp, 0x14
lea ecx, [ebp - 0x750]
call fcn.005ada30
mov eax, dword [ebp + 0xc]
mov ecx, esi
cdq
push edx
push eax
mov eax, dword [esi]
push 0xc
mov dword [ebp - 4], 6
call dword [eax + 4]
push eax
lea ecx, [ebp - 0x750]
call fcn.005adad0
test eax, eax
jne 0x4b7e23
push 0xa73
push 0x7a5950
push str.msg.Create_pTarget__GetID_____USERATTRIB_LOOKFACE__nData_
push str.IF_OK
push 0x793720
call fcn.00401080
add esp, 0x14
jmp 0x4b7e38
mov edx, dword [esi + 8]
lea ecx, [esi + 8]
lea eax, [ebp - 0x750]
push 0
push eax
call dword [edx + 0x1ac]
lea ecx, [ebp - 0x750]
mov dword [ebp - 4], 0xffffffff
call fcn.005adac0
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
lea ecx, [ebp - 0x230]
push str.datastr
push ecx
call fcn.00712ce0
add esp, 8
test eax, eax
jne 0x4b7f2d
mov edi, 0x7977b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b7eae
test cl, cl
je 0x4b7eaa
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b7eae
add eax, 2
add edi, 2
test cl, cl
jne 0x4b7e86
xor eax, eax
jmp 0x4b7eb3
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b88ac
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
je 0x4b7ef7
mov dl, byte [eax + 0x9c]
test dl, dl
je 0x4b7ef7
mov eax, dword [ecx]
lea edx, [ebp - 0x330]
push 0x10
push edx
push 0x18
call dword [eax + 0x14]
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
push 0x1a2
push 0x797d04
push str.m_pData__IsDynaNpc__
push str.CHECK
push 0x793720
call fcn.00401080
add esp, 0x14
mov al, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
push 4
lea eax, [ebp - 0x230]
push str.data
push eax
call fcn.00716780
add esp, 0xc
test eax, eax
jne 0x4b8013
movsx esi, byte [ebp - 0x22c]
sub esi, 0x30
js 0x4b88ac
cmp esi, 4
jge 0x4b88ac
mov edi, 0x7977b4
lea eax, [ebp - 0x130]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b7f97
test cl, cl
je 0x4b7f93
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b7f97
add eax, 2
add edi, 2
test cl, cl
jne 0x4b7f6f
xor eax, eax
jmp 0x4b7f9c
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4b88ac
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x98]
test ecx, ecx
je 0x4b7fdd
mov dl, byte [eax + 0x9c]
test dl, dl
je 0x4b7fdd
mov edx, dword [ebp + 0xc]
mov eax, dword [ecx]
add esi, 0x14
push edx
push esi
call dword [eax + 0x10]
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
push 0x1a4
push 0x797d04
push str.m_pData__IsDynaNpc__
push str.CHECK
push 0x793720
call fcn.00401080
add esp, 0x14
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edx, dword [ebx]
lea eax, [ebp - 0x230]
push eax
mov ecx, ebx
call dword [edx + 0xc]
push eax
push 0x7a6408
jmp 0x4b88a4
mov ecx, dword [ebp + 0x14]
cmp ecx, edi
je 0x4b81b7
mov eax, dword [ecx]
lea edx, [ebp + 0x10]
push edx
push 0x100040
call dword [eax + 0x114]
test al, al
jne 0x4b8072
push 0xac7
push 0x7a5950
push str.pRole__QueryObj_OBJ_NPC__IPP_OF_pNpc__
push str.IF_NOT
push 0x793720
call fcn.00401080
add esp, 0x14
jmp 0x4b88ac
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0xbc], edi
jne 0x4b88ac
mov edx, dword [ebx]
push 4
mov ecx, ebx
call dword [edx + 0x10]
mov ebx, eax
cmp ebx, edi
jne 0x4b80ae
mov ecx, dword [ebp + 0x10]
mov dword [esi + 0xc], edi
call fcn.00639d40
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov ecx, dword [0x7fd5e0]
mov eax, dword [ecx]
call dword [eax + 0x14]
mov edx, dword [eax]
lea ecx, [ebp - 0x14]
push ecx
mov ecx, eax
call dword [edx + 4]
mov ecx, dword [0x7fd5e0]
mov edx, dword [ecx]
call dword [edx + 0x14]
mov edx, dword [eax]
lea ecx, [ebp - 0x30]
push ecx
mov ecx, eax
call dword [edx + 8]
mov edx, dword [ebp - 0x14]
mov ecx, dword [eax]
cmp edx, ecx
je case.0x4b5b37.207
mov ecx, dword [0x7fd5e0]
mov eax, dword [ecx]
call dword [eax + 0x14]
mov ecx, dword [ebp - 0x10]
mov edx, dword [eax]
push ecx
mov ecx, dword [ebp - 0x14]
push ecx
mov ecx, eax
call dword [edx + 0xc]
mov ecx, eax
mov eax, dword [ebp - 0x14]
mov edx, eax
mov eax, dword [eax]
test eax, eax
mov dword [ebp - 0x14], eax
jne 0x4b8142
mov edi, dword [ebp - 0x10]
mov esi, dword [edi + 8]
mov eax, dword [edi + 4]
sub esi, eax
mov eax, dword [edx + 4]
sar esi, 2
xor edx, edx
div esi
mov eax, dword [edi + 8]
mov esi, dword [edi + 4]
sub eax, esi
inc edx
sar eax, 2
cmp edx, eax
jae 0x4b8142
mov eax, esi
mov eax, dword [eax + edx*4]
test eax, eax
mov dword [ebp - 0x14], eax
je 0x4b8126
test ecx, ecx
je 0x4b817f
mov edx, dword [ecx]
lea eax, [ebp + 0xc]
push eax
push 0x100040
call dword [edx + 0x114]
test al, al
je 0x4b817f
mov ecx, dword [ebp + 0xc]
push 4
mov ecx, dword [ecx + 0x98]
mov edx, dword [ecx]
call dword [edx + 8]
cmp eax, ebx
jne 0x4b817f
mov ecx, dword [ebp + 0xc]
call fcn.00639d40
test al, al
je 0x4b88ac
mov ecx, dword [0x7fd5e0]
mov eax, dword [ecx]
call dword [eax + 0x14]
mov edx, dword [eax]
lea ecx, [ebp - 0x30]
push ecx
mov ecx, eax
call dword [edx + 8]
mov edx, dword [ebp - 0x14]
mov ecx, dword [eax]
cmp edx, ecx
jne 0x4b80e7
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
push 0xac4
jmp 0x4b8803
mov ecx, dword [ebp + 0x14]
cmp ecx, edi
je 0x4b8266
mov eax, dword [ecx]
lea edx, [ebp + 0x14]
push edx
push 0x100040
call dword [eax + 0x114]
test al, al
jne 0x4b8207
push 0xb5f
push 0x7a5950
push str.pRole__QueryObj_OBJ_NPC__IPP_OF_pNpc__
push str.IF_NOT
push 0x793720
call fcn.00401080
add esp, 0x14
jmp 0x4b88ac
mov ecx, dword [ebp + 0x14]
mov eax, dword [ecx]
call dword [eax + 0xac]
test eax, eax
jne 0x4b822a
push 0xb61
push 0x7a5950
push str.pNpc__QueryTable__
jmp 0x4b880d
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00703ee0
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x14]
add esp, 4
add edx, 0x270
push edx
push eax
mov eax, dword [ecx]
call dword [eax + 0xac]
mov ecx, eax
call fcn.00685d50
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
push 0xb5c
jmp 0x4b8803
mov ecx, dword [ebp + 0x14]
cmp ecx, edi
je 0x4b8378
mov edx, dword [ecx]
lea eax, [ebp + 0x10]
push eax
push 0x100040
call dword [edx + 0x114]
test al, al
jne 0x4b82b6
push 0xb6c
push 0x7a5950
push str.pRole__QueryObj_OBJ_NPC__IPP_OF_pNpc__
push str.IF_NOT
push 0x793720
call fcn.00401080
add esp, 0x14
jmp 0x4b88ac
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx]
call dword [edx + 0xac]
test eax, eax
jne 0x4b82d9
push 0xb6e
push 0x7a5950
push str.pNpc__QueryTable__
jmp 0x4b880d
mov cl, byte [0x7e5328]
xor eax, eax
mov dword [ebp - 0x20], eax
mov byte [ebp - 0x330], cl
mov dword [ebp - 0x1c], eax
mov ecx, 0x3f
lea edi, [ebp - 0x32f]
mov dword [ebp - 0x18], eax
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea edx, [ebp - 0x330]
lea eax, [ebp - 0x18]
push edx
lea ecx, [ebp - 0x1c]
push eax
lea edx, [ebp - 0x20]
push ecx
lea eax, [ebp - 0x24]
push edx
lea ecx, [ebp + 0x14]
push eax
mov eax, dword [ebp + 0xc]
lea edx, [ebp + 0x1c]
push ecx
push edx
push str._d__u__d__d__d__d__s
push eax
mov dword [ebp - 0x24], 0
call fcn.00704547
add esp, 0x24
cmp eax, 2
jl 0x4b8571
mov edx, dword [ebp + 0x14]
lea eax, [ebp - 0x330]
lea ecx, [ebp - 0x24]
push eax
mov eax, dword [ebp + 0x1c]
push ecx
mov ecx, dword [ebp + 0x10]
push edx
push eax
mov edx, dword [ecx]
call dword [edx + 0xac]
mov ecx, eax
call fcn.00685610
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
push 0xb69
jmp 0x4b8803
mov ecx, dword [ebp + 0x14]
cmp ecx, edi
je 0x4b84e0
mov eax, dword [ecx]
lea edx, [ebp + 0x14]
push edx
push 0x100040
call dword [eax + 0x114]
test al, al
jne 0x4b83c8
push 0xb83
push 0x7a5950
push str.pRole__QueryObj_OBJ_NPC__IPP_OF_pNpc__
push str.IF_NOT
push 0x793720
call fcn.00401080
add esp, 0x14
jmp 0x4b88ac
mov ecx, dword [ebp + 0x14]
mov eax, dword [ecx]
call dword [eax + 0xac]
test eax, eax
jne 0x4b83eb
push 0xb85
push 0x7a5950
push str.pNpc__QueryTable__
jmp 0x4b880d
mov edx, dword [ebp + 0xc]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x4b8499
xor ecx, ecx
mov dword [ebp - 0x24], eax
mov al, byte [0x7e5328]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x330], al
mov dword [ebp - 0x18], ecx
mov ecx, 0x3f
xor eax, eax
lea edi, [ebp - 0x32f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [ebp - 0x330]
stosb byte es:[edi], al
push ecx
lea eax, [ebp - 0x18]
lea ecx, [ebp - 0x1c]
push eax
push ecx
lea eax, [ebp - 0x20]
lea ecx, [ebp - 0x24]
push eax
push ecx
lea eax, [ebp + 0x10]
lea ecx, [ebp + 0xc]
push eax
push ecx
push str._d__u__d__d__d__d__s
push edx
call fcn.00704547
add esp, 0x24
cmp eax, 2
jl 0x4b8571
mov edx, dword [ebp + 0x10]
lea eax, [ebp - 0x330]
lea ecx, [ebp - 0x24]
push eax
mov eax, dword [ebp + 0xc]
push ecx
mov ecx, dword [ebp + 0x14]
push edx
push eax
mov edx, dword [ecx]
call dword [edx + 0xac]
mov ecx, eax
call fcn.006858e0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x270]
test eax, eax
jne 0x4b84ba
push 0xb98
push 0x7a5950
push str.pUser__TaskIterator__
jmp 0x4b880d
mov ecx, dword [ebp + 0x14]
push eax
mov edx, dword [ecx]
call dword [edx + 0xac]
mov ecx, eax
call fcn.00685c50
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
push 0xb80
jmp 0x4b8803
mov ecx, dword [ebp + 0x14]
cmp ecx, edi
je 0x4b85b8
mov eax, dword [ecx]
lea edx, [ebp + 0x10]
push edx
push 0x100040
call dword [eax + 0x114]
test al, al
jne 0x4b8530
push 0xba2
push 0x7a5950
push str.pRole__QueryObj_OBJ_NPC__IPP_OF_pNpc__
push str.IF_NOT
push 0x793720
call fcn.00401080
add esp, 0x14
jmp 0x4b88ac
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx]
call dword [eax + 0xac]
test eax, eax
jne 0x4b8553
push 0xba4
push 0x7a5950
push str.pNpc__QueryTable__
jmp 0x4b880d
mov eax, dword [ebp + 0xc]
lea ecx, [ebp + 0x14]
lea edx, [ebp + 0x1c]
push ecx
push edx
push str._d__u
push eax
call fcn.00704547
add esp, 0x10
cmp eax, 2
jge 0x4b858b
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 0xc]
push eax
push 0x7a5cb0
call fcn.00401080
add esp, 8
jmp 0x4b88ac
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x1c]
push eax
push ecx
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx]
call dword [edx + 0xac]
mov ecx, eax
call fcn.00685b50
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
push 0xb9f
jmp 0x4b8803
mov ecx, dword [0x7fd5e0]
mov eax, dword [ecx]
call dword [eax + 0x14]
mov edx, dword [ebx]
mov edi, eax
push 4
mov ecx, ebx
mov esi, dword [edi]
call dword [edx + 0x10]
push eax
mov ecx, edi
call dword [esi + 0x18]
test eax, eax
je 0x4b88ac
mov edx, dword [eax]
lea ecx, [ebp + 0x10]
push ecx
push 0x100040
mov ecx, eax
call dword [edx + 0x114]
test al, al
je 0x4b88ac
mov ecx, dword [ebp + 0x10]
test ecx, ecx
jne 0x4b861e
push 0xbb7
push 0x7a5950
push str.pNpc
jmp 0x4b880d
mov edx, dword [ecx]
call dword [edx + 0x50]
test al, al
je 0x4b88ac
mov ecx, dword [ebp + 0xc]
lea eax, [ebp + 0x14]
push eax
push 0x7977a8
push ecx
mov dword [ebp + 0x14], 0
call fcn.00704547
add esp, 0xc
test eax, eax
je 0x4b88ac
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx]
call dword [edx + 0x54]
mov ecx, dword [ebp + 0x14]
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 0x20]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov ecx, dword [0x7fd5e0]
mov edx, dword [ecx]
call dword [edx + 0x14]
mov edi, eax
mov eax, dword [ebx]
push 4
mov ecx, ebx
mov esi, dword [edi]
call dword [eax + 0x10]
push eax
mov ecx, edi
call dword [esi + 0x18]
test eax, eax
je 0x4b88ac
mov edx, dword [eax]
lea ecx, [ebp + 0x10]
push ecx
push 0x100040
mov ecx, eax
call dword [edx + 0x114]
test al, al
je 0x4b88ac
mov ecx, dword [ebp + 0x10]
test ecx, ecx
jne 0x4b86d1
push 0xbc7
push 0x7a5950
push str.pNpc
jmp 0x4b880d
mov edx, dword [ecx]
call dword [edx + 0x50]
test al, al
je 0x4b88ac
mov eax, dword [str.NULL]
mov cl, byte [0x7a6370]
mov dword [ebp - 0x730], eax
mov byte [ebp - 0x72c], cl
mov ecx, 0xfe
xor eax, eax
lea edi, [ebp - 0x72b]
lea edx, [ebp - 0x730]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [ebp + 0xc]
push edx
push 0x796428
push eax
call fcn.00704547
add esp, 0xc
cmp eax, 1
jge 0x4b8739
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 0xc]
push eax
push 0x7a5cb0
call fcn.00401080
add esp, 8
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx]
call dword [eax + 0x54]
mov edx, dword [eax]
lea ecx, [ebp - 0x730]
push ecx
mov ecx, eax
call dword [edx + 0x1c]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov ecx, dword [ebp + 0x14]
cmp ecx, edi
je 0x4b87fe
mov edx, dword [ecx]
lea eax, [ebp - 0x28]
push eax
push 0x100040
call dword [edx + 0x114]
test al, al
jne 0x4b87a8
push 0xbda
push 0x7a5950
push str.pRole__QueryObj_OBJ_NPC__IPP_OF_pNpc__
push str.IF_NOT
push 0x793720
call fcn.00401080
add esp, 0x14
jmp 0x4b88ac
mov ecx, dword [ebp - 0x28]
mov edx, dword [ecx]
call dword [edx + 0xac]
test eax, eax
jne 0x4b87c8
push 0xbdc
push 0x7a5950
push str.pNpc__QueryTable__
jmp 0x4b880d
mov ecx, dword [ebp - 0x28]
mov eax, dword [ecx]
call dword [eax + 0xac]
mov ecx, dword [eax + 0xc]
mov edx, dword [ebx]
push 4
mov esi, dword [ecx + 0x18]
mov ecx, ebx
call dword [edx + 0x10]
xor ecx, ecx
cmp esi, eax
setl cl
pop edi
pop esi
mov al, cl
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
push 0xbd7
push 0x7a5950
push str.pAction__pRole
push str.CHECKF
push 0x793720
call fcn.00401080
add esp, 0x14
jmp 0x4b88ac
mov edi, dword [ebp + 0xc]
mov eax, dword [ebp + 0x1c]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x4b886c
test cl, cl
je 0x4b884e
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x4b886c
add eax, 2
add edi, 2
test cl, cl
jne 0x4b882a
xor eax, eax
xor ecx, ecx
test eax, eax
sete cl
pop edi
pop esi
mov al, cl
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
sbb eax, eax
pop edi
sbb eax, 0xffffffff
xor ecx, ecx
test eax, eax
sete cl
pop esi
mov al, cl
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
mov edx, dword [ebx]
push 3
mov ecx, ebx
call dword [edx + 0x10]
push eax
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0xc]
push eax
push 0x7a5de0
call fcn.0040a420
add esp, 0xc
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
xor al, al
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18