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

Disassembly:
sub esp, 0x88
mov eax, dword [esp + 0x90]
push ebx
push ebp
push esi
mov ecx, dword [eax + 4]
mov esi, dword [eax + 0xc]
mov ebp, dword [eax + 0x10]
mov ebx, dword [eax + 0x14]
mov edx, dword [eax + 0x1c]
mov dword [esp + 0x7c], ecx
mov ecx, dword [eax + 8]
mov dword [esp + 0x68], edx
mov dword [esp + 0x80], ecx
mov ecx, dword [eax + 0x18]
push edi
mov edi, dword [eax]
mov eax, edx
mul edi
mov dword [esp + 0x88], ebp
mov dword [esp + 0x50], eax
mov eax, ecx
mov dword [esp + 0x48], edx
mul edi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x4c], eax
mov eax, ebx
mov dword [esp + 0x64], edx
mul edi
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x18], eax
mov eax, ebp
mov dword [esp + 0x14], edx
mul edi
mov dword [esp + 0x90], ecx
mov dword [esp + 0x2c], eax
mov eax, esi
mov dword [esp + 0x1c], edx
mul edi
mov dword [esp + 0x74], esi
mov ebp, eax
mov dword [esp + 0x30], edx
mov eax, dword [esp + 0x84]
mul edi
mov edi, eax
mov ebx, edx
mov eax, dword [esp + 0x80]
mul dword [esp + 0x7c]
mov ecx, eax
mov esi, edx
mov eax, dword [esp + 0x7c]
mul eax
mov dword [esp + 0x10], eax
mov eax, edx
xor edx, edx
add eax, ecx
mov dword [esp + 0x54], eax
adc edx, edx
xor eax, eax
add edx, esi
adc eax, eax
add edx, edi
mov dword [esp + 0x58], edx
adc eax, 0
xor ecx, ecx
add eax, ebx
adc ecx, ecx
add eax, ebp
mov dword [esp + 0x5c], eax
adc ecx, 0
xor eax, eax
add ecx, dword [esp + 0x30]
adc eax, eax
add ecx, dword [esp + 0x2c]
mov dword [esp + 0x30], ecx
adc eax, 0
xor ebx, ebx
add eax, dword [esp + 0x1c]
adc ebx, ebx
add eax, dword [esp + 0x18]
mov dword [esp + 0x2c], eax
adc ebx, 0
xor ebp, ebp
mov esi, 0
add ebx, dword [esp + 0x14]
adc ebp, ebp
add dword [esp + 0x4c], ebx
adc ebp, 0
xor eax, eax
add ebp, dword [esp + 0x64]
adc eax, eax
add ebp, dword [esp + 0x50]
adc eax, 0
or ecx, 0xffffffff
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x10]
mul ecx
mov eax, dword [esp + 0x10]
mov edi, eax
neg edi
mov ecx, edi
add ecx, edx
adc esi, esi
xor ebx, ebx
add esi, edi
adc ebx, ebx
add esi, edx
adc ebx, 0
add eax, edi
mov eax, 0
adc eax, eax
add eax, ecx
mov ecx, 0
adc ecx, ecx
add eax, dword [esp + 0x54]
mov dword [esp + 0x18], eax
adc ecx, 0
xor eax, eax
add ecx, esi
adc eax, eax
add ecx, dword [esp + 0x58]
mov dword [esp + 0x70], ecx
adc eax, 0
xor ecx, ecx
add ebx, edx
add ebx, eax
adc ecx, ecx
add ebx, dword [esp + 0x5c]
mov dword [esp + 0x60], ebx
adc ecx, 0
mov ebx, dword [esp + 0x1c]
xor eax, eax
add ecx, dword [esp + 0x30]
mov dword [esp + 0x40], ecx
adc eax, eax
xor ecx, ecx
add eax, dword [esp + 0x2c]
mov dword [esp + 0x3c], eax
adc ecx, ecx
xor esi, esi
add ecx, dword [esp + 0x4c]
adc esi, esi
add ecx, dword [esp + 0x10]
mov dword [esp + 0x38], ecx
adc esi, 0
xor eax, eax
add esi, ebp
adc eax, eax
add esi, edi
mov dword [esp + 0x28], esi
adc eax, 0
add ebx, dword [esp + 0x48]
xor ecx, ecx
add ebx, eax
mov eax, dword [esp + 0x6c]
adc ecx, ecx
add ebx, edx
mov dword [esp + 0x1c], ebx
adc ecx, 0
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x80]
mul ecx
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x24], edx
mul ecx
mov dword [esp + 0x14], 0
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x4c], edx
mul ecx
mov dword [esp + 0x2c], 0
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x50], edx
mul ecx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x58], edx
mul ecx
mov ebp, eax
mov dword [esp + 0x48], edx
mov eax, dword [esp + 0x84]
mul ecx
mov edi, eax
mov ebx, edx
mov eax, ecx
mul ecx
mov ecx, eax
mov esi, edx
mov eax, dword [esp + 0x7c]
mul dword [esp + 0x80]
mov dword [esp + 0x10], eax
xor eax, eax
add edx, ecx
adc eax, eax
xor ecx, ecx
add eax, esi
adc ecx, ecx
add eax, edi
mov dword [esp + 0x68], eax
adc ecx, 0
xor esi, esi
add ecx, ebx
adc esi, esi
add ecx, ebp
adc esi, 0
xor edi, edi
add esi, dword [esp + 0x48]
adc edi, edi
add esi, dword [esp + 0x5c]
adc edi, 0
xor ebx, ebx
add edi, dword [esp + 0x58]
adc ebx, ebx
add edi, dword [esp + 0x54]
adc ebx, 0
xor ebp, ebp
add ebx, dword [esp + 0x50]
adc ebp, ebp
add ebx, dword [esp + 0x64]
adc ebp, 0
xor eax, eax
add ebp, dword [esp + 0x4c]
adc eax, eax
add ebp, dword [esp + 0x30]
adc eax, 0
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x10]
add eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
adc dword [esp + 0x14], 0
add dword [esp + 0x14], edx
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x70]
adc edx, edx
add dword [esp + 0x14], eax
mov dword [esp + 0x18], 0
adc edx, 0
add edx, dword [esp + 0x68]
adc dword [esp + 0x18], 0
add edx, dword [esp + 0x60]
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0x18]
adc edx, 0
xor eax, eax
add edx, ecx
adc eax, eax
add edx, dword [esp + 0x40]
mov dword [esp + 0x18], edx
adc eax, 0
xor ecx, ecx
add eax, esi
mov esi, 0
adc ecx, ecx
add dword [esp + 0x3c], eax
adc ecx, 0
xor eax, eax
add ecx, edi
mov edi, dword [esp + 0x10]
adc eax, eax
add dword [esp + 0x38], ecx
adc eax, 0
xor ecx, ecx
add eax, ebx
adc ecx, ecx
add dword [esp + 0x28], eax
adc ecx, 0
xor eax, eax
add ecx, ebp
mov ebp, dword [esp + 0x48]
adc eax, eax
add ecx, dword [esp + 0x1c]
mov dword [esp + 0x40], ecx
adc eax, 0
add ebp, dword [esp + 0x24]
xor ecx, ecx
add ebp, eax
mov eax, dword [esp + 0x10]
adc ecx, ecx
add ebp, dword [esp + 0x20]
adc ecx, 0
or edx, 0xffffffff
mul edx
neg edi
mov dword [esp + 0x34], ecx
mov ebx, edx
mov ecx, edx
add ecx, edi
adc esi, esi
xor eax, eax
add esi, ebx
adc eax, eax
add esi, edi
adc eax, 0
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x10]
add eax, edi
mov eax, 0
adc eax, eax
xor edx, edx
add eax, ecx
adc edx, edx
add eax, dword [esp + 0x14]
mov dword [esp + 0x70], eax
adc edx, 0
xor eax, eax
add edx, esi
adc eax, eax
add edx, dword [esp + 0x2c]
mov dword [esp + 0x48], edx
mov edx, dword [esp + 0x1c]
adc eax, 0
xor ecx, ecx
add edx, ebx
add edx, eax
adc ecx, ecx
add edx, dword [esp + 0x18]
mov dword [esp + 0x1c], edx
adc ecx, 0
xor eax, eax
add ecx, dword [esp + 0x3c]
mov dword [esp + 0x54], ecx
adc eax, eax
xor ecx, ecx
add eax, dword [esp + 0x38]
mov dword [esp + 0x50], eax
adc ecx, ecx
xor eax, eax
add ecx, dword [esp + 0x28]
adc eax, eax
add ecx, dword [esp + 0x10]
mov dword [esp + 0x64], ecx
adc eax, 0
movzx eax, al
cdq
add eax, dword [esp + 0x40]
mov ecx, edx
adc ecx, 0
add eax, edi
mov dword [esp + 0x4c], eax
adc ecx, 0
xor eax, eax
add ecx, ebp
adc eax, eax
add ecx, ebx
mov dword [esp + 0x30], ecx
adc eax, 0
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x6c]
mul ecx
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x18], edx
mul ecx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x60], edx
mul ecx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x3c], edx
mul ecx
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x28], edx
mul ecx
mov ebp, eax
mov dword [esp + 0x20], edx
mov eax, ecx
mul ecx
mov edi, eax
mov ebx, edx
mov eax, dword [esp + 0x80]
mul ecx
mov ecx, eax
mov esi, edx
mov eax, dword [esp + 0x7c]
mul dword [esp + 0x84]
mov dword [esp + 0x10], eax
xor eax, eax
add edx, ecx
adc eax, eax
xor ecx, ecx
add eax, esi
adc ecx, ecx
add eax, edi
mov dword [esp + 0x5c], eax
adc ecx, 0
xor esi, esi
add ecx, ebx
adc esi, esi
add ecx, ebp
mov dword [esp + 0x58], ecx
adc esi, 0
xor edi, edi
add esi, dword [esp + 0x20]
adc edi, edi
add esi, dword [esp + 0x24]
adc edi, 0
xor ebx, ebx
add edi, dword [esp + 0x28]
adc ebx, ebx
add edi, dword [esp + 0x38]
adc ebx, 0
xor ebp, ebp
mov ecx, dword [esp + 0x10]
add ebx, dword [esp + 0x3c]
mov dword [esp + 0x2c], 0
adc ebp, ebp
add ebx, dword [esp + 0x40]
adc ebp, 0
xor eax, eax
add ebp, dword [esp + 0x60]
adc eax, eax
add ebp, dword [esp + 0x68]
adc eax, 0
mov dword [esp + 0x20], eax
xor eax, eax
add ecx, dword [esp + 0x70]
mov dword [esp + 0x10], ecx
adc eax, eax
add eax, edx
mov edx, dword [esp + 0x2c]
adc edx, edx
add eax, dword [esp + 0x48]
mov dword [esp + 0x24], eax
adc edx, 0
xor eax, eax
add edx, dword [esp + 0x5c]
adc eax, eax
add edx, dword [esp + 0x1c]
mov dword [esp + 0x2c], edx
adc eax, 0
movzx eax, al
cdq
add eax, dword [esp + 0x58]
adc edx, 0
add eax, dword [esp + 0x54]
mov dword [esp + 0x28], eax
adc edx, 0
xor ecx, ecx
add edx, esi
mov esi, 0
adc ecx, ecx
add edx, dword [esp + 0x50]
mov dword [esp + 0x38], edx
adc ecx, 0
xor eax, eax
add ecx, edi
adc eax, eax
add ecx, dword [esp + 0x64]
mov dword [esp + 0x3c], ecx
adc eax, 0
xor ecx, ecx
add eax, ebx
mov ebx, dword [esp + 0x10]
mov edi, ebx
adc ecx, ecx
add eax, dword [esp + 0x4c]
mov dword [esp + 0x40], eax
adc ecx, 0
xor eax, eax
add ecx, ebp
mov ebp, dword [esp + 0x20]
adc eax, eax
add ecx, dword [esp + 0x30]
mov dword [esp + 0x60], ecx
adc eax, 0
add ebp, dword [esp + 0x18]
xor ecx, ecx
add ebp, eax
mov eax, ebx
adc ecx, ecx
add ebp, dword [esp + 0x14]
adc ecx, 0
add ebp, dword [esp + 0x34]
adc ecx, 0
neg edi
mov dword [esp + 0x44], ecx
or ecx, 0xffffffff
mul ecx
mov ecx, edx
add ecx, edi
adc esi, esi
xor eax, eax
add esi, edx
adc eax, eax
add esi, edi
adc eax, 0
mov dword [esp + 0x1c], eax
mov eax, ebx
add eax, edi
mov eax, 0
adc eax, eax
xor ebx, ebx
add eax, ecx
adc ebx, ebx
add eax, dword [esp + 0x24]
mov dword [esp + 0x18], eax
adc ebx, 0
xor eax, eax
add ebx, esi
adc eax, eax
add ebx, dword [esp + 0x2c]
mov dword [esp + 0x48], ebx
adc eax, 0
mov ebx, dword [esp + 0x1c]
xor ecx, ecx
add ebx, edx
add ebx, eax
adc ecx, ecx
add ebx, dword [esp + 0x28]
mov dword [esp + 0x1c], ebx
adc ecx, 0
xor eax, eax
add ecx, dword [esp + 0x38]
mov dword [esp + 0x5c], ecx
adc eax, eax
xor ecx, ecx
add eax, dword [esp + 0x3c]
mov dword [esp + 0x58], eax
adc ecx, ecx
xor eax, eax
add ecx, dword [esp + 0x40]
adc eax, eax
add ecx, dword [esp + 0x10]
mov dword [esp + 0x54], ecx
adc eax, 0
xor ecx, ecx
add eax, dword [esp + 0x60]
adc ecx, ecx
add eax, edi
mov dword [esp + 0x50], eax
adc ecx, 0
xor eax, eax
add ecx, ebp
adc eax, eax
add ecx, edx
mov dword [esp + 0x64], ecx
mov ecx, dword [esp + 0x74]
adc eax, 0
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x6c]
mul ecx
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x4c], edx
mul ecx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x60], edx
mul ecx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x3c], edx
mul ecx
mov dword [esp + 0x24], eax
mov eax, ecx
mov dword [esp + 0x28], edx
mul ecx
mov ebp, eax
mov dword [esp + 0x20], edx
mov eax, dword [esp + 0x84]
mul ecx
mov edi, eax
mov ebx, edx
mov eax, dword [esp + 0x80]
mul ecx
mov dword [esp + 0x34], 0
mov ecx, eax
mov dword [esp + 0x14], 0
mov eax, dword [esp + 0x7c]
mov esi, edx
mul dword [esp + 0x74]
add edx, ecx
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x34], 0
adc ecx, ecx
mov dword [esp + 0x70], edx
add ecx, esi
mov edx, dword [esp + 0x60]
mov esi, dword [esp + 0x34]
adc esi, esi
add ecx, edi
adc esi, 0
xor edi, edi
add esi, ebx
adc edi, edi
add esi, ebp
adc edi, 0
xor ebx, ebx
add edi, dword [esp + 0x20]
adc ebx, ebx
add edi, dword [esp + 0x24]
adc ebx, 0
xor ebp, ebp
add ebx, dword [esp + 0x28]
adc ebp, ebp
add ebx, dword [esp + 0x38]
adc ebp, 0
add ebp, dword [esp + 0x3c]
adc dword [esp + 0x14], 0
add ebp, dword [esp + 0x40]
adc dword [esp + 0x14], 0
add dword [esp + 0x14], edx
mov edx, 0
adc edx, edx
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x68]
add dword [esp + 0x14], edx
mov edx, 0
adc dword [esp + 0x10], 0
add dword [esp + 0x18], eax
mov eax, 0
adc eax, eax
add eax, dword [esp + 0x70]
adc edx, edx
add eax, dword [esp + 0x48]
mov dword [esp + 0x34], eax
adc edx, 0
add edx, ecx
mov ecx, 0
adc ecx, ecx
add edx, dword [esp + 0x1c]
mov dword [esp + 0x20], edx
adc ecx, 0
xor eax, eax
add ecx, esi
adc eax, eax
add ecx, dword [esp + 0x5c]
mov dword [esp + 0x24], ecx
adc eax, 0
xor ecx, ecx
add eax, edi
adc ecx, ecx
add eax, dword [esp + 0x58]
mov dword [esp + 0x28], eax
adc ecx, 0
xor eax, eax
add ecx, ebx
adc eax, eax
add ecx, dword [esp + 0x54]
mov dword [esp + 0x38], ecx
adc eax, 0
xor ecx, ecx
add eax, ebp
adc ecx, ecx
add eax, dword [esp + 0x50]
mov esi, 0
mov dword [esp + 0x3c], eax
adc ecx, 0
mov ebp, dword [esp + 0x18]
xor eax, eax
mov edi, ebp
add ecx, dword [esp + 0x14]
adc eax, eax
add ecx, dword [esp + 0x64]
mov dword [esp + 0x40], ecx
adc eax, 0
mov ecx, dword [esp + 0x10]
add ecx, dword [esp + 0x4c]
xor edx, edx
add ecx, eax
mov eax, ebp
adc edx, edx
add ecx, dword [esp + 0x30]
adc edx, 0
add ecx, dword [esp + 0x44]
mov dword [esp + 0x10], ecx
adc edx, 0
or ecx, 0xffffffff
neg edi
mov dword [esp + 0x30], edx
mul ecx
mov ecx, edi
mov ebx, edx
add ecx, ebx
adc esi, esi
xor eax, eax
add esi, edi
adc eax, eax
add esi, ebx
adc eax, 0
mov dword [esp + 0x2c], eax
mov eax, ebp
add eax, edi
mov ebp, 0
adc ebp, ebp
xor eax, eax
add ebp, ecx
adc eax, eax
add ebp, dword [esp + 0x34]
mov dword [esp + 0x60], ebp
adc eax, 0
mov ebp, dword [esp + 0x2c]
movzx eax, al
cdq
add eax, esi
adc edx, 0
add eax, dword [esp + 0x20]
mov dword [esp + 0x68], eax
adc edx, 0
xor ecx, ecx
add ebp, ebx
add ebp, edx
adc ecx, ecx
add ebp, dword [esp + 0x24]
mov dword [esp + 0x2c], ebp
adc ecx, 0
xor eax, eax
add ecx, dword [esp + 0x28]
mov dword [esp + 0x48], ecx
adc eax, eax
xor ecx, ecx
add eax, dword [esp + 0x38]
mov dword [esp + 0x5c], eax
adc ecx, ecx
xor eax, eax
add ecx, dword [esp + 0x3c]
adc eax, eax
add ecx, dword [esp + 0x18]
mov dword [esp + 0x58], ecx
adc eax, 0
xor ecx, ecx
add eax, dword [esp + 0x40]
adc ecx, ecx
add eax, edi
mov dword [esp + 0x54], eax
adc ecx, 0
mov dword [esp + 0x14], 0
xor eax, eax
mov dword [esp + 0x1c], 0
add ecx, dword [esp + 0x10]
adc eax, eax
add ecx, ebx
mov dword [esp + 0x50], ecx
adc eax, 0
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x6c]
mul ecx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x64], edx
mul ecx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x3c], edx
mul ecx
mov dword [esp + 0x24], eax
mov eax, ecx
mov dword [esp + 0x28], edx
mul ecx
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x20], edx
mul ecx
mov ebp, eax
mov dword [esp + 0x44], edx
mov eax, dword [esp + 0x84]
mul ecx
mov edi, eax
mov ebx, edx
mov eax, dword [esp + 0x80]
mul ecx
mov ecx, eax
mov esi, edx
mov eax, dword [esp + 0x7c]
mul dword [esp + 0x88]
mov dword [esp + 0x18], eax
xor eax, eax
add edx, ecx
adc eax, eax
xor ecx, ecx
add eax, esi
adc ecx, ecx
add eax, edi
mov dword [esp + 0x70], eax
adc ecx, 0
xor esi, esi
add ecx, ebx
adc esi, esi
add ecx, ebp
adc esi, 0
xor edi, edi
add esi, dword [esp + 0x44]
adc edi, edi
add esi, dword [esp + 0x34]
adc edi, 0
xor ebx, ebx
add edi, dword [esp + 0x20]
adc ebx, ebx
add edi, dword [esp + 0x24]
adc ebx, 0
xor ebp, ebp
add ebx, dword [esp + 0x28]
adc ebp, ebp
add ebx, dword [esp + 0x38]
adc ebp, 0
xor eax, eax
add ebp, dword [esp + 0x3c]
adc eax, eax
add ebp, dword [esp + 0x40]
adc eax, 0
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x18]
add eax, dword [esp + 0x60]
mov dword [esp + 0x18], eax
adc dword [esp + 0x14], 0
add dword [esp + 0x14], edx
mov edx, dword [esp + 0x1c]
adc edx, edx
mov eax, dword [esp + 0x68]
add dword [esp + 0x14], eax
mov dword [esp + 0x10], 0
adc edx, 0
add edx, dword [esp + 0x70]
adc dword [esp + 0x10], 0
add edx, dword [esp + 0x2c]
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x10]
adc edx, 0
xor eax, eax
add edx, ecx
adc eax, eax
add edx, dword [esp + 0x48]
mov dword [esp + 0x10], edx
adc eax, 0
xor ecx, ecx
add eax, esi
mov esi, 0
adc ecx, ecx
add eax, dword [esp + 0x5c]
mov dword [esp + 0x34], eax
adc ecx, 0
xor eax, eax
add ecx, edi
adc eax, eax
add ecx, dword [esp + 0x58]
mov dword [esp + 0x20], ecx
adc eax, 0
xor ecx, ecx
add eax, ebx
mov ebx, dword [esp + 0x18]
mov edi, ebx
adc ecx, ecx
add eax, dword [esp + 0x54]
mov dword [esp + 0x24], eax
adc ecx, 0
xor eax, eax
add ecx, ebp
mov ebp, dword [esp + 0x44]
adc eax, eax
add ecx, dword [esp + 0x50]
mov dword [esp + 0x28], ecx
adc eax, 0
add ebp, dword [esp + 0x64]
xor ecx, ecx
add ebp, eax
mov eax, ebx
adc ecx, ecx
add ebp, dword [esp + 0x4c]
adc ecx, 0
add ebp, dword [esp + 0x30]
adc ecx, 0
neg edi
mov dword [esp + 0x78], ecx
or ecx, 0xffffffff
mul ecx
mov ecx, edi
add ecx, edx
adc esi, esi
xor eax, eax
add esi, edi
adc eax, eax
add esi, edx
adc eax, 0
mov dword [esp + 0x2c], eax
mov eax, ebx
add eax, edi
mov eax, 0
adc eax, eax
xor ebx, ebx
add eax, ecx
adc ebx, ebx
add eax, dword [esp + 0x14]
mov dword [esp + 0x60], eax
adc ebx, 0
xor eax, eax
add ebx, esi
adc eax, eax
add ebx, dword [esp + 0x1c]
mov dword [esp + 0x68], ebx
adc eax, 0
mov ebx, dword [esp + 0x2c]
xor ecx, ecx
add ebx, edx
add ebx, eax
adc ecx, ecx
add ebx, dword [esp + 0x10]
mov dword [esp + 0x2c], ebx
adc ecx, 0
xor eax, eax
add ecx, dword [esp + 0x34]
mov dword [esp + 0x48], ecx
adc eax, eax
xor ecx, ecx
add eax, dword [esp + 0x20]
mov dword [esp + 0x5c], eax
adc ecx, ecx
xor eax, eax
add ecx, dword [esp + 0x24]
adc eax, eax
add ecx, dword [esp + 0x18]
mov dword [esp + 0x58], ecx
adc eax, 0
xor ecx, ecx
add eax, dword [esp + 0x28]
adc ecx, ecx
add eax, edi
mov dword [esp + 0x54], eax
adc ecx, 0
xor eax, eax
add ecx, ebp
adc eax, eax
add ecx, edx
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x8c]
adc eax, 0
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x6c]
mul ecx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x64], edx
mul ecx
mov dword [esp + 0x38], eax
mov eax, ecx
mov dword [esp + 0x3c], edx
mul ecx
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x28], edx
mul ecx
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x20], edx
mul ecx
mov ebp, eax
mov dword [esp + 0x44], edx
mov eax, dword [esp + 0x84]
mul ecx
mov edi, eax
mov ebx, edx
mov eax, dword [esp + 0x80]
mul ecx
mov ecx, eax
mov esi, edx
mov eax, dword [esp + 0x7c]
mul dword [esp + 0x8c]
mov dword [esp + 0x10], eax
xor eax, eax
add edx, ecx
adc eax, eax
xor ecx, ecx
add eax, esi
adc ecx, ecx
add eax, edi
mov dword [esp + 0x70], eax
adc ecx, 0
xor esi, esi
add ecx, ebx
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
adc esi, esi
mov dword [esp + 0x30], 0
add ecx, ebp
adc esi, 0
xor edi, edi
add esi, dword [esp + 0x44]
adc edi, edi
add esi, dword [esp + 0x34]
adc edi, 0
xor ebx, ebx
add edi, dword [esp + 0x20]
adc ebx, ebx
add edi, dword [esp + 0x24]
adc ebx, 0
xor ebp, ebp
add ebx, dword [esp + 0x28]
adc ebp, ebp
add ebx, dword [esp + 0x38]
adc ebp, 0
xor eax, eax
add ebp, dword [esp + 0x3c]
adc eax, eax
add ebp, dword [esp + 0x40]
adc eax, 0
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x10]
add eax, dword [esp + 0x60]
mov dword [esp + 0x10], eax
adc dword [esp + 0x18], 0
add dword [esp + 0x18], edx
mov edx, dword [esp + 0x1c]
adc edx, edx
mov eax, dword [esp + 0x68]
add dword [esp + 0x18], eax
mov eax, dword [esp + 0x30]
adc edx, 0
add edx, dword [esp + 0x70]
adc eax, 0
add edx, dword [esp + 0x2c]
mov dword [esp + 0x1c], edx
adc eax, 0
xor edx, edx
add eax, ecx
adc edx, edx
add eax, dword [esp + 0x48]
mov dword [esp + 0x30], eax
adc edx, 0
xor ecx, ecx
add edx, esi
adc ecx, ecx
add edx, dword [esp + 0x5c]
mov dword [esp + 0x34], edx
adc ecx, 0
xor eax, eax
add ecx, edi
adc eax, eax
add ecx, dword [esp + 0x58]
mov dword [esp + 0x20], ecx
adc eax, 0
xor ecx, ecx
add eax, ebx
adc ecx, ecx
add eax, dword [esp + 0x54]
mov dword [esp + 0x24], eax
adc ecx, 0
xor eax, eax
add ecx, ebp
mov ebp, dword [esp + 0x44]
adc eax, eax
add ecx, dword [esp + 0x50]
mov dword [esp + 0x28], ecx
adc eax, 0
add ebp, dword [esp + 0x64]
xor ecx, ecx
add ebp, eax
adc ecx, ecx
add ebp, dword [esp + 0x4c]
adc ecx, 0
add ebp, dword [esp + 0x78]
mov esi, 0
mov eax, dword [esp + 0x10]
adc ecx, 0
mov dword [esp + 0x64], ecx
or ecx, 0xffffffff
mul ecx
mov eax, dword [esp + 0x10]
mov edi, eax
neg edi
mov ebx, edx
mov ecx, edx
add ecx, edi
adc esi, esi
xor edx, edx
add esi, ebx
adc edx, edx
add esi, edi
adc edx, 0
add eax, edi
mov eax, 0
adc eax, eax
mov dword [esp + 0x14], eax
xor eax, eax
add dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x14]
adc eax, eax
add ecx, dword [esp + 0x18]
mov dword [esp + 0x14], ecx
adc eax, 0
xor ecx, ecx
add eax, esi
adc ecx, ecx
add eax, dword [esp + 0x1c]
mov dword [esp + 0x60], eax
adc ecx, 0
xor eax, eax
add edx, ebx
add edx, ecx
adc eax, eax
add edx, dword [esp + 0x30]
mov dword [esp + 0x70], edx
adc eax, 0
movzx eax, al
cdq
add eax, dword [esp + 0x34]
mov ecx, edx
mov dword [esp + 0x48], eax
adc ecx, 0
xor eax, eax
add ecx, dword [esp + 0x20]
mov dword [esp + 0x5c], ecx
adc eax, eax
xor ecx, ecx
add eax, dword [esp + 0x24]
adc ecx, ecx
add eax, dword [esp + 0x10]
mov dword [esp + 0x58], eax
adc ecx, 0
xor eax, eax
add ecx, dword [esp + 0x28]
adc eax, eax
add ecx, edi
mov dword [esp + 0x54], ecx
adc eax, 0
xor ecx, ecx
add eax, ebp
adc ecx, ecx
add eax, ebx
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x6c]
adc ecx, 0
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x90]
mul ecx
mov dword [esp + 0x40], eax
mov eax, ecx
mov dword [esp + 0x1c], edx
mul ecx
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], edx
mov eax, dword [esp + 0x8c]
mul ecx
mov dword [esp + 0x78], 0
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x28], edx
mul ecx
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x20], edx
mul ecx
mov ebp, eax
mov dword [esp + 0x44], edx
mov eax, dword [esp + 0x84]
mul ecx
mov edi, eax
mov ebx, edx
mov eax, dword [esp + 0x80]
mul ecx
mov ecx, eax
mov esi, edx
mov eax, dword [esp + 0x7c]
mul dword [esp + 0x90]
add edx, ecx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x68], edx
adc ecx, ecx
mov edx, dword [esp + 0x3c]
add ecx, esi
mov esi, dword [esp + 0x30]
adc esi, esi
add ecx, edi
adc esi, 0
xor edi, edi
add esi, ebx
adc edi, edi
add esi, ebp
mov dword [esp + 0x30], esi
adc edi, 0
xor ebx, ebx
add edi, dword [esp + 0x44]
adc ebx, ebx
add edi, dword [esp + 0x34]
adc ebx, 0
xor ebp, ebp
add ebx, dword [esp + 0x20]
adc ebp, ebp
add ebx, dword [esp + 0x24]
adc ebp, 0
xor esi, esi
add ebp, dword [esp + 0x28]
adc esi, esi
add ebp, dword [esp + 0x38]
adc esi, 0
mov dword [esp + 0x10], esi
xor esi, esi
add dword [esp + 0x10], edx
mov edx, dword [esp + 0x40]
adc esi, esi
add dword [esp + 0x10], edx
adc esi, 0
add dword [esp + 0x14], eax
mov eax, 0
adc eax, eax
xor edx, edx
add eax, dword [esp + 0x60]
adc edx, edx
add eax, dword [esp + 0x68]
mov dword [esp + 0x78], eax
mov eax, edx
adc eax, 0
xor edx, edx
add eax, ecx
adc edx, edx
add eax, dword [esp + 0x70]
mov dword [esp + 0x2c], eax
adc edx, 0
xor eax, eax
add edx, dword [esp + 0x30]
adc eax, eax
add edx, dword [esp + 0x48]
mov dword [esp + 0x44], edx
adc eax, 0
xor ecx, ecx
add eax, edi
adc ecx, ecx
add eax, dword [esp + 0x5c]
mov dword [esp + 0x34], eax
adc ecx, 0
xor eax, eax
add ecx, ebx
adc eax, eax
add ecx, dword [esp + 0x58]
mov dword [esp + 0x20], ecx
adc eax, 0
mov ecx, dword [esp + 0x1c]
xor ebx, ebx
add eax, ebp
mov ebp, dword [esp + 0x14]
mov edi, ebp
adc ebx, ebx
add eax, dword [esp + 0x54]
mov dword [esp + 0x24], eax
adc ebx, 0
xor eax, eax
add ebx, dword [esp + 0x10]
adc eax, eax
add ebx, dword [esp + 0x50]
adc eax, 0
add ecx, esi
xor edx, edx
mov esi, 0
add ecx, dword [esp + 0x64]
adc edx, edx
add ecx, eax
mov eax, ebp
adc edx, 0
add ecx, dword [esp + 0x4c]
mov dword [esp + 0x1c], ecx
adc edx, 0
or ecx, 0xffffffff
neg edi
mov dword [esp + 0x94], edx
mul ecx
mov ecx, edi
add ecx, edx
adc esi, esi
xor eax, eax
add esi, edi
adc eax, eax
add esi, edx
adc eax, 0
mov dword [esp + 0x30], eax
mov eax, ebp
add eax, edi
mov eax, 0
adc eax, eax
xor ebp, ebp
add eax, ecx
adc ebp, ebp
add eax, dword [esp + 0x78]
mov dword [esp + 0x40], eax
adc ebp, 0
xor eax, eax
add ebp, esi
adc eax, eax
add ebp, dword [esp + 0x2c]
mov dword [esp + 0x60], ebp
mov ebp, dword [esp + 0x30]
adc eax, 0
xor ecx, ecx
add ebp, edx
add ebp, eax
adc ecx, ecx
add ebp, dword [esp + 0x44]
mov dword [esp + 0x30], ebp
adc ecx, 0
xor eax, eax
add ecx, dword [esp + 0x34]
mov dword [esp + 0x48], ecx
adc eax, eax
xor ecx, ecx
add eax, dword [esp + 0x20]
mov dword [esp + 0x5c], eax
adc ecx, ecx
xor eax, eax
add ecx, dword [esp + 0x24]
adc eax, eax
add ecx, dword [esp + 0x14]
mov dword [esp + 0x58], ecx
adc eax, 0
xor ecx, ecx
add eax, ebx
adc ecx, ecx
add eax, edi
mov dword [esp + 0x54], eax
adc ecx, 0
xor eax, eax
add ecx, dword [esp + 0x1c]
adc eax, eax
add ecx, edx
mov dword [esp + 0x50], ecx
adc eax, 0
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x4c], eax
mov eax, ecx
mul ecx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x64], edx
mul ecx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x38], edx
mul ecx
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x24], edx
mul ecx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x34], edx
mul ecx
mov ebp, eax
mov dword [esp + 0x78], edx
mov eax, dword [esp + 0x84]
mul ecx
mov edi, eax
mov ebx, edx
mov eax, dword [esp + 0x80]
mul ecx
mov ecx, eax
mov esi, edx
mov eax, dword [esp + 0x7c]
mul dword [esp + 0x6c]
mov dword [esp + 0x18], eax
xor eax, eax
add edx, ecx
adc eax, eax
xor ecx, ecx
add eax, esi
adc ecx, ecx
add eax, edi
mov dword [esp + 0x68], eax
adc ecx, 0
xor esi, esi
add ecx, ebx
adc esi, esi
add ecx, ebp
mov dword [esp + 0x70], ecx
adc esi, 0
xor edi, edi
add esi, dword [esp + 0x78]
adc edi, edi
add esi, dword [esp + 0x44]
adc edi, 0
xor ebx, ebx
add edi, dword [esp + 0x34]
adc ebx, ebx
add edi, dword [esp + 0x20]
adc ebx, 0
xor ebp, ebp
add ebx, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
adc ebp, ebp
add ebx, dword [esp + 0x28]
adc ebp, 0
xor eax, eax
add ebp, dword [esp + 0x38]
adc eax, eax
add ebp, dword [esp + 0x3c]
adc eax, 0
mov dword [esp + 0x78], eax
xor eax, eax
add ecx, dword [esp + 0x40]
mov dword [esp + 0x18], ecx
adc eax, eax
mov dword [esp + 0x10], eax
xor eax, eax
add dword [esp + 0x10], edx
mov edx, dword [esp + 0x60]
adc eax, eax
add dword [esp + 0x10], edx
adc eax, 0
movzx eax, al
cdq
add eax, dword [esp + 0x68]
adc edx, 0
add eax, dword [esp + 0x30]
mov dword [esp + 0x44], eax
adc edx, 0
xor eax, eax
add edx, dword [esp + 0x70]
adc eax, eax
add edx, dword [esp + 0x48]
mov dword [esp + 0x34], edx
adc eax, 0
xor ecx, ecx
add eax, esi
mov esi, 0
adc ecx, ecx
add eax, dword [esp + 0x5c]
mov dword [esp + 0x20], eax
adc ecx, 0
xor eax, eax
add ecx, edi
adc eax, eax
add ecx, dword [esp + 0x58]
mov dword [esp + 0x24], ecx
adc eax, 0
xor ecx, ecx
add eax, ebx
mov ebx, dword [esp + 0x78]
adc ecx, ecx
add eax, dword [esp + 0x54]
mov dword [esp + 0x28], eax
adc ecx, 0
xor eax, eax
add ecx, ebp
mov ebp, dword [esp + 0x18]
mov edi, ebp
adc eax, eax
add ecx, dword [esp + 0x50]
mov dword [esp + 0x38], ecx
adc eax, 0
add ebx, dword [esp + 0x64]
xor ecx, ecx
add ebx, eax
mov eax, ebp
adc ecx, ecx
add ebx, dword [esp + 0x4c]
adc ecx, 0
add ebx, dword [esp + 0x94]
adc ecx, 0
neg edi
mov dword [esp + 0x94], ecx
or ecx, 0xffffffff
mul ecx
mov ecx, edi
add ecx, edx
adc esi, esi
xor eax, eax
add esi, edi
adc eax, eax
add esi, edx
adc eax, 0
mov dword [esp + 0x6c], eax
mov eax, ebp
add eax, edi
mov eax, 0
adc eax, eax
xor ebp, ebp
add eax, ecx
mov ecx, dword [esp + 0x6c]
adc ebp, ebp
add eax, dword [esp + 0x10]
mov dword [esp + 0x30], eax
adc ebp, 0
xor eax, eax
add ebp, esi
adc eax, eax
add ebp, dword [esp + 0x44]
mov dword [esp + 0x2c], ebp
adc eax, 0
add ecx, edx
xor ebp, ebp
add ecx, eax
adc ebp, ebp
add ecx, dword [esp + 0x34]
mov dword [esp + 0x6c], ecx
adc ebp, 0
xor ecx, ecx
add ebp, dword [esp + 0x20]
mov dword [esp + 0x1c], ebp
adc ecx, ecx
xor eax, eax
add ecx, dword [esp + 0x24]
mov dword [esp + 0x10], ecx
adc eax, eax
mov ecx, dword [esp + 0x30]
xor ebp, ebp
add eax, dword [esp + 0x28]
adc ebp, ebp
add dword [esp + 0x18], eax
adc ebp, 0
xor eax, eax
add ebp, dword [esp + 0x38]
adc eax, eax
add ebp, edi
mov dword [esp + 0x38], ebp
adc eax, 0
xor esi, esi
add eax, ebx
mov ebx, dword [esp + 0x2c]
adc esi, esi
add eax, edx
mov dword [esp + 0x74], eax
adc esi, 0
xor eax, eax
sub ecx, 0xffffffff
mov dword [esp + 0x78], ecx
sbb eax, eax
xor ecx, ecx
neg al
movzx eax, al
cdq
sub ebx, eax
sbb ecx, edx
sub ebx, 0xffffffff
mov dword [esp + 0x44], ebx
mov ebx, dword [esp + 0x6c]
sbb ecx, 0
neg cl
movzx eax, cl
xor ecx, ecx
cdq
sub ebx, eax
sbb ecx, edx
sub ebx, 0xffffffff
mov dword [esp + 0x34], ebx
sbb ecx, 0
neg cl
movzx eax, cl
cdq
xor ecx, ecx
mov ebx, dword [esp + 0x1c]
sub ebx, eax
mov dword [esp + 0x20], ebx
sbb ecx, edx
mov ebx, dword [esp + 0x10]
neg cl
movzx eax, cl
xor ecx, ecx
cdq
sub ebx, eax
mov dword [esp + 0x24], ebx
sbb ecx, edx
mov ebx, dword [esp + 0x18]
neg cl
movzx eax, cl
xor ecx, ecx
cdq
sub ebx, eax
mov dword [esp + 0x28], ebx
sbb ecx, edx
mov ebx, dword [esp + 0x74]
neg cl
movzx eax, cl
xor ecx, ecx
cdq
sub ebp, eax
sbb ecx, edx
sub ebp, 1
sbb ecx, 0
neg cl
movzx eax, cl
xor ecx, ecx
cdq
sub ebx, eax
sbb ecx, edx
sub ebx, 0xffffffff
sbb ecx, 0
neg cl
movzx eax, cl
xor ecx, ecx
cdq
sub esi, eax
sbb ecx, edx
add esi, dword [esp + 0x94]
mov edx, dword [esp + 0x9c]
adc ecx, 0
movzx edi, cl
neg edi
sbb edi, edi
mov esi, edi
mov eax, edi
and eax, dword [esp + 0x30]
not esi
mov ecx, esi
and ecx, dword [esp + 0x78]
or ecx, eax
mov eax, edi
and eax, dword [esp + 0x2c]
mov dword [edx], ecx
mov ecx, esi
and ecx, dword [esp + 0x44]
or ecx, eax
mov eax, edi
and eax, dword [esp + 0x6c]
mov dword [edx + 4], ecx
mov ecx, esi
and ecx, dword [esp + 0x34]
or ecx, eax
mov eax, edi
and eax, dword [esp + 0x1c]
mov dword [edx + 8], ecx
mov ecx, esi
and ecx, dword [esp + 0x20]
or ecx, eax
mov eax, edi
and eax, dword [esp + 0x10]
mov dword [edx + 0xc], ecx
mov ecx, esi
and ecx, dword [esp + 0x24]
or ecx, eax
mov dword [edx + 0x10], ecx
mov eax, edi
and eax, dword [esp + 0x18]
mov ecx, esi
and ecx, dword [esp + 0x28]
or ecx, eax
mov eax, edi
and eax, dword [esp + 0x38]
and edi, dword [esp + 0x74]
mov dword [edx + 0x14], ecx
mov ecx, esi
and ecx, ebp
and esi, ebx
or ecx, eax
or esi, edi
pop edi
mov dword [edx + 0x1c], esi
pop esi
pop ebp
mov dword [edx + 0x18], ecx
pop ebx
add esp, 0x88
ret