Function at 0x1000c9a0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x104
mov eax, dword [0x10043080]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, ecx
push str.GetServerInfo
push esi
mov ebx, edx
call edi
mov ecx, dword [0x10043b08]
push ebx
mov dword [ecx], eax
test eax, eax
jne 0x1000ca12
lea eax, [ebp - 0x104]
push str.__s__:_Failed_to_bind_server_functions__n_nPlease_use_D2HackIt__V0.59_or_later.
push eax
call fcn.100106a0
add esp, 0xc
lea eax, [ebp - 0x104]
push 0
push str.D2Client_Load_Error
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100119d2
mov esp, ebp
pop ebp
ret
push 2
call eax
add esp, 8
mov dword [0x10044e58], eax
push str.GamePrintString
push esi
call edi
mov ecx, dword [0x10043b08]
push str.GamePrintInfo
push esi
mov dword [ecx + 4], eax
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xc], eax
test eax, eax
jne 0x1000ca6a
push ebx
lea eax, [ebp - 0x104]
push 0x1003c410
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GamePrintError
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 8], eax
test eax, eax
jne 0x1000caa5
push ebx
lea eax, [ebp - 0x104]
push 0x1003c448
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GamePrintVerbose
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x10], eax
test eax, eax
jne 0x1000cae0
push ebx
lea eax, [ebp - 0x104]
push 0x1003c484
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GamePrintString
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 4], eax
test eax, eax
jne 0x1000cb1b
push ebx
lea eax, [ebp - 0x104]
push 0x1003c4b0
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GameCommandLine
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x28], eax
test eax, eax
jne 0x1000cb56
push ebx
lea eax, [ebp - 0x104]
push 0x1003c4ec
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GameSendPacketToServer
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x24], eax
test eax, eax
jne 0x1000cb91
push ebx
lea eax, [ebp - 0x104]
push 0x1003c530
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GameSendPacketToGame
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x38], eax
test eax, eax
jne 0x1000cbcc
push ebx
lea eax, [ebp - 0x104]
push 0x1003c578
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetFingerprint
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x30], eax
test eax, eax
jne 0x1000cc07
push ebx
lea eax, [ebp - 0x104]
push 0x1003c5b8
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.Intercept
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x2c], eax
test eax, eax
jne 0x1000cc42
push ebx
lea eax, [ebp - 0x104]
push 0x1003c5ec
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetThisgameStruct
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x34], eax
test eax, eax
jne 0x1000cc7d
push ebx
lea eax, [ebp - 0x104]
push 0x1003c624
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.SetHackProfileString
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x20], eax
test eax, eax
jne 0x1000ccb8
push ebx
lea eax, [ebp - 0x104]
push 0x1003c668
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GameSendPacketToGame
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x38], eax
test eax, eax
jne 0x1000ccf3
push ebx
lea eax, [ebp - 0x104]
push 0x1003c578
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GameInsertPacketToGame
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x3c], eax
test eax, eax
jne 0x1000cd2e
push ebx
lea eax, [ebp - 0x104]
push 0x1003c6b0
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GameSendMessageToChat
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x40], eax
test eax, eax
jne 0x1000cd69
push ebx
lea eax, [ebp - 0x104]
push 0x1003c6f8
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.D2FindFile
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x44], eax
test eax, eax
jne 0x1000cda4
push ebx
lea eax, [ebp - 0x104]
push 0x1003c734
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GameSaveAndExit
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x4c], eax
test eax, eax
jne 0x1000cddf
push ebx
lea eax, [ebp - 0x104]
push 0x1003c768
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetIniFileName
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x58], eax
test eax, eax
jne 0x1000ce1a
push ebx
lea eax, [ebp - 0x104]
push 0x1003c7a4
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetIniString
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x5c], eax
test eax, eax
jne 0x1000ce55
push ebx
lea eax, [ebp - 0x104]
push 0x1003c7dc
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetIniSectionNames
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x60], eax
test eax, eax
jne 0x1000ce90
push ebx
lea eax, [ebp - 0x104]
push 0x1003c818
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.FindMyD2WndHandle
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x64], eax
test eax, eax
jne 0x1000cecb
push ebx
lea eax, [ebp - 0x104]
push 0x1003c858
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.HookD2WndProc
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x68], eax
test eax, eax
jne 0x1000cf06
push ebx
lea eax, [ebp - 0x104]
push 0x1003c894
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.CleanMeUp
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x6c], eax
test eax, eax
jne 0x1000cf41
push ebx
lea eax, [ebp - 0x104]
push 0x1003c8c8
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.DebugTest
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x70], eax
test eax, eax
jne 0x1000cf7c
push ebx
lea eax, [ebp - 0x104]
push 0x1003c8f8
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetModuleDirectory
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x74], eax
test eax, eax
jne 0x1000cfb7
push ebx
lea eax, [ebp - 0x104]
push 0x1003c930
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.IsClientLoaded
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x78], eax
test eax, eax
jne 0x1000cff2
push ebx
lea eax, [ebp - 0x104]
push 0x1003c96c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GameInfof
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x7c], eax
test eax, eax
jne 0x1000d02d
push ebx
lea eax, [ebp - 0x104]
push 0x1003c9a0
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GameErrorf
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x80], eax
test eax, eax
jne 0x1000d06b
push ebx
lea eax, [ebp - 0x104]
push 0x1003c9d0
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GameStringf
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x84], eax
test eax, eax
jne 0x1000d0a9
push ebx
lea eax, [ebp - 0x104]
push 0x1003ca00
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GameCommandf
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x88], eax
test eax, eax
jne 0x1000d0e7
push ebx
lea eax, [ebp - 0x104]
push 0x1003ca38
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GamePrintPacket
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x8c], eax
test eax, eax
jne 0x1000d125
push ebx
lea eax, [ebp - 0x104]
push 0x1003ca70
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.IsGameReady
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x90], eax
test eax, eax
jne 0x1000d163
push ebx
lea eax, [ebp - 0x104]
push 0x1003caa8
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.WasD2HackitLoadedBeforeJoinGame
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x94], eax
test eax, eax
jne 0x1000d1a1
push ebx
lea eax, [ebp - 0x104]
push 0x1003caf0
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.EnumUnits
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x98], eax
test eax, eax
jne 0x1000d1df
push ebx
lea eax, [ebp - 0x104]
push 0x1003cb38
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.VerifyUnit
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x9c], eax
test eax, eax
jne 0x1000d21d
push ebx
lea eax, [ebp - 0x104]
push 0x1003cb68
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.FindUnitByClassID
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xa0], eax
test eax, eax
jne 0x1000d25b
push ebx
lea eax, [ebp - 0x104]
push 0x1003cba0
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.FindUnitByName
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xa4], eax
test eax, eax
jne 0x1000d299
push ebx
lea eax, [ebp - 0x104]
push 0x1003cbdc
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetUnitPosition
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xa8], eax
test eax, eax
jne 0x1000d2d7
push ebx
lea eax, [ebp - 0x104]
push 0x1003cc14
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetUnitName
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xac], eax
test eax, eax
jne 0x1000d315
push ebx
lea eax, [ebp - 0x104]
push 0x1003cc4c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetUnitOwnerID
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xb0], eax
test eax, eax
jne 0x1000d353
push ebx
lea eax, [ebp - 0x104]
push 0x1003cc84
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetUnitClassID
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xb4], eax
test eax, eax
jne 0x1000d391
push ebx
lea eax, [ebp - 0x104]
push 0x1003ccbc
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetUnitHPPercent
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xb8], eax
test eax, eax
jne 0x1000d3cf
push ebx
lea eax, [ebp - 0x104]
push 0x1003ccf8
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetUnitStat
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xbc], eax
test eax, eax
jne 0x1000d40d
push ebx
lea eax, [ebp - 0x104]
push 0x1003cd30
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetUnitAffection
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xc0], eax
test eax, eax
jne 0x1000d44b
push ebx
lea eax, [ebp - 0x104]
push 0x1003cd6c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetMonsterType
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xc4], eax
test eax, eax
jne 0x1000d489
push ebx
lea eax, [ebp - 0x104]
push 0x1003cda8
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetBossEnchants
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xc8], eax
test eax, eax
jne 0x1000d4c7
push ebx
lea eax, [ebp - 0x104]
push 0x1003cde0
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetDistance
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xcc], eax
test eax, eax
jne 0x1000d505
push ebx
lea eax, [ebp - 0x104]
push 0x1003ce18
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.IsMercUnit
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xd0], eax
test eax, eax
jne 0x1000d543
push ebx
lea eax, [ebp - 0x104]
push 0x1003ce4c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetPing
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xd4], eax
test eax, eax
jne 0x1000d581
push ebx
lea eax, [ebp - 0x104]
push 0x1003ce78
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetAffectionName
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xd8], eax
test eax, eax
jne 0x1000d5bf
push ebx
lea eax, [ebp - 0x104]
push 0x1003ceb0
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.AffectionIsAura
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xdc], eax
test eax, eax
jne 0x1000d5fd
push ebx
lea eax, [ebp - 0x104]
push 0x1003ceec
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetMapName
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xe0], eax
test eax, eax
jne 0x1000d63b
push ebx
lea eax, [ebp - 0x104]
push 0x1003cf24
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.MapIsTown
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xe4], eax
test eax, eax
jne 0x1000d679
push ebx
lea eax, [ebp - 0x104]
push 0x1003cf54
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetTownMap
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xe8], eax
test eax, eax
jne 0x1000d6b7
push ebx
lea eax, [ebp - 0x104]
push 0x1003cf84
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetActFromMap
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xec], eax
test eax, eax
jne 0x1000d6f5
push ebx
lea eax, [ebp - 0x104]
push 0x1003cfb8
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.ParseItem
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xf0], eax
test eax, eax
jne 0x1000d733
push ebx
lea eax, [ebp - 0x104]
push 0x1003cfec
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetItemSize
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xf4], eax
test eax, eax
jne 0x1000d771
push ebx
lea eax, [ebp - 0x104]
push 0x1003d01c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.SendKey
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x120], eax
test eax, eax
jne 0x1000d7af
push ebx
lea eax, [ebp - 0x104]
push 0x1003d04c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetSpellName
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x124], eax
test eax, eax
jne 0x1000d7ed
push ebx
lea eax, [ebp - 0x104]
push 0x1003d080
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetGameDifficulty
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x128], eax
test eax, eax
jne 0x1000d82b
push ebx
lea eax, [ebp - 0x104]
push 0x1003d0bc
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetD2WindowTitle
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x12c], eax
test eax, eax
jne 0x1000d869
push ebx
lea eax, [ebp - 0x104]
push 0x1003d0fc
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetInGameTime
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x130], eax
test eax, eax
jne 0x1000d8a7
push ebx
lea eax, [ebp - 0x104]
push 0x1003d138
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetRealmName
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x134], eax
test eax, eax
jne 0x1000d8e5
push ebx
lea eax, [ebp - 0x104]
push 0x1003d170
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetGameName
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x138], eax
test eax, eax
jne 0x1000d923
push ebx
lea eax, [ebp - 0x104]
push 0x1003d1a4
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetGamePassword
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x13c], eax
test eax, eax
jne 0x1000d961
push ebx
lea eax, [ebp - 0x104]
push 0x1003d1dc
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetGameIP
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x140], eax
test eax, eax
jne 0x1000d99f
push ebx
lea eax, [ebp - 0x104]
push 0x1003d214
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.EnumPresetUnits
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x144], eax
test eax, eax
jne 0x1000d9dd
push ebx
lea eax, [ebp - 0x104]
push 0x1003d248
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.CalculatePath
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x148], eax
test eax, eax
jne 0x1000da1b
push ebx
lea eax, [ebp - 0x104]
push 0x1003d284
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetItemCode
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x14c], eax
test eax, eax
jne 0x1000da59
push ebx
lea eax, [ebp - 0x104]
push 0x1003d2b8
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetItemCodeEx
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x150], eax
test eax, eax
jne 0x1000da97
push ebx
lea eax, [ebp - 0x104]
push 0x1003d2f0
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.D2GetCurrentRoomNum
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x164], eax
test eax, eax
jne 0x1000dad5
push ebx
lea eax, [ebp - 0x104]
push 0x1003d32c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.D2GetAllRoomCoords
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x16c], eax
test eax, eax
jne 0x1000db13
push ebx
lea eax, [ebp - 0x104]
push 0x1003d370
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.D2GetRoomCoords
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x168], eax
test eax, eax
jne 0x1000db51
push ebx
lea eax, [ebp - 0x104]
push 0x1003d3ac
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.LeftClick
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x154], eax
test eax, eax
jne 0x1000db8f
push ebx
lea eax, [ebp - 0x104]
push 0x1003d3e4
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.RightClick
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x158], eax
test eax, eax
jne 0x1000dbcd
push ebx
lea eax, [ebp - 0x104]
push 0x1003d414
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.QueryModuleData
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x15c], eax
test eax, eax
jne 0x1000dc0b
push ebx
lea eax, [ebp - 0x104]
push 0x1003d448
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetKeyName
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x160], eax
test eax, eax
jne 0x1000dc49
push ebx
lea eax, [ebp - 0x104]
push 0x1003d480
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetItemStatCostTxtRecord
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x190], eax
test eax, eax
jne 0x1000dc87
push ebx
lea eax, [ebp - 0x104]
push 0x1003d4c0
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetMagicAffixDataTables
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x194], eax
test eax, eax
jne 0x1000dcc5
push ebx
lea eax, [ebp - 0x104]
push 0x1003d50c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetMagicAffixTxtRecord
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x198], eax
test eax, eax
jne 0x1000dd03
push ebx
lea eax, [ebp - 0x104]
push 0x1003d558
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetDataTables
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x19c], eax
test eax, eax
jne 0x1000dd41
push ebx
lea eax, [ebp - 0x104]
push 0x1003d598
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetStringFromTblIndex
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x1a0], eax
test eax, eax
jne 0x1000dd7f
push ebx
lea eax, [ebp - 0x104]
push 0x1003d5d8
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetPropertyName
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x1a4], eax
test eax, eax
jne 0x1000ddbd
push ebx
lea eax, [ebp - 0x104]
push 0x1003d618
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetNumProperties
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x1a8], eax
test eax, eax
jne 0x1000ddfb
push ebx
lea eax, [ebp - 0x104]
push 0x1003d658
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetStatName
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x1ac], eax
test eax, eax
jne 0x1000de39
push ebx
lea eax, [ebp - 0x104]
push 0x1003d690
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetNumStats
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x1b0], eax
test eax, eax
jne 0x1000de77
push ebx
lea eax, [ebp - 0x104]
push 0x1003d6c4
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetStatValue
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x1b4], eax
test eax, eax
jne 0x1000deb5
push ebx
lea eax, [ebp - 0x104]
push 0x1003d6fc
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetUnitStatBonus
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x1b8], eax
test eax, eax
jne 0x1000def3
push ebx
lea eax, [ebp - 0x104]
push 0x1003d738
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetUnitBaseStat
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x1bc], eax
test eax, eax
jne 0x1000df31
push ebx
lea eax, [ebp - 0x104]
push 0x1003d774
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetItemQuality
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x110], eax
test eax, eax
jne 0x1000df6f
push ebx
lea eax, [ebp - 0x104]
push 0x1003d7b0
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.LeftClickHere
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x170], eax
test eax, eax
jne 0x1000dfad
push ebx
lea eax, [ebp - 0x104]
push 0x1003d7e8
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.RightClickHere
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x174], eax
test eax, eax
jne 0x1000dfeb
push ebx
lea eax, [ebp - 0x104]
push 0x1003d820
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetCommandCharacter
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x118], eax
test eax, eax
jne 0x1000e029
push ebx
lea eax, [ebp - 0x104]
push 0x1003d85c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetTickRate
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x11c], eax
test eax, eax
jne 0x1000e067
push ebx
lea eax, [ebp - 0x104]
push 0x1003d898
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.IsStackable
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xf8], eax
test eax, eax
jne 0x1000e0a5
push ebx
lea eax, [ebp - 0x104]
push 0x1003d8cc
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.IsWeapon
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0xfc], eax
test eax, eax
jne 0x1000e0e3
push ebx
lea eax, [ebp - 0x104]
push 0x1003d900
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.IsArmor
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x100], eax
test eax, eax
jne 0x1000e121
push ebx
lea eax, [ebp - 0x104]
push 0x1003d92c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.IsPotion
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x104], eax
test eax, eax
jne 0x1000e15f
push ebx
lea eax, [ebp - 0x104]
push 0x1003d95c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetItemName
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x108], eax
test eax, eax
jne 0x1000e19d
push ebx
lea eax, [ebp - 0x104]
push 0x1003d98c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetItemSetName
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x10c], eax
test eax, eax
jne 0x1000e1db
push ebx
lea eax, [ebp - 0x104]
push 0x1003d9c4
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetItemBeltRows
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x114], eax
test eax, eax
jne 0x1000e219
push ebx
lea eax, [ebp - 0x104]
push 0x1003d9fc
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.RemoveFromStorage
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x16c], eax
test eax, eax
jne 0x1000e257
push ebx
lea eax, [ebp - 0x104]
push 0x1003da3c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.DumpStorage
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x170], eax
test eax, eax
jne 0x1000e295
push ebx
lea eax, [ebp - 0x104]
push 0x1003da74
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetNumberOfFreeStorageSlots
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x174], eax
test eax, eax
jne 0x1000e2d3
push ebx
lea eax, [ebp - 0x104]
push 0x1003dab8
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetCubeID
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x154], eax
test eax, eax
jne 0x1000e311
push ebx
lea eax, [ebp - 0x104]
push 0x1003dafc
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.OpenCube
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x150], eax
test eax, eax
jne 0x1000e34f
push ebx
lea eax, [ebp - 0x104]
push 0x1003db2c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetInteractedNPCUniqueID
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x178], eax
test eax, eax
jne 0x1000e38d
push ebx
lea eax, [ebp - 0x104]
push 0x1003db6c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.IsInteractedWithNPC
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x17c], eax
test eax, eax
jne 0x1000e3cb
push ebx
lea eax, [ebp - 0x104]
push 0x1003dbb4
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetInteractedNPCClassID
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x180], eax
test eax, eax
jne 0x1000e409
push ebx
lea eax, [ebp - 0x104]
push 0x1003dbfc
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetInteractedWPUniqueID
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x184], eax
test eax, eax
jne 0x1000e447
push ebx
lea eax, [ebp - 0x104]
push 0x1003dc48
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.IsInteractedWithWP
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x188], eax
test eax, eax
jne 0x1000e485
push ebx
lea eax, [ebp - 0x104]
push 0x1003dc90
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetSpellChargesReal
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x178], eax
test eax, eax
jne 0x1000e4c3
push ebx
lea eax, [ebp - 0x104]
push 0x1003dcd0
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.EnumPlayers
push esi
call edi
mov ecx, dword [0x10043b08]
mov dword [ecx + 0x18c], eax
test eax, eax
jne 0x1000e501
push ebx
lea eax, [ebp - 0x104]
push 0x1003dd0c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.HaveSpell
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx], eax
test eax, eax
jne 0x1000e53b
push ebx
lea eax, [ebp - 0x104]
push 0x1003dd40
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.IsInTown
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 4], eax
test eax, eax
jne 0x1000e576
push ebx
lea eax, [ebp - 0x104]
push 0x1003dd70
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetMyMercUnit
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 8], eax
test eax, eax
jne 0x1000e5b1
push ebx
lea eax, [ebp - 0x104]
push 0x1003dda4
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetID
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0xc], eax
test eax, eax
jne 0x1000e5ec
push ebx
lea eax, [ebp - 0x104]
push 0x1003ddd4
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetName
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x10], eax
test eax, eax
jne 0x1000e627
push ebx
lea eax, [ebp - 0x104]
push 0x1003ddfc
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetMode
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x14], eax
test eax, eax
jne 0x1000e662
push ebx
lea eax, [ebp - 0x104]
push 0x1003de28
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetSelectedSpell
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x18], eax
test eax, eax
jne 0x1000e69d
push ebx
lea eax, [ebp - 0x104]
push 0x1003de60
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetHPPercent
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x1c], eax
test eax, eax
jne 0x1000e6d8
push ebx
lea eax, [ebp - 0x104]
push 0x1003de9c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetManaPercent
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x20], eax
test eax, eax
jne 0x1000e713
push ebx
lea eax, [ebp - 0x104]
push 0x1003ded4
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetItemDurabilityPercent
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x24], eax
test eax, eax
jne 0x1000e74e
push ebx
lea eax, [ebp - 0x104]
push 0x1003df18
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetStat
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x28], eax
test eax, eax
jne 0x1000e789
push ebx
lea eax, [ebp - 0x104]
push 0x1003df54
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetAffection
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x2c], eax
test eax, eax
jne 0x1000e7c4
push ebx
lea eax, [ebp - 0x104]
push 0x1003df88
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.SelectSpell
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x30], eax
test eax, eax
jne 0x1000e7ff
push ebx
lea eax, [ebp - 0x104]
push 0x1003dfbc
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetPosition
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x34], eax
test eax, eax
jne 0x1000e83a
push ebx
lea eax, [ebp - 0x104]
push 0x1003dff0
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.GetMyCorpseCount
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x38], eax
test eax, eax
jne 0x1000e875
push ebx
lea eax, [ebp - 0x104]
push 0x1003e02c
push eax
call fcn.100106a0
lea eax, [ebp - 0x104]
push eax
mov eax, dword [0x10043b08]
mov eax, dword [eax + 4]
call eax
add esp, 0x10
push str.PickMyCorpse
push esi
call edi
mov ecx, dword [0x10043b0c]
mov dword [ecx + 0x3c], eax
test eax, eax
jne 0x1000e8b0