Function at 0x4d2db0
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5ce160
mov eax, dword fs:[0]
push eax
mov eax, 0x421c
call fcn.0055f730
mov eax, dword [0x6317e8]
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 - 0x3e54], 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 - 0x4228], 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 - 0x3e50], 0
mov dword [ebp - 0x3e4c], 0
mov dword [ebp - 0x3e48], 0
mov dword [ebp - 0x3e58], 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 0x4dcf65
mov esi, dword [ebp - 0x3e38]
cmp eax, 0xfa0
jle 0x4d2eb2
mov dword [ebp - 0x3e8c], 0xfa0
mov edi, dword [ebp - 0x3e54]
lea edx, [ebp - 0x3e50]
push edx
lea edx, [ebp - 0x3e58]
push edx
mov ecx, dword [edi + 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.0x4d2ef6.2
movzx eax, byte [eax + 0x4dd03c]
jmp dword [eax*4 + 0x4dcf8c]
mov ecx, dword [0x635bc4]
lea eax, [ebp - 0xfaf]
push eax
call fcn.005158a0
test eax, eax
je 0x4d2f22
mov dword [ebp - 0x3e63], 0xa
jmp 0x4d3622
lea eax, [ebp - 0x3e3c]
mov ecx, edi
push eax
push dword [ebp - 0x3e58]
call fcn.004bdc70
mov esi, eax
test esi, esi
je 0x4d2f76
nop dword [eax]
mov ecx, dword [ebp - 0x3e3c]
push esi
mov ecx, dword [ecx + 0x110]
call fcn.0044e730
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 - 0x3e58]
call fcn.004bdc70
mov esi, eax
test esi, esi
jne 0x4d2f40
push dword [ebp - 0x3e58]
mov ecx, edi
call fcn.004be550
mov esi, eax
test esi, esi
je 0x4d2fb6
nop dword [eax]
mov ecx, dword [edi + 0x44]
push esi
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
push dword [ebp - 0x3e58]
mov ecx, edi
call fcn.004be550
mov esi, eax
test esi, esi
jne 0x4d2f90
push 0x15054
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x41b8], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x4d2fe2
mov ecx, eax
call fcn.004733b0
mov edi, eax
mov dword [ebp - 0x3e38], eax
jmp 0x4d2fea
xor edi, edi
mov dword [ebp - 0x3e38], edi
mov eax, dword [ebp - 0x3e58]
mov esi, dword [ebp - 0x3e54]
mov dword [edi + 0x180], eax
mov dword [edi + 0x188], 0xffffffff
mov al, byte [ebp - 0xfaf]
mov byte [edi + 0x240], al
mov al, byte [ebp - 0xfae]
mov byte [edi + 0x241], al
mov al, byte [ebp - 0xfad]
mov byte [edi + 0x242], al
mov al, byte [ebp - 0xfac]
mov byte [edi + 0x243], al
mov ecx, dword [esi + 0x44]
push edi
mov byte [ebp - 4], 0
call fcn.0044e390
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d3059
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3edc], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3edb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3eda], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ed9], al
mov byte [ebp - 0x3ed8], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d30e3
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d30f6
lea eax, [ebp - 0x3edc]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
mov byte [ebp - 0x40ab], 0
lea edx, [ebp - 0x3e50]
mov ecx, dword [esi + 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.0x4d8016
lea eax, [ebp - 0x3e3c]
mov dword [ebp - 0x3e5c], 0
push eax
push dword [ebp - 0x3e58]
mov ecx, edi
call fcn.004bdc70
mov esi, eax
test esi, esi
je 0x4d3459
mov dword [ebp - 0x3e5c], 1
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.00473350
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.004a4370
add esp, 0x18
lea ecx, [ebp - 0x20ac]
call fcn.0051aae0
mov ecx, dword [ebp - 0x20a4]
mov dx, word [ebp - 0x20a6]
add ecx, 0x13
movzx edi, cx
mov word [ebp - 0x20a4], cx
lea eax, [edi - 0x18]
movzx eax, ax
mov dword [ebp - 0x3e44], eax
cmp cx, 0x18
jae 0x4d31d6
mov ecx, 0xffff
add dx, cx
mov word [ebp - 0x20a6], dx
jmp 0x4d31dd
mov word [ebp - 0x20a4], ax
movzx eax, word [ebp - 0x20a2]
cmp edi, 0x18
push eax
mov eax, dword [ebp - 0x3e44]
mov ecx, edi
movzx eax, ax
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.00473350
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.004a4370
mov eax, dword [esi + 0x14f34]
add esp, 0x20
cmp eax, 2
je 0x4d323b
cmp eax, 3
jne 0x4d324f
lea eax, [ebp - 0x13b0]
push eax
push str.moderatorLog.txt
call fcn.004a4370
add esp, 8
mov edi, dword [ebp - 0x3e3c]
mov ecx, esi
push 0
push edi
call fcn.004740d0
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.00473380
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.005316e0
push 0
push edi
mov ecx, esi
call fcn.0048bfa0
mov ecx, dword [edi + 0x110]
push esi
call fcn.0044e730
mov ecx, edi
call fcn.0044cdf0
test eax, eax
jne 0x4d3304
mov ecx, edi
call fcn.0044cdf0
test eax, eax
jne 0x4d32db
cmp dword [edi + 0x124], eax
jg 0x4d3304
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 0x4d332d
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.0048cc10
mov eax, dword [esi + 0x14f70]
test eax, eax
je 0x4d342d
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 - 0x3e54]
lea eax, [ebp - 0x3e3c]
push eax
push dword [ebp - 0x3e58]
call fcn.004bdc70
mov esi, eax
test esi, esi
jne 0x4d3150
push dword [ebp - 0x3e58]
mov esi, dword [ebp - 0x3e54]
mov ecx, esi
call fcn.004be550
mov edi, eax
mov dword [ebp - 0x3e40], eax
test edi, edi
je 0x4d34b1
nop dword [eax + eax]
mov ecx, dword [esi + 0x44]
push edi
call fcn.0044e730
mov eax, dword [edi]
mov ecx, edi
push 1
mov eax, dword [eax]
call eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004be550
mov edi, eax
test edi, edi
jne 0x4d3480
mov dword [ebp - 0x3e38], edi
jmp case.default.0x4d8016
cmp dword [ebp - 0x3e5c], 0
mov esi, eax
mov dword [ebp - 0x3e38], esi
jne case.0x4d2ef6.2
lea eax, [ebp - 0x13b0]
push str._orphan_close_message_
push eax
call fcn.00473350
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.004a4370
add esp, 0x10
lea ecx, [ebp - 0x207c]
call fcn.0051aae0
mov ecx, dword [ebp - 0x2074]
mov dx, word [ebp - 0x2076]
add ecx, 0x13
movzx esi, cx
mov word [ebp - 0x2074], cx
lea eax, [esi - 0x18]
movzx eax, ax
mov edi, eax
cmp cx, 0x18
jae 0x4d352f
mov ecx, 0xffff
add dx, cx
mov word [ebp - 0x2076], dx
jmp 0x4d3536
mov word [ebp - 0x2074], ax
movzx eax, word [ebp - 0x2072]
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 - 0x207a]
push eax
lea eax, [ebp - 0x13b0]
push str._d__02d___d:_02d_n
push eax
call fcn.00473350
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.004a4370
mov esi, dword [ebp - 0x3e40]
add esp, 0x20
mov dword [ebp - 0x3e38], esi
jmp case.0x4d2ef6.2
mov eax, dword [ebp - 0x3e8c]
dec eax
push eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044d4b0
add esp, 8
lea eax, [ebp - 0xfaf]
mov ecx, edi
push eax
push dword [ebp - 0x3e58]
call fcn.004becd0
jmp case.0x4d2ef6.2
mov eax, dword [str.Connecting...]
mov dword [0x634224], eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044ca60
lea eax, [ebp - 0xfaf]
push 0x20
push eax
call fcn.0044d4b0
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044d350
lea eax, [ebp - 0xf8f]
push 0x88
push eax
call fcn.0044d4b0
mov ecx, dword [0x635bc8]
add esp, 0x18
push dword [ebp - 0xf07]
call fcn.00537ca0
test eax, eax
je 0x4d3643
mov dword [ebp - 0x3e63], 0xc
mov ecx, dword [edi + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e50]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [eax + 4]
push edx
push 5
call eax
jmp case.0x4d2ef6.2
lea eax, [ebp - 0x3e3c]
mov ecx, edi
push eax
lea eax, [ebp - 0xf8f]
push eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.004bdcf0
mov esi, eax
mov dword [ebp - 0x3e38], esi
test esi, esi
je 0x4d3696
mov dword [ebp - 0x3e63], 6
lea edx, [ebp - 0x3e50]
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.0x4d2ef6.2
push dword [ebp - 0x3e58]
mov ecx, edi
call fcn.004be550
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
push 0xffffffffffffffff
push 0
push 1
lea eax, [ebp - 0xf8f]
mov ecx, edi
push eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.00484750
mov ecx, dword [ebp - 0xf07]
mov esi, eax
mov dword [edi + 0x14fb4], ecx
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d36f2
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ee4], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ee3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3ee2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ee1], al
mov byte [ebp - 0x3ee0], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d377c
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d378f
lea eax, [ebp - 0x3ee4]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
mov byte [ebp - 0x4064], 0x3f
lea edx, [ebp - 0x4064]
mov eax, dword [edi + 0x238]
mov edi, dword [ebp - 0x3e54]
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 0x4d37f0
mov eax, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e93], eax
mov ecx, dword [edi + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e50]
push edx
push 0
lea edx, [ebp - 0x3e94]
mov eax, dword [eax + 4]
push edx
push 5
call eax
jmp case.default.0x4d8016
cmp esi, 1
jne 0x4d381c
mov dword [ebp - 0x3e63], esi
mov ecx, dword [edi + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e50]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [eax + 4]
push edx
push 5
call eax
jmp case.default.0x4d8016
cmp esi, 2
jne 0x4d3848
mov dword [ebp - 0x3e63], esi
lea edx, [ebp - 0x3e50]
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.0x4d8016
cmp esi, 3
jne 0x4d3874
mov dword [ebp - 0x3e63], esi
lea edx, [ebp - 0x3e50]
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.0x4d8016
cmp esi, 0xa
jne 0x4d38a0
mov dword [ebp - 0x3e63], esi
lea edx, [ebp - 0x3e50]
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.0x4d8016
cmp esi, 0x14
jne 0x4d38f1
mov dword [ebp - 0x3e63], 0xc
mov ecx, dword [edi + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e50]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [eax + 4]
push edx
push 5
call eax
mov ecx, dword [0x635bc8]
push str.Mr._Cheater
push dword [ebp - 0xf07]
call fcn.00537ee0
mov ecx, dword [0x635bc8]
call fcn.00537e60
jmp case.default.0x4d8016
cmp esi, 0xffffffff
jne case.default.0x4d8016
mov dword [ebp - 0x3e63], esi
lea edx, [ebp - 0x3e50]
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.0x4d8016
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d3937
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3eec], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3eeb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3eea], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ee9], al
mov byte [ebp - 0x3ee8], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d39c1
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d39d4
lea eax, [ebp - 0x3eec]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
mov eax, dword [str.Connecting...]
mov dword [0x634224], eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044ca60
cmp dword [edi + 0x7c], 0
mov ecx, 0x3e8
mov eax, dword [0x635bcc]
cmovne eax, ecx
mov dword [ebp - 0x3e40], eax
lea eax, [ebp - 0xfaf]
push 0x20
push eax
call fcn.0044d4b0
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044d350
lea eax, [ebp - 0xf8f]
push 0x88
push eax
call fcn.0044d4b0
mov ecx, dword [0x635bc8]
add esp, 0x18
push dword [ebp - 0xf07]
call fcn.00537ca0
test eax, eax
jne 0x4d3618
mov ecx, dword [edi + 0x48]
call fcn.0044e540
mov edi, eax
test edi, edi
je 0x4d3abe
mov esi, dword [ebp - 0x3e54]
nop dword [eax]
mov ecx, dword [edi + 0x110]
call fcn.0044e540
test eax, eax
je 0x4d3aaa
mov esi, dword [ebp - 0x3fc8]
nop word [eax + eax]
mov ecx, dword [ebp - 0xf07]
cmp ecx, dword [eax + 0x14fb4]
jne 0x4d3a8f
inc esi
mov ecx, dword [edi + 0x110]
call fcn.0044e5f0
test eax, eax
jne 0x4d3a80
mov dword [ebp - 0x3fc8], esi
mov esi, dword [ebp - 0x3e54]
mov ecx, dword [esi + 0x48]
call fcn.0044e5f0
mov edi, eax
test edi, edi
jne 0x4d3a60
mov esi, dword [ebp - 0x3e38]
mov eax, dword [ebp - 0x3fc8]
cmp eax, dword [ebp - 0x3e40]
jl 0x4d3ae4
mov eax, dword [ebp - 0x3e54]
mov dword [ebp - 0x3e63], 0xd
mov ecx, dword [eax + 0x34]
jmp 0x4d3625
movss xmm0, dword [ebp - 0xf03]
ucomiss xmm0, dword [0x5e3870]
lahf
test ah, 0x44
jnp 0x4d3b11
mov eax, dword [ebp - 0x3e54]
mov dword [ebp - 0x3e63], 5
mov ecx, dword [eax + 0x34]
jmp 0x4d3625
mov edi, dword [ebp - 0x3e54]
lea eax, [ebp - 0x3e3c]
push eax
lea eax, [ebp - 0xf8f]
mov ecx, edi
push eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.004bdcf0
mov esi, eax
mov dword [ebp - 0x3e38], esi
test esi, esi
je 0x4d3b4e
mov dword [ebp - 0x3e63], 6
jmp 0x4d3622
push dword [ebp - 0x3e58]
mov ecx, edi
call fcn.004be550
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
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.00484750
mov ecx, dword [ebp - 0xf07]
mov esi, eax
mov dword [edi + 0x14fb4], ecx
cmp dword [edi + 0x14fa4], 1
jne 0x4d3bcc
lea ecx, [ebp - 0x2150]
call fcn.0051aae0
lea eax, [edi + 0x14f94]
push eax
lea ecx, [ebp - 0x2150]
call fcn.0051ab40
test eax, eax
jg 0x4d3bea
mov dword [edi + 0x14fa4], 0
test esi, esi
jne 0x4d3c02
mov eax, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e93], eax
mov eax, dword [ebp - 0x3e54]
mov ecx, dword [eax + 0x34]
jmp 0x4d37d2
mov eax, dword [ebp - 0x3e54]
mov dword [ebp - 0x3e63], 7
mov ecx, dword [eax + 0x34]
jmp 0x4d37fe
cmp esi, 1
jne 0x4d3c34
mov dword [ebp - 0x3e63], esi
mov eax, dword [ebp - 0x3e54]
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e50]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [eax + 4]
push edx
push 5
call eax
jmp case.default.0x4d8016
cmp esi, 2
jne 0x4d3c41
mov dword [ebp - 0x3e63], esi
jmp 0x4d3c0d
cmp esi, 3
jne 0x4d3c4e
mov dword [ebp - 0x3e63], esi
jmp 0x4d3c0d
cmp esi, 4
jne 0x4d3c5b
mov dword [ebp - 0x3e63], esi
jmp 0x4d3c0d
cmp esi, 0xffffffff
jne 0x4d3c68
mov dword [ebp - 0x3e63], esi
jmp 0x4d3c0d
cmp esi, 0xa
jne 0x4d3c75
mov dword [ebp - 0x3e63], esi
jmp 0x4d3c0d
cmp esi, 0x14
jne 0x4d3c92
mov eax, dword [ebp - 0x3e54]
mov dword [ebp - 0x3e63], 0xc
mov ecx, dword [eax + 0x34]
jmp 0x4d38b2
cmp esi, 0xb
jne case.default.0x4d8016
mov dword [ebp - 0x3e63], esi
jmp 0x4d3c0d
mov eax, dword [ebp - 0x3e58]
cmp dword [ebp - 0xfaf], eax
jne case.0x4d2ef6.2
lea ecx, [ebp - 0xfb0]
push ecx
push eax
mov ecx, edi
call fcn.004e9dc0
jmp case.0x4d2ef6.2
mov ecx, dword [ebp - 0x3e50]
mov eax, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d3ce2
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ef4], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ef3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3ef2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ef1], al
mov byte [ebp - 0x3ef0], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d3d6c
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d3d7f
lea eax, [ebp - 0x3ef4]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
push dword [ebp - 0x3e58]
mov esi, edi
mov ecx, esi
call fcn.004be550
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
movsx ecx, byte [ebp - 0xfaf]
and ecx, 0x80000007
jns 0x4d3db2
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 0x4d3f49
mov dword [ebp - 0x2003], edx
lea edx, [ebp - 0x3e50]
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 0x4d3f65
lea edx, [ebp - 0x3e50]
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 0x4d3fc5
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 0x4d3fcc
mov byte [ebp - 0x1fb3], 0
cmp dword [edi + 0xc44], 0xffffffff
jle 0x4d4022
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 0x4d4029
mov byte [ebp - 0x1f93], 0
cmp dword [edi + 0x15c4], 0xffffffff
jle 0x4d407f
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 0x4d4086
mov byte [ebp - 0x1f73], 0
cmp dword [edi + 0x1f44], 0xffffffff
jle 0x4d40dc
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 0x4d40e3
mov byte [ebp - 0x1f53], 0
cmp dword [edi + 0x28c4], 0xffffffff
jle 0x4d4139
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 0x4d4140
mov byte [ebp - 0x1f33], 0
cmp dword [edi + 0x3244], 0xffffffff
jle 0x4d4196
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 0x4d419d
mov byte [ebp - 0x1f13], 0
cmp dword [edi + 0x3bc4], 0xffffffff
jle 0x4d41f3
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 0x4d41fa
mov byte [ebp - 0x1ef3], 0
cmp dword [edi + 0x4544], 0xffffffff
jle 0x4d4250
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 0x4d4257
mov byte [ebp - 0x1ed3], 0
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e50]
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 - 0x3e50]
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.0x4d8016
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d4302
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3efc], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3efb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3efa], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ef9], al
mov byte [ebp - 0x3ef8], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d438c
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d439f
lea eax, [ebp - 0x3efc]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
mov eax, dword [ebp - 0xfaf]
and eax, 0x80000007
jns 0x4d43b1
dec eax
or eax, 0xfffffff8
inc eax
push dword [ebp - 0x3e58]
mov esi, edi
mov dword [ebp - 0xfaf], eax
mov ecx, esi
call fcn.004be550
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
mov eax, dword [ebp - 0xfaf]
test eax, eax
js 0x4d43e5
cmp eax, 7
jle 0x4d43ef
mov dword [ebp - 0xfaf], 0
lea eax, [ebp - 0xf94]
push 0x20
push eax
call fcn.0044d4b0
lea eax, [ebp - 0xf94]
push eax
call fcn.0044d350
lea eax, [ebp - 0xf94]
push 1
push eax
call fcn.0044d1b0
lea eax, [ebp - 0xf94]
push eax
call fcn.0044dbb0
imul eax, dword [ebp - 0xfaf], 0x980
add esp, 0x18
cmp dword [eax + edi + 0x2c4], 0xffffffff
jne 0x4d562b
lea eax, [ebp - 0xf94]
push eax
call fcn.0044f270
add esp, 4
test eax, eax
jne 0x4d4463
mov dword [ebp - 0x3e63], 7
mov ecx, dword [esi + 0x34]
jmp 0x4d3c16
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.00486f90
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.0044ef60
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 - 0x3e50]
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 - 0x3e40], eax
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x4d4715
mov edi, dword [ebp - 0x3e40]
nop
push esi
mov ecx, edi
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, edi
call fcn.0044e540
mov esi, eax
test esi, esi
jne 0x4d46f0
mov edi, dword [ebp - 0x3e38]
imul eax, dword [ebp - 0xfaf], 0x980
mov eax, dword [eax + edi + 0x2dc]
add eax, 8
mov ecx, eax
mov dword [ebp - 0x3e40], eax
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x4d4767
mov edi, dword [ebp - 0x3e40]
push esi
mov ecx, edi
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, edi
call fcn.0044e540
mov esi, eax
test esi, esi
jne 0x4d4742
mov edi, dword [ebp - 0x3e38]
imul eax, dword [ebp - 0xfaf], 0x980
mov eax, dword [eax + edi + 0x2e0]
add eax, 8
mov ecx, eax
mov dword [ebp - 0x3e40], eax
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x4d47b9
mov edi, dword [ebp - 0x3e40]
push esi
mov ecx, edi
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, edi
call fcn.0044e540
mov esi, eax
test esi, esi
jne 0x4d4794
mov edi, dword [ebp - 0x3e38]
imul eax, dword [ebp - 0xfaf], 0x980
mov eax, dword [eax + edi + 0x2e4]
add eax, 8
mov ecx, eax
mov dword [ebp - 0x3e40], eax
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x4d480b
mov edi, dword [ebp - 0x3e40]
push esi
mov ecx, edi
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, edi
call fcn.0044e540
mov esi, eax
test esi, esi
jne 0x4d47e6
mov edi, dword [ebp - 0x3e38]
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.004b5610
imul eax, dword [ebp - 0xfaf], 0x980
push str.NO_PET
add eax, 0x368
add eax, edi
push eax
call fcn.004b5610
push 0x120
call fcn.0055ee4a
add esp, 0x14
mov dword [ebp - 0x417c], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x4d4896
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.005125d0
mov esi, eax
jmp 0x4d4898
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 0x4d494c
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.005354a0
push 0x120
call fcn.0055ee4a
add esp, 8
mov dword [ebp - 0x4208], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x4d498b
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.005125d0
mov esi, eax
jmp 0x4d498d
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 0x4d4a41
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.005354a0
push 0x120
call fcn.0055ee4a
add esp, 8
mov dword [ebp - 0x4204], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x4d4a80
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.005125d0
mov esi, eax
jmp 0x4d4a82
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 0x4d4b36
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.005354a0
push 0x120
call fcn.0055ee4a
add esp, 8
mov dword [ebp - 0x4200], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x4d4b75
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.005125d0
mov esi, eax
jmp 0x4d4b77
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 0x4d4c2b
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.005354a0
push 0x120
call fcn.0055ee4a
add esp, 8
mov dword [ebp - 0x41fc], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x4d4c6a
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.005125d0
mov esi, eax
jmp 0x4d4c6c
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 0x4d4d20
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.005354a0
push 0x120
call fcn.0055ee4a
add esp, 8
mov dword [ebp - 0x41f8], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x4d4d5f
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.005125d0
mov esi, eax
jmp 0x4d4d61
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 0x4d4e15
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.005354a0
push 0x120
call fcn.0055ee4a
add esp, 8
mov dword [ebp - 0x41f4], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x4d4e54
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.005125d0
mov esi, eax
jmp 0x4d4e56
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 0x4d4f0a
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.005354a0
push 0x120
call fcn.0055ee4a
add esp, 8
mov dword [ebp - 0x41f0], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x4d4f49
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.005125d0
mov esi, eax
jmp 0x4d4f4b
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 0x4d4fff
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.005354a0
push 0x120
call fcn.0055ee4a
add esp, 8
mov dword [ebp - 0x41ec], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x4d503e
push str.Tin_Ingot
push 0
push 4
mov ecx, eax
call fcn.005125d0
mov ecx, eax
jmp 0x4d5040
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.0044e390
imul eax, dword [ebp - 0xfaf], 0x980
push 0x120
cmp dword [eax + edi + 0x2f4], 0xa
jge 0x4d513f
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x41e8], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x4d50eb
push str.Pointy_Stick
push 0
push 1
mov ecx, eax
call fcn.005125d0
mov ecx, eax
jmp 0x4d50ed
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 0x4d51cd
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x41e4], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x4d5169
push str.My_First_Scythe
push 0
push 1
mov ecx, eax
call fcn.005125d0
mov ecx, eax
jmp 0x4d516b
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.0044e390
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 [0x617398]
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 [0x61739c]
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.0048cc10
cmp dword [edi + 0x2c4], 0xffffffff
jle 0x4d536f
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 0x4d5376
mov byte [ebp - 0x1fb3], 0
cmp dword [edi + 0xc44], 0xffffffff
jle 0x4d53cc
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 0x4d53d3
mov byte [ebp - 0x1f93], 0
cmp dword [edi + 0x15c4], 0xffffffff
jle 0x4d5429
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 0x4d5430
mov byte [ebp - 0x1f73], 0
cmp dword [edi + 0x1f44], 0xffffffff
jle 0x4d5486
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 0x4d548d
mov byte [ebp - 0x1f53], 0
cmp dword [edi + 0x28c4], 0xffffffff
jle 0x4d54e3
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 0x4d54ea
mov byte [ebp - 0x1f33], 0
cmp dword [edi + 0x3244], 0xffffffff
jle 0x4d5540
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 0x4d5547
mov byte [ebp - 0x1f13], 0
cmp dword [edi + 0x3bc4], 0xffffffff
jle 0x4d559d
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 0x4d55a4
mov byte [ebp - 0x1ef3], 0
cmp dword [edi + 0x4544], 0xffffffff
jle 0x4d55fa
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 0x4d5601
mov byte [ebp - 0x1ed3], 0
mov eax, dword [ebp - 0x3e54]
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e50]
push edx
push 0
lea edx, [ebp - 0x1fb4]
mov eax, dword [eax + 4]
push edx
push 0x101
call eax
jmp case.default.0x4d8016
mov dword [ebp - 0x3e63], 2
mov ecx, dword [esi + 0x34]
jmp 0x4d3c16
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d5653
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f04], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f03], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f02], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f01], al
mov byte [ebp - 0x3f00], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d56dd
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d56f0
lea eax, [ebp - 0x3f04]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
push dword [ebp - 0x3e58]
mov esi, edi
mov ecx, esi
call fcn.004be550
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
movsx eax, byte [ebp - 0xfaf]
and eax, 0x80000007
jns 0x4d5722
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 0x4d580d
add eax, 0x2a0
push eax
call fcn.0044f370
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.004be370
test eax, eax
je 0x4d5798
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.004bd840
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.0048cc10
mov dword [ebp - 0x3e63], 1
lea edx, [ebp - 0x3e50]
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 0x4d5863
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 0x4d586a
mov byte [ebp - 0x1fb3], 0
cmp dword [edi + 0xc44], 0xffffffff
jle 0x4d58c0
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 0x4d58c7
mov byte [ebp - 0x1f93], 0
cmp dword [edi + 0x15c4], 0xffffffff
jle 0x4d591d
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 0x4d5924
mov byte [ebp - 0x1f73], 0
cmp dword [edi + 0x1f44], 0xffffffff
jle 0x4d597a
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 0x4d5981
mov byte [ebp - 0x1f53], 0
cmp dword [edi + 0x28c4], 0xffffffff
jle 0x4d59d7
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 0x4d59de
mov byte [ebp - 0x1f33], 0
cmp dword [edi + 0x3244], 0xffffffff
jle 0x4d5a34
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 0x4d5a3b
mov byte [ebp - 0x1f13], 0
cmp dword [edi + 0x3bc4], 0xffffffff
jle 0x4d5a91
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 0x4d5a98
mov byte [ebp - 0x1ef3], 0
cmp dword [edi + 0x4544], 0xffffffff
jle 0x4d5af4
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 0x4d560a
mov byte [ebp - 0x1ed3], 0
mov ecx, dword [esi + 0x34]
jmp 0x4d560a
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d5b19
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f0c], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f0b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f0a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f09], al
mov byte [ebp - 0x3f08], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d5ba3
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d5bb6
lea eax, [ebp - 0x3f0c]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
mov eax, dword [ebp - 0xfaf]
and eax, 0x80000007
jns 0x4d5bc8
dec eax
or eax, 0xfffffff8
inc eax
push dword [ebp - 0x3e58]
mov esi, edi
mov dword [ebp - 0xfaf], eax
mov ecx, esi
call fcn.004be550
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
mov eax, dword [ebp - 0xfaf]
test eax, eax
js 0x4d5bfc
cmp eax, 7
jle 0x4d5c04
xor eax, eax
mov dword [ebp - 0xfaf], eax
imul ecx, eax, 0x980
cmp dword [ecx + edi + 0x2c4], 0xffffffff
je case.default.0x4d8016
mov eax, dword [ebp - 0xfab]
lea edx, [ebp - 0x3e50]
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.0048cc10
cmp dword [edi + 0x2c4], 0xffffffff
jle 0x4d5863
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 0x4d586a
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d5e9d
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f14], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f13], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f12], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f11], al
mov byte [ebp - 0x3f10], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d5f27
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d5f3a
lea eax, [ebp - 0x3f14]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
push 0x5d6640
push str.bugs.txt
call fcn.0056eb7f
mov esi, eax
lea eax, [ebp - 0x13b0]
push eax
call fcn.0059677e
lea eax, [ebp - 0x13b0]
push eax
push str._s_
push esi
call fcn.0043d350
lea eax, [ebp - 0x13b0]
push eax
call fcn.005969be
lea eax, [ebp - 0x13b0]
push eax
push str._s_
push esi
call fcn.0043d350
cmp byte [ebp - 0xfad], 0
mov eax, 0x5dec50
mov edi, 0x5dec54
cmove eax, edi
push eax
push esi
call fcn.0043d350
cmp byte [ebp - 0xfaf], 0
mov eax, 0x5dec58
cmove eax, edi
push eax
push esi
call fcn.0043d350
cmp byte [ebp - 0xfac], 0
mov eax, 0x5dec5c
cmove eax, edi
push eax
push esi
call fcn.0043d350
add esp, 0x40
mov eax, 0x5dec60
cmp byte [ebp - 0xfae], 0
cmove eax, edi
push eax
push esi
call fcn.0043d350
cmp byte [ebp - 0xfab], 0
mov eax, 0x5dec64
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.0056e891
mov esi, dword [ebp - 0x3e54]
lea eax, [ebp - 0x3e3c]
add esp, 4
mov ecx, esi
push eax
push dword [ebp - 0x3e58]
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
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 - 0x3e50]
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.0x4d8016
mov ecx, dword [ebp - 0x3e50]
mov eax, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d60ec
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f1c], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f1b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f1a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f19], al
mov byte [ebp - 0x3f18], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d6176
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d6189
lea eax, [ebp - 0x3f1c]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
movsx eax, byte [ebp - 0xfaf]
and eax, 0x80000007
jns 0x4d619c
dec eax
or eax, 0xfffffff8
inc eax
push dword [ebp - 0x3e58]
mov esi, edi
mov byte [ebp - 0xfaf], al
mov ecx, esi
call fcn.004be550
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
movsx eax, byte [ebp - 0xfaf]
imul eax, eax, 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d8016
mov eax, dword [ebp - 0x3e58]
lea edx, [ebp - 0x3e50]
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.0048bfa0
push dword [ebp - 0x3e58]
mov ecx, esi
push 1
call fcn.004e83a0
imul ecx, dword [edi + 0x188], 0x980
add ecx, 0x358
add ecx, edi
call fcn.0051ab80
imul ecx, dword [edi + 0x188], 0x980
add ecx, 0x38c
add ecx, edi
call fcn.0051ab80
lea ecx, [ebp - 0x2140]
call fcn.0051aae0
imul ecx, dword [edi + 0x188], 0x980
lea eax, [ebp - 0x2140]
push eax
add ecx, 0x324
add ecx, edi
call fcn.0051ab40
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 0x4d62e4
test ecx, ecx
jns 0x4d62eb
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.00473350
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.004a4370
mov eax, dword [edi + 0x14f34]
add esp, 0x2c
cmp eax, 2
je 0x4d6377
cmp eax, 3
jne 0x4d638b
lea eax, [ebp - 0x13b0]
push eax
push str.moderatorLog.txt
call fcn.004a4370
add esp, 8
lea ecx, [ebp - 0x209c]
call fcn.0051aae0
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 - 0x3e44], eax
cmp cx, 0x18
jae 0x4d63d3
mov ecx, 0xffff
add dx, cx
mov word [ebp - 0x2096], dx
jmp 0x4d63da
mov word [ebp - 0x2094], ax
movzx eax, word [ebp - 0x2092]
cmp esi, 0x18
push eax
mov eax, dword [ebp - 0x3e44]
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.00473350
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.004a4370
mov eax, dword [edi + 0x14f34]
add esp, 0x20
cmp eax, 2
je 0x4d6438
cmp eax, 3
jne 0x4d644c
lea eax, [ebp - 0x13b0]
push eax
push str.moderatorLog.txt
call fcn.004a4370
add esp, 8
call dword [sym.imp.WINMM.dll_timeGetTime]
mov ecx, dword [ebp - 0x3e54]
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.0044e540
mov esi, eax
test esi, esi
je 0x4d64cd
cmp dword [esi + 0x110], 0x12
jne 0x4d64ae
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
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.0044e5f0
mov esi, eax
test esi, esi
jne 0x4d6481
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 8
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x4d653c
nop dword [eax]
cmp dword [esi + 0x110], 0x12
jne 0x4d651d
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 8
call fcn.0044e730
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.0044e5f0
mov esi, eax
test esi, esi
jne 0x4d64f0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 8
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x4d65ac
nop dword [eax + eax]
cmp dword [esi + 0x110], 0x12
jne 0x4d658d
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 8
call fcn.0044e730
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.0044e5f0
mov esi, eax
test esi, esi
jne 0x4d6560
mov eax, dword [ebp - 0x3e54]
push 0
mov ecx, dword [eax + 0x48]
call fcn.0044e420
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 0x4d65ee
push str._s_entered_the_game.
jmp 0x4d65f3
push str.___s_begins_life___
push eax
call fcn.00473380
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.005316e0
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.00473380
mov esi, dword [ebp - 0x3e54]
lea edx, [ebp - 0x3e50]
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.004e3010
mov ecx, edi
call fcn.00475aa0
cmp eax, 9
jle 0x4d6a53
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0xc10], 0
jle 0x4d6a53
mov esi, dword [eax + edi + 0xc00]
mov ecx, dword [eax + edi + 0xc04]
movss xmm0, dword [eax + edi + 0xbfc]
mov dword [ebp - 0x3e40], ecx
lea eax, [esi + esi*2]
movss dword [ebp - 0x3e5c], xmm0
lea eax, [ecx + eax*2]
imul eax, eax, 0x64
cmp byte [eax + str.Ghost], 0
lea eax, [eax + str.Ghost]
mov dword [ebp - 0x3e44], eax
je 0x4d6d56
push 0x2c8
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x41e0], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x4d6706
push 0
push 0
push dword [ebp - 0x3e40]
mov ecx, eax
push esi
call fcn.00498890
mov esi, eax
jmp 0x4d6708
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 0x4d6738
push 0x20
push ecx
push 0x20
push eax
call fcn.0044d2f0
add esp, 0x10
mov ecx, edi
call fcn.00475aa0
cmp eax, 9
jle 0x4d67cd
imul edx, dword [edi + 0x188], 0x980
add edx, 0x2a0
add edx, edi
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x3e40], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d6765
sub ecx, dword [ebp - 0x3e40]
lea eax, [esi + 0x184]
push ecx
push eax
push edx
call fcn.0059b620
add esp, 0xc
test eax, eax
je 0x4d67cd
imul eax, dword [edi + 0x188], 0x980
push dword [ebp - 0x3e44]
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.0044d2f0
add esp, 0x20
mov byte [esi + 0x1dd], 1
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x3e3c]
movss xmm0, dword [ebp - 0x3e5c]
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.0051ad60
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 - 0x404c], 0x18
mov dword [ebp - 0x404b], esi
call fcn.0044cdf0
mov ecx, dword [ebp - 0x3e3c]
mov byte [ebp - 0x4047], al
movzx eax, word [esi + 0x220]
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.005316e0
push dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.00499080
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 0x4d6d20
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2f4], 9
jle 0x4d6d5c
mov ecx, edi
call fcn.00483190
mov ecx, edi
mov esi, eax
call fcn.004830c0
cmp esi, 1
mov ecx, 1
mov edx, esi
cmovl edx, ecx
xor ecx, ecx
cmp esi, 1
mov dword [ebp - 0x3e40], edx
cmovge ecx, eax
mov dword [ebp - 0x3e44], ecx
test ecx, ecx
jle 0x4d6ac3
lea eax, [edx + edx*2]
lea eax, [ecx + eax*2]
imul eax, eax, 0x64
add eax, str.Ghost
nop
cmp byte [eax], 0
jne 0x4d6abd
dec ecx
sub eax, 0x64
test ecx, ecx
jg 0x4d6ab0
mov dword [ebp - 0x3e44], 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 - 0x3e5c], eax
je 0x4d6d56
push 0x2c8
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x41dc], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x4d6b1b
push 0
push 0
push dword [ebp - 0x3e44]
mov ecx, eax
push dword [ebp - 0x3e40]
call fcn.00498890
mov esi, eax
jmp 0x4d6b1d
xor esi, esi
push dword [ebp - 0x3e5c]
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.0044d2f0
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.0051ad60
cmp dword [esi + 0x1b4], 4
jge 0x4d6c24
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 - 0x405c], 0x18
mov dword [ebp - 0x405b], esi
call fcn.0044cdf0
mov byte [ebp - 0x4057], al
movzx eax, word [esi + 0x220]
mov ecx, dword [ebp - 0x3e3c]
mov word [ebp - 0x4056], ax
movzx eax, word [esi + 0x224]
mov word [ebp - 0x4054], ax
mov al, byte [esi + 0x108]
mov byte [ebp - 0x4051], al
mov al, byte [esi + 0x10c]
push 0
push 5
mov byte [ebp - 0x4050], al
lea eax, [ebp - 0x405c]
push eax
push 0xd
push dword [esi + 0x10c]
push dword [esi + 0x108]
push 0
call fcn.005316e0
push dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.00499080
mov byte [ebp - 0x4018], 0x38
mov dword [ebp - 0x4017], 0xffffffff
mov dword [ebp - 0x4013], 0xffffffff
mov al, byte [esi + 0x108]
mov byte [ebp - 0x400f], al
mov al, byte [esi + 0x10c]
mov byte [ebp - 0x400e], al
lea eax, [ebp - 0x4018]
mov word [ebp - 0x400d], 0xff
mov dword [ebp - 0x400b], 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.005316e0
mov dword [edi + 0x14f70], esi
mov dword [esi + 0x21c], edi
mov dword [edi + 0x184], 1
mov esi, dword [ebp - 0x3e54]
cmp dword [edi + 0x14f34], 1
jne 0x4d6d8a
mov word [ebp - 0x4148], 0x3e
lea edx, [ebp - 0x3e50]
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.00475aa0
cmp eax, 9
jle 0x4d6dbb
mov word [ebp - 0x4154], 0x33e
lea edx, [ebp - 0x3e50]
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 - 0x3e50]
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 - 0x3e50]
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 - 0x3e44], eax
nop
imul ecx, dword [edi + 0x188], 0x980
push 0
push eax
add ecx, 0x43c
add ecx, esi
add ecx, edi
call fcn.0052a1b0
mov eax, dword [ebp - 0x3e44]
add esi, 0x138
add eax, 0x200
mov dword [ebp - 0x3e44], eax
cmp esi, 0x750
jl 0x4d6e30
mov esi, dword [ebp - 0x3e54]
lea edx, [ebp - 0x3e50]
push edx
push 0
lea edx, [ebp - 0x41d8]
mov ecx, dword [esi + 0x34]
push edx
push 4
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
cmp dword [edi + 0x14fac], 0
jne case.default.0x4d8016
cmp dword [edi + 0x14f48], 0
je case.default.0x4d8016
lea eax, [ebp - 0x206b]
push str.Thanks_for_paying__Remember_to_use_the__referredby__name_
push eax
call fcn.00473380
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e50]
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.00473380
mov ecx, dword [esi + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e50]
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.0x4d8016
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d6f22
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f24], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f23], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f22], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f21], al
mov byte [ebp - 0x3f20], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d6fac
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d6fbf
lea eax, [ebp - 0x3f24]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov esi, edi
push eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
push dword [ebp - 0x3e58]
mov ecx, esi
push 0
call fcn.004e83a0
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.00473350
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.004a4370
mov eax, dword [edi + 0x14f34]
add esp, 0x18
cmp eax, 2
je 0x4d7042
cmp eax, 3
jne 0x4d7056
lea eax, [ebp - 0x13b0]
push eax
push str.moderatorLog.txt
call fcn.004a4370
add esp, 8
lea ecx, [ebp - 0x208c]
call fcn.0051aae0
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 - 0x3e44], eax
cmp cx, 0x18
jae 0x4d709e
mov ecx, 0xffff
add dx, cx
mov word [ebp - 0x2086], dx
jmp 0x4d70a5
mov word [ebp - 0x2084], ax
movzx eax, word [ebp - 0x2082]
cmp esi, 0x18
push eax
mov eax, dword [ebp - 0x3e44]
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.00473350
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.004a4370
mov eax, dword [edi + 0x14f34]
add esp, 0x20
cmp eax, 2
je 0x4d7103
cmp eax, 3
jne 0x4d7117
lea eax, [ebp - 0x13b0]
push eax
push str.moderatorLog.txt
call fcn.004a4370
add esp, 8
mov esi, dword [ebp - 0x3e3c]
mov ecx, edi
push 0
push esi
call fcn.004740d0
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.00473380
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.005316e0
push 0
push esi
mov ecx, edi
call fcn.0048bfa0
mov ecx, esi
call fcn.0044cdf0
test eax, eax
jne 0x4d71c0
mov ecx, esi
call fcn.0044cdf0
test eax, eax
jne 0x4d7197
cmp dword [esi + 0x124], eax
jg 0x4d71c0
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 0x4d721c
mov ecx, esi
call fcn.0044cdf0
imul ecx, dword [edi + 0x188], 0x980
cmp eax, 3
jne 0x4d71fd
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 0x4d7223
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.0048cc10
mov eax, dword [edi + 0x14f70]
mov esi, dword [ebp - 0x3e38]
test eax, eax
je case.0x4d2ef6.2
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.0x4d2ef6.2
mov ecx, dword [ebp - 0x3e50]
mov eax, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d733d
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f2c], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f2b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f2a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f29], al
mov byte [ebp - 0x3f28], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d73c7
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d73da
lea eax, [ebp - 0x3f2c]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov esi, edi
push eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
mov dword [edi + 0x258], 0
imul ecx, dword [edi + 0x188], 0x980
cmp dword [ecx + edi + 0x2c4], 0xffffffff
je case.default.0x4d8016
mov al, byte [ebp - 0xfab]
cmp al, 0xa
jne 0x4d748e
mov eax, dword [ecx + edi + 0x2d8]
cmp dword [eax + 0x20], 0
je 0x4d7468
cmp dword [ebp - 0xfaa], 6
jne 0x4d7468
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.004e3250
jmp case.default.0x4d8016
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.004e3250
jmp case.default.0x4d8016
cmp al, 1
jne 0x4d74a1
push 1
mov ecx, esi
push edi
call fcn.004e3250
jmp case.default.0x4d8016
cmp al, 2
jne 0x4d74b4
push 2
push edi
mov ecx, esi
call fcn.004e3250
jmp case.default.0x4d8016
cmp al, 3
jne 0x4d74c7
push 3
push edi
mov ecx, esi
call fcn.004e3250
jmp case.default.0x4d8016
cmp al, 4
jne 0x4d74da
push 4
push edi
mov ecx, esi
call fcn.004e3250
jmp case.default.0x4d8016
cmp al, 0xb
jne 0x4d7569
cmp dword [edi + 0x14f34], 3
jne 0x4d74f5
push str.Trial_moderators_cannot_open_any_guild_chests.
jmp 0x4d6edc
lea eax, [ebp - 0x409c]
push eax
lea eax, [ecx + 0x2a0]
mov ecx, esi
add eax, edi
push eax
call fcn.004be370
test eax, eax
je 0x4d755f
mov edx, dword [ebp - 0x409c]
cmp edx, dword [ebp - 0x3e3c]
jne 0x4d755f
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.004e3250
jmp case.default.0x4d8016
push str.You_are_not_allowed_to_open_this_chest._You_must_be_in_the_guild_and_a_paying_player.
jmp 0x4d6edc
cmp al, 9
jne 0x4d78d5
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0xfaa]
call fcn.004bdc70
cmp dword [ebp - 0xfaa], 6
mov esi, eax
jne 0x4d7596
mov esi, dword [edi + 0x14f7c]
test esi, esi
je case.default.0x4d8016
lea edx, [esi + 0x18c]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x3e40], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d75b0
sub ecx, dword [ebp - 0x3e40]
cmp ecx, 1
jb case.default.0x4d8016
lea eax, [edi + 0x18c]
push eax
push edx
call fcn.0044d720
add esp, 8
test eax, eax
jne case.default.0x4d8016
lea ecx, [ebp - 0x2160]
call fcn.0051aae0
mov eax, dword [edi + 0x14f7c]
test eax, eax
jne 0x4d787e
cmp dword [esi + 0x14f7c], eax
jne 0x4d787e
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.00473350
push 0x64
lea eax, [ebp - 0x206b]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e50]
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.004b56d0
mov eax, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e50]
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 - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d771e
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [esi + 0x180]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f34], dl
sar eax, 8
mov byte [ebp - 0x3f33], al
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f32], al
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f31], al
mov byte [ebp - 0x3f30], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d7782
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 - 0x3e4c], 5
jmp 0x4d7795
lea eax, [ebp - 0x3f34]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
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.00473350
push 0x64
lea eax, [ebp - 0x206b]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e50]
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.004b56d0
mov eax, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e50]
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 - 0x3e54]
push 9
push edi
call fcn.004e3250
push 8
push edi
mov edi, dword [ebp - 0x3e54]
mov ecx, edi
call fcn.004e3250
push 9
push esi
mov ecx, edi
call fcn.004e3250
push 8
push esi
mov ecx, edi
call fcn.004e3250
jmp case.default.0x4d8016
cmp eax, esi
jne 0x4d78a9
cmp dword [esi + 0x14f7c], edi
jne 0x4d78a9
mov eax, dword [ebp - 0xfaf]
mov ecx, dword [ebp - 0x3e54]
push 9
push edi
mov dword [edi + 0x14ef4], eax
call fcn.004e3250
jmp case.default.0x4d8016
cmp dword [esi + 0x14f7c], 0
je case.default.0x4d8016
lea eax, [ebp - 0x206b]
push str.That_person_is_busy_trading_with_someone_else.
push eax
call fcn.00473380
mov eax, dword [ebp - 0x3e54]
mov ecx, dword [eax + 0x34]
jmp 0x4d6eeb
cmp al, 8
jne 0x4d7948
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0xfaa]
call fcn.004bdc70
cmp dword [ebp - 0xfaa], 6
mov ecx, eax
jne 0x4d78fe
mov ecx, dword [edi + 0x14f7c]
test ecx, ecx
je case.default.0x4d8016
cmp dword [edi + 0x14f7c], ecx
jne 0x4d7931
cmp dword [ecx + 0x14f7c], edi
jne 0x4d7931
mov eax, dword [ebp - 0xfaf]
mov ecx, esi
push 8
push edi
mov dword [edi + 0x14ef0], eax
call fcn.004e3250
jmp case.default.0x4d8016
cmp dword [ecx + 0x14f7c], 0
je case.default.0x4d8016
push str.That_person_is_busy_trading_with_someone_else.
jmp 0x4d6edc
cmp al, 6
jne 0x4d7a48
mov eax, dword [ebp - 0xfaa]
test eax, eax
je case.default.0x4d8016
mov ecx, dword [ebp - 0x3e3c]
push 1
push eax
mov ecx, dword [ecx + 0x118]
call fcn.0051aed0
mov esi, eax
test esi, esi
je case.default.0x4d8016
mov ecx, dword [esi + 0x108]
cmp ecx, dword [edi + 0x108]
jne case.default.0x4d8016
mov ecx, dword [esi + 0x10c]
cmp ecx, dword [edi + 0x10c]
jne case.default.0x4d8016
mov ecx, esi
call fcn.0044cdf0
cmp eax, 2
je 0x4d79c8
mov ecx, esi
call fcn.0044cdf0
cmp eax, 3
je 0x4d79c8
mov ecx, esi
call fcn.0044cdf0
cmp eax, 0x15
jne case.default.0x4d8016
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.0044cdf0
cmp eax, 2
je 0x4d7a35
mov ecx, esi
call fcn.0044cdf0
cmp eax, 0x15
je 0x4d7a35
mov ecx, esi
call fcn.0044cdf0
cmp eax, 3
jne case.default.0x4d8016
mov ecx, dword [ebp - 0x3e54]
push 7
push edi
call fcn.004e3250
jmp case.default.0x4d8016
mov ecx, dword [ebp - 0x3e54]
push 6
push edi
call fcn.004e3250
jmp case.default.0x4d8016
test al, al
jne case.default.0x4d8016
mov eax, dword [edi + 0x14f70]
test eax, eax
je 0x4d7a7d
lea ecx, [ebp - 0x41d4]
push ecx
push eax
mov ecx, esi
call fcn.004be5b0
mov edx, eax
test edx, edx
je 0x4d7aaa
push dword [edx + 0x10c]
push dword [edx + 0x108]
jmp 0x4d7a89
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.004e3250
jmp case.default.0x4d8016
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d7ae7
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f3c], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f3b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f3a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f39], al
mov byte [ebp - 0x3f38], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d7b71
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d7b84
lea eax, [ebp - 0x3f3c]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov esi, edi
push eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4d7c19
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x21c8], 0x17
push str.You_are_stunned__and_cant_do_that_
push eax
call fcn.00473350
mov ecx, 0x18
mov eax, dword [ebp - 0x3e54]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x21c7]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e50]
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.0x4d8016
mov dword [edi + 0x258], 0
cmp dword [edi + 0x14f7c], 0
jne 0x4d7d24
cmp byte [ebp - 0xfa2], 0
je 0x4d7d24
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x2d8]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x4d7d24
cmp dword [eax + 0x28], 0
jne 0x4d7d24
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 0x4d7c71
sub ecx, esi
cmp ecx, 1
jbe 0x4d7d1e
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d7c88
sub ecx, esi
push ecx
push edx
push str.Demon_Amulet
call fcn.0059b620
add esp, 0xc
test eax, eax
je 0x4d7d1e
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 0x4d7cb6
sub ecx, esi
push ecx
push edx
push str.Dragon_Orchid
call fcn.0059b620
add esp, 0xc
test eax, eax
je 0x4d7d1e
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 0x4d7ce0
sub ecx, esi
push ecx
push edx
push str.Ancient_Dragonscale
call fcn.0059b620
add esp, 0xc
test eax, eax
je 0x4d7d1e
lea eax, [ebp - 0x206b]
push str.You_can_only_put_Amulets__Dragonscales_and_Orchids_onto_the_ground.
push eax
call fcn.00473380
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x11c]
jmp 0x4d6eeb
mov esi, dword [ebp - 0x3e54]
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d8016
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.004e8520
cmp eax, 1
jne 0x4d7ed9
push edi
mov ecx, esi
call fcn.004eb270
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.004e3250
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.0x4d8016
mov eax, dword [edi + 0x108]
mov ecx, dword [edi + 0x14f70]
mov dword [ebp - 0x3e5c], eax
mov eax, dword [edi + 0x10c]
mov dword [ebp - 0x3e68], eax
xor eax, eax
mov dword [ebp - 0x3e44], eax
test ecx, ecx
je 0x4d7e06
lea eax, [ebp - 0x3e44]
push eax
push ecx
mov ecx, esi
call fcn.004be5b0
mov ecx, eax
test ecx, ecx
je 0x4d7e00
mov eax, dword [ecx + 0x108]
mov dword [ebp - 0x3e5c], eax
mov eax, dword [ecx + 0x10c]
mov dword [ebp - 0x3e68], eax
mov eax, dword [ebp - 0x3e44]
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.0044e560
mov edx, dword [ebp - 0x3e68]
push 0
push 5
test eax, eax
je 0x4d7e86
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 - 0x3e5c]
push eax
push 0
mov byte [ebp - 0x3fd3], al
mov byte [ebp - 0x3fd2], dl
call fcn.005316e0
jmp case.default.0x4d8016
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 - 0x3e5c]
push eax
push 0
mov byte [ebp - 0x40c3], 6
mov byte [ebp - 0x40bd], al
mov byte [ebp - 0x40bc], dl
call fcn.005316e0
jmp case.default.0x4d8016
cmp eax, 2
jne case.default.0x4d8016
push edi
mov ecx, esi
call fcn.004eb270
jmp case.default.0x4d8016
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d7f05
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f44], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f43], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f42], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f41], al
mov byte [ebp - 0x3f40], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d7f8f
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d7fa2
lea eax, [ebp - 0x3f44]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov esi, edi
push eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
mov dword [edi + 0x258], 0
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d8016
lea eax, [ebp - 0xfb0]
mov ecx, esi
push eax
push edi
call fcn.004e29c0
test eax, eax
je case.default.0x4d8016
movzx eax, byte [ebp - 0xfa7]
add eax, 0xffffff38
cmp eax, 3
ja case.default.0x4d8016
jmp dword [eax*4 + 0x4dd09c]
push 2
mov ecx, esi
push edi
call fcn.004e3250
jmp case.default.0x4d8016
push 3
mov ecx, esi
push edi
call fcn.004e3250
jmp case.default.0x4d8016
push 4
mov ecx, esi
push edi
call fcn.004e3250
jmp case.default.0x4d8016
lea eax, [ebp - 0x3e3c]
mov esi, edi
push eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
mov eax, dword [edi + 0x14f70]
test eax, eax
je 0x4d81a0
lea ecx, [ebp - 0x40a0]
push ecx
push eax
mov ecx, esi
call fcn.004be5b0
mov esi, eax
test esi, esi
je case.default.0x4d8016
mov ecx, dword [ebp - 0x3e54]
lea eax, [ebp - 0x40a0]
push eax
push dword [ebp - 0xfab]
call fcn.004bdc70
test eax, eax
je 0x4d80f4
cmp dword [edi + 0x14f34], 1
je 0x4d80d6
cmp byte [edi + 0x14fb9], 0
je case.default.0x4d8016
cmp byte [eax + 0x14fb9], 0
je case.default.0x4d8016
cmp dword [esi + 0x204], 0
jne 0x4d80e9
mov dword [esi + 0x11c], 0
mov dword [esi + 0x204], eax
jmp case.default.0x4d8016
mov ecx, dword [ebp - 0x3e54]
lea eax, [ebp - 0x41d0]
push eax
push dword [ebp - 0xfab]
call fcn.004be5b0
mov dword [ebp - 0x3e44], eax
test eax, eax
je case.default.0x4d8016
mov ecx, dword [eax + 0x21c]
test ecx, ecx
je 0x4d8182
cmp dword [ecx + 0x14f34], 0
jne 0x4d8182
mov ecx, dword [ebp - 0x3e3c]
call fcn.0044cdf0
cmp eax, 4
jne 0x4d814c
mov eax, dword [ebp - 0x3e3c]
cmp dword [eax + 0x134], 6
je 0x4d817c
mov eax, dword [ebp - 0x3e44]
mov ecx, dword [eax + 0x21c]
test ecx, ecx
je case.default.0x4d8016
cmp byte [ecx + 0x14fb9], 0
je case.default.0x4d8016
cmp byte [edi + 0x14fb9], 0
je case.default.0x4d8016
jmp 0x4d8182
mov eax, dword [ebp - 0x3e44]
cmp dword [esi + 0x214], 0
jne 0x4d8195
mov dword [esi + 0x11c], 0
mov dword [esi + 0x214], eax
jmp case.default.0x4d8016
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d8016
mov eax, dword [ebp - 0xfab]
test eax, eax
je case.default.0x4d8016
mov ecx, dword [ebp - 0x3e3c]
push 1
push eax
mov ecx, dword [ecx + 0x118]
call fcn.0051aed0
mov esi, eax
test esi, esi
je 0x4d824a
mov ecx, dword [esi + 0x108]
cmp ecx, dword [edi + 0x108]
jne 0x4d824a
mov ecx, dword [esi + 0x10c]
cmp ecx, dword [edi + 0x10c]
jne 0x4d824a
mov ecx, esi
call fcn.0044cdf0
cmp eax, 1
jne 0x4d824a
mov eax, dword [esi + 0x21c]
test eax, eax
je 0x4d8231
cmp dword [eax + 0x14f34], 0
jne 0x4d8231
cmp byte [eax + 0x14fb9], 0
je 0x4d824a
cmp byte [edi + 0x14fb9], 0
je 0x4d824a
cmp dword [edi + 0x14ea0], 0
jne 0x4d8244
mov dword [edi + 0x11c], 0
mov dword [edi + 0x14ea0], esi
mov ecx, dword [ebp - 0x3e54]
lea eax, [ebp - 0x41cc]
push eax
push dword [ebp - 0xfab]
call fcn.004bdc70
test eax, eax
je case.default.0x4d8016
cmp byte [edi + 0x14fb9], 0
je case.default.0x4d8016
cmp byte [eax + 0x14fb9], 0
je case.default.0x4d8016
cmp dword [edi + 0x14ea4], 0
jne 0x4d82a0
cmp dword [edi + 0x14ea0], 0
jne 0x4d82a0
mov dword [edi + 0x11c], 0
mov dword [edi + 0x14ea4], eax
jmp case.default.0x4d8016
lea eax, [ebp - 0x3e3c]
mov ecx, edi
push eax
push dword [ebp - 0x3e58]
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d8016
mov eax, dword [ebp - 0xfab]
test eax, eax
je case.default.0x4d8016
mov ecx, dword [ebp - 0x3e3c]
push 1
push eax
mov ecx, dword [ecx + 0x118]
call fcn.0051aed0
mov esi, eax
test esi, esi
je case.default.0x4d8016
mov ecx, dword [esi + 0x108]
cmp ecx, dword [edi + 0x108]
jne case.default.0x4d8016
mov ecx, dword [esi + 0x10c]
cmp ecx, dword [edi + 0x10c]
jne case.default.0x4d8016
mov ecx, esi
call fcn.0044cdf0
cmp eax, 1
jne case.default.0x4d8016
mov eax, dword [esi + 0x21c]
test eax, eax
je 0x4d835a
cmp dword [eax + 0x14f34], 1
je 0x4d836d
cmp dword [edi + 0x14ea0], 0
jne 0x4d836d
mov dword [edi + 0x11c], 0
mov dword [edi + 0x14ea0], esi
jmp case.default.0x4d8016
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d838e
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f4c], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f4b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f4a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f49], al
mov byte [ebp - 0x3f48], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d8418
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d842b
lea eax, [ebp - 0x3f4c]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov esi, edi
push eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
mov dword [edi + 0x258], 0
imul ecx, dword [edi + 0x188], 0x980
cmp dword [ecx + edi + 0x2c4], 0xffffffff
je case.default.0x4d8016
mov eax, dword [ebp - 0xfaf]
test eax, eax
je case.default.0x4d8016
mov ecx, dword [ecx + edi + 0x2e0]
push eax
add ecx, 8
call fcn.0044e4f0
test eax, eax
je 0x4d84b3
cmp dword [eax + 0x110], 6
jne 0x4d84b3
mov ecx, eax
call fcn.0044ce00
push eax
push edi
mov ecx, esi
call fcn.004cd620
jmp case.default.0x4d8016
mov esi, dword [ebp - 0xfaf]
xor eax, eax
mov edx, str.Swordsmith
xor ecx, ecx
cmp dword [ecx + str.XOKHNBC12345678GD90:S], esi
jne 0x4d84cd
lea eax, [edx - 0x20]
cmp dword [ecx + 0x616c54], esi
cmove eax, edx
cmp dword [ecx + 0x616c58], esi
jne 0x4d84e1
lea eax, [edx + 0x20]
add ecx, 0xc
add edx, 0x60
cmp ecx, 0x54
jb 0x4d84c2
test eax, eax
je case.default.0x4d8016
push eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e470
test eax, eax
je case.default.0x4d8016
cmp dword [eax + 0x110], 6
jne case.default.0x4d8016
mov ecx, eax
call fcn.0044ce00
mov ecx, dword [ebp - 0x3e54]
push eax
push edi
call fcn.004cd620
jmp case.default.0x4d8016
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d8552
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f54], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f53], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f52], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f51], al
mov byte [ebp - 0x3f50], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d85dc
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d85ef
lea eax, [ebp - 0x3f54]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, edi
push eax
push dword [ebp - 0x3e58]
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
mov esi, dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.0044cdf0
cmp eax, 1
jne 0x4d87c8
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d8016
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 - 0x3e5c], 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 0x4d8712
movsx eax, word [ebp - 0x3e31]
cmp ecx, eax
jge 0x4d8712
movsx eax, word [ebp - 0x3e2f]
lea eax, [eax + eax*4]
mov dword [ebp - 0x3e44], eax
add eax, edx
mov dword [ebp - 0x3e40], eax
js 0x4d8712
movsx eax, word [ebp - 0x3e33]
cmp dword [ebp - 0x3e40], eax
jge 0x4d8712
mov eax, dword [esi + 0x124]
imul eax, ecx
add eax, dword [esi + 0x134]
add eax, dword [ebp - 0x3e44]
mov al, byte [eax + edx]
jmp 0x4d8714
xor al, al
mov byte [edi - 0x19], al
mov eax, dword [ebp - 0x3e5c]
mov byte [edi], 0
movsx ecx, word [ebp - 0x3e2d]
lea eax, [eax + ecx*4]
add ecx, eax
js 0x4d877c
movsx eax, word [ebp - 0x3e31]
cmp ecx, eax
jge 0x4d877c
movsx eax, word [ebp - 0x3e2f]
lea eax, [eax + eax*4]
mov dword [ebp - 0x3e44], eax
add eax, edx
mov dword [ebp - 0x3e40], eax
js 0x4d877c
movsx eax, word [ebp - 0x3e33]
cmp dword [ebp - 0x3e40], eax
jge 0x4d877c
mov eax, dword [esi + 0x124]
imul eax, ecx
add eax, dword [esi + 0x138]
add eax, dword [ebp - 0x3e44]
mov al, byte [eax + edx]
jmp 0x4d877e
xor al, al
mov byte [edi], al
inc edx
mov eax, dword [ebp - 0x3e5c]
inc edi
cmp edx, 5
jl 0x4d86b2
inc eax
mov dword [ebp - 0x3e5c], eax
cmp eax, 5
jl 0x4d86b0
mov eax, dword [ebp - 0x3e54]
lea edx, [ebp - 0x3e50]
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.0x4d8016
mov ecx, esi
call fcn.0044cdf0
cmp eax, 3
jne case.default.0x4d8016
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d8016
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 - 0x3e5c], 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 0x4d88c2
movsx eax, word [ebp - 0x3e31]
cmp ecx, eax
jge 0x4d88c2
movsx eax, word [ebp - 0x3e2f]
lea eax, [eax + eax*4]
mov dword [ebp - 0x3e44], eax
add eax, edx
mov dword [ebp - 0x3e40], eax
js 0x4d88c2
movsx eax, word [ebp - 0x3e33]
cmp dword [ebp - 0x3e40], eax
jge 0x4d88c2
mov eax, dword [esi + 0x124]
imul eax, ecx
add eax, dword [esi + 0x134]
add eax, dword [ebp - 0x3e44]
mov al, byte [eax + edx]
jmp 0x4d88c4
xor al, al
mov byte [edi - 0x19], al
mov eax, dword [ebp - 0x3e5c]
mov byte [edi], 0
movsx ecx, word [ebp - 0x3e2d]
lea eax, [eax + ecx*4]
add ecx, eax
js 0x4d892c
movsx eax, word [ebp - 0x3e31]
cmp ecx, eax
jge 0x4d892c
movsx eax, word [ebp - 0x3e2f]
lea eax, [eax + eax*4]
mov dword [ebp - 0x3e44], eax
add eax, edx
mov dword [ebp - 0x3e40], eax
js 0x4d892c
movsx eax, word [ebp - 0x3e33]
cmp dword [ebp - 0x3e40], eax
jge 0x4d892c
mov eax, dword [esi + 0x124]
imul eax, ecx
add eax, dword [esi + 0x138]
add eax, dword [ebp - 0x3e44]
mov al, byte [eax + edx]
jmp 0x4d892e
xor al, al
mov byte [edi], al
inc edx
mov eax, dword [ebp - 0x3e5c]
inc edi
cmp edx, 5
jl 0x4d8862
inc eax
mov dword [ebp - 0x3e5c], eax
cmp eax, 5
jl 0x4d8860
jmp 0x4d87a1
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d896c
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f5c], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f5b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f5a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f59], al
mov byte [ebp - 0x3f58], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d89f6
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d8a09
lea eax, [ebp - 0x3f5c]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, edi
push eax
push dword [ebp - 0x3e58]
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
mov esi, dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.0044cdf0
cmp eax, 1
jne 0x4d8bdc
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d8016
push edi
mov ecx, esi
call fcn.004f1f90
test eax, eax
je case.default.0x4d8016
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 0x4d8aeb
mov al, byte [esi + 0x13c]
inc al
cmp al, 4
mov byte [esi + 0x13c], al
jb 0x4d8abc
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.005316e0
jmp case.default.0x4d8016
cmp byte [ebp - 0xfa8], 0
je 0x4d8b19
mov al, byte [esi + 0x13d]
inc al
mov byte [esi + 0x13d], al
cmp al, 0xb
jb 0x4d8b0f
mov byte [esi + 0x13d], 0
xor al, al
inc al
mov byte [ebp - 0x3e74], al
jmp 0x4d8ac4
cmp byte [ebp - 0xfa9], 0
je 0x4d8b87
cwde
push eax
movsx eax, cx
mov ecx, esi
push eax
push 1
call fcn.004f20b0
test eax, eax
js 0x4d8b41
mov byte [ebp - 0x3e75], al
jmp 0x4d8ac4
cmp eax, 0xfffffffe
jne 0x4d8b62
lea eax, [ebp - 0x206b]
push str.Edit_outside_bounds_denied.
push eax
call fcn.00473380
mov ecx, dword [esi + 0x11c]
jmp 0x4d6eeb
cmp eax, 0xffffffff
jne case.default.0x4d8016
lea eax, [ebp - 0x206b]
push str.That_would_close_off_parts_of_the_dungeon.
push eax
call fcn.00473380
mov ecx, dword [esi + 0x11c]
jmp 0x4d6eeb
cmp byte [ebp - 0xfaa], 0
je case.default.0x4d8016
cwde
push eax
movsx eax, cx
mov ecx, esi
push eax
push 0
call fcn.004f20b0
test eax, eax
js 0x4d8bb2
mov byte [ebp - 0x3e76], al
jmp 0x4d8ac4
cmp eax, 0xfffffffe
je 0x4d8b46
cmp eax, 0xffffffff
jne case.default.0x4d8016
lea eax, [ebp - 0x206b]
push str.That_would_close_off_parts_of_the_dungeon.
push eax
call fcn.00473380
mov ecx, dword [esi + 0x11c]
jmp 0x4d6eeb
mov ecx, esi
call fcn.0044cdf0
cmp eax, 3
jne case.default.0x4d8016
lea ecx, [esi + 0x148]
call fcn.0051ab80
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 0x4d8c42
mov al, byte [esi + 0x13c]
inc al
cmp al, 7
jmp 0x4d8aab
cmp byte [ebp - 0xfa8], 0
je 0x4d8c77
mov al, byte [esi + 0x13d]
inc al
mov byte [esi + 0x13d], al
cmp al, 8
jb 0x4d8b0f
xor al, al
mov byte [esi + 0x13d], 0
inc al
mov byte [ebp - 0x3e74], al
jmp 0x4d8ac4
cmp byte [ebp - 0xfa9], 0
je 0x4d8ccc
cwde
push eax
movsx eax, cx
mov ecx, esi
push eax
push 1
call fcn.00535b00
test eax, eax
js 0x4d8c9e
mov byte [ebp - 0x3e75], al
jmp 0x4d8ac4
cmp eax, 0xfffffffe
je 0x4d8b46
cmp eax, 0xffffffff
jne case.default.0x4d8016
lea eax, [ebp - 0x206b]
push str.That_would_close_off_parts_of_the_tower.
push eax
call fcn.00473380
mov ecx, dword [esi + 0x11c]
jmp 0x4d6eeb
cmp byte [ebp - 0xfaa], 0
je case.default.0x4d8016
cwde
push eax
movsx eax, cx
mov ecx, esi
push eax
push 0
call fcn.00535b00
test eax, eax
js 0x4d8c9e
mov byte [ebp - 0x3e76], al
jmp 0x4d8ac4
mov ecx, dword [ebp - 0x3e50]
mov eax, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d8d0d
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f64], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f63], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f62], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f61], al
mov byte [ebp - 0x3f60], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d8d97
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d8daa
lea eax, [ebp - 0x3f64]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, edi
push eax
push dword [ebp - 0x3e58]
call fcn.004bdc70
mov esi, eax
mov dword [ebp - 0x3e38], esi
test esi, esi
je case.0x4d2ef6.2
mov ecx, dword [ebp - 0x3e3c]
mov ecx, dword [ecx + 0x110]
call fcn.0044e540
mov edi, eax
test edi, edi
je case.0x4d2ef6.2
nop dword [eax]
mov ecx, edi
call fcn.0044cdf0
test eax, eax
jne 0x4d8e09
mov eax, dword [ebp - 0xfaf]
cmp eax, dword [edi + 0x180]
je 0x4d8e25
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x110]
call fcn.0044e5f0
mov edi, eax
test edi, edi
jne 0x4d8df0
jmp case.0x4d2ef6.2
lea eax, [ebp - 0x2420]
mov byte [ebp - 0x2420], 9
push eax
mov ecx, edi
call fcn.00475cd0
mov eax, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e50]
push edx
push 0
lea edx, [ebp - 0x2420]
mov ecx, dword [eax + 0x11c]
push edx
push 0x4d
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
xor ecx, ecx
xor esi, esi
mov dword [ebp - 0x3e44], ecx
nop dword [eax]
imul eax, dword [edi + 0x188], 0x980
add eax, edi
cmp byte [eax + esi + 0x344], 0xff
je 0x4d8f7e
mov byte [ebp - 0x20cc], 0x3a
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x20cb], eax
lea eax, [ebp - 0x20bf]
push 0x10
push eax
imul eax, dword [edi + 0x188], 0x980
push 0x10
add eax, 0x334
add eax, edi
add eax, esi
push eax
call fcn.0044d2f0
imul eax, dword [edi + 0x188], 0x980
lea edx, [ebp - 0x3e50]
add esp, 0x10
add eax, edi
push edx
push 0
lea edx, [ebp - 0x20cc]
mov al, byte [eax + esi + 0x345]
mov byte [ebp - 0x20c6], al
imul eax, dword [edi + 0x188], 0x980
push edx
push 0x1d
add eax, edi
mov al, byte [eax + esi + 0x344]
mov byte [ebp - 0x20c7], al
imul eax, dword [edi + 0x188], 0x980
add eax, edi
mov al, byte [eax + esi + 0x346]
mov byte [ebp - 0x20c5], al
imul eax, dword [edi + 0x188], 0x980
add eax, edi
movss xmm1, dword [eax + esi + 0x354]
divss xmm1, dword [0x5d85c4]
movzx eax, byte [eax + esi + 0x347]
movd xmm0, eax
mov eax, dword [ebp - 0x3e44]
cvtdq2ps xmm0, xmm0
mov byte [ebp - 0x20c4], al
mov eax, dword [ebp - 0x3e3c]
addss xmm1, xmm0
movss dword [ebp - 0x20c3], xmm1
mov ecx, dword [eax + 0x11c]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov ecx, dword [ebp - 0x3e44]
inc ecx
add esi, 0x34
mov dword [ebp - 0x3e44], ecx
cmp esi, 0x68
jl 0x4d8e70
push dword [ebp - 0x3e58]
mov ecx, edi
push 0
push dword [ebp - 0x3e3c]
call fcn.004743f0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 8
call fcn.0044e540
mov esi, dword [ebp - 0x3e38]
test eax, eax
je case.0x4d2ef6.2
mov esi, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x110]
cmp ecx, 1
jne 0x4d9001
push edi
push eax
lea eax, [ebp - 0x4228]
push eax
call fcn.004a4170
add esp, 0xc
lea edx, [ebp - 0x3e50]
push edx
lea edx, [ebp - 0x4228]
jmp 0x4d907d
cmp ecx, 0xe
jne 0x4d90a8
mov ecx, dword [eax + 0x11c]
lea edx, [ebp - 0x3e50]
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 + 0x62c680]
mov byte [ebp - 0x4106], al
mov eax, dword [ecx]
mov al, byte [eax + eax*2 + 0x62c681]
mov byte [ebp - 0x4105], al
mov eax, dword [ecx]
mov al, byte [eax + eax*2 + 0x62c682]
mov byte [ebp - 0x4104], al
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x4117], eax
xor eax, eax
mov word [ebp - 0x4109], ax
mov byte [ebp - 0x4107], 0x80
mov ecx, dword [esi + 0x11c]
push 0
push edx
push 0x1d
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 8
call fcn.0044e5b0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 8
call fcn.0044e5f0
test eax, eax
jne 0x4d8fd3
jmp case.default.0x4d8016
mov ecx, dword [ebp - 0x3e50]
mov eax, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d90e4
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f6c], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f6b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f6a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f69], al
mov byte [ebp - 0x3f68], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d916e
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d9181
lea eax, [ebp - 0x3f6c]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, edi
push eax
push dword [ebp - 0x3e58]
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
mov eax, dword [ebp - 0x3e3c]
push 0
push dword [edi + 0x10c]
push dword [edi + 0x108]
mov ecx, dword [eax + 0x118]
call fcn.0051ad80
mov esi, eax
test esi, esi
je 0x4d94d2
nop
mov ecx, esi
call fcn.0044cdf0
cmp eax, 4
jne case.default.0x4d9214
mov eax, dword [esi + 0x108]
cmp eax, dword [edi + 0x108]
jne case.default.0x4d9214
mov eax, dword [esi + 0x10c]
cmp eax, dword [edi + 0x10c]
jne case.default.0x4d9214
movzx eax, byte [ebp - 0xfaf]
cmp eax, 3
ja case.default.0x4d9214
jmp dword [eax*4 + 0x4dd0ac]
mov ecx, dword [ebp - 0x3e54]
push 1
push dword [ebp - 0x3e3c]
push esi
push edi
call fcn.004de210
jmp case.default.0x4d9214
mov ecx, dword [ebp - 0x3e54]
push 0
push dword [ebp - 0x3e3c]
push esi
push edi
call fcn.004de210
jmp case.default.0x4d9214
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 0x4d92b2
jl 0x4d9274
cmp esi, 0xb4
jae 0x4d92b2
push str.You_dont_have_180_gold_for_healing.
lea eax, [ebp - 0x206b]
push eax
call fcn.00473380
mov eax, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e50]
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.0x4d9214
mov eax, dword [edx + edi + 0x2fc]
cmp eax, dword [edx + edi + 0x2f8]
jl 0x4d92c9
push str.You_are_already_fully_healed.
jmp 0x4d9279
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.00482e50
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 - 0x3e44], 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 - 0x3e40], edx
mov ecx, dword [eax + edi + 0x2f8]
cmp dword [eax + edi + 0x2fc], ecx
jle 0x4d934c
mov dword [eax + edi + 0x2fc], ecx
mov byte [ebp - 0x4100], 0x26
lea edx, [ebp - 0x3e50]
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.00473380
mov esi, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e50]
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.004742a0
push 0x5d6640
push str.healing.txt
call fcn.0056eb7f
mov esi, eax
lea eax, [ebp - 0x13b0]
push eax
call fcn.0059677e
lea eax, [ebp - 0x13b0]
push eax
push str._s_
push esi
call fcn.0043d350
lea eax, [ebp - 0x13b0]
push eax
call fcn.005969be
lea eax, [ebp - 0x13b0]
push eax
push str._s_
push esi
call fcn.0043d350
imul eax, dword [edi + 0x188], 0x980
push dword [ebp - 0x3e40]
push dword [ebp - 0x3e44]
add eax, 0x2a0
add eax, edi
push eax
push str._s___ld___ld_n
push esi
call fcn.0043d350
push esi
call fcn.0056e891
add esp, 0x40
jmp case.default.0x4d9214
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 - 0x3e54]
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x24], 1
call fcn.004e3250
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x118]
call fcn.0051ae30
mov esi, eax
test esi, esi
jne 0x4d91d0
mov ecx, dword [ebp - 0x3e3c]
call fcn.0044cdf0
cmp eax, 3
jne 0x4d9568
cmp byte [ebp - 0xfaf], al
jne 0x4d9568
mov ecx, dword [ebp - 0x3e54]
lea eax, [ebp - 0x3fcc]
push eax
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
call fcn.004be370
test eax, eax
mov eax, dword [ebp - 0x3e3c]
je 0x4d956e
cmp dword [ebp - 0x3fcc], eax
jne 0x4d956e
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 - 0x3e54]
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x24], 1
call fcn.004e3250
mov eax, dword [ebp - 0x3e3c]
mov ecx, eax
call fcn.0044cdf0
cmp eax, 3
jne case.default.0x4d8016
cmp byte [ebp - 0xfaf], 0
jne case.default.0x4d8016
mov ecx, dword [ebp - 0x3e54]
lea eax, [ebp - 0x3fcc]
push eax
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
call fcn.004be370
test eax, eax
je case.default.0x4d8016
mov eax, dword [ebp - 0x3e3c]
cmp dword [ebp - 0x3fcc], eax
jne case.default.0x4d8016
mov ecx, dword [ebp - 0x3e54]
push 1
push eax
push esi
push edi
call fcn.004de210
jmp case.default.0x4d8016
lea eax, [ebp - 0x3e3c]
mov esi, edi
push eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
cmp dword [ebp - 0xfaf], 0xffffffff
jne case.default.0x4d8016
mov eax, dword [ebp - 0xfa9]
cmp eax, 0xfffffffe
jne 0x4d9720
mov eax, dword [edi + 0x14f7c]
test eax, eax
je case.default.0x4d8016
lea ecx, [ebp - 0x41c8]
push ecx
push eax
mov ecx, esi
call fcn.004be070
mov dword [ebp - 0x3e40], eax
test eax, eax
je case.default.0x4d8016
push dword [ebp - 0x3e3c]
mov ecx, edi
call fcn.0048d7c0
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 0x4d96aa
jl 0x4d9691
test ecx, ecx
jne 0x4d96aa
xorps xmm0, xmm0
movlpd qword [ebp - 0x3e84], xmm0
mov edx, dword [ebp - 0x3e80]
mov ecx, dword [ebp - 0x3e84]
jmp 0x4d96d5
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 0x4d96cf
jg 0x4d96cb
cmp ecx, esi
jbe 0x4d96cf
mov ecx, esi
mov edx, eax
mov esi, dword [ebp - 0x3e54]
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.004e3250
push 8
push dword [ebp - 0x3e40]
mov ecx, esi
call fcn.004e3250
push 1
mov ecx, esi
push edi
call fcn.004e3250
jmp case.default.0x4d8016
cmp eax, 0xfffffffd
jne case.default.0x4d8016
mov ecx, dword [ebp - 0xfa1]
mov edx, dword [ebp - 0xfa5]
test ecx, ecx
jl 0x4d9785
jg 0x4d9743
test edx, edx
jb 0x4d979b
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 0x4d9768
jg 0x4d9764
cmp edx, esi
jbe 0x4d9768
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.0044e030
add esp, 0x10
mov ecx, eax
jmp 0x4d97e6
test edx, edx
jne 0x4d979b
cmp ecx, 0x80000000
jne 0x4d979b
or edx, 0xffffffff
mov ecx, closesocket
jmp 0x4d97a2
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 0x4d97bc
jg 0x4d97b8
cmp edx, esi
jbe 0x4d97bc
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.0044e030
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 - 0x3e54]
adc dword [eax + 0x1c], edx
call fcn.004e3250
mov ecx, dword [ebp - 0x3e54]
push 1
push edi
call fcn.004e3250
jmp case.default.0x4d8016
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d9840
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f74], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f73], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f72], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f71], al
mov byte [ebp - 0x3f70], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d98ca
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d98dd
lea eax, [ebp - 0x3f74]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, edi
push eax
push dword [ebp - 0x3e58]
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4d9974
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x2368], 0x17
push str.You_are_stunned__and_cannot_open_a_chest_
push eax
call fcn.00473350
mov ecx, 0x18
mov eax, dword [ebp - 0x3e54]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x2367]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e50]
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
jmp case.default.0x4d8016
mov edi, dword [ebp - 0x3e3c]
mov ecx, edi
call fcn.0044cdf0
cmp eax, 1
jne 0x4d9a7c
mov ecx, dword [edi + 0x118]
push 0x3e8
push 0
push 0
call fcn.0051ad80
mov esi, eax
test esi, esi
je case.default.0x4d8016
mov ecx, esi
call fcn.0044cdf0
cmp eax, 8
jne 0x4d9a62
cmp dword [ebp - 0xfaf], esi
jne 0x4d9a62
cmp byte [esi + 0x188], 0
jne 0x4d9a24
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.005316e0
push esi
mov ecx, edi
call fcn.004f2120
jmp 0x4d9a57
lea eax, [ebp - 0x206b]
push str.The_chest_is_open_and_empty.
push eax
call fcn.00473380
mov ecx, dword [edi + 0x11c]
lea edx, [ebp - 0x3e50]
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.0051b0c0
mov ecx, dword [edi + 0x118]
call fcn.0051ae30
mov esi, eax
test esi, esi
jne 0x4d99a8
jmp case.default.0x4d8016
lea eax, [ebp - 0x206b]
push str.You_cant_open_it.
push eax
call fcn.00473380
mov ecx, dword [edi + 0x11c]
jmp 0x4d6eeb
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4d9aae
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f7c], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f7b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f7a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f79], al
mov byte [ebp - 0x3f78], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d9b38
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d9b4b
lea eax, [ebp - 0x3f7c]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov esi, edi
push eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4d9be4
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x23d0], 0x17
push str.You_are_stunned__and_cannot_talk_to_the_tree_
push eax
call fcn.00473350
mov ecx, 0x18
mov eax, dword [ebp - 0x3e54]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x23cf]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e50]
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.0x4d8016
lea eax, [ebp - 0xfb0]
mov ecx, esi
push eax
push dword [ebp - 0x3e3c]
push edi
call fcn.004de8d0
jmp case.default.0x4d8016
mov ecx, dword [ebp - 0x3e50]
mov eax, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d9c14
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f84], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f83], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f82], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f81], al
mov byte [ebp - 0x3f80], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d9cbd
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
lea edx, [ebp - 0x3e50]
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
mov ecx, dword [edi + 0x34]
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.0x4d2ef6.2
lea eax, [ebp - 0x3f84]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
mov ecx, dword [edi + 0x34]
lea edx, [ebp - 0x3e50]
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.0x4d2ef6.2
mov ecx, dword [ebp - 0x3e50]
mov eax, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d9d07
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f8c], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f8b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f8a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f89], al
mov byte [ebp - 0x3f88], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4d9d91
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4d9da4
lea eax, [ebp - 0x3f8c]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, edi
push eax
push dword [ebp - 0x3e58]
call fcn.004bdc70
mov edi, eax
lea eax, [ebp - 0xfaf]
push 0x10
push eax
mov dword [ebp - 0x3e38], edi
call fcn.0044d4b0
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044d350
lea eax, [ebp - 0xfaf]
push 1
push eax
call fcn.0044d1b0
add esp, 0x14
test edi, edi
je case.default.0x4d8016
cmp byte [ebp - 0xfaf], 0
je case.default.0x4d8016
imul esi, dword [edi + 0x188], 0x980
cmp byte [esi + edi + 0x344], 0xff
je 0x4d9f17
lea eax, [edi + 0x334]
add eax, esi
cmp byte [eax], 0
je 0x4d9e65
mov ecx, str.Pet_A
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4d9e50
test dl, dl
je 0x4d9e4c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4d9e50
add eax, 2
add ecx, 2
test dl, dl
jne 0x4d9e30
xor eax, eax
jmp 0x4d9e55
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4d9f17
lea eax, [edi + 0x334]
add eax, esi
push 0x10
push eax
lea eax, [ebp - 0xfaf]
push 0x10
push eax
call fcn.0044d2f0
mov byte [ebp - 0x20ec], 0x3a
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x20eb], eax
lea eax, [ebp - 0x20df]
push 0x10
push eax
lea eax, [edi + 0x334]
add eax, esi
push 0x10
push eax
call fcn.0044d2f0
mov al, byte [esi + edi + 0x345]
add esp, 0x20
mov byte [ebp - 0x20e6], al
mov al, byte [esi + edi + 0x344]
mov byte [ebp - 0x20e7], al
mov al, byte [esi + edi + 0x346]
mov byte [ebp - 0x20e5], al
movss xmm1, dword [esi + edi + 0x354]
divss xmm1, dword [0x5d85c4]
movzx eax, byte [esi + edi + 0x347]
mov ecx, dword [ebp - 0x3e3c]
push 0
push 5
mov byte [ebp - 0x20e4], 0
movd xmm0, eax
lea eax, [ebp - 0x20ec]
cvtdq2ps xmm0, xmm0
push eax
push 0x1d
addss xmm1, xmm0
movss dword [ebp - 0x20e3], xmm1
jmp 0x4d8ad3
cmp byte [esi + edi + 0x378], 0xff
je case.default.0x4d8016
lea eax, [edi + 0x368]
add eax, esi
cmp byte [eax], 0
je 0x4d9f6c
mov ecx, str.Pet_B
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4d9f57
test dl, dl
je 0x4d9f53
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4d9f57
add eax, 2
add ecx, 2
test dl, dl
jne 0x4d9f37
xor eax, eax
jmp 0x4d9f5c
sbb eax, eax
or eax, 1
test eax, eax
jne case.default.0x4d8016
lea eax, [edi + 0x368]
add eax, esi
push 0x10
push eax
lea eax, [ebp - 0xfaf]
push 0x10
push eax
call fcn.0044d2f0
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.0044d2f0
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 [0x5d85c4]
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 0x4d8ad3
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4da034
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f94], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f93], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f92], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f91], al
mov byte [ebp - 0x3f90], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4da0be
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4da0d1
lea eax, [ebp - 0x3f94]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov esi, edi
push eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4da16a
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x2300], 0x17
push str.You_are_stunned__and_cannot_feed_your_pet_
push eax
call fcn.00473350
mov ecx, 0x18
mov eax, dword [ebp - 0x3e54]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x22ff]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e50]
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.0x4d8016
push dword [ebp - 0x3e3c]
lea eax, [ebp - 0xfb0]
mov ecx, esi
push edi
push eax
call fcn.004dd0c0
jmp case.default.0x4d8016
lea eax, [ebp - 0x3e3c]
mov esi, edi
push eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je 0x4da1c9
cmp dword [edi + 0x14f34], 1
jne 0x4da1c9
push dword [ebp - 0x3e3c]
lea eax, [ebp - 0xfb0]
mov ecx, esi
push edi
push eax
call fcn.004be6b0
jmp case.default.0x4d8016
mov ecx, edi
call fcn.00475aa0
cmp eax, 9
jle case.default.0x4d8016
mov al, byte [ebp - 0xfaf]
cmp al, 5
je 0x4da1eb
cmp al, 4
jne case.default.0x4d8016
push dword [ebp - 0x3e3c]
lea eax, [ebp - 0xfb0]
mov ecx, esi
push edi
push eax
call fcn.004be6b0
jmp case.default.0x4d8016
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4da21b
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f9c], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f9b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f9a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f99], al
mov byte [ebp - 0x3f98], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4da2a5
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4da2b8
lea eax, [ebp - 0x3f9c]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov esi, edi
push eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004bdc70
mov edi, eax
push 5
mov dword [ebp - 0x3e38], edi
call fcn.0055ee4a
mov edx, eax
add esp, 4
mov dword [ebp - 0x3e80], edx
test edx, edx
je 0x4da2f1
mov byte [edx], 0x3f
jmp 0x4da2f3
xor edx, edx
test edi, edi
je case.default.0x4d8016
cmp byte [edi + 0x14fb8], 0
je case.default.0x4d8016
mov eax, dword [edi + 0x238]
mov dword [edx + 1], eax
mov ecx, dword [esi + 0x34]
lea esi, [ebp - 0x3e50]
push esi
push 0
push edx
mov eax, dword [ecx]
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d8016
lea eax, [ebp - 0x3e3c]
mov esi, edi
push eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
mov eax, dword [ebp - 0xfaf]
mov dword [edi + 0x238], eax
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4da374
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3fa4], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3fa3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3fa2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3fa1], al
mov byte [ebp - 0x3fa0], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4da41d
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
lea edx, [ebp - 0x3e50]
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 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.0x4d8016
lea eax, [ebp - 0x3fa4]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e50]
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.0x4d8016
lea eax, [ebp - 0x3e3c]
mov ecx, edi
push eax
push dword [ebp - 0x3e58]
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
mov ecx, dword [ebp - 0x3e3c]
push 1
push dword [ebp - 0xfae]
mov ecx, dword [ecx + 0x118]
call fcn.0051aed0
mov esi, eax
test esi, esi
je case.default.0x4d8016
mov ecx, dword [esi + 0x108]
cmp ecx, dword [edi + 0x108]
jne case.default.0x4d8016
mov ecx, dword [esi + 0x10c]
cmp ecx, dword [edi + 0x10c]
jne case.default.0x4d8016
mov ecx, esi
call fcn.0044cdf0
cmp eax, 2
jne case.default.0x4d8016
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 - 0x3e54]
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x24], 0
movzx eax, byte [ebp - 0xfaf]
push eax
push esi
push edi
call fcn.004dd7e0
jmp case.default.0x4d8016
lea eax, [ebp - 0x3e3c]
mov esi, edi
push eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
mov al, byte [ebp - 0xfaf]
test al, al
je 0x4da55c
cmp al, 3
jne 0x4da55c
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4da56e
push dword [ebp - 0x3e3c]
mov ecx, edi
call fcn.00473b80
jmp case.default.0x4d8016
mov dword [edi + 0x14f80], 1
mov eax, dword [edi + 0x14f7c]
test eax, eax
je case.default.0x4d8016
lea ecx, [ebp - 0x41c4]
push ecx
push eax
mov ecx, esi
call fcn.004be070
test eax, eax
je case.default.0x4d8016
cmp dword [eax + 0x14f80], 0
je case.default.0x4d8016
push dword [ebp - 0x3e3c]
mov ecx, edi
call fcn.00481350
jmp case.default.0x4d8016
lea eax, [ebp - 0x3e3c]
mov esi, edi
push eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
lea eax, [ebp - 0xfb0]
mov ecx, esi
push eax
push edi
call fcn.004d2160
jmp case.default.0x4d8016
mov eax, dword [str.Simple_avatars_OFF]
mov dword [0x634224], eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044ca60
add esp, 4
mov ecx, edi
push dword [ebp - 0x3e58]
call fcn.004be550
mov esi, eax
mov dword [ebp - 0x3e38], esi
jmp case.0x4d2ef6.2
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4da63f
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3fac], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3fab], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3faa], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e5c], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3fa9], al
mov byte [ebp - 0x3fa8], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4da6c9
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e5c]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4da6dc
lea eax, [ebp - 0x3fac]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x3e3c]
mov ecx, edi
push eax
push dword [ebp - 0x3e58]
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4da773
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x2298], 0x17
push str.You_are_stunned__and_cant_do_that_
push eax
call fcn.00473350
mov ecx, 0x18
mov eax, dword [ebp - 0x3e54]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x2297]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e50]
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.0x4d8016
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 - 0x3e5c], eax
call fcn.0044e540
mov esi, eax
mov dword [ebp - 0x3e6c], esi
test esi, esi
je case.default.0x4d8016
nop dword [eax]
cmp dword [ebp - 0xfaf], esi
jne 0x4dc7a7
mov eax, dword [esi + 0x110]
cmp eax, 0xd
jne 0x4da9bd
cmp byte [edi + 0x14fb9], 0
je 0x4da7ec
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2f0], 0xa
jl 0x4dc7c7
mov eax, dword [esi + 0x11c]
push 0x1a0
mov dword [ebp - 0x3e44], eax
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x41c0], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x4da81f
push edi
mov ecx, eax
call fcn.00493420
mov esi, eax
jmp 0x4da821
xor esi, esi
mov eax, dword [edi + 0x108]
mov ecx, dword [ebp - 0x3e44]
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 - 0x3e44]
imul ecx, dword [ecx + 0xc], 0x3e8
add eax, ecx
mov dword [esi + 0x198], eax
call fcn.0056e528
xorps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mov eax, dword [ebp - 0x3e44]
divss xmm0, dword [0x5d85d0]
addss xmm0, xmm1
comiss xmm0, dword [eax + 4]
jbe 0x4da8c6
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.0051ad60
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.00473350
push 0x64
lea eax, [ebp - 0x206b]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044d2f0
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.005316e0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
call fcn.0044e5b0
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.005316e0
jmp 0x4dc7a7
cmp eax, 3
jne 0x4dbd50
mov esi, dword [esi + 0x11c]
mov eax, dword [esi]
test eax, eax
je 0x4db960
cmp eax, 1
je 0x4db960
cmp eax, 2
jne 0x4dadf1
lea eax, [ebp - 0x40a4]
push eax
push dword [esi + 4]
mov esi, dword [ebp - 0x3e54]
mov ecx, esi
call fcn.004be4d0
test eax, eax
je 0x4dbd34
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x20], 0
cmp dword [edi + 0x14f70], 0
je 0x4dab06
cmp dword [edi + 0x184], 0
jne 0x4dab06
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
mov byte [ebp - 0x4160], 0x3e
cmp ecx, eax
je 0x4daa56
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [edi + 0x180]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3fb4], dl
sar eax, 8
mov byte [ebp - 0x3fb3], al
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3fb2], al
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3fb1], al
mov byte [ebp - 0x3fb0], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4daaba
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 - 0x3e4c], 5
jmp 0x4daacd
lea eax, [ebp - 0x3fb4]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
mov byte [ebp - 0x415f], 2
lea edx, [ebp - 0x3e50]
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.00475aa0
cmp eax, 9
jle 0x4dab06
mov dword [edi + 0x184], 1
mov esi, dword [ebp - 0x3e3c]
mov ecx, edi
push 6
push esi
call fcn.004740d0
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4dab2c
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3fbc], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3fbb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], 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 - 0x3e48]
je 0x4dabb6
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e68]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4dabc9
lea eax, [ebp - 0x3fbc]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
cmp dword [edi + 0x14f70], 0
je 0x4dac1e
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.005316e0
push dword [edi + 0x14f70]
mov ecx, dword [esi + 0x118]
call fcn.0051b010
mov ecx, dword [esi + 0x110]
push edi
call fcn.0044e730
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.0044e390
mov ecx, dword [edi + 0x14f70]
test ecx, ecx
je 0x4dacc5
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.0051ad60
mov ecx, dword [ebp - 0x3e3c]
mov byte [ebp - 0x40cd], 0
mov byte [ebp - 0x40dc], 0x2b
mov dword [ebp - 0x40d1], esi
call fcn.0044cdf0
mov ecx, esi
mov byte [ebp - 0x40db], al
call fcn.0044cdf0
mov byte [ebp - 0x40da], al
lea edx, [ebp - 0x3e50]
mov eax, dword [ebp - 0x3e54]
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 - 0x2558], 0x17
call fcn.0044ce00
push eax
lea eax, [ebp - 0x13b0]
push str.You_enter_the_guild_tower_of__s.
push eax
call fcn.00473350
push 0x64
lea eax, [ebp - 0x2557]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x3e54]
lea edx, [ebp - 0x3e50]
add esp, 0x1c
mov ecx, dword [eax + 0x34]
push edx
push 0
lea edx, [ebp - 0x2558]
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.0048bfa0
lea ecx, [esi + 0x148]
call fcn.0051ab80
push 6
push esi
mov ecx, edi
call fcn.004840d0
mov ecx, dword [edi + 0x14f70]
test ecx, ecx
je 0x4dadc9
push esi
call fcn.00499080
push 0
push 1
push esi
mov ecx, edi
call fcn.00492770
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
call fcn.0044e5b0
jmp 0x4dc7a7
cmp eax, 3
jne 0x4dbd34
mov esi, dword [ebp - 0x3e3c]
xor eax, eax
push eax
push dword [edi + 0x10c]
mov dword [ebp - 0x3e44], eax
push dword [edi + 0x108]
mov ecx, dword [esi + 0x118]
call fcn.0051ad80
test eax, eax
je 0x4daf65
mov ecx, eax
call fcn.0044cdf0
cmp eax, 2
jne 0x4daf28
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4dae4e
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3fc4], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3fc3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3fc2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e68], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3fc1], al
mov byte [ebp - 0x3fc0], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4daed8
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e68]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4daeeb
lea eax, [ebp - 0x3fc4]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
lea eax, [ebp - 0x206b]
push str.Theres_already_a_merchant_in_your_square.
push eax
call fcn.00473380
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x3e50]
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 - 0x3e44], 1
mov ecx, dword [esi + 0x118]
call fcn.0051ae30
test eax, eax
jne 0x4dae28
cmp dword [ebp - 0x3e44], eax
je 0x4daf65
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
inc dword [eax + 0x118]
call fcn.0044e5b0
jmp 0x4dc7a7
push 0x990
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x41bc], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x4daf91
push 2
mov ecx, eax
call fcn.004a1c40
mov dword [ebp - 0x3e68], eax
jmp 0x4daf9b
mov dword [ebp - 0x3e68], 0
mov eax, str.Mangel
mov byte [ebp - 4], 0
mov dword [ebp - 0x3e44], 0
mov dword [ebp - 0x3e40], eax
push eax
lea eax, [ebp - 0x1ab0]
push str._s_Recall
push eax
call fcn.0043d380
push 0x120
call fcn.0055ee4a
add esp, 0x10
mov dword [ebp - 0x41b4], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x4daff7
lea ecx, [ebp - 0x1ab0]
push ecx
push 0
push 3
mov ecx, eax
call fcn.005125d0
mov esi, eax
jmp 0x4daff9
xor esi, esi
mov eax, dword [esi + 0x11c]
mov ecx, dword [ebp - 0x3e44]
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.0056e528
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.00513220
mov eax, dword [ebp - 0x3e40]
inc dword [ebp - 0x3e44]
add eax, 0x50
mov dword [ebp - 0x3e40], eax
cmp eax, str.Dirk
jl 0x4dafb4
mov edi, dword [ebp - 0x3e68]
xor esi, esi
call fcn.0056e528
cdq
mov ecx, 0xc
idiv ecx
push 0x120
mov dword [ebp - 0x3e44], edx
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x41b0], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x4db0be
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.005125d0
mov edx, eax
mov dword [ebp - 0x3e40], eax
jmp 0x4db0c6
xor edx, edx
mov dword [ebp - 0x3e40], edx
mov eax, dword [edx + 0x11c]
mov ecx, dword [ebp - 0x3e44]
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 0x4db135
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.005354a0
mov ecx, dword [edi + 0x180]
add esp, 4
push dword [ebp - 0x3e40]
call fcn.00513220
inc esi
cmp esi, 0x11
jl 0x4db076
push 0x120
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x41ac], eax
mov byte [ebp - 4], 0x13
test eax, eax
je 0x4db192
push str.Charcoal_Brick
push 0
push 0xb
mov ecx, eax
call fcn.005125d0
mov esi, eax
jmp 0x4db194
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.0056e528
cdq
mov ecx, 0x1e
idiv ecx
push esi
add edx, 0x32
mov dword [esi + 0x118], edx
mov esi, dword [ebp - 0x3e68]
mov ecx, dword [esi + 0x180]
call fcn.00513220
push 0x120
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x41a8], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x4db212
push str.Twisted_Paper
push 0
push 0xc
mov ecx, eax
call fcn.005125d0
mov ecx, eax
mov dword [ebp - 0x3e40], eax
jmp 0x4db21a
xor ecx, ecx
mov dword [ebp - 0x3e40], 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.0056e528
cdq
mov ecx, 0x1e
idiv ecx
mov eax, dword [ebp - 0x3e40]
add edx, 0x32
push eax
mov dword [eax + 0x118], edx
mov ecx, dword [esi + 0x180]
call fcn.00513220
push 0x120
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x41a4], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x4db290
push str.Ancient_Dragonscale
push 0
push 0
mov ecx, eax
call fcn.005125d0
jmp 0x4db292
xor eax, eax
mov dword [ebp - 0x3e40], eax
mov byte [ebp - 4], 0
mov dword [eax + 0x10c], 0x47c35000
call fcn.0056e528
cdq
mov ecx, 0x1e
idiv ecx
mov eax, dword [ebp - 0x3e40]
add edx, 0x28
push eax
mov dword [eax + 0x118], edx
mov ecx, dword [esi + 0x180]
call fcn.00513220
push 0x120
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x41a0], eax
mov byte [ebp - 4], 0x16
test eax, eax
je 0x4db2fb
push str.Dragon_Orchid
push 0
push 0
mov ecx, eax
call fcn.005125d0
jmp 0x4db2fd
xor eax, eax
mov dword [ebp - 0x3e40], eax
mov byte [ebp - 4], 0
mov dword [eax + 0x10c], 0x461c4000
call fcn.0056e528
cdq
mov ecx, 0x1e
idiv ecx
mov eax, dword [ebp - 0x3e40]
add edx, 0x32
push eax
mov dword [eax + 0x118], edx
mov ecx, dword [esi + 0x180]
call fcn.00513220
push 0x120
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x419c], eax
mov byte [ebp - 4], 0x17
test eax, eax
je 0x4db366
push str.Demon_Amulet
push 0
push 0
mov ecx, eax
call fcn.005125d0
jmp 0x4db368
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.00513220
mov dword [ebp - 0x3e40], 0
mov dword [ebp - 0x3e44], 0x1f4
push 0x120
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x4198], eax
mov byte [ebp - 4], 0x18
test eax, eax
je 0x4db3cf
push str.Unnamed_Staff
push 0
push 0xe
mov ecx, eax
call fcn.005125d0
mov esi, eax
jmp 0x4db3d1
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
inc ecx
mov eax, ecx
mov dword [esi + 0x108], 0
imul eax, dword [ebp - 0x3e44]
mov dword [ebp - 0x3e40], ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
call fcn.0056e528
mov ecx, 0xa
cdq
idiv ecx
push ecx
inc edx
mov dword [esp], 0
push esi
mov dword [esi + 0x118], edx
call fcn.00533020
add esp, 8
push esi
mov esi, dword [ebp - 0x3e68]
mov ecx, dword [esi + 0x180]
call fcn.00513220
mov eax, dword [ebp - 0x3e44]
add eax, 0x1f4
mov dword [ebp - 0x3e44], eax
cmp eax, 0x7d0
jl 0x4db3a0
mov eax, str.Plain
mov edi, 1
mov dword [ebp - 0x3e40], eax
nop word [eax + eax]
push eax
lea eax, [ebp - 0x1ab0]
push str._s_Bead
push eax
call fcn.0043d380
push 0x120
call fcn.0055ee4a
add esp, 0x10
mov dword [ebp - 0x4178], eax
mov byte [ebp - 4], 0x19
test eax, eax
je 0x4db4c3
lea ecx, [ebp - 0x1ab0]
push ecx
push 0
push 0x10
mov ecx, eax
call fcn.005125d0
mov ecx, eax
jmp 0x4db4c5
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.00513220
mov eax, dword [ebp - 0x3e40]
inc edi
add eax, 0x20
mov dword [ebp - 0x3e40], eax
cmp eax, str.Fiery
jl 0x4db480
mov edi, dword [ebp - 0x3e38]
push 0x120
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x4174], eax
mov byte [ebp - 4], 0x1a
test eax, eax
je 0x4db570
push str.Tin_Ingot
push 0
push 4
mov ecx, eax
call fcn.005125d0
mov ecx, eax
jmp 0x4db572
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.00513220
push 0x120
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x4170], eax
mov byte [ebp - 4], 0x1b
test eax, eax
je 0x4db5f7
push str.Aluminum_Ingot
push 0
push 4
mov ecx, eax
call fcn.005125d0
mov ecx, eax
jmp 0x4db5f9
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.00513220
push 0x120
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x4194], eax
mov byte [ebp - 4], 0x1c
test eax, eax
je 0x4db67e
push str.Steel_Ingot
push 0
push 4
mov ecx, eax
call fcn.005125d0
mov ecx, eax
jmp 0x4db680
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.00513220
push 0x120
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x4190], eax
mov byte [ebp - 4], 0x1d
test eax, eax
je 0x4db705
push str.Carbon_Ingot
push 0
push 4
mov ecx, eax
call fcn.005125d0
mov ecx, eax
jmp 0x4db707
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.00513220
push 0x120
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x418c], eax
mov byte [ebp - 4], 0x1e
test eax, eax
je 0x4db78c
push str.Zinc_Ingot
push 0
push 4
mov ecx, eax
call fcn.005125d0
mov ecx, eax
jmp 0x4db78e
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.00513220
push 0x120
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x4188], eax
mov byte [ebp - 4], 0x1f
test eax, eax
je 0x4db813
push str.Adamantium_Ingot
push 0
push 4
mov ecx, eax
call fcn.005125d0
mov ecx, eax
jmp 0x4db815
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.00513220
push 0x120
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x4184], eax
mov byte [ebp - 4], 0x20
test eax, eax
je 0x4db89a
push str.Mithril_Ingot
push 0
push 4
mov ecx, eax
call fcn.005125d0
mov ecx, eax
jmp 0x4db89c
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.00513220
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.0051ad60
push esi
push dword [edi + 0x10c]
mov ecx, edi
push dword [edi + 0x108]
call fcn.00483260
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
call fcn.0044e5b0
jmp 0x4dc7a7
cmp dword [edi + 0x14f70], 0
je 0x4dba4d
cmp dword [edi + 0x184], 0
jne 0x4dba4d
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
mov byte [ebp - 0x416c], 0x3e
cmp ecx, eax
je 0x4db997
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [edi + 0x180]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3e9c], dl
sar eax, 8
mov byte [ebp - 0x3e9b], al
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3e9a], al
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3e99], al
mov byte [ebp - 0x3e98], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4db9fb
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 - 0x3e4c], 5
jmp 0x4dba0e
lea eax, [ebp - 0x3e9c]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
mov eax, dword [ebp - 0x3e54]
lea edx, [ebp - 0x3e50]
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.00475aa0
cmp eax, 9
jle 0x4dba4d
mov dword [edi + 0x184], 1
push dword [ebp - 0x3e58]
mov ecx, dword [ebp - 0x3e54]
push 0
call fcn.004e83a0
cmp dword [edi + 0x14f70], 0
je 0x4dbac3
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.005316e0
mov eax, dword [ebp - 0x3e3c]
push dword [edi + 0x14f70]
mov ecx, dword [eax + 0x118]
call fcn.0051b010
push 0
push 0
mov ecx, edi
call fcn.0048bfa0
mov eax, dword [ebp - 0x3e4c]
mov ecx, dword [ebp - 0x3e50]
cmp ecx, eax
je 0x4dbae4
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
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 - 0x3e44], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3ea2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e68], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ea1], al
mov byte [ebp - 0x3ea0], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4dbb6e
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e44]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e68]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4dbb81
lea eax, [ebp - 0x3ea4]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
mov ecx, dword [ebp - 0x3e3c]
mov byte [ebp - 0x40f0], 0x2b
call fcn.0044cdf0
mov byte [ebp - 0x40ef], al
lea edx, [ebp - 0x3e50]
mov eax, dword [ebp - 0x3e54]
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 0x4dbcaa
mov eax, dword [esi + 4]
lea eax, [eax + eax*4]
shl eax, 4
mov eax, dword [eax + 0x6172f8]
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 + 0x6172fc]
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 + 0x6172f8]
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 + 0x6172fc]
mov dword [ecx + edi + 0x314], eax
mov ecx, dword [edi + 0x14f70]
test ecx, ecx
je 0x4dbcff
mov eax, dword [esi + 4]
lea eax, [eax + eax*4]
shl eax, 4
mov eax, dword [eax + 0x6172f8]
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 + 0x6172fc]
mov dword [ecx + 0x10c], eax
jmp 0x4dbcff
cmp eax, 1
jne 0x4dbcff
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 0x4dbcff
mov dword [eax + 0x108], edx
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x10c], ecx
mov esi, dword [ebp - 0x3e54]
push 0
mov ecx, dword [esi + 0x48]
call fcn.0044e420
mov ecx, dword [edi + 0x14f70]
test ecx, ecx
je 0x4dbd25
push ecx
mov ecx, dword [eax + 0x118]
call fcn.0051ad60
push dword [ebp - 0x3e58]
mov ecx, esi
push 1
call fcn.004e83a0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
call fcn.0044e5b0
jmp 0x4dc7a7
cmp eax, 0x11
je 0x4dc348
cmp eax, 0x14
je 0x4dc348
cmp eax, 0x12
je 0x4dc1da
cmp eax, 0x13
je 0x4dc1da
cmp eax, 0x15
jne 0x4dc7a7
mov eax, dword [esi + 0x11c]
mov ecx, dword [ebp - 0x3e50]
mov dword [ebp - 0x3e40], eax
mov eax, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4dbd9f
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3eac], dl
shr eax, 8
mov dword [ebp - 0x3e44], 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 - 0x3e80], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ea9], al
mov byte [ebp - 0x3ea8], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4dbe29
mov eax, dword [ebp - 0x3e44]
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 - 0x3e4c], 5
jmp 0x4dbe3c
lea eax, [ebp - 0x3eac]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
mov eax, dword [ebp - 0x3e54]
mov byte [ebp - 0x3fd0], 0
mov ecx, dword [eax + 0x48]
call fcn.0044e540
cmp dword [ebp - 0x3e3c], eax
jne 0x4dc85d
mov ecx, 0x6172fc
mov esi, 1
nop word [eax + eax]
mov eax, dword [ecx - 4]
sub eax, dword [edi + 0x108]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jg 0x4dbea7
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 0x4dbead
mov edx, dword [ebp - 0x3fd0]
add ecx, 0x50
cmp ecx, 0x617a7c
jl 0x4dbe70
mov esi, dword [ebp - 0x3e3c]
test dl, dl
je 0x4dc85d
cmp dword [edi + 0x14f70], 0
jne 0x4dc82c
mov edx, dword [ebp - 0x3e40]
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 - 0x3e44], xmm0
imul eax, eax, 0x64
cmp byte [eax + str.Ghost], 0
je 0x4dc32c
push 0x2c8
call fcn.0055ee4a
add esp, 4
mov dword [ebp - 0x4180], eax
mov byte [ebp - 4], 0x21
test eax, eax
je 0x4dbf47
push 0
push 0
push dword [ebp - 0x3e80]
mov ecx, eax
push dword [ebp - 0x3e70]
call fcn.00498890
mov dword [ebp - 0x3e68], eax
jmp 0x4dbf51
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.0044d2f0
mov ecx, dword [ebp - 0x3e68]
add esp, 0x2c
mov edx, dword [ebp - 0x3e40]
movss xmm0, dword [ebp - 0x3e44]
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.0051ad60
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 - 0x403c], 0x18
mov dword [ebp - 0x403b], ecx
call fcn.0044cdf0
mov ecx, dword [ebp - 0x3e68]
mov byte [ebp - 0x4037], al
movzx eax, word [ecx + 0x220]
mov word [ebp - 0x4036], ax
movzx eax, word [ecx + 0x224]
mov word [ebp - 0x4034], ax
mov al, byte [ecx + 0x108]
mov byte [ebp - 0x4031], al
mov al, byte [ecx + 0x10c]
push 0
push 5
mov byte [ebp - 0x4030], al
lea eax, [ebp - 0x403c]
push eax
push 0xd
push dword [ecx + 0x10c]
push dword [ecx + 0x108]
mov ecx, esi
push 0
call fcn.005316e0
mov ecx, dword [ebp - 0x3e68]
push esi
call fcn.00499080
mov ecx, dword [ebp - 0x3e68]
mov byte [ebp - 0x402c], 0x38
mov dword [ebp - 0x402b], 0xffffffff
mov dword [ebp - 0x4027], 0xffffffff
mov al, byte [ecx + 0x108]
mov byte [ebp - 0x4023], al
mov al, byte [ecx + 0x10c]
push 0
push 5
mov byte [ebp - 0x4022], al
lea eax, [ebp - 0x402c]
push eax
push 0x11
mov word [ebp - 0x4021], 0xff
mov dword [ebp - 0x401f], 0x100ff
push dword [ecx + 0x10c]
push dword [ecx + 0x108]
mov ecx, esi
push 0
call fcn.005316e0
mov eax, dword [ebp - 0x3e68]
mov ecx, dword [ebp - 0x3e5c]
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.0044e5b0
jmp 0x4dc7a7
mov eax, dword [esi + 0x11c]
mov ecx, dword [ebp - 0x3e50]
mov dword [ebp - 0x3e40], eax
mov eax, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4dc1fc
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
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 - 0x3e44], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3eb1], al
mov byte [ebp - 0x3eb0], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4dc286
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 - 0x3e44]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e4c], 5
jmp 0x4dc299
lea eax, [ebp - 0x3eb4]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
mov esi, dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.0044cdf0
test eax, eax
jne 0x4dc319
xor esi, esi
mov ecx, 0x6172fc
mov eax, dword [ecx - 4]
sub eax, dword [edi + 0x108]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jg 0x4dc2e0
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, 0x617a7c
jl 0x4dc2b5
test esi, esi
jne 0x4dc2f7
push dword [ebp - 0x3e3c]
jmp 0x4dc31a
push str.Please_leave_town_first._:_
lea eax, [ebp - 0x206b]
push eax
call fcn.00473380
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x11c]
jmp 0x4dc78b
push esi
push dword [ebp - 0x3e40]
mov ecx, dword [ebp - 0x3e54]
push edi
call fcn.004ced10
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
call fcn.0044e5b0
jmp 0x4dc7a7
mov eax, dword [esi + 0x11c]
mov ecx, dword [ebp - 0x3e50]
mov dword [ebp - 0x3e44], eax
mov eax, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4dc36a
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
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 - 0x3e40], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3eb9], al
mov byte [ebp - 0x3eb8], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4dc3f4
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 - 0x3e4c], 5
jmp 0x4dc407
lea eax, [ebp - 0x3ebc]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
mov esi, dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.0044cdf0
test eax, eax
jne 0x4dc774
cmp dword [esi + 0x124], eax
jne 0x4dc774
xor esi, esi
mov ecx, 0x6172fc
nop
mov eax, dword [ecx - 4]
sub eax, dword [edi + 0x108]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jg 0x4dc45b
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, 0x617a7c
jl 0x4dc430
test esi, esi
jne 0x4dc76a
mov eax, dword [ebp - 0x3e6c]
cmp dword [eax + 0x110], 0x11
je 0x4dc739
mov esi, dword [ebp - 0x3e44]
cmp dword [esi + 0x10], 0xffffffff
jle 0x4dc4bc
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e54]
push esi
push edi
call fcn.004cf880
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
call fcn.0044e5b0
jmp 0x4dc7a7
mov eax, dword [esi + 0xc]
cmp eax, 4
jge 0x4dc4f3
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e54]
push esi
push edi
call fcn.004cf880
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
call fcn.0044e5b0
jmp 0x4dc7a7
jle 0x4dc529
cmp eax, 9
jge 0x4dc529
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e54]
push esi
push edi
call fcn.004cf880
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
call fcn.0044e5b0
jmp 0x4dc7a7
cmp eax, 0xb
jne 0x4dc55d
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e54]
push esi
push edi
call fcn.004cf880
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
call fcn.0044e5b0
jmp 0x4dc7a7
cmp eax, 0x10
jne 0x4dc591
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e54]
push esi
push edi
call fcn.004cf880
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
call fcn.0044e5b0
jmp 0x4dc7a7
cmp eax, 0x11
jle 0x4dc5c5
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e54]
push esi
push edi
call fcn.004cf880
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
call fcn.0044e5b0
jmp 0x4dc7a7
mov ecx, edi
call fcn.00482e50
mov ecx, eax
cmp ecx, 1
jge 0x4dc5dc
mov ecx, edi
call fcn.00483030
mov ecx, eax
movss xmm1, dword [esi + 8]
divss xmm1, dword [0x5d85c8]
imul eax, dword [esi + 0xc], 0x258
addss xmm1, dword [0x5d8058]
mov edx, dword [eax + 0x6258f8]
mov eax, dword [esi + 4]
shr eax, 0x1f
cmp dword [esi], 0
jl 0x4dc60e
cmp eax, 1
jne 0x4dc61d
cvtps2pd xmm0, xmm1
addsd xmm0, qword [0x5dc390]
cvtpd2ps xmm1, xmm0
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
cmp eax, ecx
jge 0x4dc65f
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e54]
push esi
push edi
call fcn.004cf880
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
call fcn.0044e5b0
jmp 0x4dc7a7
sub eax, ecx
cmp eax, 9
jle 0x4dc695
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e54]
push esi
push edi
call fcn.004cf880
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
call fcn.0044e5b0
jmp 0x4dc7a7
xor eax, eax
mov dword [ebp - 0x3e68], eax
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x110]
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x4dc739
mov ecx, esi
call fcn.0044cdf0
test eax, eax
jne 0x4dc6e5
mov eax, dword [esi + 0x108]
cmp eax, dword [edi + 0x108]
jne 0x4dc6e5
mov eax, dword [esi + 0x10c]
cmp eax, dword [edi + 0x10c]
jne 0x4dc6e5
inc dword [ebp - 0x3e68]
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x110]
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x4dc6b8
cmp dword [ebp - 0x3e68], 1
jle 0x4dc739
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e54]
push dword [ebp - 0x3e44]
push edi
call fcn.004cf880
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
call fcn.0044e5b0
jmp 0x4dc7a7
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e54]
push dword [ebp - 0x3e44]
push edi
call fcn.004d0c30
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e5c]
mov dword [ebp - 0x3e68], eax
call fcn.0044e5b0
jmp 0x4dc7a7
push str.The_EarthKey_doesnt_work_in_a_town.
jmp 0x4dc2fc
lea eax, [ebp - 0x206b]
push str.The_EarthKey_doesnt_work_here.
push eax
call fcn.00473380
mov ecx, dword [esi + 0x11c]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e50]
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 - 0x3e5c]
call fcn.0044e5f0
mov esi, eax
mov dword [ebp - 0x3e6c], eax
test esi, esi
jne 0x4da7b0
jmp 0x4dc8a1
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x2230], 0x17
push str.Only_smiths_can_set_bombs_in_PVP_zones.
push eax
call fcn.00473350
mov ecx, 0x18
mov eax, dword [ebp - 0x3e54]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x222f]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e50]
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
mov edi, dword [ebp - 0x3e38]
jmp 0x4dc8a1
push 0x64
lea eax, [ebp - 0x24ef]
mov byte [ebp - 0x24f0], 0x17
push eax
push 0xc8
push str.Stable_your_existing_pet_first_with_the__stablepet_command.
call fcn.0044d2f0
add esp, 0x10
lea edx, [ebp - 0x3e50]
push edx
lea edx, [ebp - 0x24f0]
jmp 0x4dc88c
push 0x64
lea eax, [ebp - 0x2487]
mov byte [ebp - 0x2488], 0x17
push eax
push 0xc8
push str.You_must_be_in_town_to_let_out_a_pet.
call fcn.0044d2f0
add esp, 0x10
lea edx, [ebp - 0x3e50]
push edx
lea edx, [ebp - 0x2488]
mov eax, dword [ebp - 0x3e54]
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.0x4d8016
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x4dc8d2
mov ecx, dword [ebp - 0x3e54]
dec eax
push edi
mov dword [esi + 0x118], eax
call fcn.004eb270
jmp case.default.0x4d8016
mov ecx, dword [ebp - 0x3e5c]
push esi
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, dword [ebp - 0x3e54]
push edi
call fcn.004eb270
jmp case.default.0x4d8016
lea eax, [ebp - 0x3e3c]
mov esi, edi
push eax
push dword [ebp - 0x3e58]
mov ecx, esi
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
test edi, edi
je case.default.0x4d8016
mov eax, dword [edi + 0x14f34]
cmp eax, 1
je 0x4dc964
cmp eax, 2
je 0x4dc964
cmp eax, 3
je 0x4dc964
imul eax, dword [edi + 0x188], 0x980
test byte [eax + edi + 0x318], 1
jne 0x4dc964
mov edx, dword [edi + 0x23c]
lea eax, [edi + 0x23c]
mov ecx, dword [ebp - 0xfaf]
test edx, ecx
je 0x4dc982
not ecx
and ecx, edx
jmp 0x4dc982
mov edx, dword [edi + 0x23c]
lea eax, [edi + 0x23c]
mov ecx, dword [ebp - 0xfaf]
test edx, ecx
je 0x4dc980
not ecx
and ecx, edx
jmp 0x4dc982
or ecx, edx
mov dword [eax], ecx
mov ecx, dword [ebp - 0x3e50]
mov byte [ebp - 0x408c], 0x50
mov eax, dword [eax]
mov dword [ebp - 0x408b], eax
mov eax, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4dc9a9
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ec4], dl
shr eax, 8
mov dword [ebp - 0x3e80], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ec3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e70], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3ec2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ec1], al
mov byte [ebp - 0x3ec0], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4dca52
mov eax, dword [ebp - 0x3e80]
mov byte [ecx], dl
lea edx, [ebp - 0x3e50]
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 - 0x3e4c], 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.0x4d8016
lea eax, [ebp - 0x3ec4]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e50]
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.0x4d8016
lea eax, [ebp - 0x3e3c]
mov byte [ebp - 0x3df4], 0x59
push eax
push dword [ebp - 0x3e58]
mov ecx, edi
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x40b8], 0
mov dword [ebp - 0x3e38], edi
mov dword [ebp - 0x40b4], 0
mov dword [ebp - 0x40b0], 0
mov ecx, dword [ebp - 0x3e58]
mov eax, ecx
sar eax, 8
mov byte [ebp - 0x3ecb], al
mov eax, ecx
sar eax, 0x10
mov byte [ebp - 0x3ecc], cl
sar ecx, 0x18
mov byte [ebp - 0x3eca], al
lea eax, [ebp - 0x3ecc]
mov byte [ebp - 0x3ec9], cl
lea ecx, [ebp - 0x40b8]
push eax
mov byte [ebp - 4], 0x22
mov byte [ebp - 0x3ec8], 0
call fcn.00493360
lea eax, [ebp - 0x3df3]
xor esi, esi
mov dword [ebp - 0x3e40], eax
nop dword [eax]
imul ecx, dword [edi + 0x188], 0x980
push 0
push eax
add ecx, 0x43c
add ecx, esi
add ecx, edi
call fcn.0052a1b0
mov eax, dword [ebp - 0x3e40]
add esi, 0x138
add eax, 0x200
mov dword [ebp - 0x3e40], eax
cmp esi, 0x750
jl 0x4dcb20
mov eax, dword [ebp - 0x3e54]
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.00473980
jmp case.default.0x4d8016
mov ecx, dword [ebp - 0x3e50]
mov eax, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4dcbaa
mov dword [ebp - 0x3e4c], ecx
mov edx, dword [ebp - 0x3e58]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ed4], dl
shr eax, 8
mov dword [ebp - 0x3e80], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ed3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e70], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3ed2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ed1], al
mov byte [ebp - 0x3ed0], 0
cmp ecx, dword [ebp - 0x3e48]
je 0x4dcc34
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 - 0x3e4c], 5
jmp 0x4dcc47
lea eax, [ebp - 0x3ed4]
push eax
push ecx
lea ecx, [ebp - 0x3e50]
call fcn.0043ec40
mov edx, edi
mov byte [ebp - 0x4094], 0x5b
mov eax, 0x1e
mov ecx, dword [edx + 0xb0]
test ecx, ecx
cmovg eax, ecx
mov dword [ebp - 0x4093], eax
mov ecx, dword [edx + 0x34]
lea edx, [ebp - 0x3e50]
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.0x4d2ef6.2
lea eax, [ebp - 0x3e3c]
mov ecx, edi
push eax
push dword [ebp - 0x3e58]
call fcn.004bdc70
mov edi, eax
lea eax, [ebp - 0x14b0]
push eax
mov dword [ebp - 0x3e38], edi
call fcn.0059677e
lea eax, [ebp - 0x14b0]
push eax
lea eax, [ebp - 0x15b0]
push 0x5d7428
push eax
call fcn.0043d380
lea eax, [ebp - 0x15b0]
push eax
push str.MacroDetection.csv
call fcn.004a4370
lea eax, [ebp - 0x14b0]
push eax
call fcn.005969be
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.004a4370
lea eax, [ebp - 0x14b0]
push eax
call fcn.005969be
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.004a4370
add esp, 8
cmp byte [ebp - 0xfa3], 0
je case.default.0x4d8016
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.00473380
add esp, 0xc
jmp 0x4dceff
mov dword [esi + 0x258], 0
jmp case.0x4d2ef6.2
lea eax, [ebp - 0x3e3c]
mov ecx, edi
push eax
push dword [ebp - 0x3e58]
call fcn.004bdc70
mov edi, eax
mov dword [ebp - 0x3e38], edi
cmp dword [edi + 0x14f34], 1
je case.default.0x4d8016
lea eax, [ebp - 0x1430]
push eax
call fcn.0059677e
lea eax, [ebp - 0x1430]
push eax
lea eax, [ebp - 0x16b0]
push 0x5d7428
push eax
call fcn.0043d380
lea eax, [ebp - 0x16b0]
push eax
push str.afkMacroDetection.csv
call fcn.004a4370
lea eax, [ebp - 0x1430]
push eax
call fcn.005969be
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.004a4370
lea eax, [ebp - 0x1430]
push eax
call fcn.005969be
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.004a4370
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.00473380
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.005316e0
mov ecx, dword [ebp - 0x3e54]
push esi
push edi
call fcn.004d2b10
mov esi, dword [ebp - 0x3e38]
mov eax, dword [ebp - 0x3e54]
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 0x4d2ea1
lea ecx, [ebp - 0x3e50]
call fcn.00473980
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.0055ee88
mov esp, ebp
pop ebp
ret