Function at 0x4cd610
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5c5500
mov eax, dword fs:[0]
push eax
mov eax, 0x4218
call fcn.00556d30
mov eax, dword [0x6287a8]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, ecx
mov dword [ebp - 0x3e50], eax
mov dword [ebp - 0x3fc8], 0
mov byte [ebp - 0x25ec], 4
mov byte [ebp - 0x206c], 0x17
mov byte [ebp - 0x3e94], 0xd
mov byte [ebp - 0x3e64], 0xe
mov byte [ebp - 0x2004], 9
mov byte [ebp - 0x1fb4], 0x28
mov byte [ebp - 0x4224], 0x21
mov byte [ebp - 0x3fd8], 0x1a
mov byte [ebp - 0x3e34], 0x2d
mov byte [ebp - 0x3e7c], 0x2e
mov byte [ebp - 0x3e85], 0x37
mov byte [ebp - 0x40ac], 0x44
mov dword [ebp - 0x3e4c], 0
mov dword [ebp - 0x3e48], 0
mov dword [ebp - 0x3e44], 0
mov dword [ebp - 0x3e54], 0
lea edx, [ebp - 0x3e8c]
mov ecx, dword [eax + 0x34]
push 0
push 0
push edx
mov eax, dword [ecx]
push 0
mov dword [ebp - 4], 0
mov eax, dword [eax + 8]
call eax
mov eax, dword [ebp - 0x3e8c]
test eax, eax
jle 0x4d7791
mov edi, 0x1e
cmp eax, 0xfa0
jle 0x4cd711
mov dword [ebp - 0x3e8c], 0xfa0
mov esi, dword [ebp - 0x3e50]
lea edx, [ebp - 0x3e4c]
push edx
lea edx, [ebp - 0x3e54]
push edx
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e8c]
push edx
lea edx, [ebp - 0xfb0]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
movsx eax, byte [ebp - 0xfb0]
dec eax
cmp eax, 0x5d
ja case.0x4cd755.2
movzx eax, byte [eax + 0x4d7868]
jmp dword [eax*4 + 0x4d77b8]
mov ecx, dword [0x62ca94]
lea eax, [ebp - 0xfaf]
push eax
call fcn.00510100
test eax, eax
je 0x4cd79d
mov dword [ebp - 0x3e63], 0xa
lea edx, [ebp - 0x3e4c]
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.0x4cd755.2
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, dword [ebp - 0x3e50]
mov esi, eax
test esi, esi
je 0x4cd7f6
nop dword [eax]
mov ecx, dword [ebp - 0x3e3c]
push esi
mov ecx, dword [ecx + 0x110]
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
lea eax, [ebp - 0x3e3c]
mov ecx, edi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov esi, eax
test esi, esi
jne 0x4cd7c0
push dword [ebp - 0x3e54]
mov ecx, edi
call fcn.004b8cc0
mov esi, eax
test esi, esi
je 0x4cd836
nop dword [eax]
mov ecx, dword [edi + 0x44]
push esi
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
push dword [ebp - 0x3e54]
mov ecx, edi
call fcn.004b8cc0
mov esi, eax
test esi, esi
jne 0x4cd810
push 0x15054
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x41b8], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x4cd860
mov ecx, eax
call fcn.0046d670
mov dword [ebp - 0x3e5c], eax
jmp 0x4cd86a
mov dword [ebp - 0x3e5c], 0
mov ecx, dword [ebp - 0x3e5c]
mov eax, dword [ebp - 0x3e54]
push ecx
mov byte [ebp - 4], 0
mov dword [ecx + 0x180], eax
mov dword [ecx + 0x188], 0xffffffff
mov al, byte [ebp - 0xfaf]
mov byte [ecx + 0x240], al
mov al, byte [ebp - 0xfae]
mov byte [ecx + 0x241], al
mov al, byte [ebp - 0xfad]
mov byte [ecx + 0x242], al
mov al, byte [ebp - 0xfac]
mov byte [ecx + 0x243], al
mov ecx, dword [edi + 0x44]
call fcn.0044de70
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4cd8d9
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ed4], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ed3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3ed2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ed1], al
mov byte [ebp - 0x3ed0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4cd963
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4cd976
lea eax, [ebp - 0x3ed4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
mov byte [ebp - 0x40ab], 0
lea edx, [ebp - 0x3e4c]
mov ecx, dword [edi + 0x34]
push edx
push 0
lea edx, [ebp - 0x40ac]
mov eax, dword [ecx]
push edx
push 6
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
xor edi, edi
call fcn.004b83e0
mov esi, eax
test esi, esi
je 0x4cdcdf
mov dword [ebp - 0x3e38], 1
nop dword [eax + eax]
imul eax, dword [esi + 0x188], 0x980
add eax, 0x2a0
add eax, esi
push eax
lea eax, [esi + 0x18c]
push eax
lea eax, [ebp - 0x13b0]
push str._closing_connection:__s___s
push eax
call fcn.0046d610
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb10
add esp, 0x18
lea ecx, [ebp - 0x207c]
call fcn.00515340
mov ecx, dword [ebp - 0x2074]
mov dx, word [ebp - 0x2076]
add ecx, 0x13
movzx edi, cx
mov word [ebp - 0x2074], cx
lea eax, [edi - 0x18]
movzx eax, ax
mov dword [ebp - 0x3e40], eax
cmp cx, 0x18
jae 0x4cda56
mov ecx, 0xffff
add dx, cx
mov word [ebp - 0x2076], dx
jmp 0x4cda5d
mov word [ebp - 0x2074], ax
movzx eax, word [ebp - 0x2072]
cmp edi, 0x18
push eax
mov eax, dword [ebp - 0x3e40]
mov ecx, edi
movzx eax, ax
cmovae ecx, eax
movzx eax, cx
push eax
movzx eax, dx
push eax
movzx eax, word [ebp - 0x207a]
push eax
lea eax, [ebp - 0x13b0]
push str._d__02d___d:_02d_n
push eax
call fcn.0046d610
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb10
mov eax, dword [esi + 0x14f34]
add esp, 0x20
cmp eax, 2
je 0x4cdabb
cmp eax, 3
jne 0x4cdacf
lea eax, [ebp - 0x13b0]
push eax
push str.moderatorLog.txt
call fcn.0049eb10
add esp, 8
mov edi, dword [ebp - 0x3e3c]
mov ecx, esi
push 0
push edi
call fcn.0046e3e0
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.0046d640
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.0052acd0
push 0
push edi
mov ecx, esi
call fcn.004866b0
mov ecx, dword [edi + 0x110]
push esi
call fcn.0044e210
mov ecx, edi
call fcn.0044c8d0
test eax, eax
jne 0x4cdb84
mov ecx, edi
call fcn.0044c8d0
test eax, eax
jne 0x4cdb5b
cmp dword [edi + 0x124], eax
jg 0x4cdb84
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 0x4cdbad
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.00487300
mov eax, dword [esi + 0x14f70]
test eax, eax
je 0x4cdcad
mov dword [eax + 0x23c], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x240], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x244], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x248], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x24c], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x250], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x254], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x258], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x25c], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x260], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x1c0], 0
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x220], 0x19
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x124], 1
mov eax, dword [esi + 0x14f70]
mov dword [eax + 0x21c], 0
mov dword [esi + 0x14f70], 0
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, dword [ebp - 0x3e50]
lea eax, [ebp - 0x3e3c]
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov esi, eax
test esi, esi
jne 0x4cd9d0
mov edi, dword [ebp - 0x3e38]
push dword [ebp - 0x3e54]
mov esi, dword [ebp - 0x3e50]
mov ecx, esi
call fcn.004b8cc0
mov dword [ebp - 0x3e5c], eax
mov ecx, eax
mov dword [ebp - 0x3e38], ecx
test eax, eax
jne 0x4cdd86
mov dword [ebp - 0x3e5c], ecx
test edi, edi
jne case.default.0x4d28b4
lea eax, [ebp - 0x13b0]
push str._orphan_close_message_
push eax
call fcn.0046d610
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb10
add esp, 0x10
lea ecx, [ebp - 0x20ac]
call fcn.00515340
mov ecx, dword [ebp - 0x20a4]
mov dx, word [ebp - 0x20a6]
add ecx, 0x13
movzx esi, cx
mov word [ebp - 0x20a4], cx
lea eax, [esi - 0x18]
movzx eax, ax
mov edi, eax
cmp cx, 0x18
jae 0x4cddbb
mov ecx, 0xffff
add dx, cx
mov word [ebp - 0x20a6], dx
jmp 0x4cddc2
mov eax, dword [ebp - 0x3e5c]
mov ecx, dword [esi + 0x44]
push eax
call fcn.0044e210
mov ecx, dword [ebp - 0x3e5c]
push 1
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
push dword [ebp - 0x3e54]
mov ecx, esi
call fcn.004b8cc0
mov ecx, eax
mov dword [ebp - 0x3e5c], ecx
test ecx, ecx
jne 0x4cdd80
jmp case.default.0x4d28b4
mov word [ebp - 0x20a4], ax
movzx eax, word [ebp - 0x20a2]
cmp esi, 0x18
push eax
movzx eax, di
mov ecx, esi
cmovae ecx, eax
movzx eax, cx
push eax
movzx eax, dx
push eax
movzx eax, word [ebp - 0x20aa]
push eax
lea eax, [ebp - 0x13b0]
push str._d__02d___d:_02d_n
push eax
call fcn.0046d610
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb10
mov ecx, dword [ebp - 0x3e38]
add esp, 0x20
mov dword [ebp - 0x3e5c], ecx
jmp case.default.0x4d28b4
mov eax, dword [ebp - 0x3e8c]
dec eax
push eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044cf90
add esp, 8
lea eax, [ebp - 0xfaf]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b9440
jmp case.0x4cd755.2
mov eax, dword [str.Connecting...]
mov dword [0x62b104], eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044c540
lea eax, [ebp - 0xfaf]
push 0x20
push eax
call fcn.0044cf90
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044ce30
lea eax, [ebp - 0xf8f]
push 0x88
push eax
call fcn.0044cf90
mov ecx, dword [0x62ca98]
add esp, 0x18
push dword [ebp - 0xf07]
call fcn.00531280
test eax, eax
je 0x4cdecf
mov dword [ebp - 0x3e63], 0xc
lea edx, [ebp - 0x3e4c]
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.0x4cd755.2
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
lea eax, [ebp - 0xf8f]
push eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.004b8460
mov ecx, eax
mov dword [ebp - 0x3e5c], ecx
test ecx, ecx
je 0x4cdf22
mov dword [ebp - 0x3e63], 6
lea edx, [ebp - 0x3e4c]
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.0x4cd755.2
push dword [ebp - 0x3e54]
mov ecx, esi
call fcn.004b8cc0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
push 0xffffffffffffffff
push 0
push 1
lea eax, [ebp - 0xf8f]
mov ecx, edi
push eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.0047eb40
mov ecx, dword [ebp - 0xf07]
mov esi, eax
mov dword [edi + 0x14fb4], ecx
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4cdf7e
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3edc], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3edb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3eda], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ed9], al
mov byte [ebp - 0x3ed8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4ce008
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4ce01b
lea eax, [ebp - 0x3edc]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
mov byte [ebp - 0x4064], 0x3f
lea edx, [ebp - 0x4064]
mov eax, dword [edi + 0x238]
mov edi, dword [ebp - 0x3e50]
mov dword [ebp - 0x4063], eax
push 0
push 0
mov ecx, dword [edi + 0x34]
push edx
push 5
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
test esi, esi
jne 0x4ce07c
mov eax, dword [ebp - 0x3e54]
mov dword [ebp - 0x3e93], eax
mov ecx, dword [edi + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x3e94]
mov eax, dword [eax + 4]
push edx
push 5
call eax
jmp case.default.0x4d28b4
cmp esi, 1
jne 0x4ce0a8
mov dword [ebp - 0x3e63], esi
mov ecx, dword [edi + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [eax + 4]
push edx
push 5
call eax
jmp case.default.0x4d28b4
cmp esi, 2
jne 0x4ce0d4
mov dword [ebp - 0x3e63], esi
lea edx, [ebp - 0x3e4c]
mov ecx, dword [edi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
cmp esi, 3
jne 0x4ce100
mov dword [ebp - 0x3e63], esi
lea edx, [ebp - 0x3e4c]
mov ecx, dword [edi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
cmp esi, 0xa
jne 0x4ce12c
mov dword [ebp - 0x3e63], esi
lea edx, [ebp - 0x3e4c]
mov ecx, dword [edi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
cmp esi, 0x14
jne 0x4ce17d
mov dword [ebp - 0x3e63], 0xc
mov ecx, dword [edi + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [eax + 4]
push edx
push 5
call eax
mov ecx, dword [0x62ca98]
push str.Mr._Cheater
push dword [ebp - 0xf07]
call fcn.005314c0
mov ecx, dword [0x62ca98]
call fcn.00531440
jmp case.default.0x4d28b4
cmp esi, 0xffffffff
jne case.default.0x4d28b4
mov dword [ebp - 0x3e63], esi
lea edx, [ebp - 0x3e4c]
mov ecx, dword [edi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4ce1c3
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ee4], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ee3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3ee2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ee1], al
mov byte [ebp - 0x3ee0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4ce24d
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4ce260
lea eax, [ebp - 0x3ee4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
mov eax, dword [str.Connecting...]
mov dword [0x62b104], eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044c540
cmp dword [esi + 0x7c], 0
mov eax, 0x3e8
mov edi, dword [0x62ca9c]
cmovne edi, eax
lea eax, [ebp - 0xfaf]
push 0x20
push eax
mov dword [ebp - 0x3e38], edi
call fcn.0044cf90
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044ce30
lea eax, [ebp - 0xf8f]
push 0x88
push eax
call fcn.0044cf90
mov ecx, dword [0x62ca98]
add esp, 0x18
push dword [ebp - 0xf07]
call fcn.00531280
test eax, eax
je 0x4ce2e3
mov dword [ebp - 0x3e63], 0xc
mov ecx, dword [esi + 0x34]
jmp 0x4ce08a
mov ecx, dword [esi + 0x48]
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4ce35e
mov edi, dword [ebp - 0x3e50]
nop word [eax + eax]
mov ecx, dword [esi + 0x110]
call fcn.0044e020
test eax, eax
je 0x4ce34a
mov edi, dword [ebp - 0x3fc8]
nop word [eax + eax]
mov ecx, dword [ebp - 0xf07]
cmp ecx, dword [eax + 0x14fb4]
jne 0x4ce32f
inc edi
mov ecx, dword [esi + 0x110]
call fcn.0044e0d0
test eax, eax
jne 0x4ce320
mov dword [ebp - 0x3fc8], edi
mov edi, dword [ebp - 0x3e50]
mov ecx, dword [edi + 0x48]
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4ce300
mov edi, dword [ebp - 0x3e38]
cmp dword [ebp - 0x3fc8], edi
jl 0x4ce37e
mov eax, dword [ebp - 0x3e50]
mov dword [ebp - 0x3e63], 0xd
mov ecx, dword [eax + 0x34]
jmp 0x4ce08a
movss xmm0, dword [ebp - 0xf03]
ucomiss xmm0, dword [0x5db2e0]
lahf
test ah, 0x44
jnp 0x4ce3ab
mov eax, dword [ebp - 0x3e50]
mov dword [ebp - 0x3e63], 5
mov ecx, dword [eax + 0x34]
jmp 0x4ce08a
mov esi, dword [ebp - 0x3e50]
lea eax, [ebp - 0x3e3c]
push eax
lea eax, [ebp - 0xf8f]
mov ecx, esi
push eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.004b8460
mov ecx, eax
mov dword [ebp - 0x3e5c], ecx
test ecx, ecx
je 0x4ce3eb
mov dword [ebp - 0x3e63], 6
mov ecx, dword [esi + 0x34]
jmp 0x4ce08a
push dword [ebp - 0x3e54]
mov ecx, esi
call fcn.004b8cc0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
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.0047eb40
mov ecx, dword [ebp - 0xf07]
mov esi, eax
mov dword [edi + 0x14fb4], ecx
cmp dword [edi + 0x14fa4], 1
jne 0x4ce469
lea ecx, [ebp - 0x2140]
call fcn.00515340
lea eax, [edi + 0x14f94]
push eax
lea ecx, [ebp - 0x2140]
call fcn.005153a0
test eax, eax
jg 0x4ce487
mov dword [edi + 0x14fa4], 0
test esi, esi
jne 0x4ce49f
mov eax, dword [ebp - 0x3e54]
mov dword [ebp - 0x3e93], eax
mov eax, dword [ebp - 0x3e50]
mov ecx, dword [eax + 0x34]
jmp 0x4ce05e
mov eax, dword [ebp - 0x3e50]
mov dword [ebp - 0x3e63], 7
mov ecx, dword [eax + 0x34]
jmp 0x4ce08a
cmp esi, 1
jne 0x4ce4d1
mov dword [ebp - 0x3e63], esi
mov eax, dword [ebp - 0x3e50]
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [eax + 4]
push edx
push 5
call eax
jmp case.default.0x4d28b4
cmp esi, 2
jne 0x4ce4de
mov dword [ebp - 0x3e63], esi
jmp 0x4ce4aa
cmp esi, 3
jne 0x4ce4eb
mov dword [ebp - 0x3e63], esi
jmp 0x4ce4aa
cmp esi, 4
jne 0x4ce4f8
mov dword [ebp - 0x3e63], esi
jmp 0x4ce4aa
cmp esi, 0xffffffff
jne 0x4ce505
mov dword [ebp - 0x3e63], esi
jmp 0x4ce4aa
cmp esi, 0xa
jne 0x4ce512
mov dword [ebp - 0x3e63], esi
jmp 0x4ce4aa
cmp esi, 0x14
jne 0x4ce52f
mov eax, dword [ebp - 0x3e50]
mov dword [ebp - 0x3e63], 0xc
mov ecx, dword [eax + 0x34]
jmp 0x4ce13e
cmp esi, 0xb
jne case.default.0x4d28b4
mov dword [ebp - 0x3e63], esi
jmp 0x4ce4aa
mov eax, dword [ebp - 0x3e54]
cmp dword [ebp - 0xfaf], eax
jne case.0x4cd755.2
lea ecx, [ebp - 0xfb0]
push ecx
push eax
mov ecx, esi
call fcn.004e45f0
jmp case.0x4cd755.2
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4ce57f
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3eec], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3eeb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3eea], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ee9], al
mov byte [ebp - 0x3ee8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4ce609
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4ce61c
lea eax, [ebp - 0x3eec]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
push dword [ebp - 0x3e54]
mov ecx, esi
call fcn.004b8cc0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
movsx ecx, byte [ebp - 0xfaf]
and ecx, 0x80000007
jns 0x4ce64d
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 0x4ce7e4
mov dword [ebp - 0x2003], edx
lea edx, [ebp - 0x3e4c]
movsx eax, cl
imul ecx, eax, 0x980
push edx
push 0
lea edx, [ebp - 0x2004]
push edx
push 0x4d
mov eax, dword [ecx + edi + 0x2c0]
mov dword [ebp - 0x1fff], eax
mov al, byte [ecx + edi + 0x2cc]
mov byte [ebp - 0x1ff3], al
mov al, byte [ecx + edi + 0x2cd]
mov byte [ebp - 0x1ff2], al
mov al, byte [ecx + edi + 0x2ce]
mov byte [ebp - 0x1ff1], al
mov eax, dword [ecx + edi + 0x2c4]
mov dword [ebp - 0x1ffb], eax
mov al, byte [ecx + edi + 0x2cf]
mov byte [ebp - 0x1ff0], al
mov al, byte [ecx + edi + 0x2d0]
mov byte [ebp - 0x1fef], al
mov al, byte [ecx + edi + 0x2d1]
mov byte [ebp - 0x1fee], al
mov eax, dword [ecx + edi + 0x2c8]
mov dword [ebp - 0x1ff7], eax
mov al, byte [ecx + edi + 0x2d2]
mov byte [ebp - 0x1fed], al
mov al, byte [ecx + edi + 0x2d3]
mov byte [ebp - 0x1fec], al
mov al, byte [ecx + edi + 0x2d4]
mov byte [ebp - 0x1feb], al
movups xmm0, xmmword [ecx + edi + 0x2a0]
movups xmmword [ebp - 0x1fe8], xmm0
movq xmm0, qword [ecx + edi + 0x2b0]
movq qword [ebp - 0x1fd8], xmm0
mov eax, dword [ecx + edi + 0x2b8]
mov dword [ebp - 0x1fd0], eax
movzx eax, word [ecx + edi + 0x2bc]
mov word [ebp - 0x1fcc], ax
mov al, byte [ecx + edi + 0x2be]
mov byte [ebp - 0x1fca], al
mov byte [ebp - 0x1fc9], 0
mov al, byte [ecx + edi + 0x2e8]
mov byte [ebp - 0x1fc8], al
mov al, byte [ecx + edi + 0x2ec]
mov byte [ebp - 0x1fc7], al
mov al, byte [ecx + edi + 0x2f0]
mov byte [ebp - 0x1fc6], al
mov al, byte [ecx + edi + 0x2f4]
mov byte [ebp - 0x1fc5], al
movzx eax, word [ecx + edi + 0x318]
mov word [ebp - 0x1fea], ax
cvttss2si eax, dword [ecx + edi + 0x300]
mov dword [ebp - 0x1fc4], eax
mov eax, dword [ecx + edi + 0x2d8]
mov ecx, dword [eax + 0x18]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0x1fc0], ecx
mov dword [ebp - 0x1fbc], eax
jmp 0x4ce800
lea edx, [ebp - 0x3e4c]
mov dword [ebp - 0x3e63], 1
push edx
push 0
lea edx, [ebp - 0x3e64]
push edx
push 5
mov ecx, dword [esi + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
cmp dword [edi + 0x2c4], 0xffffffff
jle 0x4ce860
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 0x4ce867
mov byte [ebp - 0x1fb3], 0
cmp dword [edi + 0xc44], 0xffffffff
jle 0x4ce8bd
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 0x4ce8c4
mov byte [ebp - 0x1f93], 0
cmp dword [edi + 0x15c4], 0xffffffff
jle 0x4ce91a
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 0x4ce921
mov byte [ebp - 0x1f73], 0
cmp dword [edi + 0x1f44], 0xffffffff
jle 0x4ce977
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 0x4ce97e
mov byte [ebp - 0x1f53], 0
cmp dword [edi + 0x28c4], 0xffffffff
jle 0x4ce9d4
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 0x4ce9db
mov byte [ebp - 0x1f33], 0
cmp dword [edi + 0x3244], 0xffffffff
jle 0x4cea31
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 0x4cea38
mov byte [ebp - 0x1f13], 0
cmp dword [edi + 0x3bc4], 0xffffffff
jle 0x4cea8e
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 0x4cea95
mov byte [ebp - 0x1ef3], 0
cmp dword [edi + 0x4544], 0xffffffff
jle 0x4ceaeb
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 0x4ceaf2
mov byte [ebp - 0x1ed3], 0
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x1fb4]
mov eax, dword [ecx]
push edx
push 0x101
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 0x413c], 0x4c
lea edx, [ebp - 0x3e4c]
movzx eax, word [edi + 0x14f84]
mov dword [ebp - 0x413b], eax
movzx eax, word [edi + 0x14f86]
mov dword [ebp - 0x4137], eax
movzx eax, word [edi + 0x14f8a]
mov dword [ebp - 0x4133], eax
movzx eax, word [edi + 0x14f88]
mov dword [ebp - 0x412f], eax
movzx eax, word [edi + 0x14f8c]
mov dword [ebp - 0x412b], eax
movzx eax, word [edi + 0x14f8e]
mov dword [ebp - 0x4127], eax
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x413c]
mov eax, dword [ecx]
push edx
push 0x19
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4ceb9d
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ef4], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ef3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3ef2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ef1], al
mov byte [ebp - 0x3ef0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4cec27
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4cec3a
lea eax, [ebp - 0x3ef4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
mov eax, dword [ebp - 0xfaf]
and eax, 0x80000007
jns 0x4cec4c
dec eax
or eax, 0xfffffff8
inc eax
push dword [ebp - 0x3e54]
mov ecx, esi
mov dword [ebp - 0xfaf], eax
call fcn.004b8cc0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
mov eax, dword [ebp - 0xfaf]
test eax, eax
js 0x4cec7e
cmp eax, 7
jle 0x4cec88
mov dword [ebp - 0xfaf], 0
lea eax, [ebp - 0xf94]
push 0x20
push eax
call fcn.0044cf90
lea eax, [ebp - 0xf94]
push eax
call fcn.0044ce30
lea eax, [ebp - 0xf94]
push 1
push eax
call fcn.0044cc90
lea eax, [ebp - 0xf94]
push eax
call fcn.0044d690
imul eax, dword [ebp - 0xfaf], 0x980
add esp, 0x18
cmp dword [eax + edi + 0x2c4], 0xffffffff
jne 0x4cfec9
lea eax, [ebp - 0xf94]
push eax
call fcn.0044eae0
add esp, 4
test eax, eax
jne 0x4cecfc
mov dword [ebp - 0x3e63], 7
mov ecx, dword [esi + 0x34]
jmp 0x4ce4b3
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.004816a0
imul ecx, dword [ebp - 0xfaf], 0x980
movups xmm0, xmmword [ebp - 0xf94]
mov al, byte [ecx + edi + 0x2e8]
mov byte [ebp - 0xf74], al
mov al, byte [ecx + edi + 0x2ec]
mov byte [ebp - 0xf73], al
mov al, byte [ecx + edi + 0x2f0]
mov byte [ebp - 0xf72], al
mov al, byte [ecx + edi + 0x2f4]
mov byte [ebp - 0xf71], al
movups xmmword [ecx + edi + 0x2a0], xmm0
movq xmm0, qword [ebp - 0xf84]
movq qword [ecx + edi + 0x2b0], xmm0
mov eax, dword [ebp - 0xf7c]
mov dword [ecx + edi + 0x2b8], eax
mov ax, word [ebp - 0xf78]
mov word [ecx + edi + 0x2bc], ax
mov al, byte [ebp - 0xf76]
mov byte [ecx + edi + 0x2be], al
imul eax, dword [ebp - 0xfaf], 0x980
mov byte [eax + edi + 0x2bf], 0
lea eax, [ebp - 0xf94]
push eax
call fcn.0044e7d0
add esp, 4
xorps xmm0, xmm0
xor eax, eax
movlpd qword [ebp - 0xf6c], xmm0
mov word [ebp - 0xf96], ax
mov dword [ebp - 0xf70], eax
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0xfb0]
mov eax, dword [ecx]
push edx
push 0x4d
mov eax, dword [eax + 4]
call eax
imul eax, dword [ebp - 0xfaf], 0x980
mov eax, dword [eax + edi + 0x2d8]
add eax, 8
mov ecx, eax
mov dword [ebp - 0x3e38], eax
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4cefad
mov edi, dword [ebp - 0x3e38]
push esi
mov ecx, edi
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, edi
call fcn.0044e020
mov esi, eax
test esi, esi
jne 0x4cef88
mov edi, dword [ebp - 0x3e5c]
imul eax, dword [ebp - 0xfaf], 0x980
mov eax, dword [eax + edi + 0x2dc]
add eax, 8
mov ecx, eax
mov dword [ebp - 0x3e38], eax
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4cf005
mov edi, dword [ebp - 0x3e38]
nop word [eax + eax]
push esi
mov ecx, edi
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, edi
call fcn.0044e020
mov esi, eax
test esi, esi
jne 0x4cefe0
mov edi, dword [ebp - 0x3e5c]
imul eax, dword [ebp - 0xfaf], 0x980
mov eax, dword [eax + edi + 0x2e0]
add eax, 8
mov ecx, eax
mov dword [ebp - 0x3e38], eax
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4cf057
mov edi, dword [ebp - 0x3e38]
push esi
mov ecx, edi
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, edi
call fcn.0044e020
mov esi, eax
test esi, esi
jne 0x4cf032
mov edi, dword [ebp - 0x3e5c]
imul eax, dword [ebp - 0xfaf], 0x980
mov eax, dword [eax + edi + 0x2e4]
add eax, 8
mov ecx, eax
mov dword [ebp - 0x3e38], eax
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4cf0a9
mov edi, dword [ebp - 0x3e38]
push esi
mov ecx, edi
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, edi
call fcn.0044e020
mov esi, eax
test esi, esi
jne 0x4cf084
mov edi, dword [ebp - 0x3e5c]
imul eax, dword [ebp - 0xfaf], 0x980
push str.NO_PET
mov byte [eax + edi + 0x344], 0xff
imul eax, dword [ebp - 0xfaf], 0x980
mov byte [eax + edi + 0x378], 0xff
imul eax, dword [ebp - 0xfaf], 0x980
add eax, 0x334
add eax, edi
push eax
call fcn.004afd80
imul eax, dword [ebp - 0xfaf], 0x980
push str.NO_PET
add eax, 0x368
add eax, edi
push eax
call fcn.004afd80
push 0x120
call fcn.0055644a
add esp, 0x14
mov dword [ebp - 0x41a0], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x4cf134
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce20
mov esi, eax
jmp 0x4cf136
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 0x4cf1ea
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.0052ea80
push 0x120
call fcn.0055644a
add esp, 8
mov dword [ebp - 0x4204], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x4cf229
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce20
mov esi, eax
jmp 0x4cf22b
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 0x4cf2df
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.0052ea80
push 0x120
call fcn.0055644a
add esp, 8
mov dword [ebp - 0x4200], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x4cf31e
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce20
mov esi, eax
jmp 0x4cf320
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 0x4cf3d4
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.0052ea80
push 0x120
call fcn.0055644a
add esp, 8
mov dword [ebp - 0x41fc], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x4cf413
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce20
mov esi, eax
jmp 0x4cf415
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 0x4cf4c9
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.0052ea80
push 0x120
call fcn.0055644a
add esp, 8
mov dword [ebp - 0x41f8], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x4cf508
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce20
mov esi, eax
jmp 0x4cf50a
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 0x4cf5be
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.0052ea80
push 0x120
call fcn.0055644a
add esp, 8
mov dword [ebp - 0x41f4], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x4cf5fd
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce20
mov esi, eax
jmp 0x4cf5ff
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 0x4cf6b3
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.0052ea80
push 0x120
call fcn.0055644a
add esp, 8
mov dword [ebp - 0x41f0], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x4cf6f2
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce20
mov esi, eax
jmp 0x4cf6f4
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 0x4cf7a8
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.0052ea80
push 0x120
call fcn.0055644a
add esp, 8
mov dword [ebp - 0x41ec], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x4cf7e7
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce20
mov esi, eax
jmp 0x4cf7e9
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 0x4cf89d
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.0052ea80
push 0x120
call fcn.0055644a
add esp, 8
mov dword [ebp - 0x41e8], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x4cf8dc
push str.Tin_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x4cf8de
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
push ecx
mov byte [ebp - 4], 0
mov dword [eax + 0xc], 0x3f800000
mov dword [eax + 0x10], 0x3f800000
mov dword [eax + 4], 0x80
mov dword [eax + 8], 0x80
mov dword [eax], 0x80
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x3f800000
mov dword [ecx + 0x118], 4
imul eax, dword [ebp - 0xfaf], 0x980
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 8
call fcn.0044de70
imul eax, dword [ebp - 0xfaf], 0x980
push 0x120
cmp dword [eax + edi + 0x2f4], 0xa
jge 0x4cf9dd
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x41e4], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x4cf989
push str.Pointy_Stick
push 0
push 1
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x4cf98b
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 0x4cfa6b
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x41e0], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x4cfa07
push str.My_First_Scythe
push 0
push 1
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x4cfa09
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
mov dword [eax], 1
mov dword [eax + 8], 0x40040000
mov dword [eax + 4], 1
mov dword [eax + 0x14], 0x80
mov dword [eax + 0x18], 0x80
mov dword [eax + 0x10], 0x80
mov dword [eax + 0x34], 0xf
mov dword [eax + 0x38], 0x3e8
mov dword [ecx + 0x108], 0x40000000
mov dword [ecx + 0x10c], 0x3f800000
mov dword [ecx + 0x118], 1
mov dword [eax + 0x3c], 0xd
imul eax, dword [ebp - 0xfaf], 0x980
push ecx
mov byte [ebp - 4], 0
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 8
call fcn.0044de70
imul eax, dword [ebp - 0xfaf], 0x980
xor ecx, ecx
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x18], 0x64
mov dword [eax + 0x1c], 0
imul eax, dword [ebp - 0xfaf], 0x980
mov dword [eax + edi + 0x2fc], 0x1e
imul eax, dword [ebp - 0xfaf], 0x980
mov dword [eax + edi + 0x2f8], 0x1e
imul eax, dword [ebp - 0xfaf], 0x980
mov dword [eax + edi + 0x31c], 0
imul eax, dword [ebp - 0xfaf], 0x980
mov word [eax + edi + 0x318], cx
imul eax, dword [ebp - 0xfaf], 0x980
mov byte [ebp - 0xf64], 1
mov dword [eax + edi + 0xbd0], 1
imul eax, dword [ebp - 0xfaf], 0x980
mov dword [ebp - 0xf70], ecx
mov dword [eax + edi + 0x300], ecx
imul eax, dword [ebp - 0xfaf], 0x980
mov dword [eax + edi + 0x304], ecx
imul ecx, dword [ebp - 0xfaf], 0x980
mov eax, dword [0x60e350]
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 [0x60e354]
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.00487300
cmp dword [edi + 0x2c4], 0xffffffff
jle 0x4cfc0d
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 0x4cfc14
mov byte [ebp - 0x1fb3], 0
cmp dword [edi + 0xc44], 0xffffffff
jle 0x4cfc6a
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 0x4cfc71
mov byte [ebp - 0x1f93], 0
cmp dword [edi + 0x15c4], 0xffffffff
jle 0x4cfcc7
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 0x4cfcce
mov byte [ebp - 0x1f73], 0
cmp dword [edi + 0x1f44], 0xffffffff
jle 0x4cfd24
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 0x4cfd2b
mov byte [ebp - 0x1f53], 0
cmp dword [edi + 0x28c4], 0xffffffff
jle 0x4cfd81
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 0x4cfd88
mov byte [ebp - 0x1f33], 0
cmp dword [edi + 0x3244], 0xffffffff
jle 0x4cfdde
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 0x4cfde5
mov byte [ebp - 0x1f13], 0
cmp dword [edi + 0x3bc4], 0xffffffff
jle 0x4cfe3b
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 0x4cfe42
mov byte [ebp - 0x1ef3], 0
cmp dword [edi + 0x4544], 0xffffffff
jle 0x4cfe98
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 0x4cfe9f
mov byte [ebp - 0x1ed3], 0
mov eax, dword [ebp - 0x3e50]
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x1fb4]
mov eax, dword [eax + 4]
push edx
push 0x101
call eax
jmp case.default.0x4d28b4
mov dword [ebp - 0x3e63], 2
mov ecx, dword [esi + 0x34]
jmp 0x4ce4b3
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4cfef1
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3efc], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3efb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3efa], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ef9], al
mov byte [ebp - 0x3ef8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4cff7b
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4cff8e
lea eax, [ebp - 0x3efc]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
push dword [ebp - 0x3e54]
mov ecx, esi
call fcn.004b8cc0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
movsx eax, byte [ebp - 0xfaf]
and eax, 0x80000007
jns 0x4cffbe
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 0x4d00a9
add eax, 0x2a0
push eax
call fcn.0044ebe0
add esp, 4
lea eax, [ebp - 0x4098]
mov ecx, esi
push eax
movsx eax, byte [ebp - 0xfaf]
imul eax, eax, 0x980
add eax, 0x2a0
add eax, edi
push eax
call fcn.004b8ae0
test eax, eax
je 0x4d0034
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.004b7fb0
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.00487300
mov dword [ebp - 0x3e63], 1
lea edx, [ebp - 0x3e4c]
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e64]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
cmp dword [edi + 0x2c4], 0xffffffff
jle 0x4d00ff
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 0x4d0106
mov byte [ebp - 0x1fb3], 0
cmp dword [edi + 0xc44], 0xffffffff
jle 0x4d015c
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 0x4d0163
mov byte [ebp - 0x1f93], 0
cmp dword [edi + 0x15c4], 0xffffffff
jle 0x4d01b9
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 0x4d01c0
mov byte [ebp - 0x1f73], 0
cmp dword [edi + 0x1f44], 0xffffffff
jle 0x4d0216
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 0x4d021d
mov byte [ebp - 0x1f53], 0
cmp dword [edi + 0x28c4], 0xffffffff
jle 0x4d0273
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 0x4d027a
mov byte [ebp - 0x1f33], 0
cmp dword [edi + 0x3244], 0xffffffff
jle 0x4d02d0
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 0x4d02d7
mov byte [ebp - 0x1f13], 0
cmp dword [edi + 0x3bc4], 0xffffffff
jle 0x4d032d
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 0x4d0334
mov byte [ebp - 0x1ef3], 0
cmp dword [edi + 0x4544], 0xffffffff
jle 0x4d0390
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 0x4cfea8
mov byte [ebp - 0x1ed3], 0
mov ecx, dword [esi + 0x34]
jmp 0x4cfea8
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d03b5
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f04], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f03], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f02], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f01], al
mov byte [ebp - 0x3f00], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d043f
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d0452
lea eax, [ebp - 0x3f04]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
mov eax, dword [ebp - 0xfaf]
and eax, 0x80000007
jns 0x4d0464
dec eax
or eax, 0xfffffff8
inc eax
push dword [ebp - 0x3e54]
mov ecx, esi
mov dword [ebp - 0xfaf], eax
call fcn.004b8cc0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
mov eax, dword [ebp - 0xfaf]
test eax, eax
js 0x4d0496
cmp eax, 7
jle 0x4d049e
xor eax, eax
mov dword [ebp - 0xfaf], eax
imul ecx, eax, 0x980
cmp dword [ecx + edi + 0x2c4], 0xffffffff
je case.default.0x4d28b4
mov eax, dword [ebp - 0xfab]
lea edx, [ebp - 0x3e4c]
mov dword [ecx + edi + 0x2c4], eax
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xfa3]
push edx
push 0
lea edx, [ebp - 0x2004]
push edx
push 0x4d
mov byte [ecx + edi + 0x2cf], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xfa2]
mov byte [ecx + edi + 0x2d0], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xfa1]
mov byte [ecx + edi + 0x2d1], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov eax, dword [ebp - 0xfa7]
mov dword [ecx + edi + 0x2c8], eax
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xfa0]
mov byte [ecx + edi + 0x2d2], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xf9f]
mov byte [ecx + edi + 0x2d3], al
imul ecx, dword [ebp - 0xfaf], 0x980
mov al, byte [ebp - 0xf9e]
mov byte [ecx + edi + 0x2d4], al
mov eax, dword [ebp - 0xfaf]
imul ecx, eax, 0x980
mov dword [ebp - 0x2003], eax
mov eax, dword [ecx + edi + 0x2c0]
mov dword [ebp - 0x1fff], eax
mov al, byte [ecx + edi + 0x2cc]
mov byte [ebp - 0x1ff3], al
mov al, byte [ecx + edi + 0x2cd]
mov byte [ebp - 0x1ff2], al
mov al, byte [ecx + edi + 0x2ce]
mov byte [ebp - 0x1ff1], al
mov eax, dword [ecx + edi + 0x2c4]
mov dword [ebp - 0x1ffb], eax
mov al, byte [ecx + edi + 0x2cf]
mov byte [ebp - 0x1ff0], al
mov al, byte [ecx + edi + 0x2d0]
mov byte [ebp - 0x1fef], al
mov al, byte [ecx + edi + 0x2d1]
mov byte [ebp - 0x1fee], al
mov eax, dword [ecx + edi + 0x2c8]
mov dword [ebp - 0x1ff7], eax
mov al, byte [ecx + edi + 0x2d2]
mov byte [ebp - 0x1fed], al
mov al, byte [ecx + edi + 0x2d3]
mov byte [ebp - 0x1fec], al
mov al, byte [ecx + edi + 0x2d4]
mov byte [ebp - 0x1feb], al
movups xmm0, xmmword [ecx + edi + 0x2a0]
movups xmmword [ebp - 0x1fe8], xmm0
movq xmm0, qword [ecx + edi + 0x2b0]
movq qword [ebp - 0x1fd8], xmm0
mov eax, dword [ecx + edi + 0x2b8]
mov dword [ebp - 0x1fd0], eax
movzx eax, word [ecx + edi + 0x2bc]
mov word [ebp - 0x1fcc], ax
mov al, byte [ecx + edi + 0x2be]
mov byte [ebp - 0x1fca], al
mov byte [ebp - 0x1fc9], 0
mov al, byte [ecx + edi + 0x2e8]
mov byte [ebp - 0x1fc8], al
mov al, byte [ecx + edi + 0x2ec]
mov byte [ebp - 0x1fc7], al
mov al, byte [ecx + edi + 0x2f0]
mov byte [ebp - 0x1fc6], al
mov al, byte [ecx + edi + 0x2f4]
mov byte [ebp - 0x1fc5], al
movzx eax, word [ecx + edi + 0x318]
mov word [ebp - 0x1fea], ax
mov ecx, dword [esi + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov ecx, edi
call fcn.00487300
cmp dword [edi + 0x2c4], 0xffffffff
jle 0x4d00ff
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 0x4d0106
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d0737
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f0c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f0b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f0a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f09], al
mov byte [ebp - 0x3f08], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d07c1
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d07d4
lea eax, [ebp - 0x3f0c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
push 0x5ce640
push str.bugs.txt
call fcn.00566191
mov esi, eax
lea eax, [ebp - 0x13b0]
push eax
call fcn.0058dd8e
lea eax, [ebp - 0x13b0]
push eax
push str._s_
push esi
call fcn.0043d330
lea eax, [ebp - 0x13b0]
push eax
call fcn.0058dfce
lea eax, [ebp - 0x13b0]
push eax
push str._s_
push esi
call fcn.0043d330
cmp byte [ebp - 0xfad], 0
mov eax, 0x5d66c0
mov edi, 0x5d66c4
cmove eax, edi
push eax
push esi
call fcn.0043d330
cmp byte [ebp - 0xfaf], 0
mov eax, 0x5d66c8
cmove eax, edi
push eax
push esi
call fcn.0043d330
cmp byte [ebp - 0xfac], 0
mov eax, 0x5d66cc
cmove eax, edi
push eax
push esi
call fcn.0043d330
add esp, 0x40
mov eax, 0x5d66d0
cmp byte [ebp - 0xfae], 0
cmove eax, edi
push eax
push esi
call fcn.0043d330
cmp byte [ebp - 0xfab], 0
mov eax, 0x5d66d4
cmove eax, edi
push eax
push esi
call fcn.0043d330
lea eax, [ebp - 0xfaa]
push eax
push str._s_
push esi
call fcn.0043d330
lea eax, [ebp - 0xf3b]
push eax
push str._s_
push esi
call fcn.0043d330
lea eax, [ebp - 0xecc]
push eax
push str._s_
push esi
call fcn.0043d330
lea eax, [ebp - 0xe5d]
push eax
push str._s__n
push esi
call fcn.0043d330
add esp, 0x40
push esi
call fcn.00565ea3
mov esi, dword [ebp - 0x3e50]
lea eax, [ebp - 0x3e3c]
add esp, 4
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
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.0043d360
add esp, 0xc
mov byte [ebp - 0x25eb], 0xfc
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e4c]
push edx
mov eax, dword [ecx]
lea edx, [ebp - 0x25ec]
push 0
push edx
push 0x92
mov eax, dword [eax + 4]
call eax
mov dword [edi + 0x258], 0
jmp case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d0986
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f14], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f13], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f12], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f11], al
mov byte [ebp - 0x3f10], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d0a10
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d0a23
lea eax, [ebp - 0x3f14]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
movsx eax, byte [ebp - 0xfaf]
and eax, 0x80000007
jns 0x4d0a36
dec eax
or eax, 0xfffffff8
inc eax
push dword [ebp - 0x3e54]
mov ecx, esi
mov byte [ebp - 0xfaf], al
call fcn.004b8cc0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
movsx eax, byte [ebp - 0xfaf]
imul eax, eax, 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28b4
mov eax, dword [ebp - 0x3e54]
lea edx, [ebp - 0x3e4c]
mov dword [ebp - 0x3e93], eax
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x3e94]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
movsx eax, byte [ebp - 0xfaf]
imul ecx, eax, 0x980
mov dword [edi + 0x188], eax
push 0
push 0
mov eax, dword [ecx + edi + 0x308]
mov dword [edi + 0x110], eax
mov dword [edi + 0x108], eax
mov eax, dword [ecx + edi + 0x30c]
mov ecx, edi
mov dword [edi + 0x114], eax
mov dword [edi + 0x10c], eax
call fcn.004866b0
push dword [ebp - 0x3e54]
mov ecx, esi
push 1
call fcn.004e2bd0
imul ecx, dword [edi + 0x188], 0x980
add ecx, 0x358
add ecx, edi
call fcn.005153e0
imul ecx, dword [edi + 0x188], 0x980
add ecx, 0x38c
add ecx, edi
call fcn.005153e0
lea ecx, [ebp - 0x2150]
call fcn.00515340
imul ecx, dword [edi + 0x188], 0x980
lea eax, [ebp - 0x2150]
push eax
add ecx, 0x324
add ecx, edi
call fcn.005153a0
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 0x4d0b7c
test ecx, ecx
jns 0x4d0b83
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.0046d610
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb10
mov eax, dword [edi + 0x14f34]
add esp, 0x2c
cmp eax, 2
je 0x4d0c0f
cmp eax, 3
jne 0x4d0c23
lea eax, [ebp - 0x13b0]
push eax
push str.moderatorLog.txt
call fcn.0049eb10
add esp, 8
lea ecx, [ebp - 0x209c]
call fcn.00515340
mov ecx, dword [ebp - 0x2094]
mov dx, word [ebp - 0x2096]
add ecx, 0x13
movzx esi, cx
mov word [ebp - 0x2094], cx
lea eax, [esi - 0x18]
movzx eax, ax
mov dword [ebp - 0x3e40], eax
cmp cx, 0x18
jae 0x4d0c6b
mov ecx, 0xffff
add dx, cx
mov word [ebp - 0x2096], dx
jmp 0x4d0c72
mov word [ebp - 0x2094], ax
movzx eax, word [ebp - 0x2092]
cmp esi, 0x18
push eax
mov eax, dword [ebp - 0x3e40]
mov ecx, esi
movzx eax, ax
cmovae ecx, eax
movzx eax, cx
push eax
movzx eax, dx
push eax
movzx eax, word [ebp - 0x209a]
push eax
lea eax, [ebp - 0x13b0]
push str._d__02d___d:_02d_n
push eax
call fcn.0046d610
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb10
mov eax, dword [edi + 0x14f34]
add esp, 0x20
cmp eax, 2
je 0x4d0cd0
cmp eax, 3
jne 0x4d0ce4
lea eax, [ebp - 0x13b0]
push eax
push str.moderatorLog.txt
call fcn.0049eb10
add esp, 8
call dword [sym.imp.WINMM.dll_timeGetTime]
mov ecx, dword [ebp - 0x3e50]
mov dword [ecx + 0x58], eax
mov dword [ecx + 0x70], 0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4d0d6c
nop dword [eax]
cmp dword [esi + 0x110], 0x12
jne 0x4d0d4d
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4d0d20
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 8
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4d0ddc
nop dword [eax + eax]
cmp dword [esi + 0x110], 0x12
jne 0x4d0dbd
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4d0d90
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 8
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4d0e4c
nop dword [eax + eax]
cmp dword [esi + 0x110], 0x12
jne 0x4d0e2d
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4d0e00
mov eax, dword [ebp - 0x3e50]
push 0
mov ecx, dword [eax + 0x48]
call fcn.0044df00
imul ecx, dword [edi + 0x188], 0x980
mov esi, eax
mov dword [ebp - 0x3e3c], esi
lea eax, [ebp - 0x206b]
lea edx, [ecx + 0x2a0]
add edx, edi
cmp dword [ecx + edi + 0x31c], 1
push edx
jle 0x4d0e8e
push str._s_entered_the_game.
jmp 0x4d0e93
push str.___s_begins_life___
push eax
call fcn.0046d640
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.0052acd0
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.0046d640
mov esi, dword [ebp - 0x3e50]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
push edi
mov ecx, esi
mov dword [edi + 0x258], 0
call fcn.004dd840
mov ecx, edi
call fcn.0046fdd0
cmp eax, 9
jle 0x4d12f3
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0xc10], 0
jle 0x4d12f3
mov esi, dword [eax + edi + 0xc00]
mov ecx, dword [eax + edi + 0xc04]
movss xmm0, dword [eax + edi + 0xbfc]
mov dword [ebp - 0x3e38], ecx
lea eax, [esi + esi*2]
movss dword [ebp - 0x3e58], xmm0
lea eax, [ecx + eax*2]
imul eax, eax, 0x64
cmp byte [eax + str.Ghost], 0
lea eax, [eax + str.Ghost]
mov dword [ebp - 0x3e40], eax
je 0x4d15f6
push 0x2c8
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x41dc], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x4d0fa6
push 0
push 0
push dword [ebp - 0x3e38]
mov ecx, eax
push esi
call fcn.00492f60
mov esi, eax
jmp 0x4d0fa8
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 0x4d0fd8
push 0x20
push ecx
push 0x20
push eax
call fcn.0044cdd0
add esp, 0x10
mov ecx, edi
call fcn.0046fdd0
cmp eax, 9
jle 0x4d106d
imul edx, dword [edi + 0x188], 0x980
add edx, 0x2a0
add edx, edi
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x3e38], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d1005
sub ecx, dword [ebp - 0x3e38]
lea eax, [esi + 0x184]
push ecx
push eax
push edx
call fcn.00592c30
add esp, 0xc
test eax, eax
je 0x4d106d
imul eax, dword [edi + 0x188], 0x980
push dword [ebp - 0x3e40]
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x13b0]
push str._ss__s
push eax
call fcn.0043d360
push 0x1f
lea eax, [esi + 0x184]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044cdd0
add esp, 0x20
mov byte [esi + 0x1dd], 1
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x3e3c]
movss xmm0, dword [ebp - 0x3e58]
push esi
mov eax, dword [eax + edi + 0x308]
mov dword [esi + 0x108], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x30c]
mov dword [esi + 0x10c], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x308]
mov dword [esi + 0x110], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x30c]
mov dword [esi + 0x114], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x308]
mov dword [esi + 0x228], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x30c]
mov dword [esi + 0x22c], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0xc14]
mov dword [esi + 0x1b4], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0xc1c]
mov dword [esi + 0x1bc], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0xc10]
mov dword [esi + 0x1ac], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0xc10]
mov dword [esi + 0x1b0], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0xc18]
mov dword [esi + 0x1b8], eax
imul eax, dword [edi + 0x188], 0x980
mov al, byte [eax + edi + 0xbf7]
mov byte [esi + 0x1a7], al
imul eax, dword [edi + 0x188], 0x980
mov al, byte [eax + edi + 0xbf6]
mov byte [esi + 0x1a6], al
imul eax, dword [edi + 0x188], 0x980
mov al, byte [eax + edi + 0xbf5]
mov byte [esi + 0x1a5], al
imul eax, dword [edi + 0x188], 0x980
mov al, byte [eax + edi + 0xbf4]
mov byte [esi + 0x1a4], al
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + 0x118]
mov eax, dword [eax + edi + 0xbf8]
mov dword [esi + 0x1a8], eax
movss dword [esi + 0x1f4], xmm0
call fcn.005155c0
mov dword [esi + 0x120], 1
call dword [sym.imp.WINMM.dll_timeGetTime]
sub eax, 0x2710
mov ecx, esi
mov dword [esi + 0x118], eax
mov byte [ebp - 0x403c], 0x18
mov dword [ebp - 0x403b], esi
call fcn.0044c8d0
mov ecx, dword [ebp - 0x3e3c]
mov byte [ebp - 0x4037], al
movzx eax, word [esi + 0x220]
mov word [ebp - 0x4036], ax
movzx eax, word [esi + 0x224]
mov word [ebp - 0x4034], ax
mov al, byte [esi + 0x108]
mov byte [ebp - 0x4031], al
mov al, byte [esi + 0x10c]
push 0
push 5
mov byte [ebp - 0x4030], al
lea eax, [ebp - 0x403c]
push eax
push 0xd
push dword [esi + 0x10c]
push dword [esi + 0x108]
push 0
call fcn.0052acd0
push dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.00493750
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 0x4d15c0
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2f4], 9
jle 0x4d15fc
mov ecx, edi
call fcn.0047d580
mov ecx, edi
mov esi, eax
call fcn.0047d4b0
cmp esi, 1
mov ecx, 1
mov edx, esi
cmovl edx, ecx
xor ecx, ecx
cmp esi, 1
mov dword [ebp - 0x3e38], edx
cmovge ecx, eax
mov dword [ebp - 0x3e40], ecx
test ecx, ecx
jle 0x4d1363
lea eax, [edx + edx*2]
lea eax, [ecx + eax*2]
imul eax, eax, 0x64
add eax, str.Ghost
nop
cmp byte [eax], 0
jne 0x4d135d
dec ecx
sub eax, 0x64
test ecx, ecx
jg 0x4d1350
mov dword [ebp - 0x3e40], ecx
lea eax, [edx + edx*2]
lea eax, [ecx + eax*2]
imul eax, eax, 0x64
cmp byte [eax + str.Ghost], 0
lea eax, [eax + str.Ghost]
mov dword [ebp - 0x3e58], eax
je 0x4d15f6
push 0x2c8
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x41d8], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x4d13bb
push 0
push 0
push dword [ebp - 0x3e40]
mov ecx, eax
push dword [ebp - 0x3e38]
call fcn.00492f60
mov esi, eax
jmp 0x4d13bd
xor esi, esi
push dword [ebp - 0x3e58]
mov byte [esi + 0x1dd], 1
imul eax, dword [edi + 0x188], 0x980
mov byte [ebp - 4], 0
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x13b0]
push str._ss__s
push eax
call fcn.0043d360
push 0x1f
lea eax, [esi + 0x184]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044cdd0
imul eax, dword [edi + 0x188], 0x980
add esp, 0x20
push esi
mov eax, dword [eax + edi + 0x308]
mov dword [esi + 0x108], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x30c]
mov dword [esi + 0x10c], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x308]
mov dword [esi + 0x110], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x30c]
mov dword [esi + 0x114], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x308]
mov dword [esi + 0x228], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x30c]
mov dword [esi + 0x22c], eax
mov eax, dword [ebp - 0x3e3c]
mov byte [esi + 0x1dd], 1
mov ecx, dword [eax + 0x118]
call fcn.005155c0
cmp dword [esi + 0x1b4], 4
jge 0x4d14c4
mov dword [esi + 0x1b4], 4
mov dword [esi + 0x234], 1
mov dword [esi + 0x120], 1
call dword [sym.imp.WINMM.dll_timeGetTime]
sub eax, 0x2710
mov ecx, esi
mov dword [esi + 0x118], eax
mov dword [esi + 0x238], 0x2710
mov byte [ebp - 0x404c], 0x18
mov dword [ebp - 0x404b], esi
call fcn.0044c8d0
mov byte [ebp - 0x4047], al
movzx eax, word [esi + 0x220]
mov ecx, dword [ebp - 0x3e3c]
mov word [ebp - 0x4046], ax
movzx eax, word [esi + 0x224]
mov word [ebp - 0x4044], ax
mov al, byte [esi + 0x108]
mov byte [ebp - 0x4041], al
mov al, byte [esi + 0x10c]
push 0
push 5
mov byte [ebp - 0x4040], al
lea eax, [ebp - 0x404c]
push eax
push 0xd
push dword [esi + 0x10c]
push dword [esi + 0x108]
push 0
call fcn.0052acd0
push dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.00493750
mov byte [ebp - 0x402c], 0x38
mov dword [ebp - 0x402b], 0xffffffff
mov dword [ebp - 0x4027], 0xffffffff
mov al, byte [esi + 0x108]
mov byte [ebp - 0x4023], al
mov al, byte [esi + 0x10c]
mov byte [ebp - 0x4022], al
lea eax, [ebp - 0x402c]
mov word [ebp - 0x4021], 0xff
mov dword [ebp - 0x401f], 0x100ff
mov ecx, dword [ebp - 0x3e3c]
push 0
push 5
push eax
push 0x11
push dword [esi + 0x10c]
push dword [esi + 0x108]
push 0
call fcn.0052acd0
mov dword [edi + 0x14f70], esi
mov dword [esi + 0x21c], edi
mov dword [edi + 0x184], 1
mov esi, dword [ebp - 0x3e50]
cmp dword [edi + 0x14f34], 1
jne 0x4d162a
mov word [ebp - 0x4148], 0x3e
lea edx, [ebp - 0x3e4c]
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x4148]
mov eax, dword [ecx]
push edx
push 0xa
mov eax, dword [eax + 4]
call eax
mov ecx, edi
call fcn.0046fdd0
cmp eax, 9
jle 0x4d165b
mov word [ebp - 0x4154], 0x33e
lea edx, [ebp - 0x3e4c]
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x4154]
mov eax, dword [ecx]
push edx
push 0xa
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 0x406c], 0x50
lea edx, [ebp - 0x3e4c]
mov eax, dword [edi + 0x23c]
mov dword [ebp - 0x406b], eax
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x406c]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
mov byte [ebp - 0x4074], 0x52
lea edx, [ebp - 0x3e4c]
mov eax, dword [esi + 0xc8]
mov dword [ebp - 0x4073], eax
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x4074]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
lea eax, [ebp - 0x31ef]
mov byte [ebp - 0x31f0], 0x59
xor esi, esi
mov dword [ebp - 0x3e40], eax
nop
imul ecx, dword [edi + 0x188], 0x980
push 0
push eax
add ecx, 0x43c
add ecx, esi
add ecx, edi
call fcn.00524a00
mov eax, dword [ebp - 0x3e40]
add esi, 0x138
add eax, 0x200
mov dword [ebp - 0x3e40], eax
cmp esi, 0x750
jl 0x4d16d0
mov esi, dword [ebp - 0x3e50]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x31f0]
mov ecx, dword [esi + 0x34]
push edx
push 0xc01
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
cmp dword [edi + 0x14fac], 0
jne case.default.0x4d28b4
cmp dword [edi + 0x14f48], 0
je case.default.0x4d28b4
lea eax, [ebp - 0x206b]
push str.Thanks_for_paying__Remember_to_use_the__referredby__name_
push eax
call fcn.0046d640
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
push str.command_to_reward_the_player_who_introduced_you_to_Blade_Mistress.
lea eax, [ebp - 0x206b]
push eax
call fcn.0046d640
mov ecx, dword [esi + 0x34]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov eax, dword [eax + 4]
push edx
push 0
lea edx, [ebp - 0x206c]
push edx
push 0x65
call eax
jmp case.default.0x4d28b4
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d17c5
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f1c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f1b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f1a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f19], al
mov byte [ebp - 0x3f18], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d184f
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d1862
lea eax, [ebp - 0x3f1c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
push dword [ebp - 0x3e54]
mov ecx, esi
push 0
call fcn.004e2bd0
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.0046d610
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb10
mov eax, dword [edi + 0x14f34]
add esp, 0x18
cmp eax, 2
je 0x4d18e3
cmp eax, 3
jne 0x4d18f7
lea eax, [ebp - 0x13b0]
push eax
push str.moderatorLog.txt
call fcn.0049eb10
add esp, 8
lea ecx, [ebp - 0x208c]
call fcn.00515340
mov ecx, dword [ebp - 0x2084]
mov dx, word [ebp - 0x2086]
add ecx, 0x13
movzx esi, cx
mov word [ebp - 0x2084], cx
lea eax, [esi - 0x18]
movzx eax, ax
mov dword [ebp - 0x3e40], eax
cmp cx, 0x18
jae 0x4d193f
mov ecx, 0xffff
add dx, cx
mov word [ebp - 0x2086], dx
jmp 0x4d1946
mov word [ebp - 0x2084], ax
movzx eax, word [ebp - 0x2082]
cmp esi, 0x18
push eax
mov eax, dword [ebp - 0x3e40]
mov ecx, esi
movzx eax, ax
cmovae ecx, eax
movzx eax, cx
push eax
movzx eax, dx
push eax
movzx eax, word [ebp - 0x208a]
push eax
lea eax, [ebp - 0x13b0]
push str._d__02d___d:_02d_n
push eax
call fcn.0046d610
lea eax, [ebp - 0x13b0]
push eax
push str.gamelog.txt
call fcn.0049eb10
mov eax, dword [edi + 0x14f34]
add esp, 0x20
cmp eax, 2
je 0x4d19a4
cmp eax, 3
jne 0x4d19b8
lea eax, [ebp - 0x13b0]
push eax
push str.moderatorLog.txt
call fcn.0049eb10
add esp, 8
mov esi, dword [ebp - 0x3e3c]
mov ecx, edi
push 0
push esi
call fcn.0046e3e0
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.0046d640
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.0052acd0
push 0
push esi
mov ecx, edi
call fcn.004866b0
mov ecx, esi
call fcn.0044c8d0
test eax, eax
jne 0x4d1a61
mov ecx, esi
call fcn.0044c8d0
test eax, eax
jne 0x4d1a38
cmp dword [esi + 0x124], eax
jg 0x4d1a61
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 0x4d1abd
mov ecx, esi
call fcn.0044c8d0
imul ecx, dword [edi + 0x188], 0x980
cmp eax, 3
jne 0x4d1a9e
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 0x4d1ac4
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.00487300
mov eax, dword [edi + 0x14f70]
test eax, eax
je case.default.0x4d28b4
mov dword [eax + 0x23c], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x240], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x244], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x248], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x24c], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x250], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x254], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x258], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x25c], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x260], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x1c0], 0
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x220], 0x19
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x124], 1
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x21c], 0
mov dword [edi + 0x14f70], 0
jmp case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d1bd8
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f24], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f23], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f22], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f21], al
mov byte [ebp - 0x3f20], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d1c62
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d1c75
lea eax, [ebp - 0x3f24]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
mov dword [edi + 0x258], 0
imul ecx, dword [edi + 0x188], 0x980
cmp dword [ecx + edi + 0x2c4], 0xffffffff
je case.default.0x4d28b4
mov al, byte [ebp - 0xfab]
cmp al, 0xa
jne 0x4d1d27
mov eax, dword [ecx + edi + 0x2d8]
cmp dword [eax + 0x20], 0
je 0x4d1d01
cmp dword [ebp - 0xfaa], 6
jne 0x4d1d01
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.004dda80
jmp case.default.0x4d28b4
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.004dda80
jmp case.default.0x4d28b4
cmp al, 1
jne 0x4d1d3a
push 1
mov ecx, esi
push edi
call fcn.004dda80
jmp case.default.0x4d28b4
cmp al, 2
jne 0x4d1d4d
push 2
push edi
mov ecx, esi
call fcn.004dda80
jmp case.default.0x4d28b4
cmp al, 3
jne 0x4d1d60
push 3
push edi
mov ecx, esi
call fcn.004dda80
jmp case.default.0x4d28b4
cmp al, 4
jne 0x4d1d73
push 4
push edi
mov ecx, esi
call fcn.004dda80
jmp case.default.0x4d28b4
cmp al, 0xb
jne 0x4d1e02
cmp dword [edi + 0x14f34], 3
jne 0x4d1d8e
push str.Trial_moderators_cannot_open_any_guild_chests.
jmp 0x4d177f
lea eax, [ebp - 0x409c]
push eax
lea eax, [ecx + 0x2a0]
mov ecx, esi
add eax, edi
push eax
call fcn.004b8ae0
test eax, eax
je 0x4d1df8
mov edx, dword [ebp - 0x409c]
cmp edx, dword [ebp - 0x3e3c]
jne 0x4d1df8
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.004dda80
jmp case.default.0x4d28b4
push str.You_are_not_allowed_to_open_this_chest._You_must_be_in_the_guild_and_a_paying_player.
jmp 0x4d177f
cmp al, 9
jne 0x4d216d
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0xfaa]
call fcn.004b83e0
cmp dword [ebp - 0xfaa], 6
mov esi, eax
jne 0x4d1e2f
mov esi, dword [edi + 0x14f7c]
test esi, esi
je case.default.0x4d28b4
lea edx, [esi + 0x18c]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x3e38], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d1e48
sub ecx, dword [ebp - 0x3e38]
cmp ecx, 1
jb case.default.0x4d28b4
lea eax, [edi + 0x18c]
push eax
push edx
call fcn.0044d200
add esp, 8
test eax, eax
jne case.default.0x4d28b4
lea ecx, [ebp - 0x2160]
call fcn.00515340
mov eax, dword [edi + 0x14f7c]
test eax, eax
jne 0x4d2116
cmp dword [esi + 0x14f7c], eax
jne 0x4d2116
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.0046d610
push 0x64
lea eax, [ebp - 0x206b]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e4c]
add esp, 0x1c
mov ecx, dword [ecx + 0x11c]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [esi + 0x188], 0x980
add eax, 0x2a0
add eax, esi
push eax
lea eax, [ebp - 0x212f]
push eax
call fcn.004afe40
mov eax, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov byte [ebp - 0x2125], 0
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x2130]
mov eax, dword [ecx]
push edx
push 0x21
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d1fb6
mov dword [ebp - 0x3e48], ecx
mov edx, dword [esi + 0x180]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f2c], dl
sar eax, 8
mov byte [ebp - 0x3f2b], al
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f2a], al
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f29], al
mov byte [ebp - 0x3f28], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d201a
mov byte [ecx], dl
mov eax, edx
shr eax, 8
mov byte [ecx + 1], al
mov eax, edx
shr eax, 0x10
mov byte [ecx + 2], al
shr edx, 0x18
mov byte [ecx + 3], dl
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d202d
lea eax, [ebp - 0x3f2c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
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.0046d610
push 0x64
lea eax, [ebp - 0x206b]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e4c]
add esp, 0x1c
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x212f]
push eax
call fcn.004afe40
mov eax, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov byte [ebp - 0x2125], 0
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x2130]
mov eax, dword [ecx]
push edx
push 0x21
mov eax, dword [eax + 4]
call eax
mov ecx, dword [ebp - 0x3e50]
push 9
push edi
call fcn.004dda80
push 8
push edi
mov edi, dword [ebp - 0x3e50]
mov ecx, edi
call fcn.004dda80
push 9
push esi
mov ecx, edi
call fcn.004dda80
push 8
push esi
mov ecx, edi
call fcn.004dda80
jmp case.default.0x4d28b4
cmp eax, esi
jne 0x4d2141
cmp dword [esi + 0x14f7c], edi
jne 0x4d2141
mov eax, dword [ebp - 0xfaf]
mov ecx, dword [ebp - 0x3e50]
push 9
push edi
mov dword [edi + 0x14ef4], eax
call fcn.004dda80
jmp case.default.0x4d28b4
cmp dword [esi + 0x14f7c], 0
je case.default.0x4d28b4
lea eax, [ebp - 0x206b]
push str.That_person_is_busy_trading_with_someone_else.
push eax
call fcn.0046d640
mov eax, dword [ebp - 0x3e50]
mov ecx, dword [eax + 0x34]
jmp 0x4d178e
cmp al, 8
jne 0x4d21e0
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0xfaa]
call fcn.004b83e0
cmp dword [ebp - 0xfaa], 6
mov ecx, eax
jne 0x4d2196
mov ecx, dword [edi + 0x14f7c]
test ecx, ecx
je case.default.0x4d28b4
cmp dword [edi + 0x14f7c], ecx
jne 0x4d21c9
cmp dword [ecx + 0x14f7c], edi
jne 0x4d21c9
mov eax, dword [ebp - 0xfaf]
mov ecx, esi
push 8
push edi
mov dword [edi + 0x14ef0], eax
call fcn.004dda80
jmp case.default.0x4d28b4
cmp dword [ecx + 0x14f7c], 0
je case.default.0x4d28b4
push str.That_person_is_busy_trading_with_someone_else.
jmp 0x4d177f
cmp al, 6
jne 0x4d22e0
mov eax, dword [ebp - 0xfaa]
test eax, eax
je case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e3c]
push 1
push eax
mov ecx, dword [ecx + 0x118]
call fcn.00515730
mov esi, eax
test esi, esi
je case.default.0x4d28b4
mov ecx, dword [esi + 0x108]
cmp ecx, dword [edi + 0x108]
jne case.default.0x4d28b4
mov ecx, dword [esi + 0x10c]
cmp ecx, dword [edi + 0x10c]
jne case.default.0x4d28b4
mov ecx, esi
call fcn.0044c8d0
cmp eax, 2
je 0x4d2260
mov ecx, esi
call fcn.0044c8d0
cmp eax, 3
je 0x4d2260
mov ecx, esi
call fcn.0044c8d0
cmp eax, 0x15
jne case.default.0x4d28b4
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2d8]
mov eax, dword [esi + 0x180]
mov dword [ecx + 0x20], eax
mov ecx, esi
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x24], 0
call fcn.0044c8d0
cmp eax, 2
je 0x4d22cd
mov ecx, esi
call fcn.0044c8d0
cmp eax, 0x15
je 0x4d22cd
mov ecx, esi
call fcn.0044c8d0
cmp eax, 3
jne case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e50]
push 7
push edi
call fcn.004dda80
jmp case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e50]
push 6
push edi
call fcn.004dda80
jmp case.default.0x4d28b4
test al, al
jne case.default.0x4d28b4
mov eax, dword [edi + 0x14f70]
test eax, eax
je 0x4d2315
lea ecx, [ebp - 0x41d4]
push ecx
push eax
mov ecx, esi
call fcn.004b8d20
mov edx, eax
test edx, edx
je 0x4d2342
push dword [edx + 0x10c]
push dword [edx + 0x108]
jmp 0x4d2321
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.004dda80
jmp case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d237f
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f34], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f33], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f32], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f31], al
mov byte [ebp - 0x3f30], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d2409
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d241c
lea eax, [ebp - 0x3f34]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4d24af
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x2230], 0x17
push str.You_are_stunned__and_cant_do_that_
push eax
call fcn.0046d610
mov ecx, 0x18
mov eax, dword [ebp - 0x3e50]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x222f]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e4c]
push edx
push 0
movsw word es:[edi], word [esi]
lea edx, [ebp - 0x2230]
push edx
push 0x65
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x21cc], 0
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
mov dword [edi + 0x258], 0
cmp dword [edi + 0x14f7c], 0
jne 0x4d25c4
cmp byte [ebp - 0xfa2], 0
je 0x4d25c4
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x2d8]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x4d25c4
cmp dword [eax + 0x28], 0
jne 0x4d25c4
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 0x4d2507
sub ecx, esi
cmp ecx, 1
jbe 0x4d25be
mov ecx, edx
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d2520
sub ecx, esi
push ecx
push edx
push str.Demon_Amulet
call fcn.00592c30
add esp, 0xc
test eax, eax
je 0x4d25be
mov edx, dword [ebp - 0xfab]
add edx, 8
mov ecx, edx
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d2550
sub ecx, esi
push ecx
push edx
push str.Dragon_Orchid
call fcn.00592c30
add esp, 0xc
test eax, eax
je 0x4d25be
mov edx, dword [ebp - 0xfab]
add edx, 8
mov ecx, edx
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4d2580
sub ecx, esi
push ecx
push edx
push str.Ancient_Dragonscale
call fcn.00592c30
add esp, 0xc
test eax, eax
je 0x4d25be
lea eax, [ebp - 0x206b]
push str.You_can_only_put_Amulets__Dragonscales_and_Orchids_onto_the_ground.
push eax
call fcn.0046d640
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x11c]
jmp 0x4d178e
mov esi, dword [ebp - 0x3e50]
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28b4
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.004e2d50
cmp eax, 1
jne 0x4d2779
push edi
mov ecx, esi
call fcn.004e5aa0
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.004dda80
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.0x4d28b4
mov eax, dword [edi + 0x108]
mov ecx, dword [edi + 0x14f70]
mov dword [ebp - 0x3e58], eax
mov eax, dword [edi + 0x10c]
mov dword [ebp - 0x3e68], eax
xor eax, eax
mov dword [ebp - 0x3e40], eax
test ecx, ecx
je 0x4d26a6
lea eax, [ebp - 0x3e40]
push eax
push ecx
mov ecx, esi
call fcn.004b8d20
mov ecx, eax
test ecx, ecx
je 0x4d26a0
mov eax, dword [ecx + 0x108]
mov dword [ebp - 0x3e58], eax
mov eax, dword [ecx + 0x10c]
mov dword [ebp - 0x3e68], eax
mov eax, dword [ebp - 0x3e40]
mov esi, dword [ebp - 0x3e3c]
test eax, eax
cmovne esi, eax
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x3e3c], esi
mov eax, dword [eax + edi + 0x2d8]
mov ecx, dword [eax + 0x20]
add ecx, 8
call fcn.0044e040
mov edx, dword [ebp - 0x3e68]
push 0
push 5
test eax, eax
je 0x4d2726
imul eax, dword [edi + 0x188], 0x980
lea ecx, [ebp - 0x3fd8]
push ecx
push 7
push edx
mov ecx, esi
mov eax, dword [eax + edi + 0x2d8]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x3fd7], eax
mov eax, dword [ebp - 0x3e58]
push eax
push 0
mov byte [ebp - 0x3fd3], al
mov byte [ebp - 0x3fd2], dl
call fcn.0052acd0
jmp case.default.0x4d28b4
mov byte [ebp - 0x40c8], 0x18
lea ecx, [ebp - 0x40c8]
imul eax, dword [edi + 0x188], 0x980
push ecx
push 0xd
push edx
mov ecx, esi
mov eax, dword [eax + edi + 0x2d8]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x40c7], eax
mov eax, dword [ebp - 0x3e58]
push eax
push 0
mov byte [ebp - 0x40c3], 6
mov byte [ebp - 0x40bd], al
mov byte [ebp - 0x40bc], dl
call fcn.0052acd0
jmp case.default.0x4d28b4
cmp eax, 2
jne case.default.0x4d28b4
push edi
mov ecx, esi
call fcn.004e5aa0
jmp case.default.0x4d28b4
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d27a5
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f3c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f3b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f3a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f39], al
mov byte [ebp - 0x3f38], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d282f
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d2842
lea eax, [ebp - 0x3f3c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
mov dword [edi + 0x258], 0
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28b4
lea eax, [ebp - 0xfb0]
mov ecx, esi
push eax
push edi
call fcn.004dd1f0
test eax, eax
je case.default.0x4d28b4
movzx eax, byte [ebp - 0xfa7]
add eax, 0xffffff38
cmp eax, 3
ja case.default.0x4d28b4
jmp dword [eax*4 + 0x4d78c8]
push 2
mov ecx, esi
push edi
call fcn.004dda80
jmp case.default.0x4d28b4
push 3
mov ecx, esi
push edi
call fcn.004dda80
jmp case.default.0x4d28b4
push 4
mov ecx, esi
push edi
call fcn.004dda80
jmp case.default.0x4d28b4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
mov eax, dword [edi + 0x14f70]
test eax, eax
je 0x4d2a3c
lea ecx, [ebp - 0x40a0]
push ecx
push eax
mov ecx, esi
call fcn.004b8d20
mov esi, eax
test esi, esi
je case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e50]
lea eax, [ebp - 0x40a0]
push eax
push dword [ebp - 0xfab]
call fcn.004b83e0
test eax, eax
je 0x4d2990
cmp dword [edi + 0x14f34], 1
je 0x4d2972
cmp byte [edi + 0x14fb9], 0
je case.default.0x4d28b4
cmp byte [eax + 0x14fb9], 0
je case.default.0x4d28b4
cmp dword [esi + 0x204], 0
jne 0x4d2985
mov dword [esi + 0x11c], 0
mov dword [esi + 0x204], eax
jmp case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e50]
lea eax, [ebp - 0x41d0]
push eax
push dword [ebp - 0xfab]
call fcn.004b8d20
mov dword [ebp - 0x3e40], eax
test eax, eax
je case.default.0x4d28b4
mov ecx, dword [eax + 0x21c]
test ecx, ecx
je 0x4d2a1e
cmp dword [ecx + 0x14f34], 0
jne 0x4d2a1e
mov ecx, dword [ebp - 0x3e3c]
call fcn.0044c8d0
cmp eax, 4
jne 0x4d29e8
mov eax, dword [ebp - 0x3e3c]
cmp dword [eax + 0x134], 6
je 0x4d2a18
mov eax, dword [ebp - 0x3e40]
mov ecx, dword [eax + 0x21c]
test ecx, ecx
je case.default.0x4d28b4
cmp byte [ecx + 0x14fb9], 0
je case.default.0x4d28b4
cmp byte [edi + 0x14fb9], 0
je case.default.0x4d28b4
jmp 0x4d2a1e
mov eax, dword [ebp - 0x3e40]
cmp dword [esi + 0x214], 0
jne 0x4d2a31
mov dword [esi + 0x11c], 0
mov dword [esi + 0x214], eax
jmp case.default.0x4d28b4
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28b4
mov eax, dword [ebp - 0xfab]
test eax, eax
je case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e3c]
push 1
push eax
mov ecx, dword [ecx + 0x118]
call fcn.00515730
mov esi, eax
test esi, esi
je 0x4d2ae2
mov ecx, dword [esi + 0x108]
cmp ecx, dword [edi + 0x108]
jne 0x4d2ae2
mov ecx, dword [esi + 0x10c]
cmp ecx, dword [edi + 0x10c]
jne 0x4d2ae2
mov ecx, esi
call fcn.0044c8d0
cmp eax, 1
jne 0x4d2ae2
mov eax, dword [esi + 0x21c]
test eax, eax
je 0x4d2ac9
cmp dword [eax + 0x14f34], 0
jne 0x4d2ac9
cmp byte [eax + 0x14fb9], 0
je 0x4d2ae2
cmp byte [edi + 0x14fb9], 0
je 0x4d2ae2
cmp dword [edi + 0x14ea0], 0
jne 0x4d2adc
mov dword [edi + 0x11c], 0
mov dword [edi + 0x14ea0], esi
mov ecx, dword [ebp - 0x3e50]
lea eax, [ebp - 0x41cc]
push eax
push dword [ebp - 0xfab]
call fcn.004b83e0
test eax, eax
je case.default.0x4d28b4
cmp byte [edi + 0x14fb9], 0
je case.default.0x4d28b4
cmp byte [eax + 0x14fb9], 0
je case.default.0x4d28b4
cmp dword [edi + 0x14ea4], 0
jne 0x4d2b38
cmp dword [edi + 0x14ea0], 0
jne 0x4d2b38
mov dword [edi + 0x11c], 0
mov dword [edi + 0x14ea4], eax
jmp case.default.0x4d28b4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28b4
mov eax, dword [ebp - 0xfab]
test eax, eax
je case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e3c]
push 1
push eax
mov ecx, dword [ecx + 0x118]
call fcn.00515730
mov esi, eax
test esi, esi
je case.default.0x4d28b4
mov ecx, dword [esi + 0x108]
cmp ecx, dword [edi + 0x108]
jne case.default.0x4d28b4
mov ecx, dword [esi + 0x10c]
cmp ecx, dword [edi + 0x10c]
jne case.default.0x4d28b4
mov ecx, esi
call fcn.0044c8d0
cmp eax, 1
jne case.default.0x4d28b4
mov eax, dword [esi + 0x21c]
test eax, eax
je 0x4d2bf2
cmp dword [eax + 0x14f34], 1
je 0x4d2c05
cmp dword [edi + 0x14ea0], 0
jne 0x4d2c05
mov dword [edi + 0x11c], 0
mov dword [edi + 0x14ea0], esi
jmp case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d2c26
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f44], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f43], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f42], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f41], al
mov byte [ebp - 0x3f40], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d2cb0
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d2cc3
lea eax, [ebp - 0x3f44]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
mov dword [edi + 0x258], 0
imul ecx, dword [edi + 0x188], 0x980
cmp dword [ecx + edi + 0x2c4], 0xffffffff
je case.default.0x4d28b4
mov eax, dword [ebp - 0xfaf]
test eax, eax
je case.default.0x4d28b4
mov ecx, dword [ecx + edi + 0x2e0]
push eax
add ecx, 8
call fcn.0044dfd0
test eax, eax
je 0x4d2d49
cmp dword [eax + 0x110], 6
jne 0x4d2d49
mov ecx, eax
call fcn.0044c8e0
push eax
push edi
mov ecx, esi
call fcn.004c7d90
jmp case.default.0x4d28b4
mov esi, dword [ebp - 0xfaf]
xor eax, eax
mov edx, str.Swordsmith
xor ecx, ecx
cmp dword [ecx + str.XOKHNBC12345678GD90:S], esi
jne 0x4d2d63
lea eax, [edx - 0x20]
cmp dword [ecx + 0x60dc0c], esi
cmove eax, edx
cmp dword [ecx + 0x60dc10], esi
jne 0x4d2d77
lea eax, [edx + 0x20]
add ecx, 0xc
add edx, 0x60
cmp ecx, 0x54
jb 0x4d2d58
test eax, eax
je case.default.0x4d28b4
push eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044df50
test eax, eax
je case.default.0x4d28b4
cmp dword [eax + 0x110], 6
jne case.default.0x4d28b4
mov ecx, eax
call fcn.0044c8e0
mov ecx, dword [ebp - 0x3e50]
push eax
push edi
call fcn.004c7d90
jmp case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d2de8
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f4c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f4b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f4a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f49], al
mov byte [ebp - 0x3f48], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d2e72
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d2e85
lea eax, [ebp - 0x3f4c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
mov esi, dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.0044c8d0
cmp eax, 1
jne 0x4d3058
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28b4
mov byte [ebp - 0x3df9], 0
lea edi, [ebp - 0x3e12]
movzx eax, word [esi + 0x124]
mov word [ebp - 0x3e33], ax
movzx eax, word [esi + 0x128]
mov word [ebp - 0x3e31], ax
movzx eax, word [ebp - 0xfaf]
mov word [ebp - 0x3e2f], ax
movzx eax, word [ebp - 0xfad]
mov word [ebp - 0x3e2d], ax
mov al, byte [esi + 0x13c]
mov byte [ebp - 0x3df9], al
mov al, byte [esi + 0x13d]
mov byte [ebp - 0x3df8], al
xor eax, eax
mov dword [ebp - 0x3e58], eax
nop dword [eax]
xor edx, edx
mov byte [edi - 0x19], 0
movsx ecx, word [ebp - 0x3e2d]
lea eax, [eax + ecx*4]
add ecx, eax
js 0x4d2fa2
movsx eax, word [ebp - 0x3e31]
cmp ecx, eax
jge 0x4d2fa2
movsx eax, word [ebp - 0x3e2f]
lea eax, [eax + eax*4]
mov dword [ebp - 0x3e40], eax
add eax, edx
mov dword [ebp - 0x3e38], eax
js 0x4d2fa2
movsx eax, word [ebp - 0x3e33]
cmp dword [ebp - 0x3e38], eax
jge 0x4d2fa2
mov eax, dword [esi + 0x124]
imul eax, ecx
add eax, dword [esi + 0x134]
add eax, dword [ebp - 0x3e40]
mov al, byte [eax + edx]
jmp 0x4d2fa4
xor al, al
mov byte [edi - 0x19], al
mov eax, dword [ebp - 0x3e58]
mov byte [edi], 0
movsx ecx, word [ebp - 0x3e2d]
lea eax, [eax + ecx*4]
add ecx, eax
js 0x4d300c
movsx eax, word [ebp - 0x3e31]
cmp ecx, eax
jge 0x4d300c
movsx eax, word [ebp - 0x3e2f]
lea eax, [eax + eax*4]
mov dword [ebp - 0x3e40], eax
add eax, edx
mov dword [ebp - 0x3e38], eax
js 0x4d300c
movsx eax, word [ebp - 0x3e33]
cmp dword [ebp - 0x3e38], eax
jge 0x4d300c
mov eax, dword [esi + 0x124]
imul eax, ecx
add eax, dword [esi + 0x138]
add eax, dword [ebp - 0x3e40]
mov al, byte [eax + edx]
jmp 0x4d300e
xor al, al
mov byte [edi], al
inc edx
mov eax, dword [ebp - 0x3e58]
inc edi
cmp edx, 5
jl 0x4d2f42
inc eax
mov dword [ebp - 0x3e58], eax
cmp eax, 5
jl 0x4d2f40
mov eax, dword [ebp - 0x3e50]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x3e34]
mov ecx, dword [eax + 0x34]
push edx
push 0x3d
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
mov ecx, esi
call fcn.0044c8d0
cmp eax, 3
jne case.default.0x4d28b4
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28b4
mov byte [ebp - 0x3df9], 0
lea edi, [ebp - 0x3e12]
movzx eax, word [esi + 0x124]
mov word [ebp - 0x3e33], ax
movzx eax, word [esi + 0x128]
mov word [ebp - 0x3e31], ax
movzx eax, word [ebp - 0xfaf]
mov word [ebp - 0x3e2f], ax
movzx eax, word [ebp - 0xfad]
mov word [ebp - 0x3e2d], ax
mov al, byte [esi + 0x13c]
mov byte [ebp - 0x3df9], al
mov al, byte [esi + 0x13d]
mov byte [ebp - 0x3df8], al
xor eax, eax
mov dword [ebp - 0x3e58], eax
nop word [eax + eax]
xor edx, edx
mov byte [edi - 0x19], 0
movsx ecx, word [ebp - 0x3e2d]
lea eax, [eax + ecx*4]
add ecx, eax
js 0x4d3152
movsx eax, word [ebp - 0x3e31]
cmp ecx, eax
jge 0x4d3152
movsx eax, word [ebp - 0x3e2f]
lea eax, [eax + eax*4]
mov dword [ebp - 0x3e40], eax
add eax, edx
mov dword [ebp - 0x3e38], eax
js 0x4d3152
movsx eax, word [ebp - 0x3e33]
cmp dword [ebp - 0x3e38], eax
jge 0x4d3152
mov eax, dword [esi + 0x124]
imul eax, ecx
add eax, dword [esi + 0x134]
add eax, dword [ebp - 0x3e40]
mov al, byte [eax + edx]
jmp 0x4d3154
xor al, al
mov byte [edi - 0x19], al
mov eax, dword [ebp - 0x3e58]
mov byte [edi], 0
movsx ecx, word [ebp - 0x3e2d]
lea eax, [eax + ecx*4]
add ecx, eax
js 0x4d31bc
movsx eax, word [ebp - 0x3e31]
cmp ecx, eax
jge 0x4d31bc
movsx eax, word [ebp - 0x3e2f]
lea eax, [eax + eax*4]
mov dword [ebp - 0x3e40], eax
add eax, edx
mov dword [ebp - 0x3e38], eax
js 0x4d31bc
movsx eax, word [ebp - 0x3e33]
cmp dword [ebp - 0x3e38], eax
jge 0x4d31bc
mov eax, dword [esi + 0x124]
imul eax, ecx
add eax, dword [esi + 0x138]
add eax, dword [ebp - 0x3e40]
mov al, byte [eax + edx]
jmp 0x4d31be
xor al, al
mov byte [edi], al
inc edx
mov eax, dword [ebp - 0x3e58]
inc edi
cmp edx, 5
jl 0x4d30f2
inc eax
mov dword [ebp - 0x3e58], eax
cmp eax, 5
jl 0x4d30f0
jmp 0x4d3031
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d31fc
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f54], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f53], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f52], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f51], al
mov byte [ebp - 0x3f50], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d3286
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d3299
lea eax, [ebp - 0x3f54]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
mov esi, dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.0044c8d0
cmp eax, 1
jne 0x4d3468
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2c4], 0xffffffff
je case.default.0x4d28b4
push edi
mov ecx, esi
call fcn.004ec7b0
test eax, eax
je case.default.0x4d28b4
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 0x4d337b
mov al, byte [esi + 0x13c]
inc al
cmp al, 4
mov byte [esi + 0x13c], al
jb 0x4d334c
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.0052acd0
jmp case.default.0x4d28b4
cmp byte [ebp - 0xfa8], 0
je 0x4d33a9
mov al, byte [esi + 0x13d]
inc al
mov byte [esi + 0x13d], al
cmp al, 0xb
jb 0x4d339f
mov byte [esi + 0x13d], 0
xor al, al
inc al
mov byte [ebp - 0x3e74], al
jmp 0x4d3354
cmp byte [ebp - 0xfa9], 0
je 0x4d3413
cwde
push eax
movsx eax, cx
mov ecx, esi
push eax
push 1
call fcn.004ec8d0
test eax, eax
js 0x4d33cd
mov byte [ebp - 0x3e75], al
jmp 0x4d3354
cmp eax, 0xfffffffe
jne 0x4d33ee
lea eax, [ebp - 0x206b]
push str.Edit_outside_bounds_denied.
push eax
call fcn.0046d640
mov ecx, dword [esi + 0x11c]
jmp 0x4d178e
cmp eax, 0xffffffff
jne case.default.0x4d28b4
lea eax, [ebp - 0x206b]
push str.That_would_close_off_parts_of_the_dungeon.
push eax
call fcn.0046d640
mov ecx, dword [esi + 0x11c]
jmp 0x4d178e
cmp byte [ebp - 0xfaa], 0
je case.default.0x4d28b4
cwde
push eax
movsx eax, cx
mov ecx, esi
push eax
push 0
call fcn.004ec8d0
test eax, eax
js 0x4d343e
mov byte [ebp - 0x3e76], al
jmp 0x4d3354
cmp eax, 0xfffffffe
je 0x4d33d2
cmp eax, 0xffffffff
jne case.default.0x4d28b4
lea eax, [ebp - 0x206b]
push str.That_would_close_off_parts_of_the_dungeon.
push eax
call fcn.0046d640
mov ecx, dword [esi + 0x11c]
jmp 0x4d178e
mov ecx, esi
call fcn.0044c8d0
cmp eax, 3
jne case.default.0x4d28b4
lea ecx, [esi + 0x148]
call fcn.005153e0
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 0x4d34ce
mov al, byte [esi + 0x13c]
inc al
cmp al, 7
jmp 0x4d333b
cmp byte [ebp - 0xfa8], 0
je 0x4d3503
mov al, byte [esi + 0x13d]
inc al
mov byte [esi + 0x13d], al
cmp al, 8
jb 0x4d339f
xor al, al
mov byte [esi + 0x13d], 0
inc al
mov byte [ebp - 0x3e74], al
jmp 0x4d3354
cmp byte [ebp - 0xfa9], 0
je 0x4d3558
cwde
push eax
movsx eax, cx
mov ecx, esi
push eax
push 1
call fcn.0052f0e0
test eax, eax
js 0x4d352a
mov byte [ebp - 0x3e75], al
jmp 0x4d3354
cmp eax, 0xfffffffe
je 0x4d33d2
cmp eax, 0xffffffff
jne case.default.0x4d28b4
lea eax, [ebp - 0x206b]
push str.That_would_close_off_parts_of_the_tower.
push eax
call fcn.0046d640
mov ecx, dword [esi + 0x11c]
jmp 0x4d178e
cmp byte [ebp - 0xfaa], 0
je case.default.0x4d28b4
cwde
push eax
movsx eax, cx
mov ecx, esi
push eax
push 0
call fcn.0052f0e0
test eax, eax
js 0x4d352a
mov byte [ebp - 0x3e76], al
jmp 0x4d3354
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d3599
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f5c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f5b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f5a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f59], al
mov byte [ebp - 0x3f58], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d3623
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d3636
lea eax, [ebp - 0x3f5c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov ecx, eax
mov dword [ebp - 0x3e5c], ecx
test ecx, ecx
je case.0x4cd755.2
mov edi, dword [ebp - 0x3e3c]
mov ecx, dword [edi + 0x110]
call fcn.0044e020
mov esi, eax
test esi, esi
je case.default.0x4d28b4
mov ecx, esi
call fcn.0044c8d0
test eax, eax
jne 0x4d368e
mov eax, dword [ebp - 0xfaf]
cmp eax, dword [esi + 0x180]
je 0x4d36a4
mov ecx, dword [edi + 0x110]
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4d3675
jmp case.default.0x4d28b4
lea eax, [ebp - 0x2420]
mov byte [ebp - 0x2420], 9
push eax
mov ecx, esi
call fcn.00470000
mov ecx, dword [edi + 0x11c]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x2420]
mov eax, dword [ecx]
push edx
push 0x4d
mov eax, dword [eax + 4]
call eax
xor ecx, ecx
xor edi, edi
mov dword [ebp - 0x3e40], ecx
imul eax, dword [esi + 0x188], 0x980
add eax, esi
cmp byte [eax + edi + 0x344], 0xff
je 0x4d37f0
mov byte [ebp - 0x20ec], 0x3a
mov eax, dword [esi + 0x180]
mov dword [ebp - 0x20eb], eax
lea eax, [ebp - 0x20df]
push 0x10
push eax
imul eax, dword [esi + 0x188], 0x980
push 0x10
add eax, 0x334
add eax, esi
add eax, edi
push eax
call fcn.0044cdd0
imul eax, dword [esi + 0x188], 0x980
lea edx, [ebp - 0x3e4c]
add esp, 0x10
add eax, esi
push edx
push 0
lea edx, [ebp - 0x20ec]
mov al, byte [eax + edi + 0x345]
mov byte [ebp - 0x20e6], al
imul eax, dword [esi + 0x188], 0x980
push edx
push 0x1d
add eax, esi
mov al, byte [eax + edi + 0x344]
mov byte [ebp - 0x20e7], al
imul eax, dword [esi + 0x188], 0x980
add eax, esi
mov al, byte [eax + edi + 0x346]
mov byte [ebp - 0x20e5], al
imul eax, dword [esi + 0x188], 0x980
add eax, esi
movss xmm1, dword [eax + edi + 0x354]
divss xmm1, dword [0x5d0bb8]
movzx eax, byte [eax + edi + 0x347]
movd xmm0, eax
mov eax, dword [ebp - 0x3e40]
cvtdq2ps xmm0, xmm0
mov byte [ebp - 0x20e4], al
mov eax, dword [ebp - 0x3e3c]
addss xmm1, xmm0
movss dword [ebp - 0x20e3], xmm1
mov ecx, dword [eax + 0x11c]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov ecx, dword [ebp - 0x3e40]
inc ecx
add edi, 0x34
mov dword [ebp - 0x3e40], ecx
cmp edi, 0x68
jl 0x4d36e2
push dword [ebp - 0x3e54]
mov edi, dword [ebp - 0x3e3c]
mov ecx, esi
push 0
push edi
call fcn.0046e700
imul eax, dword [esi + 0x188], 0x980
mov ecx, dword [eax + esi + 0x2e4]
add ecx, 8
call fcn.0044e020
test eax, eax
je case.default.0x4d28b4
nop word [eax + eax]
mov ecx, dword [eax + 0x110]
cmp ecx, 1
jne 0x4d386e
push esi
push eax
lea eax, [ebp - 0x4224]
push eax
call fcn.0049e910
add esp, 0xc
lea edx, [ebp - 0x3e4c]
push edx
lea edx, [ebp - 0x4224]
jmp 0x4d38ea
cmp ecx, 0xe
jne 0x4d3915
mov ecx, dword [eax + 0x11c]
lea edx, [ebp - 0x3e4c]
mov dword [ebp - 0x411b], eax
mov byte [ebp - 0x4120], 0x21
mov dword [ebp - 0x411f], 0x40800000
mov eax, dword [ecx]
push edx
lea edx, [ebp - 0x4120]
mov al, byte [eax + eax*2 + 0x623638]
mov byte [ebp - 0x4106], al
mov eax, dword [ecx]
mov al, byte [eax + eax*2 + 0x623639]
mov byte [ebp - 0x4105], al
mov eax, dword [ecx]
mov al, byte [eax + eax*2 + 0x62363a]
mov byte [ebp - 0x4104], al
mov eax, dword [esi + 0x180]
mov dword [ebp - 0x4117], eax
xor eax, eax
mov word [ebp - 0x4109], ax
mov byte [ebp - 0x4107], 0x80
mov ecx, dword [edi + 0x11c]
push 0
push edx
push 0x1d
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
imul eax, dword [esi + 0x188], 0x980
mov ecx, dword [eax + esi + 0x2e4]
add ecx, 8
call fcn.0044e090
imul eax, dword [esi + 0x188], 0x980
mov ecx, dword [eax + esi + 0x2e4]
add ecx, 8
call fcn.0044e0d0
test eax, eax
jne 0x4d3840
jmp case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d3951
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f64], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f63], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f62], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f61], al
mov byte [ebp - 0x3f60], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d39db
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d39ee
lea eax, [ebp - 0x3f64]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
mov eax, dword [ebp - 0x3e3c]
push 0
push dword [edi + 0x10c]
push dword [edi + 0x108]
mov ecx, dword [eax + 0x118]
call fcn.005155e0
mov esi, eax
test esi, esi
je 0x4d3d42
nop dword [eax + eax]
mov ecx, esi
call fcn.0044c8d0
cmp eax, 4
jne case.default.0x4d3a84
mov eax, dword [esi + 0x108]
cmp eax, dword [edi + 0x108]
jne case.default.0x4d3a84
mov eax, dword [esi + 0x10c]
cmp eax, dword [edi + 0x10c]
jne case.default.0x4d3a84
movzx eax, byte [ebp - 0xfaf]
cmp eax, 3
ja case.default.0x4d3a84
jmp dword [eax*4 + 0x4d78d8]
mov ecx, dword [ebp - 0x3e50]
push 1
push dword [ebp - 0x3e3c]
push esi
push edi
call fcn.004d8a40
jmp case.default.0x4d3a84
mov ecx, dword [ebp - 0x3e50]
push 0
push dword [ebp - 0x3e3c]
push esi
push edi
call fcn.004d8a40
jmp case.default.0x4d3a84
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 0x4d3b22
jl 0x4d3ae4
cmp esi, 0xb4
jae 0x4d3b22
push str.You_dont_have_180_gold_for_healing.
lea eax, [ebp - 0x206b]
push eax
call fcn.0046d640
mov eax, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d3a84
mov eax, dword [edx + edi + 0x2fc]
cmp eax, dword [edx + edi + 0x2f8]
jl 0x4d3b39
push str.You_are_already_fully_healed.
jmp 0x4d3ae9
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.0047d1c0
mov esi, 0x32
lea eax, [eax + eax*2]
sub esi, eax
mov eax, 3
cmp esi, 3
cmovl esi, eax
imul ecx, dword [edi + 0x188], 0x980
mov dword [ebp - 0x3e40], esi
mov eax, dword [ecx + edi + 0x2fc]
mov edx, dword [ecx + edi + 0x2f8]
sub edx, eax
cmp edx, esi
cmovge edx, esi
add eax, esi
mov dword [ecx + edi + 0x2fc], eax
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x3e38], edx
mov ecx, dword [eax + edi + 0x2f8]
cmp dword [eax + edi + 0x2fc], ecx
jle 0x4d3bbc
mov dword [eax + edi + 0x2fc], ecx
mov byte [ebp - 0x4100], 0x26
lea edx, [ebp - 0x3e4c]
imul eax, dword [edi + 0x188], 0x980
push edx
push 0
lea edx, [ebp - 0x4100]
push edx
push 0xd
mov eax, dword [eax + edi + 0x2fc]
mov dword [ebp - 0x40fb], eax
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x2f8]
mov dword [ebp - 0x40f7], eax
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x40ff], eax
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x11c]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
push esi
lea eax, [ebp - 0x206b]
push str.You_are_healed_for__d_points.
push eax
call fcn.0046d640
mov esi, dword [ebp - 0x3e3c]
lea edx, [ebp - 0x3e4c]
add esp, 0xc
mov ecx, dword [esi + 0x11c]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
push 9
push esi
mov ecx, edi
call fcn.0046e5b0
push 0x5ce640
push str.healing.txt
call fcn.00566191
mov esi, eax
lea eax, [ebp - 0x13b0]
push eax
call fcn.0058dd8e
lea eax, [ebp - 0x13b0]
push eax
push str._s_
push esi
call fcn.0043d330
lea eax, [ebp - 0x13b0]
push eax
call fcn.0058dfce
lea eax, [ebp - 0x13b0]
push eax
push str._s_
push esi
call fcn.0043d330
imul eax, dword [edi + 0x188], 0x980
push dword [ebp - 0x3e38]
push dword [ebp - 0x3e40]
add eax, 0x2a0
add eax, edi
push eax
push str._s___ld___ld_n
push esi
call fcn.0043d330
push esi
call fcn.00565ea3
add esp, 0x40
jmp case.default.0x4d3a84
imul eax, dword [edi + 0x188], 0x980
push 0xc
push edi
mov ecx, dword [eax + edi + 0x2d8]
mov eax, dword [edi + 0x14f78]
mov dword [ecx + 0x20], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x3e50]
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x24], 1
call fcn.004dda80
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x118]
call fcn.00515690
mov esi, eax
test esi, esi
jne 0x4d3a40
mov ecx, dword [ebp - 0x3e3c]
call fcn.0044c8d0
cmp eax, 3
jne 0x4d3dd4
cmp byte [ebp - 0xfaf], al
jne 0x4d3dd4
mov ecx, dword [ebp - 0x3e50]
lea eax, [ebp - 0x3fcc]
push eax
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
call fcn.004b8ae0
test eax, eax
mov eax, dword [ebp - 0x3e3c]
je 0x4d3dda
cmp dword [ebp - 0x3fcc], eax
jne 0x4d3dda
imul eax, dword [edi + 0x188], 0x980
push 0xc
push edi
mov ecx, dword [eax + edi + 0x2d8]
mov eax, dword [edi + 0x14f78]
mov dword [ecx + 0x20], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x3e50]
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x24], 1
call fcn.004dda80
mov eax, dword [ebp - 0x3e3c]
mov ecx, eax
call fcn.0044c8d0
cmp eax, 3
jne case.default.0x4d28b4
cmp byte [ebp - 0xfaf], 0
jne case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e50]
lea eax, [ebp - 0x3fcc]
push eax
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
call fcn.004b8ae0
test eax, eax
je case.default.0x4d28b4
mov eax, dword [ebp - 0x3e3c]
cmp dword [ebp - 0x3fcc], eax
jne case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e50]
push 1
push eax
push esi
push edi
call fcn.004d8a40
jmp case.default.0x4d28b4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
cmp dword [ebp - 0xfaf], 0xffffffff
jne case.default.0x4d28b4
mov eax, dword [ebp - 0xfa9]
cmp eax, 0xfffffffe
jne 0x4d3f8a
mov eax, dword [edi + 0x14f7c]
test eax, eax
je case.default.0x4d28b4
lea ecx, [ebp - 0x41c8]
push ecx
push eax
mov ecx, esi
call fcn.004b87e0
mov dword [ebp - 0x3e38], eax
test eax, eax
je case.default.0x4d28b4
push dword [ebp - 0x3e3c]
mov ecx, edi
call fcn.00487eb0
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 0x4d3f14
jl 0x4d3efb
test ecx, ecx
jne 0x4d3f14
xorps xmm0, xmm0
movlpd qword [ebp - 0x3e84], xmm0
mov edx, dword [ebp - 0x3e80]
mov ecx, dword [ebp - 0x3e84]
jmp 0x4d3f3f
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 0x4d3f39
jg 0x4d3f35
cmp ecx, esi
jbe 0x4d3f39
mov ecx, esi
mov edx, eax
mov esi, dword [ebp - 0x3e50]
imul eax, dword [edi + 0x188], 0x980
push 9
push edi
mov eax, dword [eax + edi + 0x2d8]
sub dword [eax + 0x18], ecx
sbb dword [eax + 0x1c], edx
mov eax, dword [edi + 0x14f74]
mov dword [eax + 0x18], ecx
mov ecx, esi
mov dword [eax + 0x1c], edx
call fcn.004dda80
push 8
push dword [ebp - 0x3e38]
mov ecx, esi
call fcn.004dda80
push 1
mov ecx, esi
push edi
call fcn.004dda80
jmp case.default.0x4d28b4
cmp eax, 0xfffffffd
jne case.default.0x4d28b4
mov ecx, dword [ebp - 0xfa1]
mov edx, dword [ebp - 0xfa5]
test ecx, ecx
jl 0x4d3fe8
jg 0x4d3fa9
test edx, edx
jb 0x4d3ffe
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 0x4d3fce
jg 0x4d3fca
cmp edx, esi
jbe 0x4d3fce
mov edx, esi
mov ecx, eax
mov eax, dword [edi + 0x14f78]
push ecx
push edx
push dword [eax + 0x1c]
push dword [eax + 0x18]
call fcn.0044db10
add esp, 0x10
mov ecx, eax
jmp 0x4d4049
test edx, edx
jne 0x4d3ffe
cmp ecx, 0x80000000
jne 0x4d3ffe
or edx, 0xffffffff
mov ecx, accept
jmp 0x4d4005
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 0x4d401f
jg 0x4d401b
cmp edx, esi
jbe 0x4d401f
mov edx, esi
mov ecx, eax
imul eax, dword [edi + 0x188], 0x980
push ecx
push edx
mov eax, dword [eax + edi + 0x2d8]
push dword [eax + 0x1c]
push dword [eax + 0x18]
call fcn.0044db10
add esp, 0x10
mov ecx, eax
neg ecx
adc edx, 0
neg edx
imul eax, dword [edi + 0x188], 0x980
push 0xc
push edi
mov eax, dword [eax + edi + 0x2d8]
sub dword [eax + 0x18], ecx
sbb dword [eax + 0x1c], edx
mov eax, dword [edi + 0x14f78]
add dword [eax + 0x18], ecx
mov ecx, dword [ebp - 0x3e50]
adc dword [eax + 0x1c], edx
call fcn.004dda80
mov ecx, dword [ebp - 0x3e50]
push 1
push edi
call fcn.004dda80
jmp case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d40a3
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f6c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f6b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f6a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f69], al
mov byte [ebp - 0x3f68], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d412d
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d4140
lea eax, [ebp - 0x3f6c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4d41d3
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x21c8], 0x17
push str.You_are_stunned__and_cannot_open_a_chest_
push eax
call fcn.0046d610
mov ecx, 0x18
mov eax, dword [ebp - 0x3e50]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x21c7]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e4c]
push edx
push 0
movsw word es:[edi], word [esi]
lea edx, [ebp - 0x21c8]
push edx
push 0x65
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x2164], 0
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
mov edi, dword [ebp - 0x3e3c]
mov ecx, edi
call fcn.0044c8d0
cmp eax, 1
jne 0x4d42d7
mov ecx, dword [edi + 0x118]
push 0x3e8
push 0
push 0
call fcn.005155e0
mov esi, eax
test esi, esi
je case.default.0x4d28b4
mov ecx, esi
call fcn.0044c8d0
cmp eax, 8
jne 0x4d42bd
cmp dword [ebp - 0xfaf], esi
jne 0x4d42bd
cmp byte [esi + 0x188], 0
jne 0x4d427f
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.0052acd0
push esi
mov ecx, edi
call fcn.004ec940
jmp 0x4d42b2
lea eax, [ebp - 0x206b]
push str.The_chest_is_open_and_empty.
push eax
call fcn.0046d640
mov ecx, dword [edi + 0x11c]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov ecx, dword [edi + 0x118]
call fcn.00515920
mov ecx, dword [edi + 0x118]
call fcn.00515690
mov esi, eax
test esi, esi
jne 0x4d4207
jmp case.default.0x4d28b4
lea eax, [ebp - 0x206b]
push str.You_cant_open_it.
push eax
call fcn.0046d640
mov ecx, dword [edi + 0x11c]
jmp 0x4d178e
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d4309
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f74], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f73], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f72], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f71], al
mov byte [ebp - 0x3f70], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d4393
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d43a6
lea eax, [ebp - 0x3f74]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4d4439
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x23d0], 0x17
push str.You_are_stunned__and_cannot_talk_to_the_tree_
push eax
call fcn.0046d610
mov ecx, 0x18
mov eax, dword [ebp - 0x3e50]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x23cf]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e4c]
push edx
push 0
movsw word es:[edi], word [esi]
lea edx, [ebp - 0x23d0]
push edx
push 0x65
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x236c], 0
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
lea eax, [ebp - 0xfb0]
mov ecx, esi
push eax
push dword [ebp - 0x3e3c]
push edi
call fcn.004d9100
jmp case.default.0x4d28b4
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d4469
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f7c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f7b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f7a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f79], al
mov byte [ebp - 0x3f78], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d44f3
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d4506
lea eax, [ebp - 0x3f7c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x3e85]
mov eax, dword [ecx]
push edx
push 1
mov eax, dword [eax + 4]
call eax
jmp case.0x4cd755.2
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d453d
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f84], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f83], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f82], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f81], al
mov byte [ebp - 0x3f80], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d45c7
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d45da
lea eax, [ebp - 0x3f84]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
lea eax, [ebp - 0xfaf]
push 0x10
push eax
mov dword [ebp - 0x3e5c], edi
call fcn.0044cf90
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044ce30
lea eax, [ebp - 0xfaf]
push 1
push eax
call fcn.0044cc90
add esp, 0x14
test edi, edi
je case.default.0x4d28b4
cmp byte [ebp - 0xfaf], 0
je case.default.0x4d28b4
imul esi, dword [edi + 0x188], 0x980
cmp byte [esi + edi + 0x344], 0xff
je 0x4d4747
lea eax, [edi + 0x334]
add eax, esi
cmp byte [eax], 0
je 0x4d4695
mov ecx, str.Pet_A
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4d4680
test dl, dl
je 0x4d467c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4d4680
add eax, 2
add ecx, 2
test dl, dl
jne 0x4d4660
xor eax, eax
jmp 0x4d4685
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4d4747
lea eax, [edi + 0x334]
add eax, esi
push 0x10
push eax
lea eax, [ebp - 0xfaf]
push 0x10
push eax
call fcn.0044cdd0
mov byte [ebp - 0x20cc], 0x3a
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x20cb], eax
lea eax, [ebp - 0x20bf]
push 0x10
push eax
lea eax, [edi + 0x334]
add eax, esi
push 0x10
push eax
call fcn.0044cdd0
mov al, byte [esi + edi + 0x345]
add esp, 0x20
mov byte [ebp - 0x20c6], al
mov al, byte [esi + edi + 0x344]
mov byte [ebp - 0x20c7], al
mov al, byte [esi + edi + 0x346]
mov byte [ebp - 0x20c5], al
movss xmm1, dword [esi + edi + 0x354]
divss xmm1, dword [0x5d0bb8]
movzx eax, byte [esi + edi + 0x347]
mov ecx, dword [ebp - 0x3e3c]
push 0
push 5
mov byte [ebp - 0x20c4], 0
movd xmm0, eax
lea eax, [ebp - 0x20cc]
cvtdq2ps xmm0, xmm0
push eax
push 0x1d
addss xmm1, xmm0
movss dword [ebp - 0x20c3], xmm1
jmp 0x4d3363
cmp byte [esi + edi + 0x378], 0xff
je case.default.0x4d28b4
lea eax, [edi + 0x368]
add eax, esi
cmp byte [eax], 0
je 0x4d479c
mov ecx, str.Pet_B
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4d4787
test dl, dl
je 0x4d4783
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4d4787
add eax, 2
add ecx, 2
test dl, dl
jne 0x4d4767
xor eax, eax
jmp 0x4d478c
sbb eax, eax
or eax, 1
test eax, eax
jne case.default.0x4d28b4
lea eax, [edi + 0x368]
add eax, esi
push 0x10
push eax
lea eax, [ebp - 0xfaf]
push 0x10
push eax
call fcn.0044cdd0
mov byte [ebp - 0x210c], 0x3a
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x210b], eax
lea eax, [ebp - 0x20ff]
push 0x10
push eax
lea eax, [edi + 0x368]
add eax, esi
push 0x10
push eax
call fcn.0044cdd0
mov al, byte [esi + edi + 0x379]
add esp, 0x20
mov byte [ebp - 0x2106], al
mov al, byte [esi + edi + 0x378]
mov byte [ebp - 0x2107], al
mov al, byte [esi + edi + 0x37a]
mov byte [ebp - 0x2105], al
movss xmm1, dword [esi + edi + 0x388]
divss xmm1, dword [0x5d0bb8]
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 0x4d3363
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d4864
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f8c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f8b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f8a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f89], al
mov byte [ebp - 0x3f88], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d48ee
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d4901
lea eax, [ebp - 0x3f8c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4d4994
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x2298], 0x17
push str.You_are_stunned__and_cannot_feed_your_pet_
push eax
call fcn.0046d610
mov ecx, 0x18
mov eax, dword [ebp - 0x3e50]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x2297]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e4c]
push edx
push 0
movsw word es:[edi], word [esi]
lea edx, [ebp - 0x2298]
push edx
push 0x65
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x2234], 0
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
push dword [ebp - 0x3e3c]
lea eax, [ebp - 0xfb0]
mov ecx, esi
push edi
push eax
call fcn.004d78f0
jmp case.default.0x4d28b4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je 0x4d49f1
cmp dword [edi + 0x14f34], 1
jne 0x4d49f1
push dword [ebp - 0x3e3c]
lea eax, [ebp - 0xfb0]
mov ecx, esi
push edi
push eax
call fcn.004b8e20
jmp case.default.0x4d28b4
mov ecx, edi
call fcn.0046fdd0
cmp eax, 9
jle case.default.0x4d28b4
mov al, byte [ebp - 0xfaf]
cmp al, 5
je 0x4d4a13
cmp al, 4
jne case.default.0x4d28b4
push dword [ebp - 0x3e3c]
lea eax, [ebp - 0xfb0]
mov ecx, esi
push edi
push eax
call fcn.004b8e20
jmp case.default.0x4d28b4
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d4a43
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f94], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f93], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f92], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f91], al
mov byte [ebp - 0x3f90], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d4acd
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d4ae0
lea eax, [ebp - 0x3f94]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
push 5
mov dword [ebp - 0x3e5c], edi
call fcn.0055644a
mov edx, eax
add esp, 4
mov dword [ebp - 0x3e80], edx
test edx, edx
je 0x4d4b17
mov byte [edx], 0x3f
jmp 0x4d4b19
xor edx, edx
test edi, edi
je case.default.0x4d28b4
cmp byte [edi + 0x14fb8], 0
je case.default.0x4d28b4
mov eax, dword [edi + 0x238]
mov dword [edx + 1], eax
mov ecx, dword [esi + 0x34]
lea esi, [ebp - 0x3e4c]
push esi
push 0
push edx
mov eax, dword [ecx]
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
mov eax, dword [ebp - 0xfaf]
mov dword [edi + 0x238], eax
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d4b98
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3f9c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3f9b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3f9a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3f99], al
mov byte [ebp - 0x3f98], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d4c41
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
lea edx, [ebp - 0x3e4c]
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0xfb0]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
lea eax, [ebp - 0x3f9c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0xfb0]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e3c]
push 1
push dword [ebp - 0xfae]
mov ecx, dword [ecx + 0x118]
call fcn.00515730
mov esi, eax
test esi, esi
je case.default.0x4d28b4
mov ecx, dword [esi + 0x108]
cmp ecx, dword [edi + 0x108]
jne case.default.0x4d28b4
mov ecx, dword [esi + 0x10c]
cmp ecx, dword [edi + 0x10c]
jne case.default.0x4d28b4
mov ecx, esi
call fcn.0044c8d0
cmp eax, 2
jne case.default.0x4d28b4
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2d8]
mov eax, dword [esi + 0x180]
mov dword [ecx + 0x20], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x3e50]
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x24], 0
movzx eax, byte [ebp - 0xfaf]
push eax
push esi
push edi
call fcn.004d8010
jmp case.default.0x4d28b4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
mov al, byte [ebp - 0xfaf]
test al, al
je 0x4d4d7e
cmp al, 3
jne 0x4d4d7e
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4d4d90
push dword [ebp - 0x3e3c]
mov ecx, edi
call fcn.0046de40
jmp case.default.0x4d28b4
mov dword [edi + 0x14f80], 1
mov eax, dword [edi + 0x14f7c]
test eax, eax
je case.default.0x4d28b4
lea ecx, [ebp - 0x41c4]
push ecx
push eax
mov ecx, esi
call fcn.004b87e0
test eax, eax
je case.default.0x4d28b4
cmp dword [eax + 0x14f80], 0
je case.default.0x4d28b4
push dword [ebp - 0x3e3c]
mov ecx, edi
call fcn.0047b6c0
jmp case.default.0x4d28b4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
lea eax, [ebp - 0xfb0]
mov ecx, esi
push eax
push edi
call fcn.004cc8e0
jmp case.default.0x4d28b4
mov eax, dword [str.Simple_avatars_OFF]
mov dword [0x62b104], eax
lea eax, [ebp - 0xfaf]
push eax
call fcn.0044c540
add esp, 4
mov ecx, esi
push dword [ebp - 0x3e54]
call fcn.004b8cc0
mov dword [ebp - 0x3e5c], eax
jmp case.0x4cd755.2
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d4e5d
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3fa4], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3fa3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3fa2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e58], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3fa1], al
mov byte [ebp - 0x3fa0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d4ee7
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e58]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d4efa
lea eax, [ebp - 0x3fa4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
movss xmm0, dword [edi + 0x170]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4d4f8d
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x2300], 0x17
push str.You_are_stunned__and_cant_do_that_
push eax
call fcn.0046d610
mov ecx, 0x18
mov eax, dword [ebp - 0x3e50]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x22ff]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e4c]
push edx
push 0
movsw word es:[edi], word [esi]
lea edx, [ebp - 0x2300]
push edx
push 0x65
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x229c], 0
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
imul eax, dword [edi + 0x188], 0x980
xor esi, esi
mov dword [ebp - 0x3e68], esi
mov eax, dword [eax + edi + 0x2d8]
add eax, 8
mov ecx, eax
mov dword [ebp - 0x3e58], eax
call fcn.0044e020
mov esi, eax
mov dword [ebp - 0x3e6c], esi
test esi, esi
je case.default.0x4d28b4
nop word [eax + eax]
cmp dword [ebp - 0xfaf], esi
jne 0x4d6fbe
mov eax, dword [esi + 0x110]
cmp eax, 0xd
jne 0x4d51dd
cmp byte [edi + 0x14fb9], 0
je 0x4d500c
imul eax, dword [edi + 0x188], 0x980
cmp dword [eax + edi + 0x2f0], 0xa
jl 0x4d6fde
mov eax, dword [esi + 0x11c]
push 0x1a0
mov dword [ebp - 0x3e40], eax
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x41c0], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x4d503f
push edi
mov ecx, eax
call fcn.0048dae0
mov esi, eax
jmp 0x4d5041
xor esi, esi
mov eax, dword [edi + 0x108]
mov ecx, dword [ebp - 0x3e40]
mov dword [esi + 0x108], eax
mov eax, dword [edi + 0x10c]
mov dword [esi + 0x10c], eax
mov eax, dword [ecx + 8]
mov dword [esi + 0x184], eax
mov eax, dword [ecx + 0x10]
mov dword [esi + 0x188], eax
mov eax, dword [ecx + 0x14]
mov dword [esi + 0x18c], eax
mov eax, dword [ecx + 0x18]
mov dword [esi + 0x190], eax
mov eax, dword [ecx + 0x1c]
mov dword [esi + 0x194], eax
mov eax, dword [ecx]
mov byte [ebp - 4], 0
mov dword [esi + 0x180], eax
call dword [sym.imp.WINMM.dll_timeGetTime]
mov ecx, dword [ebp - 0x3e40]
imul ecx, dword [ecx + 0xc], 0x3e8
add eax, ecx
mov dword [esi + 0x198], eax
call fcn.00565b3a
xorps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mov eax, dword [ebp - 0x3e40]
divss xmm0, dword [0x5d3e8c]
addss xmm0, xmm1
comiss xmm0, dword [eax + 4]
jbe 0x4d50e6
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.005155c0
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.0046d610
push 0x64
lea eax, [ebp - 0x206b]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x3e3c]
lea eax, [ebp - 0x206c]
add esp, 0x1c
push 0
push 5
push eax
push 0x65
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.0052acd0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
mov ecx, dword [ebp - 0x3e3c]
mov byte [ebp - 0x3fe8], 0x18
mov eax, dword [esi + 4]
mov dword [ebp - 0x3fe7], eax
xor eax, eax
mov dword [ebp - 0x3fe2], eax
mov byte [ebp - 0x3fde], al
mov byte [ebp - 0x3fe3], 0xc
mov al, byte [esi + 0x108]
mov byte [ebp - 0x3fdd], al
mov al, byte [esi + 0x10c]
push 0
push 5
mov byte [ebp - 0x3fdc], al
lea eax, [ebp - 0x3fe8]
push eax
push 0xd
push dword [esi + 0x10c]
push dword [esi + 0x108]
push 0
call fcn.0052acd0
jmp 0x4d6fbe
cmp eax, 3
jne 0x4d6565
mov esi, dword [esi + 0x11c]
mov eax, dword [esi]
test eax, eax
je 0x4d6180
cmp eax, 1
je 0x4d6180
cmp eax, 2
jne 0x4d560d
lea eax, [ebp - 0x40a4]
push eax
push dword [esi + 4]
mov esi, dword [ebp - 0x3e50]
mov ecx, esi
call fcn.004b8c40
test eax, eax
je 0x4d6549
imul eax, dword [edi + 0x188], 0x980
mov eax, dword [eax + edi + 0x2d8]
mov dword [eax + 0x20], 0
cmp dword [edi + 0x14f70], 0
je 0x4d5326
cmp dword [edi + 0x184], 0
jne 0x4d5326
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
mov byte [ebp - 0x4160], 0x3e
cmp ecx, eax
je 0x4d5276
mov dword [ebp - 0x3e48], ecx
mov edx, dword [edi + 0x180]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3fac], dl
sar eax, 8
mov byte [ebp - 0x3fab], al
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3faa], al
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3fa9], al
mov byte [ebp - 0x3fa8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d52da
mov byte [ecx], dl
mov eax, edx
shr eax, 8
mov byte [ecx + 1], al
mov eax, edx
shr eax, 0x10
mov byte [ecx + 2], al
shr edx, 0x18
mov byte [ecx + 3], dl
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d52ed
lea eax, [ebp - 0x3fac]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
mov byte [ebp - 0x415f], 2
lea edx, [ebp - 0x3e4c]
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x4160]
mov eax, dword [ecx]
push edx
push 0xa
mov eax, dword [eax + 4]
call eax
mov ecx, edi
call fcn.0046fdd0
cmp eax, 9
jle 0x4d5326
mov dword [edi + 0x184], 1
mov esi, dword [ebp - 0x3e3c]
mov ecx, edi
push 6
push esi
call fcn.0046e3e0
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d534c
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3fb4], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3fb3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3fb2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e68], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3fb1], al
mov byte [ebp - 0x3fb0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d53d6
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e68]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d53e9
lea eax, [ebp - 0x3fb4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
cmp dword [edi + 0x14f70], 0
je 0x4d543e
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.0052acd0
push dword [edi + 0x14f70]
mov ecx, dword [esi + 0x118]
call fcn.00515870
mov ecx, dword [esi + 0x110]
push edi
call fcn.0044e210
mov esi, dword [ebp - 0x40a4]
mov dword [edi + 0x110], 4
mov dword [edi + 0x108], 4
mov dword [edi + 0x114], 4
mov dword [edi + 0x10c], 4
mov ecx, dword [esi + 0x110]
push edi
call fcn.0044de70
mov ecx, dword [edi + 0x14f70]
test ecx, ecx
je 0x4d54e1
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.005155c0
mov ecx, dword [ebp - 0x3e3c]
mov byte [ebp - 0x40cd], 0
mov byte [ebp - 0x40dc], 0x2b
mov dword [ebp - 0x40d1], esi
call fcn.0044c8d0
mov ecx, esi
mov byte [ebp - 0x40db], al
call fcn.0044c8d0
mov byte [ebp - 0x40da], al
lea edx, [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e50]
mov dword [ebp - 0x40d9], 5
mov dword [ebp - 0x40d5], 5
mov dword [ebp - 0x40cc], 0
mov ecx, dword [eax + 0x34]
push edx
push 0
lea edx, [ebp - 0x40dc]
mov eax, dword [ecx]
push edx
push 0x14
mov eax, dword [eax + 4]
call eax
mov ecx, esi
mov byte [ebp - 0x2488], 0x17
call fcn.0044c8e0
push eax
lea eax, [ebp - 0x13b0]
push str.You_enter_the_guild_tower_of__s.
push eax
call fcn.0046d610
push 0x64
lea eax, [ebp - 0x2487]
push eax
lea eax, [ebp - 0x13b0]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x3e50]
lea edx, [ebp - 0x3e4c]
add esp, 0x1c
mov ecx, dword [eax + 0x34]
push edx
push 0
lea edx, [ebp - 0x2488]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
push esi
push dword [ebp - 0x3e3c]
mov ecx, edi
call fcn.004866b0
lea ecx, [esi + 0x148]
call fcn.005153e0
push 6
push esi
mov ecx, edi
call fcn.0047e4c0
mov ecx, dword [edi + 0x14f70]
test ecx, ecx
je 0x4d55e5
push esi
call fcn.00493750
push 0
push 1
push esi
mov ecx, edi
call fcn.0048ce00
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6fbe
cmp eax, 3
jne 0x4d6549
mov esi, dword [ebp - 0x3e3c]
xor eax, eax
push eax
push dword [edi + 0x10c]
mov dword [ebp - 0x3e40], eax
push dword [edi + 0x108]
mov ecx, dword [esi + 0x118]
call fcn.005155e0
test eax, eax
je 0x4d5781
mov ecx, eax
call fcn.0044c8d0
cmp eax, 2
jne 0x4d5744
mov eax, dword [ebp - 0x3e48]
mov ecx, dword [ebp - 0x3e4c]
cmp ecx, eax
je 0x4d566a
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3fbc], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3fbb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3fba], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e68], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3fb9], al
mov byte [ebp - 0x3fb8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d56f4
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e68]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d5707
lea eax, [ebp - 0x3fbc]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
lea eax, [ebp - 0x206b]
push str.Theres_already_a_merchant_in_your_square.
push eax
call fcn.0046d640
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x206c]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov dword [ebp - 0x3e40], 1
mov ecx, dword [esi + 0x118]
call fcn.00515690
test eax, eax
jne 0x4d5644
cmp dword [ebp - 0x3e40], eax
je 0x4d5781
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
inc dword [eax + 0x118]
call fcn.0044e090
jmp 0x4d6fbe
push 0x990
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x41bc], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x4d57ad
push 2
mov ecx, eax
call fcn.0049c310
mov dword [ebp - 0x3e68], eax
jmp 0x4d57b7
mov dword [ebp - 0x3e68], 0
mov eax, str.Mangel
mov byte [ebp - 4], 0
mov dword [ebp - 0x3e40], 0
mov dword [ebp - 0x3e38], eax
push eax
lea eax, [ebp - 0x1ab0]
push str._s_Recall
push eax
call fcn.0043d360
push 0x120
call fcn.0055644a
add esp, 0x10
mov dword [ebp - 0x41b4], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x4d5813
lea ecx, [ebp - 0x1ab0]
push ecx
push 0
push 3
mov ecx, eax
call fcn.0050ce20
mov esi, eax
jmp 0x4d5815
xor esi, esi
mov eax, dword [esi + 0x11c]
mov ecx, dword [ebp - 0x3e40]
mov byte [ebp - 4], 0
mov dword [eax], 0
mov dword [eax + 4], ecx
mov dword [esi + 0x108], 0
mov dword [esi + 0x10c], 0x447a0000
call fcn.00565b3a
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.0050da70
mov eax, dword [ebp - 0x3e38]
inc dword [ebp - 0x3e40]
add eax, 0x50
mov dword [ebp - 0x3e38], eax
cmp eax, str.Dirk
jl 0x4d57d0
mov edi, dword [ebp - 0x3e68]
xor esi, esi
call fcn.00565b3a
cdq
mov ecx, 0xc
idiv ecx
push 0x120
mov dword [ebp - 0x3e40], edx
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x41b0], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x4d58da
push str.Unnamed_Totem
push 0
push 2
mov ecx, eax
call fcn.0050ce20
mov edx, eax
mov dword [ebp - 0x3e38], eax
jmp 0x4d58e2
xor edx, edx
mov dword [ebp - 0x3e38], edx
mov eax, dword [edx + 0x11c]
mov ecx, dword [ebp - 0x3e40]
mov byte [ebp - 4], 0
mov dword [eax], ecx
mov ecx, esi
imul ecx, esi
mov dword [eax + 4], esi
mov dword [edx + 0x108], 0
lea eax, [ecx*8]
sub eax, ecx
lea eax, [eax*2 + 1]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edx + 0x10c], xmm0
cmp esi, 0xc
jbe 0x4d5951
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.0052ea80
mov ecx, dword [edi + 0x180]
add esp, 4
push dword [ebp - 0x3e38]
call fcn.0050da70
inc esi
cmp esi, 0x11
jl 0x4d5892
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x41ac], eax
mov byte [ebp - 4], 0x13
test eax, eax
je 0x4d59ae
push str.Charcoal_Brick
push 0
push 0xb
mov ecx, eax
call fcn.0050ce20
mov esi, eax
jmp 0x4d59b0
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.00565b3a
cdq
mov ecx, 0x1e
idiv ecx
push esi
add edx, 0x2bc
mov dword [esi + 0x118], edx
mov esi, dword [ebp - 0x3e68]
mov ecx, dword [esi + 0x180]
call fcn.0050da70
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x41a8], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x4d5a31
push str.Twisted_Paper
push 0
push 0xc
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
mov dword [ebp - 0x3e38], eax
jmp 0x4d5a39
xor ecx, ecx
mov dword [ebp - 0x3e38], ecx
mov eax, dword [ecx + 0x11c]
mov byte [ebp - 4], 0
mov dword [eax], 0
mov dword [eax + 4], 0x3f800000
mov dword [ecx + 0x10c], 0x41200000
call fcn.00565b3a
cdq
mov ecx, 0x1e
idiv ecx
mov eax, dword [ebp - 0x3e38]
add edx, 0x2bc
push eax
mov dword [eax + 0x118], edx
mov ecx, dword [esi + 0x180]
call fcn.0050da70
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x41a4], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x4d5ab2
push str.Ancient_Dragonscale
push 0
push 0
mov ecx, eax
call fcn.0050ce20
jmp 0x4d5ab4
xor eax, eax
mov dword [ebp - 0x3e38], eax
mov byte [ebp - 4], 0
mov dword [eax + 0x10c], 0x47c35000
call fcn.00565b3a
cdq
mov ecx, 0x1e
idiv ecx
mov eax, dword [ebp - 0x3e38]
add edx, 0x28
push eax
mov dword [eax + 0x118], edx
mov ecx, dword [esi + 0x180]
call fcn.0050da70
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x419c], eax
mov byte [ebp - 4], 0x16
test eax, eax
je 0x4d5b1d
push str.Dragon_Orchid
push 0
push 0
mov ecx, eax
call fcn.0050ce20
jmp 0x4d5b1f
xor eax, eax
mov dword [ebp - 0x3e38], eax
mov byte [ebp - 4], 0
mov dword [eax + 0x10c], 0x461c4000
call fcn.00565b3a
cdq
mov ecx, 0x1e
idiv ecx
mov eax, dword [ebp - 0x3e38]
add edx, 0x32
push eax
mov dword [eax + 0x118], edx
mov ecx, dword [esi + 0x180]
call fcn.0050da70
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x4198], eax
mov byte [ebp - 4], 0x17
test eax, eax
je 0x4d5b88
push str.Demon_Amulet
push 0
push 0
mov ecx, eax
call fcn.0050ce20
jmp 0x4d5b8a
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.0050da70
mov dword [ebp - 0x3e38], 0
mov dword [ebp - 0x3e40], 0x1f4
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x4194], eax
mov byte [ebp - 4], 0x18
test eax, eax
je 0x4d5bf1
push str.Unnamed_Staff
push 0
push 0xe
mov ecx, eax
call fcn.0050ce20
mov esi, eax
jmp 0x4d5bf3
xor esi, esi
mov eax, dword [esi + 0x11c]
mov ecx, dword [ebp - 0x3e38]
mov byte [ebp - 4], 0
mov dword [eax], 0
mov dword [eax + 4], ecx
inc ecx
mov eax, ecx
mov dword [esi + 0x108], 0
imul eax, dword [ebp - 0x3e40]
mov dword [ebp - 0x3e38], ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x10c], xmm0
call fcn.00565b3a
mov ecx, 0xa
cdq
idiv ecx
push ecx
inc edx
mov dword [esp], 0
push esi
mov dword [esi + 0x118], edx
call fcn.0052c610
add esp, 8
push esi
mov esi, dword [ebp - 0x3e68]
mov ecx, dword [esi + 0x180]
call fcn.0050da70
mov eax, dword [ebp - 0x3e40]
add eax, 0x1f4
mov dword [ebp - 0x3e40], eax
cmp eax, 0x7d0
jl 0x4d5bc2
mov eax, str.Plain
mov edi, 1
mov dword [ebp - 0x3e38], eax
nop dword [eax + eax]
push eax
lea eax, [ebp - 0x1ab0]
push str._s_Bead
push eax
call fcn.0043d360
push 0x120
call fcn.0055644a
add esp, 0x10
mov dword [ebp - 0x418c], eax
mov byte [ebp - 4], 0x19
test eax, eax
je 0x4d5ce3
lea ecx, [ebp - 0x1ab0]
push ecx
push 0
push 0x10
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x4d5ce5
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.0050da70
mov eax, dword [ebp - 0x3e38]
inc edi
add eax, 0x20
mov dword [ebp - 0x3e38], eax
cmp eax, str.Fiery
jl 0x4d5ca0
mov edi, dword [ebp - 0x3e5c]
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x4190], eax
mov byte [ebp - 4], 0x1a
test eax, eax
je 0x4d5d90
push str.Tin_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x4d5d92
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.0050da70
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x4188], eax
mov byte [ebp - 4], 0x1b
test eax, eax
je 0x4d5e17
push str.Aluminum_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x4d5e19
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.0050da70
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x4184], eax
mov byte [ebp - 4], 0x1c
test eax, eax
je 0x4d5e9e
push str.Steel_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x4d5ea0
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.0050da70
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x4180], eax
mov byte [ebp - 4], 0x1d
test eax, eax
je 0x4d5f25
push str.Carbon_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x4d5f27
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.0050da70
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x417c], eax
mov byte [ebp - 4], 0x1e
test eax, eax
je 0x4d5fac
push str.Zinc_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x4d5fae
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.0050da70
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x4178], eax
mov byte [ebp - 4], 0x1f
test eax, eax
je 0x4d6033
push str.Adamantium_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x4d6035
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.0050da70
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x4170], eax
mov byte [ebp - 4], 0x20
test eax, eax
je 0x4d60ba
push str.Mithril_Ingot
push 0
push 4
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x4d60bc
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.0050da70
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.005155c0
push esi
push dword [edi + 0x10c]
mov ecx, edi
push dword [edi + 0x108]
call fcn.0047d650
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6fbe
cmp dword [edi + 0x14f70], 0
je 0x4d626d
cmp dword [edi + 0x184], 0
jne 0x4d626d
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
mov byte [ebp - 0x416c], 0x3e
cmp ecx, eax
je 0x4d61b7
mov dword [ebp - 0x3e48], ecx
mov edx, dword [edi + 0x180]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3fc4], dl
sar eax, 8
mov byte [ebp - 0x3fc3], al
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3fc2], al
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3fc1], al
mov byte [ebp - 0x3fc0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d621b
mov byte [ecx], dl
mov eax, edx
shr eax, 8
mov byte [ecx + 1], al
mov eax, edx
shr eax, 0x10
mov byte [ecx + 2], al
shr edx, 0x18
mov byte [ecx + 3], dl
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d622e
lea eax, [ebp - 0x3fc4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
mov eax, dword [ebp - 0x3e50]
lea edx, [ebp - 0x3e4c]
mov byte [ebp - 0x416b], 2
push edx
push 0
mov ecx, dword [eax + 0x34]
lea edx, [ebp - 0x416c]
push edx
push 0xa
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov ecx, edi
call fcn.0046fdd0
cmp eax, 9
jle 0x4d626d
mov dword [edi + 0x184], 1
push dword [ebp - 0x3e54]
mov ecx, dword [ebp - 0x3e50]
push 0
call fcn.004e2bd0
cmp dword [edi + 0x14f70], 0
je 0x4d62df
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.0052acd0
mov eax, dword [ebp - 0x3e3c]
push dword [edi + 0x14f70]
mov ecx, dword [eax + 0x118]
call fcn.00515870
push 0
push 0
mov ecx, edi
call fcn.004866b0
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d6300
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3e9c], dl
shr eax, 8
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3e9b], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3e9a], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e68], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3e99], al
mov byte [ebp - 0x3e98], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d638a
mov eax, dword [ebp - 0x3e38]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e68]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d639d
lea eax, [ebp - 0x3e9c]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
mov ecx, dword [ebp - 0x3e3c]
mov byte [ebp - 0x40f0], 0x2b
call fcn.0044c8d0
mov byte [ebp - 0x40ef], al
lea edx, [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e50]
mov byte [ebp - 0x40ee], 0
mov dword [ebp - 0x40ed], 0x100
mov dword [ebp - 0x40e9], 0x100
mov dword [ebp - 0x40e0], 0
mov byte [ebp - 0x40e1], 0
mov ecx, dword [eax + 0x34]
push edx
push 0
lea edx, [ebp - 0x40f0]
mov eax, dword [ecx]
push edx
push 0x14
mov eax, dword [eax + 4]
call eax
mov eax, dword [esi]
test eax, eax
jne 0x4d64c3
mov eax, dword [esi + 4]
lea eax, [eax + eax*4]
shl eax, 4
mov eax, dword [eax + 0x60e2b0]
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 + 0x60e2b4]
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 + 0x60e2b0]
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 + 0x60e2b4]
mov dword [ecx + edi + 0x314], eax
mov ecx, dword [edi + 0x14f70]
test ecx, ecx
je 0x4d6514
mov eax, dword [esi + 4]
lea eax, [eax + eax*4]
shl eax, 4
mov eax, dword [eax + 0x60e2b0]
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 + 0x60e2b4]
mov dword [ecx + 0x10c], eax
jmp 0x4d6514
cmp eax, 1
jne 0x4d6514
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 0x4d6514
mov dword [eax + 0x108], edx
mov eax, dword [edi + 0x14f70]
mov dword [eax + 0x10c], ecx
mov esi, dword [ebp - 0x3e50]
push 0
mov ecx, dword [esi + 0x48]
call fcn.0044df00
mov ecx, dword [edi + 0x14f70]
test ecx, ecx
je 0x4d653a
push ecx
mov ecx, dword [eax + 0x118]
call fcn.005155c0
push dword [ebp - 0x3e54]
mov ecx, esi
push 1
call fcn.004e2bd0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6fbe
cmp eax, 0x11
je 0x4d6b54
cmp eax, 0x14
je 0x4d6b54
cmp eax, 0x12
je 0x4d69ea
cmp eax, 0x13
je 0x4d69ea
cmp eax, 0x15
jne 0x4d6fbe
mov eax, dword [esi + 0x11c]
mov ecx, dword [ebp - 0x3e4c]
mov dword [ebp - 0x3e38], eax
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d65b4
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ea4], dl
shr eax, 8
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ea3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e70], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3ea2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e80], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ea1], al
mov byte [ebp - 0x3ea0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d663e
mov eax, dword [ebp - 0x3e40]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e70]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e80]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d6651
lea eax, [ebp - 0x3ea4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
mov eax, dword [ebp - 0x3e50]
mov byte [ebp - 0x3fd0], 0
mov ecx, dword [eax + 0x48]
call fcn.0044e020
cmp dword [ebp - 0x3e3c], eax
jne 0x4d7074
mov ecx, 0x60e2b4
mov esi, 1
nop dword [eax]
mov eax, dword [ecx - 4]
sub eax, dword [edi + 0x108]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jg 0x4d66b7
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 0x4d66bd
mov edx, dword [ebp - 0x3fd0]
add ecx, 0x50
cmp ecx, 0x60ea34
jl 0x4d6680
mov esi, dword [ebp - 0x3e3c]
test dl, dl
je 0x4d7074
cmp dword [edi + 0x14f70], 0
jne 0x4d7043
mov edx, dword [ebp - 0x3e38]
mov eax, dword [edx]
mov ecx, dword [edx + 4]
movss xmm0, dword [edx + 0x20]
mov dword [ebp - 0x3e70], eax
lea eax, [eax + eax*2]
mov dword [ebp - 0x3e80], ecx
lea eax, [ecx + eax*2]
movss dword [ebp - 0x3e40], xmm0
imul eax, eax, 0x64
cmp byte [eax + str.Ghost], 0
je 0x4d6b38
push 0x2c8
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x4174], eax
mov byte [ebp - 4], 0x21
test eax, eax
je 0x4d6757
push 0
push 0
push dword [ebp - 0x3e80]
mov ecx, eax
push dword [ebp - 0x3e70]
call fcn.00492f60
mov dword [ebp - 0x3e68], eax
jmp 0x4d6761
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.0043dd00
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.0043d360
mov eax, dword [ebp - 0x3e68]
push 0x1f
add eax, 0x184
push eax
lea eax, [ebp - 0x1eb0]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x3e68]
add esp, 0x2c
mov edx, dword [ebp - 0x3e38]
movss xmm0, dword [ebp - 0x3e40]
mov byte [ecx + 0x1dd], 1
mov eax, dword [edi + 0x108]
mov dword [ecx + 0x108], eax
mov eax, dword [edi + 0x10c]
mov dword [ecx + 0x10c], eax
mov eax, dword [edi + 0x108]
mov dword [ecx + 0x110], eax
mov eax, dword [edi + 0x10c]
mov dword [ecx + 0x114], eax
mov eax, dword [edi + 0x108]
mov dword [ecx + 0x228], eax
mov eax, dword [edi + 0x10c]
mov dword [ecx + 0x22c], eax
mov eax, dword [edx + 0x10]
mov dword [ecx + 0x1b4], eax
mov eax, dword [edx + 0x14]
mov dword [ecx + 0x1bc], eax
mov eax, dword [edx + 8]
mov dword [ecx + 0x1ac], eax
mov eax, dword [edx + 8]
mov dword [ecx + 0x1b0], eax
mov eax, dword [edx + 0x18]
mov dword [ecx + 0x1b8], eax
mov al, byte [edx + 0x27]
mov byte [ecx + 0x1a7], al
mov al, byte [edx + 0x26]
mov byte [ecx + 0x1a6], al
mov al, byte [edx + 0x25]
mov byte [ecx + 0x1a5], al
mov al, byte [edx + 0x24]
mov byte [ecx + 0x1a4], al
mov eax, dword [edx + 0x28]
mov dword [ecx + 0x1a8], eax
movss dword [ecx + 0x1f4], xmm0
push ecx
mov ecx, dword [esi + 0x118]
call fcn.005155c0
mov ecx, dword [ebp - 0x3e68]
mov dword [ecx + 0x120], 1
call dword [sym.imp.WINMM.dll_timeGetTime]
mov ecx, dword [ebp - 0x3e68]
sub eax, 0x2710
mov dword [ecx + 0x118], eax
mov byte [ebp - 0x405c], 0x18
mov dword [ebp - 0x405b], ecx
call fcn.0044c8d0
mov ecx, dword [ebp - 0x3e68]
mov byte [ebp - 0x4057], al
movzx eax, word [ecx + 0x220]
mov word [ebp - 0x4056], ax
movzx eax, word [ecx + 0x224]
mov word [ebp - 0x4054], ax
mov al, byte [ecx + 0x108]
mov byte [ebp - 0x4051], al
mov al, byte [ecx + 0x10c]
push 0
push 5
mov byte [ebp - 0x4050], al
lea eax, [ebp - 0x405c]
push eax
push 0xd
push dword [ecx + 0x10c]
push dword [ecx + 0x108]
mov ecx, esi
push 0
call fcn.0052acd0
mov ecx, dword [ebp - 0x3e68]
push esi
call fcn.00493750
mov ecx, dword [ebp - 0x3e68]
mov byte [ebp - 0x4018], 0x38
mov dword [ebp - 0x4017], 0xffffffff
mov dword [ebp - 0x4013], 0xffffffff
mov al, byte [ecx + 0x108]
mov byte [ebp - 0x400f], al
mov al, byte [ecx + 0x10c]
push 0
push 5
mov byte [ebp - 0x400e], al
lea eax, [ebp - 0x4018]
push eax
push 0x11
mov word [ebp - 0x400d], 0xff
mov dword [ebp - 0x400b], 0x100ff
push dword [ecx + 0x10c]
push dword [ecx + 0x108]
mov ecx, esi
push 0
call fcn.0052acd0
mov eax, dword [ebp - 0x3e68]
mov ecx, dword [ebp - 0x3e58]
mov dword [edi + 0x14f70], eax
mov dword [eax + 0x21c], edi
mov eax, dword [ebp - 0x3e6c]
mov dword [edi + 0x184], 1
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6fbe
mov eax, dword [esi + 0x11c]
mov ecx, dword [ebp - 0x3e4c]
mov dword [ebp - 0x3e38], eax
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d6a0c
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3eac], dl
shr eax, 8
mov dword [ebp - 0x3e80], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3eab], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e70], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3eaa], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e40], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ea9], al
mov byte [ebp - 0x3ea8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d6a96
mov eax, dword [ebp - 0x3e80]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e70]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e40]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d6aa9
lea eax, [ebp - 0x3eac]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
mov esi, dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.0044c8d0
test eax, eax
jne 0x4d6b25
xor esi, esi
mov ecx, 0x60e2b4
mov eax, dword [ecx - 4]
sub eax, dword [edi + 0x108]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jg 0x4d6aec
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, 0x60ea34
jl 0x4d6ac1
test esi, esi
jne 0x4d6b03
push dword [ebp - 0x3e3c]
jmp 0x4d6b26
push str.Please_leave_town_first._:_
lea eax, [ebp - 0x206b]
push eax
call fcn.0046d640
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x11c]
jmp 0x4d6fa2
push esi
push dword [ebp - 0x3e38]
mov ecx, dword [ebp - 0x3e50]
push edi
call fcn.004c9480
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6fbe
mov eax, dword [esi + 0x11c]
mov ecx, dword [ebp - 0x3e4c]
mov dword [ebp - 0x3e40], eax
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d6b76
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3eb4], dl
shr eax, 8
mov dword [ebp - 0x3e80], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3eb3], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e70], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3eb2], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3eb1], al
mov byte [ebp - 0x3eb0], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d6c00
mov eax, dword [ebp - 0x3e80]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e70]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e38]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d6c13
lea eax, [ebp - 0x3eb4]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
mov esi, dword [ebp - 0x3e3c]
mov ecx, esi
call fcn.0044c8d0
test eax, eax
jne 0x4d6f8b
cmp dword [esi + 0x124], eax
jne 0x4d6f8b
xor esi, esi
mov ecx, 0x60e2b4
nop dword [eax + eax]
mov eax, dword [ecx - 4]
sub eax, dword [edi + 0x108]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jg 0x4d6c6b
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, 0x60ea34
jl 0x4d6c40
test esi, esi
jne 0x4d6f81
mov eax, dword [ebp - 0x3e6c]
cmp dword [eax + 0x110], 0x11
jne 0x4d6c94
push 1
jmp 0x4d6f50
mov esi, dword [ebp - 0x3e40]
cmp dword [esi + 0x10], 0xffffffff
jle 0x4d6ccf
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004c9ff0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6fbe
mov eax, dword [esi + 0xc]
cmp eax, 4
jge 0x4d6d06
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004c9ff0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6fbe
jle 0x4d6d3c
cmp eax, 9
jge 0x4d6d3c
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004c9ff0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6fbe
cmp eax, 0xb
jne 0x4d6d70
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004c9ff0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6fbe
cmp eax, 0x10
jne 0x4d6da4
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004c9ff0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6fbe
cmp eax, 0x11
jle 0x4d6dd8
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004c9ff0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6fbe
mov ecx, edi
call fcn.0047d1c0
mov ecx, eax
cmp ecx, 1
jge 0x4d6def
mov ecx, edi
call fcn.0047d420
mov ecx, eax
movss xmm1, dword [esi + 8]
divss xmm1, dword [0x5d3e50]
imul eax, dword [esi + 0xc], 0x258
addss xmm1, dword [0x5d0048]
mov edx, dword [eax + 0x61c8b0]
mov eax, dword [esi + 4]
shr eax, 0x1f
cmp dword [esi], 0
jl 0x4d6e21
cmp eax, 1
jne 0x4d6e30
cvtps2pd xmm0, xmm1
addsd xmm0, qword [0x5d3de0]
cvtpd2ps xmm1, xmm0
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
cmp eax, ecx
jge 0x4d6e72
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004c9ff0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6fbe
sub eax, ecx
cmp eax, 9
jle 0x4d6ea8
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004c9ff0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6fbe
xor eax, eax
mov dword [ebp - 0x3e68], eax
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x110]
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4d6f4e
nop dword [eax + eax]
mov ecx, esi
call fcn.0044c8d0
test eax, eax
jne 0x4d6efd
mov eax, dword [esi + 0x108]
cmp eax, dword [edi + 0x108]
jne 0x4d6efd
mov eax, dword [esi + 0x10c]
cmp eax, dword [edi + 0x10c]
jne 0x4d6efd
inc dword [ebp - 0x3e68]
mov eax, dword [ebp - 0x3e3c]
mov ecx, dword [eax + 0x110]
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4d6ed0
cmp dword [ebp - 0x3e68], 1
jle 0x4d6f4e
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push dword [ebp - 0x3e40]
push edi
call fcn.004c9ff0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6fbe
push 0
push dword [ebp - 0x3e3c]
mov ecx, dword [ebp - 0x3e50]
push dword [ebp - 0x3e40]
push edi
call fcn.004cb3a0
mov eax, dword [ebp - 0x3e6c]
mov ecx, dword [ebp - 0x3e58]
mov dword [ebp - 0x3e68], eax
call fcn.0044e090
jmp 0x4d6fbe
push str.The_EarthKey_doesnt_work_in_a_town.
jmp 0x4d6b08
lea eax, [ebp - 0x206b]
push str.The_EarthKey_doesnt_work_here.
push eax
call fcn.0046d640
mov ecx, dword [esi + 0x11c]
mov eax, dword [ecx]
lea edx, [ebp - 0x3e4c]
add esp, 8
mov eax, dword [eax + 4]
push edx
push 0
lea edx, [ebp - 0x206c]
push edx
push 0x65
call eax
mov ecx, dword [ebp - 0x3e58]
call fcn.0044e0d0
mov esi, eax
mov dword [ebp - 0x3e6c], eax
test esi, esi
jne 0x4d4fd0
jmp 0x4d70b8
lea eax, [ebp - 0x13b0]
mov byte [ebp - 0x2368], 0x17
push str.Only_smiths_can_set_bombs_in_PVP_zones.
push eax
call fcn.0046d610
mov ecx, 0x18
mov eax, dword [ebp - 0x3e50]
lea esi, [ebp - 0x13b0]
add esp, 8
lea edi, [ebp - 0x2367]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x3e4c]
push edx
push 0
movsw word es:[edi], word [esi]
lea edx, [ebp - 0x2368]
push edx
push 0x65
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x2304], 0
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov edi, dword [ebp - 0x3e5c]
jmp 0x4d70b8
push 0x64
lea eax, [ebp - 0x2557]
mov byte [ebp - 0x2558], 0x17
push eax
push 0xc8
push str.Stable_your_existing_pet_first_with_the__stablepet_command.
call fcn.0044cdd0
add esp, 0x10
lea edx, [ebp - 0x3e4c]
push edx
lea edx, [ebp - 0x2558]
jmp 0x4d70a3
push 0x64
lea eax, [ebp - 0x24ef]
mov byte [ebp - 0x24f0], 0x17
push eax
push 0xc8
push str.You_must_be_in_town_to_let_out_a_pet.
call fcn.0044cdd0
add esp, 0x10
lea edx, [ebp - 0x3e4c]
push edx
lea edx, [ebp - 0x24f0]
mov eax, dword [ebp - 0x3e50]
push 0
push edx
push 0x65
mov ecx, dword [eax + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x3e68]
test esi, esi
je case.default.0x4d28b4
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x4d70e9
mov ecx, dword [ebp - 0x3e50]
dec eax
push edi
mov dword [esi + 0x118], eax
call fcn.004e5aa0
jmp case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e58]
push esi
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov ecx, dword [ebp - 0x3e50]
push edi
call fcn.004e5aa0
jmp case.default.0x4d28b4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je case.default.0x4d28b4
mov eax, dword [edi + 0x14f34]
cmp eax, 1
je 0x4d7179
cmp eax, 2
je 0x4d7179
cmp eax, 3
je 0x4d7179
imul eax, dword [edi + 0x188], 0x980
test byte [eax + edi + 0x318], 1
jne 0x4d7179
mov edx, dword [edi + 0x23c]
lea eax, [edi + 0x23c]
mov ecx, dword [ebp - 0xfaf]
test edx, ecx
je 0x4d7197
not ecx
and ecx, edx
jmp 0x4d7197
mov edx, dword [edi + 0x23c]
lea eax, [edi + 0x23c]
mov ecx, dword [ebp - 0xfaf]
test edx, ecx
je 0x4d7195
not ecx
and ecx, edx
jmp 0x4d7197
or ecx, edx
mov dword [eax], ecx
mov ecx, dword [ebp - 0x3e4c]
mov byte [ebp - 0x408c], 0x50
mov eax, dword [eax]
mov dword [ebp - 0x408b], eax
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d71be
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ebc], dl
shr eax, 8
mov dword [ebp - 0x3e80], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ebb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e70], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3eba], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3eb9], al
mov byte [ebp - 0x3eb8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d7267
mov eax, dword [ebp - 0x3e80]
mov byte [ecx], dl
lea edx, [ebp - 0x3e4c]
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e70]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e38]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
mov ecx, dword [esi + 0x34]
push edx
push 0
lea edx, [ebp - 0x408c]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
lea eax, [ebp - 0x3ebc]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
mov ecx, dword [esi + 0x34]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x408c]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.default.0x4d28b4
lea eax, [ebp - 0x3e3c]
mov byte [ebp - 0x3df4], 0x59
push eax
push dword [ebp - 0x3e54]
mov ecx, esi
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x40b8], 0
mov dword [ebp - 0x3e5c], edi
mov dword [ebp - 0x40b4], 0
mov dword [ebp - 0x40b0], 0
mov ecx, dword [ebp - 0x3e54]
mov eax, ecx
sar eax, 8
mov byte [ebp - 0x3ec3], al
mov eax, ecx
sar eax, 0x10
mov byte [ebp - 0x3ec4], cl
sar ecx, 0x18
mov byte [ebp - 0x3ec2], al
lea eax, [ebp - 0x3ec4]
mov byte [ebp - 0x3ec1], cl
lea ecx, [ebp - 0x40b8]
push eax
mov byte [ebp - 4], 0x22
mov byte [ebp - 0x3ec0], 0
call fcn.0048da20
lea eax, [ebp - 0x3df3]
xor esi, esi
mov dword [ebp - 0x3e38], eax
imul ecx, dword [edi + 0x188], 0x980
push 0
push eax
add ecx, 0x43c
add ecx, esi
add ecx, edi
call fcn.00524a00
mov eax, dword [ebp - 0x3e38]
add esi, 0x138
add eax, 0x200
mov dword [ebp - 0x3e38], eax
cmp esi, 0x750
jl 0x4d7332
mov eax, dword [ebp - 0x3e50]
lea edx, [ebp - 0x40b8]
push edx
push 0
lea edx, [ebp - 0x3df4]
mov ecx, dword [eax + 0x34]
push edx
push 0xc01
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
lea ecx, [ebp - 0x40b8]
mov byte [ebp - 4], 0
call fcn.0046dc40
jmp case.default.0x4d28b4
mov ecx, dword [ebp - 0x3e4c]
mov eax, dword [ebp - 0x3e48]
cmp ecx, eax
je 0x4d73bc
mov dword [ebp - 0x3e48], ecx
mov edx, dword [ebp - 0x3e54]
cmove ecx, eax
mov eax, edx
mov byte [ebp - 0x3ecc], dl
shr eax, 8
mov dword [ebp - 0x3e80], eax
mov eax, edx
sar eax, 8
mov byte [ebp - 0x3ecb], al
mov eax, edx
shr eax, 0x10
mov dword [ebp - 0x3e70], eax
mov eax, edx
sar eax, 0x10
mov byte [ebp - 0x3eca], al
mov eax, edx
shr eax, 0x18
mov dword [ebp - 0x3e38], eax
mov eax, edx
sar eax, 0x18
mov byte [ebp - 0x3ec9], al
mov byte [ebp - 0x3ec8], 0
cmp ecx, dword [ebp - 0x3e44]
je 0x4d7446
mov eax, dword [ebp - 0x3e80]
mov byte [ecx], dl
mov byte [ecx + 1], al
mov eax, dword [ebp - 0x3e70]
mov byte [ecx + 2], al
mov eax, dword [ebp - 0x3e38]
mov byte [ecx + 3], al
mov byte [ecx + 4], 0
add dword [ebp - 0x3e48], 5
jmp 0x4d7459
lea eax, [ebp - 0x3ecc]
push eax
push ecx
lea ecx, [ebp - 0x3e4c]
call fcn.0043ec20
mov edx, esi
mov byte [ebp - 0x4094], 0x5b
mov eax, edi
mov ecx, dword [edx + 0xb0]
test ecx, ecx
cmovg eax, ecx
mov dword [ebp - 0x4093], eax
mov ecx, dword [edx + 0x34]
lea edx, [ebp - 0x3e4c]
push edx
push 0
lea edx, [ebp - 0x4094]
mov eax, dword [ecx]
push edx
push 5
mov eax, dword [eax + 4]
call eax
jmp case.0x4cd755.2
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je 0x4d7791
lea eax, [ebp - 0x14b0]
push eax
call fcn.0058dd8e
lea eax, [ebp - 0x14b0]
push eax
lea eax, [ebp - 0x15b0]
push 0x5d00e0
push eax
call fcn.0043d360
lea eax, [ebp - 0x15b0]
push eax
push str.MacroDetection.csv
call fcn.0049eb10
lea eax, [ebp - 0x14b0]
push eax
call fcn.0058dfce
lea eax, [ebp - 0x14b0]
push eax
lea eax, [ebp - 0x15b0]
push str.__s_
push eax
call fcn.0043d360
lea eax, [ebp - 0x15b0]
push eax
push str.MacroDetection.csv
call fcn.0049eb10
lea eax, [ebp - 0x14b0]
push eax
call fcn.0058dfce
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.0043d360
add esp, 0x5c
lea eax, [ebp - 0x15b0]
push eax
push str.MacroDetection.csv
call fcn.0049eb10
add esp, 8
cmp byte [ebp - 0xfa3], 0
je case.default.0x4d28b4
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.0046d640
add esp, 0xc
jmp 0x4d772c
mov edi, dword [ebp - 0x3e5c]
test edi, edi
je case.default.0x4d28b4
mov dword [edi + 0x258], 0
jmp case.default.0x4d28b4
lea eax, [ebp - 0x3e3c]
mov ecx, esi
push eax
push dword [ebp - 0x3e54]
call fcn.004b83e0
mov edi, eax
mov dword [ebp - 0x3e5c], edi
test edi, edi
je 0x4d7791
cmp dword [edi + 0x14f34], 1
je case.default.0x4d28b4
lea eax, [ebp - 0x1430]
push eax
call fcn.0058dd8e
lea eax, [ebp - 0x1430]
push eax
lea eax, [ebp - 0x16b0]
push 0x5d00e0
push eax
call fcn.0043d360
lea eax, [ebp - 0x16b0]
push eax
push str.afkMacroDetection.csv
call fcn.0049eb10
lea eax, [ebp - 0x1430]
push eax
call fcn.0058dfce
lea eax, [ebp - 0x1430]
push eax
lea eax, [ebp - 0x16b0]
push str.__s_
push eax
call fcn.0043d360
lea eax, [ebp - 0x16b0]
push eax
push str.afkMacroDetection.csv
call fcn.0049eb10
lea eax, [ebp - 0x1430]
push eax
call fcn.0058dfce
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.0043d360
add esp, 0x54
lea eax, [ebp - 0x16b0]
push eax
push str.afkMacroDetection.csv
call fcn.0049eb10
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.0046d640
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.0052acd0
mov ecx, dword [ebp - 0x3e50]
push esi
push edi
call fcn.004cd370
mov edi, 0x1e
mov eax, dword [ebp - 0x3e50]
lea edx, [ebp - 0x3e8c]
push 0
push 0
push edx
mov ecx, dword [eax + 0x34]
push 0
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
mov eax, dword [ebp - 0x3e8c]
test eax, eax
jg 0x4cd700
lea ecx, [ebp - 0x3e4c]
call fcn.0046dc40
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.00556488
mov esp, ebp
pop ebp
ret