Function at 0x6c25a6a0
Capabilities:
Resolve function by parsing pe exports
Write file on windows

Disassembly:
push ebp
push edi
push esi
push ebx
push eax
mov eax, 0x1788
call fcn.6c2d9950
sub esp, eax
mov eax, dword [esp + 0x1788]
mov ebp, eax
mov ebx, edx
mov esi, ecx
lea eax, [esp + 0x1778]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
lea eax, [esp + 0x1774]
mov dword [esp + 4], eax
mov dword [esp], 0x6c487500
call fcn.6c268820
mov dword [esp], 0x6c487500
call fcn.6c26b600
mov dword [esp + 0x60], eax
mov dword [esp], 0x6c487500
call fcn.6c2691a0
mov dword [esp + 0x5c], eax
mov ebx, dword [ebx + 0xc]
mov dword [esp + 0x54], ebx
mov ecx, 0x6c369837
mov edx, str.library_materials
mov eax, ebp
call fcn.6c25887c
mov dword [esp], esi
call fcn.6c265f58
mov dword [esp + 8], eax
mov dword [esp + 4], str.model_08x
lea eax, [esp + 0x1474]
mov dword [esp], eax
call sub.msvcrt.dll_sprintf
mov eax, dword [0x6c483044]
test eax, eax
jne 0x6c25a8be
cmp dword [esp + 0x1778], 1
jle 0x6c25a8be
mov ebx, 1
lea edx, [esp + 0x74]
mov esi, dword [esp + 0x54]
mov edi, edx
jmp 0x6c25a819
mov eax, dword [0x6c483ea4]
test eax, eax
jne 0x6c25a794
mov dword [esp + 4], 4
mov dword [esp], str.name
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483ea4], eax
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [esi + ebx*4]
mov dword [esp], eax
call sub.msvcrt_ruby200.dll_rb_funcall
add eax, 8
mov dword [esp + 4], eax
mov dword [esp], edi
call sub.msvcrt.dll_strcpy
mov eax, edi
call fcn.6c258a84
mov dword [esp + 8], edi
mov dword [esp + 4], ebx
mov dword [esp], str._id_MAT_d__name__s_
call fcn.6c259dec
mov ecx, eax
mov edx, str.material
mov eax, ebp
call fcn.6c25887c
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 0x6c32f1a0
mov dword [esp + 4], str._s_instance_effect_url_EFFECT_d_____n
mov dword [esp], ebp
call sub.msvcrt.dll_fprintf
mov edx, str.material
mov eax, ebp
call fcn.6c2588ec
inc ebx
cmp dword [esp + 0x1778], ebx
jle 0x6c25a8be
mov edx, dword [esi + ebx*4]
cmp edx, 4
je 0x6c25a8ac
mov eax, dword [0x6c483ea0]
test eax, eax
je 0x6c25a88e
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov dword [esp], edx
call sub.msvcrt_ruby200.dll_rb_funcall
mov eax, dword [eax]
test ah, 0x20
je 0x6c25a772
mov eax, dword [0x6c483ea8]
test eax, eax
jne 0x6c25a86f
mov dword [esp + 4], 4
mov dword [esp], str.name
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483ea8], eax
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [esi + ebx*4]
mov dword [esp], eax
call sub.msvcrt_ruby200.dll_rb_funcall
mov eax, dword [eax + 0xc]
jmp 0x6c25a7ae
mov dword [esp + 4], 4
mov dword [esp], str.name
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483ea0], eax
mov edx, dword [esi + ebx*4]
jmp 0x6c25a82e
mov dword [edi], 0x61666564
mov dword [edi + 4], 0x746c75
jmp 0x6c25a7c1
mov eax, dword [esp + 0x1774]
test eax, eax
jle 0x6c25ae35
mov eax, dword [esp + 0x60]
mov dword [esp + 0x50], eax
mov dword [esp + 0x40], 0
lea ebx, [esp + 0x74]
mov dword [esp + 0x44], ebx
lea ebx, [esp + 0x177c]
mov dword [esp + 0x68], ebx
mov ebx, dword [esp + 0x40]
mov dword [esp + 4], ebx
mov dword [esp], 0x6c487500
call fcn.6c2691d8
mov ebx, eax
mov eax, dword [esp + 0x54]
lea esi, [eax + ebx*4]
mov edx, dword [esi]
cmp edx, 4
je 0x6c25b3ab
mov eax, dword [0x6c483eac]
test eax, eax
je 0x6c25b352
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov dword [esp], edx
call sub.msvcrt_ruby200.dll_rb_funcall
mov eax, dword [eax]
test ah, 0x20
jne 0x6c25b32b
mov eax, dword [0x6c483eb0]
test eax, eax
je 0x6c25b38d
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [esi]
mov dword [esp], eax
call sub.msvcrt_ruby200.dll_rb_funcall
add eax, 8
mov dword [esp + 4], eax
mov edx, dword [esp + 0x44]
mov dword [esp], edx
call sub.msvcrt.dll_strcpy
mov eax, dword [esp + 0x44]
call fcn.6c258a84
cmp ebx, 1
je 0x6c25aa4f
mov eax, dword [esp + 0x44]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], str._id_GRPMAT_d__name__s_
call fcn.6c259dec
mov ecx, eax
mov edx, str.material
mov eax, ebp
call fcn.6c25887c
mov dword [esp + 4], ebx
mov dword [esp], str._url_GRPEFFECT_d_
call fcn.6c259dec
mov ecx, eax
mov edx, str.instance_effect
mov eax, ebp
call fcn.6c25887c
mov dword [esp + 4], ebx
mov dword [esp], str._ref_LMAPSURF_d_
call fcn.6c259dec
mov ecx, eax
mov edx, str.setparam
mov eax, ebp
call fcn.6c25887c
mov ecx, str._type_2D_
mov edx, str.surface
mov eax, ebp
call fcn.6c25887c
mov edx, dword [esp + 0x40]
mov dword [esp + 0xc], edx
mov dword [esp + 8], 0x6c32f1a0
mov dword [esp + 4], str._s_init_from_LMAPIMG_d__init_from__n
mov dword [esp], ebp
call sub.msvcrt.dll_fprintf
mov edx, str.surface
mov eax, ebp
call fcn.6c2588ec
mov edx, str.setparam
mov eax, ebp
call fcn.6c2588ec
mov edx, str.instance_effect
mov eax, ebp
call fcn.6c2588ec
mov edx, str.material
mov eax, ebp
call fcn.6c2588ec
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x40]
mov dword [esp + 0x10], eax
lea edx, [esp + 0x1474]
mov dword [esp + 0xc], edx
mov dword [esp + 8], ebx
mov dword [esp + 4], eax
mov dword [esp], str._id_LIGHTMAP_d_MAT_d__name__s_unit_d__s_
call fcn.6c259dec
mov ecx, eax
mov edx, str.material
mov eax, ebp
call fcn.6c25887c
mov edi, dword [0x6c483044]
test edi, edi
jne 0x6c25b306
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 0x6c32f1a0
mov dword [esp + 4], str._s_instance_effect_url_EFFECT_d_____n
mov dword [esp], ebp
call sub.msvcrt.dll_fprintf
mov edx, str.material
mov eax, ebp
call fcn.6c2588ec
mov ebx, dword [esp + 0x68]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x50]
mov eax, dword [ebx + 4]
mov dword [esp + 4], eax
mov dword [esp], 0x6c487500
call fcn.6c26a620
mov dword [esp], 0x6c487500
call fcn.6c26a610
mov edx, dword [ebx + 4]
shl edx, 4
add edx, eax
mov dword [esp + 0x58], edx
mov eax, dword [edx + 8]
mov edx, dword [eax + 0x70]
mov esi, dword [edx + 4]
test esi, esi
je 0x6c25adb3
mov ecx, dword [edx]
mov dword [esp + 0x4c], 0
imul ecx, dword [esp + 0x4c]
mov ebx, dword [edx + 0xc]
add ecx, ebx
mov dword [esp + 0x48], ecx
mov edx, dword [eax + 0x64]
mov ebx, ecx
mov ecx, dword [ecx]
mov ebx, dword [ebx + 4]
test ebx, ebx
jle 0x6c25ad3e
lea esi, [edx + ecx*8]
xor edi, edi
jmp 0x6c25abee
mov dword [esp + 4], ebx
mov dword [esp], str._url_EFFECT_d_
call fcn.6c259dec
mov ecx, eax
mov edx, str.instance_effect
mov eax, ebp
call fcn.6c25887c
mov dword [esp + 4], ebx
mov dword [esp], str._ref_LMAPSURF_d_
call fcn.6c259dec
mov ecx, eax
mov edx, str.setparam
mov eax, ebp
call fcn.6c25887c
mov ecx, str._type_2D_
mov edx, str.surface
mov eax, ebp
call fcn.6c25887c
mov ebx, dword [esp + 0x40]
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 0x6c32f1a0
mov dword [esp + 4], str._s_init_from_LMAPIMG_d__init_from__n
mov dword [esp], ebp
call sub.msvcrt.dll_fprintf
mov edx, str.surface
mov eax, ebp
call fcn.6c2588ec
mov edx, str.setparam
mov eax, ebp
call fcn.6c2588ec
mov edx, str.instance_effect
mov eax, ebp
call fcn.6c2588ec
mov edx, str.material
mov eax, ebp
call fcn.6c2588ec
add edi, dword [esi + 4]
add esi, 8
mov ebx, dword [esp + 0x48]
cmp dword [ebx + 4], edi
jle 0x6c25ad37
mov ebx, dword [esi]
test ebx, ebx
je 0x6c25abdb
mov eax, dword [esp + 0x54]
lea edx, [eax + ebx*4]
mov ecx, dword [edx]
cmp ecx, 4
je 0x6c25ad55
mov eax, dword [0x6c483eb8]
test eax, eax
je 0x6c25ad0f
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 0x38], edx
call sub.msvcrt_ruby200.dll_rb_funcall
mov eax, dword [eax]
test ah, 0x20
mov edx, dword [esp + 0x38]
jne 0x6c25ace8
mov eax, dword [0x6c483ebc]
test eax, eax
je 0x6c25ad91
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [edx]
mov dword [esp], eax
call sub.msvcrt_ruby200.dll_rb_funcall
add eax, 8
mov dword [esp + 4], eax
mov edx, dword [esp + 0x44]
mov dword [esp], edx
call sub.msvcrt.dll_strcpy
mov eax, dword [esp + 0x44]
call fcn.6c258a84
mov eax, dword [esp + 0x44]
mov dword [esp + 0x14], eax
mov edx, dword [esp + 0x40]
mov dword [esp + 0x10], edx
lea ecx, [esp + 0x1474]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], ebx
mov dword [esp + 4], edx
mov dword [esp], str._id_LIGHTMAP_d_MAT_d__name__s_unit_d__s_
call fcn.6c259dec
mov ecx, eax
mov edx, str.material
mov eax, ebp
call fcn.6c25887c
mov eax, dword [0x6c483044]
test eax, eax
je 0x6c25ab3e
mov ebx, dword [esp + 0x40]
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 0x6c32f1a0
mov dword [esp + 4], str._s_instance_effect_url_LMAPEFFECT_d_____n
mov dword [esp], ebp
call sub.msvcrt.dll_fprintf
jmp 0x6c25abcf
mov eax, dword [0x6c483ec0]
test eax, eax
je 0x6c25ad6b
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [edx]
mov dword [esp], eax
call sub.msvcrt_ruby200.dll_rb_funcall
mov eax, dword [eax + 0xc]
jmp 0x6c25ac60
mov dword [esp + 4], 4
mov dword [esp], str.name
mov dword [esp + 0x38], edx
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483eb8], eax
mov edx, dword [esp + 0x38]
mov ecx, dword [edx]
jmp 0x6c25ac13
mov ebx, dword [esp + 0x58]
mov eax, dword [ebx + 8]
inc dword [esp + 0x4c]
mov edx, dword [eax + 0x70]
mov ebx, dword [esp + 0x4c]
cmp dword [edx + 4], ebx
jbe 0x6c25adb3
mov ecx, dword [edx]
jmp 0x6c25ab14
mov ecx, dword [esp + 0x44]
mov dword [ecx], 0x61666564
mov dword [ecx + 4], 0x746c75
jmp 0x6c25ac79
mov dword [esp + 4], 4
mov dword [esp], str.name
mov dword [esp + 0x38], edx
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483ec0], eax
mov edx, dword [esp + 0x38]
jmp 0x6c25acf1
mov dword [esp + 4], 4
mov dword [esp], str.name
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483ebc], eax
mov edx, dword [esp + 0x38]
jmp 0x6c25ac47
inc dword [esp + 0x40]
mov eax, dword [esp + 0x1774]
add dword [esp + 0x50], 0x130
cmp eax, dword [esp + 0x40]
jg 0x6c25a8f0
test eax, eax
jle 0x6c25ae35
xor ebx, ebx
mov dword [esp + 0xc], ebx
lea eax, [esp + 0x1474]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], str._id_LIGHTMAP_d__name__s_unit_d_
call fcn.6c259dec
mov ecx, eax
mov edx, str.material
mov eax, ebp
call fcn.6c25887c
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 0x6c32f1a0
mov dword [esp + 4], str._s_instance_effect_url_LMAPEFFECT_d_____n
mov dword [esp], ebp
call sub.msvcrt.dll_fprintf
mov edx, str.material
mov eax, ebp
call fcn.6c2588ec
inc ebx
cmp dword [esp + 0x1774], ebx
jg 0x6c25add6
mov edx, str.library_materials
mov eax, ebp
call fcn.6c2588ec
mov dword [esp + 8], 0x6c483060
mov dword [esp + 4], str._smaterials.cs
lea ebx, [esp + 0x474]
mov dword [esp], ebx
call sub.msvcrt.dll_sprintf
mov dword [esp + 4], 0x6c369e09
mov dword [esp], ebx
call fcn.6c21008c
mov dword [esp + 0x40], eax
mov word [esp + 0x874], 0x2f2e
mov byte [esp + 0x876], 0
mov edi, dword [esp + 0x1774]
test edi, edi
jle 0x6c25b822
mov dword [esp + 0x4c], 0
lea ebx, [esp + 0x177c]
mov dword [esp + 0x68], ebx
mov ebx, dword [esp + 0x68]
mov dword [esp + 8], ebx
mov edx, dword [esp + 0x60]
mov eax, dword [edx + 4]
mov dword [esp + 4], eax
mov dword [esp], 0x6c487500
call fcn.6c26a620
mov dword [esp], 0x6c487500
call fcn.6c26a610
mov ebx, dword [esp + 0x60]
mov edx, dword [ebx + 4]
shl edx, 4
add edx, eax
mov dword [esp + 0x6c], edx
mov eax, dword [edx + 8]
mov edx, dword [eax + 0x70]
mov esi, dword [edx + 4]
test esi, esi
je 0x6c25b805
mov ecx, dword [edx]
mov dword [esp + 0x64], 0
imul ecx, dword [esp + 0x64]
mov ebx, dword [edx + 0xc]
add ecx, ebx
mov dword [esp + 0x58], ecx
mov edx, dword [eax + 0x64]
mov ebx, ecx
mov ecx, dword [ecx]
mov ebx, dword [ebx + 4]
test ebx, ebx
jle 0x6c25b2eb
lea ecx, [edx + ecx*8]
mov dword [esp + 0x44], ecx
mov dword [esp + 0x50], 0
lea eax, [esp + 0x1074]
mov dword [esp + 0x3c], eax
mov edx, dword [esp + 0x44]
mov edx, dword [edx]
mov dword [esp + 0x48], edx
mov ecx, dword [esp + 0x54]
lea ebx, [ecx + edx*4]
mov edx, dword [ebx]
cmp edx, 4
je 0x6c25b6cd
mov eax, dword [0x6c483ec4]
test eax, eax
je 0x6c25b61f
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov dword [esp], edx
call sub.msvcrt_ruby200.dll_rb_funcall
mov eax, dword [eax]
test ah, 0x20
jne 0x6c25b3c4
mov eax, dword [0x6c483ec8]
test eax, eax
je 0x6c25b6e2
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call sub.msvcrt_ruby200.dll_rb_funcall
add eax, 8
mov dword [esp + 4], eax
lea eax, [esp + 0x74]
mov dword [esp], eax
call sub.msvcrt.dll_strcpy
lea eax, [esp + 0x74]
call fcn.6c258a84
lea edx, [esp + 0x74]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x4c]
mov dword [esp + 0xc], edx
lea ecx, [esp + 0x1474]
mov dword [esp + 8], ecx
mov dword [esp + 4], str.singleton_Material__s_unit_d__s_mat__n_n
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
lea edx, [esp + 0x74]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x4c]
mov dword [esp + 0xc], edx
lea ecx, [esp + 0x1474]
mov dword [esp + 8], ecx
mov dword [esp + 4], str._tmapTo____s_unit_d__s___n
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov edx, dword [esp + 0x4c]
mov dword [esp + 0xc], edx
mov dword [esp + 8], 0x6c482fc0
mov dword [esp + 4], str._sunit_d
lea ecx, [esp + 0x1574]
mov dword [esp], ecx
call sub.msvcrt.dll_sprintf
lea eax, [esp + 0x1574]
mov dword [esp + 8], eax
mov dword [esp + 4], str._s.png
lea edx, [esp + 0xc74]
mov dword [esp], edx
call sub.msvcrt.dll_sprintf
mov edx, dword [ebx]
cmp edx, 4
je 0x6c25b58b
mov eax, dword [0x6c483ed0]
test eax, eax
je 0x6c25b63f
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov dword [esp], edx
call sub.msvcrt_ruby200.dll_rb_funcall
mov ebx, eax
cmp eax, 4
je 0x6c25b3ef
mov eax, dword [0x6c483ed4]
test eax, eax
je 0x6c25b6af
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov dword [esp], ebx
call sub.msvcrt_ruby200.dll_rb_funcall
mov eax, dword [eax]
test ah, 0x20
jne 0x6c25b48b
mov eax, dword [0x6c483ed8]
test eax, eax
je 0x6c25b773
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov dword [esp], ebx
call sub.msvcrt_ruby200.dll_rb_funcall
add eax, 8
mov dword [esp], eax
call fcn.6c22d028
mov ebx, eax
xor esi, esi
xor edx, edx
mov ebp, 0xffffffff
mov al, byte [ebx + esi]
cmp al, 0x2e
mov ecx, 0x5f
cmove eax, ecx
mov byte [esp + edx + 0x1074], al
inc edx
mov esi, edx
xor eax, eax
mov ecx, ebp
mov edi, ebx
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jbe 0x6c25b100
mov ecx, 0xffffffff
mov edi, dword [esp + 0x3c]
repne scasb al, byte es:[edi]
not ecx
lea eax, [esp + ecx + 0x1073]
mov dword [eax], 0x676e702e
mov byte [eax + 4], 0
mov eax, dword [0x6c483044]
test eax, eax
jne 0x6c25b45c
lea ebx, [esp + 0x1074]
mov dword [esp + 0xc], ebx
lea eax, [esp + 0x874]
mov dword [esp + 8], eax
mov dword [esp + 4], str._tdiffuseMap_0_____s_s___n
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov ebp, dword [0x6c483048]
test ebp, ebp
je 0x6c25b40e
mov ebx, dword [esp + 0x48]
lea eax, [ebx + ebx*2]
lea ebx, [eax + eax*4]
shl ebx, 4
add ebx, dword [esp + 0x5c]
mov edi, dword [ebx + 0x44]
test edi, edi
jne 0x6c25b791
mov esi, dword [0x6c483044]
test esi, esi
je 0x6c25b42d
fld dword [ebx + 0x6c]
fstp qword [esp + 0x20]
fld dword [ebx + 0x68]
fstp qword [esp + 0x18]
fld dword [ebx + 0x64]
fstp qword [esp + 0x10]
fld dword [ebx + 0x60]
fstp qword [esp + 8]
mov dword [esp + 4], str._tdiffuseColor_0_____f__f__f__f___n
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [ebx + 0xa0]
test eax, eax
je 0x6c25b274
cmp eax, 2
jne 0x6c25b5a1
mov eax, dword [ebx + 0x90]
test eax, eax
jne 0x6c25b700
fld dword [ebx + 0x8c]
fstp qword [esp + 0x10]
fld dword [ebx + 0x88]
fstp qword [esp + 8]
mov dword [esp + 4], str._tscrollDir_0_____f__f___n
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
fld dword [0x6c36b754]
fimul dword [ebx + 0x98]
fstp qword [esp + 8]
mov dword [esp + 4], str._tscrollSpeed_0_____f___n
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, 1
mov dword [esp + 8], eax
mov dword [esp + 4], str._tanimFlags_0____0x_08x___n
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
lea esi, [esi]
mov eax, dword [ebx + 4]
test al, 1
jne 0x6c25b501
test al, 0x10
jne 0x6c25b530
test al, 0x40
jne 0x6c25b55f
test al, 0x88
jne 0x6c25b65f
test al, 4
jne 0x6c25b4b4
mov eax, dword [esp + 0x40]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 4
mov dword [esp + 4], 1
mov dword [esp], str.__n_n
call sub.msvcrt.dll_fwrite
mov edx, dword [esp + 0x44]
mov edx, dword [edx + 4]
add dword [esp + 0x50], edx
add dword [esp + 0x44], 8
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0x58]
cmp dword [ebx + 4], edx
jg 0x6c25af38
mov ebx, dword [esp + 0x6c]
mov eax, dword [ebx + 8]
inc dword [esp + 0x64]
mov edx, dword [eax + 0x70]
mov ebx, dword [esp + 0x64]
cmp dword [edx + 4], ebx
jbe 0x6c25b805
mov ecx, dword [edx]
jmp 0x6c25aefe
mov ebx, dword [esp + 0x40]
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 0x6c32f1a0
mov dword [esp + 4], str._s_instance_effect_url_LMAPEFFECT_d_____n
mov dword [esp], ebp
call sub.msvcrt.dll_fprintf
jmp 0x6c25aab6
mov eax, dword [0x6c483eb4]
test eax, eax
je 0x6c25b372
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [esi]
mov dword [esp], eax
call sub.msvcrt_ruby200.dll_rb_funcall
mov eax, dword [eax + 0xc]
jmp 0x6c25a96a
mov dword [esp + 4], 4
mov dword [esp], str.name
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483eac], eax
mov edx, dword [esi]
jmp 0x6c25a925
mov dword [esp + 4], 4
mov dword [esp], str.name
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483eb4], eax
jmp 0x6c25b334
mov dword [esp + 4], 4
mov dword [esp], str.name
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483eb0], eax
jmp 0x6c25a951
mov ecx, dword [esp + 0x44]
mov dword [ecx], 0x61666564
mov dword [ecx + 4], 0x746c75
jmp 0x6c25a983
mov eax, dword [0x6c483ecc]
test eax, eax
je 0x6c25b737
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call sub.msvcrt_ruby200.dll_rb_funcall
mov eax, dword [eax + 0xc]
jmp 0x6c25afa6
lea edx, [esp + 0x874]
mov dword [esp + 8], edx
mov dword [esp + 4], str._tdiffuseMap_0_____sWHITE.png___n
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov edx, dword [esp + 0x48]
lea eax, [edx + edx*2]
lea ebx, [eax + eax*4]
shl ebx, 4
add ebx, dword [esp + 0x5c]
mov esi, dword [0x6c483044]
test esi, esi
jne 0x6c25b1b3
lea ecx, [esp + 0xc74]
mov dword [esp + 0xc], ecx
lea eax, [esp + 0x874]
mov dword [esp + 8], eax
mov dword [esp + 4], str._tlightMap_0_____s_s___n
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x6c25b1b3
lea edx, [esp + 0xc74]
mov dword [esp + 0xc], edx
lea ecx, [esp + 0x874]
mov dword [esp + 8], ecx
mov dword [esp + 4], str._tdiffuseMap_0_____s_s___n
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x6c25b17b
mov eax, dword [0x6c483edc]
test eax, eax
je 0x6c25b755
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov dword [esp], ebx
call sub.msvcrt_ruby200.dll_rb_funcall
mov eax, dword [eax + 0xc]
jmp 0x6c25b0ed
mov eax, dword [esp + 0x40]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x12
mov dword [esp + 4], 1
mov dword [esp], str._talphaTest___1___n
call sub.msvcrt.dll_fwrite
mov eax, dword [esp + 0x40]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x13
mov dword [esp + 4], 1
mov dword [esp], str._talphaRef___192___n
call sub.msvcrt.dll_fwrite
jmp 0x6c25b29f
mov eax, dword [esp + 0x40]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x14
mov dword [esp + 4], 1
mov dword [esp], str._temissive_0____1___n
call sub.msvcrt.dll_fwrite
mov eax, dword [ebx + 4]
test al, 0x10
je 0x6c25b287
mov eax, dword [esp + 0x40]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x14
mov dword [esp + 4], 1
mov dword [esp], str._tcastShadows___0___n
call sub.msvcrt.dll_fwrite
mov eax, dword [ebx + 4]
test al, 0x40
je 0x6c25b28f
mov eax, dword [esp + 0x40]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x1d
mov dword [esp + 4], 1
mov dword [esp], str._ttranslucentBlendOp___Add___n
call sub.msvcrt.dll_fwrite
mov eax, dword [ebx + 4]
jmp 0x6c25b297
mov ebx, dword [esp + 0x48]
lea eax, [ebx + ebx*2]
lea ebx, [eax + eax*4]
shl ebx, 4
add ebx, dword [esp + 0x5c]
jmp 0x6c25b1a5
lea edi, [esp + 0x1674]
mov esi, 0x6c32f180
mov ecx, 6
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + eax*4 + 0x1670]
mov dword [esp + 8], eax
mov dword [esp + 4], str._twaveType_0_____d___n
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
fld dword [0x6c36b754]
fimul dword [ebx + 0x98]
fstp qword [esp + 8]
mov dword [esp + 4], str._twaveFreq_0_____d___n
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
fld dword [ebx + 0x88]
fstp qword [esp + 8]
mov dword [esp + 4], str._twaveAmp_0_____d___n
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, 4
jmp 0x6c25b259
mov dword [esp + 4], 4
mov dword [esp], str.name
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483ec4], eax
mov edx, dword [ebx]
jmp 0x6c25af61
mov dword [esp + 4], 7
mov dword [esp], str.texture
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483ed0], eax
mov edx, dword [ebx]
jmp 0x6c25b07e
mov eax, dword [esp + 0x40]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x14
mov dword [esp + 4], 1
mov dword [esp], str._ttranslucent___1___n
call sub.msvcrt.dll_fwrite
mov eax, dword [esp + 0x40]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x1d
mov dword [esp + 4], 1
mov dword [esp], str._ttranslucentBlendOp___Mul___n
call sub.msvcrt.dll_fwrite
mov eax, dword [ebx + 4]
jmp 0x6c25b297
mov dword [esp + 4], 8
mov dword [esp], str.filename
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483ed4], eax
jmp 0x6c25b0aa
mov dword [esp + 0x74], 0x61666564
mov dword [esp + 0x78], 0x746c75
jmp 0x6c25afbf
mov dword [esp + 4], 4
mov dword [esp], str.name
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483ec8], eax
jmp 0x6c25af8d
cmp eax, 2
jne 0x6c25b274
fld dword [0x6c36b754]
fimul dword [ebx + 0x98]
fstp qword [esp + 8]
mov dword [esp + 4], str._trotSpeed_0_____f___n
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, 2
jmp 0x6c25b259
mov dword [esp + 4], 4
mov dword [esp], str.name
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483ecc], eax
jmp 0x6c25b3d1
mov dword [esp + 4], 8
mov dword [esp], str.filename
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483edc], eax
jmp 0x6c25b498
mov dword [esp + 4], 8
mov dword [esp], str.filename
call sub.msvcrt_ruby200.dll_rb_intern2
mov dword [0x6c483ed8], eax
jmp 0x6c25b0d6
lea eax, [esp + 0x1074]
mov dword [esp + 4], eax
lea ebp, [esp + 0x1674]
mov dword [esp], ebp
call sub.msvcrt.dll_strcpy
mov dword [esp + 4], 0x2e
mov dword [esp], ebp
call sub.msvcrt.dll_strrchr
mov byte [eax], 0
xor eax, eax
mov ecx, 0xffffffff
mov edi, ebp
repne scasb al, byte es:[edi]
not ecx
lea eax, [ebp + ecx - 1]
mov esi, str._normal.png
mov ecx, 3
mov edi, eax
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0xc], ebp
lea edx, [esp + 0x874]
mov dword [esp + 8], edx
mov dword [esp + 4], str._tnormalMap_0_____s_s___n
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x6c25b1a5
inc dword [esp + 0x4c]
add dword [esp + 0x60], 0x130
mov edx, dword [esp + 0x4c]
cmp dword [esp + 0x1774], edx
jg 0x6c25aea8
mov ebx, dword [esp + 0x40]
test ebx, ebx
je 0x6c25b836
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt_ruby200.dll_fclose
add esp, 0x178c
pop ebx
pop esi
pop edi
pop ebp
ret