Function at 0x100021da
Capabilities:
Check for software breakpoints

Disassembly:
push 0x28
mov eax, 0x1000d95e
call fcn.1000c735
mov esi, ecx
and dword [ebp - 0x10], 0
lea eax, [esi + 0x1eb4]
mov edi, eax
lea eax, [esi + 0x190]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp dword [eax], 1
jne 0x10002221
push dword [ebp - 0x10]
mov ebx, dword [edi + 0xb0]
call fcn.10002f63
inc eax
imul eax, ebx
pop ecx
push eax
mov ecx, edi
call dword [sym.imp.CommLib.dll_public:_void___thiscall_CChipStackSprite::SetValue_int_]
inc dword [ebp - 0x10]
add dword [ebp - 0x14], 4
add edi, 0xf4
cmp dword [ebp - 0x10], 0xcc
jl 0x100021fd
cmp dword [esi + 0x15c], 0
jle 0x10002361
push ecx
mov edi, esp
mov dword [ebp - 0x20], esp
push 0x24
mov ecx, esi
call dword [sym.imp.CommLib.dll_public:_class_CPlayerInfo____thiscall_CPlugin::PlayerInfo_void_]
push eax
push dword [esi + 0x15c]
mov ecx, esi
push edi
call dword [sym.imp.CommLib.dll_public:_class_CStringEx___thiscall_CPlugin::NicelyFormattedMoneyString_int__class_CPlayerInfo___enum_EMoneyFormat_]
and dword [ebp - 4], 0
mov edi, dword [sym.imp.GVBASE.dll_public:_void___thiscall_CStringEx::constructor_wchar_t_const___int_]
push ecx
mov ecx, esp
mov dword [ebp - 0x18], esp
or ebx, 0xffffffff
push ebx
push str.AMOUNT
call edi
mov byte [ebp - 4], 1
push ecx
mov eax, esp
mov dword [ebp - 0x14], esp
push eax
mov ecx, esi
call dword [sym.imp.CommLib.dll_public:_class_CPlayerInfo____thiscall_CPlugin::PlayerInfo_void_]
mov ecx, eax
call dword [sym.imp.CommLib.dll_public:_class_CStringEx___thiscall_CPlayerInfo::GetUsername_void_]
mov byte [ebp - 4], 2
push ecx
mov ecx, esp
mov dword [ebp - 0x10], esp
push ebx
push str.PLAYER_USER
call edi
mov byte [ebp - 4], 3
lea eax, [ebp - 0x1c]
push eax
lea ecx, [esi + 0xd4]
mov dword [ebp - 4], ebx
call dword [sym.imp.GVBASE.dll_public:_class_CStringEx___thiscall_CStringEntry::Format_class_CStringEx__class_CStringEx__class_CStringEx__class_CStringEx_]
mov dword [ebp - 4], 4
fldz
mov eax, dword [sym.imp.gvgfx.dll_class_CAlignment_CAlignment::defaults]
push dword [eax]
push 1
push ecx
push ecx
mov eax, esp
fstp dword [esp + 4]
and dword [eax], 0
mov dword [ebp - 0x20], esp
mov byte [ebp - 4], 5
mov byte [ebp - 0x10], 0
mov byte [ebp - 0xf], 0xff
mov byte [ebp - 0xe], 0
mov byte [ebp - 0xd], 0xff
push dword [ebp - 0x10]
lea eax, [ebp - 0x1c]
push ecx
mov ecx, esp
mov dword [ebp - 0x18], esp
push eax
call dword [sym.imp.GVBASE.dll_public:_void___thiscall_CStringEx::constructor_class_CStringEx_const__]
mov byte [ebp - 4], 6
lea ecx, [esi + 0xedf4]
mov eax, dword [ecx]
add eax, 0x178
mov byte [ebp - 4], 4
call dword [eax]
push ecx
lea eax, [esi + 0xf404]
mov ecx, esp
mov dword [ebp - 0x20], esp
push eax
call fcn.10005202
mov byte [ebp - 4], 7
mov byte [ebp - 4], 4
mov ecx, esi
call dword [sym.imp.CommLib.dll_public:_void___thiscall_CPlugin::PlayVoice_class_CRefPtr_class_CPlugin::CVoice__]
push 1
push 0
push 0x5dc
call dword [sym.imp.GVBASE.dll_public:_static_void___cdecl_Sleep::FrameSleep_int__bool__enum_Sleep::EAllowMouse_]
add esp, 0xc
mov dword [ebp - 4], ebx
lea ecx, [ebp - 0x1c]
call dword [sym.imp.GVBASE.dll_public:_void___thiscall_CStringEx::destructor_void_]
lea ecx, [esi + 0x4c0]
push 6
xor edi, edi
mov eax, ecx
pop edx
cmp dword [eax], 1
jne 0x10002374
inc edi
add eax, 4
dec edx
jne 0x1000236e
lea eax, [esi + 0x190]
mov edx, 0xcc
cmp dword [eax], 1
jne 0x1000238b
inc edi
add eax, 4
dec edx
jne 0x10002385
test edi, edi
jne 0x100023a1
mov ecx, esi
call fcn.10001041
jmp 0x10002559
lea eax, [edi + 0x7cf]
cdq
idiv edi
mov dword [ebp - 0x14], eax
mov eax, 0x1f4
cmp dword [ebp - 0x14], eax
jle 0x100023ba
mov dword [ebp - 0x14], eax
and dword [ebp - 0x1c], 0
lea eax, [esi + 0xe124]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x18], ecx
cmp dword [esi + 0x158], 0
je 0x1000248f
mov eax, dword [ebp - 0x18]
cmp dword [eax], 1
jne 0x10002477
mov ebx, dword [ebp - 0x10]
push dword [ebx + 0xb0]
lea edi, [esi + 0xe724]
mov ecx, edi
call dword [sym.imp.CommLib.dll_public:_void___thiscall_CChipStackSprite::SetValue_int_]
mov ecx, ebx
call fcn.100019b8
mov ecx, dword [ebp - 0x10]
mov ebx, dword [edi]
mov eax, dword [ecx]
lea edx, [ebp - 0x2c]
push edx
add ebx, 0x80
call dword [eax + 0x84]
push eax
mov ecx, edi
call dword [ebx]
push dword [ebp - 0x14]
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov dword [ebp - 0x24], 0x177
mov dword [ebp - 0x20], 0x26c
call dword [sym.imp.gvgfx.dll_public:_void___thiscall_CConcreteSprite::FlyTo_class_CPoint_const___unsigned_int_]
xor ebx, ebx
push ebx
push ebx
push esi
push 0x10001c2f
call dword [sym.imp.GVBASE.dll_public:_static_void___cdecl_Sleep::ConditionSleep_bool____cdecl___void____void___bool__enum_Sleep::EAllowMouse_]
mov eax, dword [edi]
add esp, 0x10
push ebx
mov ecx, edi
call dword [eax + 0x70]
mov eax, dword [esi + 0xe7d4]
cmp eax, ebx
je 0x10002470
push eax
mov ecx, esi
call dword [sym.imp.CommLib.dll_public:_class_CPlayerInfo____thiscall_CPlugin::PlayerInfo_void_]
mov ecx, eax
call dword [sym.imp.CommLib.dll_public:_int___thiscall_CPlayerInfo::AdjustBalance_int_]
mov ecx, esi
call fcn.10001041
inc dword [ebp - 0x1c]
add dword [ebp - 0x18], 4
add dword [ebp - 0x10], 0x100
cmp dword [ebp - 0x1c], 6
jl 0x100023ca
lea eax, [esi + 0x1eb4]
mov dword [ebp - 0x10], eax
lea eax, [esi + 0x190]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], 0xcc
mov eax, dword [ebp - 0x1c]
cmp dword [eax], 1
jne 0x10002545
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0xb0]
lea edi, [esi + 0xe724]
push eax
mov ecx, edi
mov dword [ebp - 0x18], eax
call dword [sym.imp.CommLib.dll_public:_void___thiscall_CChipStackSprite::SetValue_int_]
mov ecx, dword [ebp - 0x10]
mov ebx, dword [edi]
mov eax, dword [ecx]
lea edx, [ebp - 0x34]
push edx
add ebx, 0x80
call dword [eax + 0x84]
push eax
mov ecx, edi
call dword [ebx]
push dword [ebp - 0x14]
lea eax, [ebp - 0x2c]
push eax
mov ecx, edi
mov dword [ebp - 0x2c], 0x177
mov dword [ebp - 0x28], 0x26c
call dword [sym.imp.gvgfx.dll_public:_void___thiscall_CConcreteSprite::FlyTo_class_CPoint_const___unsigned_int_]
mov ecx, dword [ebp - 0x10]
xor ebx, ebx
push ebx
call dword [sym.imp.CommLib.dll_public:_void___thiscall_CChipStackSprite::SetValue_int_]
push ebx
push ebx
push esi
push 0x10001c2f
call dword [sym.imp.GVBASE.dll_public:_static_void___cdecl_Sleep::ConditionSleep_bool____cdecl___void____void___bool__enum_Sleep::EAllowMouse_]
mov eax, dword [edi]
add esp, 0x10
push ebx
mov ecx, edi
call dword [eax + 0x70]
cmp dword [ebp - 0x18], ebx
je 0x10002545
push dword [ebp - 0x18]
mov ecx, esi
call dword [sym.imp.CommLib.dll_public:_class_CPlayerInfo____thiscall_CPlugin::PlayerInfo_void_]
mov ecx, eax
call dword [sym.imp.CommLib.dll_public:_int___thiscall_CPlayerInfo::AdjustBalance_int_]
add dword [ebp - 0x1c], 4
add dword [ebp - 0x10], 0xf4
dec dword [ebp - 0x20]
jne 0x100024a8
push 0
mov ecx, esi
call dword [sym.imp.CommLib.dll_public:_void___thiscall_CPlugin::WaitForVoiceTrack_enum_Sleep::EAllowMouse_]
call fcn.1000c7d4
ret