Function at 0x1004dc00
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xa4
push ebx
mov ebx, dword [ebp + 0x10]
push esi
mov dword [esp + 0x18], ecx
mov ecx, ebx
push edi
mov edi, dword [ebp + 0xc]
call fcn.101375e0
mov ecx, ebx
mov dword [esp + 0x48], eax
call fcn.101395f0
mov esi, eax
mov ecx, ebx
mov dword [esp + 0x30], esi
call fcn.10137740
test eax, eax
je 0x1004dc4f
mov ecx, dword [eax + 0x14]
lea edx, [eax + 4]
push edx
lea eax, [esp + 0x54]
push eax
mov esi, dword [ecx]
call dword [esi + 4]
jmp 0x1004dc78
mov eax, dword [esp + 0x48]
test eax, eax
je 0x1004dc5f
mov ecx, dword [eax + 0x14]
add eax, 4
jmp 0x1004dc6d
test esi, esi
je 0x1004ed8e
mov ecx, dword [esi + 0x14]
lea eax, [esi + 4]
mov edx, dword [ecx]
push eax
lea eax, [esp + 0x54]
push eax
call dword [edx + 4]
cmp byte [edi + 0x54], 0
movq xmm0, qword [esp + 0x50]
movq qword [esp + 0x60], xmm0
mov ebx, dword [esp + 0x64]
je 0x1004dce9
mov ecx, dword [edi + 0x58]
cmp ecx, dword [esp + 0x60]
jge 0x1004dcc9
mov edx, dword [edi + 0x5c]
cmp edx, ebx
jge 0x1004dcc9
mov esi, dword [edi + 0x60]
add esi, ecx
test esi, esi
jle 0x1004dcc9
mov eax, dword [edi + 0x64]
add eax, edx
test eax, eax
jle 0x1004dcc9
test ecx, ecx
jg 0x1004dcc2
test edx, edx
jg 0x1004dcc2
cmp esi, dword [esp + 0x60]
jl 0x1004dcc2
cmp eax, ebx
jge 0x1004dce9
mov byte [esp + 0x13], 1
jmp 0x1004dcee
mov eax, dword [ebp + 8]
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov byte [esp + 0x13], 0
xor eax, eax
xor esi, esi
mov dword [esp + 0x34], eax
xor ebx, ebx
mov dword [esp + 0x70], eax
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x44], esi
mov dword [esp + 0x6c], esi
mov dword [esp + 0x74], ebx
mov eax, dword [eax]
mov ecx, dword [eax + 0x980]
mov dword [esp + 0x38], ecx
mov ecx, dword [eax + 0x984]
mov eax, dword [eax + 0x950]
mov dword [esp + 0x40], eax
xor eax, eax
mov dword [esp + 0x18], ecx
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x18]
mov ecx, dword [ecx + 0x1c]
mov dword [esp + 0x4c], eax
sub ecx, eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1004e1fa
mov esi, dword [esp + 0x4c]
xor edx, edx
mov dword [esp + 0x14], edx
xor ecx, ecx
nop dword [eax + eax]
cmp byte [ecx + edi], 0
je 0x1004e0d2
cmp dword [edx + esi], 0
je 0x1004e0d2
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x54]
cmp dword [eax + ecx*4], 0
je 0x1004e0d2
lea ecx, [esp + 0x4c]
mov dword [esp + 0x4c], 0
push ecx
mov ecx, dword [edx + esi + 0x14]
lea eax, [esi + 4]
add eax, edx
push eax
lea eax, [esp + 0x80]
push eax
call fcn.10137420
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x78]
test eax, eax
jne 0x1004e1bf
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x14]
add edx, 4
add edx, esi
mov ecx, dword [eax + esi + 0x14]
push edx
mov eax, dword [ecx]
call dword [eax + 8]
mov edi, dword [ebp + 0xc]
mov esi, dword [eax]
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x1004ddf8
cmp byte [edi + 0x3c], 0
jne 0x1004de24
cmp dword [esi + 8], 0
je 0x1004de04
cmp byte [edi + 0x3d], 0
jne 0x1004de24
cmp dword [esi + 0xc], 0
je 0x1004de10
cmp byte [edi + 0x3e], 0
jne 0x1004de24
cmp dword [esi + 0x14], 0
je 0x1004e075
cmp byte [edi + 0x3f], 0
je 0x1004e075
mov eax, dword [esp + 0x1c]
mov eax, dword [eax]
cmp byte [eax + 0x95d], 0
jne 0x1004de3e
cmp byte [esp + 0x13], 0
jne 0x1004dfd4
cmp dword [edi + 0x38], 0x1406
jne 0x1004dfd4
test ecx, ecx
je 0x1004de59
cmp byte [edi + 0x3c], 0
je 0x1004dfd4
cmp dword [esi + 8], 0
jbe 0x1004de69
cmp byte [edi + 0x3d], 0
je 0x1004dfd4
cmp dword [esi + 0xc], 0
jbe 0x1004de79
cmp byte [edi + 0x3e], 0
je 0x1004dfd4
cmp dword [esi + 0x14], 0
jbe 0x1004de89
cmp byte [edi + 0x3f], 0
je 0x1004dfd4
mov ecx, dword [esp + 0x84]
mov eax, dword [ecx]
call dword [eax + 0x24]
mov dword [esp + 0x44], eax
test eax, eax
je 0x1004e10e
mov edx, dword [esp + 0x84]
mov ecx, dword [edx + 0x14]
push dword [ecx + 0x10]
call fcn.100940b0
add esp, 4
cmp dword [esi + 4], 0
jne 0x1004decb
cmp dword [eax], 0
jbe 0x1004decb
mov dword [esp + 0x50], 0
jmp 0x1004ded6
movss xmm0, dword [edi + 8]
movss dword [esp + 0x50], xmm0
cmp dword [esi + 8], 0
jne 0x1004deec
cmp dword [eax + 4], 0
jbe 0x1004deec
mov dword [esp + 0x54], 0
jmp 0x1004def7
movss xmm0, dword [edi + 0xc]
movss dword [esp + 0x54], xmm0
cmp dword [esi + 0xc], 0
jne 0x1004df0d
cmp dword [eax + 8], 0
jbe 0x1004df0d
mov dword [esp + 0x58], 0
jmp 0x1004df18
movss xmm0, dword [edi + 0x10]
movss dword [esp + 0x58], xmm0
add eax, 0xc
cmp dword [esi + 0x14], 0
jne 0x1004df30
cmp dword [eax], 0
jbe 0x1004df30
mov dword [esp + 0x5c], 0x3f800000
jmp 0x1004df3b
movss xmm0, dword [edi + 0x14]
movss dword [esp + 0x5c], xmm0
cmp dword [eax], 1
jne 0x1004df61
movss xmm0, dword [edi + 0x14]
comiss xmm0, dword [0x10179f50]
jb 0x1004df58
movss xmm0, dword [0x1018197c]
jmp 0x1004df5b
xorps xmm0, xmm0
movss dword [esp + 0x5c], xmm0
cmp byte [esp + 0x13], 0
je 0x1004dfb9
mov ecx, dword [edi + 0x58]
lea edx, [esp + 0x88]
mov eax, dword [edi + 0x60]
add eax, ecx
mov dword [esp + 0x88], ecx
mov ecx, dword [edi + 0x5c]
mov dword [esp + 0x90], eax
mov eax, dword [edi + 0x64]
push 1
add eax, ecx
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x1c]
push edx
lea edx, [esp + 0x58]
mov dword [esp + 0x9c], eax
push edx
push dword [esp + 0x50]
mov eax, dword [ecx]
push ecx
call dword [eax + 0x210]
jmp 0x1004e075
mov ecx, dword [esp + 0x38]
lea edx, [esp + 0x50]
push edx
push dword [esp + 0x48]
mov eax, dword [ecx]
push ecx
call dword [eax + 0xc8]
jmp 0x1004e075
mov eax, dword [esp + 0x20]
mov al, byte [eax + edi]
test al, al
je 0x1004dfec
cmp byte [edi + 0x3c], 0
je 0x1004dfec
mov byte [esp + 0x24], 1
jmp 0x1004dff5
mov byte [esp + 0x24], 0
test al, al
je 0x1004e002
cmp byte [edi + 0x3d], 0
je 0x1004e002
mov byte [esp + 0x25], 1
jmp 0x1004e00b
mov byte [esp + 0x25], 0
test al, al
je 0x1004e018
cmp byte [edi + 0x3e], 0
je 0x1004e018
mov byte [esp + 0x26], 1
jmp 0x1004e021
mov byte [esp + 0x26], 0
test al, al
je 0x1004e02b
cmp byte [edi + 0x3f], 0
je 0x1004e02b
mov al, 1
jmp 0x1004e02d
xor al, al
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x84]
mov byte [esp + 0x27], al
mov dword [esp + 0x28], edx
cmp ecx, ebx
je 0x1004e05a
mov eax, dword [esp + 0x24]
mov dword [ecx], eax
mov dword [ecx + 4], edx
add ecx, 8
mov dword [esp + 0x34], ecx
mov dword [esp + 0x70], ecx
jmp 0x1004e075
lea eax, [esp + 0x24]
push eax
push ecx
lea ecx, [esp + 0x74]
call fcn.10043b40
mov eax, dword [esp + 0x70]
mov ebx, dword [esp + 0x74]
mov dword [esp + 0x34], eax
mov esi, dword [esp + 0x80]
test esi, esi
je 0x1004e0ce
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x1004e0b3
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x1004e0a9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004e1a4
mov eax, edx
push ecx
push eax
call fcn.10174919
add esp, 8
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push esi
mov byte [esi], 0
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov edx, dword [esp + 0x14]
mov eax, dword [ebp + 0x10]
add edx, 0x18
inc dword [esp + 0x20]
mov dword [esp + 0x14], edx
mov ecx, dword [eax + 0x1c]
mov esi, dword [eax + 0x18]
sub ecx, esi
mov eax, 0x2aaaaaab
imul ecx
mov ecx, dword [esp + 0x20]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jae 0x1004e1f2
mov edx, dword [esp + 0x14]
jmp 0x1004dd70
mov edi, dword [ebp + 8]
push str.Internal_render_target_view_pointer_unexpectedly_null.
push 0x505
push edi
call fcn.101314c0
mov esi, dword [esp + 0x8c]
add esp, 0xc
test esi, esi
je 0x1004e179
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x1004e15e
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x1004e154
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004e1a4
mov eax, edx
push ecx
push eax
call fcn.10174919
add esp, 8
push esi
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov ecx, dword [esp + 0x6c]
test ecx, ecx
je 0x1004e6c9
sub ebx, ecx
mov eax, ecx
and ebx, 0xfffffff8
cmp ebx, 0x1000
jb 0x1004e1aa
mov ecx, dword [eax - 4]
add ebx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1004e1aa
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ebx
push ecx
call fcn.10174919
add esp, 8
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edi, dword [ebp + 8]
lea ecx, [esp + 0x80]
mov dword [edi], eax
mov eax, dword [esp + 0x7c]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x80], 0
mov dword [edi + 8], eax
call fcn.100016b0
mov ecx, dword [esp + 0x6c]
jmp 0x1004e17d
mov esi, dword [esp + 0x6c]
mov dword [esp + 0x44], esi
cmp byte [edi + 0x40], 0
jne 0x1004e20a
cmp byte [edi + 0x48], 0
je 0x1004e441
mov eax, dword [esp + 0x48]
test eax, eax
mov ecx, dword [esp + 0x30]
cmovne ecx, eax
mov dword [esp + 0x20], 0
lea eax, [esp + 0x20]
push eax
lea eax, [ecx + 4]
mov ecx, dword [ecx + 0x14]
push eax
lea eax, [esp + 0x80]
push eax
call fcn.10137420
mov eax, dword [esp + 0x78]
test eax, eax
je 0x1004e2a1
mov edi, dword [ebp + 8]
mov dword [edi], eax
mov eax, dword [esp + 0x7c]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x80], 0
mov dword [edi + 8], eax
test esi, esi
je 0x1004e6c9
sub ebx, esi
mov eax, esi
and ebx, 0xfffffff8
cmp ebx, 0x1000
jb 0x1004e28c
mov esi, dword [eax - 4]
add ebx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004e1a4
push ebx
push esi
call fcn.10174919
add esp, 8
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x14]
push dword [eax + 0x14]
call fcn.100940b0
add esp, 4
cmp dword [esp + 0x30], 0
je 0x1004e2c7
mov ecx, dword [eax + 0x18]
mov edx, 1
shl edx, cl
dec edx
jmp 0x1004e2c9
xor edx, edx
cmp byte [edi + 0x48], 0
je 0x1004e2dc
mov eax, dword [edi + 0x50]
and eax, edx
cmp eax, edx
je 0x1004e2dc
mov al, 1
jmp 0x1004e2de
xor al, al
cmp byte [esp + 0x13], 0
jne 0x1004e3d8
test al, al
jne 0x1004e3d8
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
call dword [eax + 0x28]
mov dword [esp + 0x18], eax
test eax, eax
jne 0x1004e386
mov edi, dword [ebp + 8]
push str.Internal_depth_stencil_view_pointer_unexpectedly_null.
push 0x505
push edi
call fcn.101314c0
mov eax, dword [esp + 0x8c]
add esp, 0xc
mov dword [esp + 0x18], eax
test eax, eax
je 0x1004e261
mov ecx, dword [eax + 0x14]
cmp ecx, 0x10
jb 0x1004e366
mov eax, dword [eax]
inc ecx
cmp ecx, 0x1000
jb 0x1004e358
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004e1a4
mov eax, edx
push ecx
push eax
call fcn.10174919
mov eax, dword [esp + 0x20]
add esp, 8
push eax
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call dword [sym.imp.mozglue.dll_free]
add esp, 4
jmp 0x1004e261
movss xmm1, dword [edi + 0x44]
xor edx, edx
cmp byte [edi + 0x48], dl
mov eax, 2
xorps xmm0, xmm0
cmovne edx, eax
xor eax, eax
cmp byte [edi + 0x40], al
setne al
or edx, eax
comiss xmm1, xmm0
jbe 0x1004e3b6
movss xmm0, dword [0x1018197c]
minss xmm0, xmm1
mov ecx, dword [esp + 0x38]
movzx eax, byte [edi + 0x4c]
push eax
mov ecx, dword [ecx]
push ecx
movss dword [esp], xmm0
push edx
push dword [esp + 0x24]
push dword [esp + 0x48]
call dword [ecx + 0xd4]
jmp 0x1004e3e0
mov eax, dword [esp + 0x20]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x18], eax
test eax, eax
je 0x1004e441
mov ecx, dword [eax + 0x14]
cmp ecx, 0x10
jb 0x1004e426
mov eax, dword [eax]
inc ecx
cmp ecx, 0x1000
jb 0x1004e418
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004e1a4
mov eax, edx
push ecx
push eax
call fcn.10174919
mov eax, dword [esp + 0x20]
add esp, 8
push eax
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov eax, dword [esp + 0x34]
sub eax, esi
sar eax, 3
mov dword [esp + 0x34], eax
test eax, eax
jne 0x1004e45c
cmp dword [esp + 0x3c], eax
je 0x1004ed37
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
test eax, eax
je 0x1004e4f7
cmp eax, 0x3fffffff
ja 0x1004edae
lea esi, [eax*4]
mov dword [esp + 0x18], esi
cmp esi, 0x1000
jb 0x1004e4c0
lea eax, [esi + 0x23]
cmp eax, esi
jbe 0x1004edb3
push eax
call dword [sym.imp.mozglue.dll_moz_xmalloc]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x1004e1a4
lea eax, [ecx + 0x23]
and eax, 0xffffffe0
mov dword [eax - 4], ecx
jmp 0x1004e4d2
test esi, esi
je 0x1004e4d0
push esi
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
jmp 0x1004e4d2
xor eax, eax
push dword [esp + 0x18]
add esi, eax
mov dword [esp + 0x28], eax
push 0
push eax
mov dword [esp + 0x38], esi
call sub.VCRUNTIME140.dll_memset
mov eax, dword [esp + 0x40]
add esp, 0xc
mov dword [esp + 0x28], esi
mov esi, dword [esp + 0x44]
mov dword [esp + 0x30], 0
test eax, eax
je 0x1004e53e
lea ecx, [esi + 4]
mov dword [esp + 0x48], ecx
nop word [eax + eax]
mov ecx, dword [ecx]
mov eax, dword [ecx]
call dword [eax + 0x24]
mov edx, eax
test edx, edx
je 0x1004e551
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x24]
mov dword [ecx + eax*4], edx
inc eax
mov ecx, dword [esp + 0x48]
add ecx, 8
mov dword [esp + 0x30], eax
mov dword [esp + 0x48], ecx
cmp eax, dword [esp + 0x34]
jb 0x1004e510
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x1004e5c1
mov eax, dword [ecx]
call dword [eax + 0x28]
mov dword [esp + 0x30], eax
jmp 0x1004e5c9
mov edi, dword [ebp + 8]
push str.Internal_render_target_view_pointer_unexpectedly_null.
push 0x505
push edi
call fcn.101314c0
mov edx, dword [esp + 0x30]
add esp, 0xc
test edx, edx
je 0x1004e261
mov ecx, dword [esp + 0x2c]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffffc
cmp ecx, 0x1000
jb 0x1004e59a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004e1a4
push ecx
push edx
call fcn.10174919
add esp, 8
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
jmp 0x1004e261
mov dword [esp + 0x30], 0
mov ecx, dword [esp + 0x1c]
lea eax, [esp + 0x6c]
push eax
call fcn.10054bb0
movaps xmm0, xmmword [0x10197050]
mov ecx, dword [esp + 0x1c]
push edi
mov dword [esp + 0x1c], eax
movups xmmword [esp + 0x8c], xmm0
call fcn.10055c80
mov edx, dword [esp + 0x38]
lea esi, [esp + 0x50]
push esi
mov dword [esp + 0x48], eax
xor ebx, ebx
movzx eax, byte [edi + 0x4c]
mov ecx, dword [edx]
push ebx
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x24]
push 4
push ebx
mov dword [esp + 0x24], 0
push dword [eax + 0x28]
mov dword [esp + 0x60], 0
push edx
call dword [ecx + 0x38]
test eax, eax
jns 0x1004e6d4
mov edi, dword [ebp + 8]
push eax
push str.Failed_to_map_internal_masked_clear_vertex_buffer__HRESULT:_0x_X.
push 0x505
push edi
call fcn.101314c0
mov edx, dword [esp + 0x34]
add esp, 0x10
test edx, edx
je 0x1004e690
mov ecx, dword [esp + 0x2c]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffffc
cmp ecx, 0x1000
jb 0x1004e67a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004e1a4
push ecx
push edx
call fcn.10174919
add esp, 8
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
mov edx, dword [esp + 0x6c]
test edx, edx
je 0x1004e6c9
mov ecx, dword [esp + 0x74]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffff8
cmp ecx, 0x1000
jb 0x1004e6bf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004e1a4
push ecx
push edx
call fcn.10174919
add esp, 8
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
xor eax, eax
lea edx, [edi + 0x58]
cmp byte [edi + 0x54], al
cmove edx, eax
mov eax, dword [edi + 0x38]
sub eax, 0x1404
je 0x1004e9cd
sub eax, 1
je 0x1004e866
sub eax, 1
jne 0x1004eb37
movss xmm0, dword [edi + 0x44]
xorps xmm6, xmm6
comiss xmm0, xmm6
mov esi, dword [esp + 0x50]
movss xmm5, dword [0x1018197c]
jbe 0x1004e71f
movaps xmm6, xmm5
minss xmm6, xmm0
movss xmm4, dword [0x10196fc0]
movaps xmm3, xmm5
movaps xmm2, xmm4
test edx, edx
je 0x1004e7bf
mov ecx, dword [edx]
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [esp + 0x60]
mov eax, dword [edx + 8]
mov ebx, dword [esp + 0x64]
add eax, ecx
xorps xmm2, xmm2
xorps xmm3, xmm3
cvtsi2ss xmm3, eax
mov eax, ebx
sub eax, dword [edx + 0xc]
sub eax, dword [edx + 4]
xorps xmm1, xmm1
divss xmm3, xmm0
cvtsi2ss xmm2, ecx
cvtsi2ss xmm1, ebx
divss xmm2, xmm0
xorps xmm0, xmm0
addss xmm3, xmm3
cvtsi2ss xmm0, eax
mov eax, ebx
sub eax, dword [edx + 4]
addss xmm2, xmm2
divss xmm0, xmm1
subss xmm2, xmm5
addss xmm0, xmm0
subss xmm3, xmm5
maxss xmm2, xmm4
subss xmm0, xmm5
minss xmm3, xmm5
maxss xmm0, xmm4
movaps xmm4, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
divss xmm0, xmm1
addss xmm0, xmm0
subss xmm0, xmm5
minss xmm0, xmm5
movaps xmm5, xmm0
movss dword [esi], xmm2
movss dword [esi + 4], xmm5
movss dword [esi + 8], xmm6
mov eax, dword [edi + 8]
mov dword [esi + 0xc], eax
mov eax, dword [edi + 0xc]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0x10]
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0x14]
mov dword [esi + 0x18], eax
movss dword [esi + 0x1c], xmm2
movss dword [esi + 0x20], xmm4
movss dword [esi + 0x24], xmm6
mov eax, dword [edi + 8]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0xc]
mov dword [esi + 0x2c], eax
mov eax, dword [edi + 0x10]
mov dword [esi + 0x30], eax
mov eax, dword [edi + 0x14]
mov dword [esi + 0x34], eax
movss dword [esi + 0x38], xmm3
movss dword [esi + 0x3c], xmm5
movss dword [esi + 0x40], xmm6
mov eax, dword [edi + 8]
mov dword [esi + 0x44], eax
mov eax, dword [edi + 0xc]
mov dword [esi + 0x48], eax
mov eax, dword [edi + 0x10]
mov dword [esi + 0x4c], eax
mov eax, dword [edi + 0x14]
mov dword [esi + 0x50], eax
movss dword [esi + 0x54], xmm3
movss dword [esi + 0x58], xmm4
movss dword [esi + 0x5c], xmm6
mov eax, dword [edi + 8]
mov dword [esi + 0x60], eax
mov eax, dword [edi + 0xc]
mov dword [esi + 0x64], eax
mov eax, dword [edi + 0x10]
mov dword [esi + 0x68], eax
mov eax, dword [edi + 0x14]
mov dword [esi + 0x6c], eax
mov eax, dword [esp + 0x1c]
mov ebx, dword [eax + 0x10]
jmp 0x1004eb2f
movss xmm0, dword [edi + 0x44]
xorps xmm6, xmm6
comiss xmm0, xmm6
mov esi, dword [esp + 0x50]
movss xmm5, dword [0x1018197c]
jbe 0x1004e886
movaps xmm6, xmm5
minss xmm6, xmm0
movss xmm4, dword [0x10196fc0]
movaps xmm3, xmm5
movaps xmm2, xmm4
test edx, edx
je 0x1004e926
mov ecx, dword [edx]
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [esp + 0x60]
mov eax, dword [edx + 8]
mov ebx, dword [esp + 0x64]
add eax, ecx
xorps xmm2, xmm2
xorps xmm3, xmm3
cvtsi2ss xmm3, eax
mov eax, ebx
sub eax, dword [edx + 0xc]
sub eax, dword [edx + 4]
xorps xmm1, xmm1
divss xmm3, xmm0
cvtsi2ss xmm2, ecx
cvtsi2ss xmm1, ebx
divss xmm2, xmm0
xorps xmm0, xmm0
addss xmm3, xmm3
cvtsi2ss xmm0, eax
mov eax, ebx
sub eax, dword [edx + 4]
addss xmm2, xmm2
divss xmm0, xmm1
subss xmm2, xmm5
addss xmm0, xmm0
subss xmm3, xmm5
maxss xmm2, xmm4
subss xmm0, xmm5
minss xmm3, xmm5
maxss xmm0, xmm4
movaps xmm4, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
divss xmm0, xmm1
addss xmm0, xmm0
subss xmm0, xmm5
minss xmm0, xmm5
movaps xmm5, xmm0
movss dword [esi], xmm2
movss dword [esi + 4], xmm5
movss dword [esi + 8], xmm6
mov eax, dword [edi + 0x28]
mov dword [esi + 0xc], eax
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0x30]
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0x34]
mov dword [esi + 0x18], eax
movss dword [esi + 0x1c], xmm2
movss dword [esi + 0x20], xmm4
movss dword [esi + 0x24], xmm6
mov eax, dword [edi + 0x28]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x2c], eax
mov eax, dword [edi + 0x30]
mov dword [esi + 0x30], eax
mov eax, dword [edi + 0x34]
mov dword [esi + 0x34], eax
movss dword [esi + 0x38], xmm3
movss dword [esi + 0x3c], xmm5
movss dword [esi + 0x40], xmm6
mov eax, dword [edi + 0x28]
mov dword [esi + 0x44], eax
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x48], eax
mov eax, dword [edi + 0x30]
mov dword [esi + 0x4c], eax
mov eax, dword [edi + 0x34]
mov dword [esi + 0x50], eax
movss dword [esi + 0x54], xmm3
movss dword [esi + 0x58], xmm4
movss dword [esi + 0x5c], xmm6
mov eax, dword [edi + 0x28]
mov dword [esi + 0x60], eax
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x64], eax
mov eax, dword [edi + 0x30]
mov dword [esi + 0x68], eax
mov eax, dword [edi + 0x34]
mov dword [esi + 0x6c], eax
mov eax, dword [esp + 0x1c]
mov ebx, dword [eax + 0x14]
jmp 0x1004eb2f
movss xmm0, dword [edi + 0x44]
xorps xmm6, xmm6
comiss xmm0, xmm6
mov esi, dword [esp + 0x50]
movss xmm5, dword [0x1018197c]
jbe 0x1004e9ed
movaps xmm6, xmm5
minss xmm6, xmm0
movss xmm4, dword [0x10196fc0]
movaps xmm3, xmm5
movaps xmm2, xmm4
test edx, edx
je 0x1004ea8d
mov ecx, dword [edx]
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [esp + 0x60]
mov eax, dword [edx + 8]
mov ebx, dword [esp + 0x64]
add eax, ecx
xorps xmm2, xmm2
xorps xmm3, xmm3
cvtsi2ss xmm3, eax
mov eax, ebx
sub eax, dword [edx + 0xc]
sub eax, dword [edx + 4]
xorps xmm1, xmm1
divss xmm3, xmm0
cvtsi2ss xmm2, ecx
cvtsi2ss xmm1, ebx
divss xmm2, xmm0
xorps xmm0, xmm0
addss xmm3, xmm3
cvtsi2ss xmm0, eax
mov eax, ebx
sub eax, dword [edx + 4]
addss xmm2, xmm2
divss xmm0, xmm1
subss xmm2, xmm5
addss xmm0, xmm0
subss xmm3, xmm5
maxss xmm2, xmm4
subss xmm0, xmm5
minss xmm3, xmm5
maxss xmm0, xmm4
movaps xmm4, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
divss xmm0, xmm1
addss xmm0, xmm0
subss xmm0, xmm5
minss xmm0, xmm5
movaps xmm5, xmm0
movss dword [esi], xmm2
movss dword [esi + 4], xmm5
movss dword [esi + 8], xmm6
mov eax, dword [edi + 0x18]
mov dword [esi + 0xc], eax
mov eax, dword [edi + 0x1c]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0x20]
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0x24]
mov dword [esi + 0x18], eax
movss dword [esi + 0x1c], xmm2
movss dword [esi + 0x20], xmm4
movss dword [esi + 0x24], xmm6
mov eax, dword [edi + 0x18]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0x1c]
mov dword [esi + 0x2c], eax
mov eax, dword [edi + 0x20]
mov dword [esi + 0x30], eax
mov eax, dword [edi + 0x24]
mov dword [esi + 0x34], eax
movss dword [esi + 0x38], xmm3
movss dword [esi + 0x3c], xmm5
movss dword [esi + 0x40], xmm6
mov eax, dword [edi + 0x18]
mov dword [esi + 0x44], eax
mov eax, dword [edi + 0x1c]
mov dword [esi + 0x48], eax
mov eax, dword [edi + 0x20]
mov dword [esi + 0x4c], eax
mov eax, dword [edi + 0x24]
mov dword [esi + 0x50], eax
movss dword [esi + 0x54], xmm3
movss dword [esi + 0x58], xmm4
movss dword [esi + 0x5c], xmm6
mov eax, dword [edi + 0x18]
mov dword [esi + 0x60], eax
mov eax, dword [edi + 0x1c]
mov dword [esi + 0x64], eax
mov eax, dword [edi + 0x20]
mov dword [esi + 0x68], eax
mov eax, dword [edi + 0x24]
mov dword [esi + 0x6c], eax
mov eax, dword [esp + 0x1c]
mov ebx, dword [eax + 0x18]
mov dword [esp + 0x14], 0x1c
mov edi, dword [esp + 0x38]
mov esi, dword [esp + 0x1c]
push 0
mov eax, dword [edi]
push dword [esi + 0x28]
push edi
call dword [eax + 0x3c]
movd xmm0, dword [esp + 0x60]
lea ecx, [esp + 0x98]
mov eax, dword [edi]
cvtdq2ps xmm0, xmm0
push ecx
push 1
push edi
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
movss dword [esp + 0xac], xmm0
movd xmm0, dword [esp + 0x70]
cvtdq2ps xmm0, xmm0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0x3f800000
movss dword [esp + 0xb0], xmm0
call dword [eax + 0xb0]
mov eax, dword [edi]
lea ecx, [esp + 0x88]
push 0xffffffffffffffff
push ecx
push dword [esp + 0x20]
push edi
call dword [eax + 0x8c]
push dword [esp + 0x48]
mov eax, dword [edi]
push dword [esp + 0x48]
push edi
call dword [eax + 0x90]
push dword [esi + 0x2c]
mov eax, dword [edi]
push edi
call dword [eax + 0xac]
mov eax, dword [edi]
push dword [esp + 0x40]
mov ecx, dword [ebx]
mov esi, dword [eax + 0x44]
call fcn.10099a90
push eax
push edi
call esi
mov eax, dword [edi]
mov ecx, dword [esp + 0x40]
mov dword [ebx + 0xc], ecx
mov edi, dword [eax + 0x2c]
mov eax, dword [ebx + 8]
test eax, eax
jne 0x1004ec3e
mov esi, dword [ebx + 0x18]
lea edx, [esp + 0x3c]
push edx
push 0
push dword [ebx + 0x14]
mov dword [esp + 0x48], eax
push dword [ebx + 0x10]
mov eax, dword [ecx]
push ecx
call dword [eax + 0x30]
test eax, eax
js 0x1004ec39
push esi
push dword [esp + 0x40]
call fcn.1001cdc0
mov eax, dword [esp + 0x44]
add esp, 8
jmp 0x1004ec3b
xor eax, eax
mov dword [ebx + 8], eax
mov esi, dword [esp + 0x38]
push 0
push 0
push eax
push esi
call edi
mov eax, dword [esi]
mov ecx, dword [esp + 0x40]
mov dword [ebx + 0x24], ecx
mov edi, dword [eax + 0x24]
mov eax, dword [ebx + 0x20]
test eax, eax
jne 0x1004ec97
mov esi, dword [ebx + 0x30]
lea edx, [esp + 0x40]
push edx
push 0
push dword [ebx + 0x2c]
mov dword [esp + 0x4c], eax
push dword [ebx + 0x28]
mov eax, dword [ecx]
push ecx
call dword [eax + 0x3c]
test eax, eax
js 0x1004ec8e
push esi
push dword [esp + 0x44]
call fcn.1001cdc0
mov eax, dword [esp + 0x48]
add esp, 8
jmp 0x1004ec90
xor eax, eax
mov esi, dword [esp + 0x38]
mov dword [ebx + 0x20], eax
push 0
push 0
push eax
push esi
call edi
mov eax, dword [esi]
push 0
push 0
push 0
push esi
call dword [eax + 0x5c]
mov ebx, dword [esp + 0x1c]
lea ecx, [esp + 0x4c]
mov eax, dword [esi]
push ecx
lea ecx, [esp + 0x18]
push ecx
lea ecx, [ebx + 0x28]
push ecx
push 1
push 0
push esi
call dword [eax + 0x48]
mov eax, dword [esi]
push 5
push esi
call dword [eax + 0x60]
push dword [esp + 0x30]
mov ecx, dword [ebx]
lea eax, [esp + 0x28]
push eax
add ecx, 0x410
call fcn.10083f50
mov eax, dword [esi]
push 0
push 4
push esi
call dword [eax + 0x34]
mov ecx, dword [ebx]
call fcn.10081580
mov edx, dword [esp + 0x24]
test edx, edx
je 0x1004ed2f
mov ecx, dword [esp + 0x2c]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffffc
cmp ecx, 0x1000
jb 0x1004ed25
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004e1a4
push ecx
push edx
call fcn.10174919
add esp, 8
mov esi, dword [esp + 0x6c]
mov ebx, dword [esp + 0x74]
mov edi, dword [ebp + 8]
mov dword [edi], 0
mov dword [edi + 4], 0
mov dword [edi + 8], 0
test esi, esi
je 0x1004e6c9
sub ebx, esi
mov eax, esi
and ebx, 0xfffffff8
cmp ebx, 0x1000
jb 0x1004ed79
mov esi, dword [eax - 4]
add ebx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1004e1a4
push ebx
push esi
call fcn.10174919
add esp, 8
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
mov dword [eax], 0x502
mov dword [eax + 4], 0x502
mov dword [eax + 8], 0
mov esp, ebp
pop ebp
ret 0xc
call fcn.1001b2f0
call fcn.1001b2b0
int3