Function at 0x45a1e0
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x208
mov eax, dword [0x6ac30c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
xor ebx, ebx
push 0xff
lea eax, [ebp - 0x203]
mov esi, ecx
push ebx
push eax
mov dword [ebp - 0x208], esi
mov byte [ebp - 0x204], bl
call fcn.00599ee0
push 0xff
lea ecx, [ebp - 0x103]
push ebx
push ecx
mov byte [ebp - 0x104], bl
call fcn.00599ee0
add esp, 0x18
lea edx, [ebp - 0x204]
push edx
push 0x100
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
lea eax, [ebp - 0x204]
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a250
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 4], eax
lea ecx, [ebp - 0x204]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a270
xor eax, eax
cmp dword [0x60e054], ebx
je 0x45aa50
jmp 0x45a290
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a290
lea edi, [ebp - 0x104]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x45a2b0
mov al, byte [0x5cd755]
mov byte [edi], al
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a2c8
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 8], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a2e6
xor eax, eax
jmp 0x45a300
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a300
lea edi, [ebp - 0x104]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x45a320
mov ecx, 5
mov esi, str.ResourceEffectScript
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea eax, [ebp - 0x104]
movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a340
sub eax, edx
inc eax
push eax
call fcn.00599f65
mov esi, dword [ebp - 0x208]
add esp, 4
mov dword [esi + 0xc], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a364
xor eax, eax
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a370
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45a390
mov ecx, dword [str.Ini]
mov dl, byte [0x5cfad0]
mov dword [eax], ecx
mov byte [eax + 4], dl
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a3b2
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x10], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a3d0
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a3e0
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45a400
mov ecx, dword [str.Sound]
mov dx, word [0x5cfac8]
mov dword [eax], ecx
mov cl, byte [0x5cfaca]
mov word [eax + 4], dx
mov byte [eax + 6], cl
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a430
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x14], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a450
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a460
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45a480
mov edx, dword [str.Resource]
mov ecx, dword [0x5cfabc]
mov dword [eax], edx
mov dx, word [0x5cfac0]
mov dword [eax + 4], ecx
mov word [eax + 8], dx
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a4b0
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x18], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a4d0
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a4e0
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45a500
mov ecx, dword [0x5cfab0]
mov dl, byte [0x5cfab4]
mov dword [eax], ecx
mov byte [eax + 4], dl
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a522
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x1c], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a540
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a550
lea edi, [ebp - 0x104]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x45a570
mov al, byte [0x5cd755]
mov byte [edi], al
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a588
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x20], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a5a6
xor eax, eax
jmp 0x45a5c0
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a5c0
lea edi, [ebp - 0x104]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x45a5e0
mov cl, byte [0x5cd755]
lea eax, [ebp - 0x104]
mov byte [edi], cl
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a600
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x24], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a620
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a630
lea edi, [ebp - 0x104]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x45a650
mov dl, byte [0x5cd755]
lea eax, [ebp - 0x104]
mov byte [edi], dl
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a670
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x28], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a690
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a6a0
lea edi, [ebp - 0x104]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x45a6c0
mov al, byte [0x5cd755]
mov byte [edi], al
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a6d8
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x2c], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a6f6
xor eax, eax
jmp 0x45a710
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a710
lea edi, [ebp - 0x104]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x45a730
mov cl, byte [0x5cd755]
lea eax, [ebp - 0x104]
mov byte [edi], cl
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a750
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x30], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a770
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a780
lea edi, [ebp - 0x104]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x45a7a0
mov dl, byte [0x5cd755]
lea eax, [ebp - 0x104]
mov byte [edi], dl
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a7c0
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x38], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a7e0
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a7f0
lea edi, [ebp - 0x104]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x45a810
mov al, byte [0x5cd755]
mov byte [edi], al
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a828
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x3c], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a846
xor eax, eax
jmp 0x45a860
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a860
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45a880
mov ecx, dword [str.ImageMinimap]
mov edx, dword [0x5cfaa4]
mov dword [eax], ecx
mov ecx, dword [0x5cfaa8]
mov dword [eax + 4], edx
mov dx, word [0x5cfaac]
mov dword [eax + 8], ecx
mov cl, byte [0x5cfaae]
mov word [eax + 0xc], dx
mov byte [eax + 0xe], cl
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a8c0
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x34], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a8e0
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a8f0
lea edi, [ebp - 0x104]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x45a910
mov dl, byte [0x5cd755]
lea eax, [ebp - 0x104]
mov byte [edi], dl
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a930
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x40], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a950
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a960
lea edi, [ebp - 0x104]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x45a980
mov al, byte [0x5cd755]
mov byte [edi], al
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45a998
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x44], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45a9b6
xor eax, eax
jmp 0x45a9d0
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45a9d0
lea edi, [ebp - 0x104]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x45a9f0
mov cl, byte [0x5cd755]
lea eax, [ebp - 0x104]
mov byte [edi], cl
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45aa10
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x48], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45aa30
pop edi
mov dword [esi + 0x50], ebx
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00599821
mov esp, ebp
pop ebp
ret
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45aa50
lea edi, [ebp - 0x104]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x45aa70
mov dl, byte [0x5cd755]
lea eax, [ebp - 0x104]
mov byte [edi], dl
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45aa90
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 8], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45aab0
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45aac0
lea edi, [ebp - 0x104]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x45aae0
mov ecx, 5
mov esi, str.ResourceEffectScript
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea eax, [ebp - 0x104]
movsb byte es:[edi], byte [esi]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45ab00
sub eax, edx
inc eax
push eax
call fcn.00599f65
mov esi, dword [ebp - 0x208]
add esp, 4
mov dword [esi + 0xc], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45ab24
xor eax, eax
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45ab30
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45ab50
mov ecx, dword [str.Ini]
mov dl, byte [0x5cfad0]
mov dword [eax], ecx
mov byte [eax + 4], dl
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45ab72
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x10], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45ab90
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45aba0
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45abc0
mov ecx, dword [str.Sound]
mov dx, word [0x5cfac8]
mov dword [eax], ecx
mov cl, byte [0x5cfaca]
mov word [eax + 4], dx
mov byte [eax + 6], cl
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45abf0
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x14], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45ac10
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45ac20
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45ac40
mov edx, dword [str.Resource]
mov ecx, dword [0x5cfabc]
mov dword [eax], edx
mov dx, word [0x5cfac0]
mov dword [eax + 4], ecx
mov word [eax + 8], dx
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45ac70
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x18], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45ac90
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45aca0
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45acc0
mov ecx, dword [0x5cfab0]
mov dl, byte [0x5cfab4]
mov dword [eax], ecx
mov byte [eax + 4], dl
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45ace2
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x1c], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45ad00
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45ad10
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45ad30
mov ecx, dword [str.3DDataCharacter]
mov edx, dword [0x5cfa90]
mov dword [eax], ecx
mov ecx, dword [0x5cfa94]
mov dword [eax + 4], edx
mov edx, dword [0x5cfa98]
mov dword [eax + 8], ecx
mov cx, word [0x5cfa9c]
mov dword [eax + 0xc], edx
mov word [eax + 0x10], cx
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45ad70
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x20], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45ad90
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45ada0
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45adc0
mov edx, dword [str.3DDataPet]
mov ecx, dword [0x5cfa84]
mov dword [eax], edx
mov edx, dword [0x5cfa88]
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
jmp 0x45adf0
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45adf0
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x24], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45ae10
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45ae20
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45ae40
mov ecx, dword [str.3DDataMonster]
mov edx, dword [0x5cfa74]
mov dword [eax], ecx
mov ecx, dword [0x5cfa78]
mov dword [eax + 4], edx
mov edx, dword [0x5cfa7c]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45ae74
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x28], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45ae92
xor eax, eax
mov edi, edi
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45aea0
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45aec0
mov ecx, dword [str.3DDataNpc]
mov edx, dword [0x5cfa68]
mov dword [eax], ecx
mov ecx, dword [0x5cfa6c]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
jmp 0x45aef0
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45aef0
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x2c], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45af10
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45af20
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45af40
mov edx, dword [str.3DDataEffect]
mov ecx, dword [0x5cfa58]
mov dword [eax], edx
mov edx, dword [0x5cfa5c]
mov dword [eax + 4], ecx
mov cx, word [0x5cfa60]
mov dword [eax + 8], edx
mov dl, byte [0x5cfa62]
mov word [eax + 0xc], cx
mov byte [eax + 0xe], dl
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45af80
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x30], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45afa0
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45afb0
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45afd0
mov ecx, dword [str.3DDataMap]
mov edx, dword [0x5cfa4c]
mov dword [eax], ecx
mov ecx, dword [0x5cfa50]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
jmp 0x45b000
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45b000
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x38], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45b020
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45b030
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45b050
mov edx, dword [str.3DDataCloud]
mov ecx, dword [0x5cfa3c]
mov dword [eax], edx
mov edx, dword [0x5cfa40]
mov dword [eax + 4], ecx
mov cx, word [0x5cfa44]
mov dword [eax + 8], edx
mov word [eax + 0xc], cx
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45b086
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x3c], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45b0a4
xor eax, eax
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45b0b0
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45b0d0
mov edx, dword [str.ImageMinimap]
mov ecx, dword [0x5cfaa4]
mov dword [eax], edx
mov edx, dword [0x5cfaa8]
mov dword [eax + 4], ecx
mov cx, word [0x5cfaac]
mov dword [eax + 8], edx
mov dl, byte [0x5cfaae]
mov word [eax + 0xc], cx
mov byte [eax + 0xe], dl
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45b110
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x34], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45b130
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45b140
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45b160
mov ecx, dword [str.3DDataMapObject]
mov edx, dword [0x5cfa28]
mov dword [eax], ecx
mov ecx, dword [0x5cfa2c]
mov dword [eax + 4], edx
mov edx, dword [0x5cfa30]
mov dword [eax + 8], ecx
mov cx, word [0x5cfa34]
mov dword [eax + 0xc], edx
mov word [eax + 0x10], cx
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45b1a0
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x40], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov edi, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45b1c0
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45b1d0
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45b1f0
mov edx, dword [str.3DDataTitan]
mov ecx, dword [0x5cfa18]
mov dword [eax], edx
mov edx, dword [0x5cfa1c]
mov dword [eax + 4], ecx
mov cx, word [0x5cfa20]
mov dword [eax + 8], edx
mov word [eax + 0xc], cx
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45b226
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x44], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45b244
xor eax, eax
mov cl, byte [ebp + eax - 0x204]
mov byte [ebp + eax - 0x104], cl
inc eax
cmp cl, bl
jne 0x45b250
lea eax, [ebp - 0x104]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x45b270
mov edx, dword [str.3DDataMap2]
mov ecx, dword [0x5cfa08]
mov dword [eax], edx
mov edx, dword [0x5cfa0c]
mov dword [eax + 4], ecx
mov cl, byte [0x5cfa10]
mov dword [eax + 8], edx
mov byte [eax + 0xc], cl
lea eax, [ebp - 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45b2a4
sub eax, edx
inc eax
push eax
call fcn.00599f65
add esp, 4
mov dword [esi + 0x48], eax
lea ecx, [ebp - 0x104]
mov edx, eax
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x45b2c2
mov ecx, dword [ebp - 4]
pop edi
mov dword [esi + 0x50], ebx
pop esi
xor ecx, ebp
pop ebx
call fcn.00599821
mov esp, ebp
pop ebp
ret