Function at 0x549b20
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x204
mov eax, dword [0x6a73f0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0xff
lea eax, [ebp - 0x203]
mov byte [ebp - 0x204], 0
push 0
push eax
mov ebx, ecx
call sub.MSVCR120.dll_memset
push 0xff
lea eax, [ebp - 0x103]
mov byte [ebp - 0x104], 0
push 0
push eax
call sub.MSVCR120.dll_memset
add esp, 0x18
lea eax, [ebp - 0x204]
push eax
push 0x100
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
lea ecx, [ebp - 0x204]
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x549b90
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 4], eax
lea edx, [ebp - 0x204]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x549bb0
xor ecx, ecx
cmp dword [0x5b15c0], ecx
je 0x54a383
lea esp, [esp]
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x549bd0
lea edi, [ebp - 0x104]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x549bf0
mov al, byte [0x585acc]
lea ecx, [ebp - 0x104]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x549c10
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 8], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x549c30
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x549c40
lea edi, [ebp - 0x104]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x549c60
mov ecx, 5
mov esi, str.ResourceEffectScript
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x104]
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 0x549c80
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0xc], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x549ca0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x549cb0
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x549cd0
mov eax, dword [str.Ini]
mov dword [ecx], eax
mov al, byte [0x59584c]
mov byte [ecx + 4], al
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x549cf2
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x10], eax
lea edx, [ebp - 0x104]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x549d10
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x549d20
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x549d40
mov eax, dword [str.Sound]
mov dword [ecx], eax
mov ax, word [0x595854]
mov word [ecx + 4], ax
mov al, byte [0x595856]
mov byte [ecx + 6], al
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x549d70
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x14], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x549d90
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x549da0
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x549dc0
mov eax, dword [str.Resource]
mov dword [ecx], eax
mov eax, dword [0x59585c]
mov dword [ecx + 4], eax
mov ax, word [0x595860]
mov word [ecx + 8], ax
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x549df0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x18], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x549e10
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x549e20
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x549e40
mov eax, dword [str.BGM]
mov dword [ecx], eax
mov al, byte [0x595868]
mov byte [ecx + 4], al
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x549e62
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x1c], eax
lea edx, [ebp - 0x104]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x549e80
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x549e90
lea edi, [ebp - 0x104]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x549eb0
mov al, byte [0x585acc]
lea ecx, [ebp - 0x104]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x549ed0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x20], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x549ef0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x549f00
lea edi, [ebp - 0x104]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x549f20
mov al, byte [0x585acc]
lea ecx, [ebp - 0x104]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x549f40
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x24], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x549f60
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x549f70
lea edi, [ebp - 0x104]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x549f90
mov al, byte [0x585acc]
lea ecx, [ebp - 0x104]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x549fb0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x28], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x549fd0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x549fe0
lea edi, [ebp - 0x104]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x54a000
mov al, byte [0x585acc]
lea ecx, [ebp - 0x104]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a020
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x2c], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a040
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a050
lea edi, [ebp - 0x104]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x54a070
mov al, byte [0x585acc]
lea ecx, [ebp - 0x104]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a090
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x30], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a0b0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a0c0
lea edi, [ebp - 0x104]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x54a0e0
mov al, byte [0x585acc]
lea ecx, [ebp - 0x104]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a100
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x38], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a120
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a130
lea edi, [ebp - 0x104]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x54a150
mov al, byte [0x585acc]
lea ecx, [ebp - 0x104]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a170
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x3c], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a190
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a1a0
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54a1c0
mov eax, dword [str.ImageMinimap]
mov dword [ecx], eax
mov eax, dword [0x595870]
mov dword [ecx + 4], eax
mov eax, dword [0x595874]
mov dword [ecx + 8], eax
mov ax, word [0x595878]
mov word [ecx + 0xc], ax
mov al, byte [0x59587a]
mov byte [ecx + 0xe], al
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a200
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x34], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a220
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a230
lea edi, [ebp - 0x104]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x54a250
mov al, byte [0x585acc]
lea ecx, [ebp - 0x104]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a270
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x40], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a290
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a2a0
lea edi, [ebp - 0x104]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x54a2c0
mov al, byte [0x585acc]
lea ecx, [ebp - 0x104]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a2e0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x44], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a300
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a310
lea edi, [ebp - 0x104]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x54a330
mov al, byte [0x585acc]
lea ecx, [ebp - 0x104]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a350
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x48], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a370
jmp 0x54abfe
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a383
lea edi, [ebp - 0x104]
dec edi
nop
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x54a3a0
mov al, byte [0x585acc]
lea ecx, [ebp - 0x104]
mov byte [edi], al
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a3c0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 8], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a3e0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a3f0
lea edi, [ebp - 0x104]
dec edi
lea esp, [esp]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x54a410
mov ecx, 5
mov esi, str.ResourceEffectScript
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x104]
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 0x54a430
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0xc], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a450
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a460
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54a480
mov eax, dword [str.Ini]
mov dword [ecx], eax
mov al, byte [0x59584c]
mov byte [ecx + 4], al
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a4a2
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x10], eax
lea edx, [ebp - 0x104]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a4c0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a4d0
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54a4f0
mov eax, dword [str.Sound]
mov dword [ecx], eax
mov ax, word [0x595854]
mov word [ecx + 4], ax
mov al, byte [0x595856]
mov byte [ecx + 6], al
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a520
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x14], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a540
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a550
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54a570
mov eax, dword [str.Resource]
mov dword [ecx], eax
mov eax, dword [0x59585c]
mov dword [ecx + 4], eax
mov ax, word [0x595860]
mov word [ecx + 8], ax
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a5a0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x18], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a5c0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a5d0
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54a5f0
mov eax, dword [str.BGM]
mov dword [ecx], eax
mov al, byte [0x595868]
mov byte [ecx + 4], al
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a612
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x1c], eax
lea edx, [ebp - 0x104]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a630
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a640
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54a660
mov eax, dword [str.3DDataCharacter]
mov dword [ecx], eax
mov eax, dword [0x595880]
mov dword [ecx + 4], eax
mov eax, dword [0x595884]
mov dword [ecx + 8], eax
mov eax, dword [0x595888]
mov dword [ecx + 0xc], eax
mov ax, word [0x59588c]
mov word [ecx + 0x10], ax
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a6a0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x20], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a6c0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a6d0
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54a6f0
mov eax, dword [str.3DDataPet]
mov dword [ecx], eax
mov eax, dword [0x595894]
mov dword [ecx + 4], eax
mov eax, dword [0x595898]
mov dword [ecx + 8], eax
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a720
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x24], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a740
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a750
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54a770
mov eax, dword [str.3DDataMonster]
mov dword [ecx], eax
mov eax, dword [0x5958a0]
mov dword [ecx + 4], eax
mov eax, dword [0x5958a4]
mov dword [ecx + 8], eax
mov eax, dword [0x5958a8]
mov dword [ecx + 0xc], eax
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a7a2
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x28], eax
lea edx, [ebp - 0x104]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a7c0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a7d0
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54a7f0
mov eax, dword [str.3DDataNpc]
mov dword [ecx], eax
mov eax, dword [0x5958b0]
mov dword [ecx + 4], eax
mov eax, dword [0x5958b4]
mov dword [ecx + 8], eax
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a820
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x2c], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a840
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a850
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54a870
mov eax, dword [str.3DDataEffect]
mov dword [ecx], eax
mov eax, dword [0x5958bc]
mov dword [ecx + 4], eax
mov eax, dword [0x5958c0]
mov dword [ecx + 8], eax
mov ax, word [0x5958c4]
mov word [ecx + 0xc], ax
mov al, byte [0x5958c6]
mov byte [ecx + 0xe], al
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a8b0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x30], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a8d0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a8e0
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54a900
mov eax, dword [str.3DDataMap]
mov dword [ecx], eax
mov eax, dword [0x5958cc]
mov dword [ecx + 4], eax
mov eax, dword [0x5958d0]
mov dword [ecx + 8], eax
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a930
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x38], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a950
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a960
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54a980
mov eax, dword [str.3DDataCloud]
mov dword [ecx], eax
mov eax, dword [0x5958d8]
mov dword [ecx + 4], eax
mov eax, dword [0x5958dc]
mov dword [ecx + 8], eax
mov ax, word [0x5958e0]
mov word [ecx + 0xc], ax
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54a9b4
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x3c], eax
lea edx, [ebp - 0x104]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54a9d2
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54a9e2
lea ecx, [ebp - 0x104]
dec ecx
mov edi, edi
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54aa00
mov eax, dword [str.ImageMinimap]
mov dword [ecx], eax
mov eax, dword [0x595870]
mov dword [ecx + 4], eax
mov eax, dword [0x595874]
mov dword [ecx + 8], eax
mov ax, word [0x595878]
mov word [ecx + 0xc], ax
mov al, byte [0x59587a]
mov byte [ecx + 0xe], al
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54aa40
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x34], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54aa60
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54aa70
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54aa90
mov eax, dword [str.3DDataMapObject]
mov dword [ecx], eax
mov eax, dword [0x5958e8]
mov dword [ecx + 4], eax
mov eax, dword [0x5958ec]
mov dword [ecx + 8], eax
mov eax, dword [0x5958f0]
mov dword [ecx + 0xc], eax
mov ax, word [0x5958f4]
mov word [ecx + 0x10], ax
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54aad0
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x40], eax
lea edx, [ebp - 0x104]
mov edi, edi
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54aaf0
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54ab00
lea ecx, [ebp - 0x104]
dec ecx
lea esp, [esp]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54ab20
mov eax, dword [str.3DDataTitan]
mov dword [ecx], eax
mov eax, dword [0x5958fc]
mov dword [ecx + 4], eax
mov eax, dword [0x595900]
mov dword [ecx + 8], eax
mov ax, word [0x595904]
mov word [ecx + 0xc], ax
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54ab54
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x44], eax
lea edx, [ebp - 0x104]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54ab72
xor ecx, ecx
mov al, byte [ebp + ecx - 0x204]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x105], al
test al, al
jne 0x54ab82
lea ecx, [ebp - 0x104]
dec ecx
mov edi, edi
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x54aba0
mov eax, dword [str.3DDataMap2]
mov dword [ecx], eax
mov eax, dword [0x59590c]
mov dword [ecx + 4], eax
mov eax, dword [0x595910]
mov dword [ecx + 8], eax
mov al, byte [0x595914]
mov byte [ecx + 0xc], al
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x54abd2
sub ecx, edx
lea eax, [ecx + 1]
push eax
call fcn.00575b5a
add esp, 4
mov dword [ebx + 0x48], eax
lea edx, [ebp - 0x104]
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [eax], cl
lea eax, [eax + 1]
test cl, cl
jne 0x54abf0
mov ecx, dword [ebp - 4]
pop edi
pop esi
mov dword [ebx + 0x50], 0
xor ecx, ebp
pop ebx
call fcn.00575c70
mov esp, ebp
pop ebp
ret