Function at 0x1004bcb0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100b34ca
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xf0
push esi
push edi
mov dword [ebp - 4], 0
mov eax, 0x2aaaaaab
mov ecx, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
sub ecx, edi
imul ecx
sar edx, 2
mov esi, edx
shr esi, 0x1f
add esi, edx
je 0x1004d04e
cmp dword [edi + 0x14], 0x10
mov ecx, edi
jb 0x1004bd00
mov ecx, dword [edi]
mov edx, dword [edi + 0x10]
push 8
push str.pkregion
call fcn.10008560
add esp, 8
test al, al
je 0x1004bd4a
cmp esi, 1
jbe 0x1004d053
push ecx
mov ecx, edi
lea ecx, [ecx + 0x18]
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x24]
mov ecx, 0x100e88e0
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.100186a0
jmp 0x1004d034
test esi, esi
je 0x1004d058
cmp dword [edi + 0x14], 0x10
mov eax, edi
jb 0x1004bd5c
mov eax, dword [edi]
mov edx, dword [edi + 0x10]
mov ecx, eax
push 0xa
push str.itemregion
call fcn.10008560
add esp, 8
test al, al
je 0x1004bf2a
cmp esi, 1
jbe 0x1004d05d
mov ecx, edi
add ecx, 0x18
push ecx
call fcn.1000ad40
mov ecx, dword [ebp + 0xc]
add esp, 4
mov esi, dword [ebp + 8]
sub ecx, esi
mov dword [ebp - 0x18], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
jbe 0x1004d062
lea ecx, [esi + 0x30]
push ecx
call fcn.1000ad40
mov edx, dword [ebp - 0x18]
add esp, 4
mov dword [ebp - 0x24], eax
movzx eax, dl
xor eax, 0x811c9dc5
mov edi, dword [0x100e874c]
imul ecx, eax, 0x1000193
movzx eax, dh
mov esi, dword [ebp - 0x18]
xor ecx, eax
movzx eax, byte [ebp - 0x16]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [ebp - 0x15]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul ecx, ecx, 0x1000193
and ecx, dword [0x100e8758]
mov eax, dword [edi + ecx*8]
add ecx, ecx
lea edx, [ecx*4 + 4]
mov ecx, dword [edi + ecx*4]
mov dword [ebp - 0x1c], edx
mov edx, dword [0x100e8744]
mov dword [ebp - 0x10], ecx
cmp ecx, edx
jne 0x1004be29
mov ecx, edx
jmp 0x1004be31
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ecx + edi]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x1004be41
cmp dword [eax + 8], esi
je 0x1004be43
mov eax, dword [eax]
mov ecx, dword [ebp - 0x10]
jmp 0x1004be21
mov eax, edx
cmp eax, edx
jne 0x1004c29a
lea ecx, [ebp - 0x48]
call fcn.10009e90
lea eax, [ebp - 0x18]
mov byte [ebp - 4], 1
push eax
mov ecx, 0x100e8740
call fcn.10054960
mov ecx, dword [eax + 8]
cmp ecx, dword [ebp - 0x40]
jne 0x1004befd
mov eax, dword [eax + 4]
mov dword [ebp - 0x1c], eax
mov edx, dword [eax]
cmp edx, eax
je 0x1004befd
movzx eax, byte [edx + 8]
xor eax, 0x811c9dc5
mov edi, dword [ebp - 0x3c]
imul ecx, eax, 0x1000193
movzx eax, byte [edx + 9]
mov esi, dword [ebp - 0x3c]
xor ecx, eax
movzx eax, byte [edx + 0xa]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edx + 0xb]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, dword [ebp - 0x30]
and ecx, eax
mov eax, dword [edi + ecx*8]
add ecx, ecx
add esi, 4
mov edi, dword [edi + ecx*4]
lea ecx, [esi + ecx*4]
mov esi, dword [ebp - 0x44]
mov dword [ebp - 0x10], ecx
cmp edi, esi
jne 0x1004bedb
mov ecx, esi
jmp 0x1004bedf
mov ecx, dword [ecx]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x1004befd
mov ecx, dword [eax + 8]
cmp ecx, dword [edx + 8]
je 0x1004bef2
mov eax, dword [eax]
mov ecx, dword [ebp - 0x10]
jmp 0x1004bed3
cmp eax, esi
je 0x1004befd
mov edx, dword [edx]
cmp edx, dword [ebp - 0x1c]
jne 0x1004be81
mov ecx, 0x100e8740
lea eax, [ebp - 0x18]
push eax
call fcn.10054960
push dword [ebp + 0x10]
lea ecx, [ebp - 0x24]
push ecx
lea ecx, [ebp - 0x14]
push ecx
mov ecx, eax
call fcn.100186a0
lea ecx, [ebp - 0x48]
call fcn.10009c10
jmp 0x1004d034
test esi, esi
je 0x1004d067
cmp dword [edi + 0x14], 0x10
mov ecx, edi
jb 0x1004bf3c
mov ecx, dword [edi]
mov edx, dword [edi + 0x10]
push 3
push 0x100cf950
call fcn.10008560
add esp, 8
test al, al
je 0x1004c0ef
cmp esi, 1
jbe 0x1004d06c
mov ecx, edi
add ecx, 0x18
push ecx
call fcn.1000ad40
mov ecx, dword [ebp + 0xc]
add esp, 4
mov esi, dword [ebp + 8]
sub ecx, esi
mov dword [ebp - 0x18], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
jbe 0x1004d071
lea ecx, [esi + 0x30]
push ecx
call fcn.1000ad40
mov edx, dword [ebp - 0x18]
add esp, 4
mov dword [ebp - 0x24], eax
movzx eax, dl
xor eax, 0x811c9dc5
mov edi, dword [0x100e872c]
imul ecx, eax, 0x1000193
movzx eax, dh
mov esi, dword [ebp - 0x18]
xor ecx, eax
movzx eax, byte [ebp - 0x16]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [ebp - 0x15]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, dword [0x100e8738]
and ecx, eax
mov eax, dword [edi + ecx*8]
add ecx, ecx
lea edx, [ecx*4 + 4]
mov ecx, dword [edi + ecx*4]
mov dword [ebp - 0x10], edx
mov edx, dword [0x100e8724]
mov dword [ebp - 0x1c], ecx
cmp ecx, edx
jne 0x1004c009
mov ecx, edx
jmp 0x1004c011
mov ecx, dword [ebp - 0x10]
mov ecx, dword [edi + ecx]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x1004c021
cmp dword [eax + 8], esi
je 0x1004c023
mov eax, dword [eax]
mov ecx, dword [ebp - 0x1c]
jmp 0x1004c001
mov eax, edx
cmp eax, edx
jne 0x1004c0e5
lea ecx, [ebp - 0x48]
call fcn.10009e90
lea eax, [ebp - 0x18]
mov byte [ebp - 4], 2
push eax
mov ecx, 0x100e8720
call fcn.10054960
mov ecx, dword [eax + 8]
cmp ecx, dword [ebp - 0x40]
jne 0x1004c0db
mov eax, dword [eax + 4]
mov dword [ebp - 0x1c], eax
mov edx, dword [eax]
cmp edx, eax
je 0x1004c0db
movzx eax, byte [edx + 8]
xor eax, 0x811c9dc5
mov edi, dword [ebp - 0x3c]
imul ecx, eax, 0x1000193
movzx eax, byte [edx + 9]
mov esi, dword [ebp - 0x3c]
xor ecx, eax
movzx eax, byte [edx + 0xa]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edx + 0xb]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul ecx, ecx, 0x1000193
and ecx, dword [ebp - 0x30]
mov eax, dword [edi + ecx*8]
add ecx, ecx
add esi, 4
mov edi, dword [edi + ecx*4]
lea ecx, [esi + ecx*4]
mov esi, dword [ebp - 0x44]
mov dword [ebp - 0x10], ecx
cmp edi, esi
jne 0x1004c0b9
mov ecx, esi
jmp 0x1004c0bd
mov ecx, dword [ecx]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x1004c0db
mov ecx, dword [eax + 8]
cmp ecx, dword [edx + 8]
je 0x1004c0d0
mov eax, dword [eax]
mov ecx, dword [ebp - 0x10]
jmp 0x1004c0b1
cmp eax, esi
je 0x1004c0db
mov edx, dword [edx]
cmp edx, dword [ebp - 0x1c]
jne 0x1004c061
mov ecx, 0x100e8720
jmp 0x1004bf02
mov ecx, 0x100e8720
jmp 0x1004c29f
test esi, esi
je 0x1004d076
cmp dword [edi + 0x14], 0x10
jb 0x1004c101
mov eax, dword [edi]
jmp 0x1004c103
mov eax, edi
mov edx, dword [edi + 0x10]
mov ecx, eax
push 3
push 0x100cf954
call fcn.10008560
add esp, 8
test al, al
je 0x1004c2bf
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
push 2
lea ecx, [ebp + 8]
mov dword [ebp - 0x18], eax
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
movzx ecx, al
add esp, 4
xor ecx, 0x811c9dc5
mov edi, dword [0x100e86ec]
imul edx, ecx, 0x1000193
mov ecx, eax
sar ecx, 8
movzx ecx, cl
mov dword [ebp - 0x24], eax
mov esi, dword [ebp - 0x24]
xor edx, ecx
sar eax, 0x10
imul ecx, edx, 0x1000193
movzx eax, al
xor ecx, eax
mov eax, esi
imul ecx, ecx, 0x1000193
sar eax, 0x18
movzx eax, al
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, dword [0x100e86f8]
and ecx, eax
mov eax, dword [edi + ecx*8]
add ecx, ecx
lea edx, [ecx*4 + 4]
mov ecx, dword [edi + ecx*4]
mov dword [ebp - 0x10], edx
mov edx, dword [0x100e86e4]
mov dword [ebp - 0x1c], ecx
cmp ecx, edx
jne 0x1004c1bc
mov ecx, edx
jmp 0x1004c1c4
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ecx + edi]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x1004c1d4
cmp dword [eax + 8], esi
je 0x1004c1d6
mov eax, dword [eax]
mov ecx, dword [ebp - 0x1c]
jmp 0x1004c1b4
mov eax, edx
cmp eax, edx
jne 0x1004c29a
lea ecx, [ebp - 0x48]
call fcn.10009e90
lea eax, [ebp - 0x18]
mov byte [ebp - 4], 3
push eax
mov ecx, 0x100e86e0
call fcn.10054960
mov ecx, dword [eax + 8]
cmp ecx, dword [ebp - 0x40]
jne 0x1004c290
mov eax, dword [eax + 4]
mov dword [ebp - 0x1c], eax
mov edx, dword [eax]
cmp edx, eax
je 0x1004c290
movzx eax, byte [edx + 8]
xor eax, 0x811c9dc5
mov edi, dword [ebp - 0x3c]
imul ecx, eax, 0x1000193
movzx eax, byte [edx + 9]
mov esi, dword [ebp - 0x3c]
xor ecx, eax
movzx eax, byte [edx + 0xa]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edx + 0xb]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, dword [ebp - 0x30]
and ecx, eax
mov eax, dword [edi + ecx*8]
add ecx, ecx
add esi, 4
mov edi, dword [edi + ecx*4]
lea ecx, [esi + ecx*4]
mov esi, dword [ebp - 0x44]
mov dword [ebp - 0x10], ecx
cmp edi, esi
jne 0x1004c26e
mov ecx, esi
jmp 0x1004c272
mov ecx, dword [ecx]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x1004c290
mov ecx, dword [eax + 8]
cmp ecx, dword [edx + 8]
je 0x1004c285
mov eax, dword [eax]
mov ecx, dword [ebp - 0x10]
jmp 0x1004c266
cmp eax, esi
je 0x1004c290
mov edx, dword [edx]
cmp edx, dword [ebp - 0x1c]
jne 0x1004c214
mov ecx, 0x100e86e0
jmp 0x1004bf02
mov ecx, 0x100e8740
lea eax, [ebp - 0x18]
push eax
call fcn.10054960
push dword [ebp + 0x10]
lea ecx, [ebp - 0x24]
push ecx
lea ecx, [ebp - 0x14]
push ecx
mov ecx, eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c2d3
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 9
push str.pvpregion
call fcn.10008560
add esp, 8
test al, al
je 0x1004c348
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8840
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8880
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c35c
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 0xe
push str.namehideregion
call fcn.10008560
add esp, 8
test al, al
je 0x1004c3a4
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8820
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c3b8
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 3
push 0x100cf974
call fcn.10008560
add esp, 8
test al, al
je 0x1004c400
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8860
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c414
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 8
push str.moduleip
call fcn.10008560
add esp, 8
lea ecx, [ebp + 8]
test al, al
je 0x1004c44b
push 1
call fcn.10010620
push dword [ebp + 0x10]
mov ecx, 0x100e8940
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.10021780
jmp 0x1004d034
push 0
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c45c
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 0xb
push str.partyregion
call fcn.10008560
add esp, 8
test al, al
je 0x1004c4a4
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8800
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c4b8
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 7
push str.jobitem
call fcn.10008560
add esp, 8
test al, al
je 0x1004c500
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8560
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c514
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 9
push str.petregion
call fcn.10008560
add esp, 8
test al, al
je 0x1004c55c
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8960
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c570
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 0xd
push str.grabpetregion
call fcn.10008560
add esp, 8
test al, al
je 0x1004c5b8
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8320
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c5cc
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 0xf
push str.attackpetregion
call fcn.10008560
add esp, 8
test al, al
je 0x1004c614
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8360
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c628
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 0xd
push str.ridepetregion
call fcn.10008560
add esp, 8
test al, al
je 0x1004c670
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8160
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c684
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 0xe
push str.transpetregion
call fcn.10008560
add esp, 8
test al, al
je 0x1004c6cc
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8480
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c6e0
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 0x11
push str.nonpartymobregion
call fcn.10008560
add esp, 8
test al, al
je 0x1004c728
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8920
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c73c
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 3
push 0x100cf9f8
call fcn.10008560
add esp, 8
test al, al
je 0x1004c784
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8700
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c798
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 4
push str.ezt0
call fcn.10008560
add esp, 8
test al, al
je 0x1004c7ca
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
mov ecx, 0x100e8460
jmp 0x1004c894
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c7de
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 4
push str.ezt1
call fcn.10008560
add esp, 8
test al, al
je 0x1004c810
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
mov ecx, 0x100e8440
jmp 0x1004c894
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c824
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 4
push str.ezt2
call fcn.10008560
add esp, 8
test al, al
je 0x1004c853
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
mov ecx, 0x100e81a0
jmp 0x1004c894
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c867
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 4
push str.ezt3
call fcn.10008560
add esp, 8
test al, al
je 0x1004c8e2
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
mov ecx, 0x100e8380
add esp, 4
movzx eax, ax
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.10056f40
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
movzx eax, ax
mov dword [ebp - 0x10], eax
mov ecx, 0x100e81e0
lea eax, [ebp - 0x10]
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.10056f40
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c8f6
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 4
push str.eztx
call fcn.10008560
add esp, 8
test al, al
je 0x1004c941
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
movzx eax, ax
mov dword [ebp - 0x10], eax
mov ecx, 0x100e8240
lea eax, [ebp - 0x10]
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.10056f40
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c955
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 3
push 0x100cfa24
call fcn.10008560
add esp, 8
test al, al
je 0x1004c99d
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8780
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004c9b1
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 3
push 0x100cfa28
call fcn.10008560
add esp, 8
test al, al
je 0x1004c9f9
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8900
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004ca0d
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 3
push 0x100cfa2c
call fcn.10008560
add esp, 8
test al, al
je 0x1004ca55
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e88c0
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004ca69
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 4
push str.szbi
call fcn.10008560
add esp, 8
test al, al
je 0x1004cab1
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e86c0
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004cac5
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 3
push 0x100cfa38
call fcn.10008560
add esp, 8
test al, al
je 0x1004cb0d
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e82a0
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004cb21
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 3
push 0x100cfa3c
call fcn.10008560
add esp, 8
test al, al
je 0x1004cb69
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e8220
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004cb7d
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 3
push 0x100cfa40
call fcn.10008560
add esp, 8
test al, al
je 0x1004cbc5
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e85a0
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004cbd9
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 3
push 0x100cfa44
call fcn.10008560
add esp, 8
test al, al
je 0x1004cc21
push ecx
push 1
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov ecx, 0x100e82e0
push dword [ebp + 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100186a0
jmp 0x1004d034
push 0
lea ecx, [ebp + 8]
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004cc35
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 6
push str.switch
call fcn.10008560
add esp, 8
lea ecx, [ebp + 8]
test al, al
je 0x1004cf08
push 1
call fcn.10010620
push eax
lea ecx, [ebp - 0x9c]
call fcn.10007a70
push 2
lea ecx, [ebp + 8]
mov byte [ebp - 4], 4
call fcn.10010620
push eax
lea ecx, [ebp - 0x40]
call fcn.10007a70
push 3
lea ecx, [ebp + 8]
mov byte [ebp - 4], 5
call fcn.10010620
push eax
lea ecx, [ebp - 0xfc]
call fcn.10007a70
push 4
lea ecx, [ebp + 8]
mov byte [ebp - 4], 6
call fcn.10010620
push eax
lea ecx, [ebp - 0xe4]
call fcn.10007a70
push 5
lea ecx, [ebp + 8]
mov byte [ebp - 4], 7
call fcn.10010620
push eax
lea ecx, [ebp - 0xcc]
call fcn.10007a70
push 6
lea ecx, [ebp + 8]
mov byte [ebp - 4], 8
call fcn.10010620
push eax
lea ecx, [ebp - 0xb4]
call fcn.10007a70
push ecx
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 9
call fcn.1000ad40
lea ecx, [ebp - 0xcc]
mov edi, eax
call fcn.1000ad40
lea ecx, [ebp - 0xb4]
mov dword [ebp - 0x1c], eax
call fcn.1000ad40
add esp, 4
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x9c]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.100179a0
mov ecx, dword [eax]
cmp ecx, dword [0x100e8664]
jne 0x1004ce08
lea ecx, [ebp - 0x68]
call fcn.10017c80
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.10018a60
mov esi, dword [ebp - 0x28]
lea eax, [ebp - 0x68]
add esi, 0x20
cmp esi, eax
je 0x1004cde7
push 0
push 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0
call fcn.10017ec0
mov dword [ebp - 0x28], eax
lea ecx, [esi + 4]
mov byte [ebp - 4], 0xb
lea edx, [ebp - 0x28]
cmp ecx, edx
je 0x1004cd90
push eax
push dword [eax]
call fcn.100184d0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
lea ecx, [esi + 0xc]
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x78]
cmp ecx, eax
je 0x1004cdbf
push dword [ebp + 0x10]
push 0
push 0
call fcn.10018d10
lea eax, [ebp - 0x68]
mov ecx, esi
push eax
call fcn.10017d80
lea ecx, [ebp - 0x78]
call fcn.10009db0
lea ecx, [ebp - 0x28]
call fcn.10017d40
push 0x44
push dword [ebp - 0x28]
call fcn.1005cbc1
add esp, 8
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 9
call fcn.10009db0
lea ecx, [ebp - 0x64]
call fcn.10017d40
push 0x44
push dword [ebp - 0x64]
call fcn.1005cbc1
add esp, 8
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0xfc]
push eax
mov dword [ebp - 0x64], edi
call fcn.10007a70
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0xd
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.10018a60
mov ecx, dword [ebp - 0x14]
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x20]
push eax
lea ecx, [ecx + 0x20]
call fcn.10018bc0
mov esi, dword [ebp - 0x20]
lea eax, [ebp - 0x60]
lea edi, [esi + 0x2c]
cmp edi, eax
je 0x1004ce7d
mov ecx, edi
call fcn.10007a20
movups xmm0, xmmword [ebp - 0x60]
mov edx, 0xf
mov byte [ebp - 0x60], 0
movups xmmword [edi], xmm0
movq xmm0, qword [ebp - 0x50]
movq qword [edi + 0x10], xmm0
jmp 0x1004ce80
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x64]
mov dword [esi + 0x28], eax
mov eax, dword [ebp - 0x68]
mov dword [esi + 0x24], eax
mov eax, dword [ebp - 0x6c]
mov dword [esi + 0x20], eax
cmp edx, 0x10
jb 0x1004cec3
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1004ceb9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004d07b
push edx
push ecx
call fcn.1005cbc1
add esp, 8
inc dword [0x100e80b4]
lea ecx, [ebp - 0xb4]
call fcn.10007a20
lea ecx, [ebp - 0xcc]
call fcn.10007a20
lea ecx, [ebp - 0xe4]
call fcn.10007a20
lea ecx, [ebp - 0xfc]
call fcn.10007a20
lea ecx, [ebp - 0x40]
call fcn.10007a20
lea ecx, [ebp - 0x9c]
jmp 0x1004d02f
push 0
call fcn.10010620
mov ecx, eax
cmp dword [eax + 0x14], 0x10
jb 0x1004cf19
mov ecx, dword [eax]
mov edx, dword [eax + 0x10]
push 0xc
push str.drunkworldid
call fcn.10008560
add esp, 8
test al, al
je 0x1004cf55
push ecx
push 1
lea ecx, [ebp + 8]
mov byte [0x100e805c], 1
call fcn.10010620
mov ecx, eax
call fcn.1000ad40
add esp, 4
mov dword [0x100e80a8], eax
jmp 0x1004d034
push 0
push 0x100c9884
lea ecx, [ebp - 0x84]
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0xf
mov byte [ebp - 0x84], 0
call fcn.10011b50
mov byte [ebp - 4], 0xe
mov eax, 0x2aaaaaab
mov ecx, dword [ebp + 0xc]
mov edi, 1
sub ecx, dword [ebp + 8]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, edi
jbe 0x1004cffe
push edi
lea ecx, [ebp + 8]
call fcn.10010620
push eax
lea ecx, [ebp - 0x84]
call fcn.10010840
mov esi, dword [ebp + 0xc]
mov eax, 0x2aaaaaab
mov ecx, esi
inc edi
sub ecx, dword [ebp + 8]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
je 0x1004cfe6
push 0x100cfa58
lea ecx, [ebp - 0x84]
call fcn.100107d0
mov esi, dword [ebp + 0xc]
sub esi, dword [ebp + 8]
mov eax, 0x2aaaaaab
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x1004cfa0
push 0
lea ecx, [ebp + 8]
call fcn.10010620
push eax
lea eax, [ebp - 0x14]
mov ecx, 0x100e88a0
push eax
call fcn.10057250
mov ecx, dword [ebp - 0x14]
lea eax, [ebp - 0x84]
push eax
lea ecx, [ecx + 0x20]
call fcn.10017d10
lea ecx, [ebp - 0x84]
call fcn.10007a20
lea ecx, [ebp + 8]
call fcn.100118c0
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0xc
call fcn.100118b0
call fcn.100118b0
call fcn.100118b0
call fcn.100118b0
call fcn.100118b0
call fcn.100118b0
call fcn.100118b0
call fcn.100118b0
call fcn.100118b0
call fcn.10078e0c
int3