Function at 0x10006650
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0xffffffffffffffff
push 0x10059892
mov eax, dword fs:[0]
push eax
sub esp, 0x18
push ebx
push ebp
push esi
push edi
mov eax, dword [0x10069018]
xor eax, esp
push eax
lea eax, [esp + 0x2c]
mov dword fs:[0], eax
mov ebp, dword [esp + 0x3c]
lea ecx, [esp + 0x3c]
call dword [0x1005d4d4]
xor esi, esi
lea ecx, [esp + 0x18]
mov dword [esp + 0x34], esi
call dword [0x1005d4d4]
mov ebx, 1
lea eax, [ebp + 0x29c]
mov byte [esp + 0x34], bl
mov edi, dword [0x1005d18c]
mov dword [esp + 0x1c], esi
lea esi, [ebp + 8]
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0x1c]
push ecx
push str.USE_HPMEDIC
lea edx, [esp + 0x20]
push str._s_04d
push edx
call dword [0x1005d488]
add esp, 0x10
lea eax, [esp + 0x3c]
push eax
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x2c], esp
push edx
call dword [0x1005d4ac]
push ecx
mov byte [esp + 0x40], 2
mov ecx, esp
mov dword [esp + 0x34], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x3c]
push eax
call edi
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
add esp, 4
push edx
push str.LIMIT_HP
mov dword [ecx - 0x10], eax
lea eax, [esp + 0x20]
push str._s_04d
push eax
call dword [0x1005d488]
add esp, 0x10
lea ecx, [esp + 0x3c]
push ecx
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call dword [0x1005d4ac]
push ecx
mov byte [esp + 0x40], 3
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x3c]
push eax
call edi
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
add esp, 4
push edx
push str.HP_FIRSTMEDICNAME
mov dword [ecx], eax
lea eax, [esp + 0x20]
push str._s_04d
push eax
call dword [0x1005d488]
mov ecx, dword [esp + 0x30]
add esp, 0x10
add ecx, 0x10
push ecx
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call dword [0x1005d4ac]
push ecx
mov byte [esp + 0x40], 4
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x1c]
push eax
push str.HP_NEXTMEDICNAME
lea ecx, [esp + 0x20]
push str._s_04d
push ecx
call dword [0x1005d488]
mov edx, dword [esp + 0x30]
add esp, 0x10
add edx, 0x20
push edx
push ecx
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push eax
call dword [0x1005d4ac]
push ecx
mov byte [esp + 0x40], 5
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x1c]
cmp eax, 2
jge 0x100068a4
push eax
push str.HP_USECHECKNOMOB
lea ecx, [esp + 0x20]
push str._s_04d
push ecx
call dword [0x1005d488]
add esp, 0x10
lea edx, [esp + 0x3c]
push edx
push ecx
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push eax
call dword [0x1005d4ac]
push ecx
mov byte [esp + 0x40], 6
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov ecx, dword [esp + 0x3c]
push ecx
call edi
mov edx, dword [esp + 0x24]
mov dword [edx + 0x30], eax
mov eax, dword [esp + 0x20]
add esp, 4
add dword [esp + 0x20], 4
add eax, ebx
cmp eax, 4
mov dword [esp + 0x1c], eax
jl 0x100066b5
lea eax, [esp + 0x3c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.HP_USECHECKNOFIGHTING
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 7
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov ecx, dword [esp + 0x3c]
push ecx
call edi
add esp, 4
lea edx, [esp + 0x3c]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.HP_USECHECKSKILLMP
mov dword [ebp + 0x2d4], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 8
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x3c]
push eax
call edi
add esp, 4
lea ecx, [esp + 0x3c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.HP_CHECKSKILLMP
mov dword [ebp + 0x2d8], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 9
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov edx, dword [esp + 0x3c]
push edx
call edi
mov dword [ebp + 0x2dc], eax
lea eax, [ebp + 0x2ec]
add esp, 4
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 0x20]
push ecx
push str.USE_MPMEDIC
lea edx, [esp + 0x20]
push str._s_04d
push edx
call dword [0x1005d488]
add esp, 0x10
lea eax, [esp + 0x3c]
push eax
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call dword [0x1005d4ac]
push ecx
mov byte [esp + 0x40], 0xa
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x3c]
push eax
call edi
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
add esp, 4
push edx
push str.LIMIT_MP
mov dword [ecx - 0xc], eax
lea eax, [esp + 0x20]
push str._s_04d
push eax
call dword [0x1005d488]
add esp, 0x10
lea ecx, [esp + 0x3c]
push ecx
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call dword [0x1005d4ac]
push ecx
mov byte [esp + 0x40], 0xb
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x3c]
push eax
call edi
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
add esp, 4
push edx
push str.MP_MEDICNAME
mov dword [ecx], eax
lea eax, [esp + 0x20]
push str._s_04d
push eax
call dword [0x1005d488]
mov ecx, dword [esp + 0x2c]
add esp, 0x10
add ecx, 0xc
push ecx
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call dword [0x1005d4ac]
push ecx
mov byte [esp + 0x40], 0xc
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x20]
add dword [esp + 0x1c], 4
add eax, ebx
cmp eax, 3
mov dword [esp + 0x20], eax
jl 0x100069a5
lea eax, [esp + 0x3c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.MP_CHECKSKILLHP
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0xd
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov ecx, dword [esp + 0x3c]
push ecx
call edi
add esp, 4
lea edx, [esp + 0x3c]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.DISUSESOUL
mov dword [ebp + 0x304], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0xe
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x3c]
push eax
call edi
add esp, 4
lea ecx, [esp + 0x3c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.USE_HPREST
mov dword [ebp + 0x308], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0xf
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov edx, dword [esp + 0x3c]
push edx
call edi
add esp, 4
mov dword [ebp + 0x354], eax
lea eax, [esp + 0x3c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.USE_MPREST
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x10
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov byte [esp + 0x40], bl
mov ecx, esi
call fcn.10022ef0
mov ecx, dword [esp + 0x3c]
push ecx
call edi
add esp, 4
lea edx, [esp + 0x3c]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.REST_MINHPVAL
mov dword [ebp + 0x358], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x11
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x3c]
push eax
call edi
add esp, 4
lea ecx, [esp + 0x3c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.REST_MAXHPVAL
mov dword [ebp + 0x35c], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x12
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov edx, dword [esp + 0x3c]
push edx
call edi
add esp, 4
mov dword [ebp + 0x364], eax
lea eax, [esp + 0x3c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.REST_MINMPVAL
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x13
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov ecx, dword [esp + 0x3c]
push ecx
call edi
add esp, 4
lea edx, [esp + 0x3c]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.REST_MAXMPVAL
mov dword [ebp + 0x360], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x14
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x3c]
push eax
call edi
add esp, 4
lea ecx, [esp + 0x3c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.USEVILLAGEREST
mov dword [ebp + 0x368], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x15
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov edx, dword [esp + 0x3c]
push edx
call edi
add esp, 4
mov dword [ebp + 0x36c], eax
lea eax, [esp + 0x3c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.VILLAGERESTHP
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x16
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov ecx, dword [esp + 0x3c]
push ecx
call edi
add esp, 4
lea edx, [esp + 0x3c]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.VILLAGERESTMP
mov dword [ebp + 0x370], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x17
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x3c]
push eax
call edi
add esp, 4
mov dword [ebp + 0x374], eax
lea ecx, [esp + 0x3c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.USEELFWOODREST
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x18
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov edx, dword [esp + 0x3c]
push edx
call edi
add esp, 4
mov dword [ebp + 0x378], eax
lea eax, [esp + 0x3c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.USEHPESCAPE
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x19
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov ecx, dword [esp + 0x3c]
push ecx
call edi
add esp, 4
lea edx, [esp + 0x3c]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.HPESCAPEVAL
mov dword [ebp + 0x37c], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x1a
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x3c]
push eax
call edi
add esp, 4
mov dword [ebp + 0x380], eax
lea eax, [ebp + 0x384]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.HPESCAPENAME
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x1b
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov byte [esp + 0x40], bl
mov ecx, esi
call fcn.10022ef0
mov edx, dword [ebp + 0x384]
mov eax, dword [edx - 0xc]
lea ecx, [ebp + 0x384]
test eax, eax
jne 0x10006f3a
push 0x1005efbc
call dword [0x1005d418]
lea eax, [esp + 0x3c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.USEMPESCAPE
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x1c
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov ecx, dword [esp + 0x3c]
push ecx
call edi
add esp, 4
lea edx, [esp + 0x3c]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.MPESCAPEVAL
mov dword [ebp + 0x388], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x1d
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x3c]
push eax
call edi
add esp, 4
mov dword [ebp + 0x38c], eax
lea eax, [ebp + 0x390]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.MPESCAPENAME
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x1e
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov edx, dword [ebp + 0x390]
cmp dword [edx - 0xc], 0
lea ecx, [ebp + 0x390]
jne 0x10007024
push 0x1005efbc
call dword [0x1005d418]
lea eax, [esp + 0x3c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.USEHPLOSSESCAPE
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x1f
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov ecx, dword [esp + 0x3c]
push ecx
call edi
add esp, 4
lea edx, [esp + 0x3c]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.HPLOSSESCAPEVAL
mov dword [ebp + 0x394], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x20
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x3c]
push eax
call edi
add esp, 4
mov dword [ebp + 0x398], eax
lea eax, [ebp + 0x39c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.HPLOSSESCAPENAME
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x21
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov edx, dword [ebp + 0x39c]
cmp dword [edx - 0xc], 0
lea ecx, [ebp + 0x39c]
jne 0x1000710e
push 0x1005efbc
call dword [0x1005d418]
lea eax, [esp + 0x3c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.USEROBSKILL
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x22
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov ecx, dword [esp + 0x3c]
push ecx
call edi
add esp, 4
lea edx, [esp + 0x3c]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.ROBSKILLHP
mov dword [ebp + 0x3a0], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x23
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x3c]
push eax
call edi
add esp, 4
lea ecx, [esp + 0x3c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.ROBSKILLMP
mov dword [ebp + 0x3a4], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x24
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov edx, dword [esp + 0x3c]
push edx
call edi
add esp, 4
mov dword [ebp + 0x3a8], eax
lea eax, [ebp + 0x3ac]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.ROBSKILLMP
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x25
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov byte [esp + 0x40], bl
mov ecx, esi
call fcn.10022ef0
lea ecx, [esp + 0x3c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.BUF_CURE
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x26
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov edx, dword [esp + 0x3c]
push edx
call edi
add esp, 4
mov dword [ebp + 0x318], eax
lea eax, [ebp + 0x31c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.BUF_CURENAME
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x27
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
lea ecx, [esp + 0x3c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.BUF_CURETIME
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x28
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov edx, dword [esp + 0x3c]
push edx
call edi
add esp, 4
mov dword [ebp + 0x320], eax
lea eax, [esp + 0x3c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.BUF_HEAST
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x29
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov ecx, dword [esp + 0x3c]
push ecx
call edi
add esp, 4
lea edx, [ebp + 0x328]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.BUF_HEASTNAME
mov dword [ebp + 0x324], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x2a
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
lea eax, [ebp + 0x33c]
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 0x20]
push ecx
push str.USE_INHERENTITEM
lea edx, [esp + 0x20]
push str._s_04d
push edx
call dword [0x1005d488]
add esp, 0x10
lea eax, [esp + 0x3c]
push eax
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call dword [0x1005d4ac]
push ecx
mov byte [esp + 0x40], 0x2b
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x3c]
push eax
call edi
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
add esp, 4
push edx
push str.INHERENTITEM_NAME
mov dword [ecx - 0x10], eax
lea eax, [esp + 0x20]
push str._s_04d
push eax
call dword [0x1005d488]
mov ecx, dword [esp + 0x2c]
add esp, 0x10
push ecx
push ecx
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call dword [0x1005d4ac]
push ecx
mov byte [esp + 0x40], 0x2c
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x20]
add dword [esp + 0x1c], 4
add eax, ebx
cmp eax, 4
mov dword [esp + 0x20], eax
jl 0x10007387
lea eax, [esp + 0x3c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.USECOOKING
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x2d
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov ecx, dword [esp + 0x3c]
push ecx
call edi
add esp, 4
lea edx, [ebp + 0x350]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.COOKINGNAME
mov dword [ebp + 0x34c], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x2e
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
lea eax, [esp + 0x3c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.USE_GLUT
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x2f
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov ecx, dword [esp + 0x3c]
push ecx
call edi
add esp, 4
lea edx, [esp + 0x3c]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.LIMIT_GLUT
mov dword [ebp + 0x30c], eax
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x30
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
mov eax, dword [esp + 0x3c]
push eax
call edi
add esp, 4
mov dword [ebp + 0x310], eax
add ebp, 0x314
push ebp
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.FOOD_NAME
call dword [0x1005d4b4]
push ecx
mov byte [esp + 0x40], 0x31
mov ecx, esp
mov dword [esp + 0x30], esp
push str.PROTECT
call dword [0x1005d4b4]
mov ecx, esi
mov byte [esp + 0x40], bl
call fcn.10022ef0
lea ecx, [esp + 0x18]
call dword [0x1005d4d0]
lea ecx, [esp + 0x3c]
call dword [0x1005d4d0]
mov ecx, dword [esp + 0x2c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret 4