Function at 0x4cd650
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5c8780
mov eax, dword fs:[0]
push eax
mov eax, 0x4218
call fcn.00559fa0
mov eax, dword [0x62c7a8]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, ecx
mov dword [ebp - 0x3e50], eax
mov dword [ebp - 0x3fc8], 0
mov byte [ebp - 0x25ec], 4
mov byte [ebp - 0x206c], 0x17
mov byte [ebp - 0x3e94], 0xd
mov byte [ebp - 0x3e64], 0xe
mov byte [ebp - 0x2004], 9
mov byte [ebp - 0x1fb4], 0x28
mov byte [ebp - 0x4224], 0x21
mov byte [ebp - 0x3fd8], 0x1a
mov byte [ebp - 0x3e34], 0x2d
mov byte [ebp - 0x3e7c], 0x2e
mov byte [ebp - 0x3e85], 0x37
mov byte [ebp - 0x40ac], 0x44
mov dword [ebp - 0x3e4c], 0
mov dword [ebp - 0x3e48], 0
mov dword [ebp - 0x3e44], 0
mov dword [ebp - 0x3e54], 0
lea edx, [ebp - 0x3e8c]
mov ecx, dword [eax + 0x34]
push 0
push 0
push edx
mov eax, dword [ecx]
push 0
mov dword [ebp - 4], 0
mov eax, dword [eax + 8]
call eax
mov eax, dword [ebp - 0x3e8c]
test eax, eax
jle 0x4d77d1
mov edi, 0x1e
cmp eax, 0xfa0
jle 0x4cd751
mov dword [ebp - 0x3e8c], 0xfa0
mov esi, dword [ebp - 0x3e50]
lea edx, [ebp - 0x3e4c]
push edx
lea edx, [ebp - 0x3e54]
push edx
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e8c]
push edx
lea edx, [ebp - 0xfb0]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
movsx eax, byte [ebp - 0xfb0]
dec eax
cmp eax, 0x5d
ja case.0x4cd795.2
movzx eax, byte [eax + 0x4d78a8]
jmp dword [eax*4 + 0x4d77f8]
mov ecx, dword [0x630ad4]
lea eax, [ebp - 0xfaf]
push eax
call fcn.00510110
test eax, eax
je 0x4cd7dd
mov dword [ebp - 0x3e63], 0xa
lea edx, [ebp - 0x3e4c]
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.0x4cd795.2
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, dword [ebp - 0x3e50]
mov esi, eax
test esi, esi
je 0x4cd836
nop dword [eax]
mov ecx, dword [ebp - 0x3e3c]
push esi
mov ecx, dword [ecx + 0x110]
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
lea eax, [ebp - 0x3e3c]
mov ecx, edi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov esi, eax
test esi, esi
jne 0x4cd800
push dword [ebp - 0x3e54]
mov ecx, edi
call fcn.004b8d00
mov esi, eax
test esi, esi
je 0x4cd876
nop dword [eax]
mov ecx, dword [edi + 0x44]
push esi
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
push dword [ebp - 0x3e54]
mov ecx, edi
call fcn.004b8d00
mov esi, eax
test esi, esi
jne 0x4cd850
push 0x15054
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x41b8], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x4cd8a0
mov ecx, eax
call fcn.0046d680
mov dword [ebp - 0x3e5c], eax
jmp 0x4cd8aa
mov dword [ebp - 0x3e5c], 0
mov ecx, dword [ebp - 0x3e5c]
mov eax, dword [ebp - 0x3e54]
push ecx
mov byte [ebp - 4], 0
mov dword [ecx + 0x180], eax
mov dword [ecx + 0x188], 0xffffffff
mov al, byte [ebp - 0xfaf]
mov byte [ecx + 0x240], al
mov al, byte [ebp - 0xfae]
mov byte [ecx + 0x241], al
mov al, byte [ebp - 0xfad]
mov byte [ecx + 0x242], al
mov al, byte [ebp - 0xfac]
mov byte [ecx + 0x243], al
mov ecx, dword [edi + 0x44]
call fcn.0044de70
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4cd919
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ed4], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ed3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3ed2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ed1], al
mov byte [ebp - 0x3ed0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4cd9a3
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4cd9b6
lea eax, [ebp - 0x3ed4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
mov byte [ebp - 0x40ab], 0
lea edx, [ebp - 0x3e4c]
mov ecx, dword [edi + 0x34]
push edx
push 0
lea edx, [ebp - 0x40ac]
mov eax, dword [ecx]
push edx
push 6
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
xor edi, edi
call fcn.004b8420
mov esi, eax
test esi, esi
je 0x4cdd1f
mov dword [ebp - 0x3e38], 1
nop dword [eax + eax]
imul eax, dword [esi + 0x188], 0x980
add eax, 0x2a0
add eax, esi
push eax
lea eax, [esi + 0x18c]
push eax
lea eax, [ebp - 0x13b0]
push str._closing_connection:__s___s
push eax
call fcn.0046d620
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb40
add esp, 0x18
lea ecx, [ebp - 0x207c]
call fcn.00515360
mov ecx, dword [ebp - 0x2074]
mov dx, word [ebp - 0x2076]
add ecx, 0x13
movzx edi, cx
mov word [ebp - 0x2074], cx
lea eax, [edi - 0x18]
movzx eax, ax
mov dword [ebp - 0x3e40], eax
cmp cx, 0x18
jae 0x4cda96
mov ecx, 0xffff
add dx, cx
mov word [ebp - 0x2076], dx
jmp 0x4cda9d
mov word [ebp - 0x2074], ax
movzx eax, word [ebp - 0x2072]
cmp edi, 0x18
push eax
mov eax, dword [ebp - 0x3e40]
mov ecx, edi
movzx eax, ax
cmovae ecx, eax
movzx eax, cx
push eax
movzx eax, dx
push eax
movzx eax, word [ebp - 0x207a]
push eax
lea eax, [ebp - 0x13b0]
push str._d__02d___d:_02d_n
push eax
call fcn.0046d620
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb40
mov eax, dword [esi + 0x14f34]
add esp, 0x20
cmp eax, 2
je 0x4cdafb
cmp eax, 3
jne 0x4cdb0f
lea eax, [ebp - 0x13b0]
push eax
push str.moderatorLog.txt
call fcn.0049eb40
add esp, 8
mov edi, dword [ebp - 0x3e3c]
mov ecx, esi
push 0
push edi
call fcn.0046e3f0
imul eax, dword [esi + 0x188], 0x980
add eax, 0x2a0
add eax, esi
push eax
lea eax, [ebp - 0x206b]
push str._s_left_the_game.
push eax
call fcn.0046d650
add esp, 0xc
lea eax, [ebp - 0x206c]
mov ecx, edi
push 0
push 5
push eax
push 0x65
push dword [esi + 0x10c]
push dword [esi + 0x108]
push 0
call fcn.0052bf40
push 0
push edi
mov ecx, esi
call fcn.004866d0
mov ecx, dword [edi + 0x110]
push esi
call fcn.0044e210
mov ecx, edi
call fcn.0044c8d0
test eax, eax
jne 0x4cdbc4
mov ecx, edi
call fcn.0044c8d0
test eax, eax
jne 0x4cdb9b
cmp dword [edi + 0x124], eax
jg 0x4cdbc4
imul ecx, dword [esi + 0x188], 0x980
mov eax, dword [esi + 0x108]
mov dword [ecx + esi + 0x308], eax
imul ecx, dword [esi + 0x188], 0x980
mov eax, dword [esi + 0x10c]
jmp 0x4cdbed
imul ecx, dword [esi + 0x188], 0x980
mov eax, dword [ecx + esi + 0x310]
mov dword [ecx + esi + 0x308], eax
imul ecx, dword [esi + 0x188], 0x980
mov eax, dword [ecx + esi + 0x314]
mov dword [ecx + esi + 0x30c], eax
mov ecx, esi
call fcn.00487320
mov eax, dword [esi + 0x14f70]
test eax, eax
je 0x4cdced
mov dword [eax + 0x23c], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x240], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x244], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x248], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x24c], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x250], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x254], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x258], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x25c], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x260], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x1c0], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x220], 0x19
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x124], 1
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x21c], 0
mov dword [esi + 0x14f70], 0
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, dword [ebp - 0x3e50]
lea eax, [ebp - 0x3e3c]
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov esi, eax
test esi, esi
jne 0x4cda10
mov edi, dword [ebp - 0x3e38]
push dword [ebp - 0x3e54]
mov esi, dword [ebp - 0x3e50]
mov ecx, esi
call fcn.004b8d00
mov dword [ebp - 0x3e5c], eax
mov ecx, eax
mov dword [ebp - 0x3e38], ecx
test eax, eax
jne 0x4cddc6
mov dword [ebp - 0x3e5c], ecx
test edi, edi
jne case.default.0x4d28f4
lea eax, [ebp - 0x13b0]
push str._orphan_close_message_
push eax
call fcn.0046d620
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb40
add esp, 0x10
lea ecx, [ebp - 0x20ac]
call fcn.00515360
mov ecx, dword [ebp - 0x20a4]
mov dx, word [ebp - 0x20a6]
add ecx, 0x13
movzx esi, cx
mov word [ebp - 0x20a4], cx
lea eax, [esi - 0x18]
movzx eax, ax
mov edi, eax
cmp cx, 0x18
jae 0x4cddfb
mov ecx, 0xffff
add dx, cx
mov word [ebp - 0x20a6], dx
jmp 0x4cde02
mov eax, dword [ebp - 0x3e5c]
mov ecx, dword [esi + 0x44]
push eax
call fcn.0044e210
mov ecx, dword [ebp - 0x3e5c]
push 1
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
push dword [ebp - 0x3e54]
mov ecx, esi
call fcn.004b8d00
mov ecx, eax
mov dword [ebp - 0x3e5c], ecx
test ecx, ecx
jne 0x4cddc0
jmp case.default.0x4d28f4
mov word [ebp - 0x20a4], ax
movzx eax, word [ebp - 0x20a2]
cmp esi, 0x18
push eax
movzx eax, di
mov ecx, esi
cmovae ecx, eax
movzx eax, cx
push eax
movzx eax, dx
push eax
movzx eax, word [ebp - 0x20aa]
push eax
lea eax, [ebp - 0x13b0]
push str._d__02d___d:_02d_n
push eax
call fcn.0046d620
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb40
mov ecx, dword [ebp - 0x3e38]
add esp, 0x20
mov dword [ebp - 0x3e5c], ecx
jmp case.default.0x4d28f4
mov eax, dword [ebp - 0x3e8c]
dec eax
push eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044cf90
add esp, 8
lea eax, [ebp - 0xfaf]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b9480
jmp case.0x4cd795.2
mov eax, dword [str.Connecting...]
mov dword [0x62f144], eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044c540
lea eax, [ebp - 0xfaf]
push 0x20
push eax
call fcn.0044cf90
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044ce30
lea eax, [ebp - 0xf8f]
push 0x88
push eax
call fcn.0044cf90
mov ecx, dword [0x630ad8]
add esp, 0x18
push dword [ebp - 0xf07]
call fcn.00532500
test eax, eax
je 0x4cdf0f
mov dword [ebp - 0x3e63], 0xc
lea edx, [ebp - 0x3e4c]
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.0x4cd795.2
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
lea eax, [ebp - 0xf8f]
push eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.004b84a0
mov ecx, eax
mov dword [ebp - 0x3e5c], ecx
test ecx, ecx
je 0x4cdf62
mov dword [ebp - 0x3e63], 6
lea edx, [ebp - 0x3e4c]
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.0x4cd795.2
push dword [ebp - 0x3e54]
mov ecx, esi
call fcn.004b8d00
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
push 0xffffffffffffffff
push 0
push 1
lea eax, [ebp - 0xf8f]
mov ecx, edi
push eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.0047eb60
mov ecx, dword [ebp - 0xf07]
mov esi, eax
mov dword [edi + 0x14fb4], ecx
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4cdfbe
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3edc], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3edb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3eda], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ed9], al
mov byte [ebp - 0x3ed8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4ce048
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4ce05b
lea eax, [ebp - 0x3edc]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
mov byte [ebp - 0x4064], 0x3f
lea edx, [ebp - 0x4064]
mov eax, dword [edi + 0x238]
mov edi, dword [ebp - 0x3e50]
mov dword [ebp - 0x4063], eax
push 0
push 0
mov ecx, dword [edi + 0x34]
push edx
push 5
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
test esi, esi
jne 0x4ce0bc
mov eax, dword [ebp - 0x3e54]
mov dword [ebp - 0x3e93], eax
mov ecx, dword [edi + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x3e94]
mov eax, dword [eax + 4]
push edx
push 5
call eax
jmp case.default.0x4d28f4
cmp esi, 1
jne 0x4ce0e8
mov dword [ebp - 0x3e63], esi
mov ecx, dword [edi + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [eax + 4]
push edx
push 5
call eax
jmp case.default.0x4d28f4
cmp esi, 2
jne 0x4ce114
mov dword [ebp - 0x3e63], esi
lea edx, [ebp - 0x3e4c]
mov ecx, dword [edi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
cmp esi, 3
jne 0x4ce140
mov dword [ebp - 0x3e63], esi
lea edx, [ebp - 0x3e4c]
mov ecx, dword [edi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
cmp esi, 0xa
jne 0x4ce16c
mov dword [ebp - 0x3e63], esi
lea edx, [ebp - 0x3e4c]
mov ecx, dword [edi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
cmp esi, 0x14
jne 0x4ce1bd
mov dword [ebp - 0x3e63], 0xc
mov ecx, dword [edi + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [eax + 4]
push edx
push 5
call eax
mov ecx, dword [0x630ad8]
push str.Mr._Cheater
push dword [ebp - 0xf07]
call fcn.00532740
mov ecx, dword [0x630ad8]
call fcn.005326c0
jmp case.default.0x4d28f4
cmp esi, 0xffffffff
jne case.default.0x4d28f4
mov dword [ebp - 0x3e63], esi
lea edx, [ebp - 0x3e4c]
mov ecx, dword [edi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4ce203
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ee4], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ee3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3ee2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ee1], al
mov byte [ebp - 0x3ee0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4ce28d
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4ce2a0
lea eax, [ebp - 0x3ee4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
mov eax, dword [str.Connecting...]
mov dword [0x62f144], eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044c540
cmp dword [esi + 0x7c], 0
mov eax, 0x3e8
mov edi, dword [0x630adc]
cmovne edi, eax
lea eax, [ebp - 0xfaf]
push 0x20
push eax
mov dword [ebp - 0x3e38], edi
call fcn.0044cf90
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044ce30
lea eax, [ebp - 0xf8f]
push 0x88
push eax
call fcn.0044cf90
mov ecx, dword [0x630ad8]
add esp, 0x18
push dword [ebp - 0xf07]
call fcn.00532500
test eax, eax
je 0x4ce323
mov dword [ebp - 0x3e63], 0xc
mov ecx, dword [esi + 0x34]
jmp 0x4ce0ca
mov ecx, dword [esi + 0x48]
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4ce39e
mov edi, dword [ebp - 0x3e50]
nop word [eax + eax]
mov ecx, dword [esi + 0x110]
call fcn.0044e020
test eax, eax
je 0x4ce38a
mov edi, dword [ebp - 0x3fc8]
nop word [eax + eax]
mov ecx, dword [ebp - 0xf07]
cmp ecx, dword [eax + 0x14fb4]
jne 0x4ce36f
inc edi
mov ecx, dword [esi + 0x110]
call fcn.0044e0d0
test eax, eax
jne 0x4ce360
mov dword [ebp - 0x3fc8], edi
mov edi, dword [ebp - 0x3e50]
mov ecx, dword [edi + 0x48]
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4ce340
mov edi, dword [ebp - 0x3e38]
cmp dword [ebp - 0x3fc8], edi
jl 0x4ce3be
mov eax, dword [ebp - 0x3e50]
mov dword [ebp - 0x3e63], 0xd
mov ecx, dword [eax + 0x34]
jmp 0x4ce0ca
movss xmm0, dword [ebp - 0xf03]
ucomiss xmm0, dword [0x5de2e0]
lahf
test ah, 0x44
jnp 0x4ce3eb
mov eax, dword [ebp - 0x3e50]
mov dword [ebp - 0x3e63], 5
mov ecx, dword [eax + 0x34]
jmp 0x4ce0ca
mov esi, dword [ebp - 0x3e50]
lea eax, [ebp - 0x3e3c]
push eax
lea eax, [ebp - 0xf8f]
mov ecx, esi
push eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.004b84a0
mov ecx, eax
mov dword [ebp - 0x3e5c], ecx
test ecx, ecx
je 0x4ce42b
mov dword [ebp - 0x3e63], 6
mov ecx, dword [esi + 0x34]
jmp 0x4ce0ca
push dword [ebp - 0x3e54]
mov ecx, esi
call fcn.004b8d00
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
push dword [ebp - 0xf07]
lea eax, [ebp - 0xf8f]
mov ecx, edi
push 0
push 0
push eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.0047eb60
mov ecx, dword [ebp - 0xf07]
mov esi, eax
mov dword [edi + 0x14fb4], ecx
cmp dword [edi + 0x14fa4], 1
jne 0x4ce4a9
lea ecx, [ebp - 0x2140]
call fcn.00515360
lea eax, [edi + 0x14f94]
push eax
lea ecx, [ebp - 0x2140]
call fcn.005153c0
test eax, eax
jg 0x4ce4c7
mov dword [edi + 0x14fa4], 0
test esi, esi
jne 0x4ce4df
mov eax, dword [ebp - 0x3e54]
mov dword [ebp - 0x3e93], eax
mov eax, dword [ebp - 0x3e50]
mov ecx, dword [eax + 0x34]
jmp 0x4ce09e
mov eax, dword [ebp - 0x3e50]
mov dword [ebp - 0x3e63], 7
mov ecx, dword [eax + 0x34]
jmp 0x4ce0ca
cmp esi, 1
jne 0x4ce511
mov dword [ebp - 0x3e63], esi
mov eax, dword [ebp - 0x3e50]
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [eax + 4]
push edx
push 5
call eax
jmp case.default.0x4d28f4
cmp esi, 2
jne 0x4ce51e
mov dword [ebp - 0x3e63], esi
jmp 0x4ce4ea
cmp esi, 3
jne 0x4ce52b
mov dword [ebp - 0x3e63], esi
jmp 0x4ce4ea
cmp esi, 4
jne 0x4ce538
mov dword [ebp - 0x3e63], esi
jmp 0x4ce4ea
cmp esi, 0xffffffff
jne 0x4ce545
mov dword [ebp - 0x3e63], esi
jmp 0x4ce4ea
cmp esi, 0xa
jne 0x4ce552
mov dword [ebp - 0x3e63], esi
jmp 0x4ce4ea
cmp esi, 0x14
jne 0x4ce56f
mov eax, dword [ebp - 0x3e50]
mov dword [ebp - 0x3e63], 0xc
mov ecx, dword [eax + 0x34]
jmp 0x4ce17e
cmp esi, 0xb
jne case.default.0x4d28f4
mov dword [ebp - 0x3e63], esi
jmp 0x4ce4ea
mov eax, dword [ebp - 0x3e54]
cmp dword [ebp - 0xfaf], eax
jne case.0x4cd795.2
lea ecx, [ebp - 0xfb0]
push ecx
push eax
mov ecx, esi
call fcn.004e4630
jmp case.0x4cd795.2
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4ce5bf
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3eec], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3eeb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3eea], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ee9], al
mov byte [ebp - 0x3ee8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4ce649
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4ce65c
lea eax, [ebp - 0x3eec]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
push dword [ebp - 0x3e54]
mov ecx, esi
call fcn.004b8d00
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
movsx ecx, byte [ebp - 0xfaf]
and ecx, 0x80000007
jns 0x4ce68d
dec ecx
or ecx, 0xfffffff8
inc ecx
movsx edx, cl
imul eax, edx, 0x980
mov byte [ebp - 0xfaf], cl
cmp dword [eax + edi + 0x2c4], 0xffffffff
jle 0x4ce824
mov dword [ebp - 0x2003], edx
lea edx, [ebp - 0x3e4c]
movsx eax, cl
imul ecx, eax, 0x980
push edx
push 0
lea edx, [ebp - 0x2004]
push edx
push 0x4d
mov eax, dword [ecx + edi + 0x2c0]
mov dword [ebp - 0x1fff], eax
mov al, byte [ecx + edi + 0x2cc]
mov byte [ebp - 0x1ff3], al
mov al, byte [ecx + edi + 0x2cd]
mov byte [ebp - 0x1ff2], al
mov al, byte [ecx + edi + 0x2ce]
mov byte [ebp - 0x1ff1], al
mov eax, dword [ecx + edi + 0x2c4]
mov dword [ebp - 0x1ffb], eax
mov al, byte [ecx + edi + 0x2cf]
mov byte [ebp - 0x1ff0], al
mov al, byte [ecx + edi + 0x2d0]
mov byte [ebp - 0x1fef], al
mov al, byte [ecx + edi + 0x2d1]
mov byte [ebp - 0x1fee], al
mov eax, dword [ecx + edi + 0x2c8]
mov dword [ebp - 0x1ff7], eax
mov al, byte [ecx + edi + 0x2d2]
mov byte [ebp - 0x1fed], al
mov al, byte [ecx + edi + 0x2d3]
mov byte [ebp - 0x1fec], al
mov al, byte [ecx + edi + 0x2d4]
mov byte [ebp - 0x1feb], al
movups xmm0, xmmword [ecx + edi + 0x2a0]
movups xmmword [ebp - 0x1fe8], xmm0
movq xmm0, qword [ecx + edi + 0x2b0]
movq qword [ebp - 0x1fd8], xmm0
mov eax, dword [ecx + edi + 0x2b8]
mov dword [ebp - 0x1fd0], eax
movzx eax, word [ecx + edi + 0x2bc]
mov word [ebp - 0x1fcc], ax
mov al, byte [ecx + edi + 0x2be]
mov byte [ebp - 0x1fca], al
mov byte [ebp - 0x1fc9], 0
mov al, byte [ecx + edi + 0x2e8]
mov byte [ebp - 0x1fc8], al
mov al, byte [ecx + edi + 0x2ec]
mov byte [ebp - 0x1fc7], al
mov al, byte [ecx + edi + 0x2f0]
mov byte [ebp - 0x1fc6], al
mov al, byte [ecx + edi + 0x2f4]
mov byte [ebp - 0x1fc5], al
movzx eax, word [ecx + edi + 0x318]
mov word [ebp - 0x1fea], ax
cvttss2si eax, dword [ecx + edi + 0x300]
mov dword [ebp - 0x1fc4], eax
mov eax, dword [ecx + edi + 0x2d8]
mov ecx, dword [eax + 0x18]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0x1fc0], ecx
mov dword [ebp - 0x1fbc], eax
jmp 0x4ce840
lea edx, [ebp - 0x3e4c]
mov dword [ebp - 0x3e63], 1
push edx
push 0
lea edx, [ebp - 0x3e64]
push edx
push 5
mov ecx, dword [esi + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
cmp dword [edi + 0x2c4], 0xffffffff
jle 0x4ce8a0
movups xmm0, xmmword [edi + 0x2a0]
movups xmmword [ebp - 0x1fb3], xmm0
movq xmm0, qword [edi + 0x2b0]
movq qword [ebp - 0x1fa3], xmm0
mov eax, dword [edi + 0x2b8]
mov dword [ebp - 0x1f9b], eax
mov ax, word [edi + 0x2bc]
mov word [ebp - 0x1f97], ax
mov al, byte [edi + 0x2be]
mov byte [ebp - 0x1f95], al
mov byte [ebp - 0x1f94], 0
jmp 0x4ce8a7
mov byte [ebp - 0x1fb3], 0
cmp dword [edi + 0xc44], 0xffffffff
jle 0x4ce8fd
movups xmm0, xmmword [edi + 0xc20]
movups xmmword [ebp - 0x1f93], xmm0
movq xmm0, qword [edi + 0xc30]
movq qword [ebp - 0x1f83], xmm0
mov eax, dword [edi + 0xc38]
mov dword [ebp - 0x1f7b], eax
mov ax, word [edi + 0xc3c]
mov word [ebp - 0x1f77], ax
mov al, byte [edi + 0xc3e]
mov byte [ebp - 0x1f75], al
mov byte [ebp - 0x1f74], 0
jmp 0x4ce904
mov byte [ebp - 0x1f93], 0
cmp dword [edi + 0x15c4], 0xffffffff
jle 0x4ce95a
movups xmm0, xmmword [edi + 0x15a0]
movups xmmword [ebp - 0x1f73], xmm0
movq xmm0, qword [edi + 0x15b0]
movq qword [ebp - 0x1f63], xmm0
mov eax, dword [edi + 0x15b8]
mov dword [ebp - 0x1f5b], eax
mov ax, word [edi + 0x15bc]
mov word [ebp - 0x1f57], ax
mov al, byte [edi + 0x15be]
mov byte [ebp - 0x1f55], al
mov byte [ebp - 0x1f54], 0
jmp 0x4ce961
mov byte [ebp - 0x1f73], 0
cmp dword [edi + 0x1f44], 0xffffffff
jle 0x4ce9b7
movups xmm0, xmmword [edi + 0x1f20]
movups xmmword [ebp - 0x1f53], xmm0
movq xmm0, qword [edi + 0x1f30]
movq qword [ebp - 0x1f43], xmm0
mov eax, dword [edi + 0x1f38]
mov dword [ebp - 0x1f3b], eax
mov ax, word [edi + 0x1f3c]
mov word [ebp - 0x1f37], ax
mov al, byte [edi + 0x1f3e]
mov byte [ebp - 0x1f35], al
mov byte [ebp - 0x1f34], 0
jmp 0x4ce9be
mov byte [ebp - 0x1f53], 0
cmp dword [edi + 0x28c4], 0xffffffff
jle 0x4cea14
movups xmm0, xmmword [edi + 0x28a0]
movups xmmword [ebp - 0x1f33], xmm0
movq xmm0, qword [edi + 0x28b0]
movq qword [ebp - 0x1f23], xmm0
mov eax, dword [edi + 0x28b8]
mov dword [ebp - 0x1f1b], eax
mov ax, word [edi + 0x28bc]
mov word [ebp - 0x1f17], ax
mov al, byte [edi + 0x28be]
mov byte [ebp - 0x1f15], al
mov byte [ebp - 0x1f14], 0
jmp 0x4cea1b
mov byte [ebp - 0x1f33], 0
cmp dword [edi + 0x3244], 0xffffffff
jle 0x4cea71
movups xmm0, xmmword [edi + 0x3220]
movups xmmword [ebp - 0x1f13], xmm0
movq xmm0, qword [edi + 0x3230]
movq qword [ebp - 0x1f03], xmm0
mov eax, dword [edi + 0x3238]
mov dword [ebp - 0x1efb], eax
mov ax, word [edi + 0x323c]
mov word [ebp - 0x1ef7], ax
mov al, byte [edi + 0x323e]
mov byte [ebp - 0x1ef5], al
mov byte [ebp - 0x1ef4], 0
jmp 0x4cea78
mov byte [ebp - 0x1f13], 0
cmp dword [edi + 0x3bc4], 0xffffffff
jle 0x4ceace
movups xmm0, xmmword [edi + 0x3ba0]
movups xmmword [ebp - 0x1ef3], xmm0
movq xmm0, qword [edi + 0x3bb0]
movq qword [ebp - 0x1ee3], xmm0
mov eax, dword [edi + 0x3bb8]
mov dword [ebp - 0x1edb], eax
mov ax, word [edi + 0x3bbc]
mov word [ebp - 0x1ed7], ax
mov al, byte [edi + 0x3bbe]
mov byte [ebp - 0x1ed5], al
mov byte [ebp - 0x1ed4], 0
jmp 0x4cead5
mov byte [ebp - 0x1ef3], 0
cmp dword [edi + 0x4544], 0xffffffff
jle 0x4ceb2b
movups xmm0, xmmword [edi + 0x4520]
movups xmmword [ebp - 0x1ed3], xmm0
movq xmm0, qword [edi + 0x4530]
movq qword [ebp - 0x1ec3], xmm0
mov eax, dword [edi + 0x4538]
mov dword [ebp - 0x1ebb], eax
mov ax, word [edi + 0x453c]
mov word [ebp - 0x1eb7], ax
mov al, byte [edi + 0x453e]
mov byte [ebp - 0x1eb5], al
mov byte [ebp - 0x1eb4], 0
jmp 0x4ceb32
mov byte [ebp - 0x1ed3], 0
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x1fb4]
mov eax, dword [ecx]
push edx
push 0x101
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 0x413c], 0x4c
lea edx, [ebp - 0x3e4c]
movzx eax, word [edi + 0x14f84]
mov dword [ebp - 0x413b], eax
movzx eax, word [edi + 0x14f86]
mov dword [ebp - 0x4137], eax
movzx eax, word [edi + 0x14f8a]
mov dword [ebp - 0x4133], eax
movzx eax, word [edi + 0x14f88]
mov dword [ebp - 0x412f], eax
movzx eax, word [edi + 0x14f8c]
mov dword [ebp - 0x412b], eax
movzx eax, word [edi + 0x14f8e]
mov dword [ebp - 0x4127], eax
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x413c]
mov eax, dword [ecx]
push edx
push 0x19
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4cebdd
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ef4], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ef3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3ef2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ef1], al
mov byte [ebp - 0x3ef0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4cec67
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4cec7a
lea eax, [ebp - 0x3ef4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
mov eax, dword [ebp - 0xfaf]
and eax, 0x80000007
jns 0x4cec8c
dec eax
or eax, 0xfffffff8
inc eax
push dword [ebp - 0x3e54]
mov ecx, esi
mov dword [ebp - 0xfaf], eax
call fcn.004b8d00
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
mov eax, dword [ebp - 0xfaf]
test eax, eax
js 0x4cecbe
cmp eax, 7
jle 0x4cecc8
mov dword [ebp - 0xfaf], 0
lea eax, [ebp - 0xf94]
push 0x20
push eax
call fcn.0044cf90
lea eax, [ebp - 0xf94]
push eax
call fcn.0044ce30
lea eax, [ebp - 0xf94]
push 1
push eax
call fcn.0044cc90
lea eax, [ebp - 0xf94]
push eax
call fcn.0044d690
imul eax, dword [ebp - 0xfaf], 0x980
add esp, 0x18
cmp dword [eax + edi + 0x2c4], 0xffffffff
jne 0x4cff09
lea eax, [ebp - 0xf94]
push eax
call fcn.0044eae0
add esp, 4
test eax, eax
jne 0x4ced3c
mov dword [ebp - 0x3e63], 7
mov ecx, dword [esi + 0x34]
jmp 0x4ce4f3
imul ecx, dword [ebp - 0xfaf], 0x980
mov eax, dword [ebp - 0xfab]
mov dword [ecx + edi + 0x2c0], eax
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xf9f]
mov byte [ecx + edi + 0x2cc], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xf9e]
mov byte [ecx + edi + 0x2cd], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xf9d]
mov byte [ecx + edi + 0x2ce], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov eax, dword [ebp - 0xfa7]
mov dword [ecx + edi + 0x2c4], eax
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xf9c]
mov byte [ecx + edi + 0x2cf], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xf9b]
mov byte [ecx + edi + 0x2d0], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xf9a]
mov byte [ecx + edi + 0x2d1], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov eax, dword [ebp - 0xfa3]
mov dword [ecx + edi + 0x2c8], eax
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xf99]
mov byte [ecx + edi + 0x2d2], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xf98]
mov byte [ecx + edi + 0x2d3], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xf97]
mov byte [ecx + edi + 0x2d4], al
imul eax, dword [ebp - 0xfaf], 0x980
movsx ecx, byte [ebp - 0xf74]
mov dword [eax + edi + 0x2e8], ecx
imul eax, dword [ebp - 0xfaf], 0x980
movsx ecx, byte [ebp - 0xf73]
mov dword [eax + edi + 0x2ec], ecx
imul eax, dword [ebp - 0xfaf], 0x980
movsx ecx, byte [ebp - 0xf72]
mov dword [eax + edi + 0x2f0], ecx
imul eax, dword [ebp - 0xfaf], 0x980
movsx ecx, byte [ebp - 0xf71]
mov dword [eax + edi + 0x2f4], ecx
mov ecx, edi
push dword [ebp - 0xfaf]
call fcn.004816c0
imul ecx, dword [ebp - 0xfaf], 0x980
movups xmm0, xmmword [ebp - 0xf94]
mov al, byte [ecx + edi + 0x2e8]
mov byte [ebp - 0xf74], al
mov al, byte [ecx + edi + 0x2ec]
mov byte [ebp - 0xf73], al
mov al, byte [ecx + edi + 0x2f0]
mov byte [ebp - 0xf72], al
mov al, byte [ecx + edi + 0x2f4]
mov byte [ebp - 0xf71], al
movups xmmword [ecx + edi + 0x2a0], xmm0
movq xmm0, qword [ebp - 0xf84]
movq qword [ecx + edi + 0x2b0], xmm0
mov eax, dword [ebp - 0xf7c]
mov dword [ecx + edi + 0x2b8], eax
mov ax, word [ebp - 0xf78]
mov word [ecx + edi + 0x2bc], ax
mov al, byte [ebp - 0xf76]
mov byte [ecx + edi + 0x2be], al
imul eax, dword [ebp - 0xfaf], 0x980
mov byte [eax + edi + 0x2bf], 0
lea eax, [ebp - 0xf94]
push eax
call fcn.0044e7d0
add esp, 4
xorps xmm0, xmm0
xor eax, eax
movlpd qword [ebp - 0xf6c], xmm0
mov word [ebp - 0xf96], ax
mov dword [ebp - 0xf70], eax
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0xfb0]
mov eax, dword [ecx]
push edx
push 0x4d
mov eax, dword [eax + 4]
call eax
imul eax, dword [ebp - 0xfaf], 0x980
mov eax, dword [eax + edi + 0x2d8]
add eax, 8
mov ecx, eax
mov dword [ebp - 0x3e38], eax
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4cefed
mov edi, dword [ebp - 0x3e38]
push esi
mov ecx, edi
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, edi
call fcn.0044e020
mov esi, eax
test esi, esi
jne 0x4cefc8
mov edi, dword [ebp - 0x3e5c]
imul eax, dword [ebp - 0xfaf], 0x980
mov eax, dword [eax + edi + 0x2dc]
add eax, 8
mov ecx, eax
mov dword [ebp - 0x3e38], eax
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4cf045
mov edi, dword [ebp - 0x3e38]
nop word [eax + eax]
push esi
mov ecx, edi
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, edi
call fcn.0044e020
mov esi, eax
test esi, esi
jne 0x4cf020
mov edi, dword [ebp - 0x3e5c]
imul eax, dword [ebp - 0xfaf], 0x980
mov eax, dword [eax + edi + 0x2e0]
add eax, 8
mov ecx, eax
mov dword [ebp - 0x3e38], eax
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4cf097
mov edi, dword [ebp - 0x3e38]
push esi
mov ecx, edi
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, edi
call fcn.0044e020
mov esi, eax
test esi, esi
jne 0x4cf072
mov edi, dword [ebp - 0x3e5c]
imul eax, dword [ebp - 0xfaf], 0x980
mov eax, dword [eax + edi + 0x2e4]
add eax, 8
mov ecx, eax
mov dword [ebp - 0x3e38], eax
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4cf0e9
mov edi, dword [ebp - 0x3e38]
push esi
mov ecx, edi
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, edi
call fcn.0044e020
mov esi, eax
test esi, esi
jne 0x4cf0c4
mov edi, dword [ebp - 0x3e5c]
imul eax, dword [ebp - 0xfaf], 0x980
push str.NO_PET
mov byte [eax + edi + 0x344], 0xff
imul eax, dword [ebp - 0xfaf], 0x980
mov byte [eax + edi + 0x378], 0xff
imul eax, dword [ebp - 0xfaf], 0x980
add eax, 0x334
add eax, edi
push eax
call fcn.004afdc0
imul eax, dword [ebp - 0xfaf], 0x980
push str.NO_PET
add eax, 0x368
add eax, edi
push eax
call fcn.004afdc0
push 0x120
call fcn.005596ac
add esp, 0x14
mov dword [ebp - 0x41a0], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x4cf174
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce40
mov esi, eax
jmp 0x4cf176
xor esi, esi
mov edx, dword [esi + 0x11c]
mov byte [ebp - 4], 0
mov dword [edx], 0
mov dword [edx + 4], 8
mov dword [edx + 0x1c], 0
mov dword [edx + 0x20], 0
mov dword [edx + 0x24], 0x40000000
mov dword [edx + 0x30], 0x3f800000
mov dword [edx + 0x28], 0
mov dword [edx + 0x2c], 0
mov dword [edx + 0x34], 0
mov dword [edx + 0x38], 0
mov dword [edx + 0x3c], 0
mov dword [esi + 0x108], 0
mov ecx, dword [edx + 4]
imul ecx, ecx
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 1]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
mov ecx, dword [edx + 4]
cmp ecx, 0xc
jle 0x4cf22a
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 0x640]
imul eax, ecx
sub eax, 0x4aff
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
push esi
mov dword [esi + 0x118], 1
call fcn.0052fcf0
push 0x120
call fcn.005596ac
add esp, 8
mov dword [ebp - 0x4204], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x4cf269
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce40
mov esi, eax
jmp 0x4cf26b
xor esi, esi
mov edx, dword [esi + 0x11c]
mov byte [ebp - 4], 0
mov dword [edx], 0
mov dword [edx + 4], 8
mov dword [edx + 0x1c], 0
mov dword [edx + 0x20], 0x3f800000
mov dword [edx + 0x24], 0
mov dword [edx + 0x30], 0
mov dword [edx + 0x28], 0
mov dword [edx + 0x2c], 0x40000000
mov dword [edx + 0x34], 0
mov dword [edx + 0x38], 0x3f800000
mov dword [edx + 0x3c], 0
mov dword [esi + 0x108], 0
mov ecx, dword [edx + 4]
imul ecx, ecx
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 1]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
mov ecx, dword [edx + 4]
cmp ecx, 0xc
jle 0x4cf31f
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 0x640]
imul eax, ecx
sub eax, 0x4aff
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
push esi
mov dword [esi + 0x118], 1
call fcn.0052fcf0
push 0x120
call fcn.005596ac
add esp, 8
mov dword [ebp - 0x4200], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x4cf35e
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce40
mov esi, eax
jmp 0x4cf360
xor esi, esi
mov edx, dword [esi + 0x11c]
mov byte [ebp - 4], 0
mov dword [edx], 0
mov dword [edx + 4], 8
mov dword [edx + 0x1c], 0
mov dword [edx + 0x20], 0
mov dword [edx + 0x24], 0x3f800000
mov dword [edx + 0x30], 0
mov dword [edx + 0x28], 0x3f800000
mov dword [edx + 0x2c], 0
mov dword [edx + 0x34], 0x3f800000
mov dword [edx + 0x38], 0
mov dword [edx + 0x3c], 0
mov dword [esi + 0x108], 0
mov ecx, dword [edx + 4]
imul ecx, ecx
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 1]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
mov ecx, dword [edx + 4]
cmp ecx, 0xc
jle 0x4cf414
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 0x640]
imul eax, ecx
sub eax, 0x4aff
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
push esi
mov dword [esi + 0x118], 1
call fcn.0052fcf0
push 0x120
call fcn.005596ac
add esp, 8
mov dword [ebp - 0x41fc], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x4cf453
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce40
mov esi, eax
jmp 0x4cf455
xor esi, esi
mov edx, dword [esi + 0x11c]
mov byte [ebp - 4], 0
mov dword [edx], 0
mov dword [edx + 4], 8
mov dword [edx + 0x1c], 0x40000000
mov dword [edx + 0x20], 0
mov dword [edx + 0x24], 0
mov dword [edx + 0x30], 0
mov dword [edx + 0x28], 0
mov dword [edx + 0x2c], 0
mov dword [edx + 0x34], 0
mov dword [edx + 0x38], 0x3f800000
mov dword [edx + 0x3c], 0
mov dword [esi + 0x108], 0
mov ecx, dword [edx + 4]
imul ecx, ecx
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 1]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
mov ecx, dword [edx + 4]
cmp ecx, 0xc
jle 0x4cf509
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 0x640]
imul eax, ecx
sub eax, 0x4aff
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
push esi
mov dword [esi + 0x118], 1
call fcn.0052fcf0
push 0x120
call fcn.005596ac
add esp, 8
mov dword [ebp - 0x41f8], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x4cf548
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce40
mov esi, eax
jmp 0x4cf54a
xor esi, esi
mov edx, dword [esi + 0x11c]
mov byte [ebp - 4], 0
mov dword [edx], 0
mov dword [edx + 4], 8
mov dword [edx + 0x1c], 0
mov dword [edx + 0x20], 0x3f800000
mov dword [edx + 0x24], 0
mov dword [edx + 0x30], 0
mov dword [edx + 0x28], 0x3f800000
mov dword [edx + 0x2c], 0x3f800000
mov dword [edx + 0x34], 0x40000000
mov dword [edx + 0x38], 0
mov dword [edx + 0x3c], 0
mov dword [esi + 0x108], 0
mov ecx, dword [edx + 4]
imul ecx, ecx
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 1]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
mov ecx, dword [edx + 4]
cmp ecx, 0xc
jle 0x4cf5fe
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 0x640]
imul eax, ecx
sub eax, 0x4aff
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
push esi
mov dword [esi + 0x118], 1
call fcn.0052fcf0
push 0x120
call fcn.005596ac
add esp, 8
mov dword [ebp - 0x41f4], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x4cf63d
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce40
mov esi, eax
jmp 0x4cf63f
xor esi, esi
mov edx, dword [esi + 0x11c]
mov byte [ebp - 4], 0
mov dword [edx], 0
mov dword [edx + 4], 8
mov dword [edx + 0x1c], 0x3f800000
mov dword [edx + 0x20], 0
mov dword [edx + 0x24], 0
mov dword [edx + 0x30], 0x40000000
mov dword [edx + 0x28], 0
mov dword [edx + 0x2c], 0
mov dword [edx + 0x34], 0
mov dword [edx + 0x38], 0
mov dword [edx + 0x3c], 0
mov dword [esi + 0x108], 0
mov ecx, dword [edx + 4]
imul ecx, ecx
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 1]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
mov ecx, dword [edx + 4]
cmp ecx, 0xc
jle 0x4cf6f3
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 0x640]
imul eax, ecx
sub eax, 0x4aff
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
push esi
mov dword [esi + 0x118], 1
call fcn.0052fcf0
push 0x120
call fcn.005596ac
add esp, 8
mov dword [ebp - 0x41f0], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x4cf732
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce40
mov esi, eax
jmp 0x4cf734
xor esi, esi
mov edx, dword [esi + 0x11c]
mov byte [ebp - 4], 0
mov dword [edx], 0
mov dword [edx + 4], 8
mov dword [edx + 0x1c], 0x3f800000
mov dword [edx + 0x20], 0x40000000
mov dword [edx + 0x24], 0x3f800000
mov dword [edx + 0x30], 0
mov dword [edx + 0x28], 0
mov dword [edx + 0x2c], 0x3f800000
mov dword [edx + 0x34], 0
mov dword [edx + 0x38], 0x40000000
mov dword [edx + 0x3c], 0
mov dword [esi + 0x108], 0
mov ecx, dword [edx + 4]
imul ecx, ecx
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 1]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
mov ecx, dword [edx + 4]
cmp ecx, 0xc
jle 0x4cf7e8
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 0x640]
imul eax, ecx
sub eax, 0x4aff
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
push esi
mov dword [esi + 0x118], 1
call fcn.0052fcf0
push 0x120
call fcn.005596ac
add esp, 8
mov dword [ebp - 0x41ec], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x4cf827
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce40
mov esi, eax
jmp 0x4cf829
xor esi, esi
mov edx, dword [esi + 0x11c]
mov byte [ebp - 4], 0
mov dword [edx], 0
mov dword [edx + 4], 8
mov dword [edx + 0x1c], 0
mov dword [edx + 0x20], 0x3f800000
mov dword [edx + 0x24], 0
mov dword [edx + 0x30], 0
mov dword [edx + 0x28], 0x40000000
mov dword [edx + 0x2c], 0x3f800000
mov dword [edx + 0x34], 0x3f800000
mov dword [edx + 0x38], 0
mov dword [edx + 0x3c], 0x40000000
mov dword [esi + 0x108], 0
mov ecx, dword [edx + 4]
imul ecx, ecx
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 1]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
mov ecx, dword [edx + 4]
cmp ecx, 0xc
jle 0x4cf8dd
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 0x640]
imul eax, ecx
sub eax, 0x4aff
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
push esi
mov dword [esi + 0x118], 1
call fcn.0052fcf0
push 0x120
call fcn.005596ac
add esp, 8
mov dword [ebp - 0x41e8], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x4cf91c
push str.Tin_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x4cf91e
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
push ecx
mov byte [ebp - 4], 0
mov dword [eax + 0xc], 0x3f800000
mov dword [eax + 0x10], 0x3f800000
mov dword [eax + 4], 0x80
mov dword [eax + 8], 0x80
mov dword [eax], 0x80
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x3f800000
mov dword [ecx + 0x118], 4
imul eax, dword [ebp - 0xfaf], 0x980
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 8
call fcn.0044de70
imul eax, dword [ebp - 0xfaf], 0x980
push 0x120
cmp dword [eax + edi + 0x2f4], 0xa
jge 0x4cfa1d
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x41e4], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x4cf9c9
push str.Pointy_Stick
push 0
push 1
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x4cf9cb
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
mov dword [eax], 3
mov dword [eax + 8], 0x3f000000
mov dword [eax + 4], 1
mov dword [eax + 0x14], 0x80
mov dword [eax + 0x18], 0x80
mov dword [eax + 0x10], 0x80
mov dword [ecx + 0x108], 0x40000000
mov dword [ecx + 0x10c], 0x3f800000
mov dword [ecx + 0x118], 1
jmp 0x4cfaab
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x41e0], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x4cfa47
push str.My_First_Scythe
push 0
push 1
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x4cfa49
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
mov dword [eax], 1
mov dword [eax + 8], 0x40040000
mov dword [eax + 4], 1
mov dword [eax + 0x14], 0x80
mov dword [eax + 0x18], 0x80
mov dword [eax + 0x10], 0x80
mov dword [eax + 0x34], 0xf
mov dword [eax + 0x38], 0x3e8
mov dword [ecx + 0x108], 0x40000000
mov dword [ecx + 0x10c], 0x3f800000
mov dword [ecx + 0x118], 1
mov dword [eax + 0x3c], 0xd
imul eax, dword [ebp - 0xfaf], 0x980
push ecx
mov byte [ebp - 4], 0
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 8
call fcn.0044de70
imul eax, dword [ebp - 0xfaf], 0x980
xor ecx, ecx
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x18], 0x64
mov dword [eax + 0x1c], 0
imul eax, dword [ebp - 0xfaf], 0x980
mov dword [eax + edi + 0x2fc], 0x1e
imul eax, dword [ebp - 0xfaf], 0x980
mov dword [eax + edi + 0x2f8], 0x1e
imul eax, dword [ebp - 0xfaf], 0x980
mov dword [eax + edi + 0x31c], 0
imul eax, dword [ebp - 0xfaf], 0x980
mov word [eax + edi + 0x318], cx
imul eax, dword [ebp - 0xfaf], 0x980
mov byte [ebp - 0xf64], 1
mov dword [eax + edi + 0xbd0], 1
imul eax, dword [ebp - 0xfaf], 0x980
mov dword [ebp - 0xf70], ecx
mov dword [eax + edi + 0x300], ecx
imul eax, dword [ebp - 0xfaf], 0x980
mov dword [eax + edi + 0x304], ecx
imul ecx, dword [ebp - 0xfaf], 0x980
mov eax, dword [0x612350]
mov dword [ecx + edi + 0x310], eax
imul ecx, dword [ebp - 0xfaf], 0x980
mov eax, dword [ecx + edi + 0x310]
mov dword [ecx + edi + 0x308], eax
imul ecx, dword [ebp - 0xfaf], 0x980
mov eax, dword [0x612354]
mov dword [ecx + edi + 0x314], eax
imul ecx, dword [ebp - 0xfaf], 0x980
mov eax, dword [ecx + edi + 0x314]
mov dword [ecx + edi + 0x30c], eax
mov ecx, edi
imul eax, dword [ebp - 0xfaf], 0x980
mov dword [eax + edi + 0xc10], 0
call fcn.00487320
cmp dword [edi + 0x2c4], 0xffffffff
jle 0x4cfc4d
movups xmm0, xmmword [edi + 0x2a0]
movups xmmword [ebp - 0x1fb3], xmm0
movq xmm0, qword [edi + 0x2b0]
movq qword [ebp - 0x1fa3], xmm0
mov eax, dword [edi + 0x2b8]
mov dword [ebp - 0x1f9b], eax
mov ax, word [edi + 0x2bc]
mov word [ebp - 0x1f97], ax
mov al, byte [edi + 0x2be]
mov byte [ebp - 0x1f95], al
mov byte [ebp - 0x1f94], 0
jmp 0x4cfc54
mov byte [ebp - 0x1fb3], 0
cmp dword [edi + 0xc44], 0xffffffff
jle 0x4cfcaa
movups xmm0, xmmword [edi + 0xc20]
movups xmmword [ebp - 0x1f93], xmm0
movq xmm0, qword [edi + 0xc30]
movq qword [ebp - 0x1f83], xmm0
mov eax, dword [edi + 0xc38]
mov dword [ebp - 0x1f7b], eax
mov ax, word [edi + 0xc3c]
mov word [ebp - 0x1f77], ax
mov al, byte [edi + 0xc3e]
mov byte [ebp - 0x1f75], al
mov byte [ebp - 0x1f74], 0
jmp 0x4cfcb1
mov byte [ebp - 0x1f93], 0
cmp dword [edi + 0x15c4], 0xffffffff
jle 0x4cfd07
movups xmm0, xmmword [edi + 0x15a0]
movups xmmword [ebp - 0x1f73], xmm0
movq xmm0, qword [edi + 0x15b0]
movq qword [ebp - 0x1f63], xmm0
mov eax, dword [edi + 0x15b8]
mov dword [ebp - 0x1f5b], eax
mov ax, word [edi + 0x15bc]
mov word [ebp - 0x1f57], ax
mov al, byte [edi + 0x15be]
mov byte [ebp - 0x1f55], al
mov byte [ebp - 0x1f54], 0
jmp 0x4cfd0e
mov byte [ebp - 0x1f73], 0
cmp dword [edi + 0x1f44], 0xffffffff
jle 0x4cfd64
movups xmm0, xmmword [edi + 0x1f20]
movups xmmword [ebp - 0x1f53], xmm0
movq xmm0, qword [edi + 0x1f30]
movq qword [ebp - 0x1f43], xmm0
mov eax, dword [edi + 0x1f38]
mov dword [ebp - 0x1f3b], eax
mov ax, word [edi + 0x1f3c]
mov word [ebp - 0x1f37], ax
mov al, byte [edi + 0x1f3e]
mov byte [ebp - 0x1f35], al
mov byte [ebp - 0x1f34], 0
jmp 0x4cfd6b
mov byte [ebp - 0x1f53], 0
cmp dword [edi + 0x28c4], 0xffffffff
jle 0x4cfdc1
movups xmm0, xmmword [edi + 0x28a0]
movups xmmword [ebp - 0x1f33], xmm0
movq xmm0, qword [edi + 0x28b0]
movq qword [ebp - 0x1f23], xmm0
mov eax, dword [edi + 0x28b8]
mov dword [ebp - 0x1f1b], eax
mov ax, word [edi + 0x28bc]
mov word [ebp - 0x1f17], ax
mov al, byte [edi + 0x28be]
mov byte [ebp - 0x1f15], al
mov byte [ebp - 0x1f14], 0
jmp 0x4cfdc8
mov byte [ebp - 0x1f33], 0
cmp dword [edi + 0x3244], 0xffffffff
jle 0x4cfe1e
movups xmm0, xmmword [edi + 0x3220]
movups xmmword [ebp - 0x1f13], xmm0
movq xmm0, qword [edi + 0x3230]
movq qword [ebp - 0x1f03], xmm0
mov eax, dword [edi + 0x3238]
mov dword [ebp - 0x1efb], eax
mov ax, word [edi + 0x323c]
mov word [ebp - 0x1ef7], ax
mov al, byte [edi + 0x323e]
mov byte [ebp - 0x1ef5], al
mov byte [ebp - 0x1ef4], 0
jmp 0x4cfe25
mov byte [ebp - 0x1f13], 0
cmp dword [edi + 0x3bc4], 0xffffffff
jle 0x4cfe7b
movups xmm0, xmmword [edi + 0x3ba0]
movups xmmword [ebp - 0x1ef3], xmm0
movq xmm0, qword [edi + 0x3bb0]
movq qword [ebp - 0x1ee3], xmm0
mov eax, dword [edi + 0x3bb8]
mov dword [ebp - 0x1edb], eax
mov ax, word [edi + 0x3bbc]
mov word [ebp - 0x1ed7], ax
mov al, byte [edi + 0x3bbe]
mov byte [ebp - 0x1ed5], al
mov byte [ebp - 0x1ed4], 0
jmp 0x4cfe82
mov byte [ebp - 0x1ef3], 0
cmp dword [edi + 0x4544], 0xffffffff
jle 0x4cfed8
movups xmm0, xmmword [edi + 0x4520]
movups xmmword [ebp - 0x1ed3], xmm0
movq xmm0, qword [edi + 0x4530]
movq qword [ebp - 0x1ec3], xmm0
mov eax, dword [edi + 0x4538]
mov dword [ebp - 0x1ebb], eax
mov ax, word [edi + 0x453c]
mov word [ebp - 0x1eb7], ax
mov al, byte [edi + 0x453e]
mov byte [ebp - 0x1eb5], al
mov byte [ebp - 0x1eb4], 0
jmp 0x4cfedf
mov byte [ebp - 0x1ed3], 0
mov eax, dword [ebp - 0x3e50]
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x1fb4]
mov eax, dword [eax + 4]
push edx
push 0x101
call eax
jmp case.default.0x4d28f4
mov dword [ebp - 0x3e63], 2
mov ecx, dword [esi + 0x34]
jmp 0x4ce4f3
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4cff31
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3efc], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3efb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3efa], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ef9], al
mov byte [ebp - 0x3ef8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4cffbb
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4cffce
lea eax, [ebp - 0x3efc]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
push dword [ebp - 0x3e54]
mov ecx, esi
call fcn.004b8d00
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
movsx eax, byte [ebp - 0xfaf]
and eax, 0x80000007
jns 0x4cfffe
dec eax
or eax, 0xfffffff8
inc eax
mov byte [ebp - 0xfaf], al
movsx eax, al
imul eax, eax, 0x980
add eax, edi
cmp dword [eax + 0x2c4], 0xffffffff
jle 0x4d00e9
add eax, 0x2a0
push eax
call fcn.0044ebe0
add esp, 4
lea eax, [ebp - 0x4098]
mov ecx, esi
push eax
movsx eax, byte [ebp - 0xfaf]
imul eax, eax, 0x980
add eax, 0x2a0
add eax, edi
push eax
call fcn.004b8b20
test eax, eax
je 0x4d0074
lea eax, [ebp - 0x4098]
mov ecx, esi
push eax
movsx eax, byte [ebp - 0xfaf]
imul eax, eax, 0x980
add eax, 0x2a0
add eax, edi
push eax
call fcn.004b7ff0
movsx eax, byte [ebp - 0xfaf]
mov ecx, edi
imul eax, eax, 0x980
mov dword [eax + edi + 0x2c4], 0xffffffff
movsx eax, byte [ebp - 0xfaf]
imul eax, eax, 0x980
mov dword [eax + edi + 0xc10], 0
movsx eax, byte [ebp - 0xfaf]
imul eax, eax, 0x980
mov dword [eax + edi + 0xc0c], 0
call fcn.00487320
mov dword [ebp - 0x3e63], 1
lea edx, [ebp - 0x3e4c]
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
cmp dword [edi + 0x2c4], 0xffffffff
jle 0x4d013f
movups xmm0, xmmword [edi + 0x2a0]
movups xmmword [ebp - 0x1fb3], xmm0
movq xmm0, qword [edi + 0x2b0]
movq qword [ebp - 0x1fa3], xmm0
mov eax, dword [edi + 0x2b8]
mov dword [ebp - 0x1f9b], eax
mov ax, word [edi + 0x2bc]
mov word [ebp - 0x1f97], ax
mov al, byte [edi + 0x2be]
mov byte [ebp - 0x1f95], al
mov byte [ebp - 0x1f94], 0
jmp 0x4d0146
mov byte [ebp - 0x1fb3], 0
cmp dword [edi + 0xc44], 0xffffffff
jle 0x4d019c
movups xmm0, xmmword [edi + 0xc20]
movups xmmword [ebp - 0x1f93], xmm0
movq xmm0, qword [edi + 0xc30]
movq qword [ebp - 0x1f83], xmm0
mov eax, dword [edi + 0xc38]
mov dword [ebp - 0x1f7b], eax
mov ax, word [edi + 0xc3c]
mov word [ebp - 0x1f77], ax
mov al, byte [edi + 0xc3e]
mov byte [ebp - 0x1f75], al
mov byte [ebp - 0x1f74], 0
jmp 0x4d01a3
mov byte [ebp - 0x1f93], 0
cmp dword [edi + 0x15c4], 0xffffffff
jle 0x4d01f9
movups xmm0, xmmword [edi + 0x15a0]
movups xmmword [ebp - 0x1f73], xmm0
movq xmm0, qword [edi + 0x15b0]
movq qword [ebp - 0x1f63], xmm0
mov eax, dword [edi + 0x15b8]
mov dword [ebp - 0x1f5b], eax
mov ax, word [edi + 0x15bc]
mov word [ebp - 0x1f57], ax
mov al, byte [edi + 0x15be]
mov byte [ebp - 0x1f55], al
mov byte [ebp - 0x1f54], 0
jmp 0x4d0200
mov byte [ebp - 0x1f73], 0
cmp dword [edi + 0x1f44], 0xffffffff
jle 0x4d0256
movups xmm0, xmmword [edi + 0x1f20]
movups xmmword [ebp - 0x1f53], xmm0
movq xmm0, qword [edi + 0x1f30]
movq qword [ebp - 0x1f43], xmm0
mov eax, dword [edi + 0x1f38]
mov dword [ebp - 0x1f3b], eax
mov ax, word [edi + 0x1f3c]
mov word [ebp - 0x1f37], ax
mov al, byte [edi + 0x1f3e]
mov byte [ebp - 0x1f35], al
mov byte [ebp - 0x1f34], 0
jmp 0x4d025d
mov byte [ebp - 0x1f53], 0
cmp dword [edi + 0x28c4], 0xffffffff
jle 0x4d02b3
movups xmm0, xmmword [edi + 0x28a0]
movups xmmword [ebp - 0x1f33], xmm0
movq xmm0, qword [edi + 0x28b0]
movq qword [ebp - 0x1f23], xmm0
mov eax, dword [edi + 0x28b8]
mov dword [ebp - 0x1f1b], eax
mov ax, word [edi + 0x28bc]
mov word [ebp - 0x1f17], ax
mov al, byte [edi + 0x28be]
mov byte [ebp - 0x1f15], al
mov byte [ebp - 0x1f14], 0
jmp 0x4d02ba
mov byte [ebp - 0x1f33], 0
cmp dword [edi + 0x3244], 0xffffffff
jle 0x4d0310
movups xmm0, xmmword [edi + 0x3220]
movups xmmword [ebp - 0x1f13], xmm0
movq xmm0, qword [edi + 0x3230]
movq qword [ebp - 0x1f03], xmm0
mov eax, dword [edi + 0x3238]
mov dword [ebp - 0x1efb], eax
mov ax, word [edi + 0x323c]
mov word [ebp - 0x1ef7], ax
mov al, byte [edi + 0x323e]
mov byte [ebp - 0x1ef5], al
mov byte [ebp - 0x1ef4], 0
jmp 0x4d0317
mov byte [ebp - 0x1f13], 0
cmp dword [edi + 0x3bc4], 0xffffffff
jle 0x4d036d
movups xmm0, xmmword [edi + 0x3ba0]
movups xmmword [ebp - 0x1ef3], xmm0
movq xmm0, qword [edi + 0x3bb0]
movq qword [ebp - 0x1ee3], xmm0
mov eax, dword [edi + 0x3bb8]
mov dword [ebp - 0x1edb], eax
mov ax, word [edi + 0x3bbc]
mov word [ebp - 0x1ed7], ax
mov al, byte [edi + 0x3bbe]
mov byte [ebp - 0x1ed5], al
mov byte [ebp - 0x1ed4], 0
jmp 0x4d0374
mov byte [ebp - 0x1ef3], 0
cmp dword [edi + 0x4544], 0xffffffff
jle 0x4d03d0
movups xmm0, xmmword [edi + 0x4520]
movups xmmword [ebp - 0x1ed3], xmm0
movq xmm0, qword [edi + 0x4530]
movq qword [ebp - 0x1ec3], xmm0
mov eax, dword [edi + 0x4538]
mov dword [ebp - 0x1ebb], eax
mov ax, word [edi + 0x453c]
mov word [ebp - 0x1eb7], ax
mov al, byte [edi + 0x453e]
mov byte [ebp - 0x1eb5], al
mov byte [ebp - 0x1eb4], 0
mov ecx, dword [esi + 0x34]
jmp 0x4cfee8
mov byte [ebp - 0x1ed3], 0
mov ecx, dword [esi + 0x34]
jmp 0x4cfee8
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d03f5
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f04], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f03], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f02], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f01], al
mov byte [ebp - 0x3f00], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d047f
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d0492
lea eax, [ebp - 0x3f04]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
mov eax, dword [ebp - 0xfaf]
and eax, 0x80000007
jns 0x4d04a4
dec eax
or eax, 0xfffffff8
inc eax
push dword [ebp - 0x3e54]
mov ecx, esi
mov dword [ebp - 0xfaf], eax
call fcn.004b8d00
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
mov eax, dword [ebp - 0xfaf]
test eax, eax
js 0x4d04d6
cmp eax, 7
jle 0x4d04de
xor eax, eax
mov dword [ebp - 0xfaf], eax
imul ecx, eax, 0x980
cmp dword [ecx + edi + 0x2c4], 0xffffffff
je case.default.0x4d28f4
mov eax, dword [ebp - 0xfab]
lea edx, [ebp - 0x3e4c]
mov dword [ecx + edi + 0x2c4], eax
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xfa3]
push edx
push 0
lea edx, [ebp - 0x2004]
push edx
push 0x4d
mov byte [ecx + edi + 0x2cf], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xfa2]
mov byte [ecx + edi + 0x2d0], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xfa1]
mov byte [ecx + edi + 0x2d1], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov eax, dword [ebp - 0xfa7]
mov dword [ecx + edi + 0x2c8], eax
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xfa0]
mov byte [ecx + edi + 0x2d2], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xf9f]
mov byte [ecx + edi + 0x2d3], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xf9e]
mov byte [ecx + edi + 0x2d4], al
mov eax, dword [ebp - 0xfaf]
imul ecx, eax, 0x980
mov dword [ebp - 0x2003], eax
mov eax, dword [ecx + edi + 0x2c0]
mov dword [ebp - 0x1fff], eax
mov al, byte [ecx + edi + 0x2cc]
mov byte [ebp - 0x1ff3], al
mov al, byte [ecx + edi + 0x2cd]
mov byte [ebp - 0x1ff2], al
mov al, byte [ecx + edi + 0x2ce]
mov byte [ebp - 0x1ff1], al
mov eax, dword [ecx + edi + 0x2c4]
mov dword [ebp - 0x1ffb], eax
mov al, byte [ecx + edi + 0x2cf]
mov byte [ebp - 0x1ff0], al
mov al, byte [ecx + edi + 0x2d0]
mov byte [ebp - 0x1fef], al
mov al, byte [ecx + edi + 0x2d1]
mov byte [ebp - 0x1fee], al
mov eax, dword [ecx + edi + 0x2c8]
mov dword [ebp - 0x1ff7], eax
mov al, byte [ecx + edi + 0x2d2]
mov byte [ebp - 0x1fed], al
mov al, byte [ecx + edi + 0x2d3]
mov byte [ebp - 0x1fec], al
mov al, byte [ecx + edi + 0x2d4]
mov byte [ebp - 0x1feb], al
movups xmm0, xmmword [ecx + edi + 0x2a0]
movups xmmword [ebp - 0x1fe8], xmm0
movq xmm0, qword [ecx + edi + 0x2b0]
movq qword [ebp - 0x1fd8], xmm0
mov eax, dword [ecx + edi + 0x2b8]
mov dword [ebp - 0x1fd0], eax
movzx eax, word [ecx + edi + 0x2bc]
mov word [ebp - 0x1fcc], ax
mov al, byte [ecx + edi + 0x2be]
mov byte [ebp - 0x1fca], al
mov byte [ebp - 0x1fc9], 0
mov al, byte [ecx + edi + 0x2e8]
mov byte [ebp - 0x1fc8], al
mov al, byte [ecx + edi + 0x2ec]
mov byte [ebp - 0x1fc7], al
mov al, byte [ecx + edi + 0x2f0]
mov byte [ebp - 0x1fc6], al
mov al, byte [ecx + edi + 0x2f4]
mov byte [ebp - 0x1fc5], al
movzx eax, word [ecx + edi + 0x318]
mov word [ebp - 0x1fea], ax
mov ecx, dword [esi + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov ecx, edi
call fcn.00487320
cmp dword [edi + 0x2c4], 0xffffffff
jle 0x4d013f
movups xmm0, xmmword [edi + 0x2a0]
movups xmmword [ebp - 0x1fb3], xmm0
movq xmm0, qword [edi + 0x2b0]
movq qword [ebp - 0x1fa3], xmm0
mov eax, dword [edi + 0x2b8]
mov dword [ebp - 0x1f9b], eax
mov ax, word [edi + 0x2bc]
mov word [ebp - 0x1f97], ax
mov al, byte [edi + 0x2be]
mov byte [ebp - 0x1f95], al
mov byte [ebp - 0x1f94], 0
jmp 0x4d0146
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d0777
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f0c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f0b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f0a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f09], al
mov byte [ebp - 0x3f08], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d0801
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d0814
lea eax, [ebp - 0x3f0c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
push 0x5d1640
push str.bugs.txt
call fcn.00569402
mov esi, eax
lea eax, [ebp - 0x13b0]
push eax
call fcn.00590ffe
lea eax, [ebp - 0x13b0]
push eax
push str._s_
push esi
call fcn.0043d350
lea eax, [ebp - 0x13b0]
push eax
call fcn.0059123e
lea eax, [ebp - 0x13b0]
push eax
push str._s_
push esi
call fcn.0043d350
cmp byte [ebp - 0xfad], 0
mov eax, 0x5d96c0
mov edi, 0x5d96c4
cmove eax, edi
push eax
push esi
call fcn.0043d350
cmp byte [ebp - 0xfaf], 0
mov eax, 0x5d96c8
cmove eax, edi
push eax
push esi
call fcn.0043d350
cmp byte [ebp - 0xfac], 0
mov eax, 0x5d96cc
cmove eax, edi
push eax
push esi
call fcn.0043d350
add esp, 0x40
mov eax, 0x5d96d0
cmp byte [ebp - 0xfae], 0
cmove eax, edi
push eax
push esi
call fcn.0043d350
cmp byte [ebp - 0xfab], 0
mov eax, 0x5d96d4
cmove eax, edi
push eax
push esi
call fcn.0043d350
lea eax, [ebp - 0xfaa]
push eax
push str._s_
push esi
call fcn.0043d350
lea eax, [ebp - 0xf3b]
push eax
push str._s_
push esi
call fcn.0043d350
lea eax, [ebp - 0xecc]
push eax
push str._s_
push esi
call fcn.0043d350
lea eax, [ebp - 0xe5d]
push eax
push str._s__n
push esi
call fcn.0043d350
add esp, 0x40
push esi
call fcn.00569114
mov esi, dword [ebp - 0x3e50]
lea eax, [ebp - 0x3e3c]
add esp, 4
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x25ea]
push str.Thanks_for_your_bug_report___s_
push eax
call fcn.0043d380
add esp, 0xc
mov byte [ebp - 0x25eb], 0xfc
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e4c]
push edx
mov eax, dword [ecx]
lea edx, [ebp - 0x25ec]
push 0
push edx
push 0x92
mov eax, dword [eax + 4]
call eax
mov dword [edi + 0x258], 0
jmp case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d09c6
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f14], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f13], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f12], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f11], al
mov byte [ebp - 0x3f10], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d0a50
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d0a63
lea eax, [ebp - 0x3f14]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
movsx eax, byte [ebp - 0xfaf]
and eax, 0x80000007
jns 0x4d0a76
dec eax
or eax, 0xfffffff8
inc eax
push dword [ebp - 0x3e54]
mov ecx, esi
mov byte [ebp - 0xfaf], al
call fcn.004b8d00
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
movsx eax, byte [ebp - 0xfaf]
imul eax, eax, 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28f4
mov eax, dword [ebp - 0x3e54]
lea edx, [ebp - 0x3e4c]
mov dword [ebp - 0x3e93], eax
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e94]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
movsx eax, byte [ebp - 0xfaf]
imul ecx, eax, 0x980
mov dword [edi + 0x188], eax
push 0
push 0
mov eax, dword [ecx + edi + 0x308]
mov dword [edi + 0x110], eax
mov dword [edi + 0x108], eax
mov eax, dword [ecx + edi + 0x30c]
mov ecx, edi
mov dword [edi + 0x114], eax
mov dword [edi + 0x10c], eax
call fcn.004866d0
push dword [ebp - 0x3e54]
mov ecx, esi
push 1
call fcn.004e2c10
imul ecx, dword [edi + 0x188], 0x980
add ecx, 0x358
add ecx, edi
call fcn.00515400
imul ecx, dword [edi + 0x188], 0x980
add ecx, 0x38c
add ecx, edi
call fcn.00515400
lea ecx, [ebp - 0x2150]
call fcn.00515360
imul ecx, dword [edi + 0x188], 0x980
lea eax, [ebp - 0x2150]
push eax
add ecx, 0x324
add ecx, edi
call fcn.005153c0
imul ecx, dword [edi + 0x188], 0x980
lea eax, [eax + eax*2]
add eax, eax
add dword [ecx + edi + 0x2fc], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2fc]
mov edx, dword [eax + edi + 0x2f8]
cmp ecx, edx
jg 0x4d0bbc
test ecx, ecx
jns 0x4d0bc3
mov dword [eax + edi + 0x2fc], edx
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x20], 0
push dword [edi + 0x14fb4]
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [edi + 0x18c]
push eax
movzx eax, byte [edi + 0x243]
push eax
movzx eax, byte [edi + 0x242]
push eax
movzx eax, byte [edi + 0x241]
push eax
movzx eax, byte [edi + 0x240]
push eax
lea eax, [ebp - 0x13b0]
push str._new_connection_from_IP__d._d._d._d:__s___s___d
push eax
call fcn.0046d620
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb40
mov eax, dword [edi + 0x14f34]
add esp, 0x2c
cmp eax, 2
je 0x4d0c4f
cmp eax, 3
jne 0x4d0c63
lea eax, [ebp - 0x13b0]
push eax
push str.moderatorLog.txt
call fcn.0049eb40
add esp, 8
lea ecx, [ebp - 0x209c]
call fcn.00515360
mov ecx, dword [ebp - 0x2094]
mov dx, word [ebp - 0x2096]
add ecx, 0x13
movzx esi, cx
mov word [ebp - 0x2094], cx
lea eax, [esi - 0x18]
movzx eax, ax
mov dword [ebp - 0x3e40], eax
cmp cx, 0x18
jae 0x4d0cab
mov ecx, 0xffff
add dx, cx
mov word [ebp - 0x2096], dx
jmp 0x4d0cb2
mov word [ebp - 0x2094], ax
movzx eax, word [ebp - 0x2092]
cmp esi, 0x18
push eax
mov eax, dword [ebp - 0x3e40]
mov ecx, esi
movzx eax, ax
cmovae ecx, eax
movzx eax, cx
push eax
movzx eax, dx
push eax
movzx eax, word [ebp - 0x209a]
push eax
lea eax, [ebp - 0x13b0]
push str._d__02d___d:_02d_n
push eax
call fcn.0046d620
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb40
mov eax, dword [edi + 0x14f34]
add esp, 0x20
cmp eax, 2
je 0x4d0d10
cmp eax, 3
jne 0x4d0d24
lea eax, [ebp - 0x13b0]
push eax
push str.moderatorLog.txt
call fcn.0049eb40
add esp, 8
call dword [sym.imp.WINMM.dll_timeGetTime]
mov ecx, dword [ebp - 0x3e50]
mov dword [ecx + 0x58], eax
mov dword [ecx + 0x70], 0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4d0dac
nop dword [eax]
cmp dword [esi + 0x110], 0x12
jne 0x4d0d8d
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4d0d60
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 8
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4d0e1c
nop dword [eax + eax]
cmp dword [esi + 0x110], 0x12
jne 0x4d0dfd
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4d0dd0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 8
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4d0e8c
nop dword [eax + eax]
cmp dword [esi + 0x110], 0x12
jne 0x4d0e6d
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4d0e40
mov eax, dword [ebp - 0x3e50]
push 0
mov ecx, dword [eax + 0x48]
call fcn.0044df00
imul ecx, dword [edi + 0x188], 0x980
mov esi, eax
mov dword [ebp - 0x3e3c], esi
lea eax, [ebp - 0x206b]
lea edx, [ecx + 0x2a0]
add edx, edi
cmp dword [ecx + edi + 0x31c], 1
push edx
jle 0x4d0ece
push str._s_entered_the_game.
jmp 0x4d0ed3
push str.___s_begins_life___
push eax
call fcn.0046d650
add esp, 0xc
lea eax, [ebp - 0x206c]
mov ecx, esi
push 0
push 5
push eax
push 0x65
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.0052bf40
lea eax, [ebp - 0x206b]
push str.Welcome_to_Blade_Mistress.__Check_out_our_discord_for_all_your_needs__https:__discord.gg_zh7Hrhv64B
push eax
call fcn.0046d650
mov esi, dword [ebp - 0x3e50]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
push edi
mov ecx, esi
mov dword [edi + 0x258], 0
call fcn.004dd880
mov ecx, edi
call fcn.0046fde0
cmp eax, 9
jle 0x4d1333
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0xc10], 0
jle 0x4d1333
mov esi, dword [eax + edi + 0xc00]
mov ecx, dword [eax + edi + 0xc04]
movss xmm0, dword [eax + edi + 0xbfc]
mov dword [ebp - 0x3e38], ecx
lea eax, [esi + esi*2]
movss dword [ebp - 0x3e58], xmm0
lea eax, [ecx + eax*2]
imul eax, eax, 0x64
cmp byte [eax + str.Ghost], 0
lea eax, [eax + str.Ghost]
mov dword [ebp - 0x3e40], eax
je 0x4d1636
push 0x2c8
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x41dc], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x4d0fe6
push 0
push 0
push dword [ebp - 0x3e38]
mov ecx, eax
push esi
call fcn.00492f80
mov esi, eax
jmp 0x4d0fe8
xor esi, esi
imul eax, dword [edi + 0x188], 0x980
lea ecx, [esi + 0x184]
mov byte [ebp - 4], 0
add eax, 0xbd4
add eax, edi
cmp eax, str.NO_NAME
je 0x4d1018
push 0x20
push ecx
push 0x20
push eax
call fcn.0044cdd0
add esp, 0x10
mov ecx, edi
call fcn.0046fde0
cmp eax, 9
jle 0x4d10ad
imul edx, dword [edi + 0x188], 0x980
add edx, 0x2a0
add edx, edi
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x3e38], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d1045
sub ecx, dword [ebp - 0x3e38]
lea eax, [esi + 0x184]
push ecx
push eax
push edx
call fcn.00595ea0
add esp, 0xc
test eax, eax
je 0x4d10ad
imul eax, dword [edi + 0x188], 0x980
push dword [ebp - 0x3e40]
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x13b0]
push str._ss__s
push eax
call fcn.0043d380
push 0x1f
lea eax, [esi + 0x184]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044cdd0
add esp, 0x20
mov byte [esi + 0x1dd], 1
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x3e3c]
movss xmm0, dword [ebp - 0x3e58]
push esi
mov eax, dword [eax + edi + 0x308]
mov dword [esi + 0x108], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x30c]
mov dword [esi + 0x10c], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x308]
mov dword [esi + 0x110], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x30c]
mov dword [esi + 0x114], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x308]
mov dword [esi + 0x228], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x30c]
mov dword [esi + 0x22c], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0xc14]
mov dword [esi + 0x1b4], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0xc1c]
mov dword [esi + 0x1bc], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0xc10]
mov dword [esi + 0x1ac], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0xc10]
mov dword [esi + 0x1b0], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0xc18]
mov dword [esi + 0x1b8], eax
imul eax, dword [edi + 0x188], 0x980
mov al, byte [eax + edi + 0xbf7]
mov byte [esi + 0x1a7], al
imul eax, dword [edi + 0x188], 0x980
mov al, byte [eax + edi + 0xbf6]
mov byte [esi + 0x1a6], al
imul eax, dword [edi + 0x188], 0x980
mov al, byte [eax + edi + 0xbf5]
mov byte [esi + 0x1a5], al
imul eax, dword [edi + 0x188], 0x980
mov al, byte [eax + edi + 0xbf4]
mov byte [esi + 0x1a4], al
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + 0x118]
mov eax, dword [eax + edi + 0xbf8]
mov dword [esi + 0x1a8], eax
movss dword [esi + 0x1f4], xmm0
call fcn.005155e0
mov dword [esi + 0x120], 1
call dword [sym.imp.WINMM.dll_timeGetTime]
sub eax, 0x2710
mov ecx, esi
mov dword [esi + 0x118], eax
mov byte [ebp - 0x403c], 0x18
mov dword [ebp - 0x403b], esi
call fcn.0044c8d0
mov ecx, dword [ebp - 0x3e3c]
mov byte [ebp - 0x4037], al
movzx eax, word [esi + 0x220]
mov word [ebp - 0x4036], ax
movzx eax, word [esi + 0x224]
mov word [ebp - 0x4034], ax
mov al, byte [esi + 0x108]
mov byte [ebp - 0x4031], al
mov al, byte [esi + 0x10c]
push 0
push 5
mov byte [ebp - 0x4030], al
lea eax, [ebp - 0x403c]
push eax
push 0xd
push dword [esi + 0x10c]
push dword [esi + 0x108]
push 0
call fcn.0052bf40
push dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.00493770
mov byte [ebp - 0x4004], 0x38
mov dword [ebp - 0x4003], 0xffffffff
mov dword [ebp - 0x3fff], 0xffffffff
mov al, byte [esi + 0x108]
mov byte [ebp - 0x3ffb], al
mov al, byte [esi + 0x10c]
mov byte [ebp - 0x3ffa], al
lea eax, [ebp - 0x4004]
mov word [ebp - 0x3ff9], 0xff
mov dword [ebp - 0x3ff7], 0x100ff
jmp 0x4d1600
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2f4], 9
jle 0x4d163c
mov ecx, edi
call fcn.0047d5a0
mov ecx, edi
mov esi, eax
call fcn.0047d4d0
cmp esi, 1
mov ecx, 1
mov edx, esi
cmovl edx, ecx
xor ecx, ecx
cmp esi, 1
mov dword [ebp - 0x3e38], edx
cmovge ecx, eax
mov dword [ebp - 0x3e40], ecx
test ecx, ecx
jle 0x4d13a3
lea eax, [edx + edx*2]
lea eax, [ecx + eax*2]
imul eax, eax, 0x64
add eax, str.Ghost
nop
cmp byte [eax], 0
jne 0x4d139d
dec ecx
sub eax, 0x64
test ecx, ecx
jg 0x4d1390
mov dword [ebp - 0x3e40], ecx
lea eax, [edx + edx*2]
lea eax, [ecx + eax*2]
imul eax, eax, 0x64
cmp byte [eax + str.Ghost], 0
lea eax, [eax + str.Ghost]
mov dword [ebp - 0x3e58], eax
je 0x4d1636
push 0x2c8
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x41d8], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x4d13fb
push 0
push 0
push dword [ebp - 0x3e40]
mov ecx, eax
push dword [ebp - 0x3e38]
call fcn.00492f80
mov esi, eax
jmp 0x4d13fd
xor esi, esi
push dword [ebp - 0x3e58]
mov byte [esi + 0x1dd], 1
imul eax, dword [edi + 0x188], 0x980
mov byte [ebp - 4], 0
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x13b0]
push str._ss__s
push eax
call fcn.0043d380
push 0x1f
lea eax, [esi + 0x184]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044cdd0
imul eax, dword [edi + 0x188], 0x980
add esp, 0x20
push esi
mov eax, dword [eax + edi + 0x308]
mov dword [esi + 0x108], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x30c]
mov dword [esi + 0x10c], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x308]
mov dword [esi + 0x110], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x30c]
mov dword [esi + 0x114], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x308]
mov dword [esi + 0x228], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x30c]
mov dword [esi + 0x22c], eax
mov eax, dword [ebp - 0x3e3c]
mov byte [esi + 0x1dd], 1
mov ecx, dword [eax + 0x118]
call fcn.005155e0
cmp dword [esi + 0x1b4], 4
jge 0x4d1504
mov dword [esi + 0x1b4], 4
mov dword [esi + 0x234], 1
mov dword [esi + 0x120], 1
call dword [sym.imp.WINMM.dll_timeGetTime]
sub eax, 0x2710
mov ecx, esi
mov dword [esi + 0x118], eax
mov dword [esi + 0x238], 0x2710
mov byte [ebp - 0x404c], 0x18
mov dword [ebp - 0x404b], esi
call fcn.0044c8d0
mov byte [ebp - 0x4047], al
movzx eax, word [esi + 0x220]
mov ecx, dword [ebp - 0x3e3c]
mov word [ebp - 0x4046], ax
movzx eax, word [esi + 0x224]
mov word [ebp - 0x4044], ax
mov al, byte [esi + 0x108]
mov byte [ebp - 0x4041], al
mov al, byte [esi + 0x10c]
push 0
push 5
mov byte [ebp - 0x4040], al
lea eax, [ebp - 0x404c]
push eax
push 0xd
push dword [esi + 0x10c]
push dword [esi + 0x108]
push 0
call fcn.0052bf40
push dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.00493770
mov byte [ebp - 0x402c], 0x38
mov dword [ebp - 0x402b], 0xffffffff
mov dword [ebp - 0x4027], 0xffffffff
mov al, byte [esi + 0x108]
mov byte [ebp - 0x4023], al
mov al, byte [esi + 0x10c]
mov byte [ebp - 0x4022], al
lea eax, [ebp - 0x402c]
mov word [ebp - 0x4021], 0xff
mov dword [ebp - 0x401f], 0x100ff
mov ecx, dword [ebp - 0x3e3c]
push 0
push 5
push eax
push 0x11
push dword [esi + 0x10c]
push dword [esi + 0x108]
push 0
call fcn.0052bf40
mov dword [edi + 0x14f70], esi
mov dword [esi + 0x21c], edi
mov dword [edi + 0x184], 1
mov esi, dword [ebp - 0x3e50]
cmp dword [edi + 0x14f34], 1
jne 0x4d166a
mov word [ebp - 0x4148], 0x3e
lea edx, [ebp - 0x3e4c]
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x4148]
mov eax, dword [ecx]
push edx
push 0xa
mov eax, dword [eax + 4]
call eax
mov ecx, edi
call fcn.0046fde0
cmp eax, 9
jle 0x4d169b
mov word [ebp - 0x4154], 0x33e
lea edx, [ebp - 0x3e4c]
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x4154]
mov eax, dword [ecx]
push edx
push 0xa
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 0x406c], 0x50
lea edx, [ebp - 0x3e4c]
mov eax, dword [edi + 0x23c]
mov dword [ebp - 0x406b], eax
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x406c]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 0x4074], 0x52
lea edx, [ebp - 0x3e4c]
mov eax, dword [esi + 0xc8]
mov dword [ebp - 0x4073], eax
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x4074]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
lea eax, [ebp - 0x31ef]
mov byte [ebp - 0x31f0], 0x59
xor esi, esi
mov dword [ebp - 0x3e40], eax
nop
imul ecx, dword [edi + 0x188], 0x980
push 0
push eax
add ecx, 0x43c
add ecx, esi
add ecx, edi
call fcn.00524a00
mov eax, dword [ebp - 0x3e40]
add esi, 0x138
add eax, 0x200
mov dword [ebp - 0x3e40], eax
cmp esi, 0x750
jl 0x4d1710
mov esi, dword [ebp - 0x3e50]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x31f0]
mov ecx, dword [esi + 0x34]
push edx
push 0xc01
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
cmp dword [edi + 0x14fac], 0
jne case.default.0x4d28f4
cmp dword [edi + 0x14f48], 0
je case.default.0x4d28f4
lea eax, [ebp - 0x206b]
push str.Thanks_for_paying__Remember_to_use_the__referredby__name_
push eax
call fcn.0046d650
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
push str.command_to_reward_the_player_who_introduced_you_to_Blade_Mistress.
lea eax, [ebp - 0x206b]
push eax
call fcn.0046d650
mov ecx, dword [esi + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov eax, dword [eax + 4]
push edx
push 0
lea edx, [ebp - 0x206c]
push edx
push 0x65
call eax
jmp case.default.0x4d28f4
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d1805
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f1c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f1b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f1a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f19], al
mov byte [ebp - 0x3f18], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d188f
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d18a2
lea eax, [ebp - 0x3f1c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
push dword [ebp - 0x3e54]
mov ecx, esi
push 0
call fcn.004e2c10
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [edi + 0x18c]
push eax
lea eax, [ebp - 0x13b0]
push str._log_off_character:__s___s
push eax
call fcn.0046d620
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb40
mov eax, dword [edi + 0x14f34]
add esp, 0x18
cmp eax, 2
je 0x4d1923
cmp eax, 3
jne 0x4d1937
lea eax, [ebp - 0x13b0]
push eax
push str.moderatorLog.txt
call fcn.0049eb40
add esp, 8
lea ecx, [ebp - 0x208c]
call fcn.00515360
mov ecx, dword [ebp - 0x2084]
mov dx, word [ebp - 0x2086]
add ecx, 0x13
movzx esi, cx
mov word [ebp - 0x2084], cx
lea eax, [esi - 0x18]
movzx eax, ax
mov dword [ebp - 0x3e40], eax
cmp cx, 0x18
jae 0x4d197f
mov ecx, 0xffff
add dx, cx
mov word [ebp - 0x2086], dx
jmp 0x4d1986
mov word [ebp - 0x2084], ax
movzx eax, word [ebp - 0x2082]
cmp esi, 0x18
push eax
mov eax, dword [ebp - 0x3e40]
mov ecx, esi
movzx eax, ax
cmovae ecx, eax
movzx eax, cx
push eax
movzx eax, dx
push eax
movzx eax, word [ebp - 0x208a]
push eax
lea eax, [ebp - 0x13b0]
push str._d__02d___d:_02d_n
push eax
call fcn.0046d620
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb40
mov eax, dword [edi + 0x14f34]
add esp, 0x20
cmp eax, 2
je 0x4d19e4
cmp eax, 3
jne 0x4d19f8
lea eax, [ebp - 0x13b0]
push eax
push str.moderatorLog.txt
call fcn.0049eb40
add esp, 8
mov esi, dword [ebp - 0x3e3c]
mov ecx, edi
push 0
push esi
call fcn.0046e3f0
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x206b]
push str._s_left_the_game.
push eax
call fcn.0046d650
add esp, 0xc
lea eax, [ebp - 0x206c]
mov ecx, esi
push 0
push 5
push eax
push 0x65
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.0052bf40
push 0
push esi
mov ecx, edi
call fcn.004866d0
mov ecx, esi
call fcn.0044c8d0
test eax, eax
jne 0x4d1aa1
mov ecx, esi
call fcn.0044c8d0
test eax, eax
jne 0x4d1a78
cmp dword [esi + 0x124], eax
jg 0x4d1aa1
imul ecx, dword [edi + 0x188], 0x980
mov eax, dword [edi + 0x108]
mov dword [ecx + edi + 0x308], eax
imul ecx, dword [edi + 0x188], 0x980
mov eax, dword [edi + 0x10c]
jmp 0x4d1afd
mov ecx, esi
call fcn.0044c8d0
imul ecx, dword [edi + 0x188], 0x980
cmp eax, 3
jne 0x4d1ade
mov eax, dword [esi + 0x12c]
mov dword [ecx + edi + 0x308], eax
mov ecx, dword [esi + 0x130]
dec ecx
imul eax, dword [edi + 0x188], 0x980
mov dword [eax + edi + 0x30c], ecx
jmp 0x4d1b04
mov eax, dword [ecx + edi + 0x310]
mov dword [ecx + edi + 0x308], eax
imul ecx, dword [edi + 0x188], 0x980
mov eax, dword [ecx + edi + 0x314]
mov dword [ecx + edi + 0x30c], eax
mov ecx, edi
call fcn.00487320
mov eax, dword [edi + 0x14f70]
test eax, eax
je case.default.0x4d28f4
mov dword [eax + 0x23c], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x240], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x244], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x248], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x24c], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x250], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x254], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x258], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x25c], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x260], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x1c0], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x220], 0x19
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x124], 1
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x21c], 0
mov dword [edi + 0x14f70], 0
jmp case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d1c18
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f24], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f23], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f22], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f21], al
mov byte [ebp - 0x3f20], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d1ca2
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d1cb5
lea eax, [ebp - 0x3f24]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
mov dword [edi + 0x258], 0
imul ecx, dword [edi + 0x188], 0x980
cmp dword [ecx + edi + 0x2c4], 0xffffffff
je case.default.0x4d28f4
mov al, byte [ebp - 0xfab]
cmp al, 0xa
jne 0x4d1d67
mov eax, dword [ecx + edi + 0x2d8]
cmp dword [eax + 0x20], 0
je 0x4d1d41
cmp dword [ebp - 0xfaa], 6
jne 0x4d1d41
mov eax, dword [ebp - 0xfaf]
mov dword [edi + 0x14ee8], eax
mov eax, dword [ecx + edi + 0x2d8]
mov ecx, esi
mov eax, dword [eax + 0x20]
push dword [eax + 0x28]
push edi
call fcn.004ddac0
jmp case.default.0x4d28f4
mov ecx, dword [edi + 0x14ec8]
mov eax, dword [ebp - 0xfaf]
mov dword [edi + ecx*4 + 0x14ed0], eax
mov ecx, esi
push dword [ebp - 0xfaa]
push edi
call fcn.004ddac0
jmp case.default.0x4d28f4
cmp al, 1
jne 0x4d1d7a
push 1
mov ecx, esi
push edi
call fcn.004ddac0
jmp case.default.0x4d28f4
cmp al, 2
jne 0x4d1d8d
push 2
push edi
mov ecx, esi
call fcn.004ddac0
jmp case.default.0x4d28f4
cmp al, 3
jne 0x4d1da0
push 3
push edi
mov ecx, esi
call fcn.004ddac0
jmp case.default.0x4d28f4
cmp al, 4
jne 0x4d1db3
push 4
push edi
mov ecx, esi
call fcn.004ddac0
jmp case.default.0x4d28f4
cmp al, 0xb
jne 0x4d1e42
cmp dword [edi + 0x14f34], 3
jne 0x4d1dce
push str.Trial_moderators_cannot_open_any_guild_chests.
jmp 0x4d17bf
lea eax, [ebp - 0x409c]
push eax
lea eax, [ecx + 0x2a0]
mov ecx, esi
add eax, edi
push eax
call fcn.004b8b20
test eax, eax
je 0x4d1e38
mov edx, dword [ebp - 0x409c]
cmp edx, dword [ebp - 0x3e3c]
jne 0x4d1e38
imul eax, dword [edi + 0x188], 0x980
push 0xb
push edi
mov ecx, dword [eax + edi + 0x2d8]
mov eax, dword [edx + 0x418]
mov dword [ecx + 0x20], eax
mov ecx, esi
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x24], 1
call fcn.004ddac0
jmp case.default.0x4d28f4
push str.You_are_not_allowed_to_open_this_chest._You_must_be_in_the_guild_and_a_paying_player.
jmp 0x4d17bf
cmp al, 9
jne 0x4d21ad
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0xfaa]
call fcn.004b8420
cmp dword [ebp - 0xfaa], 6
mov esi, eax
jne 0x4d1e6f
mov esi, dword [edi + 0x14f7c]
test esi, esi
je case.default.0x4d28f4
lea edx, [esi + 0x18c]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x3e38], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d1e88
sub ecx, dword [ebp - 0x3e38]
cmp ecx, 1
jb case.default.0x4d28f4
lea eax, [edi + 0x18c]
push eax
push edx
call fcn.0044d200
add esp, 8
test eax, eax
jne case.default.0x4d28f4
lea ecx, [ebp - 0x2160]
call fcn.00515360
mov eax, dword [edi + 0x14f7c]
test eax, eax
jne 0x4d2156
cmp dword [esi + 0x14f7c], eax
jne 0x4d2156
mov dword [edi + 0x14f7c], esi
mov dword [esi + 0x14f7c], edi
mov dword [edi + 0x14f80], eax
mov dword [esi + 0x14f80], eax
mov dword [edi + 0x14ef4], eax
mov dword [edi + 0x14ef0], eax
mov eax, dword [esi + 0x14f74]
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0
mov eax, dword [edi + 0x14f74]
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0
mov byte [ebp - 0x2130], 0x53
imul eax, dword [esi + 0x188], 0x980
add eax, 0x2a0
add eax, esi
push eax
lea eax, [ebp - 0x13b0]
push str.You_begin_trading_with__s.
push eax
call fcn.0046d620
push 0x64
lea eax, [ebp - 0x206b]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e4c]
add esp, 0x1c
mov ecx, dword [ecx + 0x11c]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [esi + 0x188], 0x980
add eax, 0x2a0
add eax, esi
push eax
lea eax, [ebp - 0x212f]
push eax
call fcn.004afe80
mov eax, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov byte [ebp - 0x2125], 0
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x2130]
mov eax, dword [ecx]
push edx
push 0x21
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d1ff6
mov dword [ebp - 0x3e48], ecx
mov edx, dword [esi + 0x180]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f2c], dl
sar eax, 8
mov byte [ebp - 0x3f2b], al
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f2a], al
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f29], al
mov byte [ebp - 0x3f28], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d205a
mov byte [ecx], dl
mov eax, edx
shr eax, 8
mov byte [ecx + 1], al
mov eax, edx
shr eax, 0x10
mov byte [ecx + 2], al
shr edx, 0x18
mov byte [ecx + 3], dl
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d206d
lea eax, [ebp - 0x3f2c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x13b0]
push str._s_begins_trading_with_you.
push eax
call fcn.0046d620
push 0x64
lea eax, [ebp - 0x206b]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e4c]
add esp, 0x1c
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x212f]
push eax
call fcn.004afe80
mov eax, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov byte [ebp - 0x2125], 0
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x2130]
mov eax, dword [ecx]
push edx
push 0x21
mov eax, dword [eax + 4]
call eax
mov ecx, dword [ebp - 0x3e50]
push 9
push edi
call fcn.004ddac0
push 8
push edi
mov edi, dword [ebp - 0x3e50]
mov ecx, edi
call fcn.004ddac0
push 9
push esi
mov ecx, edi
call fcn.004ddac0
push 8
push esi
mov ecx, edi
call fcn.004ddac0
jmp case.default.0x4d28f4
cmp eax, esi
jne 0x4d2181
cmp dword [esi + 0x14f7c], edi
jne 0x4d2181
mov eax, dword [ebp - 0xfaf]
mov ecx, dword [ebp - 0x3e50]
push 9
push edi
mov dword [edi + 0x14ef4], eax
call fcn.004ddac0
jmp case.default.0x4d28f4
cmp dword [esi + 0x14f7c], 0
je case.default.0x4d28f4
lea eax, [ebp - 0x206b]
push str.That_person_is_busy_trading_with_someone_else.
push eax
call fcn.0046d650
mov eax, dword [ebp - 0x3e50]
mov ecx, dword [eax + 0x34]
jmp 0x4d17ce
cmp al, 8
jne 0x4d2220
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0xfaa]
call fcn.004b8420
cmp dword [ebp - 0xfaa], 6
mov ecx, eax
jne 0x4d21d6
mov ecx, dword [edi + 0x14f7c]
test ecx, ecx
je case.default.0x4d28f4
cmp dword [edi + 0x14f7c], ecx
jne 0x4d2209
cmp dword [ecx + 0x14f7c], edi
jne 0x4d2209
mov eax, dword [ebp - 0xfaf]
mov ecx, esi
push 8
push edi
mov dword [edi + 0x14ef0], eax
call fcn.004ddac0
jmp case.default.0x4d28f4
cmp dword [ecx + 0x14f7c], 0
je case.default.0x4d28f4
push str.That_person_is_busy_trading_with_someone_else.
jmp 0x4d17bf
cmp al, 6
jne 0x4d2320
mov eax, dword [ebp - 0xfaa]
test eax, eax
je case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e3c]
push 1
push eax
mov ecx, dword [ecx + 0x118]
call fcn.00515750
mov esi, eax
test esi, esi
je case.default.0x4d28f4
mov ecx, dword [esi + 0x108]
cmp ecx, dword [edi + 0x108]
jne case.default.0x4d28f4
mov ecx, dword [esi + 0x10c]
cmp ecx, dword [edi + 0x10c]
jne case.default.0x4d28f4
mov ecx, esi
call fcn.0044c8d0
cmp eax, 2
je 0x4d22a0
mov ecx, esi
call fcn.0044c8d0
cmp eax, 3
je 0x4d22a0
mov ecx, esi
call fcn.0044c8d0
cmp eax, 0x15
jne case.default.0x4d28f4
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2d8]
mov eax, dword [esi + 0x180]
mov dword [ecx + 0x20], eax
mov ecx, esi
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x24], 0
call fcn.0044c8d0
cmp eax, 2
je 0x4d230d
mov ecx, esi
call fcn.0044c8d0
cmp eax, 0x15
je 0x4d230d
mov ecx, esi
call fcn.0044c8d0
cmp eax, 3
jne case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e50]
push 7
push edi
call fcn.004ddac0
jmp case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e50]
push 6
push edi
call fcn.004ddac0
jmp case.default.0x4d28f4
test al, al
jne case.default.0x4d28f4
mov eax, dword [edi + 0x14f70]
test eax, eax
je 0x4d2355
lea ecx, [ebp - 0x41d4]
push ecx
push eax
mov ecx, esi
call fcn.004b8d60
mov edx, eax
test edx, edx
je 0x4d2382
push dword [edx + 0x10c]
push dword [edx + 0x108]
jmp 0x4d2361
push dword [edi + 0x10c]
push dword [edi + 0x108]
mov ecx, dword [ebp - 0x3e3c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
call eax
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
mov dword [ecx + 0x20], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
push 0
push edi
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x24], 1
call fcn.004ddac0
jmp case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d23bf
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f34], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f33], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f32], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f31], al
mov byte [ebp - 0x3f30], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d2449
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d245c
lea eax, [ebp - 0x3f34]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4d24ef
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x2230], 0x17
push str.You_are_stunned__and_cant_do_that_
push eax
call fcn.0046d620
mov ecx, 0x18
mov eax, dword [ebp - 0x3e50]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x222f]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e4c]
push edx
push 0
movsw word es:[edi], word [esi]
lea edx, [ebp - 0x2230]
push edx
push 0x65
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x21cc], 0
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
mov dword [edi + 0x258], 0
cmp dword [edi + 0x14f7c], 0
jne 0x4d2604
cmp byte [ebp - 0xfa2], 0
je 0x4d2604
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x2d8]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x4d2604
cmp dword [eax + 0x28], 0
jne 0x4d2604
mov edx, dword [ebp - 0xfab]
add edx, 8
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d2547
sub ecx, esi
cmp ecx, 1
jbe 0x4d25fe
mov ecx, edx
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d2560
sub ecx, esi
push ecx
push edx
push str.Demon_Amulet
call fcn.00595ea0
add esp, 0xc
test eax, eax
je 0x4d25fe
mov edx, dword [ebp - 0xfab]
add edx, 8
mov ecx, edx
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d2590
sub ecx, esi
push ecx
push edx
push str.Dragon_Orchid
call fcn.00595ea0
add esp, 0xc
test eax, eax
je 0x4d25fe
mov edx, dword [ebp - 0xfab]
add edx, 8
mov ecx, edx
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d25c0
sub ecx, esi
push ecx
push edx
push str.Ancient_Dragonscale
call fcn.00595ea0
add esp, 0xc
test eax, eax
je 0x4d25fe
lea eax, [ebp - 0x206b]
push str.You_can_only_put_Amulets__Dragonscales_and_Orchids_onto_the_ground.
push eax
call fcn.0046d650
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x11c]
jmp 0x4d17ce
mov esi, dword [ebp - 0x3e50]
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28f4
mov eax, dword [eax + edi + 0x2d8]
mov ecx, esi
push dword [eax + 0x24]
lea eax, [ebp - 0xfb0]
push dword [ebp - 0xfaf]
push eax
push edi
call fcn.004e2d90
cmp eax, 1
jne 0x4d27b9
push edi
mov ecx, esi
call fcn.004e5ae0
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
mov eax, dword [eax + edi + 0x2d8]
mov eax, dword [eax + 0x20]
push dword [eax + 0x28]
push edi
call fcn.004ddac0
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x2d8]
mov eax, dword [eax + 0x20]
cmp dword [eax + 0x28], 0
jne case.default.0x4d28f4
mov eax, dword [edi + 0x108]
mov ecx, dword [edi + 0x14f70]
mov dword [ebp - 0x3e58], eax
mov eax, dword [edi + 0x10c]
mov dword [ebp - 0x3e68], eax
xor eax, eax
mov dword [ebp - 0x3e40], eax
test ecx, ecx
je 0x4d26e6
lea eax, [ebp - 0x3e40]
push eax
push ecx
mov ecx, esi
call fcn.004b8d60
mov ecx, eax
test ecx, ecx
je 0x4d26e0
mov eax, dword [ecx + 0x108]
mov dword [ebp - 0x3e58], eax
mov eax, dword [ecx + 0x10c]
mov dword [ebp - 0x3e68], eax
mov eax, dword [ebp - 0x3e40]
mov esi, dword [ebp - 0x3e3c]
test eax, eax
cmovne esi, eax
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x3e3c], esi
mov eax, dword [eax + edi + 0x2d8]
mov ecx, dword [eax + 0x20]
add ecx, 8
call fcn.0044e040
mov edx, dword [ebp - 0x3e68]
push 0
push 5
test eax, eax
je 0x4d2766
imul eax, dword [edi + 0x188], 0x980
lea ecx, [ebp - 0x3fd8]
push ecx
push 7
push edx
mov ecx, esi
mov eax, dword [eax + edi + 0x2d8]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x3fd7], eax
mov eax, dword [ebp - 0x3e58]
push eax
push 0
mov byte [ebp - 0x3fd3], al
mov byte [ebp - 0x3fd2], dl
call fcn.0052bf40
jmp case.default.0x4d28f4
mov byte [ebp - 0x40c8], 0x18
lea ecx, [ebp - 0x40c8]
imul eax, dword [edi + 0x188], 0x980
push ecx
push 0xd
push edx
mov ecx, esi
mov eax, dword [eax + edi + 0x2d8]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x40c7], eax
mov eax, dword [ebp - 0x3e58]
push eax
push 0
mov byte [ebp - 0x40c3], 6
mov byte [ebp - 0x40bd], al
mov byte [ebp - 0x40bc], dl
call fcn.0052bf40
jmp case.default.0x4d28f4
cmp eax, 2
jne case.default.0x4d28f4
push edi
mov ecx, esi
call fcn.004e5ae0
jmp case.default.0x4d28f4
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d27e5
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f3c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f3b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f3a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f39], al
mov byte [ebp - 0x3f38], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d286f
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d2882
lea eax, [ebp - 0x3f3c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
mov dword [edi + 0x258], 0
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28f4
lea eax, [ebp - 0xfb0]
mov ecx, esi
push eax
push edi
call fcn.004dd230
test eax, eax
je case.default.0x4d28f4
movzx eax, byte [ebp - 0xfa7]
add eax, 0xffffff38
cmp eax, 3
ja case.default.0x4d28f4
jmp dword [eax*4 + 0x4d7908]
push 2
mov ecx, esi
push edi
call fcn.004ddac0
jmp case.default.0x4d28f4
push 3
mov ecx, esi
push edi
call fcn.004ddac0
jmp case.default.0x4d28f4
push 4
mov ecx, esi
push edi
call fcn.004ddac0
jmp case.default.0x4d28f4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
mov eax, dword [edi + 0x14f70]
test eax, eax
je 0x4d2a7c
lea ecx, [ebp - 0x40a0]
push ecx
push eax
mov ecx, esi
call fcn.004b8d60
mov esi, eax
test esi, esi
je case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e50]
lea eax, [ebp - 0x40a0]
push eax
push dword [ebp - 0xfab]
call fcn.004b8420
test eax, eax
je 0x4d29d0
cmp dword [edi + 0x14f34], 1
je 0x4d29b2
cmp byte [edi + 0x14fb9], 0
je case.default.0x4d28f4
cmp byte [eax + 0x14fb9], 0
je case.default.0x4d28f4
cmp dword [esi + 0x204], 0
jne 0x4d29c5
mov dword [esi + 0x11c], 0
mov dword [esi + 0x204], eax
jmp case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e50]
lea eax, [ebp - 0x41d0]
push eax
push dword [ebp - 0xfab]
call fcn.004b8d60
mov dword [ebp - 0x3e40], eax
test eax, eax
je case.default.0x4d28f4
mov ecx, dword [eax + 0x21c]
test ecx, ecx
je 0x4d2a5e
cmp dword [ecx + 0x14f34], 0
jne 0x4d2a5e
mov ecx, dword [ebp - 0x3e3c]
call fcn.0044c8d0
cmp eax, 4
jne 0x4d2a28
mov eax, dword [ebp - 0x3e3c]
cmp dword [eax + 0x134], 6
je 0x4d2a58
mov eax, dword [ebp - 0x3e40]
mov ecx, dword [eax + 0x21c]
test ecx, ecx
je case.default.0x4d28f4
cmp byte [ecx + 0x14fb9], 0
je case.default.0x4d28f4
cmp byte [edi + 0x14fb9], 0
je case.default.0x4d28f4
jmp 0x4d2a5e
mov eax, dword [ebp - 0x3e40]
cmp dword [esi + 0x214], 0
jne 0x4d2a71
mov dword [esi + 0x11c], 0
mov dword [esi + 0x214], eax
jmp case.default.0x4d28f4
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28f4
mov eax, dword [ebp - 0xfab]
test eax, eax
je case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e3c]
push 1
push eax
mov ecx, dword [ecx + 0x118]
call fcn.00515750
mov esi, eax
test esi, esi
je 0x4d2b22
mov ecx, dword [esi + 0x108]
cmp ecx, dword [edi + 0x108]
jne 0x4d2b22
mov ecx, dword [esi + 0x10c]
cmp ecx, dword [edi + 0x10c]
jne 0x4d2b22
mov ecx, esi
call fcn.0044c8d0
cmp eax, 1
jne 0x4d2b22
mov eax, dword [esi + 0x21c]
test eax, eax
je 0x4d2b09
cmp dword [eax + 0x14f34], 0
jne 0x4d2b09
cmp byte [eax + 0x14fb9], 0
je 0x4d2b22
cmp byte [edi + 0x14fb9], 0
je 0x4d2b22
cmp dword [edi + 0x14ea0], 0
jne 0x4d2b1c
mov dword [edi + 0x11c], 0
mov dword [edi + 0x14ea0], esi
mov ecx, dword [ebp - 0x3e50]
lea eax, [ebp - 0x41cc]
push eax
push dword [ebp - 0xfab]
call fcn.004b8420
test eax, eax
je case.default.0x4d28f4
cmp byte [edi + 0x14fb9], 0
je case.default.0x4d28f4
cmp byte [eax + 0x14fb9], 0
je case.default.0x4d28f4
cmp dword [edi + 0x14ea4], 0
jne 0x4d2b78
cmp dword [edi + 0x14ea0], 0
jne 0x4d2b78
mov dword [edi + 0x11c], 0
mov dword [edi + 0x14ea4], eax
jmp case.default.0x4d28f4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28f4
mov eax, dword [ebp - 0xfab]
test eax, eax
je case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e3c]
push 1
push eax
mov ecx, dword [ecx + 0x118]
call fcn.00515750
mov esi, eax
test esi, esi
je case.default.0x4d28f4
mov ecx, dword [esi + 0x108]
cmp ecx, dword [edi + 0x108]
jne case.default.0x4d28f4
mov ecx, dword [esi + 0x10c]
cmp ecx, dword [edi + 0x10c]
jne case.default.0x4d28f4
mov ecx, esi
call fcn.0044c8d0
cmp eax, 1
jne case.default.0x4d28f4
mov eax, dword [esi + 0x21c]
test eax, eax
je 0x4d2c32
cmp dword [eax + 0x14f34], 1
je 0x4d2c45
cmp dword [edi + 0x14ea0], 0
jne 0x4d2c45
mov dword [edi + 0x11c], 0
mov dword [edi + 0x14ea0], esi
jmp case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d2c66
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f44], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f43], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f42], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f41], al
mov byte [ebp - 0x3f40], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d2cf0
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d2d03
lea eax, [ebp - 0x3f44]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
mov dword [edi + 0x258], 0
imul ecx, dword [edi + 0x188], 0x980
cmp dword [ecx + edi + 0x2c4], 0xffffffff
je case.default.0x4d28f4
mov eax, dword [ebp - 0xfaf]
test eax, eax
je case.default.0x4d28f4
mov ecx, dword [ecx + edi + 0x2e0]
push eax
add ecx, 8
call fcn.0044dfd0
test eax, eax
je 0x4d2d89
cmp dword [eax + 0x110], 6
jne 0x4d2d89
mov ecx, eax
call fcn.0044c8e0
push eax
push edi
mov ecx, esi
call fcn.004c7dd0
jmp case.default.0x4d28f4
mov esi, dword [ebp - 0xfaf]
xor eax, eax
mov edx, str.Swordsmith
xor ecx, ecx
cmp dword [ecx + str.XOKHNBC12345678GD90:S], esi
jne 0x4d2da3
lea eax, [edx - 0x20]
cmp dword [ecx + 0x611c0c], esi
cmove eax, edx
cmp dword [ecx + 0x611c10], esi
jne 0x4d2db7
lea eax, [edx + 0x20]
add ecx, 0xc
add edx, 0x60
cmp ecx, 0x54
jb 0x4d2d98
test eax, eax
je case.default.0x4d28f4
push eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044df50
test eax, eax
je case.default.0x4d28f4
cmp dword [eax + 0x110], 6
jne case.default.0x4d28f4
mov ecx, eax
call fcn.0044c8e0
mov ecx, dword [ebp - 0x3e50]
push eax
push edi
call fcn.004c7dd0
jmp case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d2e28
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f4c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f4b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f4a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f49], al
mov byte [ebp - 0x3f48], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d2eb2
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d2ec5
lea eax, [ebp - 0x3f4c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
mov esi, dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.0044c8d0
cmp eax, 1
jne 0x4d3098
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28f4
mov byte [ebp - 0x3df9], 0
lea edi, [ebp - 0x3e12]
movzx eax, word [esi + 0x124]
mov word [ebp - 0x3e33], ax
movzx eax, word [esi + 0x128]
mov word [ebp - 0x3e31], ax
movzx eax, word [ebp - 0xfaf]
mov word [ebp - 0x3e2f], ax
movzx eax, word [ebp - 0xfad]
mov word [ebp - 0x3e2d], ax
mov al, byte [esi + 0x13c]
mov byte [ebp - 0x3df9], al
mov al, byte [esi + 0x13d]
mov byte [ebp - 0x3df8], al
xor eax, eax
mov dword [ebp - 0x3e58], eax
nop dword [eax]
xor edx, edx
mov byte [edi - 0x19], 0
movsx ecx, word [ebp - 0x3e2d]
lea eax, [eax + ecx*4]
add ecx, eax
js 0x4d2fe2
movsx eax, word [ebp - 0x3e31]
cmp ecx, eax
jge 0x4d2fe2
movsx eax, word [ebp - 0x3e2f]
lea eax, [eax + eax*4]
mov dword [ebp - 0x3e40], eax
add eax, edx
mov dword [ebp - 0x3e38], eax
js 0x4d2fe2
movsx eax, word [ebp - 0x3e33]
cmp dword [ebp - 0x3e38], eax
jge 0x4d2fe2
mov eax, dword [esi + 0x124]
imul eax, ecx
add eax, dword [esi + 0x134]
add eax, dword [ebp - 0x3e40]
mov al, byte [eax + edx]
jmp 0x4d2fe4
xor al, al
mov byte [edi - 0x19], al
mov eax, dword [ebp - 0x3e58]
mov byte [edi], 0
movsx ecx, word [ebp - 0x3e2d]
lea eax, [eax + ecx*4]
add ecx, eax
js 0x4d304c
movsx eax, word [ebp - 0x3e31]
cmp ecx, eax
jge 0x4d304c
movsx eax, word [ebp - 0x3e2f]
lea eax, [eax + eax*4]
mov dword [ebp - 0x3e40], eax
add eax, edx
mov dword [ebp - 0x3e38], eax
js 0x4d304c
movsx eax, word [ebp - 0x3e33]
cmp dword [ebp - 0x3e38], eax
jge 0x4d304c
mov eax, dword [esi + 0x124]
imul eax, ecx
add eax, dword [esi + 0x138]
add eax, dword [ebp - 0x3e40]
mov al, byte [eax + edx]
jmp 0x4d304e
xor al, al
mov byte [edi], al
inc edx
mov eax, dword [ebp - 0x3e58]
inc edi
cmp edx, 5
jl 0x4d2f82
inc eax
mov dword [ebp - 0x3e58], eax
cmp eax, 5
jl 0x4d2f80
mov eax, dword [ebp - 0x3e50]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x3e34]
mov ecx, dword [eax + 0x34]
push edx
push 0x3d
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
mov ecx, esi
call fcn.0044c8d0
cmp eax, 3
jne case.default.0x4d28f4
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28f4
mov byte [ebp - 0x3df9], 0
lea edi, [ebp - 0x3e12]
movzx eax, word [esi + 0x124]
mov word [ebp - 0x3e33], ax
movzx eax, word [esi + 0x128]
mov word [ebp - 0x3e31], ax
movzx eax, word [ebp - 0xfaf]
mov word [ebp - 0x3e2f], ax
movzx eax, word [ebp - 0xfad]
mov word [ebp - 0x3e2d], ax
mov al, byte [esi + 0x13c]
mov byte [ebp - 0x3df9], al
mov al, byte [esi + 0x13d]
mov byte [ebp - 0x3df8], al
xor eax, eax
mov dword [ebp - 0x3e58], eax
nop word [eax + eax]
xor edx, edx
mov byte [edi - 0x19], 0
movsx ecx, word [ebp - 0x3e2d]
lea eax, [eax + ecx*4]
add ecx, eax
js 0x4d3192
movsx eax, word [ebp - 0x3e31]
cmp ecx, eax
jge 0x4d3192
movsx eax, word [ebp - 0x3e2f]
lea eax, [eax + eax*4]
mov dword [ebp - 0x3e40], eax
add eax, edx
mov dword [ebp - 0x3e38], eax
js 0x4d3192
movsx eax, word [ebp - 0x3e33]
cmp dword [ebp - 0x3e38], eax
jge 0x4d3192
mov eax, dword [esi + 0x124]
imul eax, ecx
add eax, dword [esi + 0x134]
add eax, dword [ebp - 0x3e40]
mov al, byte [eax + edx]
jmp 0x4d3194
xor al, al
mov byte [edi - 0x19], al
mov eax, dword [ebp - 0x3e58]
mov byte [edi], 0
movsx ecx, word [ebp - 0x3e2d]
lea eax, [eax + ecx*4]
add ecx, eax
js 0x4d31fc
movsx eax, word [ebp - 0x3e31]
cmp ecx, eax
jge 0x4d31fc
movsx eax, word [ebp - 0x3e2f]
lea eax, [eax + eax*4]
mov dword [ebp - 0x3e40], eax
add eax, edx
mov dword [ebp - 0x3e38], eax
js 0x4d31fc
movsx eax, word [ebp - 0x3e33]
cmp dword [ebp - 0x3e38], eax
jge 0x4d31fc
mov eax, dword [esi + 0x124]
imul eax, ecx
add eax, dword [esi + 0x138]
add eax, dword [ebp - 0x3e40]
mov al, byte [eax + edx]
jmp 0x4d31fe
xor al, al
mov byte [edi], al
inc edx
mov eax, dword [ebp - 0x3e58]
inc edi
cmp edx, 5
jl 0x4d3132
inc eax
mov dword [ebp - 0x3e58], eax
cmp eax, 5
jl 0x4d3130
jmp 0x4d3071
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d323c
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f54], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f53], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f52], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f51], al
mov byte [ebp - 0x3f50], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d32c6
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d32d9
lea eax, [ebp - 0x3f54]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
mov esi, dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.0044c8d0
cmp eax, 1
jne 0x4d34a8
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28f4
push edi
mov ecx, esi
call fcn.004ec7f0
test eax, eax
je case.default.0x4d28f4
cmp byte [ebp - 0xfab], 0
mov cx, word [ebp - 0xfaf]
mov ax, word [ebp - 0xfad]
mov dword [ebp - 0x3e76], 0
mov byte [ebp - 0x3e77], 0
mov word [ebp - 0x3e7b], cx
mov word [ebp - 0x3e79], ax
je 0x4d33bb
mov al, byte [esi + 0x13c]
inc al
cmp al, 4
mov byte [esi + 0x13c], al
jb 0x4d338c
mov byte [esi + 0x13c], 0
xor al, al
inc al
mov byte [ebp - 0x3e77], al
push 0
push 5
lea eax, [ebp - 0x3e7c]
mov ecx, esi
push eax
push 0xa
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.0052bf40
jmp case.default.0x4d28f4
cmp byte [ebp - 0xfa8], 0
je 0x4d33e9
mov al, byte [esi + 0x13d]
inc al
mov byte [esi + 0x13d], al
cmp al, 0xb
jb 0x4d33df
mov byte [esi + 0x13d], 0
xor al, al
inc al
mov byte [ebp - 0x3e74], al
jmp 0x4d3394
cmp byte [ebp - 0xfa9], 0
je 0x4d3453
cwde
push eax
movsx eax, cx
mov ecx, esi
push eax
push 1
call fcn.004ec910
test eax, eax
js 0x4d340d
mov byte [ebp - 0x3e75], al
jmp 0x4d3394
cmp eax, 0xfffffffe
jne 0x4d342e
lea eax, [ebp - 0x206b]
push str.Edit_outside_bounds_denied.
push eax
call fcn.0046d650
mov ecx, dword [esi + 0x11c]
jmp 0x4d17ce
cmp eax, 0xffffffff
jne case.default.0x4d28f4
lea eax, [ebp - 0x206b]
push str.That_would_close_off_parts_of_the_dungeon.
push eax
call fcn.0046d650
mov ecx, dword [esi + 0x11c]
jmp 0x4d17ce
cmp byte [ebp - 0xfaa], 0
je case.default.0x4d28f4
cwde
push eax
movsx eax, cx
mov ecx, esi
push eax
push 0
call fcn.004ec910
test eax, eax
js 0x4d347e
mov byte [ebp - 0x3e76], al
jmp 0x4d3394
cmp eax, 0xfffffffe
je 0x4d3412
cmp eax, 0xffffffff
jne case.default.0x4d28f4
lea eax, [ebp - 0x206b]
push str.That_would_close_off_parts_of_the_dungeon.
push eax
call fcn.0046d650
mov ecx, dword [esi + 0x11c]
jmp 0x4d17ce
mov ecx, esi
call fcn.0044c8d0
cmp eax, 3
jne case.default.0x4d28f4
lea ecx, [esi + 0x148]
call fcn.00515400
cmp byte [ebp - 0xfab], 0
mov cx, word [ebp - 0xfaf]
mov ax, word [ebp - 0xfad]
mov word [ebp - 0x3e76], 0
mov byte [ebp - 0x3e74], 0
mov byte [ebp - 0x3e77], 0
mov word [ebp - 0x3e7b], cx
mov word [ebp - 0x3e79], ax
je 0x4d350e
mov al, byte [esi + 0x13c]
inc al
cmp al, 7
jmp 0x4d337b
cmp byte [ebp - 0xfa8], 0
je 0x4d3543
mov al, byte [esi + 0x13d]
inc al
mov byte [esi + 0x13d], al
cmp al, 8
jb 0x4d33df
xor al, al
mov byte [esi + 0x13d], 0
inc al
mov byte [ebp - 0x3e74], al
jmp 0x4d3394
cmp byte [ebp - 0xfa9], 0
je 0x4d3598
cwde
push eax
movsx eax, cx
mov ecx, esi
push eax
push 1
call fcn.00530350
test eax, eax
js 0x4d356a
mov byte [ebp - 0x3e75], al
jmp 0x4d3394
cmp eax, 0xfffffffe
je 0x4d3412
cmp eax, 0xffffffff
jne case.default.0x4d28f4
lea eax, [ebp - 0x206b]
push str.That_would_close_off_parts_of_the_tower.
push eax
call fcn.0046d650
mov ecx, dword [esi + 0x11c]
jmp 0x4d17ce
cmp byte [ebp - 0xfaa], 0
je case.default.0x4d28f4
cwde
push eax
movsx eax, cx
mov ecx, esi
push eax
push 0
call fcn.00530350
test eax, eax
js 0x4d356a
mov byte [ebp - 0x3e76], al
jmp 0x4d3394
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d35d9
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f5c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f5b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f5a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f59], al
mov byte [ebp - 0x3f58], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d3663
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d3676
lea eax, [ebp - 0x3f5c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov ecx, eax
mov dword [ebp - 0x3e5c], ecx
test ecx, ecx
je case.0x4cd795.2
mov edi, dword [ebp - 0x3e3c]
mov ecx, dword [edi + 0x110]
call fcn.0044e020
mov esi, eax
test esi, esi
je case.default.0x4d28f4
mov ecx, esi
call fcn.0044c8d0
test eax, eax
jne 0x4d36ce
mov eax, dword [ebp - 0xfaf]
cmp eax, dword [esi + 0x180]
je 0x4d36e4
mov ecx, dword [edi + 0x110]
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4d36b5
jmp case.default.0x4d28f4
lea eax, [ebp - 0x2420]
mov byte [ebp - 0x2420], 9
push eax
mov ecx, esi
call fcn.00470010
mov ecx, dword [edi + 0x11c]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x2420]
mov eax, dword [ecx]
push edx
push 0x4d
mov eax, dword [eax + 4]
call eax
xor ecx, ecx
xor edi, edi
mov dword [ebp - 0x3e40], ecx
imul eax, dword [esi + 0x188], 0x980
add eax, esi
cmp byte [eax + edi + 0x344], 0xff
je 0x4d3830
mov byte [ebp - 0x20ec], 0x3a
mov eax, dword [esi + 0x180]
mov dword [ebp - 0x20eb], eax
lea eax, [ebp - 0x20df]
push 0x10
push eax
imul eax, dword [esi + 0x188], 0x980
push 0x10
add eax, 0x334
add eax, esi
add eax, edi
push eax
call fcn.0044cdd0
imul eax, dword [esi + 0x188], 0x980
lea edx, [ebp - 0x3e4c]
add esp, 0x10
add eax, esi
push edx
push 0
lea edx, [ebp - 0x20ec]
mov al, byte [eax + edi + 0x345]
mov byte [ebp - 0x20e6], al
imul eax, dword [esi + 0x188], 0x980
push edx
push 0x1d
add eax, esi
mov al, byte [eax + edi + 0x344]
mov byte [ebp - 0x20e7], al
imul eax, dword [esi + 0x188], 0x980
add eax, esi
mov al, byte [eax + edi + 0x346]
mov byte [ebp - 0x20e5], al
imul eax, dword [esi + 0x188], 0x980
add eax, esi
movss xmm1, dword [eax + edi + 0x354]
divss xmm1, dword [0x5d3bb8]
movzx eax, byte [eax + edi + 0x347]
movd xmm0, eax
mov eax, dword [ebp - 0x3e40]
cvtdq2ps xmm0, xmm0
mov byte [ebp - 0x20e4], al
mov eax, dword [ebp - 0x3e3c]
addss xmm1, xmm0
movss dword [ebp - 0x20e3], xmm1
mov ecx, dword [eax + 0x11c]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov ecx, dword [ebp - 0x3e40]
inc ecx
add edi, 0x34
mov dword [ebp - 0x3e40], ecx
cmp edi, 0x68
jl 0x4d3722
push dword [ebp - 0x3e54]
mov edi, dword [ebp - 0x3e3c]
mov ecx, esi
push 0
push edi
call fcn.0046e710
imul eax, dword [esi + 0x188], 0x980
mov ecx, dword [eax + esi + 0x2e4]
add ecx, 8
call fcn.0044e020
test eax, eax
je case.default.0x4d28f4
nop word [eax + eax]
mov ecx, dword [eax + 0x110]
cmp ecx, 1
jne 0x4d38ae
push esi
push eax
lea eax, [ebp - 0x4224]
push eax
call fcn.0049e940
add esp, 0xc
lea edx, [ebp - 0x3e4c]
push edx
lea edx, [ebp - 0x4224]
jmp 0x4d392a
cmp ecx, 0xe
jne 0x4d3955
mov ecx, dword [eax + 0x11c]
lea edx, [ebp - 0x3e4c]
mov dword [ebp - 0x411b], eax
mov byte [ebp - 0x4120], 0x21
mov dword [ebp - 0x411f], 0x40800000
mov eax, dword [ecx]
push edx
lea edx, [ebp - 0x4120]
mov al, byte [eax + eax*2 + 0x627638]
mov byte [ebp - 0x4106], al
mov eax, dword [ecx]
mov al, byte [eax + eax*2 + 0x627639]
mov byte [ebp - 0x4105], al
mov eax, dword [ecx]
mov al, byte [eax + eax*2 + 0x62763a]
mov byte [ebp - 0x4104], al
mov eax, dword [esi + 0x180]
mov dword [ebp - 0x4117], eax
xor eax, eax
mov word [ebp - 0x4109], ax
mov byte [ebp - 0x4107], 0x80
mov ecx, dword [edi + 0x11c]
push 0
push edx
push 0x1d
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
imul eax, dword [esi + 0x188], 0x980
mov ecx, dword [eax + esi + 0x2e4]
add ecx, 8
call fcn.0044e090
imul eax, dword [esi + 0x188], 0x980
mov ecx, dword [eax + esi + 0x2e4]
add ecx, 8
call fcn.0044e0d0
test eax, eax
jne 0x4d3880
jmp case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d3991
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f64], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f63], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f62], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f61], al
mov byte [ebp - 0x3f60], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d3a1b
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d3a2e
lea eax, [ebp - 0x3f64]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
mov eax, dword [ebp - 0x3e3c]
push 0
push dword [edi + 0x10c]
push dword [edi + 0x108]
mov ecx, dword [eax + 0x118]
call fcn.00515600
mov esi, eax
test esi, esi
je 0x4d3d82
nop dword [eax + eax]
mov ecx, esi
call fcn.0044c8d0
cmp eax, 4
jne case.default.0x4d3ac4
mov eax, dword [esi + 0x108]
cmp eax, dword [edi + 0x108]
jne case.default.0x4d3ac4
mov eax, dword [esi + 0x10c]
cmp eax, dword [edi + 0x10c]
jne case.default.0x4d3ac4
movzx eax, byte [ebp - 0xfaf]
cmp eax, 3
ja case.default.0x4d3ac4
jmp dword [eax*4 + 0x4d7918]
mov ecx, dword [ebp - 0x3e50]
push 1
push dword [ebp - 0x3e3c]
push esi
push edi
call fcn.004d8a80
jmp case.default.0x4d3ac4
mov ecx, dword [ebp - 0x3e50]
push 0
push dword [ebp - 0x3e3c]
push esi
push edi
call fcn.004d8a80
jmp case.default.0x4d3ac4
imul edx, dword [edi + 0x188], 0x980
mov ecx, dword [edx + edi + 0x2d8]
mov eax, dword [ecx + 0x1c]
mov esi, dword [ecx + 0x18]
test eax, eax
jg 0x4d3b62
jl 0x4d3b24
cmp esi, 0xb4
jae 0x4d3b62
push str.You_dont_have_180_gold_for_healing.
lea eax, [ebp - 0x206b]
push eax
call fcn.0046d650
mov eax, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d3ac4
mov eax, dword [edx + edi + 0x2fc]
cmp eax, dword [edx + edi + 0x2f8]
jl 0x4d3b79
push str.You_are_already_fully_healed.
jmp 0x4d3b29
mov eax, dword [ecx + 0x1c]
sub esi, 0xb4
mov dword [ecx + 0x18], esi
sbb eax, 0
mov dword [ecx + 0x1c], eax
mov ecx, edi
call fcn.0047d1e0
mov esi, 0x32
lea eax, [eax + eax*2]
sub esi, eax
mov eax, 3
cmp esi, 3
cmovl esi, eax
imul ecx, dword [edi + 0x188], 0x980
mov dword [ebp - 0x3e40], esi
mov eax, dword [ecx + edi + 0x2fc]
mov edx, dword [ecx + edi + 0x2f8]
sub edx, eax
cmp edx, esi
cmovge edx, esi
add eax, esi
mov dword [ecx + edi + 0x2fc], eax
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x3e38], edx
mov ecx, dword [eax + edi + 0x2f8]
cmp dword [eax + edi + 0x2fc], ecx
jle 0x4d3bfc
mov dword [eax + edi + 0x2fc], ecx
mov byte [ebp - 0x4100], 0x26
lea edx, [ebp - 0x3e4c]
imul eax, dword [edi + 0x188], 0x980
push edx
push 0
lea edx, [ebp - 0x4100]
push edx
push 0xd
mov eax, dword [eax + edi + 0x2fc]
mov dword [ebp - 0x40fb], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x2f8]
mov dword [ebp - 0x40f7], eax
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x40ff], eax
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x11c]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
push esi
lea eax, [ebp - 0x206b]
push str.You_are_healed_for__d_points.
push eax
call fcn.0046d650
mov esi, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e4c]
add esp, 0xc
mov ecx, dword [esi + 0x11c]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
push 9
push esi
mov ecx, edi
call fcn.0046e5c0
push 0x5d1640
push str.healing.txt
call fcn.00569402
mov esi, eax
lea eax, [ebp - 0x13b0]
push eax
call fcn.00590ffe
lea eax, [ebp - 0x13b0]
push eax
push str._s_
push esi
call fcn.0043d350
lea eax, [ebp - 0x13b0]
push eax
call fcn.0059123e
lea eax, [ebp - 0x13b0]
push eax
push str._s_
push esi
call fcn.0043d350
imul eax, dword [edi + 0x188], 0x980
push dword [ebp - 0x3e38]
push dword [ebp - 0x3e40]
add eax, 0x2a0
add eax, edi
push eax
push str._s___ld___ld_n
push esi
call fcn.0043d350
push esi
call fcn.00569114
add esp, 0x40
jmp case.default.0x4d3ac4
imul eax, dword [edi + 0x188], 0x980
push 0xc
push edi
mov ecx, dword [eax + edi + 0x2d8]
mov eax, dword [edi + 0x14f78]
mov dword [ecx + 0x20], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x3e50]
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x24], 1
call fcn.004ddac0
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x118]
call fcn.005156b0
mov esi, eax
test esi, esi
jne 0x4d3a80
mov ecx, dword [ebp - 0x3e3c]
call fcn.0044c8d0
cmp eax, 3
jne 0x4d3e14
cmp byte [ebp - 0xfaf], al
jne 0x4d3e14
mov ecx, dword [ebp - 0x3e50]
lea eax, [ebp - 0x3fcc]
push eax
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
call fcn.004b8b20
test eax, eax
mov eax, dword [ebp - 0x3e3c]
je 0x4d3e1a
cmp dword [ebp - 0x3fcc], eax
jne 0x4d3e1a
imul eax, dword [edi + 0x188], 0x980
push 0xc
push edi
mov ecx, dword [eax + edi + 0x2d8]
mov eax, dword [edi + 0x14f78]
mov dword [ecx + 0x20], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x3e50]
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x24], 1
call fcn.004ddac0
mov eax, dword [ebp - 0x3e3c]
mov ecx, eax
call fcn.0044c8d0
cmp eax, 3
jne case.default.0x4d28f4
cmp byte [ebp - 0xfaf], 0
jne case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e50]
lea eax, [ebp - 0x3fcc]
push eax
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
call fcn.004b8b20
test eax, eax
je case.default.0x4d28f4
mov eax, dword [ebp - 0x3e3c]
cmp dword [ebp - 0x3fcc], eax
jne case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e50]
push 1
push eax
push esi
push edi
call fcn.004d8a80
jmp case.default.0x4d28f4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
cmp dword [ebp - 0xfaf], 0xffffffff
jne case.default.0x4d28f4
mov eax, dword [ebp - 0xfa9]
cmp eax, 0xfffffffe
jne 0x4d3fca
mov eax, dword [edi + 0x14f7c]
test eax, eax
je case.default.0x4d28f4
lea ecx, [ebp - 0x41c8]
push ecx
push eax
mov ecx, esi
call fcn.004b8820
mov dword [ebp - 0x3e38], eax
test eax, eax
je case.default.0x4d28f4
push dword [ebp - 0x3e3c]
mov ecx, edi
call fcn.00487ed0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [edi + 0x14f74]
mov edx, dword [eax + edi + 0x2d8]
mov eax, dword [ecx + 0x18]
add dword [edx + 0x18], eax
mov eax, dword [ecx + 0x1c]
adc dword [edx + 0x1c], eax
mov edx, dword [ebp - 0xfa1]
mov ecx, dword [ebp - 0xfa5]
test edx, edx
jg 0x4d3f54
jl 0x4d3f3b
test ecx, ecx
jne 0x4d3f54
xorps xmm0, xmm0
movlpd qword [ebp - 0x3e84], xmm0
mov edx, dword [ebp - 0x3e80]
mov ecx, dword [ebp - 0x3e84]
jmp 0x4d3f7f
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x2d8]
mov esi, dword [eax + 0x18]
mov eax, dword [eax + 0x1c]
cmp edx, eax
jl 0x4d3f79
jg 0x4d3f75
cmp ecx, esi
jbe 0x4d3f79
mov ecx, esi
mov edx, eax
mov esi, dword [ebp - 0x3e50]
imul eax, dword [edi + 0x188], 0x980
push 9
push edi
mov eax, dword [eax + edi + 0x2d8]
sub dword [eax + 0x18], ecx
sbb dword [eax + 0x1c], edx
mov eax, dword [edi + 0x14f74]
mov dword [eax + 0x18], ecx
mov ecx, esi
mov dword [eax + 0x1c], edx
call fcn.004ddac0
push 8
push dword [ebp - 0x3e38]
mov ecx, esi
call fcn.004ddac0
push 1
mov ecx, esi
push edi
call fcn.004ddac0
jmp case.default.0x4d28f4
cmp eax, 0xfffffffd
jne case.default.0x4d28f4
mov ecx, dword [ebp - 0xfa1]
mov edx, dword [ebp - 0xfa5]
test ecx, ecx
jl 0x4d4028
jg 0x4d3fe9
test edx, edx
jb 0x4d403e
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x2d8]
mov esi, dword [eax + 0x18]
mov eax, dword [eax + 0x1c]
cmp ecx, eax
jl 0x4d400e
jg 0x4d400a
cmp edx, esi
jbe 0x4d400e
mov edx, esi
mov ecx, eax
mov eax, dword [edi + 0x14f78]
push ecx
push edx
push dword [eax + 0x1c]
push dword [eax + 0x18]
call fcn.0044db10
add esp, 0x10
mov ecx, eax
jmp 0x4d4089
test edx, edx
jne 0x4d403e
cmp ecx, 0x80000000
jne 0x4d403e
or edx, 0xffffffff
mov ecx, accept
jmp 0x4d4045
neg edx
adc ecx, 0
neg ecx
mov eax, dword [edi + 0x14f78]
mov esi, dword [eax + 0x18]
mov eax, dword [eax + 0x1c]
cmp ecx, eax
jl 0x4d405f
jg 0x4d405b
cmp edx, esi
jbe 0x4d405f
mov edx, esi
mov ecx, eax
imul eax, dword [edi + 0x188], 0x980
push ecx
push edx
mov eax, dword [eax + edi + 0x2d8]
push dword [eax + 0x1c]
push dword [eax + 0x18]
call fcn.0044db10
add esp, 0x10
mov ecx, eax
neg ecx
adc edx, 0
neg edx
imul eax, dword [edi + 0x188], 0x980
push 0xc
push edi
mov eax, dword [eax + edi + 0x2d8]
sub dword [eax + 0x18], ecx
sbb dword [eax + 0x1c], edx
mov eax, dword [edi + 0x14f78]
add dword [eax + 0x18], ecx
mov ecx, dword [ebp - 0x3e50]
adc dword [eax + 0x1c], edx
call fcn.004ddac0
mov ecx, dword [ebp - 0x3e50]
push 1
push edi
call fcn.004ddac0
jmp case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d40e3
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f6c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f6b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f6a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f69], al
mov byte [ebp - 0x3f68], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d416d
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d4180
lea eax, [ebp - 0x3f6c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4d4213
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x21c8], 0x17
push str.You_are_stunned__and_cannot_open_a_chest_
push eax
call fcn.0046d620
mov ecx, 0x18
mov eax, dword [ebp - 0x3e50]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x21c7]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e4c]
push edx
push 0
movsw word es:[edi], word [esi]
lea edx, [ebp - 0x21c8]
push edx
push 0x65
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x2164], 0
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
mov edi, dword [ebp - 0x3e3c]
mov ecx, edi
call fcn.0044c8d0
cmp eax, 1
jne 0x4d4317
mov ecx, dword [edi + 0x118]
push 0x3e8
push 0
push 0
call fcn.00515600
mov esi, eax
test esi, esi
je case.default.0x4d28f4
mov ecx, esi
call fcn.0044c8d0
cmp eax, 8
jne 0x4d42fd
cmp dword [ebp - 0xfaf], esi
jne 0x4d42fd
cmp byte [esi + 0x188], 0
jne 0x4d42bf
mov byte [esi + 0x188], 1
call dword [sym.imp.WINMM.dll_timeGetTime]
push 0
mov dword [esi + 0x190], eax
mov ecx, edi
push 5
lea eax, [ebp - 0x3ff0]
mov byte [ebp - 0x3ff0], 0x33
push eax
push 6
mov dword [ebp - 0x3fef], esi
mov byte [ebp - 0x3feb], 1
push dword [esi + 0x10c]
push dword [esi + 0x108]
push 0
call fcn.0052bf40
push esi
mov ecx, edi
call fcn.004ec980
jmp 0x4d42f2
lea eax, [ebp - 0x206b]
push str.The_chest_is_open_and_empty.
push eax
call fcn.0046d650
mov ecx, dword [edi + 0x11c]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov ecx, dword [edi + 0x118]
call fcn.00515940
mov ecx, dword [edi + 0x118]
call fcn.005156b0
mov esi, eax
test esi, esi
jne 0x4d4247
jmp case.default.0x4d28f4
lea eax, [ebp - 0x206b]
push str.You_cant_open_it.
push eax
call fcn.0046d650
mov ecx, dword [edi + 0x11c]
jmp 0x4d17ce
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d4349
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f74], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f73], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f72], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f71], al
mov byte [ebp - 0x3f70], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d43d3
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d43e6
lea eax, [ebp - 0x3f74]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4d4479
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x23d0], 0x17
push str.You_are_stunned__and_cannot_talk_to_the_tree_
push eax
call fcn.0046d620
mov ecx, 0x18
mov eax, dword [ebp - 0x3e50]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x23cf]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e4c]
push edx
push 0
movsw word es:[edi], word [esi]
lea edx, [ebp - 0x23d0]
push edx
push 0x65
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x236c], 0
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
lea eax, [ebp - 0xfb0]
mov ecx, esi
push eax
push dword [ebp - 0x3e3c]
push edi
call fcn.004d9140
jmp case.default.0x4d28f4
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d44a9
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f7c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f7b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f7a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f79], al
mov byte [ebp - 0x3f78], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d4533
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d4546
lea eax, [ebp - 0x3f7c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x3e85]
mov eax, dword [ecx]
push edx
push 1
mov eax, dword [eax + 4]
call eax
jmp case.0x4cd795.2
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d457d
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f84], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f83], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f82], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f81], al
mov byte [ebp - 0x3f80], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d4607
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d461a
lea eax, [ebp - 0x3f84]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
lea eax, [ebp - 0xfaf]
push 0x10
push eax
mov dword [ebp - 0x3e5c], edi
call fcn.0044cf90
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044ce30
lea eax, [ebp - 0xfaf]
push 1
push eax
call fcn.0044cc90
add esp, 0x14
test edi, edi
je case.default.0x4d28f4
cmp byte [ebp - 0xfaf], 0
je case.default.0x4d28f4
imul esi, dword [edi + 0x188], 0x980
cmp byte [esi + edi + 0x344], 0xff
je 0x4d4787
lea eax, [edi + 0x334]
add eax, esi
cmp byte [eax], 0
je 0x4d46d5
mov ecx, str.Pet_A
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4d46c0
test dl, dl
je 0x4d46bc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4d46c0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4d46a0
xor eax, eax
jmp 0x4d46c5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4d4787
lea eax, [edi + 0x334]
add eax, esi
push 0x10
push eax
lea eax, [ebp - 0xfaf]
push 0x10
push eax
call fcn.0044cdd0
mov byte [ebp - 0x20cc], 0x3a
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x20cb], eax
lea eax, [ebp - 0x20bf]
push 0x10
push eax
lea eax, [edi + 0x334]
add eax, esi
push 0x10
push eax
call fcn.0044cdd0
mov al, byte [esi + edi + 0x345]
add esp, 0x20
mov byte [ebp - 0x20c6], al
mov al, byte [esi + edi + 0x344]
mov byte [ebp - 0x20c7], al
mov al, byte [esi + edi + 0x346]
mov byte [ebp - 0x20c5], al
movss xmm1, dword [esi + edi + 0x354]
divss xmm1, dword [0x5d3bb8]
movzx eax, byte [esi + edi + 0x347]
mov ecx, dword [ebp - 0x3e3c]
push 0
push 5
mov byte [ebp - 0x20c4], 0
movd xmm0, eax
lea eax, [ebp - 0x20cc]
cvtdq2ps xmm0, xmm0
push eax
push 0x1d
addss xmm1, xmm0
movss dword [ebp - 0x20c3], xmm1
jmp 0x4d33a3
cmp byte [esi + edi + 0x378], 0xff
je case.default.0x4d28f4
lea eax, [edi + 0x368]
add eax, esi
cmp byte [eax], 0
je 0x4d47dc
mov ecx, str.Pet_B
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4d47c7
test dl, dl
je 0x4d47c3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4d47c7
add eax, 2
add ecx, 2
test dl, dl
jne 0x4d47a7
xor eax, eax
jmp 0x4d47cc
sbb eax, eax
or eax, 1
test eax, eax
jne case.default.0x4d28f4
lea eax, [edi + 0x368]
add eax, esi
push 0x10
push eax
lea eax, [ebp - 0xfaf]
push 0x10
push eax
call fcn.0044cdd0
mov byte [ebp - 0x210c], 0x3a
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x210b], eax
lea eax, [ebp - 0x20ff]
push 0x10
push eax
lea eax, [edi + 0x368]
add eax, esi
push 0x10
push eax
call fcn.0044cdd0
mov al, byte [esi + edi + 0x379]
add esp, 0x20
mov byte [ebp - 0x2106], al
mov al, byte [esi + edi + 0x378]
mov byte [ebp - 0x2107], al
mov al, byte [esi + edi + 0x37a]
mov byte [ebp - 0x2105], al
movss xmm1, dword [esi + edi + 0x388]
divss xmm1, dword [0x5d3bb8]
movzx eax, byte [esi + edi + 0x37b]
mov ecx, dword [ebp - 0x3e3c]
push 0
push 5
mov byte [ebp - 0x2104], 1
movd xmm0, eax
lea eax, [ebp - 0x210c]
cvtdq2ps xmm0, xmm0
push eax
push 0x1d
addss xmm1, xmm0
movss dword [ebp - 0x2103], xmm1
jmp 0x4d33a3
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d48a4
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f8c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f8b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f8a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f89], al
mov byte [ebp - 0x3f88], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d492e
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d4941
lea eax, [ebp - 0x3f8c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4d49d4
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x2298], 0x17
push str.You_are_stunned__and_cannot_feed_your_pet_
push eax
call fcn.0046d620
mov ecx, 0x18
mov eax, dword [ebp - 0x3e50]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x2297]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e4c]
push edx
push 0
movsw word es:[edi], word [esi]
lea edx, [ebp - 0x2298]
push edx
push 0x65
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x2234], 0
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
push dword [ebp - 0x3e3c]
lea eax, [ebp - 0xfb0]
mov ecx, esi
push edi
push eax
call fcn.004d7930
jmp case.default.0x4d28f4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je 0x4d4a31
cmp dword [edi + 0x14f34], 1
jne 0x4d4a31
push dword [ebp - 0x3e3c]
lea eax, [ebp - 0xfb0]
mov ecx, esi
push edi
push eax
call fcn.004b8e60
jmp case.default.0x4d28f4
mov ecx, edi
call fcn.0046fde0
cmp eax, 9
jle case.default.0x4d28f4
mov al, byte [ebp - 0xfaf]
cmp al, 5
je 0x4d4a53
cmp al, 4
jne case.default.0x4d28f4
push dword [ebp - 0x3e3c]
lea eax, [ebp - 0xfb0]
mov ecx, esi
push edi
push eax
call fcn.004b8e60
jmp case.default.0x4d28f4
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d4a83
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f94], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f93], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f92], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f91], al
mov byte [ebp - 0x3f90], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d4b0d
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d4b20
lea eax, [ebp - 0x3f94]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
push 5
mov dword [ebp - 0x3e5c], edi
call fcn.005596ac
mov edx, eax
add esp, 4
mov dword [ebp - 0x3e80], edx
test edx, edx
je 0x4d4b57
mov byte [edx], 0x3f
jmp 0x4d4b59
xor edx, edx
test edi, edi
je case.default.0x4d28f4
cmp byte [edi + 0x14fb8], 0
je case.default.0x4d28f4
mov eax, dword [edi + 0x238]
mov dword [edx + 1], eax
mov ecx, dword [esi + 0x34]
lea esi, [ebp - 0x3e4c]
push esi
push 0
push edx
mov eax, dword [ecx]
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
mov eax, dword [ebp - 0xfaf]
mov dword [edi + 0x238], eax
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d4bd8
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f9c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f9b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f9a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f99], al
mov byte [ebp - 0x3f98], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d4c81
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
lea edx, [ebp - 0x3e4c]
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0xfb0]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
lea eax, [ebp - 0x3f9c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0xfb0]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e3c]
push 1
push dword [ebp - 0xfae]
mov ecx, dword [ecx + 0x118]
call fcn.00515750
mov esi, eax
test esi, esi
je case.default.0x4d28f4
mov ecx, dword [esi + 0x108]
cmp ecx, dword [edi + 0x108]
jne case.default.0x4d28f4
mov ecx, dword [esi + 0x10c]
cmp ecx, dword [edi + 0x10c]
jne case.default.0x4d28f4
mov ecx, esi
call fcn.0044c8d0
cmp eax, 2
jne case.default.0x4d28f4
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2d8]
mov eax, dword [esi + 0x180]
mov dword [ecx + 0x20], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x3e50]
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x24], 0
movzx eax, byte [ebp - 0xfaf]
push eax
push esi
push edi
call fcn.004d8050
jmp case.default.0x4d28f4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
mov al, byte [ebp - 0xfaf]
test al, al
je 0x4d4dbe
cmp al, 3
jne 0x4d4dbe
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4d4dd0
push dword [ebp - 0x3e3c]
mov ecx, edi
call fcn.0046de50
jmp case.default.0x4d28f4
mov dword [edi + 0x14f80], 1
mov eax, dword [edi + 0x14f7c]
test eax, eax
je case.default.0x4d28f4
lea ecx, [ebp - 0x41c4]
push ecx
push eax
mov ecx, esi
call fcn.004b8820
test eax, eax
je case.default.0x4d28f4
cmp dword [eax + 0x14f80], 0
je case.default.0x4d28f4
push dword [ebp - 0x3e3c]
mov ecx, edi
call fcn.0047b6e0
jmp case.default.0x4d28f4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
lea eax, [ebp - 0xfb0]
mov ecx, esi
push eax
push edi
call fcn.004cc920
jmp case.default.0x4d28f4
mov eax, dword [str.Simple_avatars_OFF]
mov dword [0x62f144], eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044c540
add esp, 4
mov ecx, esi
push dword [ebp - 0x3e54]
call fcn.004b8d00
mov dword [ebp - 0x3e5c], eax
jmp case.0x4cd795.2
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d4e9d
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3fa4], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3fa3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3fa2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3fa1], al
mov byte [ebp - 0x3fa0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d4f27
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d4f3a
lea eax, [ebp - 0x3fa4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4d4fcd
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x2300], 0x17
push str.You_are_stunned__and_cant_do_that_
push eax
call fcn.0046d620
mov ecx, 0x18
mov eax, dword [ebp - 0x3e50]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x22ff]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e4c]
push edx
push 0
movsw word es:[edi], word [esi]
lea edx, [ebp - 0x2300]
push edx
push 0x65
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x229c], 0
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
imul eax, dword [edi + 0x188], 0x980
xor esi, esi
mov dword [ebp - 0x3e68], esi
mov eax, dword [eax + edi + 0x2d8]
add eax, 8
mov ecx, eax
mov dword [ebp - 0x3e58], eax
call fcn.0044e020
mov esi, eax
mov dword [ebp - 0x3e6c], esi
test esi, esi
je case.default.0x4d28f4
nop word [eax + eax]
cmp dword [ebp - 0xfaf], esi
jne 0x4d6ffe
mov eax, dword [esi + 0x110]
cmp eax, 0xd
jne 0x4d521d
cmp byte [edi + 0x14fb9], 0
je 0x4d504c
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2f0], 0xa
jl 0x4d701e
mov eax, dword [esi + 0x11c]
push 0x1a0
mov dword [ebp - 0x3e40], eax
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x41c0], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x4d507f
push edi
mov ecx, eax
call fcn.0048db00
mov esi, eax
jmp 0x4d5081
xor esi, esi
mov eax, dword [edi + 0x108]
mov ecx, dword [ebp - 0x3e40]
mov dword [esi + 0x108], eax
mov eax, dword [edi + 0x10c]
mov dword [esi + 0x10c], eax
mov eax, dword [ecx + 8]
mov dword [esi + 0x184], eax
mov eax, dword [ecx + 0x10]
mov dword [esi + 0x188], eax
mov eax, dword [ecx + 0x14]
mov dword [esi + 0x18c], eax
mov eax, dword [ecx + 0x18]
mov dword [esi + 0x190], eax
mov eax, dword [ecx + 0x1c]
mov dword [esi + 0x194], eax
mov eax, dword [ecx]
mov byte [ebp - 4], 0
mov dword [esi + 0x180], eax
call dword [sym.imp.WINMM.dll_timeGetTime]
mov ecx, dword [ebp - 0x3e40]
imul ecx, dword [ecx + 0xc], 0x3e8
add eax, ecx
mov dword [esi + 0x198], eax
call fcn.00568dab
xorps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mov eax, dword [ebp - 0x3e40]
divss xmm0, dword [0x5d6e8c]
addss xmm0, xmm1
comiss xmm0, dword [eax + 4]
jbe 0x4d5126
call dword [sym.imp.WINMM.dll_timeGetTime]
mov dword [esi + 0x198], eax
mov ecx, dword [ebp - 0x3e3c]
push esi
mov ecx, dword [ecx + 0x118]
call fcn.005155e0
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x13b0]
push str._s_sets_a_bomb_
push eax
call fcn.0046d620
push 0x64
lea eax, [ebp - 0x206b]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x3e3c]
lea eax, [ebp - 0x206c]
add esp, 0x1c
push 0
push 5
push eax
push 0x65
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.0052bf40
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
mov ecx, dword [ebp - 0x3e3c]
mov byte [ebp - 0x3fe8], 0x18
mov eax, dword [esi + 4]
mov dword [ebp - 0x3fe7], eax
xor eax, eax
mov dword [ebp - 0x3fe2], eax
mov byte [ebp - 0x3fde], al
mov byte [ebp - 0x3fe3], 0xc
mov al, byte [esi + 0x108]
mov byte [ebp - 0x3fdd], al
mov al, byte [esi + 0x10c]
push 0
push 5
mov byte [ebp - 0x3fdc], al
lea eax, [ebp - 0x3fe8]
push eax
push 0xd
push dword [esi + 0x10c]
push dword [esi + 0x108]
push 0
call fcn.0052bf40
jmp 0x4d6ffe
cmp eax, 3
jne 0x4d65a5
mov esi, dword [esi + 0x11c]
mov eax, dword [esi]
test eax, eax
je 0x4d61c0
cmp eax, 1
je 0x4d61c0
cmp eax, 2
jne 0x4d564d
lea eax, [ebp - 0x40a4]
push eax
push dword [esi + 4]
mov esi, dword [ebp - 0x3e50]
mov ecx, esi
call fcn.004b8c80
test eax, eax
je 0x4d6589
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x20], 0
cmp dword [edi + 0x14f70], 0
je 0x4d5366
cmp dword [edi + 0x184], 0
jne 0x4d5366
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
mov byte [ebp - 0x4160], 0x3e
cmp ecx, eax
je 0x4d52b6
mov dword [ebp - 0x3e48], ecx
mov edx, dword [edi + 0x180]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3fac], dl
sar eax, 8
mov byte [ebp - 0x3fab], al
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3faa], al
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3fa9], al
mov byte [ebp - 0x3fa8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d531a
mov byte [ecx], dl
mov eax, edx
shr eax, 8
mov byte [ecx + 1], al
mov eax, edx
shr eax, 0x10
mov byte [ecx + 2], al
shr edx, 0x18
mov byte [ecx + 3], dl
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d532d
lea eax, [ebp - 0x3fac]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
mov byte [ebp - 0x415f], 2
lea edx, [ebp - 0x3e4c]
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x4160]
mov eax, dword [ecx]
push edx
push 0xa
mov eax, dword [eax + 4]
call eax
mov ecx, edi
call fcn.0046fde0
cmp eax, 9
jle 0x4d5366
mov dword [edi + 0x184], 1
mov esi, dword [ebp - 0x3e3c]
mov ecx, edi
push 6
push esi
call fcn.0046e3f0
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d538c
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3fb4], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3fb3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3fb2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e68], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3fb1], al
mov byte [ebp - 0x3fb0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d5416
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e68]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d5429
lea eax, [ebp - 0x3fb4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
cmp dword [edi + 0x14f70], 0
je 0x4d547e
push 0
mov byte [ebp - 0x407c], 0x23
lea ecx, [ebp - 0x407c]
mov eax, dword [edi + 0x14f70]
push 5
mov dword [ebp - 0x407b], eax
mov eax, dword [edi + 0x14f70]
push ecx
push 5
mov ecx, esi
push dword [eax + 0x10c]
push dword [eax + 0x108]
push 0
call fcn.0052bf40
push dword [edi + 0x14f70]
mov ecx, dword [esi + 0x118]
call fcn.00515890
mov ecx, dword [esi + 0x110]
push edi
call fcn.0044e210
mov esi, dword [ebp - 0x40a4]
mov dword [edi + 0x110], 4
mov dword [edi + 0x108], 4
mov dword [edi + 0x114], 4
mov dword [edi + 0x10c], 4
mov ecx, dword [esi + 0x110]
push edi
call fcn.0044de70
mov ecx, dword [edi + 0x14f70]
test ecx, ecx
je 0x4d5521
mov eax, dword [edi + 0x108]
mov dword [ecx + 0x110], eax
mov ecx, dword [edi + 0x14f70]
mov eax, dword [ecx + 0x110]
mov dword [ecx + 0x108], eax
mov ecx, dword [edi + 0x14f70]
mov eax, dword [edi + 0x10c]
mov dword [ecx + 0x114], eax
mov ecx, dword [edi + 0x14f70]
mov eax, dword [ecx + 0x114]
mov dword [ecx + 0x10c], eax
push dword [edi + 0x14f70]
mov ecx, dword [esi + 0x118]
call fcn.005155e0
mov ecx, dword [ebp - 0x3e3c]
mov byte [ebp - 0x40cd], 0
mov byte [ebp - 0x40dc], 0x2b
mov dword [ebp - 0x40d1], esi
call fcn.0044c8d0
mov ecx, esi
mov byte [ebp - 0x40db], al
call fcn.0044c8d0
mov byte [ebp - 0x40da], al
lea edx, [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e50]
mov dword [ebp - 0x40d9], 5
mov dword [ebp - 0x40d5], 5
mov dword [ebp - 0x40cc], 0
mov ecx, dword [eax + 0x34]
push edx
push 0
lea edx, [ebp - 0x40dc]
mov eax, dword [ecx]
push edx
push 0x14
mov eax, dword [eax + 4]
call eax
mov ecx, esi
mov byte [ebp - 0x2488], 0x17
call fcn.0044c8e0
push eax
lea eax, [ebp - 0x13b0]
push str.You_enter_the_guild_tower_of__s.
push eax
call fcn.0046d620
push 0x64
lea eax, [ebp - 0x2487]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x3e50]
lea edx, [ebp - 0x3e4c]
add esp, 0x1c
mov ecx, dword [eax + 0x34]
push edx
push 0
lea edx, [ebp - 0x2488]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
push esi
push dword [ebp - 0x3e3c]
mov ecx, edi
call fcn.004866d0
lea ecx, [esi + 0x148]
call fcn.00515400
push 6
push esi
mov ecx, edi
call fcn.0047e4e0
mov ecx, dword [edi + 0x14f70]
test ecx, ecx
je 0x4d5625
push esi
call fcn.00493770
push 0
push 1
push esi
mov ecx, edi
call fcn.0048ce20
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6ffe
cmp eax, 3
jne 0x4d6589
mov esi, dword [ebp - 0x3e3c]
xor eax, eax
push eax
push dword [edi + 0x10c]
mov dword [ebp - 0x3e40], eax
push dword [edi + 0x108]
mov ecx, dword [esi + 0x118]
call fcn.00515600
test eax, eax
je 0x4d57c1
mov ecx, eax
call fcn.0044c8d0
cmp eax, 2
jne 0x4d5784
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d56aa
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3fbc], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3fbb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3fba], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e68], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3fb9], al
mov byte [ebp - 0x3fb8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d5734
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e68]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d5747
lea eax, [ebp - 0x3fbc]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
lea eax, [ebp - 0x206b]
push str.Theres_already_a_merchant_in_your_square.
push eax
call fcn.0046d650
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov dword [ebp - 0x3e40], 1
mov ecx, dword [esi + 0x118]
call fcn.005156b0
test eax, eax
jne 0x4d5684
cmp dword [ebp - 0x3e40], eax
je 0x4d57c1
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
inc dword [eax + 0x118]
call fcn.0044e090
jmp 0x4d6ffe
push 0x990
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x41bc], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x4d57ed
push 2
mov ecx, eax
call fcn.0049c340
mov dword [ebp - 0x3e68], eax
jmp 0x4d57f7
mov dword [ebp - 0x3e68], 0
mov eax, str.Mangel
mov byte [ebp - 4], 0
mov dword [ebp - 0x3e40], 0
mov dword [ebp - 0x3e38], eax
push eax
lea eax, [ebp - 0x1ab0]
push str._s_Recall
push eax
call fcn.0043d380
push 0x120
call fcn.005596ac
add esp, 0x10
mov dword [ebp - 0x41b4], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x4d5853
lea ecx, [ebp - 0x1ab0]
push ecx
push 0
push 3
mov ecx, eax
call fcn.0050ce40
mov esi, eax
jmp 0x4d5855
xor esi, esi
mov eax, dword [esi + 0x11c]
mov ecx, dword [ebp - 0x3e40]
mov byte [ebp - 4], 0
mov dword [eax], 0
mov dword [eax + 4], ecx
mov dword [esi + 0x108], 0
mov dword [esi + 0x10c], 0x447a0000
call fcn.00568dab
cdq
mov ecx, 0xa
idiv ecx
mov eax, dword [ebp - 0x3e68]
add edx, 0x14
mov dword [esi + 0x118], edx
push esi
mov ecx, dword [eax + 0x180]
call fcn.0050da90
mov eax, dword [ebp - 0x3e38]
inc dword [ebp - 0x3e40]
add eax, 0x50
mov dword [ebp - 0x3e38], eax
cmp eax, str.Dirk
jl 0x4d5810
mov edi, dword [ebp - 0x3e68]
xor esi, esi
call fcn.00568dab
cdq
mov ecx, 0xc
idiv ecx
push 0x120
mov dword [ebp - 0x3e40], edx
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x41b0], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x4d591a
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce40
mov edx, eax
mov dword [ebp - 0x3e38], eax
jmp 0x4d5922
xor edx, edx
mov dword [ebp - 0x3e38], edx
mov eax, dword [edx + 0x11c]
mov ecx, dword [ebp - 0x3e40]
mov byte [ebp - 4], 0
mov dword [eax], ecx
mov ecx, esi
imul ecx, esi
mov dword [eax + 4], esi
mov dword [edx + 0x108], 0
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 1]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edx + 0x10c], xmm0
cmp esi, 0xc
jbe 0x4d5991
lea eax, [esi*8]
sub eax, esi
lea eax, [eax*2 + 0x640]
imul eax, esi
sub eax, 0x4aff
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edx + 0x10c], xmm0
push edx
mov dword [edx + 0x118], 0xa
call fcn.0052fcf0
mov ecx, dword [edi + 0x180]
add esp, 4
push dword [ebp - 0x3e38]
call fcn.0050da90
inc esi
cmp esi, 0x11
jl 0x4d58d2
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x41ac], eax
mov byte [ebp - 4], 0x13
test eax, eax
je 0x4d59ee
push str.Charcoal_Brick
push 0
push 0xb
mov ecx, eax
call fcn.0050ce40
mov esi, eax
jmp 0x4d59f0
xor esi, esi
mov eax, dword [esi + 0x11c]
mov byte [ebp - 4], 0
mov dword [eax], 0
mov dword [eax + 4], 0x3f800000
mov dword [esi + 0x10c], 0x41200000
call fcn.00568dab
cdq
mov ecx, 0x1e
idiv ecx
push esi
add edx, 0x2bc
mov dword [esi + 0x118], edx
mov esi, dword [ebp - 0x3e68]
mov ecx, dword [esi + 0x180]
call fcn.0050da90
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x41a8], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x4d5a71
push str.Twisted_Paper
push 0
push 0xc
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
mov dword [ebp - 0x3e38], eax
jmp 0x4d5a79
xor ecx, ecx
mov dword [ebp - 0x3e38], ecx
mov eax, dword [ecx + 0x11c]
mov byte [ebp - 4], 0
mov dword [eax], 0
mov dword [eax + 4], 0x3f800000
mov dword [ecx + 0x10c], 0x41200000
call fcn.00568dab
cdq
mov ecx, 0x1e
idiv ecx
mov eax, dword [ebp - 0x3e38]
add edx, 0x2bc
push eax
mov dword [eax + 0x118], edx
mov ecx, dword [esi + 0x180]
call fcn.0050da90
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x41a4], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x4d5af2
push str.Ancient_Dragonscale
push 0
push 0
mov ecx, eax
call fcn.0050ce40
jmp 0x4d5af4
xor eax, eax
mov dword [ebp - 0x3e38], eax
mov byte [ebp - 4], 0
mov dword [eax + 0x10c], 0x47c35000
call fcn.00568dab
cdq
mov ecx, 0x1e
idiv ecx
mov eax, dword [ebp - 0x3e38]
add edx, 0x28
push eax
mov dword [eax + 0x118], edx
mov ecx, dword [esi + 0x180]
call fcn.0050da90
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x419c], eax
mov byte [ebp - 4], 0x16
test eax, eax
je 0x4d5b5d
push str.Dragon_Orchid
push 0
push 0
mov ecx, eax
call fcn.0050ce40
jmp 0x4d5b5f
xor eax, eax
mov dword [ebp - 0x3e38], eax
mov byte [ebp - 4], 0
mov dword [eax + 0x10c], 0x461c4000
call fcn.00568dab
cdq
mov ecx, 0x1e
idiv ecx
mov eax, dword [ebp - 0x3e38]
add edx, 0x32
push eax
mov dword [eax + 0x118], edx
mov ecx, dword [esi + 0x180]
call fcn.0050da90
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x4198], eax
mov byte [ebp - 4], 0x17
test eax, eax
je 0x4d5bc8
push str.Demon_Amulet
push 0
push 0
mov ecx, eax
call fcn.0050ce40
jmp 0x4d5bca
xor eax, eax
mov dword [eax + 0x10c], 0x47435000
mov dword [eax + 0x118], 0x14
mov ecx, dword [esi + 0x180]
push eax
mov byte [ebp - 4], 0
call fcn.0050da90
mov dword [ebp - 0x3e38], 0
mov dword [ebp - 0x3e40], 0x1f4
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x4194], eax
mov byte [ebp - 4], 0x18
test eax, eax
je 0x4d5c31
push str.Unnamed_Staff
push 0
push 0xe
mov ecx, eax
call fcn.0050ce40
mov esi, eax
jmp 0x4d5c33
xor esi, esi
mov eax, dword [esi + 0x11c]
mov ecx, dword [ebp - 0x3e38]
mov byte [ebp - 4], 0
mov dword [eax], 0
mov dword [eax + 4], ecx
inc ecx
mov eax, ecx
mov dword [esi + 0x108], 0
imul eax, dword [ebp - 0x3e40]
mov dword [ebp - 0x3e38], ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
call fcn.00568dab
mov ecx, 0xa
cdq
idiv ecx
push ecx
inc edx
mov dword [esp], 0
push esi
mov dword [esi + 0x118], edx
call fcn.0052d880
add esp, 8
push esi
mov esi, dword [ebp - 0x3e68]
mov ecx, dword [esi + 0x180]
call fcn.0050da90
mov eax, dword [ebp - 0x3e40]
add eax, 0x1f4
mov dword [ebp - 0x3e40], eax
cmp eax, 0x7d0
jl 0x4d5c02
mov eax, str.Plain
mov edi, 1
mov dword [ebp - 0x3e38], eax
nop dword [eax + eax]
push eax
lea eax, [ebp - 0x1ab0]
push str._s_Bead
push eax
call fcn.0043d380
push 0x120
call fcn.005596ac
add esp, 0x10
mov dword [ebp - 0x418c], eax
mov byte [ebp - 4], 0x19
test eax, eax
je 0x4d5d23
lea ecx, [ebp - 0x1ab0]
push ecx
push 0
push 0x10
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x4d5d25
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
xor edx, edx
movd xmm0, edi
cvtdq2ps xmm0, xmm0
push ecx
mov dword [eax], 0
mov byte [ebp - 4], 0
movss dword [eax + 4], xmm0
mov eax, edi
imul eax, edi
mov dword [ecx + 0x108], 0
imul eax, eax, 0x3e8
movd xmm0, eax
mov eax, 0x190
div edi
cvtdq2ps xmm0, xmm0
movss dword [ecx + 0x10c], xmm0
mov dword [ecx + 0x118], eax
mov ecx, dword [esi + 0x180]
call fcn.0050da90
mov eax, dword [ebp - 0x3e38]
inc edi
add eax, 0x20
mov dword [ebp - 0x3e38], eax
cmp eax, str.Fiery
jl 0x4d5ce0
mov edi, dword [ebp - 0x3e5c]
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x4190], eax
mov byte [ebp - 4], 0x1a
test eax, eax
je 0x4d5dd0
push str.Tin_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x4d5dd2
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
push ecx
mov byte [ebp - 4], 0
mov dword [eax + 0xc], 0x3f800000
mov dword [eax + 0x10], 0x3f800000
mov dword [eax], 0x80
mov dword [eax + 4], 0x80
mov dword [eax + 8], 0x80
mov dword [ecx + 0x108], 0x3f800000
mov dword [ecx + 0x10c], 0x3f800000
mov dword [ecx + 0x118], 0x190
mov ecx, dword [esi + 0x180]
call fcn.0050da90
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x4188], eax
mov byte [ebp - 4], 0x1b
test eax, eax
je 0x4d5e57
push str.Aluminum_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x4d5e59
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
push ecx
mov byte [ebp - 4], 0
mov dword [eax + 0xc], 0x40000000
mov dword [eax + 0x10], 0x40000000
mov dword [eax], 0xa8
mov dword [eax + 4], 0xa8
mov dword [eax + 8], 0xa8
mov dword [ecx + 0x108], 0x3f800000
mov dword [ecx + 0x10c], 0x40a00000
mov dword [ecx + 0x118], 0x190
mov ecx, dword [esi + 0x180]
call fcn.0050da90
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x4184], eax
mov byte [ebp - 4], 0x1c
test eax, eax
je 0x4d5ede
push str.Steel_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x4d5ee0
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
push ecx
mov byte [ebp - 4], 0
mov dword [eax + 0xc], 0x40400000
mov dword [eax + 0x10], 0x40400000
mov dword [eax], 0xe4
mov dword [eax + 4], 0x80
mov dword [eax + 8], 0x80
mov dword [ecx + 0x108], 0x3f800000
mov dword [ecx + 0x10c], 0x41700000
mov dword [ecx + 0x118], 0x190
mov ecx, dword [esi + 0x180]
call fcn.0050da90
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x4180], eax
mov byte [ebp - 4], 0x1d
test eax, eax
je 0x4d5f65
push str.Carbon_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x4d5f67
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
push ecx
mov byte [ebp - 4], 0
mov dword [eax + 0xc], 0x40800000
mov dword [eax + 0x10], 0x40800000
mov dword [eax], 0x80
mov dword [eax + 4], 0x80
mov dword [eax + 8], 0xe4
mov dword [ecx + 0x108], 0x3f800000
mov dword [ecx + 0x10c], 0x42480000
mov dword [ecx + 0x118], 0x190
mov ecx, dword [esi + 0x180]
call fcn.0050da90
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x417c], eax
mov byte [ebp - 4], 0x1e
test eax, eax
je 0x4d5fec
push str.Zinc_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x4d5fee
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
push ecx
mov byte [ebp - 4], 0
mov dword [eax + 0xc], 0x40a00000
mov dword [eax + 0x10], 0x40a00000
mov dword [eax], 0x80
mov dword [eax + 4], 0xe4
mov dword [eax + 8], 0x80
mov dword [ecx + 0x108], 0x3f800000
mov dword [ecx + 0x10c], 0x437a0000
mov dword [ecx + 0x118], 0x190
mov ecx, dword [esi + 0x180]
call fcn.0050da90
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x4178], eax
mov byte [ebp - 4], 0x1f
test eax, eax
je 0x4d6073
push str.Adamantium_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x4d6075
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
push ecx
mov byte [ebp - 4], 0
mov dword [eax + 0xc], 0x40c00000
mov dword [eax + 0x10], 0x40c00000
mov dword [eax], 0x1c
mov dword [eax + 4], 0x1c
mov dword [eax + 8], 0x30
mov dword [ecx + 0x108], 0x3f800000
mov dword [ecx + 0x10c], 0x447a0000
mov dword [ecx + 0x118], 0x190
mov ecx, dword [esi + 0x180]
call fcn.0050da90
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x4170], eax
mov byte [ebp - 4], 0x20
test eax, eax
je 0x4d60fa
push str.Mithril_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x4d60fc
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
push ecx
mov byte [ebp - 4], 0
mov dword [eax + 0xc], 0x40e00000
mov dword [eax + 0x10], 0x40e00000
mov dword [eax], 0xe4
mov dword [eax + 4], 0xe4
mov dword [eax + 8], 0xe4
mov dword [ecx + 0x108], 0x3f800000
mov dword [ecx + 0x10c], 0x461c4000
mov dword [ecx + 0x118], 0x190
mov ecx, dword [esi + 0x180]
call fcn.0050da90
mov dword [esi + 0x184], 0
mov dword [esi + 0x188], 0
mov eax, dword [edi + 0x108]
mov dword [esi + 0x108], eax
mov eax, dword [edi + 0x10c]
mov dword [esi + 0x10c], eax
push esi
mov esi, dword [ebp - 0x3e3c]
mov ecx, dword [esi + 0x118]
call fcn.005155e0
push esi
push dword [edi + 0x10c]
mov ecx, edi
push dword [edi + 0x108]
call fcn.0047d670
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6ffe
cmp dword [edi + 0x14f70], 0
je 0x4d62ad
cmp dword [edi + 0x184], 0
jne 0x4d62ad
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
mov byte [ebp - 0x416c], 0x3e
cmp ecx, eax
je 0x4d61f7
mov dword [ebp - 0x3e48], ecx
mov edx, dword [edi + 0x180]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3fc4], dl
sar eax, 8
mov byte [ebp - 0x3fc3], al
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3fc2], al
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3fc1], al
mov byte [ebp - 0x3fc0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d625b
mov byte [ecx], dl
mov eax, edx
shr eax, 8
mov byte [ecx + 1], al
mov eax, edx
shr eax, 0x10
mov byte [ecx + 2], al
shr edx, 0x18
mov byte [ecx + 3], dl
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d626e
lea eax, [ebp - 0x3fc4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
mov eax, dword [ebp - 0x3e50]
lea edx, [ebp - 0x3e4c]
mov byte [ebp - 0x416b], 2
push edx
push 0
mov ecx, dword [eax + 0x34]
lea edx, [ebp - 0x416c]
push edx
push 0xa
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov ecx, edi
call fcn.0046fde0
cmp eax, 9
jle 0x4d62ad
mov dword [edi + 0x184], 1
push dword [ebp - 0x3e54]
mov ecx, dword [ebp - 0x3e50]
push 0
call fcn.004e2c10
cmp dword [edi + 0x14f70], 0
je 0x4d631f
push 0
mov byte [ebp - 0x4084], 0x23
lea ecx, [ebp - 0x4084]
mov eax, dword [edi + 0x14f70]
push 5
mov dword [ebp - 0x4083], eax
mov eax, dword [edi + 0x14f70]
push ecx
mov ecx, dword [ebp - 0x3e3c]
push 5
push dword [eax + 0x10c]
push dword [eax + 0x108]
push 0
call fcn.0052bf40
mov eax, dword [ebp - 0x3e3c]
push dword [edi + 0x14f70]
mov ecx, dword [eax + 0x118]
call fcn.00515890
push 0
push 0
mov ecx, edi
call fcn.004866d0
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d6340
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3e9c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3e9b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3e9a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e68], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3e99], al
mov byte [ebp - 0x3e98], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d63ca
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e68]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d63dd
lea eax, [ebp - 0x3e9c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
mov ecx, dword [ebp - 0x3e3c]
mov byte [ebp - 0x40f0], 0x2b
call fcn.0044c8d0
mov byte [ebp - 0x40ef], al
lea edx, [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e50]
mov byte [ebp - 0x40ee], 0
mov dword [ebp - 0x40ed], 0x100
mov dword [ebp - 0x40e9], 0x100
mov dword [ebp - 0x40e0], 0
mov byte [ebp - 0x40e1], 0
mov ecx, dword [eax + 0x34]
push edx
push 0
lea edx, [ebp - 0x40f0]
mov eax, dword [ecx]
push edx
push 0x14
mov eax, dword [eax + 4]
call eax
mov eax, dword [esi]
test eax, eax
jne 0x4d6503
mov eax, dword [esi + 4]
lea eax, [eax + eax*4]
shl eax, 4
mov eax, dword [eax + 0x6122b0]
mov dword [edi + 0x110], eax
mov dword [edi + 0x108], eax
mov eax, dword [esi + 4]
lea eax, [eax + eax*4]
shl eax, 4
mov eax, dword [eax + 0x6122b4]
mov dword [edi + 0x114], eax
mov dword [edi + 0x10c], eax
mov eax, dword [esi + 4]
imul ecx, dword [edi + 0x188], 0x980
lea eax, [eax + eax*4]
shl eax, 4
mov eax, dword [eax + 0x6122b0]
mov dword [ecx + edi + 0x310], eax
mov eax, dword [esi + 4]
imul ecx, dword [edi + 0x188], 0x980
lea eax, [eax + eax*4]
shl eax, 4
mov eax, dword [eax + 0x6122b4]
mov dword [ecx + edi + 0x314], eax
mov ecx, dword [edi + 0x14f70]
test ecx, ecx
je 0x4d6554
mov eax, dword [esi + 4]
lea eax, [eax + eax*4]
shl eax, 4
mov eax, dword [eax + 0x6122b0]
mov dword [ecx + 0x108], eax
mov eax, dword [esi + 4]
mov ecx, dword [edi + 0x14f70]
lea eax, [eax + eax*4]
shl eax, 4
mov eax, dword [eax + 0x6122b4]
mov dword [ecx + 0x10c], eax
jmp 0x4d6554
cmp eax, 1
jne 0x4d6554
cmp dword [esi + 4], eax
mov edx, 0x5a
mov esi, 0xdc
mov ecx, 0x35
cmovne edx, esi
cmovne ecx, esi
mov dword [edi + 0x110], edx
mov dword [edi + 0x108], edx
mov dword [edi + 0x114], ecx
mov dword [edi + 0x10c], ecx
mov eax, dword [edi + 0x14f70]
test eax, eax
je 0x4d6554
mov dword [eax + 0x108], edx
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x10c], ecx
mov esi, dword [ebp - 0x3e50]
push 0
mov ecx, dword [esi + 0x48]
call fcn.0044df00
mov ecx, dword [edi + 0x14f70]
test ecx, ecx
je 0x4d657a
push ecx
mov ecx, dword [eax + 0x118]
call fcn.005155e0
push dword [ebp - 0x3e54]
mov ecx, esi
push 1
call fcn.004e2c10
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6ffe
cmp eax, 0x11
je 0x4d6b94
cmp eax, 0x14
je 0x4d6b94
cmp eax, 0x12
je 0x4d6a2a
cmp eax, 0x13
je 0x4d6a2a
cmp eax, 0x15
jne 0x4d6ffe
mov eax, dword [esi + 0x11c]
mov ecx, dword [ebp - 0x3e4c]
mov dword [ebp - 0x3e38], eax
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d65f4
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ea4], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ea3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e70], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3ea2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e80], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ea1], al
mov byte [ebp - 0x3ea0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d667e
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e70]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e80]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d6691
lea eax, [ebp - 0x3ea4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
mov eax, dword [ebp - 0x3e50]
mov byte [ebp - 0x3fd0], 0
mov ecx, dword [eax + 0x48]
call fcn.0044e020
cmp dword [ebp - 0x3e3c], eax
jne 0x4d70b4
mov ecx, 0x6122b4
mov esi, 1
nop dword [eax]
mov eax, dword [ecx - 4]
sub eax, dword [edi + 0x108]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jg 0x4d66f7
mov eax, dword [ecx]
sub eax, dword [edi + 0x10c]
cdq
xor eax, edx
sub eax, edx
mov edx, dword [ebp - 0x3fd0]
cmp eax, 3
movzx edx, dl
cmovle edx, esi
mov dword [ebp - 0x3fd0], edx
jmp 0x4d66fd
mov edx, dword [ebp - 0x3fd0]
add ecx, 0x50
cmp ecx, 0x612a34
jl 0x4d66c0
mov esi, dword [ebp - 0x3e3c]
test dl, dl
je 0x4d70b4
cmp dword [edi + 0x14f70], 0
jne 0x4d7083
mov edx, dword [ebp - 0x3e38]
mov eax, dword [edx]
mov ecx, dword [edx + 4]
movss xmm0, dword [edx + 0x20]
mov dword [ebp - 0x3e70], eax
lea eax, [eax + eax*2]
mov dword [ebp - 0x3e80], ecx
lea eax, [ecx + eax*2]
movss dword [ebp - 0x3e40], xmm0
imul eax, eax, 0x64
cmp byte [eax + str.Ghost], 0
je 0x4d6b78
push 0x2c8
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x4174], eax
mov byte [ebp - 4], 0x21
test eax, eax
je 0x4d6797
push 0
push 0
push dword [ebp - 0x3e80]
mov ecx, eax
push dword [ebp - 0x3e70]
call fcn.00492f80
mov dword [ebp - 0x3e68], eax
jmp 0x4d67a1
mov dword [ebp - 0x3e68], 0
lea eax, [ebp - 0x13b0]
mov byte [ebp - 4], 0
push eax
mov eax, dword [ebp - 0x3e6c]
add eax, 8
push str._s____n_
push eax
call fcn.0043dd20
lea eax, [ebp - 0x13b0]
push eax
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x1eb0]
push str._ss__s
push eax
call fcn.0043d380
mov eax, dword [ebp - 0x3e68]
push 0x1f
add eax, 0x184
push eax
lea eax, [ebp - 0x1eb0]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x3e68]
add esp, 0x2c
mov edx, dword [ebp - 0x3e38]
movss xmm0, dword [ebp - 0x3e40]
mov byte [ecx + 0x1dd], 1
mov eax, dword [edi + 0x108]
mov dword [ecx + 0x108], eax
mov eax, dword [edi + 0x10c]
mov dword [ecx + 0x10c], eax
mov eax, dword [edi + 0x108]
mov dword [ecx + 0x110], eax
mov eax, dword [edi + 0x10c]
mov dword [ecx + 0x114], eax
mov eax, dword [edi + 0x108]
mov dword [ecx + 0x228], eax
mov eax, dword [edi + 0x10c]
mov dword [ecx + 0x22c], eax
mov eax, dword [edx + 0x10]
mov dword [ecx + 0x1b4], eax
mov eax, dword [edx + 0x14]
mov dword [ecx + 0x1bc], eax
mov eax, dword [edx + 8]
mov dword [ecx + 0x1ac], eax
mov eax, dword [edx + 8]
mov dword [ecx + 0x1b0], eax
mov eax, dword [edx + 0x18]
mov dword [ecx + 0x1b8], eax
mov al, byte [edx + 0x27]
mov byte [ecx + 0x1a7], al
mov al, byte [edx + 0x26]
mov byte [ecx + 0x1a6], al
mov al, byte [edx + 0x25]
mov byte [ecx + 0x1a5], al
mov al, byte [edx + 0x24]
mov byte [ecx + 0x1a4], al
mov eax, dword [edx + 0x28]
mov dword [ecx + 0x1a8], eax
movss dword [ecx + 0x1f4], xmm0
push ecx
mov ecx, dword [esi + 0x118]
call fcn.005155e0
mov ecx, dword [ebp - 0x3e68]
mov dword [ecx + 0x120], 1
call dword [sym.imp.WINMM.dll_timeGetTime]
mov ecx, dword [ebp - 0x3e68]
sub eax, 0x2710
mov dword [ecx + 0x118], eax
mov byte [ebp - 0x405c], 0x18
mov dword [ebp - 0x405b], ecx
call fcn.0044c8d0
mov ecx, dword [ebp - 0x3e68]
mov byte [ebp - 0x4057], al
movzx eax, word [ecx + 0x220]
mov word [ebp - 0x4056], ax
movzx eax, word [ecx + 0x224]
mov word [ebp - 0x4054], ax
mov al, byte [ecx + 0x108]
mov byte [ebp - 0x4051], al
mov al, byte [ecx + 0x10c]
push 0
push 5
mov byte [ebp - 0x4050], al
lea eax, [ebp - 0x405c]
push eax
push 0xd
push dword [ecx + 0x10c]
push dword [ecx + 0x108]
mov ecx, esi
push 0
call fcn.0052bf40
mov ecx, dword [ebp - 0x3e68]
push esi
call fcn.00493770
mov ecx, dword [ebp - 0x3e68]
mov byte [ebp - 0x4018], 0x38
mov dword [ebp - 0x4017], 0xffffffff
mov dword [ebp - 0x4013], 0xffffffff
mov al, byte [ecx + 0x108]
mov byte [ebp - 0x400f], al
mov al, byte [ecx + 0x10c]
push 0
push 5
mov byte [ebp - 0x400e], al
lea eax, [ebp - 0x4018]
push eax
push 0x11
mov word [ebp - 0x400d], 0xff
mov dword [ebp - 0x400b], 0x100ff
push dword [ecx + 0x10c]
push dword [ecx + 0x108]
mov ecx, esi
push 0
call fcn.0052bf40
mov eax, dword [ebp - 0x3e68]
mov ecx, dword [ebp - 0x3e58]
mov dword [edi + 0x14f70], eax
mov dword [eax + 0x21c], edi
mov eax, dword [ebp - 0x3e6c]
mov dword [edi + 0x184], 1
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6ffe
mov eax, dword [esi + 0x11c]
mov ecx, dword [ebp - 0x3e4c]
mov dword [ebp - 0x3e38], eax
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d6a4c
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3eac], dl
shr eax, 8
mov dword [ebp - 0x3e80], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3eab], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e70], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3eaa], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ea9], al
mov byte [ebp - 0x3ea8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d6ad6
mov eax, dword [ebp - 0x3e80]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e70]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d6ae9
lea eax, [ebp - 0x3eac]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
mov esi, dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.0044c8d0
test eax, eax
jne 0x4d6b65
xor esi, esi
mov ecx, 0x6122b4
mov eax, dword [ecx - 4]
sub eax, dword [edi + 0x108]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jg 0x4d6b2c
mov eax, dword [ecx]
sub eax, dword [edi + 0x10c]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
mov eax, 1
cmovle esi, eax
add ecx, 0x50
cmp ecx, 0x612a34
jl 0x4d6b01
test esi, esi
jne 0x4d6b43
push dword [ebp - 0x3e3c]
jmp 0x4d6b66
push str.Please_leave_town_first._:_
lea eax, [ebp - 0x206b]
push eax
call fcn.0046d650
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x11c]
jmp 0x4d6fe2
push esi
push dword [ebp - 0x3e38]
mov ecx, dword [ebp - 0x3e50]
push edi
call fcn.004c94c0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6ffe
mov eax, dword [esi + 0x11c]
mov ecx, dword [ebp - 0x3e4c]
mov dword [ebp - 0x3e40], eax
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d6bb6
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3eb4], dl
shr eax, 8
mov dword [ebp - 0x3e80], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3eb3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e70], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3eb2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3eb1], al
mov byte [ebp - 0x3eb0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d6c40
mov eax, dword [ebp - 0x3e80]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e70]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e38]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d6c53
lea eax, [ebp - 0x3eb4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
mov esi, dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.0044c8d0
test eax, eax
jne 0x4d6fcb
cmp dword [esi + 0x124], eax
jne 0x4d6fcb
xor esi, esi
mov ecx, 0x6122b4
nop dword [eax + eax]
mov eax, dword [ecx - 4]
sub eax, dword [edi + 0x108]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jg 0x4d6cab
mov eax, dword [ecx]
sub eax, dword [edi + 0x10c]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
mov eax, 1
cmovle esi, eax
add ecx, 0x50
cmp ecx, 0x612a34
jl 0x4d6c80
test esi, esi
jne 0x4d6fc1
mov eax, dword [ebp - 0x3e6c]
cmp dword [eax + 0x110], 0x11
jne 0x4d6cd4
push 1
jmp 0x4d6f90
mov esi, dword [ebp - 0x3e40]
cmp dword [esi + 0x10], 0xffffffff
jle 0x4d6d0f
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004ca030
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6ffe
mov eax, dword [esi + 0xc]
cmp eax, 4
jge 0x4d6d46
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004ca030
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6ffe
jle 0x4d6d7c
cmp eax, 9
jge 0x4d6d7c
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004ca030
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6ffe
cmp eax, 0xb
jne 0x4d6db0
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004ca030
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6ffe
cmp eax, 0x10
jne 0x4d6de4
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004ca030
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6ffe
cmp eax, 0x11
jle 0x4d6e18
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004ca030
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6ffe
mov ecx, edi
call fcn.0047d1e0
mov ecx, eax
cmp ecx, 1
jge 0x4d6e2f
mov ecx, edi
call fcn.0047d440
mov ecx, eax
movss xmm1, dword [esi + 8]
divss xmm1, dword [0x5d6e50]
imul eax, dword [esi + 0xc], 0x258
addss xmm1, dword [0x5d3048]
mov edx, dword [eax + 0x6208b0]
mov eax, dword [esi + 4]
shr eax, 0x1f
cmp dword [esi], 0
jl 0x4d6e61
cmp eax, 1
jne 0x4d6e70
cvtps2pd xmm0, xmm1
addsd xmm0, qword [0x5d6de0]
cvtpd2ps xmm1, xmm0
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
cmp eax, ecx
jge 0x4d6eb2
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004ca030
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6ffe
sub eax, ecx
cmp eax, 9
jle 0x4d6ee8
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004ca030
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6ffe
xor eax, eax
mov dword [ebp - 0x3e68], eax
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x110]
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4d6f8e
nop dword [eax + eax]
mov ecx, esi
call fcn.0044c8d0
test eax, eax
jne 0x4d6f3d
mov eax, dword [esi + 0x108]
cmp eax, dword [edi + 0x108]
jne 0x4d6f3d
mov eax, dword [esi + 0x10c]
cmp eax, dword [edi + 0x10c]
jne 0x4d6f3d
inc dword [ebp - 0x3e68]
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x110]
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4d6f10
cmp dword [ebp - 0x3e68], 1
jle 0x4d6f8e
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push dword [ebp - 0x3e40]
push edi
call fcn.004ca030
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6ffe
push 0
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push dword [ebp - 0x3e40]
push edi
call fcn.004cb3e0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6ffe
push str.The_EarthKey_doesnt_work_in_a_town.
jmp 0x4d6b48
lea eax, [ebp - 0x206b]
push str.The_EarthKey_doesnt_work_here.
push eax
call fcn.0046d650
mov ecx, dword [esi + 0x11c]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov eax, dword [eax + 4]
push edx
push 0
lea edx, [ebp - 0x206c]
push edx
push 0x65
call eax
mov ecx, dword [ebp - 0x3e58]
call fcn.0044e0d0
mov esi, eax
mov dword [ebp - 0x3e6c], eax
test esi, esi
jne 0x4d5010
jmp 0x4d70f8
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x2368], 0x17
push str.Only_smiths_can_set_bombs_in_PVP_zones.
push eax
call fcn.0046d620
mov ecx, 0x18
mov eax, dword [ebp - 0x3e50]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x2367]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e4c]
push edx
push 0
movsw word es:[edi], word [esi]
lea edx, [ebp - 0x2368]
push edx
push 0x65
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x2304], 0
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov edi, dword [ebp - 0x3e5c]
jmp 0x4d70f8
push 0x64
lea eax, [ebp - 0x2557]
mov byte [ebp - 0x2558], 0x17
push eax
push 0xc8
push str.Stable_your_existing_pet_first_with_the__stablepet_command.
call fcn.0044cdd0
add esp, 0x10
lea edx, [ebp - 0x3e4c]
push edx
lea edx, [ebp - 0x2558]
jmp 0x4d70e3
push 0x64
lea eax, [ebp - 0x24ef]
mov byte [ebp - 0x24f0], 0x17
push eax
push 0xc8
push str.You_must_be_in_town_to_let_out_a_pet.
call fcn.0044cdd0
add esp, 0x10
lea edx, [ebp - 0x3e4c]
push edx
lea edx, [ebp - 0x24f0]
mov eax, dword [ebp - 0x3e50]
push 0
push edx
push 0x65
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x3e68]
test esi, esi
je case.default.0x4d28f4
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x4d7129
mov ecx, dword [ebp - 0x3e50]
dec eax
push edi
mov dword [esi + 0x118], eax
call fcn.004e5ae0
jmp case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e58]
push esi
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, dword [ebp - 0x3e50]
push edi
call fcn.004e5ae0
jmp case.default.0x4d28f4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28f4
mov eax, dword [edi + 0x14f34]
cmp eax, 1
je 0x4d71b9
cmp eax, 2
je 0x4d71b9
cmp eax, 3
je 0x4d71b9
imul eax, dword [edi + 0x188], 0x980
test byte [eax + edi + 0x318], 1
jne 0x4d71b9
mov edx, dword [edi + 0x23c]
lea eax, [edi + 0x23c]
mov ecx, dword [ebp - 0xfaf]
test edx, ecx
je 0x4d71d7
not ecx
and ecx, edx
jmp 0x4d71d7
mov edx, dword [edi + 0x23c]
lea eax, [edi + 0x23c]
mov ecx, dword [ebp - 0xfaf]
test edx, ecx
je 0x4d71d5
not ecx
and ecx, edx
jmp 0x4d71d7
or ecx, edx
mov dword [eax], ecx
mov ecx, dword [ebp - 0x3e4c]
mov byte [ebp - 0x408c], 0x50
mov eax, dword [eax]
mov dword [ebp - 0x408b], eax
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d71fe
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ebc], dl
shr eax, 8
mov dword [ebp - 0x3e80], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ebb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e70], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3eba], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3eb9], al
mov byte [ebp - 0x3eb8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d72a7
mov eax, dword [ebp - 0x3e80]
mov byte [ecx], dl
lea edx, [ebp - 0x3e4c]
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e70]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e38]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x408c]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
lea eax, [ebp - 0x3ebc]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x408c]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28f4
lea eax, [ebp - 0x3e3c]
mov byte [ebp - 0x3df4], 0x59
push eax
push dword [ebp - 0x3e54]
mov ecx, esi
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x40b8], 0
mov dword [ebp - 0x3e5c], edi
mov dword [ebp - 0x40b4], 0
mov dword [ebp - 0x40b0], 0
mov ecx, dword [ebp - 0x3e54]
mov eax, ecx
sar eax, 8
mov byte [ebp - 0x3ec3], al
mov eax, ecx
sar eax, 0x10
mov byte [ebp - 0x3ec4], cl
sar ecx, 0x18
mov byte [ebp - 0x3ec2], al
lea eax, [ebp - 0x3ec4]
mov byte [ebp - 0x3ec1], cl
lea ecx, [ebp - 0x40b8]
push eax
mov byte [ebp - 4], 0x22
mov byte [ebp - 0x3ec0], 0
call fcn.0048da40
lea eax, [ebp - 0x3df3]
xor esi, esi
mov dword [ebp - 0x3e38], eax
imul ecx, dword [edi + 0x188], 0x980
push 0
push eax
add ecx, 0x43c
add ecx, esi
add ecx, edi
call fcn.00524a00
mov eax, dword [ebp - 0x3e38]
add esi, 0x138
add eax, 0x200
mov dword [ebp - 0x3e38], eax
cmp esi, 0x750
jl 0x4d7372
mov eax, dword [ebp - 0x3e50]
lea edx, [ebp - 0x40b8]
push edx
push 0
lea edx, [ebp - 0x3df4]
mov ecx, dword [eax + 0x34]
push edx
push 0xc01
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
lea ecx, [ebp - 0x40b8]
mov byte [ebp - 4], 0
call fcn.0046dc50
jmp case.default.0x4d28f4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d73fc
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ecc], dl
shr eax, 8
mov dword [ebp - 0x3e80], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ecb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e70], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3eca], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ec9], al
mov byte [ebp - 0x3ec8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d7486
mov eax, dword [ebp - 0x3e80]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e70]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e38]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d7499
lea eax, [ebp - 0x3ecc]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec40
mov edx, esi
mov byte [ebp - 0x4094], 0x5b
mov eax, edi
mov ecx, dword [edx + 0xb0]
test ecx, ecx
cmovg eax, ecx
mov dword [ebp - 0x4093], eax
mov ecx, dword [edx + 0x34]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x4094]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.0x4cd795.2
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je 0x4d77d1
lea eax, [ebp - 0x14b0]
push eax
call fcn.00590ffe
lea eax, [ebp - 0x14b0]
push eax
lea eax, [ebp - 0x15b0]
push 0x5d30e0
push eax
call fcn.0043d380
lea eax, [ebp - 0x15b0]
push eax
push str.MacroDetection.csv
call fcn.0049eb40
lea eax, [ebp - 0x14b0]
push eax
call fcn.0059123e
lea eax, [ebp - 0x14b0]
push eax
lea eax, [ebp - 0x15b0]
push str.__s_
push eax
call fcn.0043d380
lea eax, [ebp - 0x15b0]
push eax
push str.MacroDetection.csv
call fcn.0049eb40
lea eax, [ebp - 0x14b0]
push eax
call fcn.0059123e
cmp byte [ebp - 0xfa3], 0
mov ecx, str.not_booted
mov eax, str.booted
cmove eax, ecx
push eax
push dword [ebp - 0xfa7]
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [edi + 0x18c]
push eax
movzx eax, byte [ebp - 0xfa8]
push eax
movzx eax, byte [ebp - 0xfa9]
push eax
movzx eax, byte [ebp - 0xfaa]
push eax
movzx eax, byte [ebp - 0xfab]
push eax
lea eax, [ebp - 0x15b0]
push str._d._d._d._d__s__s__d__s_n
push eax
call fcn.0043d380
add esp, 0x5c
lea eax, [ebp - 0x15b0]
push eax
push str.MacroDetection.csv
call fcn.0049eb40
add esp, 8
cmp byte [ebp - 0xfa3], 0
je case.default.0x4d28f4
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x206b]
push str._s_is_inactive__logged_off.
push eax
call fcn.0046d650
add esp, 0xc
jmp 0x4d776c
mov edi, dword [ebp - 0x3e5c]
test edi, edi
je case.default.0x4d28f4
mov dword [edi + 0x258], 0
jmp case.default.0x4d28f4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b8420
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je 0x4d77d1
cmp dword [edi + 0x14f34], 1
je case.default.0x4d28f4
lea eax, [ebp - 0x1430]
push eax
call fcn.00590ffe
lea eax, [ebp - 0x1430]
push eax
lea eax, [ebp - 0x16b0]
push 0x5d30e0
push eax
call fcn.0043d380
lea eax, [ebp - 0x16b0]
push eax
push str.afkMacroDetection.csv
call fcn.0049eb40
lea eax, [ebp - 0x1430]
push eax
call fcn.0059123e
lea eax, [ebp - 0x1430]
push eax
lea eax, [ebp - 0x16b0]
push str.__s_
push eax
call fcn.0043d380
lea eax, [ebp - 0x16b0]
push eax
push str.afkMacroDetection.csv
call fcn.0049eb40
lea eax, [ebp - 0x1430]
push eax
call fcn.0059123e
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [edi + 0x18c]
push eax
movzx eax, byte [ebp - 0xfa8]
push eax
movzx eax, byte [ebp - 0xfa9]
push eax
movzx eax, byte [ebp - 0xfaa]
push eax
movzx eax, byte [ebp - 0xfab]
push eax
lea eax, [ebp - 0x16b0]
push str._d._d._d._d__s__s_n
push eax
call fcn.0043d380
add esp, 0x54
lea eax, [ebp - 0x16b0]
push eax
push str.afkMacroDetection.csv
call fcn.0049eb40
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x206b]
push str._s_is_inactive__logged_off.
push eax
call fcn.0046d650
add esp, 0x14
mov esi, dword [ebp - 0x3e3c]
lea eax, [ebp - 0x206c]
push 0
push 5
push eax
push 0x65
push dword [edi + 0x10c]
mov ecx, esi
push dword [edi + 0x108]
push 0
call fcn.0052bf40
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004cd3b0
mov edi, 0x1e
mov eax, dword [ebp - 0x3e50]
lea edx, [ebp - 0x3e8c]
push 0
push 0
push edx
mov ecx, dword [eax + 0x34]
push 0
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
mov eax, dword [ebp - 0x3e8c]
test eax, eax
jg 0x4cd740
lea ecx, [ebp - 0x3e4c]
call fcn.0046dc50
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005596ea
mov esp, ebp
pop ebp
ret