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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x74
push ebx
push esi
push edi
push 0x5ea6c0
call fcn.005cc534
fmul qword [ebp + 0xc]
push 6
fadd st(0), st(0)
fmul qword [0x5ea6b8]
fstp qword [esp + 0x60]
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x60]
push eax
push ecx
call fcn.00515820
fstp qword [esp + 0x68]
mov edi, dword [ebp + 8]
movzx ecx, word [edi + 0xe]
mov ebx, dword [edi + 0x20]
add esp, 0x10
test ebx, ebx
mov dword [esp + 0x30], ecx
je 0x482e65
mov dword [esp + 0x34], ebx
jmp 0x482e70
mov eax, 1
shl eax, cl
mov dword [esp + 0x34], eax
mov eax, dword [edi + 4]
mov esi, dword [edi + 8]
mov dword [esp + 0x3c], eax
imul eax, ecx
add eax, 0x1f
and eax, 0xffffffe0
cdq
and edx, 7
add eax, edx
sar eax, 3
test esi, esi
mov dword [esp + 0x40], esi
mov dword [esp + 0x2c], eax
jl 0x4836ae
mov eax, dword [edi + 0x10]
test eax, eax
je 0x482eac
cmp eax, 3
jne 0x4836ae
cmp word [edi + 0xe], 8
jbe 0x482ecb
xor edx, edx
cmp eax, 3
setne dl
dec edx
and edx, 3
add edx, ebx
lea eax, [edi + edx*4 + 0x28]
mov dword [esp + 0x20], eax
jmp 0x482ed7
mov ecx, dword [esp + 0x34]
lea edx, [edi + ecx*4 + 0x28]
mov dword [esp + 0x20], edx
fld qword [esp + 0x58]
push 6
fcos
sub esp, 8
fstp qword [esp]
call fcn.00515820
fstp qword [esp + 0x74]
fld qword [esp + 0x64]
add esp, 0xc
fsin
push 6
sub esp, 8
fstp qword [esp]
call fcn.00515820
fstp qword [esp + 0x6c]
neg esi
mov dword [esp + 0x50], esi
fild dword [esp + 0x50]
add esp, 0xc
fmul qword [esp + 0x60]
call fcn.005cbd54
fild dword [esp + 0x40]
fld qword [esp + 0x68]
mov edi, eax
mov dword [esp + 0x44], edi
fmul st(1)
fst qword [esp + 0x50]
call fcn.005cbd54
fild dword [esp + 0x3c]
mov dword [esp + 0x1c], eax
fst qword [esp + 0x58]
fmul qword [esp + 0x68]
fstp qword [esp + 0x48]
fmul qword [esp + 0x60]
fsubr qword [esp + 0x48]
call fcn.005cbd54
fld qword [esp + 0x58]
fmul qword [esp + 0x60]
mov ebx, eax
fld qword [esp + 0x50]
fadd st(1)
call fcn.005cbd54
fld qword [esp + 0x48]
mov dword [esp + 0x24], eax
call fcn.005cbd54
mov esi, eax
call fcn.005cbd54
cmp ebx, esi
mov dword [esp + 0x38], eax
mov ecx, ebx
jl 0x482f8d
mov ecx, esi
cmp edi, ecx
jge 0x482f95
mov ecx, edi
jmp 0x482f9d
cmp ebx, esi
mov ecx, ebx
jl 0x482f9d
mov ecx, esi
test ecx, ecx
jle 0x482fab
mov dword [esp + 0x10], 0
jmp 0x482fc9
cmp ebx, esi
mov ecx, ebx
jl 0x482fb3
mov ecx, esi
cmp edi, ecx
jge 0x482fbd
mov dword [esp + 0x10], edi
jmp 0x482fc9
cmp ebx, esi
mov dword [esp + 0x10], ebx
jl 0x482fc9
mov dword [esp + 0x10], esi
mov edx, dword [esp + 0x24]
cmp edx, eax
mov ecx, edx
jl 0x482fd5
mov ecx, eax
mov edi, dword [esp + 0x1c]
cmp edi, ecx
jge 0x482fe1
mov ecx, edi
jmp 0x482fe9
cmp edx, eax
mov ecx, edx
jl 0x482fe9
mov ecx, eax
test ecx, ecx
jle 0x482ff1
xor edi, edi
jmp 0x483011
cmp edx, eax
mov ecx, edx
jl 0x482ff9
mov ecx, eax
cmp edi, ecx
jge 0x483003
mov edi, dword [esp + 0x1c]
jmp 0x483011
cmp edx, eax
jge 0x48300f
mov eax, dword [esp + 0x24]
mov edi, eax
jmp 0x483015
mov edi, eax
mov eax, dword [esp + 0x24]
cmp ebx, esi
mov dword [esp + 0x28], edi
mov ecx, ebx
jg 0x483021
mov ecx, esi
mov edx, dword [esp + 0x44]
cmp edx, ecx
jle 0x48302d
mov ebx, edx
jmp 0x483033
cmp ebx, esi
jg 0x483033
mov ebx, esi
mov edx, dword [esp + 0x38]
cmp eax, edx
mov ecx, eax
jg 0x48303f
mov ecx, edx
mov esi, dword [esp + 0x1c]
cmp esi, ecx
jg 0x48304f
cmp eax, edx
mov esi, eax
jg 0x48304f
mov esi, edx
fld qword [ebp + 0xc]
fld qword [0x5ea6b0]
call fcn.005cd68a
fcom qword [0x5e76a0]
fnstsw ax
test ah, 1
jne 0x48311d
fcom qword [0x5ea6a8]
fnstsw ax
test ah, 1
jne 0x4830af
fcom qword [0x5ea6a0]
fnstsw ax
test ah, 5
jp 0x4830af
fstp st(0)
sub esp, 8
fild dword [esp + 0x18]
fabs
fstp qword [esp]
call fcn.005cf880
call fcn.005cbd54
sub esi, edi
mov dword [esp + 0x4c], esi
fild dword [esp + 0x4c]
jmp 0x4831c3
fcom qword [0x5ea6a0]
fnstsw ax
test ah, 1
jne 0x4830f0
fcomp qword [0x5ea698]
fnstsw ax
test ah, 5
jp 0x4830f2
sub ebx, dword [esp + 0x10]
mov dword [esp + 0x44], ebx
fild dword [esp + 0x44]
sub esp, 8
fstp qword [esp]
call fcn.005cf880
call fcn.005cbd54
fild dword [esp + 0x30]
fabs
jmp 0x4831c3
fstp st(0)
sub ebx, dword [esp + 0x10]
mov dword [esp + 0x44], ebx
fild dword [esp + 0x44]
sub esp, 8
fstp qword [esp]
call fcn.005cf880
call fcn.005cbd54
sub esi, edi
mov dword [esp + 0x4c], esi
fild dword [esp + 0x4c]
jmp 0x4831c3
fcom qword [0x5ea690]
fnstsw ax
test ah, 0x41
jp 0x48315f
fcom qword [0x5ea688]
fnstsw ax
test ah, 0x41
jne 0x48315f
mov edi, dword [esp + 0x10]
fstp st(0)
sub ebx, edi
mov dword [esp + 0x44], ebx
fild dword [esp + 0x44]
sub esp, 8
fstp qword [esp]
call fcn.005cf880
call fcn.005cbd54
fild dword [esp + 0x30]
fabs
jmp 0x4831c3
fcom qword [0x5ea688]
fnstsw ax
test ah, 0x41
jp 0x48319b
fcomp qword [0x5ea680]
fnstsw ax
test ah, 0x41
jne 0x48319d
fild dword [esp + 0x10]
sub esp, 8
fabs
fstp qword [esp]
call fcn.005cf880
call fcn.005cbd54
sub esi, edi
mov dword [esp + 0x4c], esi
fild dword [esp + 0x4c]
jmp 0x4831c3
fstp st(0)
sub ebx, dword [esp + 0x10]
mov dword [esp + 0x44], ebx
fild dword [esp + 0x44]
sub esp, 8
fstp qword [esp]
call fcn.005cf880
call fcn.005cbd54
sub esi, edi
mov dword [esp + 0x4c], esi
fild dword [esp + 0x4c]
mov ebx, eax
fstp qword [esp]
mov dword [esp + 0x24], ebx
call fcn.005cf880
add esp, 8
call fcn.005cbd54
mov ecx, eax
mov eax, ebx
imul eax, dword [esp + 0x30]
mov ebx, dword [esp + 0x20]
mov edi, dword [ebp + 8]
add eax, 0x1f
and eax, 0xffffffe0
cdq
and edx, 7
add eax, edx
sar eax, 3
mov dword [esp + 0x50], eax
imul eax, ecx
mov dword [esp + 0x38], eax
sub ebx, edi
add eax, ebx
push eax
push 0
mov dword [esp + 0x20], ecx
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
test eax, eax
mov dword [esp + 0x58], eax
je 0x4836ae
mov esi, edi
mov ecx, ebx
mov edx, ecx
shr ecx, 2
mov edi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov edx, dword [esp + 0x18]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x38]
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
add ebx, eax
mov dword [eax + 0x14], esi
mov ecx, esi
mov edx, ecx
shr ecx, 2
xor eax, eax
mov edi, ebx
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x30]
xor edx, edx
dec eax
cmp eax, 0x1f
mov dword [esp + 0x14], ebx
mov dword [esp + 0x24], edx
ja case.0x48327e.2
movzx eax, byte [eax + 0x4836cc]
jmp dword [eax*4 + 0x4836b8]
cmp dword [ebp + 0x14], 0xffffff
jne case.0x48327e.2
or eax, 0xffffffff
mov edi, ebx
jmp 0x48338b
cmp dword [esp + 0x34], edx
jle case.0x48327e.2
mov eax, dword [ebp + 0x14]
mov edi, dword [ebp + 8]
mov ecx, eax
shr ecx, 0x10
mov dword [esp + 0x44], ecx
cmp byte [edi + edx*4 + 0x28], cl
jne 0x483305
cmp byte [edi + edx*4 + 0x29], ah
jne 0x483305
cmp byte [edi + edx*4 + 0x2a], al
jne 0x483305
cmp dword [esp + 0x30], 4
jne 0x4832d5
mov eax, edx
shl eax, 4
or edx, eax
mov edi, ebx
mov al, dl
mov bl, al
mov bh, bl
mov ecx, esi
shr ecx, 2
mov eax, ebx
shl eax, 0x10
mov ax, bx
mov ebx, dword [esp + 0x14]
rep stosd dword es:[edi], eax
mov ecx, esi
mov esi, dword [esp + 0x38]
and ecx, 3
rep stosb byte es:[edi], al
mov edi, dword [ebp + 8]
mov ecx, dword [esp + 0x44]
mov eax, dword [ebp + 0x14]
inc edx
cmp edx, dword [esp + 0x34]
jl 0x4832b5
jmp case.0x48327e.2
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x28], 0x7c00
mov eax, dword [ebp + 0x14]
movzx ecx, al
movzx edx, ah
jne 0x483345
shr eax, 0x10
and ecx, 0xfffffff8
shl ecx, 5
movzx eax, al
and edx, 0xfffffff8
add edx, ecx
shr eax, 3
lea ecx, [eax + edx*4]
mov dword [esp + 0x24], ecx
mov al, cl
jmp 0x48337d
shr eax, 0x10
and ecx, 0xfffffff8
shl ecx, 5
movzx eax, al
and edx, 0xfffffffc
add edx, ecx
shr eax, 3
lea ecx, [eax + edx*8]
mov dword [esp + 0x24], ecx
mov al, cl
jmp 0x48337d
mov eax, dword [ebp + 0x14]
movzx ecx, ah
mov ch, al
shr eax, 0x10
movzx edx, al
shl ecx, 8
or ecx, edx
mov eax, ecx
mov dword [esp + 0x24], eax
mov edi, ebx
mov bl, al
mov bh, bl
mov eax, ebx
shl eax, 0x10
mov ax, bx
mov ecx, esi
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x18]
test eax, eax
jle 0x4836a3
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], eax
mov dword [esp + 0x44], ecx
nop
mov eax, dword [esp + 0x1c]
xor edi, edi
test eax, eax
jle 0x48367d
fild dword [esp + 0x38]
mov ebx, dword [esp + 0x34]
fld qword [esp + 0x60]
mov dword [esp + 0x28], edi
fmul st(1)
fstp qword [esp + 0x70]
fmul qword [esp + 0x68]
fstp qword [esp + 0x78]
lea esp, [esp]
mov edx, dword [esp + 0x10]
lea eax, [edi + edx]
mov dword [esp + 0x48], eax
fild dword [esp + 0x48]
sub esp, 8
fst qword [esp + 0x50]
fmul qword [esp + 0x70]
fadd qword [esp + 0x78]
fstp qword [esp]
call fcn.005cbfd0
call fcn.005cbd54
fld qword [esp + 0x50]
fmul qword [esp + 0x68]
mov esi, eax
dec esi
fsubr qword [esp + 0x80]
fstp qword [esp]
call fcn.005cbfd0
add esp, 8
call fcn.005cbd54
test esi, esi
mov ecx, eax
jl case.0x483478.2
cmp esi, dword [esp + 0x3c]
jge 0x48360e
test ecx, ecx
jl 0x48360e
cmp ecx, dword [esp + 0x40]
jge 0x48360e
mov eax, dword [esp + 0x30]
dec eax
cmp eax, 0x1f
ja case.0x483478.2
movzx edx, byte [eax + 0x483708]
jmp dword [edx*4 + 0x4836ec]
imul ecx, dword [esp + 0x2c]
mov eax, esi
cdq
and edx, 7
add eax, edx
mov edx, dword [esp + 0x20]
add edx, ecx
mov ecx, esi
sar eax, 3
and ecx, 0x80000007
jns 0x4834a4
dec ecx
or ecx, 0xfffffff8
inc ecx
mov dword [esp + 0x48], ebx
mov ebx, 0x80
sar ebx, cl
test byte [eax + edx], bl
mov ebx, dword [esp + 0x48]
je 0x4834d4
mov ecx, edi
and ecx, 0x80000007
jns 0x4834c7
dec ecx
or ecx, 0xfffffff8
inc ecx
mov eax, 0x80
sar eax, cl
mov byte [esp + 0xf], al
jmp 0x4834d9
mov byte [esp + 0xf], 0
mov ecx, dword [esp + 0x14]
mov eax, edi
cdq
and edx, 7
add eax, edx
sar eax, 3
add eax, ebx
lea esi, [eax + ecx]
mov ecx, edi
and ecx, 0x80000007
jns 0x4834fc
dec ecx
or ecx, 0xfffffff8
inc ecx
mov al, byte [esp + 0xf]
mov edx, 0x80
sar edx, cl
mov cl, byte [esi]
not dl
and dl, cl
or dl, al
mov byte [esi], dl
jmp case.0x483478.2
imul ecx, dword [esp + 0x2c]
mov eax, esi
cdq
sub eax, edx
mov edx, dword [esp + 0x20]
add edx, ecx
mov ebx, esi
sar eax, 1
and ebx, 1
test ebx, ebx
sete cl
dec cl
and cl, 0x1f
add cl, 0xf0
mov byte [esp + 0xf], cl
mov cl, byte [eax + edx]
mov al, byte [esp + 0xf]
mov esi, edi
and esi, 1
and cl, al
cmp ebx, esi
je 0x48355d
test cl, 0xf0
je 0x48355a
shr cl, 4
jmp 0x48355d
shl cl, 4
mov ebx, dword [esp + 0x34]
mov eax, edi
cdq
sub eax, edx
mov edx, dword [esp + 0x14]
sar eax, 1
add eax, ebx
mov bl, byte [eax + edx]
add eax, edx
test esi, esi
sete dl
dec dl
and dl, 0x1f
add dl, 0xf0
not dl
and dl, bl
mov ebx, dword [esp + 0x34]
or dl, cl
mov byte [eax], dl
jmp case.0x483478.2
imul ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x20]
add ecx, esi
mov cl, byte [ecx + edx]
mov edx, dword [esp + 0x14]
lea eax, [ebx + edi]
mov byte [eax + edx], cl
jmp case.0x483478.2
imul ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x20]
add eax, ecx
mov dx, word [eax + esi*2]
mov eax, dword [esp + 0x14]
lea ecx, [ebx + edi*2]
mov word [ecx + eax], dx
jmp case.0x483478.2
imul ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x20]
add eax, ecx
lea edx, [esi + esi*2]
mov ecx, dword [edx + eax]
mov edx, dword [esp + 0x28]
lea eax, [ebx + edx]
mov edx, dword [esp + 0x14]
and ecx, 0xffffff
mov dword [eax + edx], ecx
jmp case.0x483478.2
imul ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x20]
add eax, ecx
mov edx, dword [eax + esi*4]
mov eax, dword [esp + 0x14]
lea ecx, [ebx + edi*4]
mov dword [ecx + eax], edx
jmp case.0x483478.2
cmp esi, dword [esp + 0x1c]
jge case.0x483478.2
test ecx, ecx
jl case.0x483478.2
cmp ecx, dword [esp + 0x18]
jge case.0x483478.2
mov eax, dword [esp + 0x30]
cmp eax, 0x10
je 0x483655
cmp eax, 0x18
je 0x483641
cmp eax, 0x20
jne case.0x483478.2
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x14]
lea ecx, [ebx + edi*4]
mov dword [ecx + eax], edx
jmp case.0x483478.2
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x24]
lea edx, [ebx + ecx]
mov ecx, dword [esp + 0x14]
mov dword [edx + ecx], eax
jmp case.0x483478.2
mov ax, word [esp + 0x24]
mov ecx, dword [esp + 0x14]
lea edx, [ebx + edi*2]
mov word [edx + ecx], ax
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x1c]
inc edi
add ecx, 3
cmp edi, eax
mov dword [esp + 0x28], ecx
jl 0x4833f0
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x44]
inc edx
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x50]
add ecx, edx
dec eax
mov dword [esp + 0x34], ecx
mov dword [esp + 0x44], eax
jne 0x4833c0
mov eax, dword [esp + 0x58]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret