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

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