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

Disassembly:
sub esp, 0x7c
mov eax, dword [0x68b740]
xor eax, esp
mov dword [esp + 0x78], eax
push ebx
mov ebx, dword [esp + 0x84]
test ebx, ebx
push esi
mov esi, ecx
jle 0x5ae13a
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
call edx
cmp ebx, eax
jge 0x5ae13a
cmp dword [esp + 0x8c], 0
ja 0x5ae13a
cmp dword [esp + 0x90], 0
jl 0x5ae13a
mov ecx, esi
call fcn.005ad7d0
test eax, eax
mov dword [esp + 0x28], eax
jle 0x5ae13a
push ebp
push edi
mov edi, eax
mov eax, dword [0x12c5588]
imul edi, edi, 0x3d4
lea ecx, [edi + eax]
call fcn.0057e5d0
mov ecx, dword [0x12c5588]
push 0x50
lea eax, [esp + 0x3c]
push eax
mov dword [edi + ecx + 4], ebx
mov edx, dword [esi]
mov edx, dword [edx + 0x20]
push str.MapObj
push 3
add ebx, 1
push ebx
mov ecx, esi
call edx
mov ecx, dword [esp + 0x38]
xor eax, eax
cmp ecx, dword [eax*4 + str.MapOBodyBox]
je 0x5adbd8
cmp ecx, dword [eax*4 + 0x683df4]
je 0x5adbc1
cmp ecx, dword [eax*4 + 0x683df8]
je 0x5adbc6
cmp ecx, dword [eax*4 + str.ItemMoneLoopRandLighDoorTrapProp]
je 0x5adbcb
cmp ecx, dword [eax*4 + 0x683e00]
je 0x5adbd0
cmp ecx, dword [eax*4 + 0x683e04]
je 0x5adbd5
add eax, 6
cmp eax, 0xc
jl 0x5adb81
jmp 0x5adbdd
add eax, 1
jmp 0x5adbd8
add eax, 2
jmp 0x5adbd8
add eax, 3
jmp 0x5adbd8
add eax, 4
jmp 0x5adbd8
add eax, 5
cmp eax, 0xc
jl 0x5adbdf
xor eax, eax
mov ecx, dword [0x12c5588]
mov dword [edi + ecx + 8], eax
mov eax, dword [0x12c5588]
mov edx, dword [esi]
mov edx, dword [edx + 0x2c]
lea ecx, [edi + eax + 0x344]
push ecx
push 1
push 8
push ebx
mov ecx, esi
call edx
mov ecx, dword [0x12c5588]
mov eax, dword [esi]
mov eax, dword [eax + 0x2c]
lea edx, [edi + ecx + 0x348]
push edx
push 0
push 9
push ebx
mov ecx, esi
call eax
mov eax, dword [0x12c5588]
mov edx, dword [esi]
mov edx, dword [edx + 0x2c]
lea ecx, [edi + eax + 0x34]
push ecx
push 0
push 7
push ebx
mov ecx, esi
call edx
mov ecx, dword [0x12c5588]
mov eax, dword [esi]
mov eax, dword [eax + 0x20]
push 0x20
lea edx, [edi + ecx + 0x60]
push edx
push 0x63abb8
push 1
push ebx
mov ecx, esi
call eax
mov edx, dword [esi]
mov edx, dword [edx + 0x20]
push 0x50
lea eax, [esp + 0x3c]
push eax
push 0x63abb8
push 4
push ebx
mov ecx, esi
call edx
mov ecx, dword [0x12c5588]
lea eax, [esp + 0x38]
push eax
add ecx, edi
call fcn.0057e280
mov eax, dword [0x12c5588]
mov edx, dword [esi]
mov edx, dword [edx + 0x20]
push 0x50
lea ecx, [edi + eax + 0xe8]
push ecx
push 0x63abb8
push 6
push ebx
mov ecx, esi
call edx
mov ecx, dword [0x12c5588]
mov eax, dword [esi]
mov eax, dword [eax + 0x2c]
lea edx, [edi + ecx + 0x34c]
push edx
push 0
push 0x10
push ebx
mov ecx, esi
call eax
mov edx, dword [esi]
mov eax, dword [0x12c5588]
mov edx, dword [edx + 0x2c]
lea ecx, [edi + eax + 0x350]
push ecx
push 0xff
push 0x11
push ebx
mov ecx, esi
call edx
mov ecx, dword [0x12c5588]
mov eax, dword [esi]
mov eax, dword [eax + 0x2c]
lea edx, [edi + ecx + 0x354]
push edx
push 0xff
push 0x12
push ebx
mov ecx, esi
call eax
mov eax, dword [0x12c5588]
mov edx, dword [esi]
mov edx, dword [edx + 0x2c]
lea ecx, [edi + eax + 0x358]
push ecx
push 0xff
push 0x13
push ebx
mov ecx, esi
call edx
mov ecx, dword [0x12c5588]
mov eax, dword [esi]
mov eax, dword [eax + 0x2c]
lea edx, [edi + ecx + 0x35c]
push edx
push 0xff
push 0x14
push ebx
mov ecx, esi
call eax
mov eax, dword [0x12c5588]
mov edx, dword [esi]
mov edx, dword [edx + 0x2c]
lea ecx, [edi + eax + 0x360]
push ecx
push 0
push 0x15
push ebx
mov ecx, esi
call edx
mov ecx, dword [0x12c5588]
mov eax, dword [esi]
mov eax, dword [eax + 0x20]
push 0x50
lea edx, [edi + ecx + 0x98]
push edx
push 0x63abb8
push 5
push ebx
mov ecx, esi
call eax
mov edx, dword [esi]
mov edx, dword [edx + 0x2c]
lea eax, [esp + 0x18]
push eax
push 1
push 0x16
push ebx
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x2c]
lea ecx, [esp + 0x10]
push ecx
push 1
push 0x18
push ebx
mov ecx, esi
call edx
mov eax, dword [esi]
lea ecx, [esp + 0x14]
push ecx
push 0
mov edx, dword [eax + 0x2c]
push 0x17
push ebx
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x2c]
lea ecx, [esp + 0x1c]
push ecx
push 0
push 0x19
push ebx
mov ecx, esi
call edx
mov ecx, dword [0x12c5588]
mov eax, dword [esi]
mov eax, dword [eax + 0x2c]
lea edx, [edi + ecx + 0x150]
push edx
push 0
push 0x1a
push ebx
mov ecx, esi
call eax
mov eax, dword [0x12c5588]
mov edx, dword [esi]
mov edx, dword [edx + 0x2c]
lea ecx, [edi + eax + 0x15c]
push ecx
push 0
push 0x1b
push ebx
mov ecx, esi
call edx
mov ecx, dword [0x12c5588]
mov eax, dword [esi]
mov eax, dword [eax + 0x2c]
lea edx, [edi + ecx + 0x160]
push edx
push 0
push 0x1c
push ebx
mov ecx, esi
call eax
mov eax, dword [0x12c5588]
lea ecx, [edi + eax + 0x98]
push ecx
lea ecx, [edi + eax + 0x138]
call fcn.005f06b0
mov edx, dword [esp + 0x18]
mov eax, dword [0x12c5588]
push edx
lea ecx, [edi + eax + 0x138]
call fcn.005f06f0
mov ecx, dword [esp + 0x10]
mov edx, dword [0x12c5588]
push ecx
lea ecx, [edi + edx + 0x138]
call fcn.005f0700
mov eax, dword [esp + 0x14]
mov ecx, dword [0x12c5588]
push eax
lea ecx, [edi + ecx + 0x138]
call fcn.005f0400
mov edx, dword [esp + 0x1c]
mov eax, dword [0x12c5588]
push edx
lea ecx, [edi + eax + 0x138]
call fcn.005f0470
mov ecx, dword [0x12c5588]
mov eax, dword [ecx + edi + 0x148]
add ecx, edi
shl eax, 6
cdq
idiv dword [ecx + 0x144]
push eax
call fcn.0057e240
mov eax, dword [0x12c5588]
mov edx, dword [esi]
push 0x50
lea ecx, [edi + eax + 0x1bc]
mov edx, dword [edx + 0x20]
push ecx
lea eax, [edi + eax + 0x98]
push eax
push 0x2c
push ebx
mov ecx, esi
call edx
mov edx, dword [esp + 0x18]
mov eax, dword [esi]
mov eax, dword [eax + 0x2c]
lea ecx, [esp + 0x34]
push ecx
push edx
push 0x2d
push ebx
mov ecx, esi
call eax
mov ecx, dword [esp + 0x10]
mov edx, dword [esi]
mov edx, dword [edx + 0x2c]
lea eax, [esp + 0x20]
push eax
push ecx
push 0x2f
push ebx
mov ecx, esi
call edx
mov edx, dword [esp + 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x2c]
lea ecx, [esp + 0x2c]
push ecx
push edx
push 0x2e
push ebx
mov ecx, esi
call eax
mov ecx, dword [esp + 0x1c]
mov edx, dword [esi]
mov edx, dword [edx + 0x2c]
lea eax, [esp + 0x24]
push eax
push ecx
push 0x30
push ebx
mov ecx, esi
call edx
mov eax, dword [0x12c5588]
mov edx, dword [esi]
mov edx, dword [edx + 0x2c]
lea ecx, [edi + eax + 0x224]
mov eax, dword [edi + eax + 0x150]
push ecx
push eax
push 0x31
push ebx
mov ecx, esi
call edx
mov eax, dword [0x12c5588]
mov edx, dword [esi]
mov edx, dword [edx + 0x2c]
lea ecx, [edi + eax + 0x230]
mov eax, dword [edi + eax + 0x15c]
push ecx
push eax
push 0x32
push ebx
mov ecx, esi
call edx
mov eax, dword [0x12c5588]
mov edx, dword [esi]
mov edx, dword [edx + 0x2c]
lea ecx, [edi + eax + 0x234]
mov eax, dword [edi + eax + 0x160]
push ecx
push eax
push 0x33
push ebx
mov ecx, esi
call edx
mov eax, dword [0x12c5588]
lea ecx, [edi + eax + 0x1bc]
push ecx
lea ecx, [edi + eax + 0x20c]
call fcn.005f06b0
mov edx, dword [esp + 0x34]
mov eax, dword [0x12c5588]
push edx
lea ecx, [edi + eax + 0x20c]
call fcn.005f06f0
mov ecx, dword [esp + 0x20]
mov edx, dword [0x12c5588]
push ecx
lea ecx, [edi + edx + 0x20c]
call fcn.005f0700
mov eax, dword [esp + 0x2c]
mov ecx, dword [0x12c5588]
push eax
lea ecx, [edi + ecx + 0x20c]
call fcn.005f0400
mov edx, dword [esp + 0x24]
mov eax, dword [0x12c5588]
push edx
lea ecx, [edi + eax + 0x20c]
call fcn.005f0470
xor ebp, ebp
mov edx, dword [esi]
mov edx, dword [edx + 0x2c]
lea eax, [esp + 0x28]
push eax
push 0
lea ecx, [ebp + 0x1d]
push ecx
push ebx
mov ecx, esi
call edx
mov eax, dword [0x12c5588]
mov dl, byte [esp + 0x28]
lea ecx, [edi + eax]
mov byte [ecx + ebp + 0x3ac], dl
add ebp, 1
cmp ebp, 0xf
jl 0x5adff6
mov ecx, dword [0x12c5588]
mov eax, dword [esi]
mov eax, dword [eax + 0x2c]
lea edx, [edi + ecx + 0x3cc]
push edx
push 0
push 0x34
push ebx
mov ecx, esi
call eax
mov eax, dword [0x12c5588]
mov edx, dword [esi]
mov edx, dword [edx + 0x2c]
lea ecx, [edi + eax + 0x3bc]
push ecx
push 0
push 0x35
push ebx
mov ecx, esi
call edx
mov ecx, dword [0x12c5588]
mov eax, dword [esi]
mov eax, dword [eax + 0x2c]
lea edx, [edi + ecx + 0x3d0]
push edx
push 0
push 0x36
push ebx
mov ecx, esi
call eax
mov ecx, dword [0x12c5588]
mov ebx, dword [esp + 0x30]
mov eax, dword [esp + 0x94]
mov dword [edi + ecx + 0xc], ebx
mov edx, dword [0x12c5588]
mov dword [edi + edx + 0x14], eax
mov ecx, dword [0x12c5588]
mov eax, dword [esp + 0x98]
mov dword [edi + ecx + 0x18], eax
imul eax, eax, 0x4ac
mov edx, dword [0x12c5588]
mov ecx, dword [esp + 0x9c]
mov dword [edi + edx + 0x1c], ecx
mov edx, dword [0x12c5588]
mov ecx, dword [esp + 0xa0]
mov dword [edi + edx + 0x20], ecx
mov edx, dword [0x12c5588]
mov ecx, dword [esp + 0xa4]
mov dword [edi + edx + 0x24], ecx
mov edx, dword [0x12c5588]
mov ecx, dword [esp + 0xa8]
mov dword [edi + edx + 0x28], ecx
mov edx, dword [0x8e4d00]
mov ecx, dword [edx + 0x2c]
mov edx, dword [eax + ecx + 4]
mov eax, dword [0x12c5588]
push ebx
lea ecx, [esi + 0x88]
mov dword [edi + eax + 0x10], edx
call dword [sym.imp.engine.dll_public:_void___thiscall_KLinkArray::Insert_int_]
push ebx
lea ecx, [esi + 0x94]
call dword [sym.imp.engine.dll_public:_void___thiscall_KLinkArray::Remove_int_]
pop edi
pop ebp
pop esi
mov eax, ebx
pop ebx
mov ecx, dword [esp + 0x78]
xor ecx, esp
call fcn.00612c78
add esp, 0x7c
ret 0x1c
mov ecx, dword [esp + 0x80]
pop esi
pop ebx
xor ecx, esp
or eax, 0xffffffff
call fcn.00612c78
add esp, 0x7c
ret 0x1c