Function at 0x4b4170
Capabilities:
Authenticate hmac
Create directory
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5c8341
mov eax, dword fs:[0]
push eax
sub esp, 0xc64
mov eax, dword [0x62b768]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0xc2c], ebx
mov dword [ebp - 0xc38], ebx
mov dword [ebp - 0xc70], ebx
mov dword [ebx], vtable.BBOServer.0
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x3c], 0
mov dword [ebx + 0x40], 0
lea ecx, [ebx + 0xb0]
mov dword [ebp - 4], 0
call fcn.00515d40
push 0
mov dword [0x62fb20], ebx
push str.Logs
mov dword [ebx + 0xc0], 0x2710
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
lea ecx, [ebp - 0xc24]
call fcn.00515d40
mov ecx, dword [ebp - 0xc1c]
mov dx, word [ebp - 0xc1e]
add ecx, 0x13
movzx edi, cx
mov word [ebp - 0xc1c], cx
lea eax, [edi - 0x18]
movzx eax, ax
mov esi, eax
cmp cx, 0x18
jae 0x4b4240
mov ecx, 0xffff
add dx, cx
mov word [ebp - 0xc1e], dx
jmp 0x4b4247
mov word [ebp - 0xc1c], ax
movzx eax, word [ebp - 0xc1a]
cmp edi, 0x18
push eax
movzx eax, si
mov ecx, edi
cmovae ecx, eax
movzx eax, cx
push eax
movzx eax, dx
push eax
movzx eax, word [ebp - 0xc22]
push eax
lea eax, [ebp - 0x410]
push str.________Server_Starting_at__d__02d___d:_02d_n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x5d2d08
push str.serverdataconfig.dat
call fcn.00569bde
push 0x62fb2c
mov edi, eax
push str.MAX_LOGINS__d_n
push edi
call fcn.00448440
push dword [0x62fb2c]
lea eax, [ebp - 0x410]
push str.MAX_LOGINS_is__d_n
push eax
call fcn.004725c0
add esp, 0x40
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
add ebx, 0x8c
push ebx
push str.ENABLE_TOI__d_n
push edi
call fcn.00448440
push dword [ebx]
lea eax, [ebp - 0x410]
push str.ENABLE_TOI_is__d_n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x62fb34
push str.ENABLE_HALLOWEEN__d_n
push edi
call fcn.00448440
push dword [0x62fb34]
lea eax, [ebp - 0x410]
push str.ENABLE_HALLOWEEN_is__d_n
push eax
call fcn.004725c0
add esp, 0x40
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x62fb38
push str.INFINITE_SUPPLY__d_n
push edi
call fcn.00448440
push dword [0x62fb38]
lea eax, [ebp - 0x410]
push str.INFINITE_SUPPLY_is__d_n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
mov esi, dword [ebp - 0xc2c]
lea ebx, [esi + 0x7c]
push ebx
push str.ENABLE_CHEATING__d_n
push edi
call fcn.00448440
push dword [ebx]
lea eax, [ebp - 0x410]
push str.ENABLE_CHEATING_is__d_n
push eax
call fcn.004725c0
add esp, 0x40
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
sub esi, 0xffffff80
push esi
push str.ENABLE_WALL_BREAKING__d_n
push edi
call fcn.00448440
push dword [esi]
lea eax, [ebp - 0x410]
push str.ENABLE_WALL_BREAKING_is__d_n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
mov esi, dword [ebp - 0xc2c]
add esi, 0x84
push esi
push str.REMOVE_GEO_WALLS__d_n
push edi
call fcn.00448440
push dword [esi]
lea eax, [ebp - 0x410]
push str.REMOVE_GEO_WALLS_is__d_n
push eax
call fcn.004725c0
mov esi, dword [ebp - 0xc2c]
add esp, 0x40
add esi, 0x88
push esi
push str.POSSESSED_MONSTERS_MOVE__d_n
push edi
call fcn.00448440
push dword [esi]
lea eax, [ebp - 0x410]
push str.POSSESSED_MONSTERS_MOVE_is__d_n
push eax
call fcn.004725c0
mov esi, dword [ebp - 0xc2c]
add esi, 0x94
push esi
push str.COMBAT_EXP_MULTIPLIER__d_n
push edi
call fcn.00448440
push dword [esi]
lea eax, [ebp - 0x410]
push str.COMBAT_EXP_MULTIPLIER_is__d_n
push eax
call fcn.004725c0
mov esi, dword [ebp - 0xc2c]
add esi, 0x98
push esi
push str.SMITH_EXP_MULTIPLIER__d_n
push edi
call fcn.00448440
push dword [esi]
lea eax, [ebp - 0x410]
push str.SMITH_EXP_MULTIPLIER_is__d_n
push eax
call fcn.004725c0
mov esi, dword [ebp - 0xc2c]
add esp, 0x48
add esi, 0x9c
push esi
push str.BOMBING_EXP_MULTIPLIER__d_n
push edi
call fcn.00448440
push dword [esi]
lea eax, [ebp - 0x410]
push str.BOMBING_EXP_MULTIPLIER_is__d_n
push eax
call fcn.004725c0
mov esi, dword [ebp - 0xc2c]
add esi, 0xa0
push esi
push str.GEOMANCY_EXP_MULTIPLIER__d_n
push edi
call fcn.00448440
push dword [esi]
lea eax, [ebp - 0x410]
push str.GEOMANCY_EXP_MULTIPLIER_is__d_n
push eax
call fcn.004725c0
mov esi, dword [ebp - 0xc2c]
add esi, 0xa4
push esi
push str.TS_EXP_MULTIPLIER__d_n
push edi
call fcn.00448440
push dword [esi]
lea eax, [ebp - 0x410]
push str.TS_EXP_MULTIPLIER_is__d_n
push eax
call fcn.004725c0
mov esi, dword [ebp - 0xc2c]
add esp, 0x48
add esi, 0xa8
push esi
push str.MAGIC_EXP_MULTIPLIER__d_n
push edi
call fcn.00448440
push dword [esi]
lea eax, [ebp - 0x410]
push str.MAGIC_EXP_MULTIPLIER_is__d_n
push eax
call fcn.004725c0
mov esi, dword [ebp - 0xc2c]
add esi, 0xac
push esi
push str.MASTERY_EXP_MULTIPLIER__d_n
push edi
call fcn.00448440
push dword [esi]
lea eax, [ebp - 0x410]
push str.MASTERY_EXP_MULTIPLIER_is__d_n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push edi
call fcn.005698f0
mov esi, dword [ebp - 0xc2c]
add esp, 0x3c
mov eax, dword [ebp + 8]
mov dword [esi + 0x78], eax
test eax, eax
je 0x4b45e7
call fcn.00443ea0
push 0x8c8
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc38], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x4b45cf
mov ecx, eax
call fcn.004405c0
jmp 0x4b45d1
xor eax, eax
xor ecx, ecx
mov byte [ebp - 4], 0
cmp dword [ebx], ecx
mov dword [esi + 0x34], eax
setne cl
add ecx, 0xe5e
jmp 0x4b4623
push 0x88
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc38], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x4b460b
mov ecx, eax
call fcn.00445220
jmp 0x4b460d
xor eax, eax
cmp dword [ebx], 0
mov ecx, 0xe5e
mov byte [ebp - 4], 0
mov dword [esi + 0x34], eax
je 0x4b4623
mov ecx, 0xe5f
push 0
push 0x64
push ecx
mov ecx, eax
call fcn.00442280
push 0x10
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc38], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x4b4650
mov ecx, eax
call fcn.0044e040
jmp 0x4b4652
xor eax, eax
push 0x10
mov byte [ebp - 4], 0
mov dword [esi + 0x44], eax
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc38], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x4b467a
mov ecx, eax
call fcn.0044e040
jmp 0x4b467c
xor eax, eax
push 0x10
mov byte [ebp - 4], 0
mov dword [esi + 0x48], eax
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc38], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x4b46a4
mov ecx, eax
call fcn.0044e040
jmp 0x4b46a6
xor eax, eax
mov dword [esi + 0x4c], eax
lea eax, [ebp - 0x410]
push str.Loading_Pet_Data_n
push eax
mov byte [ebp - 4], 0
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
call fcn.004a2730
lea eax, [ebp - 0x410]
push str.Initializing_main_map_n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x10128
call fcn.00559eaa
add esp, 0x24
mov dword [ebp - 0xc38], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x4b472c
push dword [esi + 0x34]
mov ecx, eax
push str.Ground
push 0
call fcn.004f8590
mov ebx, eax
mov dword [ebp - 0xc30], eax
jmp 0x4b4734
xor ebx, ebx
mov dword [ebp - 0xc30], ebx
mov eax, dword [ebx]
mov ecx, ebx
push 0
push 0
push 0
push 0
mov byte [ebp - 4], 0
call dword [eax + 0x14]
mov ecx, dword [esi + 0x48]
push ebx
call fcn.0044e350
lea eax, [ebp - 0x410]
push str.Adding_Merchants._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
add esp, 0x10
mov edi, 0x6112d0
xor esi, esi
mov dword [ebp - 0xc40], esi
mov eax, dword [edi + 8]
inc eax
mov dword [ebp - 0xc34], 0
test eax, eax
jle 0x4b4884
nop dword [eax + eax]
push 0x990
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc38], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x4b47c8
push 2
mov ecx, eax
call fcn.004a0110
mov ebx, eax
jmp 0x4b47ca
xor ebx, ebx
mov eax, dword [edi + 0xc]
mov byte [ebp - 4], 0
mov dword [ebx + 0x184], eax
mov dword [ebx + 0x188], esi
nop dword [eax]
mov esi, dword [edi + 8]
call fcn.00569587
cdq
lea ecx, [esi + 1]
idiv ecx
mov eax, esi
mov ecx, edx
cdq
sub eax, edx
sar eax, 1
sub ecx, eax
mov eax, dword [edi]
add eax, ecx
mov dword [ebx + 0x108], eax
mov esi, dword [edi + 8]
call fcn.00569587
cdq
lea ecx, [esi + 1]
idiv ecx
mov eax, esi
mov ecx, edx
cdq
sub eax, edx
mov edx, dword [edi + 4]
sar eax, 1
sub ecx, eax
add edx, ecx
mov dword [ebx + 0x10c], edx
mov ecx, edx
mov eax, dword [edi + 4]
inc eax
cmp edx, eax
jne 0x4b4844
mov eax, dword [ebx + 0x108]
cmp eax, dword [edi]
jne 0x4b4844
lea ecx, [edx + 1]
mov dword [ebx + 0x10c], ecx
mov eax, dword [ebx + 0x108]
cmp eax, dword [edi]
jne 0x4b4853
cmp ecx, dword [edi + 4]
je 0x4b47e0
mov eax, dword [ebp - 0xc30]
push ebx
mov ecx, dword [eax + 0x118]
call fcn.00515fc0
mov ebx, dword [ebp - 0xc34]
mov eax, dword [edi + 8]
inc ebx
mov esi, dword [ebp - 0xc40]
inc eax
mov dword [ebp - 0xc34], ebx
cmp ebx, eax
jl 0x4b47a0
inc esi
add edi, 0x50
mov dword [ebp - 0xc40], esi
cmp edi, 0x611a50
jl 0x4b4782
lea eax, [ebp - 0x410]
push str.Adding_trainers._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
add esp, 0x10
mov edi, 0x6112d8
mov eax, dword [edi]
cdq
sub eax, edx
mov dword [ebp - 0xc34], 0
sar eax, 1
inc eax
test eax, eax
jle 0x4b4995
nop
push 0x990
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc38], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x4b4908
push 3
mov ecx, eax
call fcn.004a0110
mov ebx, eax
jmp 0x4b490a
xor ebx, ebx
mov byte [ebp - 4], 0
nop
mov esi, dword [edi]
call fcn.00569587
cdq
lea ecx, [esi + 1]
idiv ecx
mov eax, esi
mov ecx, edx
cdq
sub eax, edx
sar eax, 1
sub ecx, eax
mov eax, dword [edi - 8]
add eax, ecx
mov dword [ebx + 0x108], eax
mov esi, dword [edi]
call fcn.00569587
cdq
lea ecx, [esi + 1]
idiv ecx
mov eax, esi
mov ecx, edx
cdq
sub eax, edx
mov edx, dword [edi - 4]
sar eax, 1
sub ecx, eax
mov eax, dword [ebx + 0x108]
add edx, ecx
mov dword [ebx + 0x10c], edx
cmp eax, dword [edi - 8]
jne 0x4b4966
cmp edx, dword [edi - 4]
je 0x4b4910
mov eax, dword [ebp - 0xc30]
push ebx
mov ecx, dword [eax + 0x118]
call fcn.00515fc0
mov eax, dword [edi]
mov ebx, dword [ebp - 0xc34]
cdq
inc ebx
sub eax, edx
mov dword [ebp - 0xc34], ebx
sar eax, 1
inc eax
cmp ebx, eax
jl 0x4b48e0
add edi, 0x50
cmp edi, str.Knife
jl 0x4b48c4
lea eax, [ebp - 0x410]
push str.Adding_Town_Mages._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
add esp, 0x10
mov esi, 0x6112d4
nop
push 0x990
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc38], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x4b49f8
push 4
mov ecx, eax
call fcn.004a0110
mov ecx, eax
jmp 0x4b49fa
xor ecx, ecx
mov eax, dword [esi - 4]
mov dword [ecx + 0x108], eax
mov eax, dword [esi]
inc eax
mov byte [ebp - 4], 0
mov dword [ecx + 0x10c], eax
mov eax, dword [ebp - 0xc30]
push ecx
mov ecx, dword [eax + 0x118]
call fcn.00515fc0
add esi, 0x50
cmp esi, 0x611a54
jl 0x4b49d0
push 0x194
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc38], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x4b4a5a
push 0x12
push 0x79
push 0xa1
mov ecx, eax
call fcn.004a2530
jmp 0x4b4a5c
xor eax, eax
mov esi, dword [ebp - 0xc30]
mov dword [eax + 0x190], 1
push eax
mov byte [ebp - 4], 0
mov ecx, dword [esi + 0x118]
call fcn.00515fc0
mov eax, dword [ebp - 0xc2c]
cmp dword [eax + 0x8c], 1
jne 0x4b4b89
push 0x990
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc38], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x4b4ab7
push 2
mov ecx, eax
call fcn.004a0110
mov esi, eax
jmp 0x4b4ab9
xor esi, esi
mov eax, dword [ebp - 0xc30]
mov dword [esi + 0x184], 0x19
mov dword [esi + 0x188], 0
mov dword [esi + 0x108], 0xa2
mov dword [esi + 0x10c], 0x79
mov ecx, dword [eax + 0x118]
push esi
mov byte [ebp - 4], 0
call fcn.00515fc0
lea eax, [ebp - 0xc14]
push str.Tower_of_Infinity_Ticket.
push eax
call fcn.0043d370
push 0x120
call fcn.00559eaa
add esp, 0xc
mov dword [ebp - 0xc38], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x4b4b39
lea ecx, [ebp - 0xc14]
push ecx
push 0
push 0x13
mov ecx, eax
call fcn.0050dad0
mov ecx, eax
jmp 0x4b4b3b
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
push ecx
mov byte [ebp - 4], 0
mov dword [eax + 8], 0x3f800000
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x461c4000
mov dword [ecx + 0x118], 0x64
mov dword [eax], 0xa
mov dword [eax + 4], 0xa
mov ecx, dword [esi + 0x180]
call fcn.0050e390
mov esi, dword [ebp - 0xc30]
lea eax, [ebp - 0x410]
push str.Adding_dungeons._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x5d2d08
push str.serverdatadungeons.dat
call fcn.00569bde
mov ebx, eax
add esp, 0x18
mov dword [ebp - 0xc40], ebx
test ebx, ebx
jne 0x4b4fb9
mov dword [ebp - 0xc40], ebx
xor eax, eax
mov dword [ebp - 0xc50], eax
nop dword [eax + eax]
push eax
push ebx
mov ecx, esi
call fcn.004f8640
lea edi, [eax - 0xfa]
mov dword [ebp - 0xc3c], edi
cmp edi, 4
ja 0x4b4f89
push 0x190
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc54], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x4b4c2b
push dword [ebp - 0xc50]
mov ecx, eax
push ebx
call fcn.004a23b0
mov ebx, eax
jmp 0x4b4c2d
xor ebx, ebx
mov ecx, dword [esi + 0x118]
push ebx
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x23c
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc58], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x4b4c79
mov ecx, dword [ebp - 0xc2c]
push dword [ecx + 0x34]
mov ecx, eax
push str.Test_Dungeon
push 1
call fcn.004efaf0
mov esi, eax
mov dword [ebp - 0xc34], eax
jmp 0x4b4c81
xor esi, esi
mov dword [ebp - 0xc34], esi
push edi
push dword [ebp - 0xc50]
lea eax, [edi + 4]
mov byte [ebp - 4], 0
push dword [ebp - 0xc40]
lea eax, [eax + eax*4]
mov ecx, esi
push 0x14
push eax
call fcn.004f0940
mov eax, dword [ebp - 0xc2c]
push esi
mov ecx, dword [eax + 0x48]
call fcn.0044e350
mov dword [ebx + 0x188], esi
mov eax, 0x2aaaaaab
mov ecx, dword [esi + 0x124]
mov ebx, dword [esi + 0x128]
imul ecx, ebx
mov dword [ebp - 0xc44], 0
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
test eax, eax
jle 0x4b4e08
call fcn.00569587
cdq
mov ecx, 0x22
idiv ecx
mov ebx, edx
mov dword [ebp - 0xc38], ebx
call fcn.00569587
cdq
mov ecx, 6
idiv ecx
lea eax, [ebx + ebx*2]
mov ecx, edx
mov dword [ebp - 0xc4c], ecx
lea eax, [ecx + eax*2]
imul ecx, eax, 0x64
cmp byte [ecx + str.Ghost], 0
je 0x4b4ddd
mov ecx, dword [ecx + 0x61f87c]
lea eax, [edi - 3]
cmp ecx, eax
jl 0x4b4ddd
cmp ecx, edi
jg 0x4b4ddd
call fcn.00569587
cdq
idiv dword [esi + 0x124]
mov ebx, edx
call fcn.00569587
cdq
idiv dword [esi + 0x128]
mov edi, edx
cmp ebx, 4
jge 0x4b4d67
cmp edi, 4
jl 0x4b4d41
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc5c], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x4b4d9b
push 0
push 0
push dword [ebp - 0xc4c]
mov ecx, eax
push dword [ebp - 0xc38]
call fcn.00496ed0
jmp 0x4b4d9d
xor eax, eax
mov dword [eax + 0x108], ebx
mov dword [eax + 0x10c], edi
mov dword [eax + 0x110], ebx
mov dword [eax + 0x114], edi
mov dword [eax + 0x228], ebx
mov dword [eax + 0x22c], edi
mov ecx, dword [esi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
inc dword [ebp - 0xc44]
mov edi, dword [ebp - 0xc3c]
mov ecx, dword [esi + 0x124]
mov eax, 0x2aaaaaab
mov ebx, dword [esi + 0x128]
imul ecx, ebx
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0xc44], eax
jl 0x4b4ce8
test edi, edi
mov dword [ebp - 0xc44], 0
mov eax, 1
cmove edi, eax
imul ebx, dword [esi + 0x124]
mov eax, 0x2aaaaaab
mov dword [ebp - 0xc3c], edi
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
test eax, eax
jle 0x4b4f7d
mov edi, 0x22
lea esi, [edi - 0x1c]
nop dword [eax]
call fcn.00569587
cdq
idiv edi
mov ebx, edx
mov dword [ebp - 0xc4c], ebx
call fcn.00569587
cdq
idiv esi
lea eax, [ebx + ebx*2]
mov ecx, edx
mov dword [ebp - 0xc38], ecx
lea eax, [ecx + eax*2]
imul eax, eax, 0x64
test byte [eax + 0x61f880], 1
je 0x4b4e50
cmp byte [eax + str.Ghost], 0
mov esi, dword [ebp - 0xc34]
mov edi, dword [ebp - 0xc3c]
je 0x4b4f54
mov ecx, dword [eax + 0x61f87c]
lea eax, [edi - 3]
cmp ecx, eax
jl 0x4b4f54
lea eax, [edi - 1]
cmp ecx, eax
jg 0x4b4f54
call fcn.00569587
cdq
idiv dword [esi + 0x124]
mov ebx, edx
call fcn.00569587
cdq
idiv dword [esi + 0x128]
mov edi, edx
cmp ebx, 4
jge 0x4b4edd
cmp edi, 4
jl 0x4b4eb7
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc60], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x4b4f11
push 0
push 0
push dword [ebp - 0xc38]
mov ecx, eax
push dword [ebp - 0xc4c]
call fcn.00496ed0
jmp 0x4b4f13
xor eax, eax
mov byte [eax + 0x1dc], 1
mov dword [eax + 0x108], ebx
mov dword [eax + 0x10c], edi
mov dword [eax + 0x110], ebx
mov dword [eax + 0x114], edi
mov dword [eax + 0x228], ebx
mov dword [eax + 0x22c], edi
mov ecx, dword [esi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
inc dword [ebp - 0xc44]
mov ecx, dword [esi + 0x128]
mov eax, 0x2aaaaaab
imul ecx, dword [esi + 0x124]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0xc44], eax
jl 0x4b4e41
mov esi, dword [ebp - 0xc30]
mov ebx, dword [ebp - 0xc40]
mov eax, dword [ebp - 0xc50]
inc eax
mov dword [ebp - 0xc50], eax
cmp eax, 0x100
jl 0x4b4be0
inc ebx
mov dword [ebp - 0xc40], ebx
cmp ebx, 0x100
jl 0x4b4bd3
jmp 0x4b5668
push 0x19
call fcn.005695a8
lea eax, [ebp - 0xc44]
push eax
push 0x5d5860
push ebx
call fcn.00448440
push 0
lea eax, [ebp - 0x410]
push eax
push ebx
call fcn.0044d8e0
add esp, 0x1c
lea eax, [ebp - 0x410]
mov ecx, str.DUNGEON
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4b5010
test dl, dl
je 0x4b500c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4b5010
add eax, 2
add ecx, 2
test dl, dl
jne 0x4b4ff0
xor eax, eax
jmp 0x4b5015
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4b5650
lea ebx, [eax + 0x22]
lea edi, [eax + 6]
push 0x23c
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc60], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x4b5059
mov ecx, dword [ebp - 0xc2c]
push dword [ecx + 0x34]
mov ecx, eax
push str.Test_Dungeon
push 1
call fcn.004efaf0
mov esi, eax
jmp 0x4b505b
xor esi, esi
movss xmm0, dword [ebp - 0xc44]
movss xmm1, dword [0x5de74c]
comiss xmm1, xmm0
push ecx
mov ecx, esi
mov byte [ebp - 4], 0
movss dword [esp], xmm0
push dword [ebp - 0xc40]
jbe 0x4b5149
call fcn.004f0cf0
lea eax, [esi + 0x144]
push eax
lea eax, [ebp - 0x410]
push eax
call fcn.004725c0
mov eax, dword [esi + 0x12c]
add esp, 8
mov dword [ebp - 0xc38], eax
mov ecx, esi
mov eax, dword [esi + 0x130]
mov dword [ebp - 0xc34], eax
mov eax, dword [esi]
push 1
call dword [eax]
push 0x23c
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc5c], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x4b50f7
mov ecx, dword [ebp - 0xc2c]
push dword [ecx + 0x34]
mov ecx, eax
push str.Test_Dungeon
push 1
call fcn.004efaf0
mov esi, eax
jmp 0x4b50f9
xor esi, esi
mov byte [ebp - 4], 0
call fcn.00569587
mov ecx, 5
cdq
idiv ecx
push edx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xa
push ecx
mov ecx, esi
call fcn.004f0940
lea eax, [ebp - 0x410]
push eax
lea eax, [esi + 0x144]
push eax
call fcn.004b3b30
mov eax, dword [ebp - 0xc38]
add esp, 8
mov dword [esi + 0x12c], eax
mov eax, dword [ebp - 0xc34]
mov dword [esi + 0x130], eax
jmp 0x4b514e
call fcn.004f0cf0
mov ecx, dword [ebp - 0xc2c]
push esi
call fcn.004b92d0
movss xmm0, dword [ebp - 0xc44]
lea ecx, [esi + 0x12c]
movss xmm1, dword [0x5de748]
comiss xmm1, xmm0
mov dword [ebp - 0xc3c], ecx
jbe 0x4b5199
mov eax, dword [ecx]
add eax, eax
mov dword [ecx], eax
mov eax, dword [esi + 0x130]
add eax, eax
mov dword [esi + 0x130], eax
movss xmm0, dword [ebp - 0xc44]
jmp 0x4b519f
mov dword [ebp - 0xc3c], ecx
movss xmm1, dword [0x5de74c]
comiss xmm1, xmm0
jbe 0x4b5344
mov ecx, dword [esi + 0x128]
mov eax, 0x2aaaaaab
imul ecx, dword [esi + 0x124]
mov dword [ebp - 0xc34], 0
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
test eax, eax
jle 0x4b533e
nop
call fcn.00569587
cdq
idiv ebx
mov ebx, edx
mov dword [ebp - 0xc4c], ebx
call fcn.00569587
cdq
idiv edi
lea eax, [ebx + ebx*2]
mov ecx, edx
mov dword [ebp - 0xc50], ecx
lea eax, [ecx + eax*2]
imul eax, eax, 0x64
cmp byte [eax + str.Ghost], 0
je 0x4b5310
call fcn.00569587
cdq
idiv dword [esi + 0x124]
mov edi, edx
call fcn.00569587
cdq
idiv dword [esi + 0x128]
mov eax, dword [ebp - 0xc4c]
mov ecx, dword [ebp - 0xc50]
mov ebx, edx
lea eax, [eax + eax*2]
lea eax, [ecx + eax*2]
imul eax, eax, 0x64
test byte [eax + 0x61f880], 1
jne 0x4b527d
mov ebx, 0x3e8
mov edi, ebx
call fcn.00569587
cdq
mov ecx, 0x22
idiv ecx
mov dword [ebp - 0xc4c], edx
call fcn.00569587
cdq
mov ecx, 6
idiv ecx
mov dword [ebp - 0xc50], edx
mov eax, dword [esi + 0x124]
sub eax, 2
cmp edi, eax
jle 0x4b529b
mov eax, dword [esi + 0x128]
sub eax, 2
cmp ebx, eax
jg 0x4b5216
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc58], eax
mov byte [ebp - 4], 0x13
test eax, eax
je 0x4b52cf
push 0
push 0
push dword [ebp - 0xc50]
mov ecx, eax
push dword [ebp - 0xc4c]
call fcn.00496ed0
jmp 0x4b52d1
xor eax, eax
mov dword [eax + 0x108], edi
mov dword [eax + 0x10c], ebx
mov dword [eax + 0x110], edi
mov dword [eax + 0x114], ebx
mov dword [eax + 0x228], edi
mov dword [eax + 0x22c], ebx
mov ecx, dword [esi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
inc dword [ebp - 0xc34]
mov edi, 6
mov ecx, dword [esi + 0x124]
mov eax, 0x2aaaaaab
imul ecx, dword [esi + 0x128]
mov ebx, 0x22
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0xc34], eax
jl 0x4b51e0
mov ecx, dword [ebp - 0xc3c]
mov eax, dword [esi + 0x130]
xor edi, edi
mov ecx, dword [ecx]
mov ebx, dword [ebp - 0xc30]
push eax
push ecx
push eax
mov edx, dword [ebx]
push ecx
mov ecx, ebx
call dword [edx + 0x20]
mov ebx, dword [ebp - 0xc3c]
test eax, eax
je 0x4b538b
mov eax, dword [esi + 0x130]
mov ecx, dword [ebx]
dec eax
mov edx, dword [ebp - 0xc30]
push eax
push ecx
push eax
mov edx, dword [edx]
push ecx
mov ecx, dword [ebp - 0xc30]
call dword [edx + 0x20]
test eax, eax
jne 0x4b5390
mov edi, 1
mov eax, dword [ebx]
mov dword [ebp - 0xc38], eax
cmp eax, 2
jl 0x4b53a4
cmp eax, 0xfe
jl 0x4b53a9
mov edi, 1
mov ecx, dword [esi + 0x130]
cmp ecx, 2
jl 0x4b53bc
cmp ecx, 0xfe
jl 0x4b53c1
mov edi, 1
mov ecx, 0x6112d8
sub eax, dword [ecx - 8]
mov ebx, dword [ecx]
cdq
xor eax, edx
sub eax, edx
cmp eax, ebx
jge 0x4b53ec
mov eax, dword [esi + 0x130]
sub eax, dword [ecx - 4]
cdq
xor eax, edx
sub eax, edx
cmp eax, ebx
mov eax, 1
cmovl edi, eax
mov eax, dword [ebp - 0xc38]
add ecx, 0x50
cmp ecx, str.Knife
jl 0x4b53c6
test edi, edi
je 0x4b543a
call fcn.00569587
and eax, 0x800000ff
jns 0x4b5414
dec eax
or eax, 0xffffff00
inc eax
mov edi, dword [ebp - 0xc3c]
mov dword [edi], eax
call fcn.00569587
and eax, 0x800000ff
jns 0x4b542f
dec eax
or eax, 0xffffff00
inc eax
mov dword [esi + 0x130], eax
jmp 0x4b533e
push 0x190
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc54], eax
mov edi, dword [ebp - 0xc3c]
mov byte [ebp - 4], 0x14
test eax, eax
je 0x4b546e
push dword [esi + 0x130]
mov ecx, eax
push dword [edi]
call fcn.004a23b0
mov ebx, eax
jmp 0x4b5470
xor ebx, ebx
mov eax, dword [ebp - 0xc30]
push ebx
mov byte [ebp - 4], 0
mov ecx, dword [eax + 0x118]
call fcn.00515fc0
push 0x194
mov dword [ebx + 0x188], esi
call fcn.00559eaa
mov ebx, eax
add esp, 4
mov dword [ebp - 0xc64], ebx
mov byte [ebp - 4], 0x15
test ebx, ebx
je 0x4b54cc
call fcn.00569587
cdq
idiv dword [esi + 0x128]
push edx
call fcn.00569587
cdq
mov ecx, ebx
idiv dword [esi + 0x124]
push edx
call fcn.00493b90
jmp 0x4b54ce
xor eax, eax
mov ecx, dword [esi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x194
call fcn.00559eaa
mov ebx, eax
add esp, 4
mov dword [ebp - 0xc68], ebx
mov byte [ebp - 4], 0x16
test ebx, ebx
je 0x4b551e
call fcn.00569587
cdq
idiv dword [esi + 0x128]
push edx
call fcn.00569587
cdq
mov ecx, ebx
idiv dword [esi + 0x124]
push edx
call fcn.00493b90
jmp 0x4b5520
xor eax, eax
mov ecx, dword [esi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x194
call fcn.00559eaa
mov ebx, eax
add esp, 4
mov dword [ebp - 0xc6c], ebx
mov byte [ebp - 4], 0x17
test ebx, ebx
je 0x4b5570
call fcn.00569587
cdq
idiv dword [esi + 0x128]
push edx
call fcn.00569587
cdq
mov ecx, ebx
idiv dword [esi + 0x124]
push edx
call fcn.00493b90
jmp 0x4b5572
xor eax, eax
mov ecx, dword [esi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x194
call fcn.00559eaa
mov ecx, eax
add esp, 4
mov dword [ebp - 0xc28], ecx
mov byte [ebp - 4], 0x18
test ecx, ecx
je 0x4b55b8
mov eax, dword [esi + 0x128]
dec eax
push eax
mov eax, dword [esi + 0x124]
dec eax
push eax
call fcn.004a24e0
mov ecx, eax
jmp 0x4b55ba
xor ecx, ecx
mov eax, dword [edi]
mov dword [ecx + 0x180], eax
mov eax, dword [esi + 0x130]
dec eax
mov dword [ecx + 0x188], 0
mov dword [ecx + 0x184], eax
mov dword [ecx + 0x18c], 0
push ecx
mov ecx, dword [esi + 0x118]
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0
lea eax, [ebp - 0x410]
push eax
push dword [ebp - 0xc40]
call fcn.0044d8e0
add esp, 0xc
lea eax, [ebp - 0x410]
mov ecx, str.DUNGEON
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4b5635
test dl, dl
je 0x4b5631
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4b5635
add eax, 2
add ecx, 2
test dl, dl
jne 0x4b5615
xor eax, eax
jmp 0x4b563a
sbb eax, eax
or eax, 1
mov ebx, 0x22
lea edi, [ebx - 0x1c]
test eax, eax
je 0x4b5023
mov ebx, dword [ebp - 0xc40]
push ebx
call fcn.005698f0
add esp, 4
call dword [sym.imp.WINMM.dll_timeGetTime]
push eax
call fcn.005695a8
add esp, 4
push 0x190
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x19
test eax, eax
je 0x4b5698
push 0x3e
push 0x3e
mov ecx, eax
call fcn.004a23b0
mov esi, eax
mov dword [ebp - 0xc44], eax
jmp 0x4b56a0
xor esi, esi
mov dword [ebp - 0xc44], esi
mov eax, dword [ebp - 0xc30]
push esi
mov byte [ebp - 4], 0
mov ecx, dword [eax + 0x118]
call fcn.00515fc0
lea eax, [ebp - 0x410]
push str.Opening_cave_dat_file._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x5d2d08
push str.serverdatacave.dat
call fcn.00569bde
mov edi, eax
push 0x23c
mov dword [ebp - 0xc4c], edi
call fcn.00559eaa
add esp, 0x1c
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x1a
test eax, eax
je 0x4b5725
mov ecx, dword [ebp - 0xc2c]
push dword [ecx + 0x34]
mov ecx, eax
push str.Mysterious_Cave
push 1
call fcn.004efaf0
mov ebx, eax
jmp 0x4b5727
xor ebx, ebx
mov byte [ebp - 4], 0
lea eax, [ebp - 0x410]
test edi, edi
jne 0x4b5812
push str.Failed__creating_default._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
add esp, 0x10
mov ecx, ebx
push edi
push 0x3e
push 0x3e
push 0x14
push 0x14
call fcn.004f0940
mov eax, dword [ebp - 0xc2c]
push ebx
mov ecx, dword [eax + 0x48]
call fcn.0044e350
lea eax, [ebx + 0x144]
mov dword [esi + 0x188], ebx
push str.Mysterious_Cave
push eax
mov dword [ebx + 0x204], 1
call fcn.004b3b30
push 0x194
call fcn.00559eaa
mov ecx, eax
add esp, 0xc
mov dword [ebp - 0xc28], ecx
mov byte [ebp - 4], 0x1b
test ecx, ecx
je 0x4b57ce
mov eax, dword [ebx + 0x128]
dec eax
push eax
mov eax, dword [ebx + 0x124]
dec eax
push eax
call fcn.004a24e0
mov ecx, eax
jmp 0x4b57d0
xor ecx, ecx
mov eax, dword [ebx + 0x12c]
mov dword [ecx + 0x180], eax
mov eax, dword [ebx + 0x130]
dec eax
mov dword [ecx + 0x188], 0
mov dword [ecx + 0x184], eax
mov dword [ecx + 0x18c], 0
push ecx
mov ecx, dword [ebx + 0x118]
mov byte [ebp - 4], 0
call fcn.00515fc0
jmp 0x4b5c31
push str.Reading_cave_map._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
mov eax, dword [ebx + 0x134]
add esp, 0x10
test eax, eax
je 0x4b5844
push eax
call fcn.0055a3ff
add esp, 4
mov eax, dword [ebx + 0x138]
test eax, eax
je 0x4b5857
push eax
call fcn.0055a3ff
add esp, 4
push 0
lea eax, [ebx + 0x144]
push eax
push edi
call fcn.0044d8e0
lea edx, [ebx + 0x130]
push edx
lea edx, [ebx + 0x12c]
push edx
lea eax, [ebx + 0x128]
push eax
lea ecx, [ebx + 0x124]
push ecx
lea esi, [ebx + 0x21c]
push esi
push str._d__d__d__d__d
push edi
call fcn.00448440
add esp, 0x28
mov ecx, ebx
push dword [esi]
push dword [ebx + 0x130]
push dword [ebx + 0x12c]
push dword [ebx + 0x128]
push dword [ebx + 0x124]
call fcn.004f0940
lea eax, [ebp - 0xc3c]
push eax
lea eax, [ebp - 0xc34]
push eax
push 0x5d5ac8
push edi
call fcn.00448440
movzx eax, byte [ebp - 0xc34]
add esp, 0x10
mov byte [ebx + 0x13c], al
xor esi, esi
movzx eax, byte [ebp - 0xc3c]
mov byte [ebx + 0x13d], al
mov eax, dword [ebx + 0x124]
imul eax, dword [ebx + 0x128]
test eax, eax
jle 0x4b594f
lea eax, [ebp - 0xc3c]
push eax
lea eax, [ebp - 0xc34]
push eax
push 0x5d5ac8
push edi
call fcn.00448440
mov ecx, dword [ebx + 0x134]
add esp, 0x10
movzx eax, byte [ebp - 0xc34]
mov byte [esi + ecx], al
mov ecx, dword [ebx + 0x138]
movzx eax, byte [ebp - 0xc3c]
mov byte [esi + ecx], al
inc esi
mov eax, dword [ebx + 0x124]
imul eax, dword [ebx + 0x128]
cmp esi, eax
jl 0x4b5901
mov eax, dword [ebp - 0xc2c]
mov dword [ebx + 0x204], 1
push ebx
mov ecx, dword [eax + 0x48]
call fcn.0044e350
mov eax, dword [ebp - 0xc44]
push 0x194
mov dword [eax + 0x188], ebx
call fcn.00559eaa
mov ecx, eax
add esp, 4
mov dword [ebp - 0xc28], ecx
mov byte [ebp - 4], 0x1c
test ecx, ecx
je 0x4b59aa
mov eax, dword [ebx + 0x128]
dec eax
push eax
mov eax, dword [ebx + 0x124]
dec eax
push eax
call fcn.004a24e0
mov ecx, eax
jmp 0x4b59ac
xor ecx, ecx
mov eax, dword [ebx + 0x12c]
mov dword [ecx + 0x180], eax
mov eax, dword [ebx + 0x130]
dec eax
mov dword [ecx + 0x188], 0
mov dword [ecx + 0x184], eax
mov dword [ecx + 0x18c], 0
push ecx
mov ecx, dword [ebx + 0x118]
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x5d3f18
push edi
call fcn.00448440
push 0
lea eax, [ebp - 0x410]
push eax
push edi
call fcn.0044d8e0
add esp, 0x14
lea eax, [ebp - 0x410]
mov ecx, str.PLAYERMERCHANT
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4b5a31
test dl, dl
je 0x4b5a2d
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4b5a31
add eax, 2
add ecx, 2
test dl, dl
jne 0x4b5a11
xor eax, eax
jmp 0x4b5a36
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4b5c28
nop
lea eax, [ebp - 0x410]
push str.Loading_Playemerchant._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
lea eax, [ebp - 0x410]
push eax
push str.ACCOUNT__s_n
push edi
call fcn.00448440
lea eax, [ebp - 0x810]
push eax
push str.OWNER__s_n
push edi
call fcn.00448440
lea eax, [ebp - 0x410]
push str.Loading_coords._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
lea eax, [ebp - 0xc40]
push eax
lea eax, [ebp - 0xc3c]
push eax
push str._d__d_n
push edi
call fcn.00448440
add esp, 0x48
push 0x990
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x1d
test eax, eax
je 0x4b5aec
push 0x15
mov ecx, eax
call fcn.004a0110
mov edi, eax
jmp 0x4b5aee
xor edi, edi
lea eax, [ebp - 0x410]
mov byte [ebp - 4], 0
push eax
lea eax, [edi + 0x190]
push eax
call fcn.0043d370
lea eax, [ebp - 0x810]
push eax
lea esi, [edi + 0x590]
push esi
call fcn.0043d370
push esi
lea eax, [ebp - 0x810]
push str._ss_Merchant
push eax
call fcn.0043d370
push 0xff
lea eax, [edi + 8]
push eax
lea eax, [ebp - 0x810]
push 0xff
push eax
call fcn.0044d390
lea eax, [ebp - 0x410]
mov dword [edi + 0x184], 0
push str.Loading_inventory._n
push eax
mov dword [edi + 0x188], 0
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
mov ecx, dword [edi + 0x180]
add esp, 0x38
mov dword [esp], 0x402e147b
push dword [ebp - 0xc4c]
call fcn.0050f2b0
push dword [ebp - 0xc40]
lea eax, [ebp - 0x410]
push dword [ebp - 0xc3c]
push str.Adding_to_map_list_at__d__d._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
mov eax, dword [ebp - 0xc3c]
add esp, 0x18
mov dword [edi + 0x108], eax
mov eax, dword [ebp - 0xc40]
mov dword [edi + 0x10c], eax
mov ecx, dword [ebx + 0x118]
push edi
call fcn.00515fc0
mov ecx, str.PLAYERMERCHANT
lea eax, [ebp - 0x410]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4b5c15
test dl, dl
je 0x4b5c11
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4b5c15
add eax, 2
add ecx, 2
test dl, dl
jne 0x4b5bf5
xor eax, eax
jmp 0x4b5c1a
sbb eax, eax
or eax, 1
mov edi, dword [ebp - 0xc4c]
test eax, eax
je 0x4b5a40
push edi
call fcn.005698f0
add esp, 4
lea eax, [ebp - 0x410]
push str.Adding_monster_generators._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x774
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x1e
test eax, eax
je 0x4b5c7d
push 0
push 0
mov ecx, eax
call fcn.00495120
mov edi, eax
jmp 0x4b5c7f
xor edi, edi
mov ebx, dword [ebp - 0xc30]
push edi
mov byte [ebp - 4], 0
mov ecx, dword [ebx + 0x114]
call fcn.0044e350
mov eax, 0xc8
add edi, 0x438
mov ecx, 0xcc
rep stosd dword es:[edi], eax
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x1f
test eax, eax
je 0x4b5ccf
push 0
push 0
mov ecx, eax
call fcn.00494d60
jmp 0x4b5cd1
xor eax, eax
mov ecx, dword [ebx + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x20
test eax, eax
je 0x4b5d09
push 0
push 0
mov ecx, eax
call fcn.00494050
jmp 0x4b5d0b
xor eax, eax
mov ecx, dword [ebx + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x794
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x21
test eax, eax
je 0x4b5d40
push ebx
mov ecx, eax
call fcn.004932e0
jmp 0x4b5d42
xor eax, eax
mov ecx, dword [ebx + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x7bc
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x22
test eax, eax
je 0x4b5d77
push ebx
mov ecx, eax
call fcn.00495da0
jmp 0x4b5d79
xor eax, eax
mov ecx, dword [ebx + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x794
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x23
test eax, eax
je 0x4b5dae
push ebx
mov ecx, eax
call fcn.0043cc10
jmp 0x4b5db0
xor eax, eax
mov ecx, dword [ebx + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x24
test eax, eax
je 0x4b5de8
push 0
push 0
mov ecx, eax
call fcn.0049fa50
jmp 0x4b5dea
xor eax, eax
mov ecx, dword [ebx + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
lea eax, [ebp - 0x410]
push str.Adding_halloween_if_enabled._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
add esp, 0x10
cmp dword [0x62fb34], 0
je 0x4b5eae
push 0x804
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x25
test eax, eax
je 0x4b5e5b
push 0x19
push 0x2b
push 0x68
push 0x35
push 0x68
push ebx
mov ecx, eax
call fcn.0046f2e0
jmp 0x4b5e5d
xor eax, eax
mov ecx, dword [ebx + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x804
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x26
test eax, eax
je 0x4b5e9c
push 0x19
push 0x35
push 0x5e
push 0x2b
push 0x5e
push ebx
mov ecx, eax
call fcn.0046f2e0
jmp 0x4b5e9e
xor eax, eax
mov ecx, dword [ebx + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
lea eax, [ebp - 0x410]
push str.Adding_spider_armies._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x804
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x27
test eax, eax
je 0x4b5eff
push 0x23
push 0x1b
push 0x78
push 0x25
push 0x78
push ebx
mov ecx, eax
call fcn.0046f920
jmp 0x4b5f01
xor eax, eax
mov ecx, dword [ebx + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x804
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x28
test eax, eax
je 0x4b5f46
push 0x2d
push 0x8c
push 0x5a
push 0x98
push 0x60
push ebx
mov ecx, eax
call fcn.0046f920
jmp 0x4b5f48
xor eax, eax
mov ecx, dword [ebx + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
lea eax, [ebp - 0x410]
push str.Adding_great_trees._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
add esp, 0x10
xor esi, esi
nop
push 0x184
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x29
test eax, eax
je 0x4b5faa
push 0
push 0
mov ecx, eax
call fcn.004a2450
mov ecx, eax
jmp 0x4b5fac
xor ecx, ecx
mov eax, dword [esi*8 + 0x612218]
mov dword [ecx + 0x108], eax
mov eax, dword [esi*8 + str._Zo__]
mov dword [ecx + 0x10c], eax
mov dword [ecx + 0x180], esi
push ecx
mov ecx, dword [ebx + 0x118]
mov byte [ebp - 4], 0
call fcn.00515fc0
inc esi
cmp esi, 9
jl 0x4b5f80
push 0x5d2d08
push str.serverdataunicornData.dat
call fcn.00569bde
add esp, 8
mov dword [ebp - 0xc34], eax
test eax, eax
je 0x4b60b5
mov esi, dword [ebp - 0xc2c]
xor edi, edi
add esi, 8
nop dword [eax]
push esi
lea ebx, [esi - 4]
push ebx
push str._d__d_n
push eax
call fcn.00448440
push 0x2c4
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x2a
test eax, eax
je 0x4b604d
push 0
push 0
push edi
push 0x1f
mov ecx, eax
call fcn.00496ed0
mov ecx, eax
jmp 0x4b604f
xor ecx, ecx
mov eax, dword [ebx]
mov ebx, dword [ebp - 0xc30]
mov dword [ecx + 0x228], eax
mov dword [ecx + 0x110], eax
mov dword [ecx + 0x108], eax
mov eax, dword [esi]
mov dword [ecx + 0x22c], eax
mov dword [ecx + 0x114], eax
mov dword [ecx + 0x10c], eax
mov byte [ecx + 0x1f9], 1
push ecx
mov ecx, dword [ebx + 0x118]
mov byte [ebp - 4], 0
call fcn.00515fc0
mov eax, dword [ebp - 0xc34]
inc edi
add esi, 8
cmp edi, 6
jl 0x4b6010
push eax
call fcn.005698f0
add esp, 4
jmp 0x4b659d
call fcn.00569587
cdq
mov edi, 0xfe
idiv edi
lea esi, [edx + 1]
call fcn.00569587
cdq
idiv edi
mov edi, edx
nop
mov eax, dword [ebx]
mov ecx, ebx
push edi
push esi
push edi
push esi
call dword [eax + 0x20]
test eax, eax
jne 0x4b60fc
call fcn.00569587
cdq
mov edi, 0xfe
idiv edi
lea esi, [edx + 1]
call fcn.00569587
cdq
idiv edi
lea edi, [edx + 1]
jmp 0x4b60d0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x2b
test eax, eax
je 0x4b612a
push 0
push 0
push 0
push 0x1f
mov ecx, eax
call fcn.00496ed0
mov ebx, eax
jmp 0x4b612c
xor ebx, ebx
mov eax, dword [ebp - 0xc30]
mov dword [ebx + 0x228], esi
mov dword [ebx + 0x110], esi
mov dword [ebx + 0x108], esi
mov dword [ebx + 0x22c], edi
mov dword [ebx + 0x114], edi
mov dword [ebx + 0x10c], edi
mov byte [ebx + 0x1f9], 1
mov ecx, dword [eax + 0x118]
push ebx
mov byte [ebp - 4], 0
call fcn.00515fc0
mov eax, dword [ebx + 0x224]
mov ecx, dword [ebp - 0xc2c]
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebx + 0x224]
mov dword [ecx + eax*8 + 8], edi
call fcn.00569587
cdq
mov ebx, 0xfe
idiv ebx
lea esi, [edx + 1]
call fcn.00569587
cdq
idiv ebx
mov edi, edx
mov ecx, dword [ebp - 0xc30]
push edi
push esi
push edi
mov eax, dword [ecx]
push esi
call dword [eax + 0x20]
test eax, eax
jne 0x4b61cc
call fcn.00569587
cdq
idiv ebx
lea esi, [edx + 1]
call fcn.00569587
cdq
idiv ebx
lea edi, [edx + 1]
jmp 0x4b61a1
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x2c
test eax, eax
je 0x4b61fa
push 0
push 0
push 1
push 0x1f
mov ecx, eax
call fcn.00496ed0
mov ebx, eax
jmp 0x4b61fc
xor ebx, ebx
mov eax, dword [ebp - 0xc30]
mov dword [ebx + 0x228], esi
mov dword [ebx + 0x110], esi
mov dword [ebx + 0x108], esi
mov dword [ebx + 0x22c], edi
mov dword [ebx + 0x114], edi
mov dword [ebx + 0x10c], edi
mov byte [ebx + 0x1f9], 1
mov ecx, dword [eax + 0x118]
push ebx
mov byte [ebp - 4], 0
call fcn.00515fc0
mov eax, dword [ebx + 0x224]
mov ecx, dword [ebp - 0xc2c]
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebx + 0x224]
mov dword [ecx + eax*8 + 8], edi
call fcn.00569587
cdq
mov ebx, 0xfe
idiv ebx
lea esi, [edx + 1]
call fcn.00569587
cdq
idiv ebx
mov edi, edx
mov ecx, dword [ebp - 0xc30]
push edi
push esi
push edi
mov eax, dword [ecx]
push esi
call dword [eax + 0x20]
test eax, eax
jne 0x4b629c
call fcn.00569587
cdq
idiv ebx
lea esi, [edx + 1]
call fcn.00569587
cdq
idiv ebx
lea edi, [edx + 1]
jmp 0x4b6271
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x2d
test eax, eax
je 0x4b62ca
push 0
push 0
push 2
push 0x1f
mov ecx, eax
call fcn.00496ed0
mov ebx, eax
jmp 0x4b62cc
xor ebx, ebx
mov eax, dword [ebp - 0xc30]
mov dword [ebx + 0x228], esi
mov dword [ebx + 0x110], esi
mov dword [ebx + 0x108], esi
mov dword [ebx + 0x22c], edi
mov dword [ebx + 0x114], edi
mov dword [ebx + 0x10c], edi
mov byte [ebx + 0x1f9], 1
mov ecx, dword [eax + 0x118]
push ebx
mov byte [ebp - 4], 0
call fcn.00515fc0
mov eax, dword [ebx + 0x224]
mov ecx, dword [ebp - 0xc2c]
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebx + 0x224]
mov dword [ecx + eax*8 + 8], edi
call fcn.00569587
cdq
mov ebx, 0xfe
idiv ebx
lea esi, [edx + 1]
call fcn.00569587
cdq
idiv ebx
mov edi, edx
mov ecx, dword [ebp - 0xc30]
push edi
push esi
push edi
mov eax, dword [ecx]
push esi
call dword [eax + 0x20]
test eax, eax
jne 0x4b636c
call fcn.00569587
cdq
idiv ebx
lea esi, [edx + 1]
call fcn.00569587
cdq
idiv ebx
lea edi, [edx + 1]
jmp 0x4b6341
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x2e
test eax, eax
je 0x4b639a
push 0
push 0
push 3
push 0x1f
mov ecx, eax
call fcn.00496ed0
mov ebx, eax
jmp 0x4b639c
xor ebx, ebx
mov eax, dword [ebp - 0xc30]
mov dword [ebx + 0x228], esi
mov dword [ebx + 0x110], esi
mov dword [ebx + 0x108], esi
mov dword [ebx + 0x22c], edi
mov dword [ebx + 0x114], edi
mov dword [ebx + 0x10c], edi
mov byte [ebx + 0x1f9], 1
mov ecx, dword [eax + 0x118]
push ebx
mov byte [ebp - 4], 0
call fcn.00515fc0
mov eax, dword [ebx + 0x224]
mov ecx, dword [ebp - 0xc2c]
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebx + 0x224]
mov dword [ecx + eax*8 + 8], edi
call fcn.00569587
cdq
mov ebx, 0xfe
idiv ebx
lea esi, [edx + 1]
call fcn.00569587
cdq
idiv ebx
mov edi, edx
mov ecx, dword [ebp - 0xc30]
push edi
push esi
push edi
mov eax, dword [ecx]
push esi
call dword [eax + 0x20]
test eax, eax
jne 0x4b643c
call fcn.00569587
cdq
idiv ebx
lea esi, [edx + 1]
call fcn.00569587
cdq
idiv ebx
lea edi, [edx + 1]
jmp 0x4b6411
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x2f
test eax, eax
je 0x4b646a
push 0
push 0
push 4
push 0x1f
mov ecx, eax
call fcn.00496ed0
mov ebx, eax
jmp 0x4b646c
xor ebx, ebx
mov eax, dword [ebp - 0xc30]
mov dword [ebx + 0x228], esi
mov dword [ebx + 0x110], esi
mov dword [ebx + 0x108], esi
mov dword [ebx + 0x22c], edi
mov dword [ebx + 0x114], edi
mov dword [ebx + 0x10c], edi
mov byte [ebx + 0x1f9], 1
mov ecx, dword [eax + 0x118]
push ebx
mov byte [ebp - 4], 0
call fcn.00515fc0
mov eax, dword [ebx + 0x224]
mov ecx, dword [ebp - 0xc2c]
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebx + 0x224]
mov dword [ecx + eax*8 + 8], edi
call fcn.00569587
cdq
mov ebx, 0xfe
idiv ebx
lea esi, [edx + 1]
call fcn.00569587
cdq
idiv ebx
mov edi, edx
mov ecx, dword [ebp - 0xc30]
push edi
push esi
push edi
mov eax, dword [ecx]
push esi
call dword [eax + 0x20]
test eax, eax
jne 0x4b650c
call fcn.00569587
cdq
idiv ebx
lea esi, [edx + 1]
call fcn.00569587
cdq
idiv ebx
lea edi, [edx + 1]
jmp 0x4b64e1
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x30
test eax, eax
je 0x4b653a
push 0
push 0
push 5
push 0x1f
mov ecx, eax
call fcn.00496ed0
mov ebx, eax
jmp 0x4b653c
xor ebx, ebx
mov eax, dword [ebp - 0xc30]
mov dword [ebx + 0x228], esi
mov dword [ebx + 0x110], esi
mov dword [ebx + 0x108], esi
mov dword [ebx + 0x22c], edi
mov dword [ebx + 0x114], edi
mov dword [ebx + 0x10c], edi
mov byte [ebx + 0x1f9], 1
mov ecx, dword [eax + 0x118]
push ebx
mov byte [ebp - 4], 0
call fcn.00515fc0
mov eax, dword [ebx + 0x224]
mov ecx, dword [ebp - 0xc2c]
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebx + 0x224]
mov ebx, dword [ebp - 0xc30]
mov dword [ecx + eax*8 + 8], edi
lea eax, [ebp - 0x410]
push str.Adding_spirit_realm._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x13c
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov edi, dword [ebp - 0xc2c]
mov byte [ebp - 4], 0x31
test eax, eax
je 0x4b65f5
push dword [edi + 0x34]
mov ecx, eax
push str.Realm_of_Spirits
push 4
call fcn.00526390
mov esi, eax
jmp 0x4b65f7
xor esi, esi
push 0
push 0
push 0x40
push 0x40
push str.dat_realm_spirits_server.raw
mov ecx, esi
mov byte [ebp - 4], 0
call fcn.00526540
mov dword [esi + 0x134], 0
mov ecx, dword [edi + 0x48]
push esi
call fcn.0044e350
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x32
test eax, eax
je 0x4b664a
push 0
push 0
mov ecx, eax
call fcn.00495120
jmp 0x4b664c
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x33
test eax, eax
je 0x4b6688
push 0
push 0
push 1
push 0x10
mov ecx, eax
call fcn.00496ed0
jmp 0x4b668a
xor eax, eax
mov dword [eax + 0x228], 0x3e
mov dword [eax + 0x110], 0x3e
mov dword [eax + 0x108], 0x3e
mov dword [eax + 0x22c], 3
mov dword [eax + 0x114], 3
mov dword [eax + 0x10c], 3
mov ecx, dword [esi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x34
test eax, eax
je 0x4b6702
push 0
push 0
push 1
push 0xb
mov ecx, eax
call fcn.00496ed0
jmp 0x4b6704
xor eax, eax
mov dword [eax + 0x228], 0x3e
mov dword [eax + 0x110], 0x3e
mov dword [eax + 0x108], 0x3e
mov dword [eax + 0x22c], 4
mov dword [eax + 0x114], 4
mov dword [eax + 0x10c], 4
mov ecx, dword [esi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x35
test eax, eax
je 0x4b677c
push 0
push 0
push 1
push 0xb
mov ecx, eax
call fcn.00496ed0
jmp 0x4b677e
xor eax, eax
mov dword [eax + 0x228], 0x3d
mov dword [eax + 0x110], 0x3d
mov dword [eax + 0x108], 0x3d
mov dword [eax + 0x22c], 5
mov dword [eax + 0x114], 5
mov dword [eax + 0x10c], 5
mov ecx, dword [esi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x36
test eax, eax
je 0x4b67f6
push 0
push 0
push 1
push 0xb
mov ecx, eax
call fcn.00496ed0
jmp 0x4b67f8
xor eax, eax
mov dword [eax + 0x228], 0x3e
mov dword [eax + 0x110], 0x3e
mov dword [eax + 0x108], 0x3e
mov dword [eax + 0x22c], 6
mov dword [eax + 0x114], 6
mov dword [eax + 0x10c], 6
mov ecx, dword [esi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
lea eax, [ebp - 0x410]
push str.Adding_realm_of_the_dead._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x13c
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x37
test eax, eax
je 0x4b6896
push dword [edi + 0x34]
mov ecx, eax
push str.Realm_of_the_Dead
push 4
call fcn.00526390
mov esi, eax
jmp 0x4b6898
xor esi, esi
push 0
push 0
push 0x40
push 0x40
push str.dat_realm_dead_server.raw
mov ecx, esi
mov byte [ebp - 4], 0
call fcn.00526540
mov dword [esi + 0x134], 1
mov ecx, dword [edi + 0x48]
push esi
call fcn.0044e350
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x38
test eax, eax
je 0x4b68eb
push 0
push 0
mov ecx, eax
call fcn.00495120
jmp 0x4b68ed
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x804
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x39
test eax, eax
je 0x4b692c
push 1
push 2
push 0x32
push 5
push 0x29
push esi
mov ecx, eax
call fcn.0046da90
jmp 0x4b692e
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x804
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x3a
test eax, eax
je 0x4b696d
push 2
push 0x20
push 0x15
push 0x23
push 0x20
push esi
mov ecx, eax
call fcn.0046da90
jmp 0x4b696f
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x804
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x3b
test eax, eax
je 0x4b69ae
push 3
push 0x36
push 0x18
push 0x36
push 0xe
push esi
mov ecx, eax
call fcn.0046da90
jmp 0x4b69b0
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x804
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x3c
test eax, eax
je 0x4b69ef
push 4
push 0x19
push 0x2b
push 0x28
push 0x32
push esi
mov ecx, eax
call fcn.0046da90
jmp 0x4b69f1
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x13c
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x3d
test eax, eax
je 0x4b6a31
push dword [edi + 0x34]
mov ecx, eax
push str.Realm_of_Dragons
push 4
call fcn.00526390
mov esi, eax
jmp 0x4b6a33
xor esi, esi
push 0
push 0
push 0x40
push 0x40
push str.dat_realm_dragons_server.raw
mov ecx, esi
mov byte [ebp - 4], 0
call fcn.00526540
mov dword [esi + 0x134], 2
mov ecx, dword [edi + 0x48]
push esi
call fcn.0044e350
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x3e
test eax, eax
je 0x4b6a86
push 0
push 0
mov ecx, eax
call fcn.00493ca0
jmp 0x4b6a88
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x3f
test eax, eax
je 0x4b6ac0
push 7
push 0x15
mov ecx, eax
call fcn.00494400
jmp 0x4b6ac2
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x40
test eax, eax
je 0x4b6afa
push 0x3a
push 0xc
mov ecx, eax
call fcn.00494400
jmp 0x4b6afc
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x41
test eax, eax
je 0x4b6b34
push 0x13
push 0x18
mov ecx, eax
call fcn.00494400
jmp 0x4b6b36
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x42
test eax, eax
je 0x4b6b6e
push 0x36
push 0x1e
mov ecx, eax
call fcn.00494400
jmp 0x4b6b70
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x43
test eax, eax
je 0x4b6ba8
push 0x34
push 0x33
mov ecx, eax
call fcn.00494400
jmp 0x4b6baa
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x44
test eax, eax
je 0x4b6be2
push 0x1c
push 0x39
mov ecx, eax
call fcn.00494400
jmp 0x4b6be4
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x45
test eax, eax
je 0x4b6c1c
push 5
push 0x2f
mov ecx, eax
call fcn.00494400
jmp 0x4b6c1e
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x804
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x46
test eax, eax
je 0x4b6c5d
push 0x55
push 2
push 0x3c
push 9
push 0x3c
push esi
mov ecx, eax
call fcn.0046eba0
jmp 0x4b6c5f
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x804
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x47
test eax, eax
je 0x4b6c9e
push 0x56
push 0x3e
push 0x3e
push 0x35
push 0x3d
push esi
mov ecx, eax
call fcn.0046e380
jmp 0x4b6ca0
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x804
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x48
test eax, eax
je 0x4b6cdf
push 0x57
push 0x36
push 0x29
push 0x36
push 0x29
push esi
mov ecx, eax
call fcn.0046e760
jmp 0x4b6ce1
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x804
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x49
test eax, eax
je 0x4b6d20
push 0x55
push 0x2a
push 0x10
push 0x2a
push 5
push esi
mov ecx, eax
call fcn.0046f140
jmp 0x4b6d22
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x804
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x4a
test eax, eax
je 0x4b6d61
push 0x56
push 0xb
push 0x24
push 3
push 0x24
push esi
mov ecx, eax
call fcn.0046f140
jmp 0x4b6d63
xor eax, eax
mov ecx, dword [esi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x4b
test eax, eax
je 0x4b6d9f
push 0
push 0
push 0
push 0x13
mov ecx, eax
call fcn.00496ed0
jmp 0x4b6da1
xor eax, eax
mov dword [eax + 0x228], 0x43
mov dword [eax + 0x110], 0x43
mov dword [eax + 0x108], 0x43
mov dword [eax + 0x22c], 0x4c
mov dword [eax + 0x114], 0x4c
mov dword [eax + 0x10c], 0x4c
mov dword [eax + 0x238], 0x3e8
mov ecx, dword [ebx + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x4c
test eax, eax
je 0x4b6e23
push 0
push 0
push 0
push 0x13
mov ecx, eax
call fcn.00496ed0
jmp 0x4b6e25
xor eax, eax
mov dword [eax + 0x228], 0xef
mov dword [eax + 0x110], 0xef
mov dword [eax + 0x108], 0xef
mov dword [eax + 0x22c], 0x91
mov dword [eax + 0x114], 0x91
mov dword [eax + 0x10c], 0x91
mov dword [eax + 0x238], 0x3e8
mov ecx, dword [ebx + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x4d
test eax, eax
je 0x4b6ea7
push 0
push 0
push 0
push 0x13
mov ecx, eax
call fcn.00496ed0
jmp 0x4b6ea9
xor eax, eax
mov dword [eax + 0x228], 0xdf
mov dword [eax + 0x110], 0xdf
mov dword [eax + 0x108], 0xdf
mov dword [eax + 0x22c], 0xbc
mov dword [eax + 0x114], 0xbc
mov dword [eax + 0x10c], 0xbc
mov dword [eax + 0x238], 0x3e8
mov ecx, dword [ebx + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x4e
test eax, eax
je 0x4b6f2b
push 0
push 0
push 0
push 9
mov ecx, eax
call fcn.00496ed0
jmp 0x4b6f2d
xor eax, eax
mov dword [eax + 0x228], 0xdf
mov dword [eax + 0x110], 0xdf
mov dword [eax + 0x108], 0xdf
mov dword [eax + 0x22c], 8
mov dword [eax + 0x114], 8
mov dword [eax + 0x10c], 8
mov dword [eax + 0x238], 0x3e8
mov ecx, dword [ebx + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x4f
test eax, eax
je 0x4b6faf
push 0
push 0
push 0
push 9
mov ecx, eax
call fcn.00496ed0
jmp 0x4b6fb1
xor eax, eax
mov dword [eax + 0x228], 0x2d
mov dword [eax + 0x110], 0x2d
mov dword [eax + 0x108], 0x2d
mov dword [eax + 0x22c], 0x82
mov dword [eax + 0x114], 0x82
mov dword [eax + 0x10c], 0x82
mov dword [eax + 0x238], 0x3e8
mov ecx, dword [ebx + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x50
test eax, eax
je 0x4b7033
push 0
push 0
push 0
push 9
mov ecx, eax
call fcn.00496ed0
jmp 0x4b7035
xor eax, eax
mov dword [eax + 0x228], 0x57
mov dword [eax + 0x110], 0x57
mov dword [eax + 0x108], 0x57
mov dword [eax + 0x22c], 0xe6
mov dword [eax + 0x114], 0xe6
mov dword [eax + 0x10c], 0xe6
mov dword [eax + 0x238], 0x3e8
mov ecx, dword [ebx + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x51
test eax, eax
je 0x4b70b9
push 0
push 0
push 2
push 2
mov ecx, eax
call fcn.00496ed0
mov esi, eax
jmp 0x4b70bb
xor esi, esi
mov dword [esi + 0x228], 0x70
mov dword [esi + 0x110], 0x70
mov dword [esi + 0x108], 0x70
mov dword [esi + 0x22c], 9
mov dword [esi + 0x114], 9
mov dword [esi + 0x10c], 9
mov ecx, dword [ebx + 0x118]
push esi
mov byte [ebp - 4], 0
call fcn.00515fc0
lea eax, [esi + 0x184]
push str.Trickster_Minotaur
push eax
call fcn.004b3b00
push 0x5d2d08
push str.serverdata_tricksterMino.dat
mov dword [ebp - 0xc48], 1
call fcn.00569bde
mov edi, eax
add esp, 0x10
test edi, edi
je 0x4b7155
lea eax, [ebp - 0xc48]
push eax
push 0x5d2d14
push edi
call fcn.00448440
push edi
call fcn.005698f0
add esp, 0x10
mov eax, dword [ebp - 0xc48]
cmp eax, 1
jge 0x4b716c
mov dword [ebp - 0xc48], 1
jmp 0x4b717d
cmp eax, 0xbb8
jle 0x4b717d
mov dword [ebp - 0xc48], 0xbb8
mov dword [esi + 0x1a4], 0xff0000ff
movd xmm0, dword [ebp - 0xc48]
cvtdq2ps xmm0, xmm0
push 0x2c4
movss xmm2, dword [0x5d3068]
divss xmm0, dword [0x5d7408]
movaps xmm1, xmm2
addss xmm0, xmm2
movss dword [esi + 0x1a8], xmm0
imul eax, dword [ebp - 0xc48], 0x64
mov dword [esi + 0x1ac], eax
imul eax, dword [ebp - 0xc48], 0x64
mov dword [esi + 0x1b0], eax
mov eax, dword [ebp - 0xc48]
cdq
sub eax, edx
sar eax, 1
mov dword [esi + 0x1b4], eax
mov eax, dword [ebp - 0xc48]
mov dword [esi + 0x1b8], eax
mov eax, dword [ebp - 0xc48]
mov dword [esi + 0x1bc], eax
mov eax, dword [ebp - 0xc48]
mov dword [esi + 0x1c0], eax
movd xmm0, dword [ebp - 0xc48]
cvtdq2ps xmm0, xmm0
mov dword [esi + 0x238], 0x3e8
divss xmm1, xmm0
subss xmm2, xmm1
movss dword [esi + 0x1f4], xmm2
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x52
test eax, eax
je 0x4b7253
push 0
push 0
push 2
push 2
mov ecx, eax
call fcn.00496ed0
mov esi, eax
jmp 0x4b7255
xor esi, esi
mov edi, dword [ebp - 0xc30]
mov dword [esi + 0x228], 0x63
mov dword [esi + 0x110], 0x63
mov dword [esi + 0x108], 0x63
mov dword [esi + 0x22c], 0x2f
mov dword [esi + 0x114], 0x2f
mov dword [esi + 0x10c], 0x2f
mov ecx, dword [edi + 0x118]
push esi
mov byte [ebp - 4], 0
call fcn.00515fc0
lea eax, [esi + 0x184]
push str.Punching_Bag
push eax
call fcn.004b3b00
push 0x5d2d08
push str.serverdataDecayingGolem.dat
call fcn.00569bde
push 0x2c4
mov dword [esi + 0x1a4], 0xff0000ff
mov dword [esi + 0x1a8], 0x40000000
mov dword [esi + 0x1ac], 0x61a8
mov dword [esi + 0x1b0], 0x7530
mov dword [esi + 0x1b4], 1
mov dword [esi + 0x1b8], 1
mov dword [esi + 0x1bc], 1
mov dword [esi + 0x1c0], 0
mov dword [esi + 0x1f4], 0x3f800000
mov dword [esi + 0x234], 0xc350
mov dword [esi + 0x238], 0x3e8
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x53
test eax, eax
je 0x4b7363
push 0
push 0
push 2
push 2
mov ecx, eax
call fcn.00496ed0
mov esi, eax
jmp 0x4b7365
xor esi, esi
mov dword [esi + 0x228], 0x48
mov dword [esi + 0x110], 0x48
mov dword [esi + 0x108], 0x48
mov dword [esi + 0x22c], 0x1c
mov dword [esi + 0x114], 0x1c
mov dword [esi + 0x10c], 0x1c
mov ecx, dword [edi + 0x118]
push esi
mov byte [ebp - 4], 0
call fcn.00515fc0
lea eax, [esi + 0x184]
push str.Punching_Bag
push eax
call fcn.004b3b00
push 0x5d2d08
push str.serverdataDecayingGolem.dat
call fcn.00569bde
lea eax, [ebp - 0x410]
mov dword [esi + 0x1a4], 0xff0000ff
push str.Loading_Guilds._n
push eax
mov dword [esi + 0x1a8], 0x40000000
mov dword [esi + 0x1ac], 0x61a8
mov dword [esi + 0x1b0], 0x7530
mov dword [esi + 0x1b4], 1
mov dword [esi + 0x1b8], 1
mov dword [esi + 0x1bc], 1
mov dword [esi + 0x1c0], 0
mov dword [esi + 0x1f4], 0x3f800000
mov dword [esi + 0x234], 0xc350
mov dword [esi + 0x238], 0x3e8
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x5d2d08
push str.serverdataguilds.dat
call fcn.00569bde
mov esi, eax
add esp, 0x28
mov dword [ebp - 0xc34], esi
test esi, esi
je 0x4b7b25
push 0x19
call fcn.005695a8
lea eax, [ebp - 0xc38]
push eax
push 0x5d5860
push esi
call fcn.00448440
push 0
lea eax, [ebp - 0x410]
push eax
push esi
call fcn.0044d8e0
add esp, 0x1c
lea eax, [ebp - 0x410]
mov ecx, str.TOWER
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4b74e0
test dl, dl
je 0x4b74dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4b74e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4b74c0
xor eax, eax
jmp 0x4b74e5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4b7b0d
nop dword [eax]
push 0x41c
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x54
test eax, eax
je 0x4b7526
mov ecx, dword [ebp - 0xc2c]
push dword [ecx + 0x34]
mov ecx, eax
push str.Test_Tower
push 3
call fcn.00530820
mov ebx, eax
jmp 0x4b7528
xor ebx, ebx
movss xmm0, dword [ebp - 0xc38]
push ecx
movss dword [esp], xmm0
mov ecx, ebx
push esi
mov byte [ebp - 4], 0
call fcn.00530f00
mov ecx, dword [ebx + 0x144]
call fcn.0044e540
cmp eax, 2
jge 0x4b755f
mov eax, dword [ebx]
mov ecx, ebx
push 1
call dword [eax]
jmp 0x4b7ac2
mov eax, dword [ebp - 0xc2c]
push ebx
mov ecx, dword [eax + 0x48]
call fcn.0044e350
cmp dword [ebx + 0x12c], 0xffffffff
je 0x4b7ac2
cmp dword [ebx + 0x130], 0xffffffff
je 0x4b7ac2
nop dword [eax + eax]
mov eax, dword [ebx + 0x130]
xor esi, esi
mov ecx, dword [ebx + 0x12c]
mov edx, dword [edi]
push eax
push ecx
push eax
push ecx
mov ecx, edi
call dword [edx + 0x20]
test eax, eax
je 0x4b75c9
mov eax, dword [ebx + 0x130]
mov ecx, dword [ebx + 0x12c]
dec eax
mov edx, dword [edi]
push eax
push ecx
push eax
push ecx
mov ecx, edi
call dword [edx + 0x20]
test eax, eax
jne 0x4b75ce
mov esi, 1
mov edi, dword [ebx + 0x12c]
cmp edi, 2
jl 0x4b75e1
cmp edi, 0xfe
jl 0x4b75e6
mov esi, 1
mov eax, dword [ebx + 0x130]
cmp eax, 2
jl 0x4b75f8
cmp eax, 0xfe
jl 0x4b75fd
mov esi, 1
mov ecx, 0x6112d4
mov eax, edi
sub eax, dword [ecx - 4]
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
jge 0x4b7629
mov eax, dword [ebx + 0x130]
sub eax, dword [ecx]
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
mov eax, 1
cmovl esi, eax
add ecx, 0x50
cmp ecx, 0x611a54
jl 0x4b7602
mov ecx, dword [ebx + 0x130]
mov eax, 0xe6
sub eax, edi
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
jge 0x4b7662
mov eax, 0x35
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
mov eax, 1
cmovl esi, eax
mov eax, 0x14
sub eax, edi
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
jge 0x4b768a
mov eax, 0x17
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
mov eax, 1
cmovl esi, eax
mov eax, 0xb3
sub eax, edi
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
jge 0x4b76b2
mov eax, 0xa4
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
mov eax, 1
cmovl esi, eax
mov eax, 0x6b
sub eax, edi
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
jge 0x4b76da
mov eax, 0xa2
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
mov eax, 1
cmovl esi, eax
mov eax, 0x13
sub eax, edi
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
jge 0x4b7702
mov eax, 5
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
mov eax, 1
cmovl esi, eax
mov eax, 0x8d
sub eax, edi
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
jge 0x4b772a
mov eax, 0x56
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
mov eax, 1
cmovl esi, eax
mov eax, 0xb6
sub eax, edi
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
jge 0x4b7752
mov eax, 0x1a
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
mov eax, 1
cmovl esi, eax
mov eax, 0x20
sub eax, edi
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
jge 0x4b777a
mov eax, 0xed
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
mov eax, 1
cmovl esi, eax
mov eax, 0xd7
sub eax, edi
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
jge 0x4b77a2
mov eax, 0xde
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
mov eax, 1
cmovl esi, eax
mov eax, 0x7b
sub eax, edi
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
jge 0x4b77ca
mov eax, 0x96
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
mov eax, 1
cmovl esi, eax
mov eax, 0x78
sub eax, edi
cdq
xor eax, edx
sub eax, edx
cmp eax, 0xa
jge 0x4b7809
mov eax, 0x25
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 0xa
mov eax, 1
cmovl esi, eax
mov eax, 0x1b
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 0xa
mov eax, 1
cmovl esi, eax
mov eax, 0x60
sub eax, edi
cdq
xor eax, edx
sub eax, edx
cmp eax, 0xa
jge 0x4b7831
mov eax, 0x98
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 0xa
mov eax, 1
cmovl esi, eax
mov eax, 0x5a
sub eax, edi
cdq
xor eax, edx
sub eax, edx
cmp eax, 0xa
jge 0x4b7859
mov eax, 0x8c
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 0xa
mov eax, 1
cmovl esi, eax
mov eax, dword [ebp - 0xc30]
push 0x3e8
push 0
push 0
mov ecx, dword [eax + 0x118]
call fcn.00515fe0
mov edi, eax
test edi, edi
je 0x4b78ff
nop dword [eax]
mov ecx, edi
call fcn.0044ce90
cmp eax, 1
je 0x4b78bc
mov ecx, edi
call fcn.0044ce90
cmp eax, 7
je 0x4b78bc
mov ecx, edi
call fcn.0044ce90
cmp eax, 5
je 0x4b78bc
mov ecx, edi
call fcn.0044ce90
cmp eax, 0xe
je 0x4b78bc
mov ecx, edi
call fcn.0044ce90
cmp eax, 0x12
jne 0x4b78e8
mov eax, dword [ebx + 0x12c]
sub eax, dword [edi + 0x108]
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
jge 0x4b78e8
mov eax, dword [ebx + 0x130]
sub eax, dword [edi + 0x10c]
cdq
xor eax, edx
sub eax, edx
cmp eax, 5
jl 0x4b7907
mov eax, dword [ebp - 0xc30]
mov ecx, dword [eax + 0x118]
call fcn.00516090
mov edi, eax
test edi, edi
jne 0x4b7880
test esi, esi
je 0x4b79bf
mov edi, dword [ebp - 0xc30]
mov esi, 3
call fcn.00569587
cdq
idiv esi
dec edx
add dword [ebx + 0x12c], edx
call fcn.00569587
cdq
idiv esi
mov eax, dword [ebx + 0x130]
mov ecx, dword [ebx + 0x12c]
dec eax
add eax, edx
mov dword [ebx + 0x130], eax
cmp ecx, 2
jge 0x4b7950
add ecx, esi
cmp ecx, 2
jl 0x4b7943
mov dword [ebx + 0x12c], ecx
cmp eax, 2
jge 0x4b7963
add eax, 3
cmp eax, 2
jl 0x4b7955
mov dword [ebx + 0x130], eax
mov eax, dword [ebx + 0x12c]
cmp eax, 0xfe
jl 0x4b7980
add eax, 0xfffffffd
cmp eax, 0xfe
jge 0x4b7970
mov dword [ebx + 0x12c], eax
mov ecx, dword [ebx + 0x130]
cmp ecx, 0xfe
jl 0x4b79a1
nop
add ecx, 0xfffffffd
cmp ecx, 0xfe
jge 0x4b7990
mov dword [ebx + 0x130], ecx
mov eax, dword [ebx + 0x12c]
mov edx, dword [edi]
push ecx
push eax
push ecx
push eax
mov ecx, edi
call dword [edx + 0x20]
test eax, eax
je 0x4b7912
jmp 0x4b7590
push 0x190
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc6c], eax
mov byte [ebp - 4], 0x55
test eax, eax
je 0x4b79f1
push dword [ebx + 0x130]
mov ecx, eax
push dword [ebx + 0x12c]
call fcn.004a23b0
mov esi, eax
jmp 0x4b79f3
xor esi, esi
mov edi, dword [ebp - 0xc30]
push esi
mov byte [ebp - 4], 0
mov ecx, dword [edi + 0x118]
call fcn.00515fc0
push 0x194
mov dword [esi + 0x188], ebx
mov dword [esi + 0x18c], 1
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc68], eax
mov byte [ebp - 4], 0x56
test eax, eax
je 0x4b7a41
push 2
push 2
mov ecx, eax
call fcn.00493b90
jmp 0x4b7a43
xor eax, eax
mov ecx, dword [ebx + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x194
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc64], eax
mov byte [ebp - 4], 0x57
test eax, eax
je 0x4b7a7d
push 4
push 4
mov ecx, eax
call fcn.004a24e0
mov ecx, eax
jmp 0x4b7a7f
xor ecx, ecx
mov eax, dword [ebx + 0x12c]
mov dword [ecx + 0x180], eax
mov eax, dword [ebx + 0x130]
dec eax
mov dword [ecx + 0x188], 0
mov dword [ecx + 0x184], eax
mov dword [ecx + 0x18c], 0
push ecx
mov ecx, dword [ebx + 0x118]
mov byte [ebp - 4], 0
call fcn.00515fc0
mov esi, dword [ebp - 0xc34]
push 0
lea eax, [ebp - 0x410]
push eax
push esi
call fcn.0044d8e0
add esp, 0xc
lea eax, [ebp - 0x410]
mov ecx, str.TOWER
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4b7b00
test dl, dl
je 0x4b7afc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4b7b00
add eax, 2
add ecx, 2
test dl, dl
jne 0x4b7ae0
xor eax, eax
jmp 0x4b7b05
sbb eax, eax
or eax, 1
test eax, eax
je 0x4b74f0
push esi
call fcn.005698f0
add esp, 4
call dword [sym.imp.WINMM.dll_timeGetTime]
push eax
call fcn.005695a8
add esp, 4
lea eax, [ebp - 0x410]
push str.Loading_Lab1._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push pe_nt_image_headers32
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov edi, dword [ebp - 0xc2c]
mov byte [ebp - 4], 0x58
test eax, eax
je 0x4b7b7d
push dword [edi + 0x34]
mov ecx, eax
push str.Labyrinth
push 2
call fcn.00510ea0
mov ebx, eax
jmp 0x4b7b7f
xor ebx, ebx
push 1
push 1
push 0x40
push 0x40
push str.datlabyrinth_server.raw
mov ecx, ebx
mov byte [ebp - 4], 0
call fcn.00511070
mov dword [ebx + 0x134], 3
mov ecx, dword [edi + 0x48]
push ebx
call fcn.0044e350
lea eax, [ebp - 0x410]
push str.Loading_Lab2._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push pe_nt_image_headers32
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x59
test eax, eax
je 0x4b7c02
push dword [edi + 0x34]
mov ecx, eax
push str.Deep_Labyrinth
push 2
call fcn.00510ea0
mov esi, eax
mov dword [ebp - 0xc34], eax
jmp 0x4b7c0a
xor esi, esi
mov dword [ebp - 0xc34], esi
push 1
push 1
push 0x40
push 0x40
push str.datlabyrinth2_server.raw
mov ecx, esi
mov byte [ebp - 4], 0
call fcn.00511070
mov dword [esi + 0x134], 4
mov ecx, dword [edi + 0x48]
push esi
call fcn.0044e350
lea eax, [ebp - 0x410]
push str.Loading_Lab3._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push pe_nt_image_headers32
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x5a
test eax, eax
je 0x4b7c87
push dword [edi + 0x34]
mov ecx, eax
push str.Labyrinth_Basement
push 2
call fcn.00510ea0
mov edi, eax
jmp 0x4b7c89
xor edi, edi
push 1
push 1
push 0x40
push 0x40
push str.datlabyrinth3_server.raw
mov ecx, edi
mov byte [ebp - 4], 0
call fcn.00511070
mov eax, dword [ebp - 0xc2c]
mov dword [edi + 0x134], 5
push edi
mov ecx, dword [eax + 0x48]
call fcn.0044e350
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x5b
test eax, eax
je 0x4b7ce2
push 0
push 0
mov ecx, eax
call fcn.00495120
jmp 0x4b7ce4
xor eax, eax
mov ecx, dword [ebx + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
lea eax, [ebp - 0x410]
push str.Adding_the_Three_Spiders._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x2c4
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x5c
test eax, eax
je 0x4b7d44
push 0
push 0
push 4
push 0x18
mov ecx, eax
call fcn.00496ed0
mov esi, eax
jmp 0x4b7d46
xor esi, esi
lea eax, [esi + 0x184]
mov byte [ebp - 4], 0
push str.Larath
push eax
call fcn.004b3b00
add esp, 8
mov dword [esi + 0x1a8], 0x3fd9999a
mov dword [esi + 0x1b0], 0x13880
mov dword [esi + 0x1ac], 0x13880
mov dword [esi + 0x1b4], 0x28
mov dword [esi + 0x1b8], 0x5a
mov dword [esi + 0x1bc], 0x87
mov dword [esi + 0x1c0], 0x14
mov dword [esi + 0x1f4], 0x3f4ccccd
mov dword [esi + 0x238], 0x3e8
mov word [esi + 0x1a4], 0x80ff
mov byte [esi + 0x1a6], 0
mov dword [esi + 0x108], 0x19
mov dword [esi + 0x228], 0x19
mov dword [esi + 0x110], 0x19
mov dword [esi + 0x10c], 4
mov dword [esi + 0x22c], 4
mov dword [esi + 0x114], 4
mov ecx, dword [ebx + 0x118]
push esi
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x5d
test eax, eax
je 0x4b7e3e
push 0
push 0
push 4
push 0x18
mov ecx, eax
call fcn.00496ed0
mov esi, eax
jmp 0x4b7e40
xor esi, esi
lea eax, [esi + 0x184]
mov byte [ebp - 4], 0
push str.Moultz
push eax
call fcn.004b3b00
add esp, 8
mov dword [esi + 0x1a8], 0x3fe66666
mov dword [esi + 0x1b0], 0x13880
mov dword [esi + 0x1ac], 0x13880
mov dword [esi + 0x1b4], 0x28
mov dword [esi + 0x1b8], 0x64
mov dword [esi + 0x1bc], 0x91
mov dword [esi + 0x1c0], 0x14
mov dword [esi + 0x1f4], 0x3f666666
mov dword [esi + 0x238], 0x3e8
mov word [esi + 0x1a4], 0xff00
mov byte [esi + 0x1a6], 0x80
mov dword [esi + 0x108], 0x30
mov dword [esi + 0x228], 0x30
mov dword [esi + 0x110], 0x30
mov dword [esi + 0x10c], 0x1c
mov dword [esi + 0x22c], 0x1c
mov dword [esi + 0x114], 0x1c
mov ecx, dword [ebx + 0x118]
push esi
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x5e
test eax, eax
je 0x4b7f38
push 0
push 0
push 4
push 0x18
mov ecx, eax
call fcn.00496ed0
mov esi, eax
jmp 0x4b7f3a
xor esi, esi
lea eax, [esi + 0x184]
mov byte [ebp - 4], 0
push str.Reorth
push eax
call fcn.004b3b00
add esp, 8
mov dword [esi + 0x1a8], 0x3ff33333
mov dword [esi + 0x1b0], 0x13880
mov dword [esi + 0x1ac], 0x13880
mov dword [esi + 0x1b4], 0x28
mov dword [esi + 0x1b8], 0x6e
mov dword [esi + 0x1bc], 0x9b
mov dword [esi + 0x1c0], 0x14
mov dword [esi + 0x1f4], 0x3f7d70a4
mov dword [esi + 0x238], 0x3e8
mov word [esi + 0x1a4], 0x80
mov byte [esi + 0x1a6], 0xff
mov dword [esi + 0x108], 0x18
mov dword [esi + 0x228], 0x18
mov dword [esi + 0x110], 0x18
mov dword [esi + 0x10c], 0x38
mov dword [esi + 0x22c], 0x38
mov dword [esi + 0x114], 0x38
mov ecx, dword [ebx + 0x118]
push esi
call fcn.00515fc0
lea eax, [ebp - 0x410]
push str.Adding_warp_points._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
mov esi, dword [ebp - 0xc34]
add esp, 0x10
mov ecx, dword [ebp - 0xc2c]
push 1
push 0
push 1
push edi
push 0xa
push 0x21
push esi
call fcn.004b9380
mov ecx, dword [ebp - 0xc2c]
push 1
push 1
push 1
push esi
push 0x1c
push 0x1c
push ebx
call fcn.004b9380
mov esi, dword [ebp - 0xc30]
mov ecx, dword [ebp - 0xc2c]
push 1
push 1
push 1
push ebx
push 5
push 0x13
push esi
call fcn.004b9380
mov ecx, dword [ebp - 0xc2c]
push 1
push 4
push 0x33
push ebx
push 0x56
push 0x8d
push esi
call fcn.004b9380
mov ecx, dword [ebp - 0xc2c]
push 1
push 0x3b
push 0x33
push ebx
push 0x1a
push 0xb7
push esi
call fcn.004b9380
mov ecx, dword [ebp - 0xc2c]
push 1
push 0x37
push 4
push ebx
push 0xed
push 0x20
push esi
call fcn.004b9380
mov ecx, dword [ebp - 0xc2c]
push 1
push 0x1f
push 0x16
push ebx
push 0xde
push 0xd7
push esi
call fcn.004b9380
mov ecx, dword [ebp - 0xc2c]
push 1
push 0x20
push 0x2e
push ebx
push 0x96
push 0x7b
push esi
call fcn.004b9380
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x5f
test eax, eax
je 0x4b8127
push 0
push 0
mov ecx, eax
call fcn.00495120
jmp 0x4b8129
xor eax, eax
mov ebx, dword [ebp - 0xc34]
push eax
mov byte [ebp - 4], 0
mov ecx, dword [ebx + 0x114]
call fcn.0044e350
lea eax, [ebp - 0x410]
push str.Adding_lab2_bosses._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x2c4
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x60
test eax, eax
je 0x4b818d
push 0
push 0
push 0
push 0x1b
mov ecx, eax
call fcn.00496ed0
jmp 0x4b818f
xor eax, eax
mov dword [eax + 0x228], 5
mov dword [eax + 0x110], 5
mov dword [eax + 0x108], 5
mov dword [eax + 0x22c], 6
mov dword [eax + 0x114], 6
mov dword [eax + 0x10c], 6
mov dword [eax + 0x1f4], 0x3f7d70a4
mov ecx, dword [ebx + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x61
test eax, eax
je 0x4b8213
push 0
push 0
push 0
push 0x1b
mov ecx, eax
call fcn.00496ed0
mov esi, eax
jmp 0x4b8215
xor esi, esi
lea eax, [esi + 0x184]
mov byte [ebp - 4], 0
push str.Biphomet
push eax
mov dword [esi + 0x228], 0x34
mov dword [esi + 0x110], 0x34
mov dword [esi + 0x108], 0x34
mov dword [esi + 0x22c], 0x3b
mov dword [esi + 0x114], 0x3b
mov dword [esi + 0x10c], 0x3b
mov dword [esi + 0x1f4], 0x3f7d70a4
call fcn.004b3b00
mov ecx, dword [ebx + 0x118]
add esp, 8
push esi
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x62
test eax, eax
je 0x4b82ab
push 0
push 0
push 1
push 0x1b
mov ecx, eax
call fcn.00496ed0
jmp 0x4b82ad
xor eax, eax
mov dword [eax + 0x228], 7
mov dword [eax + 0x110], 7
mov dword [eax + 0x108], 7
mov dword [eax + 0x22c], 0x3a
mov dword [eax + 0x114], 0x3a
mov dword [eax + 0x10c], 0x3a
mov dword [eax + 0x1f4], 0x3f7d70a4
mov ecx, dword [ebx + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
lea eax, [ebp - 0x410]
push str.Populating_Lab3._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x774
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x63
test eax, eax
je 0x4b834d
push 0
push 0
mov ecx, eax
call fcn.00495120
jmp 0x4b834f
xor eax, eax
mov ecx, dword [edi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
push 0x774
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x64
test eax, eax
je 0x4b8387
push 0
push 0
mov ecx, eax
call fcn.00495120
jmp 0x4b8389
xor eax, eax
mov ecx, dword [edi + 0x114]
push eax
mov byte [ebp - 4], 0
call fcn.0044e350
lea eax, [ebp - 0x410]
push str.Adding_lab3_bosses._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x2c4
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x65
test eax, eax
je 0x4b83e7
push 0
push 0
push 2
push 0x1b
mov ecx, eax
call fcn.00496ed0
jmp 0x4b83e9
xor eax, eax
mov dword [eax + 0x228], 0x11
mov dword [eax + 0x110], 0x11
mov dword [eax + 0x108], 0x11
mov dword [eax + 0x22c], 0xf
mov dword [eax + 0x114], 0xf
mov dword [eax + 0x10c], 0xf
mov dword [eax + 0x1f4], 0x3f7d70a4
mov ecx, dword [edi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x66
test eax, eax
je 0x4b846b
push 0
push 0
push 3
push 0x1b
mov ecx, eax
call fcn.00496ed0
jmp 0x4b846d
xor eax, eax
mov dword [eax + 0x228], 0x1d
mov dword [eax + 0x110], 0x1d
mov dword [eax + 0x108], 0x1d
mov dword [eax + 0x22c], 0x1a
mov dword [eax + 0x114], 0x1a
mov dword [eax + 0x10c], 0x1a
mov dword [eax + 0x1f4], 0x3f7d70a4
mov ecx, dword [edi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x67
test eax, eax
je 0x4b84ef
push 0
push 0
push 4
push 0x1b
mov ecx, eax
call fcn.00496ed0
jmp 0x4b84f1
xor eax, eax
mov dword [eax + 0x228], 0xc
mov dword [eax + 0x110], 0xc
mov dword [eax + 0x108], 0xc
mov dword [eax + 0x22c], 0x27
mov dword [eax + 0x114], 0x27
mov dword [eax + 0x10c], 0x27
mov dword [eax + 0x1f4], 0x3f7d70a4
mov ecx, dword [edi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x68
test eax, eax
je 0x4b8573
push 0
push 0
push 2
push 0x1e
mov ecx, eax
call fcn.00496ed0
jmp 0x4b8575
xor eax, eax
mov dword [eax + 0x228], 0x14
mov dword [eax + 0x110], 0x14
mov dword [eax + 0x108], 0x14
mov dword [eax + 0x22c], 0x35
mov dword [eax + 0x114], 0x35
mov dword [eax + 0x10c], 0x35
mov dword [eax + 0x1f4], 0x3f800000
mov ecx, dword [edi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x69
test eax, eax
je 0x4b85f7
push 0
push 0
push 3
push 0x1e
mov ecx, eax
call fcn.00496ed0
jmp 0x4b85f9
xor eax, eax
mov dword [eax + 0x228], 0x23
mov dword [eax + 0x110], 0x23
mov dword [eax + 0x108], 0x23
mov dword [eax + 0x22c], 0x2b
mov dword [eax + 0x114], 0x2b
mov dword [eax + 0x10c], 0x2b
mov dword [eax + 0x1f4], 0x3f800000
mov ecx, dword [edi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x6a
test eax, eax
je 0x4b867b
push 0
push 0
push 4
push 0x1e
mov ecx, eax
call fcn.00496ed0
jmp 0x4b867d
xor eax, eax
mov dword [eax + 0x228], 0x35
mov dword [eax + 0x110], 0x35
mov dword [eax + 0x108], 0x35
mov dword [eax + 0x22c], 0x16
mov dword [eax + 0x114], 0x16
mov dword [eax + 0x10c], 0x16
mov dword [eax + 0x1f4], 0x3f800000
mov ecx, dword [edi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
push 0x2c4
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x6b
test eax, eax
je 0x4b86ff
push 0
push 0
push 5
push 0x1e
mov ecx, eax
call fcn.00496ed0
jmp 0x4b8701
xor eax, eax
mov dword [eax + 0x228], 0x2a
mov dword [eax + 0x110], 0x2a
mov dword [eax + 0x108], 0x2a
mov dword [eax + 0x22c], 0x3c
mov dword [eax + 0x114], 0x3c
mov dword [eax + 0x10c], 0x3c
mov dword [eax + 0x1f4], 0x3f800000
mov ecx, dword [edi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00515fc0
lea eax, [ebp - 0x410]
push str.Loading_testrealm._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x13c
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov ebx, dword [ebp - 0xc2c]
mov byte [ebp - 4], 0x6c
test eax, eax
je 0x4b87af
push dword [ebx + 0x34]
mov ecx, eax
push str.Test_Realm
push 4
call fcn.00526390
mov esi, eax
jmp 0x4b87b1
xor esi, esi
push 0
push 0
push 0x40
push 0x40
push str.dat_testrealm_server.raw
mov ecx, esi
mov byte [ebp - 4], 0
call fcn.00526540
mov dword [esi + 0x134], 6
mov ecx, dword [ebx + 0x48]
push esi
call fcn.0044e350
lea eax, [ebp - 0x410]
push str.TOken_init._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
add esp, 0x10
mov ecx, 0x630630
call fcn.0052f610
lea eax, [ebp - 0x410]
push str.Loading_saved_tokens_if_present._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
add esp, 0x10
mov ecx, 0x630630
call fcn.0052f700
mov esi, dword [sym.imp.WINMM.dll_timeGetTime]
call esi
mov dword [ebx + 0x50], eax
call esi
mov dword [ebx + 0x58], eax
lea eax, [ebp - 0x410]
push str.Loading_banlists._n
push eax
mov dword [ebx + 0x5c], 0
mov dword [ebx + 0x70], 0
mov dword [ebx + 0x6c], 0
mov dword [ebx + 0x60], 0
mov dword [ebx + 0x54], 0
mov dword [ebx + 0x68], 0
mov dword [ebx + 0x74], 0
mov dword [ebx + 0x64], 0
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x14
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x6d
test eax, eax
je 0x4b88c5
mov ecx, eax
call fcn.005109e0
jmp 0x4b88c7
xor eax, eax
push 0x14
mov byte [ebp - 4], 0
mov dword [0x62fb24], eax
call fcn.00559eaa
add esp, 4
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x6e
test eax, eax
je 0x4b88f1
mov ecx, eax
call fcn.00532bb0
jmp 0x4b88f3
xor eax, eax
mov dword [0x62fb28], eax
lea eax, [ebp - 0x410]
push str.Loading_quests._n
push eax
mov byte [ebp - 4], 0
mov dword [ebx + 0xc4], 0
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x14
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x6f
test eax, eax
je 0x4b8949
mov ecx, eax
call fcn.00522d90
jmp 0x4b894b
xor eax, eax
mov ecx, eax
mov byte [ebp - 4], 0
mov dword [0x630610], eax
call fcn.005241a0
lea eax, [ebp - 0x410]
push str.Loading_alternate_main._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
push 0x10128
call fcn.00559eaa
add esp, 0x14
mov dword [ebp - 0xc28], eax
mov byte [ebp - 4], 0x70
test eax, eax
je 0x4b89ad
push dword [ebx + 0x34]
mov ecx, eax
push str.Test_Large_Realm
push 0
call fcn.004f8590
mov esi, eax
jmp 0x4b89af
xor esi, esi
mov eax, dword [esi]
mov ecx, esi
push 1
push 1
push 1
push 1
mov byte [ebp - 4], 0
call dword [eax + 0x14]
mov ecx, dword [ebx + 0x48]
push esi
call fcn.0044e350
lea eax, [ebp - 0x410]
push str.Done_loading._n
push eax
call fcn.004725c0
lea eax, [ebp - 0x410]
push eax
push str.gamelog.txt
call fcn.004a2860
add esp, 0x10
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00559ee8
mov esp, ebp
pop ebp
ret 4