Function at 0x1000f085
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
mov edx, 0x35
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x1000f08d
lea edx, str.speed
lea ecx, [esp]
call fcn.10031008
lea edx, str.monsters
lea ecx, [esp + 0x30]
call fcn.10031008
push dword [0x10040478]
call fcn.1002e6f2
mov dword [esp + 0xc], eax
mov word [esp + 0x5c], 0xa
movzx ebx, word [esp + 0x5c]
mov eax, 3
cmp ebx, eax
jl 0x1000f0ea
movzx ebx, word [esp + 0x5c]
dec ebx
push ebx
pop eax
mov word [esp + 0x60], ax
jmp 0x1000f0f7
movzx ebx, word [esp + 0x5c]
inc ebx
push ebx
pop eax
mov word [esp + 0x60], ax
movzx ebx, word [esp + 0x60]
push ebx
mov ebx, 0xd
cmp ebx, dword [esp]
jne 0x1000f111
add esp, 4
jmp 0x1000fbdb
mov ebx, 4
cmp ebx, dword [esp]
jne 0x1000f129
movzx eax, word [esp + 0x64]
push eax
pop eax
mov word [esp + 0x60], ax
jmp 0x1000f140
mov ebx, 3
cmp ebx, dword [esp]
jne 0x1000f140
movzx ebx, word [esp + 0x64]
inc ebx
push ebx
pop eax
mov word [esp + 0x60], ax
pop eax
mov ebx, dword [esp + 0xc]
and ebx, ebx
jne 0x1000f162
xor eax, eax
movsx eax, al
jmp 0x1000fbdb
lea edx, str.jokes
lea ecx, [esp + 0x68]
call fcn.10031008
push dword [esp + 0xc]
pop eax
mov dword [esp + 4], eax
mov ebp, dword [esp + 4]
movsx ebx, word [ebp]
cmp ebx, 0x5a4d
je 0x1000f1a3
xor eax, eax
movsx eax, al
jmp 0x1000fbdb
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 4]
add ebx, dword [ebp + 0x3c]
mov dword [esp + 8], ebx
mov word [esp + 0x70], 4
movzx ebx, word [esp + 0x70]
mov eax, 5
cmp ebx, eax
jl 0x1000f1d6
movzx ebx, word [esp + 0x70]
dec ebx
push ebx
pop eax
mov word [esp + 0x74], ax
jmp 0x1000f1e3
movzx ebx, word [esp + 0x70]
inc ebx
push ebx
pop eax
mov word [esp + 0x74], ax
movzx ebx, word [esp + 0x74]
push ebx
mov ebx, 0xc
cmp ebx, dword [esp]
jne 0x1000f1fd
add esp, 4
jmp 0x1000fbdb
mov ebx, 7
cmp ebx, dword [esp]
jne 0x1000f215
movzx eax, word [esp + 0x78]
push eax
pop eax
mov word [esp + 0x74], ax
jmp 0x1000f22c
mov ebx, 4
cmp ebx, dword [esp]
jne 0x1000f22c
movzx ebx, word [esp + 0x78]
inc ebx
push ebx
pop eax
mov word [esp + 0x74], ax
pop eax
mov ebp, dword [esp + 8]
movsx ebx, word [ebp + 4]
cmp ebx, 0x14c
je 0x1000f2cc
mov word [esp + 0x78], 8
movzx ebx, word [esp + 0x78]
mov eax, 4
cmp ebx, eax
jl 0x1000f265
movzx ebx, word [esp + 0x78]
dec ebx
push ebx
pop eax
mov word [esp + 0x7c], ax
jmp 0x1000f272
movzx ebx, word [esp + 0x78]
inc ebx
push ebx
pop eax
mov word [esp + 0x7c], ax
movzx ebx, word [esp + 0x7c]
push ebx
mov ebx, 0xe
cmp ebx, dword [esp]
jne 0x1000f28c
add esp, 4
jmp 0x1000fbdb
mov ebx, 5
cmp ebx, dword [esp]
jne 0x1000f2a7
movzx eax, word [esp + 0x80]
push eax
pop eax
mov word [esp + 0x7c], ax
jmp 0x1000f2c1
mov ebx, 5
cmp ebx, dword [esp]
jne 0x1000f2c1
movzx ebx, word [esp + 0x80]
inc ebx
push ebx
pop eax
mov word [esp + 0x7c], ax
pop eax
xor eax, eax
movsx eax, al
jmp 0x1000fbdb
lea edx, str.brother
lea ecx, [esp + 0x80]
call fcn.10031008
mov ebp, dword [esp + 8]
push ebp
pop ebp
lea eax, [ebp + 0x88]
push eax
pop eax
mov dword [esp + 0x54], eax
mov ebx, dword [esp + 0x54]
and ebx, ebx
jle 0x1000f305
mov ebp, dword [esp + 0x54]
mov ebx, dword [ebp]
and ebx, ebx
jle 0x1000f305
jmp 0x1000f30c
mov eax, 1
jmp 0x1000f30e
xor eax, eax
and eax, eax
jne 0x1000f31f
mov ebp, dword [esp + 0x54]
mov ebx, dword [ebp + 4]
and ebx, ebx
jle 0x1000f31f
jmp 0x1000f326
mov eax, 1
jmp 0x1000f328
xor eax, eax
and eax, eax
je 0x1000f348
xor eax, eax
movsx eax, al
jmp 0x1000fbdb
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x54]
add ebx, dword [ebp]
mov dword [esp + 0x10], ebx
mov ebp, dword [esp + 0x10]
movsx ebx, word [ebp + 0xe]
mov ebp, dword [esp + 0x10]
movsx ecx, word [ebp + 0xc]
add ebx, ecx
mov dword [esp + 0x2c], ebx
mov word [esp + 0x88], 7
movzx ebx, word [esp + 0x88]
mov eax, 2
cmp ebx, eax
jl 0x1000f39d
movzx ebx, word [esp + 0x88]
dec ebx
push ebx
pop eax
mov word [esp + 0x8c], ax
jmp 0x1000f3b0
movzx ebx, word [esp + 0x88]
inc ebx
push ebx
pop eax
mov word [esp + 0x8c], ax
movzx ebx, word [esp + 0x8c]
push ebx
mov ebx, 0xf
cmp ebx, dword [esp]
jne 0x1000f3cd
add esp, 4
jmp 0x1000fbdb
mov ebx, 6
cmp ebx, dword [esp]
jne 0x1000f3eb
movzx eax, word [esp + 0x90]
push eax
pop eax
mov word [esp + 0x8c], ax
jmp 0x1000f408
mov ebx, 4
cmp ebx, dword [esp]
jne 0x1000f408
movzx ebx, word [esp + 0x90]
inc ebx
push ebx
pop eax
mov word [esp + 0x8c], ax
pop eax
mov ebx, dword [esp + 0x2c]
and ebx, ebx
jg 0x1000f41b
xor eax, eax
movsx eax, al
jmp 0x1000fbdb
mov dword [esp + 0x14], 0
jmp 0x1000f425
mov ebx, dword [esp + 0x2c]
dec ebx
cmp ebx, dword [esp + 0x14]
jl 0x1000f73a
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
shl edi, 3
add ebx, edi
add ebx, 0x10
mov dword [esp + 0x18], ebx
mov ebp, dword [esp + 0x18]
mov ebx, dword [ebp]
cmp ebx, 2
jne 0x1000f46c
mov ebp, dword [esp + 0x18]
mov ebx, dword [ebp + 4]
and ebx, 0x80000000
and ebx, ebx
je 0x1000f46c
mov eax, 1
jmp 0x1000f46e
xor eax, eax
and eax, eax
je 0x1000f730
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x18]
mov edi, dword [ebp + 4]
and edi, 0x7fffffff
add ebx, edi
mov dword [esp + 0x1c], ebx
mov ebp, dword [esp + 0x1c]
movsx ebx, word [ebp + 0xe]
and ebx, ebx
jne 0x1000f4a3
xor eax, eax
movsx eax, al
jmp 0x1000fbdb
mov dword [esp + 0x58], 0
jmp 0x1000f4ad
mov ebp, dword [esp + 0x1c]
movsx eax, word [ebp + 0xe]
cmp eax, dword [esp + 0x58]
jl 0x1000f5f8
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x18]
mov edi, dword [ebp + 4]
and edi, 0x7fffffff
add ebx, edi
mov edi, dword [esp + 0x58]
shl edi, 3
add ebx, edi
add ebx, 0x10
mov dword [esp + 0x20], ebx
mov ebp, dword [esp + 0x20]
mov ebx, dword [ebp]
cmp ebx, dword [esp + 0xe4]
jne 0x1000f5ee
mov ebp, dword [esp + 0x20]
mov ebx, dword [ebp + 4]
and ebx, 0x80000000
and ebx, ebx
je 0x1000f5ec
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x20]
mov edi, dword [ebp + 4]
and edi, 0x7fffffff
add ebx, edi
add ebx, 0x10
mov dword [esp + 0x24], ebx
mov ebp, dword [esp + 0x24]
cmp dword [ebp + 4], 0
je 0x1000f546
mov ebp, dword [esp + 0x24]
mov ebx, dword [ebp]
cmp ebx, dword [esp + 0xe8]
jne 0x1000f546
mov eax, 1
jmp 0x1000f548
xor eax, eax
and eax, eax
je 0x1000f5ec
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x24]
mov edi, dword [ebp + 4]
and edi, 0x7fffffff
add ebx, edi
mov dword [esp + 0x28], ebx
mov ebp, dword [esp + 0x28]
mov ebx, dword [ebp + 8]
and ebx, ebx
jne 0x1000f583
mov ebp, dword [esp + 0x28]
cmp dword [ebp], 0
je 0x1000f583
mov eax, 1
jmp 0x1000f585
xor eax, eax
and eax, eax
je 0x1000f59a
mov ebp, dword [esp + 0x28]
cmp dword [ebp + 4], 0
je 0x1000f59a
mov eax, 1
jmp 0x1000f59c
xor eax, eax
and eax, eax
je 0x1000f5ec
mov ebp, dword [esp + 0x28]
push dword [ebp + 4]
pop eax
mov dword [esp + 0x38], eax
push dword [esp + 0x38]
call fcn.1003a7a0
mov dword [esp + 0x34], eax
mov ebx, dword [esp + 0x34]
and ebx, ebx
jne 0x1000f5cb
xor eax, eax
movsx eax, al
jmp 0x1000fbdb
push dword [esp + 0x38]
push dword [esp + 0x38]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x30]
mov edi, dword [ebp]
and edi, 0x7fffffff
add ebx, edi
push ebx
call fcn.1003aa60
jmp 0x1000f5f8
inc dword [esp + 0x58]
jno 0x1000f4ad
mov word [esp + 0x90], 6
movzx ebx, word [esp + 0x90]
mov eax, 4
cmp ebx, eax
jl 0x1000f628
movzx ebx, word [esp + 0x90]
dec ebx
push ebx
pop eax
mov word [esp + 0x94], ax
jmp 0x1000f63b
movzx ebx, word [esp + 0x90]
inc ebx
push ebx
pop eax
mov word [esp + 0x94], ax
movzx ebx, word [esp + 0x94]
push ebx
mov ebx, 0xd
cmp ebx, dword [esp]
jne 0x1000f658
add esp, 4
jmp 0x1000fbdb
mov ebx, 8
cmp ebx, dword [esp]
jne 0x1000f676
movzx eax, word [esp + 0x98]
push eax
pop eax
mov word [esp + 0x94], ax
jmp 0x1000f693
mov ebx, 4
cmp ebx, dword [esp]
jne 0x1000f693
movzx ebx, word [esp + 0x98]
inc ebx
push ebx
pop eax
mov word [esp + 0x94], ax
pop eax
mov word [esp + 0x98], 1
movzx ebx, word [esp + 0x98]
mov eax, 3
cmp ebx, eax
jl 0x1000f6c4
movzx ebx, word [esp + 0x98]
dec ebx
push ebx
pop eax
mov word [esp + 0x9c], ax
jmp 0x1000f6d7
movzx ebx, word [esp + 0x98]
inc ebx
push ebx
pop eax
mov word [esp + 0x9c], ax
movzx ebx, word [esp + 0x9c]
push ebx
mov ebx, 0xb
cmp ebx, dword [esp]
jne 0x1000f6f4
add esp, 4
jmp 0x1000fbdb
mov ebx, 4
cmp ebx, dword [esp]
jne 0x1000f712
movzx eax, word [esp + 0xa0]
push eax
pop eax
mov word [esp + 0x9c], ax
jmp 0x1000f72f
mov ebx, 4
cmp ebx, dword [esp]
jne 0x1000f72f
movzx ebx, word [esp + 0xa0]
inc ebx
push ebx
pop eax
mov word [esp + 0x9c], ax
pop eax
inc dword [esp + 0x14]
jno 0x1000f425
lea edx, str.what
lea ecx, [esp + 0xa0]
call fcn.10031008
mov ebx, dword [esp + 0x34]
and ebx, ebx
jne 0x1000f7fe
xor eax, eax
movsx eax, al
jmp 0x1000fbdb
push dword [esp + 0x34]
pop eax
call fcn.100311a0
mov ebx, eax
cmp ebx, 0x28
je 0x1000f8c2
mov word [esp + 0xac], 7
movzx ebx, word [esp + 0xac]
mov eax, 4
cmp ebx, eax
jl 0x1000f843
movzx ebx, word [esp + 0xac]
dec ebx
push ebx
pop eax
mov word [esp + 0xb0], ax
jmp 0x1000f856
movzx ebx, word [esp + 0xac]
inc ebx
push ebx
pop eax
mov word [esp + 0xb0], ax
movzx ebx, word [esp + 0xb0]
push ebx
mov ebx, 0xd
cmp ebx, dword [esp]
jne 0x1000f873
add esp, 4
jmp 0x1000fbdb
mov ebx, 5
cmp ebx, dword [esp]
jne 0x1000f891
movzx eax, word [esp + 0xb4]
push eax
pop eax
mov word [esp + 0xb0], ax
jmp 0x1000f8ae
mov ebx, 2
cmp ebx, dword [esp]
jne 0x1000f8ae
movzx ebx, word [esp + 0xb4]
inc ebx
push ebx
pop eax
mov word [esp + 0xb0], ax
pop eax
push dword [esp + 0x34]
call fcn.1003a910
xor eax, eax
movsx eax, al
jmp 0x1000fbdb
mov ebx, dword [esp + 0x34]
add ebx, 0xc
push ebx
pop eax
call fcn.100311a0
mov ebx, eax
cmp ebx, 1
je 0x1000f8fc
push dword [esp + 0x34]
call fcn.1003a910
xor eax, eax
movsx eax, al
jmp 0x1000fbdb
mov ebx, dword [esp + 0x34]
add ebx, 0xe
push ebx
pop eax
call fcn.100311a0
mov ebx, eax
cmp ebx, 0x18
je 0x1000f924
push dword [esp + 0x34]
call fcn.1003a910
xor eax, eax
movsx eax, al
jmp 0x1000fbdb
mov ebx, dword [esp + 0x34]
add ebx, 0x14
push ebx
pop eax
call fcn.10031190
mov dword [esp + 0x3c], eax
mov ebx, dword [esp + 0x3c]
and ebx, ebx
jne 0x1000f963
lea edx, str.there
lea ecx, [esp + 0xb8]
call fcn.10031008
push dword [esp + 0x34]
call fcn.1003a910
xor eax, eax
movsx eax, al
jmp 0x1000fbdb
push dword [esp + 0x3c]
call fcn.1003a7a0
mov dword [esp + 0x40], eax
mov ebx, dword [esp + 0x40]
and ebx, ebx
jne 0x1000f982
xor eax, eax
movsx eax, al
jmp 0x1000fbdb
push dword [esp + 0x3c]
push dword [esp + 0x44]
mov ebx, dword [esp + 0x3c]
add ebx, 0x28
push ebx
call fcn.1003aa60
push dword [esp + 0x34]
call fcn.1003a910
mov dword [esp + 0x34], 0
push dword [0x100404d4]
push dword [esp + 0x40]
push dword [esp + 0x48]
call fcn.1000a81f
mov ebx, eax
and ebx, ebx
jle 0x1000fa39
lea eax, [esp + 0x44]
push eax
push dword [esp + 0x40]
push dword [esp + 0x48]
call fcn.10015fde
mov ebx, eax
cmp ebx, 1
jne 0x1000f9ec
lea ebp, [esp + 0x44]
mov ebx, dword [ebp]
and ebx, ebx
jle 0x1000f9ec
mov eax, 1
jmp 0x1000f9ee
xor eax, eax
and eax, eax
je 0x1000fa1c
lea eax, [ebp + 4]
push dword [eax + 4]
push dword [eax]
pop ebx
pop edi
cmp edi, 0
jg 0x1000fa0c
jl 0x1000fa08
cmp ebx, 0
ja 0x1000fa0c
xor eax, eax
jmp 0x1000fa11
mov eax, 1
or eax, eax
je 0x1000fa1c
mov eax, 1
jmp 0x1000fa1e
xor eax, eax
and eax, eax
je 0x1000fa39
lea edx, str.rules
lea ecx, [esp + 0xbc]
call fcn.10031008
mov byte [esp + 0x50], 1
mov word [esp + 0xc0], 3
movzx ebx, word [esp + 0xc0]
mov eax, 1
cmp ebx, eax
jl 0x1000fa69
movzx ebx, word [esp + 0xc0]
dec ebx
push ebx
pop eax
mov word [esp + 0xc4], ax
jmp 0x1000fa7c
movzx ebx, word [esp + 0xc0]
inc ebx
push ebx
pop eax
mov word [esp + 0xc4], ax
movzx ebx, word [esp + 0xc4]
push ebx
mov ebx, 0xa
cmp ebx, dword [esp]
jne 0x1000fa99
add esp, 4
jmp 0x1000fbdb
mov ebx, 7
cmp ebx, dword [esp]
jne 0x1000fab7
movzx eax, word [esp + 0xc8]
push eax
pop eax
mov word [esp + 0xc4], ax
jmp 0x1000fad4
mov ebx, 3
cmp ebx, dword [esp]
jne 0x1000fad4
movzx ebx, word [esp + 0xc8]
inc ebx
push ebx
pop eax
mov word [esp + 0xc4], ax
pop eax
push dword [esp + 0x40]
call fcn.1003a910
mov dword [esp + 0x40], 0
movsx ebx, byte [esp + 0x50]
cmp ebx, 1
jne 0x1000fbcf
mov word [esp + 0xc8], 4
movzx ebx, word [esp + 0xc8]
mov eax, 2
cmp ebx, eax
jl 0x1000fb24
movzx ebx, word [esp + 0xc8]
dec ebx
push ebx
pop eax
mov word [esp + 0xcc], ax
jmp 0x1000fb37
movzx ebx, word [esp + 0xc8]
inc ebx
push ebx
pop eax
mov word [esp + 0xcc], ax
movzx ebx, word [esp + 0xcc]
push ebx
mov ebx, 0x11
cmp ebx, dword [esp]
jne 0x1000fb54
add esp, 4
jmp 0x1000fbdb
mov ebx, 6
cmp ebx, dword [esp]
jne 0x1000fb72
movzx eax, word [esp + 0xd0]
push eax
pop eax
mov word [esp + 0xcc], ax
jmp 0x1000fb8f
mov ebx, 2
cmp ebx, dword [esp]
jne 0x1000fb8f
movzx ebx, word [esp + 0xd0]
inc ebx
push ebx
pop eax
mov word [esp + 0xcc], ax
pop eax
lea ebp, [esp + 0x44]
push dword [ebp]
mov ebp, dword [esp + 0xf0]
pop eax
mov dword [ebp], eax
lea ebp, [esp + 0x44]
lea eax, [ebp + 4]
push dword [eax + 4]
push dword [eax]
mov ebp, dword [esp + 0xf4]
lea eax, [ebp + 4]
pop dword [eax]
pop dword [eax + 4]
lea edx, str.acid
lea ecx, [esp + 0xd0]
call fcn.10031008
movsx eax, byte [esp + 0x50]
movsx eax, al
jmp 0x1000fbdb
push dword [esp + 0x80]
call fcn.1003acf0
push dword [esp + 0xd0]
call fcn.1003acf0
push dword [esp + 0x84]
call fcn.1003acf0
push dword [esp + 0x64]
call fcn.1003acf0
push dword [esp + 0xb4]
call fcn.1003acf0
push dword [esp + 0x6c]
call fcn.1003acf0
push dword [esp + 0xb8]
call fcn.1003acf0
push dword [esp + 0x30]
call fcn.1003acf0
push dword [esp + 0xbc]
call fcn.1003acf0
push dword [esp + 0xa0]
call fcn.1003acf0
push dword [esp + 0x68]
call fcn.1003acf0
push dword [esp]
call fcn.1003acf0
add esp, 0xd4
pop edi
pop ebx
pop ebp
ret 0xc