Function at 0x55ced0
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x200
push ebx
push esi
push edi
push 0xff
lea eax, [ebp - 0x1ff]
mov byte [ebp - 0x200], 0
push 0
push eax
mov ebx, ecx
call sub.MSVCR120.dll_memset
push 0xff
lea eax, [ebp - 0xff]
mov byte [ebp - 0x100], 0
push 0
push eax
call sub.MSVCR120.dll_memset
add esp, 0x18
lea eax, [ebp - 0x200]
push eax
push 0x100
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
lea ecx, [ebp - 0x200]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55cf30
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 4], eax
lea edx, [ebp - 0x200]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55cf50
xor ecx, ecx
cmp dword [0x5c0a5c], ecx
je 0x55d730
lea esp, [esp]
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55cf70
lea edi, [ebp - 0x100]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x55cf90
mov al, byte [0x5947a0]
lea ecx, [ebp - 0x100]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55cfb0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 8], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55cfd0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55cfe0
lea edi, [ebp - 0x100]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x55d000
mov ecx, 5
mov esi, str.ResourceEffectScript
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d020
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0xc], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d040
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d050
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55d070
mov eax, dword [str.Ini]
mov dword [ecx], eax
mov al, byte [0x5a451c]
mov byte [ecx + 4], al
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d092
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x10], eax
lea edx, [ebp - 0x100]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d0b0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d0c0
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55d0e0
mov eax, dword [str.Sound]
mov dword [ecx], eax
mov ax, word [0x5a4524]
mov word [ecx + 4], ax
mov al, byte [0x5a4526]
mov byte [ecx + 6], al
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d110
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x14], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d130
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d140
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55d160
mov eax, dword [str.Resource]
mov dword [ecx], eax
mov eax, dword [0x5a452c]
mov dword [ecx + 4], eax
mov ax, word [0x5a4530]
mov word [ecx + 8], ax
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d190
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x18], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d1b0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d1c0
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55d1e0
mov eax, dword [str.BGM]
mov dword [ecx], eax
mov al, byte [0x5a4538]
mov byte [ecx + 4], al
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d202
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x1c], eax
lea edx, [ebp - 0x100]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d220
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d230
lea edi, [ebp - 0x100]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x55d250
mov al, byte [0x5947a0]
lea ecx, [ebp - 0x100]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d270
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x20], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d290
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d2a0
lea edi, [ebp - 0x100]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x55d2c0
mov al, byte [0x5947a0]
lea ecx, [ebp - 0x100]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d2e0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x24], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d300
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d310
lea edi, [ebp - 0x100]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x55d330
mov al, byte [0x5947a0]
lea ecx, [ebp - 0x100]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d350
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x28], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d370
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d380
lea edi, [ebp - 0x100]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x55d3a0
mov al, byte [0x5947a0]
lea ecx, [ebp - 0x100]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d3c0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x2c], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d3e0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d3f0
lea edi, [ebp - 0x100]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x55d410
mov al, byte [0x5947a0]
lea ecx, [ebp - 0x100]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d430
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x30], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d450
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d460
lea edi, [ebp - 0x100]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x55d480
mov al, byte [0x5947a0]
lea ecx, [ebp - 0x100]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d4a0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x38], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d4c0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d4d0
lea edi, [ebp - 0x100]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x55d4f0
mov al, byte [0x5947a0]
lea ecx, [ebp - 0x100]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d510
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x3c], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d530
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d540
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55d560
mov eax, dword [str.ImageMinimap]
mov dword [ecx], eax
mov eax, dword [0x5a4540]
mov dword [ecx + 4], eax
mov eax, dword [0x5a4544]
mov dword [ecx + 8], eax
mov ax, word [0x5a4548]
mov word [ecx + 0xc], ax
mov al, byte [0x5a454a]
mov byte [ecx + 0xe], al
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d5a0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x34], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d5c0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d5d0
lea edi, [ebp - 0x100]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x55d5f0
mov al, byte [0x5947a0]
lea ecx, [ebp - 0x100]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d610
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x40], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d630
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d640
lea edi, [ebp - 0x100]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x55d660
mov al, byte [0x5947a0]
lea ecx, [ebp - 0x100]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d680
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x44], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d6a0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d6b0
lea edi, [ebp - 0x100]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x55d6d0
mov al, byte [0x5947a0]
lea ecx, [ebp - 0x100]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d6f0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x48], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d710
pop edi
pop esi
mov dword [ebx + 0x50], 0
pop ebx
mov esp, ebp
pop ebp
ret
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d730
lea edi, [ebp - 0x100]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x55d750
mov al, byte [0x5947a0]
lea ecx, [ebp - 0x100]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d770
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 8], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d790
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d7a0
lea edi, [ebp - 0x100]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x55d7c0
mov ecx, 5
mov esi, str.ResourceEffectScript
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d7e0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0xc], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d800
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d810
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55d830
mov eax, dword [str.Ini]
mov dword [ecx], eax
mov al, byte [0x5a451c]
mov byte [ecx + 4], al
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d852
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x10], eax
lea edx, [ebp - 0x100]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d870
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d880
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55d8a0
mov eax, dword [str.Sound]
mov dword [ecx], eax
mov ax, word [0x5a4524]
mov word [ecx + 4], ax
mov al, byte [0x5a4526]
mov byte [ecx + 6], al
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d8d0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x14], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d8f0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d900
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55d920
mov eax, dword [str.Resource]
mov dword [ecx], eax
mov eax, dword [0x5a452c]
mov dword [ecx + 4], eax
mov ax, word [0x5a4530]
mov word [ecx + 8], ax
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d950
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x18], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d970
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d980
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55d9a0
mov eax, dword [str.BGM]
mov dword [ecx], eax
mov al, byte [0x5a4538]
mov byte [ecx + 4], al
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55d9c2
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x1c], eax
lea edx, [ebp - 0x100]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55d9e0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55d9f0
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55da10
mov eax, dword [str.3DDataCharacter]
mov dword [ecx], eax
mov eax, dword [0x5a4550]
mov dword [ecx + 4], eax
mov eax, dword [0x5a4554]
mov dword [ecx + 8], eax
mov eax, dword [0x5a4558]
mov dword [ecx + 0xc], eax
mov ax, word [0x5a455c]
mov word [ecx + 0x10], ax
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55da50
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x20], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55da70
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55da80
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55daa0
mov eax, dword [str.3DDataPet]
mov dword [ecx], eax
mov eax, dword [0x5a4564]
mov dword [ecx + 4], eax
mov eax, dword [0x5a4568]
mov dword [ecx + 8], eax
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55dad0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x24], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55daf0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55db00
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55db20
mov eax, dword [str.3DDataMonster]
mov dword [ecx], eax
mov eax, dword [0x5a4570]
mov dword [ecx + 4], eax
mov eax, dword [0x5a4574]
mov dword [ecx + 8], eax
mov eax, dword [0x5a4578]
mov dword [ecx + 0xc], eax
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55db52
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x28], eax
lea edx, [ebp - 0x100]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55db70
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55db80
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55dba0
mov eax, dword [str.3DDataNpc]
mov dword [ecx], eax
mov eax, dword [0x5a4580]
mov dword [ecx + 4], eax
mov eax, dword [0x5a4584]
mov dword [ecx + 8], eax
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55dbd0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x2c], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55dbf0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55dc00
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55dc20
mov eax, dword [str.3DDataEffect]
mov dword [ecx], eax
mov eax, dword [0x5a458c]
mov dword [ecx + 4], eax
mov eax, dword [0x5a4590]
mov dword [ecx + 8], eax
mov ax, word [0x5a4594]
mov word [ecx + 0xc], ax
mov al, byte [0x5a4596]
mov byte [ecx + 0xe], al
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55dc60
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x30], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55dc80
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55dc90
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55dcb0
mov eax, dword [str.3DDataMap]
mov dword [ecx], eax
mov eax, dword [0x5a459c]
mov dword [ecx + 4], eax
mov eax, dword [0x5a45a0]
mov dword [ecx + 8], eax
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55dce0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x38], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55dd00
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55dd10
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55dd30
mov eax, dword [str.3DDataCloud]
mov dword [ecx], eax
mov eax, dword [0x5a45a8]
mov dword [ecx + 4], eax
mov eax, dword [0x5a45ac]
mov dword [ecx + 8], eax
mov ax, word [0x5a45b0]
mov word [ecx + 0xc], ax
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55dd64
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x3c], eax
lea edx, [ebp - 0x100]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55dd82
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55dd92
lea ecx, [ebp - 0x100]
dec ecx
mov edi, edi
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55ddb0
mov eax, dword [str.ImageMinimap]
mov dword [ecx], eax
mov eax, dword [0x5a4540]
mov dword [ecx + 4], eax
mov eax, dword [0x5a4544]
mov dword [ecx + 8], eax
mov ax, word [0x5a4548]
mov word [ecx + 0xc], ax
mov al, byte [0x5a454a]
mov byte [ecx + 0xe], al
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55ddf0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x34], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55de10
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55de20
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55de40
mov eax, dword [str.3DDataMapObject]
mov dword [ecx], eax
mov eax, dword [0x5a45b8]
mov dword [ecx + 4], eax
mov eax, dword [0x5a45bc]
mov dword [ecx + 8], eax
mov eax, dword [0x5a45c0]
mov dword [ecx + 0xc], eax
mov ax, word [0x5a45c4]
mov word [ecx + 0x10], ax
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55de80
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x40], eax
lea edx, [ebp - 0x100]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55dea0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55deb0
lea ecx, [ebp - 0x100]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55ded0
mov eax, dword [str.3DDataTitan]
mov dword [ecx], eax
mov eax, dword [0x5a45cc]
mov dword [ecx + 4], eax
mov eax, dword [0x5a45d0]
mov dword [ecx + 8], eax
mov ax, word [0x5a45d4]
mov word [ecx + 0xc], ax
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55df04
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x44], eax
lea edx, [ebp - 0x100]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55df22
xor ecx, ecx
mov al, byte [ebp + ecx - 0x200]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x101], al
test al, al
jne 0x55df32
lea ecx, [ebp - 0x100]
dec ecx
mov edi, edi
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x55df50
mov eax, dword [str.3DDataMap2]
mov dword [ecx], eax
mov eax, dword [0x5a45dc]
mov dword [ecx + 4], eax
mov eax, dword [0x5a45e0]
mov dword [ecx + 8], eax
mov al, byte [0x5a45e4]
mov byte [ecx + 0xc], al
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x55df82
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.0058374e
add esp, 4
mov dword [ebx + 0x48], eax
lea edx, [ebp - 0x100]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x55dfa0
pop edi
pop esi
mov dword [ebx + 0x50], 0
pop ebx
mov esp, ebp
pop ebp
ret