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

Disassembly:
push ebp
push ebx
mov edx, 0x33
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x1000a541
mov edx, dword [esp + 0xd8]
lea ecx, [esp]
call fcn.10031000
mov edx, dword [esp + 0xdc]
lea ecx, [esp + 4]
call fcn.10031000
mov edx, dword [esp + 0xe0]
lea ecx, [esp + 8]
call fcn.10031000
mov word [esp + 0xc], 0xa
movzx ebx, word [esp + 0xc]
mov eax, 1
cmp ebx, eax
jl 0x1000a5a1
movzx ebx, word [esp + 0xc]
dec ebx
push ebx
pop eax
mov word [esp + 0x10], ax
jmp 0x1000a5ae
movzx ebx, word [esp + 0xc]
inc ebx
push ebx
pop eax
mov word [esp + 0x10], ax
movzx ebx, word [esp + 0x10]
push ebx
mov ebx, 0xa
cmp ebx, dword [esp]
jne 0x1000a5c8
add esp, 4
jmp 0x1000ae96
mov ebx, 8
cmp ebx, dword [esp]
jne 0x1000a5e0
movzx eax, word [esp + 0x14]
push eax
pop eax
mov word [esp + 0x10], ax
jmp 0x1000a5f7
mov ebx, 2
cmp ebx, dword [esp]
jne 0x1000a5f7
movzx ebx, word [esp + 0x14]
inc ebx
push ebx
pop eax
mov word [esp + 0x10], ax
pop eax
push dword [esp + 4]
lea edx, [0x1003e03e]
pop ecx
call fcn.100311d0
jne 0x1000a61d
push dword [esp]
lea edx, [0x1003e03e]
pop ecx
call fcn.100311d0
jne 0x1000a61d
jmp 0x1000a624
mov eax, 1
jmp 0x1000a626
xor eax, eax
and eax, eax
je 0x1000a634
xor eax, eax
movsx eax, al
jmp 0x1000ae96
mov edx, dword [esp]
push dword [0x10043918]
push edx
call fcn.10037d60
mov edx, dword [esp + 8]
push edx
call fcn.10037d60
lea eax, [esp + 0x34]
push eax
call fcn.10037dc0
push 0x19
push dword [esp + 0x34]
call fcn.100357c0
mov dword [esp + 0x34], eax
mov word [esp + 0x60], 9
movzx ebx, word [esp + 0x60]
mov eax, 3
cmp ebx, eax
jl 0x1000a68d
movzx ebx, word [esp + 0x60]
dec ebx
push ebx
pop eax
mov word [esp + 0x64], ax
jmp 0x1000a69a
movzx ebx, word [esp + 0x60]
inc ebx
push ebx
pop eax
mov word [esp + 0x64], ax
movzx ebx, word [esp + 0x64]
push ebx
mov ebx, 0xe
cmp ebx, dword [esp]
jne 0x1000a6b4
add esp, 4
jmp 0x1000ae96
mov ebx, 8
cmp ebx, dword [esp]
jne 0x1000a6cc
movzx eax, word [esp + 0x68]
push eax
pop eax
mov word [esp + 0x64], ax
jmp 0x1000a6e3
mov ebx, 5
cmp ebx, dword [esp]
jne 0x1000a6e3
movzx ebx, word [esp + 0x68]
inc ebx
push ebx
pop eax
mov word [esp + 0x64], ax
pop eax
mov ebx, dword [esp + 0x34]
add ebx, 2
push ebx
call fcn.100377e0
mov dword [esp + 0x38], eax
lea edx, str.lewis
lea ecx, [esp + 0x68]
call fcn.10031008
mov ebx, dword [esp + 0x38]
and ebx, ebx
jne 0x1000a716
xor eax, eax
movsx eax, al
jmp 0x1000ae96
mov word [esp + 0x6c], 0xa
movzx ebx, word [esp + 0x6c]
mov eax, 2
cmp ebx, eax
jl 0x1000a73a
movzx ebx, word [esp + 0x6c]
dec ebx
push ebx
pop eax
mov word [esp + 0x70], ax
jmp 0x1000a747
movzx ebx, word [esp + 0x6c]
inc ebx
push ebx
pop eax
mov word [esp + 0x70], ax
movzx ebx, word [esp + 0x70]
push ebx
mov ebx, 0xa
cmp ebx, dword [esp]
jne 0x1000a761
add esp, 4
jmp 0x1000ae96
mov ebx, 7
cmp ebx, dword [esp]
jne 0x1000a779
movzx eax, word [esp + 0x74]
push eax
pop eax
mov word [esp + 0x70], ax
jmp 0x1000a790
mov ebx, 3
cmp ebx, dword [esp]
jne 0x1000a790
movzx ebx, word [esp + 0x74]
inc ebx
push ebx
pop eax
mov word [esp + 0x70], ax
pop eax
push 0x19
push 0xffffffff
push dword [esp + 0x38]
push dword [esp + 0x44]
call fcn.10037800
lea edx, [0x1003e03e]
lea ecx, [esp + 0x30]
call fcn.10031008
push dword [esp + 0x34]
lea ebp, [esp + 0x2c]
pop eax
mov word [ebp], ax
mov ebx, dword [esp + 0x34]
add ebx, 2
push ebx
pop eax
mov word [ebp + 2], ax
push dword [esp + 0x38]
pop eax
mov dword [ebp + 4], eax
lea ebp, [esp + 0x3c]
mov dword [ebp + 0xc], 0x40
mov dword [ebp], 0x18
lea eax, [esp + 0x28]
push eax
pop eax
mov dword [ebp + 8], eax
lea eax, [esp + 0x3c]
push eax
push 1
lea eax, [esp + 0x20]
push eax
call fcn.100171b9
mov ebx, eax
and ebx, ebx
jne 0x1000a81d
mov ebx, dword [esp + 0x18]
and ebx, ebx
jle 0x1000a81d
mov eax, 1
jmp 0x1000a81f
xor eax, eax
and eax, eax
je 0x1000ada2
push dword [esp + 0x38]
call fcn.10037950
mov dword [esp + 0x38], 0
mov word [esp + 0x74], 4
movzx ebx, word [esp + 0x74]
mov eax, 3
cmp ebx, eax
jl 0x1000a85c
movzx ebx, word [esp + 0x74]
dec ebx
push ebx
pop eax
mov word [esp + 0x78], ax
jmp 0x1000a869
movzx ebx, word [esp + 0x74]
inc ebx
push ebx
pop eax
mov word [esp + 0x78], ax
movzx ebx, word [esp + 0x78]
push ebx
mov ebx, 0x10
cmp ebx, dword [esp]
jne 0x1000a883
add esp, 4
jmp 0x1000ae96
mov ebx, 7
cmp ebx, dword [esp]
jne 0x1000a89b
movzx eax, word [esp + 0x7c]
push eax
pop eax
mov word [esp + 0x78], ax
jmp 0x1000a8b2
mov ebx, 5
cmp ebx, dword [esp]
jne 0x1000a8b2
movzx ebx, word [esp + 0x7c]
inc ebx
push ebx
pop eax
mov word [esp + 0x78], ax
pop eax
mov edx, dword [esp + 8]
xor ecx, ecx
call fcn.100311d0
jne 0x1000ac5c
push 0x19
push dword [esp + 0xc]
call fcn.100357c0
mov dword [esp + 0x20], eax
lea edx, str.treasures
lea ecx, [esp + 0x7c]
call fcn.10031008
mov ebx, dword [esp + 0x20]
add ebx, 2
push ebx
call fcn.100377e0
mov dword [esp + 0x1c], eax
lea edx, str.gloom
lea ecx, [esp + 0x80]
call fcn.10031008
cmp dword [esp + 0x1c], 0
je 0x1000ac5a
push 0x19
push 0xffffffff
push dword [esp + 0x10]
push dword [esp + 0x28]
call fcn.10037800
push dword [esp + 0x20]
lea ebp, [esp + 0x58]
pop eax
mov word [ebp], ax
mov word [esp + 0x84], 1
movzx ebx, word [esp + 0x84]
mov eax, 2
cmp ebx, eax
jl 0x1000a967
movzx ebx, word [esp + 0x84]
dec ebx
push ebx
pop eax
mov word [esp + 0x88], ax
jmp 0x1000a97a
movzx ebx, word [esp + 0x84]
inc ebx
push ebx
pop eax
mov word [esp + 0x88], ax
movzx ebx, word [esp + 0x88]
push ebx
mov ebx, 0x11
cmp ebx, dword [esp]
jne 0x1000a997
add esp, 4
jmp 0x1000ae96
mov ebx, 7
cmp ebx, dword [esp]
jne 0x1000a9b5
movzx eax, word [esp + 0x8c]
push eax
pop eax
mov word [esp + 0x88], ax
jmp 0x1000a9d2
mov ebx, 3
cmp ebx, dword [esp]
jne 0x1000a9d2
movzx ebx, word [esp + 0x8c]
inc ebx
push ebx
pop eax
mov word [esp + 0x88], ax
pop eax
mov ebx, dword [esp + 0x20]
add ebx, 2
push ebx
lea ebp, [esp + 0x58]
pop eax
mov word [ebp + 2], ax
push dword [esp + 0x1c]
pop eax
mov dword [ebp + 4], eax
mov word [esp + 0x8c], 0xa
movzx ebx, word [esp + 0x8c]
mov eax, 4
cmp ebx, eax
jl 0x1000aa1c
movzx ebx, word [esp + 0x8c]
dec ebx
push ebx
pop eax
mov word [esp + 0x90], ax
jmp 0x1000aa2f
movzx ebx, word [esp + 0x8c]
inc ebx
push ebx
pop eax
mov word [esp + 0x90], ax
movzx ebx, word [esp + 0x90]
push ebx
mov ebx, 0xe
cmp ebx, dword [esp]
jne 0x1000aa4c
add esp, 4
jmp 0x1000ae96
mov ebx, 7
cmp ebx, dword [esp]
jne 0x1000aa6a
movzx eax, word [esp + 0x94]
push eax
pop eax
mov word [esp + 0x90], ax
jmp 0x1000aa87
mov ebx, 2
cmp ebx, dword [esp]
jne 0x1000aa87
movzx ebx, word [esp + 0x94]
inc ebx
push ebx
pop eax
mov word [esp + 0x90], ax
pop eax
lea eax, [esp + 0x24]
push eax
push 0
push 0
push 2
lea eax, [esp + 0x64]
push eax
push dword [esp + 0x2c]
call fcn.1000dd34
mov dword [esp + 0x5c], eax
mov ebx, dword [esp + 0x5c]
cmp ebx, 0x80000005
je 0x1000aac8
mov ebx, dword [esp + 0x5c]
cmp ebx, 0xc0000023
je 0x1000aac8
jmp 0x1000aacf
mov eax, 1
jmp 0x1000aad1
xor eax, eax
and eax, eax
jne 0x1000aadf
mov ebx, dword [esp + 0x5c]
and ebx, ebx
je 0x1000aadf
jmp 0x1000aae6
mov eax, 1
jmp 0x1000aae8
xor eax, eax
and eax, eax
je 0x1000ab96
mov byte [esp + 0x14], 1
mov word [esp + 0x94], 3
movzx ebx, word [esp + 0x94]
mov eax, 2
cmp ebx, eax
jl 0x1000ab25
movzx ebx, word [esp + 0x94]
dec ebx
push ebx
pop eax
mov word [esp + 0x98], ax
jmp 0x1000ab38
movzx ebx, word [esp + 0x94]
inc ebx
push ebx
pop eax
mov word [esp + 0x98], ax
movzx ebx, word [esp + 0x98]
push ebx
mov ebx, 0x12
cmp ebx, dword [esp]
jne 0x1000ab55
add esp, 4
jmp 0x1000ae96
mov ebx, 8
cmp ebx, dword [esp]
jne 0x1000ab73
movzx eax, word [esp + 0x9c]
push eax
pop eax
mov word [esp + 0x98], ax
jmp 0x1000ab90
mov ebx, 3
cmp ebx, dword [esp]
jne 0x1000ab90
movzx ebx, word [esp + 0x9c]
inc ebx
push ebx
pop eax
mov word [esp + 0x98], ax
pop eax
jmp 0x1000ac51
mov ebx, dword [esp + 0x24]
and ebx, ebx
jle 0x1000abb5
lea edx, str.jungle
lea ecx, [esp + 0x9c]
call fcn.10031008
mov byte [esp + 0x14], 1
mov word [esp + 0xa0], 4
movzx ebx, word [esp + 0xa0]
mov eax, 3
cmp ebx, eax
jl 0x1000abe5
movzx ebx, word [esp + 0xa0]
dec ebx
push ebx
pop eax
mov word [esp + 0xa4], ax
jmp 0x1000abf8
movzx ebx, word [esp + 0xa0]
inc ebx
push ebx
pop eax
mov word [esp + 0xa4], ax
movzx ebx, word [esp + 0xa4]
push ebx
mov ebx, 0x10
cmp ebx, dword [esp]
jne 0x1000ac15
add esp, 4
jmp 0x1000ae96
mov ebx, 7
cmp ebx, dword [esp]
jne 0x1000ac33
movzx eax, word [esp + 0xa8]
push eax
pop eax
mov word [esp + 0xa4], ax
jmp 0x1000ac50
mov ebx, 2
cmp ebx, dword [esp]
jne 0x1000ac50
movzx ebx, word [esp + 0xa8]
inc ebx
push ebx
pop eax
mov word [esp + 0xa4], ax
pop eax
push dword [esp + 0x1c]
call fcn.10037950
jmp 0x1000ac61
mov byte [esp + 0x14], 1
mov word [esp + 0xa8], 6
movzx ebx, word [esp + 0xa8]
mov eax, 2
cmp ebx, eax
jl 0x1000ac91
movzx ebx, word [esp + 0xa8]
dec ebx
push ebx
pop eax
mov word [esp + 0xac], ax
jmp 0x1000aca4
movzx ebx, word [esp + 0xa8]
inc ebx
push ebx
pop eax
mov word [esp + 0xac], ax
movzx ebx, word [esp + 0xac]
push ebx
mov ebx, 0xb
cmp ebx, dword [esp]
jne 0x1000acc1
add esp, 4
jmp 0x1000ae96
mov ebx, 7
cmp ebx, dword [esp]
jne 0x1000acdf
movzx eax, word [esp + 0xb0]
push eax
pop eax
mov word [esp + 0xac], ax
jmp 0x1000acfc
mov ebx, 2
cmp ebx, dword [esp]
jne 0x1000acfc
movzx ebx, word [esp + 0xb0]
inc ebx
push ebx
pop eax
mov word [esp + 0xac], ax
pop eax
push dword [esp + 0x18]
call fcn.1002f8b7
mov word [esp + 0xb0], 0xa
movzx ebx, word [esp + 0xb0]
mov eax, 5
cmp ebx, eax
jl 0x1000ad36
movzx ebx, word [esp + 0xb0]
dec ebx
push ebx
pop eax
mov word [esp + 0xb4], ax
jmp 0x1000ad49
movzx ebx, word [esp + 0xb0]
inc ebx
push ebx
pop eax
mov word [esp + 0xb4], ax
movzx ebx, word [esp + 0xb4]
push ebx
mov ebx, 0xa
cmp ebx, dword [esp]
jne 0x1000ad66
add esp, 4
jmp 0x1000ae96
mov ebx, 8
cmp ebx, dword [esp]
jne 0x1000ad84
movzx eax, word [esp + 0xb8]
push eax
pop eax
mov word [esp + 0xb4], ax
jmp 0x1000ada1
mov ebx, 3
cmp ebx, dword [esp]
jne 0x1000ada1
movzx ebx, word [esp + 0xb8]
inc ebx
push ebx
pop eax
mov word [esp + 0xb4], ax
pop eax
lea edx, str.become
lea ecx, [esp + 0xb8]
call fcn.10031008
lea edx, str.rivers
lea ecx, [esp + 0xbc]
call fcn.10031008
mov ebx, dword [esp + 0x38]
and ebx, ebx
jle 0x1000add7
push dword [esp + 0x38]
call fcn.10037950
mov dword [esp + 0x18], 0
mov word [esp + 0xc0], 3
movzx ebx, word [esp + 0xc0]
mov eax, 1
cmp ebx, eax
jl 0x1000ae0f
movzx ebx, word [esp + 0xc0]
dec ebx
push ebx
pop eax
mov word [esp + 0xc4], ax
jmp 0x1000ae22
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, 0x12
cmp ebx, dword [esp]
jne 0x1000ae3c
add esp, 4
jmp 0x1000ae96
mov ebx, 8
cmp ebx, dword [esp]
jne 0x1000ae5a
movzx eax, word [esp + 0xc8]
push eax
pop eax
mov word [esp + 0xc4], ax
jmp 0x1000ae77
mov ebx, 2
cmp ebx, dword [esp]
jne 0x1000ae77
movzx ebx, word [esp + 0xc8]
inc ebx
push ebx
pop eax
mov word [esp + 0xc4], ax
pop eax
movsx eax, byte [esp + 0x14]
movsx eax, al
jmp 0x1000ae96
push dword [esp + 0xb8]
call fcn.10037d30
push dword [esp + 0xbc]
call fcn.10037d30
push dword [esp]
call fcn.10037d30
push dword [esp + 0x30]
call fcn.10037d30
push dword [esp + 4]
call fcn.10037d30
push dword [esp + 0x9c]
call fcn.10037d30
push dword [esp + 0x7c]
call fcn.10037d30
push dword [esp + 0x80]
call fcn.10037d30
push dword [esp + 8]
call fcn.10037d30
push dword [esp + 0x68]
call fcn.10037d30
push dword [esp + 0xc8]
call fcn.10037d30
add esp, 0xcc
pop ebx
pop ebp
ret 0xc