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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x158
mov eax, dword [ebp + 8]
jmp 0x4250e0
jmp 0x4250e7
jmp 0x4250e9
jmp 0x4250ee
mov edi, dword [edx]
mov esi, edx
mov dword [esp + 0x14], edx
mov ebx, dword [eax]
mov eax, ebx
mov dword [esp + 0x3c], ebx
mul edi
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
mov dword [esp + 8], eax
mul edi
mov dword [esp + 0x5c], edi
mov dword [esp + 4], eax
mov dword [esp], edx
mov esi, dword [esi + 4]
mov eax, esi
mov dword [esp + 0x54], esi
mul ebx
add eax, dword [esp + 4]
adc edx, dword [esp]
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], edx
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov dword [esp + 0x40], eax
mul edi
mov dword [esp], edx
mov ebx, eax
mov eax, esi
mul dword [esp + 8]
mov esi, edx
mov edi, eax
add edi, ebx
adc esi, dword [esp]
mov eax, dword [esp + 0x14]
mov ebx, dword [eax + 8]
mov eax, ebx
mov dword [esp + 0x10], ebx
mul dword [esp + 0x3c]
add eax, edi
adc edx, esi
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], edx
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0xc]
mov dword [esp], eax
mul dword [esp + 0x5c]
mov dword [esp + 4], edx
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x40]
mov edi, dword [esp + 0x54]
mul edi
mov dword [esp + 0x1c], edx
mov dword [esp + 0xc], eax
mov eax, ebx
mul dword [esp + 8]
mov esi, eax
mov ebx, edx
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x4c], eax
mul dword [esp + 0x3c]
add esi, dword [esp + 0xc]
adc ebx, dword [esp + 0x1c]
add esi, dword [esp + 0x24]
adc ebx, dword [esp + 4]
add esi, eax
adc ebx, edx
mov dword [esp + 0x90], esi
mov dword [esp + 0x94], ebx
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x24], eax
mov ebx, dword [esp + 0x5c]
mul ebx
mov dword [esp + 4], edx
mov dword [esp + 0x1c], eax
mov eax, dword [esp]
mul edi
mov dword [esp + 0xc], edx
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x10]
mul dword [esp + 0x40]
mov edi, edx
mov esi, eax
mov eax, dword [esp + 0x4c]
mul dword [esp + 8]
mov dword [esp + 0x30], eax
mov dword [esp + 0x50], edx
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x20], eax
mul dword [esp + 0x3c]
add esi, dword [esp + 0x18]
adc edi, dword [esp + 0xc]
add esi, dword [esp + 0x30]
adc edi, dword [esp + 0x50]
add esi, dword [esp + 0x1c]
adc edi, dword [esp + 4]
add esi, eax
adc edi, edx
mov dword [esp + 0x98], esi
mov dword [esp + 0x9c], edi
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x14]
mov dword [esp + 4], eax
mul ebx
mov dword [esp + 0x1c], edx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x24]
mul dword [esp + 0x54]
mov dword [esp + 0x18], edx
mov dword [esp + 0x30], eax
mov eax, dword [esp]
mul dword [esp + 0x10]
mov dword [esp + 0x60], edx
mov dword [esp + 0x2c], eax
mov edi, dword [esp + 0x4c]
mov eax, edi
mul dword [esp + 0x40]
mov ebx, edx
mov esi, eax
mov eax, dword [esp + 0x20]
mul dword [esp + 8]
mov dword [esp + 0x28], eax
mov dword [esp + 0x48], edx
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x14]
mov dword [esp + 0x50], eax
mul dword [esp + 0x3c]
add esi, dword [esp + 0x2c]
adc ebx, dword [esp + 0x60]
add esi, dword [esp + 0x30]
adc ebx, dword [esp + 0x18]
add esi, dword [esp + 0x28]
adc ebx, dword [esp + 0x48]
add esi, dword [esp + 0xc]
adc ebx, dword [esp + 0x1c]
add esi, eax
adc ebx, edx
mov dword [esp + 0xa0], esi
mov dword [esp + 0xa4], ebx
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x1c], eax
mul dword [esp + 0x5c]
mov dword [esp + 0xc], edx
mov dword [esp + 0x18], eax
mov eax, dword [esp + 4]
mul dword [esp + 0x54]
mov dword [esp + 0x30], edx
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x24]
mul dword [esp + 0x10]
mov dword [esp + 0x2c], edx
mov dword [esp + 0x38], eax
mov eax, edi
mul dword [esp]
mov esi, edx
mov edi, eax
mov eax, dword [esp + 0x20]
mul dword [esp + 0x40]
mov dword [esp + 0x44], edx
mov ebx, eax
mov eax, dword [esp + 0x50]
mul dword [esp + 8]
mov dword [esp + 0x34], eax
mov dword [esp + 0x28], edx
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x60], eax
mul dword [esp + 0x3c]
add edi, dword [esp + 0x38]
adc esi, dword [esp + 0x2c]
add edi, ebx
adc esi, dword [esp + 0x44]
add edi, dword [esp + 0x48]
adc esi, dword [esp + 0x30]
add edi, dword [esp + 0x34]
adc esi, dword [esp + 0x28]
add edi, dword [esp + 0x18]
adc esi, dword [esp + 0xc]
add edi, eax
adc esi, edx
mov dword [esp + 0xa8], edi
mov dword [esp + 0xac], esi
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x1c]
mov dword [esp + 0xc], eax
mul dword [esp + 0x5c]
mov dword [esp + 0x30], edx
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x1c]
mul dword [esp + 0x54]
mov dword [esp + 0x2c], edx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 4]
mul dword [esp + 0x10]
mov dword [esp + 0x38], edx
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x24]
mul dword [esp + 0x4c]
mov dword [esp + 0x6c], edx
mov esi, eax
mov eax, dword [esp + 0x20]
mul dword [esp]
mov edi, edx
mov ebx, eax
mov eax, dword [esp + 0x50]
mul dword [esp + 0x40]
mov dword [esp + 0x68], edx
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x60]
mul dword [esp + 8]
mov dword [esp + 0x58], eax
mov dword [esp + 0x44], edx
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x18], eax
mul dword [esp + 0x3c]
add ebx, esi
adc edi, dword [esp + 0x6c]
add ebx, dword [esp + 0x34]
adc edi, dword [esp + 0x38]
add ebx, dword [esp + 0x64]
adc edi, dword [esp + 0x68]
add ebx, dword [esp + 0x28]
adc edi, dword [esp + 0x2c]
add ebx, dword [esp + 0x58]
adc edi, dword [esp + 0x44]
add ebx, dword [esp + 0x48]
adc edi, dword [esp + 0x30]
add ebx, eax
adc edi, edx
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xb4], edi
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x20]
mov dword [esp + 0x30], eax
mul dword [esp + 0x5c]
mov dword [esp + 0x48], edx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xc]
mul dword [esp + 0x54]
mov dword [esp + 0x28], edx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x1c]
mul dword [esp + 0x10]
mov dword [esp + 0x34], edx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 4]
mul dword [esp + 0x4c]
mov dword [esp + 0x68], edx
mov edi, eax
mov eax, dword [esp + 0x20]
mul dword [esp + 0x24]
mov dword [esp + 0x5c], edx
mov ebx, eax
mov eax, dword [esp + 0x50]
mul dword [esp]
mov dword [esp + 0x74], edx
mov esi, eax
mov eax, dword [esp + 0x60]
mul dword [esp + 0x40]
mov dword [esp + 0x64], edx
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x18]
mul dword [esp + 8]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x58], edx
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x20]
mov dword [esp + 0x14], eax
mul dword [esp + 0x3c]
add ebx, edi
mov edi, dword [esp + 0x5c]
adc edi, dword [esp + 0x68]
add ebx, esi
adc edi, dword [esp + 0x74]
add ebx, dword [esp + 0x44]
adc edi, dword [esp + 0x34]
add ebx, dword [esp + 0x70]
adc edi, dword [esp + 0x64]
add ebx, dword [esp + 0x38]
adc edi, dword [esp + 0x28]
add ebx, dword [esp + 0x6c]
adc edi, dword [esp + 0x58]
add ebx, dword [esp + 0x2c]
adc edi, dword [esp + 0x48]
add ebx, eax
mov dword [esp + 0x48], ebx
adc edi, edx
mov dword [esp + 0x5c], edi
mov eax, dword [esp + 0x30]
mul dword [esp + 0x54]
mov dword [esp + 0x54], edx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xc]
mul dword [esp + 0x10]
mov dword [esp + 0x28], edx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x1c]
mul dword [esp + 0x4c]
mov dword [esp + 0x34], edx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 4]
mul dword [esp + 0x20]
mov dword [esp + 0x68], edx
mov ebx, eax
mov eax, dword [esp + 0x50]
mul dword [esp + 0x24]
mov dword [esp + 0x3c], edx
mov esi, eax
mov edi, dword [esp + 0x60]
mov eax, edi
mul dword [esp]
mov dword [esp + 0x64], edx
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x18]
mul dword [esp + 0x40]
mov dword [esp + 0x58], edx
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x14]
mul dword [esp + 8]
add esi, ebx
mov ebx, dword [esp + 0x3c]
adc ebx, dword [esp + 0x68]
add esi, dword [esp + 0x44]
adc ebx, dword [esp + 0x34]
add esi, dword [esp + 0x70]
adc ebx, dword [esp + 0x64]
add esi, dword [esp + 0x38]
adc ebx, dword [esp + 0x28]
add esi, dword [esp + 0x6c]
adc ebx, dword [esp + 0x58]
add esi, dword [esp + 0x2c]
adc ebx, dword [esp + 0x54]
add esi, eax
mov dword [esp + 0x54], esi
adc ebx, edx
mov dword [esp + 0x3c], ebx
mov eax, dword [esp + 0x30]
mul dword [esp + 0x10]
mov dword [esp + 0x10], edx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xc]
mul dword [esp + 0x4c]
mov dword [esp + 0x28], edx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
mul ebx
mov dword [esp + 0x34], edx
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x50]
mul dword [esp + 4]
mov dword [esp + 8], edx
mov esi, eax
mov eax, edi
mul dword [esp + 0x24]
mov dword [esp + 0x68], edx
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x18]
mul dword [esp]
mov dword [esp + 0x44], edx
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x14]
mul dword [esp + 0x40]
add esi, dword [esp + 0x58]
mov edi, dword [esp + 8]
adc edi, dword [esp + 0x34]
add esi, dword [esp + 0x64]
adc edi, dword [esp + 0x68]
add esi, dword [esp + 0x38]
adc edi, dword [esp + 0x28]
add esi, dword [esp + 0x6c]
adc edi, dword [esp + 0x44]
add esi, dword [esp + 0x2c]
adc edi, dword [esp + 0x10]
add esi, eax
mov dword [esp + 0x40], esi
adc edi, edx
mov dword [esp + 8], edi
mov eax, dword [esp + 0x30]
mul dword [esp + 0x4c]
mov dword [esp + 0x10], edx
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xc]
mul ebx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x50]
mul ebx
mov dword [esp + 0x38], edx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x60]
mul dword [esp + 4]
mov esi, edx
mov edi, eax
mov eax, dword [esp + 0x18]
mul dword [esp + 0x24]
mov dword [esp + 0x34], edx
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x14]
mul dword [esp]
add edi, dword [esp + 0x44]
adc esi, dword [esp + 0x38]
add edi, dword [esp + 0x28]
adc esi, dword [esp + 0x2c]
add edi, dword [esp + 0x58]
adc esi, dword [esp + 0x34]
add edi, dword [esp + 0x4c]
adc esi, dword [esp + 0x10]
add edi, eax
mov dword [esp + 0x4c], edi
adc esi, edx
mov dword [esp + 0x2c], esi
mov eax, dword [esp + 0x30]
mul dword [esp + 0x20]
mov dword [esp + 0x20], edx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xc]
mul ebx
mov dword [esp + 0x28], edx
mov esi, eax
mov edi, dword [esp + 0x60]
mov eax, edi
mul dword [esp + 0x1c]
mov dword [esp], edx
mov ebx, eax
mov eax, dword [esp + 0x18]
mul dword [esp + 4]
mov dword [esp + 0x38], edx
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x14]
mul dword [esp + 0x24]
add ebx, esi
mov esi, dword [esp]
adc esi, dword [esp + 0x28]
add ebx, dword [esp + 0x34]
adc esi, dword [esp + 0x38]
add ebx, dword [esp + 0x10]
adc esi, dword [esp + 0x20]
add ebx, eax
adc esi, edx
mov dword [esp], esi
mov eax, dword [esp + 0x30]
mul dword [esp + 0x50]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], edx
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0x48]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0xc]
mul edi
mov dword [esp + 0x48], eax
mov dword [esp + 0x50], edx
mov eax, dword [esp + 0x5c]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0x18]
mul dword [esp + 0x1c]
mov esi, eax
mov edi, edx
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xc4], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0xc8], eax
mov eax, dword [esp + 0x14]
mul dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0xcc], ecx
add esi, dword [esp + 0x48]
adc edi, dword [esp + 0x50]
add esi, dword [esp + 0x20]
adc edi, dword [esp + 0x24]
add esi, eax
adc edi, edx
mov eax, dword [esp + 0x30]
mul dword [esp + 0x60]
mov dword [esp + 8], eax
mov dword [esp + 4], edx
mov eax, dword [esp + 0x4c]
mov dword [esp + 0xd0], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0xd4], eax
mov eax, dword [esp + 0x18]
mul dword [esp + 0xc]
mov ecx, eax
mov dword [esp + 0xd8], ebx
mov eax, dword [esp]
mov dword [esp + 0xdc], eax
add ecx, dword [esp + 8]
adc edx, dword [esp + 4]
mov dword [esp], edx
mov eax, dword [esp + 0x14]
mul dword [esp + 0x1c]
mov ebx, eax
add ebx, ecx
adc edx, dword [esp]
mov dword [esp + 4], edx
mov ecx, dword [esp + 0x30]
mov eax, ecx
mul dword [esp + 0x18]
mov dword [esp + 8], eax
mov dword [esp], edx
mov dword [esp + 0xe0], esi
mov dword [esp + 0xe4], edi
mov edi, dword [esp + 0x14]
mov eax, edi
mul dword [esp + 0xc]
mov esi, edx
mov dword [esp + 0xe8], ebx
mov edx, dword [esp + 4]
mov dword [esp + 0xec], edx
add eax, dword [esp + 8]
adc esi, dword [esp]
mov dword [esp + 0xf0], eax
mov eax, edi
mul ecx
mov dword [esp + 0xf4], esi
mov dword [esp + 0xfc], edx
mov dword [esp + 0xf8], eax
xor eax, eax
mov ecx, 0xffffffbc
xor edx, edx
jmp 0x4258b8
add eax, dword [esp + ecx*2 + 0x100]
adc edx, dword [esp + ecx*2 + 0x104]
mov esi, eax
and esi, 0x3fffffff
mov dword [esp + ecx + 0x150], esi
shrd eax, edx, 0x1e
shr edx, 0x1e
add ecx, 4
jne 0x4258ae
jmp 0x4258e6
mov dword [esp + 0x150], eax
jmp 0x4258f3
mov eax, 0xffffffb8
xorps xmm0, xmm0
jmp 0x425901
movsd xmm1, qword [esp + eax + 0x154]
unpcklps xmm1, xmm0
movups xmmword [esp + eax*2 + 0x108], xmm1
add eax, 8
jne 0x4258fb
jmp 0x42591c
mov ecx, dword [esp + 0x104]
mov ebx, dword [esp + 0x100]
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0xf8]
mov edx, dword [esp + 0xf4]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xf0]
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0xdc]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0xd8]
mov dword [esp + 8], edx
mov edx, 0x12
mov esi, dword [esp + 0xc0]
mov edi, dword [esp + 0xc4]
mov dword [esp + 0x20], edi
mov edi, ecx
mov dword [esp + 0x14], esi
mov esi, ecx
mov dword [esp], ebx
shld ecx, ebx, 0x1e
sar edi, 2
add ecx, eax
mov dword [esp + 0x1c], ecx
adc edi, dword [esp + 0x18]
mov dword [esp + 0x40], edi
mov eax, ebx
and eax, 3
shl eax, 0x1c
mov dword [esp + 0x3c], esi
mov ecx, esi
shld ecx, ebx, 0x1c
sar esi, 4
sub eax, ecx
mov edi, 0
sbb edi, esi
add eax, dword [esp + 0x24]
adc edi, dword [esp + 4]
mov dword [esp + 0x18], edi
mov ebx, edi
jmp 0x4259d2
mov edi, dword [esp + 0x1c]
mov dword [esp + edx*8 + 0x68], edi
mov edi, dword [esp + 0x40]
mov dword [esp + edx*8 + 0x6c], edi
mov dword [esp + edx*8 + 0x60], eax
mov dword [esp + edx*8 + 0x64], ebx
mov esi, dword [esp]
mov edi, esi
and edi, 0xf
shl edi, 0x1a
mov ecx, dword [esp + edx*8 + 0x58]
sub ecx, edi
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + edx*8 + 0x5c]
sbb ecx, 0
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x3c]
mov edi, ecx
shld edi, esi, 0x16
mov ebx, ecx
sar ebx, 0xa
mov esi, dword [esp + 8]
sub esi, edi
mov edi, dword [esp + 0xc]
sbb edi, ebx
mov ebx, dword [esp + 0x24]
mov dword [esp + edx*8 + 0x58], ebx
mov ebx, dword [esp + 4]
mov dword [esp + edx*8 + 0x5c], ebx
mov dword [esp + edx*8 + 0x48], esi
mov dword [esp + edx*8 + 0x4c], edi
mov esi, dword [esp]
shl esi, 0x14
and esi, 0x3ff00000
mov edi, dword [esp + edx*8 + 0x40]
sub edi, esi
mov dword [esp + 8], edi
mov esi, dword [esp + edx*8 + 0x44]
sbb esi, 0
mov ebx, ecx
mov edi, dword [esp]
shld ebx, edi, 0x10
sar ecx, 0x10
add ebx, dword [esp + 0x14]
adc ecx, dword [esp + 0x20]
mov edi, dword [esp + edx*8 + 0x2c]
mov dword [esp + 0x20], edi
mov edi, dword [esp + 8]
mov dword [esp + edx*8 + 0x40], edi
mov dword [esp + 0xc], esi
mov dword [esp + edx*8 + 0x44], esi
mov dword [esp + edx*8 + 0x30], ebx
mov dword [esp + edx*8 + 0x34], ecx
movzx esi, word [esp]
shl esi, 0xe
add esi, dword [esp + edx*8 + 0x28]
mov ecx, dword [esp + 0x20]
adc ecx, 0
mov dword [esp + edx*8 + 0x28], esi
mov dword [esp + edx*8 + 0x2c], ecx
dec edx
cmp edx, 9
mov dword [esp + 0x20], ecx
mov edi, dword [esp + 0x40]
mov ebx, dword [esp + 0x1c]
mov ecx, edi
ja 0x425981
xor edx, edx
mov ecx, 0xffffffdc
xor edi, edi
mov ebx, dword [esp + 0x10]
jmp 0x425ad5
mov esi, edx
add esi, dword [esp + ecx*2 + 0xc0]
mov eax, edi
adc eax, dword [esp + ecx*2 + 0xc4]
mov edi, esi
and edi, 0x3fffffff
mov edx, eax
shld edx, esi, 2
mov dword [ebx + ecx + 0x24], edi
mov edi, eax
sar edi, 0x1e
add ecx, 4
jne 0x425acd
jmp 0x425b08
shld eax, esi, 0x10
movzx edi, word [ebx + 0x20]
mov ecx, eax
shl ecx, 6
mov esi, dword [ebx + 0xc]
sub esi, ecx
mov edx, dword [ebx + 0x18]
mov ecx, eax
shl ecx, 0xc
and ecx, 0x3ffff000
sub edx, ecx
mov ecx, eax
sar ecx, 0x10
add ecx, edi
mov edi, eax
shr edi, 0x1f
mov ebx, edi
shl ebx, 6
add ebx, esi
mov esi, dword [esp + 0x10]
sub dword [esi], edi
mov esi, dword [esp + 0x10]
mov dword [esi + 0xc], ebx
mov ebx, dword [esp + 0x10]
mov esi, edi
shl esi, 0xc
add esi, edx
mov edx, eax
sar edx, 0x12
mov dword [ebx + 0x18], esi
mov esi, edi
shl esi, 0xe
add esi, edx
movzx edx, ax
shl edx, 0xe
add edx, dword [ebx + 0x1c]
sub edx, esi
mov dword [ebx + 0x1c], edx
shl edi, 0x10
add edi, ecx
mov dword [ebx + 0x20], edi
mov ecx, 0xffffffdc
jmp 0x425b83
add eax, dword [ebx + ecx + 0x24]
mov edx, eax
and edx, 0x3fffffff
mov dword [ebx + ecx + 0x24], edx
sar eax, 0x1e
add ecx, 4
jne 0x425b7f
jmp 0x425b9d
jmp 0x425ba4
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret