Function at 0x4cb960
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x50025b
push eax
mov dword fs:[0], esp
sub esp, 0xc
push ebx
push ebp
push esi
mov esi, dword [esp + 0x28]
push edi
mov ecx, esi
call fcn.004c6760
test eax, eax
jne 0x4cb998
call fcn.004d59e0
test eax, eax
je 0x4cbc03
mov di, word [esp + 0x30]
mov ebx, dword [0xcf3f10]
xor ebp, ebp
cmp di, bp
jne 0x4cba40
cmp word [esi + 0x42], 1
jbe 0x4cba40
movsx eax, byte [esi + 0x40]
xor ecx, ecx
mov cx, word [esi + 0x3c]
add eax, ecx
lea edx, [eax + eax*4]
mov eax, dword [ebx + edx*8]
test ah, 8
je 0x4cba40
push ebp
push ebp
push ebp
push 0x31
push esi
call fcn.0046b0f0
mov ecx, eax
add esp, 0x14
cmp ecx, ebp
jne 0x4cba04
push str.CObjectManager::GetObject:_Prevented_client_crash_by_testing_for_return_value_from__CStackGump_CGumpManager::OpenGump_pObj__49__NULL__FALSE__._It_is_NULL__Returning_from_function._n
call fcn.004de1c0
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xc]
mov dword fs:[0], ecx
add esp, 0x18
ret
mov eax, dword [ecx + 0x20]
push ecx
cdq
sub eax, edx
mov dword [ecx + 0xa0], 1
sar eax, 1
mov dword [ecx + 0x74], eax
mov eax, dword [ecx + 0x24]
cdq
sub eax, edx
sar eax, 1
mov dword [ecx + 0x78], eax
call fcn.004bb6e0
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xc]
mov dword fs:[0], ecx
add esp, 0x18
ret
lea eax, [esi + 0x24]
mov ecx, dword [esi + 0x24]
mov dword [0xcf3a12], ecx
mov dx, word [eax + 4]
mov word [0xcf3a16], dx
mov ax, word [esi + 0x3c]
mov word [0xcf3ee8], ax
mov cx, word [esi + 0x3e]
mov word [0xcf3eea], cx
mov dl, byte [esi + 0x40]
mov byte [0xcf3eed], dl
mov eax, dword [esi + 0x80]
mov dword [0xcf3ef0], eax
xor eax, eax
mov ax, word [esi + 0x44]
mov edx, eax
mov ecx, eax
and edx, 0x8000
and ecx, 0x4000
and eax, 0x3fff
jne 0x4cbaa1
mov eax, edx
jmp 0x4cbab9
cmp eax, ebp
jl 0x4cbab2
cmp eax, 0xbb8
jge 0x4cbab2
or eax, ecx
or eax, edx
jmp 0x4cbab9
or ecx, edx
or ecx, 1
mov eax, ecx
mov word [0xcf3ef4], ax
xor eax, eax
mov ax, word [esi + 0x46]
mov edx, eax
mov ecx, eax
and edx, 0x8000
and ecx, 0x4000
and eax, 0x3fff
jne 0x4cbae0
mov eax, edx
jmp 0x4cbaf8
cmp eax, ebp
jl 0x4cbaf1
cmp eax, 0xbb8
jge 0x4cbaf1
or eax, ecx
or eax, edx
jmp 0x4cbaf8
or ecx, edx
or ecx, 1
mov eax, ecx
cmp di, bp
mov word [0xcf3ef6], ax
jne 0x4cbb10
mov cx, word [esi + 0x42]
mov word [0xcf3ef8], cx
jmp 0x4cbb17
mov word [0xcf3ef8], di
mov dl, byte [esi + 0xa0]
xor ecx, ecx
mov byte [0xcf3eec], dl
mov cx, word [esi + 0x3c]
movsx eax, byte [esi + 0x40]
add eax, ecx
lea edx, [eax + eax*4]
mov eax, dword [ebx + edx*8]
mov dword [0xcf3efc], eax
mov edi, dword [esi + 0x84]
cmp edi, ebp
mov dword [0xcf3f00], ebp
mov dword [0xcf3f04], ebp
je 0x4cbb92
mov edx, dword [edi]
mov ecx, edi
call dword [edx + 0x24]
test eax, eax
je 0x4cbb81
mov dword [0xcf3f04], edi
mov eax, 1
lea ecx, [edi + 0xd0]
cmp dword [ecx], esi
jne 0x4cbb76
mov word [0xcf3f08], ax
inc eax
add ecx, 4
cmp eax, 0x1e
jl 0x4cbb6c
jmp 0x4cbb92
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x30]
test eax, eax
je 0x4cbb92
mov dword [0xcf3f00], edi
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 4]
mov eax, dword [0xc32ff8]
mov dword [eax + 0xe4], ebp
mov cx, word [0xcf3ef8]
mov edx, dword [0xcf3ef0]
push ecx
lea eax, [esp + 0x14]
push edx
push eax
mov dword [0xcf3f20], 1
call fcn.00425870
add esp, 0xc
lea ecx, [esp + 0x10]
push ecx
mov ecx, dword [0xcf38a8]
call fcn.0042ee70
push 0xac
call fcn.004ed8ee
add esp, 4
mov dword [esp + 0x30], eax
cmp eax, ebp
mov dword [esp + 0x24], ebp
je 0x4cbbfc
mov ecx, eax
call fcn.00453b60
jmp 0x4cbbfe
xor eax, eax
mov dword [0xcf3ee4], eax
mov ecx, dword [esp + 0x1c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x18
ret