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

Disassembly:
push 0xffffffffffffffff
push 0x5a1976
mov eax, dword fs:[0]
push eax
sub esp, 0x154
mov eax, dword [0x691844]
xor eax, esp
mov dword [esp + 0x150], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x691844]
xor eax, esp
push eax
lea eax, [esp + 0x168]
mov dword fs:[0], eax
mov esi, dword [esp + 0x178]
mov ebx, dword [esi + 0x2a4]
mov eax, dword [esp + 0x180]
mov ebp, dword [esp + 0x17c]
mov edi, ecx
mov ecx, dword [esp + 0x188]
push ebx
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], ecx
call fcn.00525e90
add esp, 4
lea ecx, [esp + 0x24]
mov dword [esp + 0x18], eax
call fcn.00429880
push 0
lea edx, [esp + 0x28]
push edx
push 0xdd
mov ecx, 0x69d200
mov dword [esp + 0x17c], 0
call fcn.0042f6b0
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
mov dword [esi + 0x178], ecx
mov ecx, dword [esp + 0x38]
mov dword [esi + 0x174], eax
mov eax, dword [esp + 0x34]
mov dword [esi + 0x17c], edx
mov edx, dword [esp + 0x3c]
mov dword [esi + 0x180], eax
mov eax, dword [esp + 0x40]
mov dword [esi + 0x184], ecx
mov dword [esi + 0x188], edx
mov dword [esi + 0x18c], eax
lea ecx, [esp + 0x44]
mov dword [esi + 0x16c], 1
call fcn.00429880
push 0
lea ecx, [esp + 0x48]
push ecx
push 0x3f
mov ecx, 0x69d200
mov byte [esp + 0x17c], 1
call fcn.0042f6b0
push 0x1e1e1e
lea edx, [esp + 0x48]
push edx
push 0xffffffffffffffff
push 0x5af25f
mov ecx, esi
call fcn.0043c130
lea eax, [esi + 0x218]
test eax, eax
je 0x4ba24c
push eax
mov ecx, esi
call fcn.0043c0a0
mov eax, dword [esp + 0x18]
test eax, 0x800
je 0x4ba280
push ebx
mov ecx, edi
call fcn.004ae980
test eax, eax
je 0x4bab8d
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
push ebp
push eax
push esi
mov ecx, edi
call fcn.004b7300
jmp 0x4bab8d
test eax, 0x400
je 0x4ba2a3
push ebx
mov ecx, edi
call fcn.004ae980
test eax, eax
je 0x4bab8d
push eax
push esi
call fcn.004b2ee0
jmp 0x4bab8d
test eax, 0x200
je 0x4ba2c6
push ebx
mov ecx, edi
call fcn.004ae980
test eax, eax
je 0x4bab8d
push eax
push esi
call fcn.004b2870
jmp 0x4bab8d
test eax, 0x3000
jne 0x4bab7a
test eax, 0x4000
je 0x4ba38b
push ebx
mov ecx, edi
call fcn.004ae980
mov ebp, eax
test ebp, ebp
je 0x4bab8d
lea eax, [ebp + 2]
push eax
lea ecx, [esp + 0xe8]
push 0x5b1588
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push 0xf0f0f0
lea edx, [esp + 0xe8]
push edx
mov ecx, esi
call fcn.0043c080
push 0xf0f0f0
push 0x5af25f
mov ecx, esi
call fcn.0043c080
push ebx
mov ecx, edi
call fcn.004aee20
test eax, eax
jne 0x4ba355
push 0xffc800
push 0x104
mov ecx, 0x6a0f60
call fcn.004d6bc0
push eax
mov ecx, esi
call fcn.0043c080
push ebx
mov ecx, edi
call fcn.004aee20
test eax, eax
je 0x4ba372
mov eax, dword [esp + 0x184]
push eax
push ebp
push esi
mov ecx, edi
call fcn.004b3820
movzx ecx, word [ebp + 0x24]
push 1
push 0xc8d7aa
push ecx
push esi
mov ecx, edi
call fcn.004ae450
jmp 0x4bab8d
test eax, 0x8000
je 0x4ba45d
push ebx
mov ecx, edi
call fcn.004ae980
mov ebx, eax
test ebx, ebx
je 0x4bab8d
lea edx, [ebx + 2]
push edx
lea eax, [esp + 0x68]
push 0x5b1588
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
movzx ecx, word [ebx]
add esp, 0xc
push ecx
mov ecx, edi
call fcn.004ae9c0
test eax, eax
je 0x4ba3de
cmp dword [eax], 0
je 0x4ba3de
mov edx, dword [eax + 0xc]
push edx
lea eax, [esp + 0x68]
push eax
jmp 0x4ba3e8
push 0xf0f0f0
lea ecx, [esp + 0x68]
push ecx
mov ecx, esi
call fcn.0043c080
push 0xf0f0f0
push 0x5af25f
mov ecx, esi
call fcn.0043c080
cmp dword [esp + 0x18], 0x8001
jne 0x4bab64
movzx edx, word [ebx + 0xc0]
push edx
push 0xee
mov ecx, 0x6a0f60
call fcn.004d6bc0
push eax
lea eax, [esp + 0x6c]
push eax
call dword [sym.imp.MSVCR90.dll_sprintf]
mov ecx, dword [0x69e254]
mov dx, word [ecx + 0x44c]
add esp, 0xc
cmp dx, word [ebx + 0xc0]
jae 0x4bab53
push 0xe61414
lea eax, [esp + 0x68]
push eax
jmp 0x4bab5d
test eax, 0x100
je 0x4ba8f7
push ebx
mov ecx, edi
call fcn.004ae980
mov ebp, eax
test ebp, ebp
je 0x4bab8d
lea eax, [ebp + 2]
push eax
lea ecx, [esp + 0xe8]
push 0x5b1588
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
mov eax, 0x104
add esp, 0xc
mov edx, 0xf0f0f0
mov dword [esp + 0x18], edx
cmp word [ebp + 0x28], ax
jne 0x4ba517
cmp word [ebp + 0x68], 0
je 0x4ba517
movzx ecx, word [ebp + 0x6a]
mov eax, dword [0x69e254]
test cx, cx
jne 0x4ba4ce
movzx edx, word [eax + 0x44c]
cmp dx, 0x32
ja 0x4ba53b
mov edx, dword [esp + 0x18]
cmp cx, 1
jne 0x4ba4f6
movzx eax, word [eax + 0x44c]
movzx edx, ax
cmp dx, 0x33
jb 0x4ba53b
movzx eax, ax
cmp ax, 0x46
ja 0x4ba53b
mov eax, dword [0x69e254]
mov edx, dword [esp + 0x18]
cmp cx, 2
jne 0x4ba540
movzx eax, word [eax + 0x44c]
movzx ecx, ax
cmp cx, 0x47
jb 0x4ba53b
movzx eax, ax
cmp ax, 0x5a
jbe 0x4ba540
jmp 0x4ba53b
mov ecx, dword [0x69e254]
movzx eax, word [ecx + 0x44c]
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
fld dword [ebp + 0xbc]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4ba540
mov edx, 0xe61414
push edx
lea ecx, [esp + 0xe8]
push ecx
mov ecx, esi
call fcn.0043c080
fldz
fcomp dword [ebp + 0xbc]
fnstsw ax
test ah, 0x44
jnp 0x4ba5e7
push 0xf0f0f0
push 0x5af25f
mov ecx, esi
call fcn.0043c080
fld dword [ebp + 0xbc]
call fcn.00599920
push eax
push 0xee
mov ecx, 0x6a0f60
call fcn.004d6bc0
push eax
lea edx, [esp + 0xec]
push edx
call dword [sym.imp.MSVCR90.dll_sprintf]
mov eax, dword [0x69e254]
movzx ecx, word [eax + 0x44c]
mov dword [esp + 0x28], ecx
add esp, 0xc
mov ecx, esi
fild dword [esp + 0x1c]
fld dword [ebp + 0xbc]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4ba5d5
push 0xe61414
lea edx, [esp + 0xe8]
push edx
jmp 0x4ba5e2
push 0xf0f0f0
lea eax, [esp + 0xe8]
push eax
call fcn.0043c080
movzx ecx, word [esi + 0xc]
movzx eax, cx
mov edx, 0x89
cmp ax, dx
je 0x4ba871
movzx eax, cx
mov edx, 0x85
cmp ax, dx
je 0x4ba871
movzx edx, word [ebp + 0x28]
mov eax, 0x12c
cmp dx, ax
je 0x4ba871
mov eax, 0x105
cmp dx, ax
je 0x4ba633
mov eax, 0x106
cmp dx, ax
jne 0x4ba669
test byte [esi + 0x322], 1
jne 0x4ba669
mov edx, dword [esi]
mov eax, dword [edx + 0x78]
mov ecx, esi
call eax
movzx ecx, ax
push ecx
lea ecx, [edi + 0x274]
call fcn.004ace20
test eax, eax
je 0x4bab8d
push eax
mov ecx, edi
call fcn.004af780
jmp 0x4bab8d
mov eax, 0x108
cmp dx, ax
jne 0x4ba6b6
test byte [esi + 0x322], 1
jne 0x4ba6b6
movzx eax, cx
mov ebx, 0x8a
cmp ax, bx
jne 0x4ba6b6
mov edx, dword [esi]
mov eax, dword [edx + 0x78]
mov ecx, esi
call eax
movzx ecx, ax
push ecx
lea ecx, [edi + 0x274]
call fcn.004ace20
test eax, eax
je 0x4bab8d
push eax
mov ecx, edi
call fcn.004b9ee0
jmp 0x4bab8d
mov eax, 0x136
cmp dx, ax
jne 0x4ba6f6
test byte [esi + 0x322], 1
jne 0x4ba6f6
mov edx, dword [esi]
mov eax, dword [edx + 0x78]
mov ecx, esi
call eax
movzx ecx, ax
push ecx
lea ecx, [edi + 0x274]
call fcn.004ace20
test eax, eax
je 0x4bab8d
push eax
mov ecx, edi
call fcn.004afa10
jmp 0x4bab8d
movzx eax, cx
mov edx, 0x83
cmp ax, dx
jne 0x4ba737
test byte [esi + 0x322], 1
je 0x4ba737
push 1
push 0xc8d7aa
push 0x1770
push esi
mov ecx, edi
call fcn.004ae450
push ebp
push esi
mov ecx, edi
call fcn.004a9e00
push ebp
push esi
mov ecx, edi
call fcn.004a9d80
jmp 0x4bab8d
movzx eax, word [ebp + 0x24]
push 1
push 0xc8d7aa
push eax
push esi
mov ecx, edi
call fcn.004ae450
push ebp
push esi
mov ecx, edi
call fcn.004a9e00
cmp word [ebp + 0xc0], 0xb
jne 0x4ba729
mov edx, dword [esi]
mov eax, dword [edx + 0x78]
mov ecx, esi
call eax
movzx ecx, ax
push ecx
lea ecx, [edi + 0x274]
call fcn.004ace20
mov edi, eax
test edi, edi
je 0x4bab8d
cmp dword [ebp + 0x30], 1
push 0xf0f0f0
mov ecx, esi
push 0x5af25f
jne 0x4ba82f
call fcn.0043c080
push 0xf0f0f0
push 0x2fe
mov ecx, 0x6a0f60
call fcn.004d6bc0
push eax
mov ecx, esi
call fcn.0043c080
push 0x7f
lea edx, [esp + 0x69]
push 0
push edx
mov byte [esp + 0x70], 0
call sub.MSVCR90.dll_memset
mov eax, dword [edi + 0x28]
mov ecx, eax
add esp, 0xc
mov edx, eax
shl ecx, 0x14
mov edi, eax
shr ecx, 0x1a
push ecx
shl edx, 0xe
mov ebp, eax
shr edx, 0x1a
push edx
shl edi, 8
shl ebp, 4
shr edi, 0x1a
push edi
shr eax, 0x1c
shr ebp, 0x1c
push ebp
add eax, 0xf
push eax
push 0x2ff
mov ecx, 0x6a0f60
call fcn.004d6bc0
push eax
lea eax, [esp + 0x7c]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x1c
push 0xffc800
lea ecx, [esp + 0x68]
push ecx
mov ecx, esi
call fcn.0043c080
jmp 0x4bab8d
call fcn.0043c080
push 0xf0f0f0
push 0x5a2
mov ecx, 0x6a0f60
call fcn.004d6bc0
push eax
mov ecx, esi
call fcn.0043c080
push 0xffc800
push 0x5a4
mov ecx, 0x6a0f60
call fcn.004d6bc0
push eax
mov ecx, esi
call fcn.0043c080
jmp 0x4bab8d
test byte [esi + 0x328], 1
push ebx
mov ecx, edi
je 0x4ba8c4
call fcn.004aee20
test eax, eax
je 0x4ba897
mov edx, dword [esp + 0x184]
push edx
push ebp
push esi
mov ecx, edi
call fcn.004b3820
push 1
push 0xc8d7aa
push 0x1770
push esi
mov ecx, edi
call fcn.004ae450
movzx eax, word [ebp + 0x24]
push 1
push 0xc8d7aa
push eax
push esi
mov ecx, edi
call fcn.004ae450
jmp 0x4bab8d
call fcn.004aee20
test eax, eax
je 0x4ba8de
mov ecx, dword [esp + 0x184]
push ecx
push ebp
push esi
mov ecx, edi
call fcn.004b3820
movzx edx, word [ebp + 0x24]
push 1
push 0xc8d7aa
push edx
push esi
mov ecx, edi
call fcn.004ae450
jmp 0x4bab8d
mov ebp, eax
and ebp, 0x80
jne 0x4ba928
cmp eax, 0x42
je 0x4ba928
cmp eax, 0x41
je 0x4ba928
cmp eax, 0x43
je 0x4ba928
push ebp
push 0x2c7
push str..ItemManager.cpp
call fcn.00527110
add esp, 0xc
jmp 0x4bab8d
push ebx
mov ecx, edi
call fcn.004ae980
mov ebx, eax
test ebx, ebx
je 0x4bab8d
lea eax, [ebx + 2]
push eax
lea ecx, [esp + 0x68]
push 0x5b1588
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push 0xf0f0f0
lea edx, [esp + 0x68]
push edx
mov ecx, esi
call fcn.0043c080
push 0xf0f0f0
push 0x5af25f
mov ecx, esi
call fcn.0043c080
test ebp, ebp
je 0x4baa8e
movzx eax, word [esi + 0xc]
movzx ecx, ax
mov edx, 0x89
cmp cx, dx
je 0x4ba9a6
movzx eax, ax
mov ecx, 0x85
cmp ax, cx
je 0x4ba9a6
mov edx, dword [esi]
mov eax, dword [edx + 0x74]
mov ecx, esi
call eax
mov ebp, eax
jmp 0x4ba9ac
mov ebp, dword [esi + 0x324]
push ebx
push esi
mov ecx, edi
call fcn.004ade00
mov eax, dword [esp + 0x184]
test eax, eax
jbe 0x4ba9c3
push eax
jmp 0x4ba9cc
test ebp, ebp
je 0x4baa8e
push ebp
mov ecx, 0x6e4d50
call fcn.00579a60
test eax, eax
je 0x4baa8e
mov ecx, dword [eax + 0xc]
fild dword [eax + 0xc]
test ecx, ecx
jge 0x4ba9ee
fadd dword [0x5af1c8]
fmul qword [0x5af4d8]
fdiv qword [0x5b08f0]
fstp dword [esp + 0x14]
fldz
fld dword [esp + 0x14]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x4baa22
fld1
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x4baa22
fstp dword [esp + 0x14]
jmp 0x4baa24
fstp st(0)
push 0x80
lea edx, [esp + 0x68]
push 0
push edx
call sub.MSVCR90.dll_memset
fld dword [esp + 0x20]
fnstcw word [esp + 0x20]
add esp, 0xc
movzx eax, word [esp + 0x14]
or eax, 0xc00
mov dword [esp + 0x1c], eax
mov ecx, 0x6a0f60
fldcw word [esp + 0x1c]
fistp qword [esp + 0x1c]
mov eax, dword [esp + 0x1c]
push eax
push 0x5ec
fldcw word [esp + 0x1c]
call fcn.004d6bc0
push eax
lea ecx, [esp + 0x6c]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push 0x9bdeff
lea edx, [esp + 0x68]
push edx
mov ecx, esi
call fcn.0043c080
cmp dword [esp + 0x18], 0x41
jne 0x4bab64
movzx eax, word [esi + 0xc]
movzx ecx, ax
mov edx, 0x89
cmp cx, dx
je 0x4baac4
movzx eax, ax
mov ecx, 0x85
cmp ax, cx
je 0x4baac4
mov edx, dword [esi]
mov eax, dword [edx + 0x74]
mov ecx, esi
call eax
mov ebp, eax
jmp 0x4baaca
mov ebp, dword [esi + 0x324]
push 0x80
lea ecx, [esp + 0x68]
push 0
push ecx
call sub.MSVCR90.dll_memset
movzx edx, word [ebx + 0xa8]
add esp, 0xc
push edx
push 0x5ef
mov ecx, 0x6a0f60
call fcn.004d6bc0
push eax
lea eax, [esp + 0x6c]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push 0xf0f0f0
lea ecx, [esp + 0x68]
push ecx
mov ecx, esi
call fcn.0043c080
test ebp, ebp
je 0x4bab64
cmp ebp, dword [0x6e4d64]
jne 0x4bab64
push 0x80
lea edx, [esp + 0x68]
push 0
push edx
call sub.MSVCR90.dll_memset
add esp, 0xc
push 0x5f0
mov ecx, 0x6a0f60
call fcn.004d6bc0
push eax
lea eax, [esp + 0x68]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 8
push 0xf0f0f0
lea ecx, [esp + 0x68]
push ecx
mov ecx, esi
call fcn.0043c080
movzx edx, word [ebx + 0x24]
push 1
push 0xc8d7aa
push edx
push esi
mov ecx, edi
call fcn.004ae450
jmp 0x4bab8d
push ebx
mov ecx, edi
call fcn.004ae980
test eax, eax
je 0x4bab8d
push eax
push esi
call fcn.004b2160
lea ecx, [esp + 0x44]
mov byte [esp + 0x170], 0
call fcn.00429890
lea ecx, [esp + 0x24]
mov dword [esp + 0x170], 0xffffffff
call fcn.00429890
mov ecx, dword [esp + 0x168]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x150]
xor ecx, esp
call fcn.005997a8
add esp, 0x160
ret 0x14