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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x20
mov edi, ecx
mov eax, edx
sub eax, ecx
cmp eax, 0xee404
jge 0x10215e56
mov ebp, edx
mov ecx, edi
mov edx, ebp
add esp, 0x20
pop esi
pop edi
pop ebx
pop ebp
jmp 0x10216330
mov esi, dword [esp + 0x34]
mov ecx, edi
mov ebp, edx
jmp 0x10215e82
mov ecx, edi
mov edx, ebp
push esi
call fcn.10215e30
mov ecx, dword [esp + 4]
add esp, 4
mov edx, ebx
mov ebp, ebx
mov edi, ecx
mov eax, edx
sub eax, ecx
cmp eax, 0xee404
jl 0x10215e46
test esi, esi
jle 0x1021630d
mov dword [esp + 0x18], edx
shr eax, 2
mov ebx, 0x23755a23
mov dword [esp], ecx
mul ebx
shr edx, 0xb
imul eax, edx, 0x7384
mov ecx, dword [esp]
mov dword [esp + 0x14], eax
lea edi, [ecx + eax]
mov edx, ebp
lea eax, [ebp - 0x7384]
mov dword [esp + 4], eax
sub eax, ecx
cmp eax, 0x120ca1
mov dword [esp + 0xc], ebp
mov dword [esp + 0x1c], esi
jl 0x10216060
shr eax, 2
mul ebx
mov ebx, edx
mov ecx, dword [esp]
shr ebx, 0xa
add ebx, 1
shr ebx, 3
imul ebp, ebx, 0xe708
add ebp, ecx
imul esi, ebx, 0x7384
lea eax, [ecx + esi]
mov dword [esp + 8], eax
mov eax, dword [ecx + esi]
and eax, 0xfffffffe
cmp eax, 2
jne 0x10215f13
push ecx
push dword [esp + 0xc]
call fcn.10218aa0
mov ecx, dword [esp + 8]
add esp, 8
mov eax, dword [ebp]
and eax, 0xfffffffe
cmp eax, 2
jne 0x10215f4e
push dword [esp + 8]
push ebp
call fcn.10218aa0
mov ecx, dword [esp + 8]
add esp, 8
mov eax, dword [esp + 8]
mov eax, dword [eax]
and eax, 0xfffffffe
cmp eax, 2
jne 0x10215f4e
push ecx
push dword [esp + 0xc]
call fcn.10218aa0
mov ecx, dword [esp + 8]
add esp, 8
add esi, edi
mov eax, ebx
neg eax
imul ebp, eax, 0x7384
lea eax, [edi + ebp]
mov dword [esp + 0x10], eax
mov eax, dword [edi]
and eax, 0xfffffffe
cmp eax, 2
jne 0x10215f7c
push dword [esp + 0x10]
push edi
call fcn.10218aa0
mov ecx, dword [esp + 8]
add esp, 8
add ebx, ebx
mov eax, dword [esi]
and eax, 0xfffffffe
cmp eax, 2
jne 0x10215fb1
push edi
push esi
call fcn.10218aa0
mov ecx, dword [esp + 8]
add esp, 8
mov eax, dword [edi]
and eax, 0xfffffffe
cmp eax, 2
jne 0x10215fb1
push dword [esp + 0x10]
push edi
call fcn.10218aa0
mov ecx, dword [esp + 8]
add esp, 8
mov edx, dword [esp + 4]
lea esi, [edx + ebp]
neg ebx
imul ebx, ebx, 0x7384
add ebx, edx
mov eax, dword [edx + ebp]
and eax, 0xfffffffe
cmp eax, 2
jne 0x10215fdf
push ebx
push esi
call fcn.10218aa0
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 8]
add esp, 8
mov eax, dword [edx]
and eax, 0xfffffffe
cmp eax, 2
mov ebp, dword [esp + 0xc]
jne 0x10216013
push esi
push edx
call fcn.10218aa0
mov ecx, dword [esp + 8]
add esp, 8
mov eax, dword [esi]
and eax, 0xfffffffe
cmp eax, 2
jne 0x10216013
push ebx
push esi
call fcn.10218aa0
mov ecx, dword [esp + 8]
add esp, 8
mov eax, dword [edi]
and eax, 0xfffffffe
cmp eax, 2
jne 0x1021602e
push dword [esp + 8]
push edi
call fcn.10218aa0
mov ecx, dword [esp + 8]
add esp, 8
mov eax, dword [esi]
and eax, 0xfffffffe
cmp eax, 2
jne 0x102160b3
push edi
push esi
call fcn.10218aa0
mov ecx, dword [esp + 8]
add esp, 8
mov eax, dword [edi]
and eax, 0xfffffffe
cmp eax, 2
je 0x102160a2
jmp 0x102160b3
mov eax, dword [edi]
and eax, 0xfffffffe
cmp eax, 2
jne 0x10216078
push ecx
push edi
call fcn.10218aa0
mov ecx, dword [esp + 8]
add esp, 8
mov edx, dword [esp + 4]
mov eax, dword [edx]
and eax, 0xfffffffe
cmp eax, 2
jne 0x102160b3
push edi
push edx
call fcn.10218aa0
mov ecx, dword [esp + 8]
add esp, 8
mov eax, dword [edi]
and eax, 0xfffffffe
mov dword [esp + 8], ecx
cmp eax, 2
jne 0x102160b3
push dword [esp + 8]
push edi
call fcn.10218aa0
mov ecx, dword [esp + 8]
add esp, 8
mov edx, ebp
nop word cs:[eax + eax]
nop
mov eax, dword [edi - 0x7384]
and eax, 0xfffffffe
cmp eax, 2
je 0x102160e2
mov eax, dword [edi]
and eax, 0xfffffffe
cmp eax, 2
je 0x102160e2
add edi, 0xffff8c7c
cmp edi, ecx
ja 0x102160c0
mov eax, dword [esp + 0x14]
add eax, ecx
add eax, 0x7384
nop dword [eax]
mov ebx, eax
cmp eax, edx
jae 0x10216112
mov eax, dword [ebx]
and eax, 0xfffffffe
cmp eax, 2
je 0x10216112
mov edx, dword [edi]
and edx, 0xfffffffe
lea eax, [ebx + 0x7384]
cmp edx, 2
mov edx, ebp
jne 0x102160f0
mov dword [esp + 4], ebx
mov esi, edi
jmp 0x1021613c
push esi
push ebx
mov ebp, edi
mov edi, edx
call fcn.10218aa0
mov edx, edi
mov ecx, dword [esp + 8]
add esp, 8
add ebx, 0x7384
mov edi, ebp
cmp ebx, edx
jae 0x102161a0
mov dword [esp + 8], edi
jmp 0x1021615a
lea eax, [ebx + 0x7384]
mov dword [esp + 4], eax
add ebx, 0x7384
cmp ebx, edx
jae 0x102161a0
mov eax, dword [edi]
and eax, 0xfffffffe
cmp eax, 2
je 0x10216150
mov eax, dword [ebx]
and eax, 0xfffffffe
cmp eax, 2
je 0x102161a0
mov ebp, dword [esp + 4]
cmp ebx, ebp
je 0x10216146
push ebx
push ebp
mov edi, edx
call fcn.10218aa0
mov edx, edi
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 8]
add esp, 8
add ebp, 0x7384
mov dword [esp + 4], ebp
jmp 0x10216150
cmp esi, ecx
jbe 0x10216200
add esi, 0xffff8c7c
jmp 0x102161bc
mov edi, esi
lea esi, [ebp - 0x7384]
cmp ebp, ecx
jbe 0x10216210
mov ebp, esi
mov eax, dword [esi]
and eax, 0xfffffffe
cmp eax, 2
je 0x102161b2
lea eax, [ebp + 0x7384]
mov edx, dword [edi]
and edx, 0xfffffffe
cmp edx, 2
je 0x10216218
lea esi, [edi - 0x7384]
cmp eax, edi
je 0x102161b0
push ebp
push esi
call fcn.10218aa0
mov ecx, dword [esp + 8]
add esp, 8
jmp 0x102161b0
mov eax, esi
cmp eax, ecx
je 0x10216220
jmp 0x10216228
add esi, 0x7384
mov eax, esi
mov edx, dword [esp + 0xc]
cmp eax, ecx
jne 0x10216228
cmp ebx, edx
je 0x102162c0
cmp eax, ecx
je 0x10216280
lea esi, [eax - 0x7384]
cmp ebx, edx
jne 0x10216120
mov ebx, edx
mov ecx, edi
add edi, 0xffff8c7c
cmp eax, ecx
je 0x10216252
push edi
push esi
call fcn.10218aa0
add esp, 8
mov eax, dword [esp + 4]
add eax, 0xffff8c7c
mov dword [esp + 4], eax
push eax
push edi
call fcn.10218aa0
add esp, 8
mov edx, ebx
mov ecx, dword [esp]
jmp 0x1021613c
mov ebp, edx
mov esi, dword [esp + 4]
cmp esi, ebx
je 0x10216294
push esi
push edi
call fcn.10218aa0
add esp, 8
add esi, 0x7384
mov dword [esp + 4], esi
push ebx
push edi
call fcn.10218aa0
add esp, 8
add edi, 0x7384
add ebx, 0x7384
mov ecx, dword [esp]
mov esi, ecx
mov edx, ebp
jmp 0x1021613c
mov ebp, edx
mov esi, dword [esp + 0x1c]
mov eax, esi
sar eax, 1
sar esi, 2
add esi, eax
mov eax, edi
sub eax, ecx
sar eax, 2
imul eax, eax, 0x48562721
mov edx, dword [esp + 0x18]
mov ebx, edi
mov edi, dword [esp + 4]
sub edx, edi
sar edx, 2
imul edx, edx, 0x48562721
cmp eax, edx
jge 0x10215e60
mov edx, ebx
push esi
call fcn.10215e30
add esp, 4
mov ecx, edi
mov edx, ebp
jmp 0x10215e77
mov esi, ecx
mov edx, ebp
call fcn.10216700
mov ecx, esi
mov edx, ebp
add esp, 0x20
pop esi
pop edi
pop ebx
pop ebp
jmp 0x10216790
push ebp
push ebx
push edi
push esi
mov eax, 0x738c
call fcn.102e5760
cmp ecx, edx
je 0x102166f1
mov ebp, edx
mov edi, ecx
lea eax, [ecx + 0x7384]
cmp eax, edx
je 0x102166f1
lea ecx, [edi + 0x1c]
mov dword [esp + 0x20], ecx
mov esi, 0x7414
lea edx, [esp + 0x98]
mov ebx, edi
mov dword [esp], ebp
jmp 0x10216443
mov dword [ebx], ebp
mov eax, dword [esp + 4]
mov dword [ebx + 4], eax
movss xmm0, dword [esp + 8]
movss dword [ebx + 8], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [ebx + 0xc], xmm0
movss xmm0, dword [esp + 0x14]
movss dword [ebx + 0x10], xmm0
mov eax, dword [esp + 0x10]
mov dword [ebx + 0x14], eax
mov eax, dword [esp + 0x18]
mov dword [ebx + 0x18], eax
movups xmm0, xmmword [esp + 0x78]
movups xmm1, xmmword [esp + 0x88]
movups xmmword [ebx + 0x1c], xmm0
movups xmmword [ebx + 0x2c], xmm1
movups xmm0, xmmword [esp + 0x28]
movups xmmword [ebx + 0x3c], xmm0
movups xmm0, xmmword [esp + 0x38]
movups xmmword [ebx + 0x4c], xmm0
movups xmm0, xmmword [esp + 0x48]
movups xmmword [ebx + 0x5c], xmm0
movups xmm0, xmmword [esp + 0x58]
movups xmmword [ebx + 0x6c], xmm0
movups xmm0, xmmword [esp + 0x68]
movups xmmword [ebx + 0x7c], xmm0
mov eax, ebx
lea ecx, [esp + 0x98]
movss xmm0, dword [esp + 0x1c]
mov ebp, dword [esp]
movss dword [eax + 0x8c], xmm0
add eax, 0x90
push 0x72f3
push ecx
push eax
call sub.VCRUNTIME140.dll_memcpy
lea edx, [esp + 0xa4]
add esp, 0xc
lea eax, [ebx + 0x7384]
add esi, 0x7384
cmp eax, ebp
je 0x102166f1
mov ecx, ebx
mov ebx, eax
mov ebp, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 4], eax
movss xmm0, dword [ecx + 0x738c]
movss dword [esp + 8], xmm0
movss xmm0, dword [ecx + 0x7390]
movss dword [esp + 0xc], xmm0
movss xmm0, dword [ecx + 0x7394]
movss dword [esp + 0x14], xmm0
mov eax, dword [ecx + 0x739c]
mov dword [esp + 0x18], eax
mov eax, dword [ecx + 0x7398]
mov dword [esp + 0x10], eax
movups xmm0, xmmword [ecx + 0x73b0]
movups xmmword [esp + 0x88], xmm0
movups xmm0, xmmword [ecx + 0x73a0]
movups xmmword [esp + 0x78], xmm0
movups xmm0, xmmword [ecx + 0x73c0]
movups xmmword [esp + 0x28], xmm0
movups xmm0, xmmword [ecx + 0x73d0]
movups xmmword [esp + 0x38], xmm0
movups xmm0, xmmword [ecx + 0x73e0]
movups xmmword [esp + 0x48], xmm0
movups xmm0, xmmword [ecx + 0x73f0]
movups xmmword [esp + 0x58], xmm0
movups xmm0, xmmword [ecx + 0x7400]
movups xmmword [esp + 0x68], xmm0
movss xmm0, dword [ecx + 0x7410]
movss dword [esp + 0x1c], xmm0
add ecx, 0x7414
push 0x72f3
push ecx
push edx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, ebp
and eax, 0xfffffffe
xor eax, 2
jne 0x10216380
mov dword [esp + 0x24], ebp
cmp ebx, edi
je 0x10216659
mov ebp, esi
nop word cs:[eax + eax]
nop
lea eax, [edi + ebp]
mov ecx, dword [edi + ebp - 0x7414]
mov edx, dword [edi + ebp - 0x7410]
mov dword [edi + ebp - 0x8c], edx
mov dword [edi + ebp - 0x90], ecx
movss xmm0, dword [edi + ebp - 0x740c]
movss dword [edi + ebp - 0x88], xmm0
movss xmm0, dword [edi + ebp - 0x7408]
movss dword [edi + ebp - 0x84], xmm0
movss xmm0, dword [edi + ebp - 0x7404]
movss dword [edi + ebp - 0x80], xmm0
mov ecx, dword [edi + ebp - 0x7400]
mov edx, dword [edi + ebp - 0x73fc]
mov dword [edi + ebp - 0x78], edx
mov dword [edi + ebp - 0x7c], ecx
movups xmm0, xmmword [edi + ebp - 0x73f8]
movups xmmword [edi + ebp - 0x74], xmm0
movups xmm0, xmmword [edi + ebp - 0x73e8]
movups xmmword [edi + ebp - 0x64], xmm0
movss xmm0, dword [edi + ebp - 0x73d8]
movss dword [edi + ebp - 0x54], xmm0
movss xmm0, dword [edi + ebp - 0x73d4]
movss dword [edi + ebp - 0x50], xmm0
movss xmm0, dword [edi + ebp - 0x73d0]
movss dword [edi + ebp - 0x4c], xmm0
movups xmm0, xmmword [edi + ebp - 0x73cc]
movups xmmword [edi + ebp - 0x48], xmm0
movups xmm0, xmmword [edi + ebp - 0x73bc]
movups xmmword [edi + ebp - 0x38], xmm0
movups xmm0, xmmword [edi + ebp - 0x73ac]
movups xmmword [edi + ebp - 0x28], xmm0
movups xmm0, xmmword [edi + ebp - 0x739c]
movups xmmword [edi + ebp - 0x18], xmm0
movss xmm0, dword [edi + ebp - 0x738c]
movss dword [edi + ebp - 8], xmm0
movss xmm0, dword [edi + ebp - 0x7388]
movss dword [edi + ebp - 4], xmm0
lea ecx, [edi + ebp - 0x7384]
push 0x72f3
push ecx
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebp, 0xffff8c7c
cmp ebp, 0x90
jne 0x10216530
mov eax, dword [esp + 0x24]
mov dword [edi], eax
mov eax, dword [esp + 4]
mov dword [edi + 4], eax
movss xmm0, dword [esp + 8]
movss dword [edi + 8], xmm0
movss xmm0, dword [esp + 0xc]
movss dword [edi + 0xc], xmm0
movss xmm0, dword [esp + 0x14]
movss dword [edi + 0x10], xmm0
mov eax, dword [esp + 0x10]
mov dword [edi + 0x14], eax
mov eax, dword [esp + 0x18]
mov dword [edi + 0x18], eax
movups xmm0, xmmword [esp + 0x78]
movups xmm1, xmmword [esp + 0x88]
mov eax, dword [esp + 0x20]
movups xmmword [eax + 0x10], xmm1
movups xmmword [eax], xmm0
movups xmm0, xmmword [esp + 0x28]
movups xmmword [edi + 0x3c], xmm0
movups xmm0, xmmword [esp + 0x38]
movups xmmword [edi + 0x4c], xmm0
movups xmm0, xmmword [esp + 0x48]
movups xmmword [edi + 0x5c], xmm0
movups xmm0, xmmword [esp + 0x58]
movups xmmword [edi + 0x6c], xmm0
movups xmm0, xmmword [esp + 0x68]
movups xmmword [edi + 0x7c], xmm0
mov eax, edi
mov ebp, dword [esp]
lea ecx, [esp + 0x98]
movss xmm0, dword [esp + 0x1c]
jmp 0x1021640c
add esp, 0x738c
pop esi
pop edi
pop ebx
pop ebp
ret
push ebp
push ebx
push edi
push esi
mov eax, 0x738c
call fcn.102e5760
mov ebx, edx
sub ebx, ecx
cmp ebx, 0x7385
jl 0x1021695c
mov esi, edx
mov edi, ecx
lea eax, [ecx + 0x1c]
mov dword [esp], eax
lea eax, [ecx + 0x90]
mov dword [esp + 4], eax
add esi, 0xffff8d0c
nop dword [eax + eax]
lea eax, [esi - 0x90]
push 0x7384
push eax
lea eax, [esp + 0x10]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
movsd xmm0, qword [edi]
movsd qword [esi - 0x90], xmm0
movss xmm0, dword [edi + 8]
movss dword [esi - 0x88], xmm0
movss xmm0, dword [edi + 0xc]
movss dword [esi - 0x84], xmm0
movss xmm0, dword [edi + 0x10]
movss dword [esi - 0x80], xmm0
mov eax, dword [edi + 0x14]
mov ecx, dword [edi + 0x18]
mov dword [esi - 0x78], ecx
mov dword [esi - 0x7c], eax
mov eax, dword [esp]
movups xmm0, xmmword [eax]
movups xmm1, xmmword [eax + 0x10]
movups xmmword [esi - 0x64], xmm1
movups xmmword [esi - 0x74], xmm0
movss xmm0, dword [edi + 0x3c]
movss dword [esi - 0x54], xmm0
movss xmm0, dword [edi + 0x40]
movss dword [esi - 0x50], xmm0
movss xmm0, dword [edi + 0x44]
movss dword [esi - 0x4c], xmm0
movss xmm0, dword [edi + 0x48]
movss dword [esi - 0x48], xmm0
movss xmm0, dword [edi + 0x4c]
movss dword [esi - 0x44], xmm0
movss xmm0, dword [edi + 0x50]
movss dword [esi - 0x40], xmm0
movss xmm0, dword [edi + 0x54]
movss dword [esi - 0x3c], xmm0
movss xmm0, dword [edi + 0x58]
movss dword [esi - 0x38], xmm0
movss xmm0, dword [edi + 0x5c]
movss dword [esi - 0x34], xmm0
movss xmm0, dword [edi + 0x60]
movss dword [esi - 0x30], xmm0
movss xmm0, dword [edi + 0x64]
movss dword [esi - 0x2c], xmm0
movss xmm0, dword [edi + 0x68]
movss dword [esi - 0x28], xmm0
movss xmm0, dword [edi + 0x6c]
movss dword [esi - 0x24], xmm0
movss xmm0, dword [edi + 0x70]
movss dword [esi - 0x20], xmm0
movss xmm0, dword [edi + 0x74]
movss dword [esi - 0x1c], xmm0
movss xmm0, dword [edi + 0x78]
movss dword [esi - 0x18], xmm0
movss xmm0, dword [edi + 0x7c]
movss dword [esi - 0x14], xmm0
movss xmm0, dword [edi + 0x80]
movss dword [esi - 0x10], xmm0
movss xmm0, dword [edi + 0x84]
movss dword [esi - 0xc], xmm0
movss xmm0, dword [edi + 0x88]
movss dword [esi - 8], xmm0
movss xmm0, dword [edi + 0x8c]
movss dword [esi - 4], xmm0
push 0x72f3
push dword [esp + 8]
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, 0xffff8c7c
mov eax, ebx
sar eax, 2
imul eax, eax, 0x48562721
mov ecx, edi
xor edx, edx
lea ebp, [esp + 8]
push ebp
push eax
call fcn.10216970
add esp, 8
add esi, 0xffff8c7c
cmp ebx, 0x7384
jg 0x102167d0
add esp, 0x738c
pop esi
pop edi
pop ebx
pop ebp
ret