Function at 0x4823c8
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
push eax
mov eax, 0x1088
call fcn.005a812c
sub esp, eax
mov eax, dword [esp + eax]
mov dword [ebp - 0x1064], eax
mov dword [ebp - 0x1060], edx
mov edi, ecx
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 4]
mov dword [ebp - 0x1068], eax
test ecx, ecx
je 0x48291b
mov eax, dword [ebp - 0x1064]
mov esi, dword [eax + 0x1c]
test esi, esi
je 0x48291b
cmp dword [ebp - 0x1068], 8
ja 0x48291b
mov eax, 0x1ea
mov cl, byte [ebp - 0x1068]
bt eax, ecx
jae 0x482926
lea ecx, [ebp - 0x104a]
lea eax, [ebp - 0x1048]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x1040]
mov dword [esp + 8], eax
lea eax, [ebp - 0x1044]
mov dword [esp + 4], eax
lea eax, [ebp - 0x1049]
mov dword [esp], eax
mov edx, dword [ebx]
mov eax, edi
call fcn.00479823
test eax, eax
je 0x482926
mov al, byte [ebp - 0x104a]
mov byte [ebp - 0x106c], al
test al, al
je 0x482926
cmp al, 0xe
jne 0x48250d
mov eax, dword [ebp - 0x1064]
cmp dword [eax + 0x24], 0
je case.0x4825f7.3
mov eax, dword [ebp - 0x1064]
mov eax, dword [eax + 0x20]
sub eax, 0x7fffffff
mov dword [ebp - 0x1078], eax
fild dword [ebp - 0x1078]
fadd qword [0x5e3518]
fldln2
fxch st(1)
fyl2x
fmul qword [0x5e3520]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_ceil
fnstcw word [ebp - 0x105a]
mov ax, word [ebp - 0x105a]
or ah, 0xc
mov word [ebp - 0x105c], ax
fldcw word [ebp - 0x105c]
fistp qword [ebp - 0x1078]
fldcw word [ebp - 0x105a]
mov edx, dword [ebp - 0x1078]
mov dword [ebp - 0x1048], edx
test edx, edx
je case.0x4825f7.3
movss xmm3, dword [ebp - 0x1044]
movss dword [ebp - 0x1034], xmm3
movss dword [ebp - 0x1038], xmm3
movss dword [ebp - 0x103c], xmm3
movss xmm0, dword [ebp - 0x1040]
movss dword [ebp - 0x1028], xmm0
movss dword [ebp - 0x102c], xmm0
movss dword [ebp - 0x1030], xmm0
lea ecx, [ebp - 0x1048]
movzx edx, byte [ebp - 0x106c]
lea eax, [ebp - 0x1030]
mov dword [esp + 4], eax
lea eax, [ebp - 0x103c]
mov dword [esp], eax
mov eax, esi
call fcn.00481a5c
test eax, eax
je 0x482926
mov al, byte [ebp - 0x106c]
dec eax
or esi, 0xffffffff
cmp al, 0xd
ja case.default.0x482591
movzx eax, al
jmp dword [eax*4 + 0x5e3018]
mov ebx, dword [ebx + 8]
mov esi, dword [ebp - 0x1048]
movss xmm0, dword [ebp - 0x103c]
movss xmm4, dword [ebp - 0x1038]
movss dword [ebp - 0x1064], xmm4
movss xmm4, dword [ebp - 0x1034]
movss dword [ebp - 0x1078], xmm4
movss xmm1, dword [ebp - 0x1030]
movss xmm7, dword [ebp - 0x102c]
movss dword [ebp - 0x106c], xmm7
mov edi, dword [ebp - 0x1028]
mov eax, dword [ebp - 0x1068]
dec eax
cmp eax, 7
ja case.0x4825f7.2
jmp dword [eax*4 + 0x5e3050]
movss xmm2, dword [ebx]
mov eax, esi
call fcn.00481fd6
mov edx, eax
mov ecx, esi
jmp 0x4826ca
movss xmm2, dword [ebx]
mov eax, esi
call fcn.00481fd6
mov edx, eax
mov ecx, esi
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
movss xmm2, dword [ebx + 4]
mov eax, esi
movss xmm1, dword [ebp - 0x106c]
movss xmm0, dword [ebp - 0x1064]
jmp 0x482604
movss xmm2, dword [ebx]
mov eax, esi
call fcn.00481fd6
mov edx, eax
mov ecx, esi
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
movss xmm2, dword [ebx + 4]
mov eax, esi
movss xmm1, dword [ebp - 0x106c]
movss xmm0, dword [ebp - 0x1064]
call fcn.00481fd6
mov edx, eax
mov ecx, esi
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
movss xmm2, dword [ebx + 8]
mov eax, esi
movd xmm1, edi
movss xmm0, dword [ebp - 0x1078]
jmp 0x482604
cmp dword [ebp - 0x1068], 8
je 0x482755
mov esi, 0xfffffff6
jmp case.default.0x482591
mov edx, dword [ebx + 8]
cvttss2si eax, xmm3
mov edx, dword [edx]
sub edx, eax
mov ecx, dword [ebp - 0x1048]
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
xor esi, esi
jmp case.default.0x482591
cmp dword [ebp - 0x1068], 5
jne case.0x4825f7.3
mov edx, dword [ebp - 0x1048]
mov dword [ebp - 0x1064], edx
mov esi, dword [ebx + 8]
lea edi, [ebp - 0x1018]
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x1018]
call fcn.0053fcb7
movss xmm0, dword [ebp - 0x1018]
movss dword [ebp - 0x1024], xmm0
movss xmm0, dword [ebp - 0x1014]
movss dword [ebp - 0x1020], xmm0
movss xmm0, dword [ebp - 0x1010]
movss dword [ebp - 0x101c], xmm0
lea eax, [ebp - 0x1024]
mov dword [esp], eax
mov ecx, 2
mov edx, dword [ebp - 0x1064]
jmp 0x48290b
mov eax, dword [ebx + 8]
mov edx, dword [ebp - 0x1048]
fld dword [eax]
fld dword [eax + 4]
fld dword [eax + 8]
fxch st(2)
fst dword [ebp - 0x1064]
fxch st(1)
movss xmm0, dword [ebp - 0x1064]
mulss xmm0, dword [ebp - 0x1064]
fst dword [ebp - 0x1064]
fxch st(2)
movss xmm1, dword [ebp - 0x1064]
mulss xmm1, dword [ebp - 0x1064]
addss xmm0, xmm1
fst dword [ebp - 0x1064]
movss xmm1, dword [ebp - 0x1064]
mulss xmm1, dword [ebp - 0x1064]
addss xmm0, xmm1
xorps xmm4, xmm4
ucomiss xmm0, xmm4
jp 0x4827c4
je 0x4828b3
sqrtss xmm1, xmm0
fld dword [0x5e350c]
fmul dword [eax + 0xc]
fsincos
fxch st(3)
fstp dword [ebp - 0x1064]
movss xmm6, dword [ebp - 0x1064]
fst dword [ebp - 0x1064]
fxch st(3)
mulss xmm6, dword [ebp - 0x1064]
movaps xmm0, xmm6
divss xmm0, xmm1
fstp dword [ebp - 0x1064]
fxch st(2)
movss xmm7, dword [ebp - 0x1064]
fst dword [ebp - 0x1064]
fxch st(2)
mulss xmm7, dword [ebp - 0x1064]
movaps xmm2, xmm7
divss xmm2, xmm1
fstp dword [ebp - 0x1064]
fxch st(1)
movss xmm6, dword [ebp - 0x1064]
fstp dword [ebp - 0x1064]
mulss xmm6, dword [ebp - 0x1064]
movaps xmm7, xmm6
divss xmm7, xmm1
movaps xmm1, xmm7
movaps xmm3, xmm0
mulss xmm3, xmm0
movaps xmm5, xmm2
mulss xmm5, xmm2
addss xmm3, xmm5
fst dword [ebp - 0x1064]
movss xmm6, dword [ebp - 0x1064]
mulss xmm6, dword [ebp - 0x1064]
movss dword [ebp - 0x1064], xmm6
addss xmm3, dword [ebp - 0x1064]
movaps xmm5, xmm7
mulss xmm5, xmm7
addss xmm3, xmm5
ucomiss xmm3, xmm4
jp 0x482893
je 0x4828c3
sqrtss xmm3, xmm3
divss xmm0, xmm3
divss xmm2, xmm3
divss xmm1, xmm3
movss dword [ebp - 0x1064], xmm3
fdiv dword [ebp - 0x1064]
jmp 0x4828df
fstp st(0)
fstp st(0)
fstp st(0)
movaps xmm1, xmm0
movaps xmm2, xmm0
fld1
jmp 0x4828df
fstp st(0)
fld dword [0x5e3510]
fst dword [ebp - 0x1064]
movss xmm1, dword [ebp - 0x1064]
movaps xmm2, xmm1
movaps xmm0, xmm1
fstp dword [ebp - 0x1018]
movss dword [ebp - 0x1014], xmm0
movss dword [ebp - 0x1010], xmm2
movss dword [ebp - 0x100c], xmm1
lea eax, [ebp - 0x1018]
mov dword [esp], eax
mov ecx, 3
mov eax, dword [ebp - 0x1060]
call fcn.005997da
jmp case.0x4825f7.2
cmp dword [ebp - 0x1068], 0xe
jbe 0x48292f
jmp 0x48293c
cmp dword [ebp - 0x1068], 0xe
ja case.0x482935.11
mov eax, dword [ebp - 0x1068]
jmp dword [eax*4 + 0x5e3070]
cmp dword [ebp - 0x1068], 0x2d
je 0x4834cd
mov esi, 0xfffffffc
jmp case.default.0x482591
mov eax, dword [ebx + 8]
mov ecx, 1
mov edx, dword [eax]
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x4835d4
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2e2f
mov eax, dword [ebx + 8]
mov eax, dword [eax]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 1
mov dword [esp + 4], 0x5e2e30
jmp 0x4835c8
mov esi, dword [ebx + 8]
mov eax, dword [ebp - 0x1064]
mov eax, dword [eax + 0x1c]
mov ecx, str.color.red
mov edx, dword [ebp - 0x1060]
movss xmm0, dword [esi]
call fcn.00599af8
mov eax, dword [ebx + 8]
movss xmm0, dword [eax + 4]
mov eax, dword [ebp - 0x1064]
mov eax, dword [eax + 0x1c]
mov ecx, str.color.green
mov edx, dword [ebp - 0x1060]
call fcn.00599af8
mov eax, dword [ebx + 8]
movss xmm0, dword [eax + 8]
mov eax, dword [ebp - 0x1064]
mov eax, dword [eax + 0x1c]
mov ecx, str.color.blue
jmp 0x482b01
mov ebx, dword [ebx + 8]
mov eax, dword [ebp - 0x1064]
mov eax, dword [eax + 0x1c]
xor ecx, ecx
mov edx, dword [ebp - 0x1060]
movss xmm0, dword [ebx]
call fcn.00599af8
jmp 0x4835d4
mov eax, dword [ebx + 8]
mov ecx, 0x20
mov edx, dword [eax]
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x4835d4
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2e2f
mov eax, dword [ebx + 8]
mov eax, dword [eax]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x20
mov dword [esp + 4], 0x5e2e6f
jmp 0x4835c8
mov esi, dword [ebx + 8]
mov eax, dword [ebp - 0x1064]
mov eax, dword [eax + 0x1c]
mov ecx, str.rot.x
mov edx, dword [ebp - 0x1060]
movss xmm0, dword [esi]
call fcn.00599af8
mov eax, dword [ebx + 8]
movss xmm0, dword [eax + 4]
mov eax, dword [ebp - 0x1064]
mov eax, dword [eax + 0x1c]
mov ecx, str.rot.y
mov edx, dword [ebp - 0x1060]
call fcn.00599af8
mov eax, dword [ebx + 8]
movss xmm0, dword [eax + 8]
mov eax, dword [ebp - 0x1064]
mov eax, dword [eax + 0x1c]
mov ecx, str.rot.z
mov edx, dword [ebp - 0x1060]
call fcn.00599af8
mov eax, dword [ebx + 8]
movss xmm0, dword [eax + 0xc]
mov eax, dword [ebp - 0x1064]
mov eax, dword [eax + 0x1c]
mov ecx, str.rot.theta
mov edx, dword [ebp - 0x1060]
jmp 0x482a23
mov eax, dword [ebx + 8]
test edi, edi
mov esi, dword [eax]
je 0x482ce3
mov eax, dword [edi]
mov eax, dword [eax]
cmp ax, 0xc0
jne 0x482cd8
cmp dword [ebx], 2
ja 0x482ce3
mov eax, dword [ebp - 0x1064]
mov edi, dword [eax + 0x38]
mov eax, esi
test edi, edi
je 0x482b4f
mov edx, esi
mov eax, edi
call fcn.00427e22
mov edi, eax
test eax, eax
cmove eax, esi
mov edx, 0x5e2e93
call fcn.00427968
mov ebx, eax
test eax, eax
jne 0x482b9b
cmp dword [0x5af084], 0
je 0x482b91
mov dword [0x611418], 1
mov dword [0x611414], 7
test edi, edi
cmove edi, esi
mov dword [esp + 4], edi
mov dword [esp], str._BIFS__Cannot_open_source_file__s_for_encoding_CacheTexture_n
call fcn.004268ea
mov esi, 0xfffffff4
jmp case.default.0x482591
test edi, edi
je 0x482ba7
mov dword [esp], edi
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov dword [esp], 2
xor edx, edx
xor ecx, ecx
mov eax, ebx
call fcn.00425b5e
mov dword [esp], ebx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__ftelli64]
mov edi, eax
mov dword [ebp - 0x1068], eax
call fcn.0041f9cd
mov esi, eax
mov ecx, 5
mov edx, eax
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x482c28
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2e2f
mov dword [esp + 0xc], esi
mov dword [esp + 8], 5
mov dword [esp + 4], 0x5e2ed3
mov dword [esp], str._BIFS___s_t_t_d_t_t_d_t_t_s_n
call fcn.004268ea
mov ecx, esi
mov edx, edi
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x482c78
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2e2f
mov dword [esp + 0xc], edi
mov dword [esp + 8], esi
mov dword [esp + 4], 0x5e2eda
mov dword [esp], str._BIFS___s_t_t_d_t_t_d_t_t_s_n
call fcn.004268ea
xor esi, esi
mov dword [esp], esi
xor edx, edx
xor ecx, ecx
mov eax, ebx
call fcn.00425b5e
cmp dword [ebp - 0x1068], 0
je 0x482ccc
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 0x1000
mov dword [esp + 4], 1
lea esi, [ebp - 0x1018]
mov dword [esp], esi
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fread
mov edi, eax
mov ecx, eax
mov edx, esi
mov eax, dword [ebp - 0x1060]
call fcn.00427720
sub dword [ebp - 0x1068], edi
jmp 0x482c88
mov eax, ebx
call fcn.00425b84
jmp 0x4835d4
cmp ax, 0x7a
jne 0x482ce3
mov ebx, dword [edi + 0x18]
jmp 0x482cf3
xor ebx, ebx
test esi, esi
je 0x482cf3
mov dword [esp], esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov ebx, eax
mov eax, ebx
call fcn.0041f9cd
mov edi, eax
mov ecx, 5
mov edx, eax
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x482d53
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2e2f
mov dword [esp + 0xc], edi
mov dword [esp + 8], 5
mov dword [esp + 4], 0x5e2ed3
mov dword [esp], str._BIFS___s_t_t_d_t_t_d_t_t_s_n
call fcn.004268ea
mov ecx, edi
mov edx, ebx
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x482da3
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2e2f
mov dword [esp + 0xc], ebx
mov dword [esp + 8], edi
mov dword [esp + 4], 0x5e2eda
mov dword [esp], str._BIFS___s_t_t_d_t_t_d_t_t_s_n
call fcn.004268ea
mov edi, esi
lea eax, [esi + ebx]
mov dword [ebp - 0x1068], eax
cmp dword [ebp - 0x1068], edi
je 0x482dcc
movsx edx, byte [edi]
mov ecx, 8
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
inc edi
jmp 0x482dae
cmp dword [0x5af03c], 3
jbe 0x4835d4
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 8], esi
shl ebx, 3
mov dword [esp + 4], ebx
mov dword [esp], str._BIFS__string_t_t_d_t_t_s_n
jmp 0x4830e3
mov eax, dword [ebx + 8]
movsd xmm0, qword [eax]
mov eax, dword [ebp - 0x1060]
call fcn.00426425
cmp dword [0x5af03c], 3
jbe 0x4835d4
mov dword [0x611418], 4
mov dword [0x611414], 1
mov eax, dword [ebx + 8]
movsd xmm4, qword [eax]
movsd qword [esp + 8], xmm4
mov dword [esp + 4], 0x40
mov dword [esp], str._BIFS__SFTime_t_t_d_t_t_g_n
call fcn.004268ea
jmp 0x4835d4
mov esi, dword [ebx + 8]
mov eax, dword [ebp - 0x1064]
mov eax, dword [eax + 0x1c]
mov ecx, str.vec2f.x
mov edx, dword [ebp - 0x1060]
movss xmm0, dword [esi]
call fcn.00599af8
mov eax, dword [ebx + 8]
movss xmm0, dword [eax + 4]
mov eax, dword [ebp - 0x1064]
mov eax, dword [eax + 0x1c]
mov ecx, str.vec2f.y
jmp 0x482b01
mov esi, dword [ebx + 8]
mov eax, dword [ebp - 0x1064]
mov eax, dword [eax + 0x1c]
mov ecx, str.vec3f.x
mov edx, dword [ebp - 0x1060]
movss xmm0, dword [esi]
call fcn.00599af8
mov eax, dword [ebx + 8]
movss xmm0, dword [eax + 4]
mov eax, dword [ebp - 0x1064]
mov eax, dword [eax + 0x1c]
mov ecx, str.vec3f.y
mov edx, dword [ebp - 0x1060]
call fcn.00599af8
mov eax, dword [ebx + 8]
movss xmm0, dword [eax + 8]
mov eax, dword [ebp - 0x1064]
mov eax, dword [eax + 0x1c]
mov ecx, str.vec3f.z
jmp 0x482b01
mov esi, dword [ebx + 8]
xor edx, edx
cmp dword [esi], 0
setne dl
mov ecx, 1
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x482f5c
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], str.SFURL
xor eax, eax
cmp dword [esi], 0
setne al
mov dword [esp + 0xc], eax
mov dword [esp + 8], 1
mov dword [esp + 4], str.hasODID
mov dword [esp], str._BIFS___s_t_t_d_t_t_d_t_t_s_n
call fcn.004268ea
mov ebx, dword [esi]
test ebx, ebx
je 0x482fb8
mov ecx, 0xa
mov edx, ebx
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x4835d4
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], str.SFURL
mov eax, dword [esi]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0xa
mov dword [esp + 4], str.ODID
jmp 0x4835c8
mov eax, dword [esi + 4]
xor edi, edi
test eax, eax
je 0x482fcb
mov dword [esp], eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov edi, eax
mov eax, edi
call fcn.0041f9cd
mov dword [ebp - 0x1068], eax
mov ecx, 5
mov edx, eax
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x483035
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2e2f
mov eax, dword [ebp - 0x1068]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 5
mov dword [esp + 4], 0x5e2ed3
mov dword [esp], str._BIFS___s_t_t_d_t_t_d_t_t_s_n
call fcn.004268ea
mov ecx, dword [ebp - 0x1068]
mov edx, edi
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x48308f
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2e2f
mov dword [esp + 0xc], edi
mov eax, dword [ebp - 0x1068]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x5e2eda
mov dword [esp], str._BIFS___s_t_t_d_t_t_d_t_t_s_n
call fcn.004268ea
cmp ebx, edi
je 0x4830ad
mov eax, dword [esi + 4]
movsx edx, byte [eax + ebx]
mov ecx, 8
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
inc ebx
jmp 0x48308f
cmp dword [0x5af03c], 3
jbe 0x4835d4
mov dword [0x611418], 4
mov dword [0x611414], 1
mov eax, dword [esi + 4]
mov dword [esp + 8], eax
shl ebx, 3
mov dword [esp + 4], ebx
mov dword [esp], str._BIFS__string_t_t_d_t_t_s_t_t__SFURL_n
call fcn.004268ea
jmp 0x4835d4
mov ebx, dword [ebx + 8]
mov ecx, 0xc
mov edx, dword [ebx]
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x483149
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2f6a
mov eax, dword [ebx]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0xc
mov dword [esp + 4], 0x5e2f72
mov dword [esp], str._BIFS___s_t_t_d_t_t_d_t_t_s_n
call fcn.004268ea
mov edx, dword [ebx + 4]
mov ecx, 0xc
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x4831a4
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2f6a
mov eax, dword [ebx + 4]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0xc
mov dword [esp + 4], 0x5e2f78
mov dword [esp], str._BIFS___s_t_t_d_t_t_d_t_t_s_n
call fcn.004268ea
movzx edx, byte [ebx + 8]
dec edx
mov ecx, 2
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x483203
movzx eax, byte [ebx + 8]
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2f6a
dec eax
mov dword [esp + 0xc], eax
mov dword [esp + 8], 2
mov dword [esp + 4], 0x5e2f7f
mov dword [esp], str._BIFS___s_t_t_d_t_t_d_t_t_s_n
call fcn.004268ea
mov edi, dword [ebx]
imul edi, dword [ebx + 4]
movzx eax, byte [ebx + 8]
imul edi, eax
xor esi, esi
cmp esi, edi
je 0x483230
mov eax, dword [ebx + 0xc]
movzx edx, byte [eax + esi]
mov ecx, 8
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
inc esi
jmp 0x483212
cmp dword [0x5af03c], 3
jbe 0x4835d4
mov dword [0x611418], 4
mov dword [0x611414], 1
shl esi, 3
mov dword [esp + 4], esi
mov dword [esp], str._BIFS__pixels_t_t_d_t_tnot_dumped_t_t__SFImage_n
call fcn.004268ea
jmp 0x4835d4
mov ebx, dword [ebx + 8]
mov eax, dword [ebx + 4]
test eax, eax
je 0x48327b
mov dword [esp], eax
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
xor ecx, ecx
mov dword [ebx + 4], ecx
mov dword [ebx], ecx
mov eax, dword [ebx + 8]
test eax, eax
je 0x483450
cmp dword [eax + 4], 0
je 0x483450
mov dword [esp], 1
xor edx, edx
xor ecx, ecx
xor eax, eax
call fcn.00425f6d
mov edi, eax
cmp dword [0x5af03c], 3
jbe 0x4832d4
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp], str._BIFS___SFCommandBuffer__n
call fcn.004268ea
mov edx, dword [ebx + 8]
mov ecx, edi
mov eax, dword [ebp - 0x1064]
call fcn.0047ec1b
mov esi, eax
test eax, eax
jne 0x4832f6
lea edx, [ebx + 4]
mov ecx, ebx
mov eax, edi
call fcn.004274c2
mov eax, edi
call fcn.004260fd
test esi, esi
jne case.default.0x482591
cmp dword [0x5af03c], 3
jbe 0x48332e
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp], str._BIFS___End_SFCommandBuffer__n
call fcn.004268ea
mov eax, dword [ebx]
call fcn.0041f9cd
mov esi, eax
mov ecx, 5
mov edx, eax
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x48338e
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2e2f
mov dword [esp + 0xc], esi
mov dword [esp + 8], 5
mov dword [esp + 4], str.NbBits
mov dword [esp], str._BIFS___s_t_t_d_t_t_d_t_t_s_n
call fcn.004268ea
mov ecx, esi
mov edx, dword [ebx]
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x4833e0
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2e2f
mov eax, dword [ebx]
mov dword [esp + 0xc], eax
mov dword [esp + 8], esi
mov dword [esp + 4], str.BufferSize
mov dword [esp], str._BIFS___s_t_t_d_t_t_d_t_t_s_n
call fcn.004268ea
xor esi, esi
cmp esi, dword [ebx]
jae 0x4835d4
mov eax, dword [ebx + 4]
movzx edx, byte [eax + esi]
mov ecx, 8
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x48344d
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2e2f
mov eax, dword [ebx + 4]
movzx eax, byte [eax + esi]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 8
mov dword [esp + 4], str.buffer_byte
mov dword [esp], str._BIFS___s_t_t_d_t_t_d_t_t_s_n
call fcn.004268ea
inc esi
jmp 0x4833e2
mov ecx, 5
xor edx, edx
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x4835d4
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2e2f
xor edx, edx
mov dword [esp + 0xc], edx
mov dword [esp + 8], 5
mov dword [esp + 4], str.NbBits
jmp 0x4835c8
mov ecx, dword [ebx + 0x10]
mov eax, dword [ebx + 8]
mov dword [esp + 4], edi
mov edi, dword [ebp - 0x1060]
mov dword [esp], edi
mov edx, dword [eax]
mov eax, dword [ebp - 0x1064]
call fcn.00483b69
mov esi, eax
jmp case.default.0x482591
xor eax, eax
mov dword [ebp - 0x1018], eax
mov esi, dword [ebx + 8]
mov edi, dword [esi]
mov edx, 1
mov eax, edi
call fcn.00458de0
dec eax
call fcn.0041f9cd
mov ebx, eax
mov eax, edi
call fcn.00430948
mov edi, dword [ebp - 0x1064]
mov edx, dword [edi + 8]
movzx ecx, word [edx + 2]
lea edx, [eax - 1]
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x483566
mov dword [0x611418], 4
mov dword [0x611414], 1
mov eax, dword [esi]
call fcn.00430948
mov dword [esp + 0x10], 0x5e2e2f
dec eax
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x1064]
mov eax, dword [eax + 8]
movzx eax, word [eax + 2]
mov dword [esp + 8], eax
mov dword [esp + 4], str.NodeID
mov dword [esp], str._BIFS___s_t_t_d_t_t_d_t_t_s_n
call fcn.004268ea
mov edx, dword [esi + 4]
lea eax, [ebp - 0x1018]
mov dword [esp], eax
mov ecx, 1
mov eax, dword [esi]
call fcn.00481f7f
mov esi, dword [ebp - 0x1018]
mov ecx, ebx
mov edx, esi
mov eax, dword [ebp - 0x1060]
call fcn.004262ac
cmp dword [0x5af03c], 3
jbe 0x4835d4
mov dword [0x611418], 4
mov dword [0x611414], 1
mov dword [esp + 0x10], 0x5e2e2f
mov dword [esp + 0xc], esi
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x5e3011
mov dword [esp], str._BIFS___s_t_t_d_t_t_d_t_t_s_n
call fcn.004268ea
mov eax, dword [ebp - 0x1064]
mov esi, dword [eax]
mov eax, esi
add esp, 0x108c
pop ebx
pop esi
pop edi
pop ebp
ret