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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x350
mov eax, dword [0x102db678]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x318], ebx
movzx eax, byte [edi]
cdq
mov ecx, eax
mov esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 1]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 2]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 3]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 4]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
movzx eax, byte [edi + 5]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 6]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 7]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
mov dword [ebp - 0x280], esi
movzx eax, byte [edi + 8]
mov dword [ebp - 0x284], ecx
cdq
mov ecx, eax
mov esi, edx
movzx eax, byte [edi + 9]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0xa]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0xb]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0xc]
shld esi, ecx, 8
cdq
shl ecx, 8
or ecx, eax
or esi, edx
movzx eax, byte [edi + 0xd]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0xe]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0xf]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
mov dword [ebp - 0x278], esi
movzx eax, byte [edi + 0x10]
mov dword [ebp - 0x27c], ecx
cdq
mov ecx, eax
mov esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x11]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
movzx eax, byte [edi + 0x12]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x13]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x14]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x15]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x16]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x17]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
mov dword [ebp - 0x270], esi
movzx eax, byte [edi + 0x18]
mov dword [ebp - 0x274], ecx
cdq
mov ecx, eax
mov esi, edx
movzx eax, byte [edi + 0x19]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
shld esi, ecx, 8
shl ecx, 8
movzx eax, byte [edi + 0x1a]
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x1b]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x1c]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x1d]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x1e]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x1f]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
movzx eax, byte [edi + 0x20]
mov dword [ebp - 0x26c], ecx
cdq
mov dword [ebp - 0x268], esi
mov ecx, eax
movzx eax, byte [edi + 0x21]
mov esi, edx
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x22]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x23]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x24]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x25]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x26]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x27]
shld esi, ecx, 8
cdq
shl ecx, 8
or ecx, eax
or esi, edx
mov dword [ebp - 0x264], ecx
movzx eax, byte [edi + 0x28]
cdq
mov dword [ebp - 0x260], esi
mov ecx, eax
movzx eax, byte [edi + 0x29]
mov esi, edx
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x2a]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x2b]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x2c]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x2d]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x2e]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x2f]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
mov dword [ebp - 0x258], esi
movzx eax, byte [edi + 0x30]
mov dword [ebp - 0x25c], ecx
cdq
mov ecx, eax
mov esi, edx
movzx eax, byte [edi + 0x31]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x32]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x33]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x34]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
shld esi, ecx, 8
shl ecx, 8
movzx eax, byte [edi + 0x35]
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x36]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x37]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
movzx eax, byte [edi + 0x38]
mov dword [ebp - 0x254], ecx
cdq
mov ecx, eax
mov dword [ebp - 0x250], esi
movzx eax, byte [edi + 0x39]
mov esi, edx
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x3a]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x3b]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x3c]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x3d]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x3e]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x3f]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
mov dword [ebp - 0x248], esi
movzx eax, byte [edi + 0x40]
mov dword [ebp - 0x24c], ecx
cdq
mov ecx, eax
mov esi, edx
movzx eax, byte [edi + 0x41]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x42]
shld esi, ecx, 8
cdq
shl ecx, 8
or ecx, eax
or esi, edx
movzx eax, byte [edi + 0x43]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x44]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x45]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x46]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x47]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
mov dword [ebp - 0x240], esi
movzx eax, byte [edi + 0x48]
mov dword [ebp - 0x244], ecx
cdq
mov ecx, eax
mov esi, edx
movzx eax, byte [edi + 0x49]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x4a]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x4b]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x4c]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x4d]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x4e]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x4f]
shld esi, ecx, 8
cdq
shl ecx, 8
or ecx, eax
or esi, edx
mov dword [ebp - 0x23c], ecx
mov dword [ebp - 0x238], esi
movzx eax, byte [edi + 0x50]
cdq
mov ecx, eax
mov esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x51]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x52]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x53]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x54]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x55]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
movzx eax, byte [edi + 0x56]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x57]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
mov dword [ebp - 0x230], esi
movzx eax, byte [edi + 0x58]
mov dword [ebp - 0x234], ecx
cdq
mov ecx, eax
mov esi, edx
movzx eax, byte [edi + 0x59]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x5a]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x5b]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x5c]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x5d]
shld esi, ecx, 8
cdq
shl ecx, 8
or ecx, eax
or esi, edx
movzx eax, byte [edi + 0x5e]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x5f]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
mov dword [ebp - 0x228], esi
movzx eax, byte [edi + 0x60]
mov dword [ebp - 0x22c], ecx
cdq
mov ecx, eax
mov esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x61]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x62]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
movzx eax, byte [edi + 0x63]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x64]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x65]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x66]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x67]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
mov dword [ebp - 0x220], esi
movzx eax, byte [edi + 0x68]
mov dword [ebp - 0x224], ecx
cdq
mov ecx, eax
mov esi, edx
movzx eax, byte [edi + 0x69]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x6a]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
shld esi, ecx, 8
shl ecx, 8
movzx eax, byte [edi + 0x6b]
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x6c]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x6d]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x6e]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
shld esi, ecx, 8
movzx eax, byte [edi + 0x6f]
shl ecx, 8
cdq
or ecx, eax
or esi, edx
movzx eax, byte [edi + 0x70]
mov dword [ebp - 0x21c], ecx
cdq
mov ecx, eax
mov dword [ebp - 0x218], esi
movzx eax, byte [edi + 0x71]
mov esi, edx
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x72]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x73]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x74]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x75]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x76]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x77]
shld esi, ecx, 8
cdq
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 0x78]
or esi, edx
mov dword [ebp - 0x214], ecx
cdq
mov dword [ebp - 0x210], esi
mov ecx, eax
movzx eax, byte [edi + 0x79]
mov esi, edx
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x7a]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x7b]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x7c]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x7d]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x7e]
shld esi, ecx, 8
cdq
shl ecx, 8
or esi, edx
or ecx, eax
movzx eax, byte [edi + 0x7f]
shld esi, ecx, 8
cdq
shl ecx, 8
or ecx, eax
mov eax, dword [ebx + 8]
mov dword [ebp - 0x20c], ecx
or esi, edx
mov ecx, dword [ebx + 0xc]
mov dword [ebp - 0x310], eax
mov dword [ebp - 0x314], ecx
mov dword [ebp - 0x28c], eax
mov eax, dword [ebx + 0x10]
mov dword [ebp - 0x298], ecx
mov ecx, dword [ebx + 0x14]
mov dword [ebp - 0x31c], eax
mov dword [ebp - 0x320], ecx
mov dword [ebp - 0x29c], eax
mov eax, dword [ebx + 0x18]
mov dword [ebp - 0x2a0], ecx
mov ecx, dword [ebx + 0x1c]
mov dword [ebp - 0x338], eax
mov dword [ebp - 0x324], ecx
mov dword [ebp - 0x2a4], eax
mov eax, dword [ebx + 0x20]
mov dword [ebp - 0x2a8], ecx
mov ecx, dword [ebx + 0x24]
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x32c], ecx
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebx + 0x28]
mov dword [ebp - 0x2b0], ecx
mov ecx, dword [ebx + 0x2c]
mov edx, ecx
mov dword [ebp - 0x208], esi
mov esi, eax
mov dword [ebp - 0x330], eax
mov eax, dword [ebx + 0x30]
mov dword [ebp - 0x334], ecx
mov ecx, dword [ebx + 0x34]
mov dword [ebp - 0x290], esi
mov dword [ebp - 0x294], edx
mov dword [ebp - 0x350], eax
mov dword [ebp - 0x33c], ecx
mov dword [ebp - 0x2b8], ecx
mov ecx, dword [ebx + 0x3c]
mov dword [ebp - 0x2b4], eax
mov eax, dword [ebx + 0x38]
mov dword [ebp - 0x344], ecx
mov dword [ebp - 0x2c0], ecx
mov ecx, dword [ebx + 0x44]
mov dword [ebp - 0x340], eax
mov dword [ebp - 0x2bc], eax
mov eax, dword [ebx + 0x40]
xor ebx, ebx
push 0xffffffffffffffc8
mov dword [ebp - 0x34c], ecx
mov dword [ebp - 0x2c8], ecx
pop ecx
mov dword [ebp - 0x348], eax
mov dword [ebp - 0x2c4], eax
mov dword [ebp - 0x30c], ebx
mov dword [ebp - 0x288], ecx
jmp 0x1007c0ca
mov edx, dword [ebp - 0x294]
mov esi, dword [ebp - 0x290]
cmp ebx, 2
jge 0x1007c1a2
mov eax, dword [ebp + ecx - 0x24c]
mov dword [ebp - 0x2cc], eax
mov eax, dword [ebp + ecx - 0x248]
mov dword [ebp - 0x2e0], eax
mov eax, dword [ebp + ecx - 0x244]
mov dword [ebp - 0x2d0], eax
mov eax, dword [ebp + ecx - 0x240]
mov dword [ebp - 0x2f8], eax
mov eax, dword [ebp + ecx - 0x23c]
mov dword [ebp - 0x304], eax
mov eax, dword [ebp + ecx - 0x238]
mov dword [ebp - 0x2d4], eax
mov eax, dword [ebp + ecx - 0x234]
mov dword [ebp - 0x2f0], eax
mov eax, dword [ebp + ecx - 0x230]
mov dword [ebp - 0x2d8], eax
mov eax, dword [ebp + ecx - 0x22c]
mov dword [ebp - 0x2dc], eax
mov eax, dword [ebp + ecx - 0x228]
mov dword [ebp - 0x308], eax
mov eax, dword [ebp + ecx - 0x224]
mov dword [ebp - 0x2e4], eax
mov eax, dword [ebp + ecx - 0x220]
mov dword [ebp - 0x2f4], eax
mov eax, dword [ebp + ecx - 0x21c]
mov dword [ebp - 0x2e8], eax
mov eax, dword [ebp + ecx - 0x218]
mov dword [ebp - 0x300], eax
mov eax, dword [ebp + ecx - 0x214]
mov dword [ebp - 0x2ec], eax
mov eax, dword [ebp + ecx - 0x210]
jmp 0x1007ca99
mov edi, dword [ebp + ecx - 0x2c4]
xor esi, esi
mov ebx, dword [ebp + ecx - 0x25c]
mov eax, edi
mov ecx, dword [ebp + ecx - 0x2c0]
mov edx, edi
shrd eax, ecx, 8
shl edx, 0x18
or esi, eax
shr ecx, 8
or edx, ecx
mov dword [ebp - 0x2cc], esi
mov ecx, dword [ebp - 0x288]
mov eax, edi
mov dword [ebp - 0x2e0], edx
mov esi, edi
xor edx, edx
shl esi, 0x1f
shl ebx, 0xd
mov ecx, dword [ebp + ecx - 0x2c0]
shrd eax, ecx, 1
or edx, eax
shr ecx, 1
xor dword [ebp - 0x2cc], edx
or esi, ecx
mov edx, dword [ebp - 0x288]
mov eax, edi
xor dword [ebp - 0x2e0], esi
xor edi, edi
mov ecx, dword [ebp + edx - 0x2c0]
shrd eax, ecx, 7
xor dword [ebp - 0x2cc], eax
mov eax, dword [ebp + edx - 0x25c]
shr ecx, 7
xor dword [ebp - 0x2e0], ecx
mov ecx, dword [ebp + edx - 0x258]
shrd eax, ecx, 0x13
or edi, eax
shr ecx, 0x13
mov eax, dword [ebp - 0x288]
or ebx, ecx
mov ecx, dword [ebp + edx - 0x258]
mov esi, ecx
xor edx, edx
shr esi, 0x1d
mov eax, dword [ebp + eax - 0x25c]
shld ecx, eax, 3
or edx, ecx
shl eax, 3
or esi, eax
xor ebx, edx
mov edx, dword [ebp - 0x288]
xor edi, esi
mov eax, dword [ebp + edx - 0x258]
mov ecx, dword [ebp + edx - 0x25c]
shrd ecx, eax, 6
shr eax, 6
xor edi, ecx
mov ecx, dword [ebp - 0x2cc]
xor ebx, eax
mov eax, dword [ebp - 0x2e0]
add ecx, edi
mov edi, dword [ebp + edx - 0x2b8]
adc eax, ebx
add ecx, dword [ebp + edx - 0x2cc]
mov ebx, dword [ebp + edx - 0x2bc]
adc eax, dword [ebp + edx - 0x2c8]
add ecx, dword [ebp + edx - 0x284]
mov dword [ebp + edx - 0x24c], ecx
adc eax, dword [ebp + edx - 0x280]
xor esi, esi
mov dword [ebp + edx - 0x248], eax
mov edx, ebx
mov dword [ebp - 0x2cc], ecx
mov ecx, edi
mov dword [ebp - 0x2e0], eax
mov eax, ebx
shrd eax, ecx, 8
shl edx, 0x18
shr ecx, 8
or esi, eax
or edx, ecx
mov dword [ebp - 0x2d0], esi
mov dword [ebp - 0x2f8], edx
mov ecx, edi
xor edx, edx
mov eax, ebx
shrd eax, ecx, 1
mov esi, ebx
or edx, eax
shr ecx, 1
xor dword [ebp - 0x2d0], edx
mov eax, ebx
mov edx, dword [ebp - 0x2f8]
shl esi, 0x1f
or esi, ecx
mov ecx, edi
shrd eax, ecx, 7
xor edx, esi
xor edi, edi
xor dword [ebp - 0x2d0], eax
shr ecx, 7
xor edx, ecx
mov dword [ebp - 0x2f8], edx
mov edx, dword [ebp - 0x288]
mov eax, dword [ebp + edx - 0x254]
mov ecx, dword [ebp + edx - 0x250]
mov ebx, dword [ebp + edx - 0x254]
shrd eax, ecx, 0x13
mov esi, dword [ebp + edx - 0x250]
xor edx, edx
shr ecx, 0x13
or edi, eax
shl ebx, 0xd
or ebx, ecx
shr esi, 0x1d
mov ecx, dword [ebp - 0x288]
mov eax, dword [ebp + ecx - 0x254]
mov ecx, dword [ebp + ecx - 0x250]
shld ecx, eax, 3
or edx, ecx
shl eax, 3
xor ebx, edx
or esi, eax
mov edx, dword [ebp - 0x288]
xor edi, esi
mov eax, dword [ebp + edx - 0x254]
mov ecx, dword [ebp + edx - 0x250]
shrd eax, ecx, 6
mov esi, dword [ebp + edx - 0x2b4]
xor edi, eax
shr ecx, 6
mov eax, dword [ebp - 0x2f8]
xor ebx, ecx
mov ecx, dword [ebp - 0x2d0]
add ecx, edi
adc eax, ebx
add ecx, dword [ebp + edx - 0x27c]
mov ebx, dword [ebp - 0x2e0]
mov edi, ebx
adc eax, dword [ebp + edx - 0x278]
add ecx, dword [ebp + edx - 0x2c4]
mov dword [ebp + edx - 0x244], ecx
adc eax, dword [ebp + edx - 0x2c0]
mov dword [ebp + edx - 0x240], eax
xor edx, edx
mov dword [ebp - 0x2f8], eax
mov eax, dword [ebp - 0x2cc]
mov dword [ebp - 0x2d0], ecx
mov ecx, ebx
shld ecx, eax, 3
shr edi, 0x1d
or edx, ecx
shl eax, 3
or edi, eax
mov dword [ebp - 0x2d4], edx
mov eax, dword [ebp - 0x2cc]
mov edx, ebx
mov ecx, eax
shrd ecx, edx, 0x13
shr edx, 0x13
shl eax, 0xd
xor edi, ecx
or edx, eax
xor dword [ebp - 0x2d4], edx
mov ecx, ebx
mov eax, dword [ebp - 0x2cc]
mov ebx, esi
shrd eax, ecx, 6
shl ebx, 0x18
xor edx, edx
shr ecx, 6
xor edi, eax
xor dword [ebp - 0x2d4], ecx
mov eax, esi
mov ecx, dword [ebp - 0x288]
mov dword [ebp - 0x304], edi
xor edi, edi
shl esi, 0x1f
mov ecx, dword [ebp + ecx - 0x2b0]
shrd eax, ecx, 8
shr ecx, 8
or edi, eax
or ebx, ecx
mov ecx, dword [ebp - 0x288]
mov eax, dword [ebp + ecx - 0x2b4]
mov ecx, dword [ebp + ecx - 0x2b0]
shrd eax, ecx, 1
or edx, eax
shr ecx, 1
or esi, ecx
xor edi, edx
mov edx, dword [ebp - 0x288]
xor ebx, esi
mov eax, dword [ebp + edx - 0x2b4]
mov ecx, dword [ebp + edx - 0x2b0]
shrd eax, ecx, 7
mov esi, dword [ebp + edx - 0x2ac]
shr ecx, 7
xor edi, eax
mov eax, dword [ebp - 0x304]
xor ebx, ecx
mov ecx, dword [ebp - 0x2d4]
add eax, edi
mov edi, dword [ebp - 0x2f8]
adc ecx, ebx
add eax, dword [ebp + edx - 0x274]
mov ebx, dword [ebp - 0x2d0]
adc ecx, dword [ebp + edx - 0x270]
add eax, dword [ebp + edx - 0x2bc]
mov dword [ebp + edx - 0x23c], eax
adc ecx, dword [ebp + edx - 0x2b8]
mov dword [ebp + edx - 0x238], ecx
mov edx, edi
mov dword [ebp - 0x2d4], ecx
mov ecx, edi
shld ecx, ebx, 3
mov dword [ebp - 0x304], eax
mov eax, edi
shr eax, 0x1d
shl ebx, 3
or ebx, eax
mov dword [ebp - 0x2d8], ecx
mov eax, dword [ebp - 0x2d0]
mov ecx, eax
shrd ecx, edx, 0x13
shl eax, 0xd
xor ebx, ecx
shr edx, 0x13
or edx, eax
mov ecx, edi
mov eax, dword [ebp - 0x2d0]
xor edi, edi
xor dword [ebp - 0x2d8], edx
shrd eax, ecx, 6
xor ebx, eax
shr ecx, 6
xor dword [ebp - 0x2d8], ecx
mov eax, esi
mov ecx, dword [ebp - 0x288]
mov dword [ebp - 0x2f0], ebx
mov ebx, esi
shl ebx, 0x18
mov ecx, dword [ebp + ecx - 0x2a8]
xor edx, edx
shrd eax, ecx, 8
shl esi, 0x1f
shr ecx, 8
or edi, eax
or ebx, ecx
mov ecx, dword [ebp - 0x288]
mov eax, dword [ebp + ecx - 0x2ac]
mov ecx, dword [ebp + ecx - 0x2a8]
shrd eax, ecx, 1
or edx, eax
shr ecx, 1
or esi, ecx
xor edi, edx
mov edx, dword [ebp - 0x288]
xor ebx, esi
mov eax, dword [ebp + edx - 0x2ac]
mov ecx, dword [ebp + edx - 0x2a8]
shrd eax, ecx, 7
shr ecx, 7
xor edi, eax
mov eax, dword [ebp - 0x2f0]
xor ebx, ecx
mov ecx, dword [ebp - 0x2d8]
add eax, edi
adc ecx, ebx
add eax, dword [ebp + edx - 0x26c]
mov ebx, dword [ebp - 0x304]
mov edi, ebx
adc ecx, dword [ebp + edx - 0x268]
add eax, dword [ebp + edx - 0x2b4]
mov dword [ebp + edx - 0x234], eax
adc ecx, dword [ebp + edx - 0x2b0]
mov dword [ebp + edx - 0x230], ecx
xor edx, edx
mov dword [ebp - 0x2d8], ecx
mov ecx, dword [ebp - 0x2d4]
mov dword [ebp - 0x2f0], eax
mov eax, ebx
shrd eax, ecx, 0x13
shl edi, 0xd
shr ecx, 0x13
or edx, eax
or edi, ecx
mov dword [ebp - 0x2dc], edx
mov ecx, dword [ebp - 0x2d4]
mov eax, ebx
mov esi, ecx
xor edx, edx
shld ecx, eax, 3
shr esi, 0x1d
or edx, ecx
shl eax, 3
mov ecx, dword [ebp - 0x2d4]
or esi, eax
xor dword [ebp - 0x2dc], esi
mov eax, ebx
shrd eax, ecx, 6
xor edi, edx
xor dword [ebp - 0x2dc], eax
shr ecx, 6
xor edi, ecx
mov ecx, dword [ebp - 0x288]
mov dword [ebp - 0x308], edi
xor edi, edi
mov edx, dword [ebp + ecx - 0x2a4]
mov eax, edx
mov ecx, dword [ebp + ecx - 0x2a0]
mov ebx, edx
shrd eax, ecx, 8
shl ebx, 0x18
mov esi, edx
shr ecx, 8
or edi, eax
or ebx, ecx
xor edx, edx
mov ecx, dword [ebp - 0x288]
shl esi, 0x1f
mov eax, dword [ebp + ecx - 0x2a4]
mov ecx, dword [ebp + ecx - 0x2a0]
shrd eax, ecx, 1
or edx, eax
shr ecx, 1
or esi, ecx
xor edi, edx
mov edx, dword [ebp - 0x288]
xor ebx, esi
mov eax, dword [ebp + edx - 0x2a4]
mov ecx, dword [ebp + edx - 0x2a0]
shrd eax, ecx, 7
shr ecx, 7
xor edi, eax
mov eax, dword [ebp - 0x308]
xor ebx, ecx
mov ecx, dword [ebp - 0x2dc]
add ecx, edi
mov edi, dword [ebp + edx - 0x29c]
adc eax, ebx
add ecx, dword [ebp + edx - 0x264]
mov ebx, dword [ebp + edx - 0x298]
adc eax, dword [ebp + edx - 0x260]
add ecx, dword [ebp + edx - 0x2ac]
mov dword [ebp + edx - 0x22c], ecx
adc eax, dword [ebp + edx - 0x2a8]
xor esi, esi
mov dword [ebp + edx - 0x228], eax
mov edx, edi
mov dword [ebp - 0x2dc], ecx
mov ecx, ebx
mov dword [ebp - 0x308], eax
mov eax, edi
shrd eax, ecx, 8
shl edx, 0x18
or esi, eax
shr ecx, 8
or edx, ecx
mov dword [ebp - 0x2e4], esi
mov ecx, ebx
mov dword [ebp - 0x2f4], edx
mov eax, edi
xor edx, edx
shrd eax, ecx, 1
mov esi, edi
or edx, eax
shr ecx, 1
xor dword [ebp - 0x2e4], edx
mov eax, edi
mov edx, dword [ebp - 0x2f4]
xor edi, edi
shl esi, 0x1f
or esi, ecx
mov ecx, ebx
shrd eax, ecx, 7
xor edx, esi
xor dword [ebp - 0x2e4], eax
mov eax, dword [ebp - 0x2f0]
mov ebx, eax
shr ecx, 7
xor edx, ecx
shl ebx, 0xd
mov ecx, dword [ebp - 0x2d8]
shrd eax, ecx, 0x13
mov dword [ebp - 0x2f4], edx
xor edx, edx
shr ecx, 0x13
or edi, eax
mov eax, dword [ebp - 0x2f0]
or ebx, ecx
mov ecx, dword [ebp - 0x2d8]
mov esi, ecx
shld ecx, eax, 3
shr esi, 0x1d
shl eax, 3
or edx, ecx
mov ecx, dword [ebp - 0x2d8]
or esi, eax
mov eax, dword [ebp - 0x2f0]
xor edi, esi
shrd eax, ecx, 6
xor ebx, edx
shr ecx, 6
xor ebx, ecx
xor edi, eax
mov ecx, dword [ebp - 0x2e4]
mov eax, dword [ebp - 0x2f4]
add ecx, edi
mov edi, dword [ebp - 0x308]
adc eax, ebx
mov ebx, dword [ebp - 0x288]
add ecx, dword [ebp + ebx - 0x25c]
adc eax, dword [ebp + ebx - 0x258]
add ecx, dword [ebp + ebx - 0x2a4]
mov dword [ebp + ebx - 0x224], ecx
adc eax, dword [ebp + ebx - 0x2a0]
xor esi, esi
mov dword [ebp - 0x2e4], ecx
mov ecx, edi
mov dword [ebp + ebx - 0x220], eax
mov dword [ebp - 0x2f4], eax
mov eax, dword [ebp - 0x2dc]
mov edx, eax
shrd eax, ecx, 0x13
shl edx, 0xd
or esi, eax
shr ecx, 0x13
mov eax, dword [ebp - 0x2dc]
or edx, ecx
mov dword [ebp - 0x2e8], esi
mov ecx, edi
shld ecx, eax, 3
mov dword [ebp - 0x300], edx
mov esi, edi
shl eax, 3
xor edx, edx
or edx, ecx
shr esi, 0x1d
or esi, eax
mov ecx, edi
xor dword [ebp - 0x2e8], esi
xor edi, edi
mov eax, dword [ebp - 0x2dc]
mov esi, dword [ebp - 0x300]
shrd eax, ecx, 6
xor esi, edx
mov edx, dword [ebp + ebx - 0x294]
xor dword [ebp - 0x2e8], eax
mov ebx, edx
shr ecx, 6
mov eax, edx
xor esi, ecx
shl ebx, 0x18
mov ecx, dword [ebp - 0x288]
mov dword [ebp - 0x300], esi
mov esi, edx
xor edx, edx
shl esi, 0x1f
mov ecx, dword [ebp + ecx - 0x290]
shrd eax, ecx, 8
shr ecx, 8
or edi, eax
or ebx, ecx
mov ecx, dword [ebp - 0x288]
mov eax, dword [ebp + ecx - 0x294]
mov ecx, dword [ebp + ecx - 0x290]
shrd eax, ecx, 1
or edx, eax
shr ecx, 1
xor edi, edx
or esi, ecx
mov edx, dword [ebp - 0x288]
xor ebx, esi
mov eax, dword [ebp + edx - 0x294]
mov ecx, dword [ebp + edx - 0x290]
shrd eax, ecx, 7
shr ecx, 7
xor edi, eax
mov eax, dword [ebp - 0x300]
xor ebx, ecx
mov ecx, dword [ebp - 0x2e8]
add ecx, edi
adc eax, ebx
add ecx, dword [ebp + edx - 0x29c]
adc eax, dword [ebp + edx - 0x298]
add ecx, dword [ebp + edx - 0x254]
mov edi, dword [ebp - 0x2e4]
adc eax, dword [ebp + edx - 0x250]
xor esi, esi
mov ebx, dword [ebp - 0x2f4]
mov dword [ebp + edx - 0x21c], ecx
mov dword [ebp + edx - 0x218], eax
mov edx, edi
mov dword [ebp - 0x2e8], ecx
mov ecx, ebx
mov dword [ebp - 0x300], eax
mov eax, edi
shrd eax, ecx, 0x13
shl edx, 0xd
or esi, eax
shr ecx, 0x13
or edx, ecx
mov dword [ebp - 0x2ec], esi
mov ecx, ebx
mov dword [ebp - 0x2fc], edx
xor edx, edx
mov eax, edi
shld ecx, eax, 3
mov esi, ebx
or edx, ecx
shl eax, 3
shr esi, 0x1d
mov ecx, ebx
or esi, eax
mov eax, edi
xor dword [ebp - 0x2ec], esi
xor edi, edi
mov esi, dword [ebp - 0x2fc]
shrd eax, ecx, 6
xor esi, edx
xor dword [ebp - 0x2ec], eax
shr ecx, 6
xor esi, ecx
mov ecx, dword [ebp - 0x288]
mov dword [ebp - 0x2fc], esi
mov edx, dword [ebp + ecx - 0x28c]
mov eax, edx
mov ecx, dword [ebp + ecx - 0x288]
mov ebx, edx
shrd eax, ecx, 8
shl ebx, 0x18
mov esi, edx
shr ecx, 8
or edi, eax
or ebx, ecx
shl esi, 0x1f
mov ecx, dword [ebp - 0x288]
xor edx, edx
mov eax, dword [ebp + ecx - 0x28c]
mov ecx, dword [ebp + ecx - 0x288]
shrd eax, ecx, 1
or edx, eax
shr ecx, 1
xor edi, edx
or esi, ecx
mov edx, dword [ebp - 0x288]
xor ebx, esi
mov eax, dword [ebp + edx - 0x288]
mov ecx, dword [ebp + edx - 0x28c]
shrd ecx, eax, 7
shr eax, 7
xor edi, ecx
mov ecx, dword [ebp - 0x2ec]
xor ebx, eax
mov eax, dword [ebp - 0x2fc]
add ecx, edi
adc eax, ebx
add ecx, dword [ebp + edx - 0x294]
adc eax, dword [ebp + edx - 0x290]
add ecx, dword [ebp - 0x2cc]
mov dword [ebp + edx - 0x214], ecx
adc eax, dword [ebp - 0x2e0]
mov dword [ebp + edx - 0x210], eax
mov edx, dword [ebp - 0x294]
mov dword [ebp - 0x2ec], ecx
mov esi, dword [ebp - 0x290]
mov dword [ebp - 0x2fc], eax
mov ecx, edx
mov eax, esi
mov ebx, edx
shld ecx, eax, 0x17
xor edi, edi
shl esi, 0xe
or edi, ecx
shl eax, 0x17
mov ecx, dword [ebp - 0x294]
xor edx, edx
shr ebx, 9
or ebx, eax
mov eax, dword [ebp - 0x290]
shrd eax, ecx, 0x12
or edx, eax
shr ecx, 0x12
or esi, ecx
mov eax, dword [ebp - 0x290]
mov ecx, dword [ebp - 0x294]
xor edi, esi
mov esi, eax
xor ebx, edx
shrd eax, ecx, 0xe
shl esi, 0x12
xor edx, edx
or edx, eax
shr ecx, 0xe
mov eax, dword [ebp - 0x2c0]
or esi, ecx
xor eax, dword [ebp - 0x2b8]
xor edi, esi
and eax, dword [ebp - 0x294]
xor ebx, edx
xor eax, dword [ebp - 0x2c0]
mov ecx, dword [ebp - 0x2bc]
xor ecx, dword [ebp - 0x2b4]
and ecx, dword [ebp - 0x290]
xor ecx, dword [ebp - 0x2bc]
add ebx, ecx
mov ecx, dword [ebp - 0x298]
adc edi, eax
mov eax, dword [ebp - 0x288]
add ebx, dword [eax + 0x10185c40]
adc edi, dword [eax + 0x10185c44]
add ebx, dword [ebp - 0x2cc]
mov eax, dword [ebp - 0x28c]
mov edx, eax
adc edi, dword [ebp - 0x2e0]
add ebx, dword [ebp - 0x2c4]
adc edi, dword [ebp - 0x2c8]
add dword [ebp - 0x2ac], ebx
adc dword [ebp - 0x2b0], edi
xor esi, esi
shrd eax, ecx, 0x1c
shl edx, 4
or esi, eax
shr ecx, 0x1c
mov eax, dword [ebp - 0x28c]
or edx, ecx
mov ecx, dword [ebp - 0x298]
mov dword [ebp - 0x2c4], esi
mov esi, ecx
shld ecx, eax, 0x1e
mov dword [ebp - 0x2c8], edx
xor edx, edx
shr esi, 2
or edx, ecx
mov ecx, dword [ebp - 0x298]
xor dword [ebp - 0x2c8], edx
xor edx, edx
shl eax, 0x1e
or esi, eax
mov eax, dword [ebp - 0x28c]
xor dword [ebp - 0x2c4], esi
mov esi, ecx
shld ecx, eax, 0x19
shr esi, 7
shl eax, 0x19
or esi, eax
or edx, ecx
xor dword [ebp - 0x2c4], esi
xor dword [ebp - 0x2c8], edx
mov ecx, dword [ebp - 0x29c]
mov esi, ecx
and ecx, dword [ebp - 0x28c]
or esi, dword [ebp - 0x28c]
and esi, dword [ebp - 0x2a4]
mov eax, dword [ebp - 0x2a0]
or esi, ecx
mov ecx, dword [ebp - 0x2c4]
mov edx, eax
and eax, dword [ebp - 0x298]
or edx, dword [ebp - 0x298]
and edx, dword [ebp - 0x2a8]
or edx, eax
mov eax, dword [ebp - 0x2c8]
add ecx, esi
adc eax, edx
add ecx, ebx
mov dword [ebp - 0x2c4], ecx
adc eax, edi
mov ecx, dword [ebp - 0x2b0]
mov dword [ebp - 0x2c8], eax
mov ebx, ecx
mov eax, dword [ebp - 0x2ac]
xor edi, edi
shld ecx, eax, 0x17
shr ebx, 9
xor edx, edx
or edi, ecx
shl eax, 0x17
mov ecx, dword [ebp - 0x2b0]
or ebx, eax
mov eax, dword [ebp - 0x2ac]
mov esi, eax
shrd eax, ecx, 0x12
shl esi, 0xe
shr ecx, 0x12
or edx, eax
mov eax, dword [ebp - 0x2ac]
or esi, ecx
mov ecx, dword [ebp - 0x2b0]
xor edi, esi
mov esi, eax
xor ebx, edx
shrd eax, ecx, 0xe
xor edx, edx
shl esi, 0x12
shr ecx, 0xe
or edx, eax
mov eax, dword [ebp - 0x2b8]
or esi, ecx
xor eax, dword [ebp - 0x294]
xor edi, esi
and eax, dword [ebp - 0x2b0]
xor ebx, edx
xor eax, dword [ebp - 0x2b8]
mov ecx, dword [ebp - 0x2b4]
xor ecx, dword [ebp - 0x290]
and ecx, dword [ebp - 0x2ac]
xor ecx, dword [ebp - 0x2b4]
add ebx, ecx
mov ecx, dword [ebp - 0x2c8]
adc edi, eax
mov eax, dword [ebp - 0x288]
add ebx, dword [eax + 0x10185c48]
adc edi, dword [eax + 0x10185c4c]
add ebx, dword [ebp - 0x2d0]
mov eax, dword [ebp - 0x2c4]
mov edx, eax
adc edi, dword [ebp - 0x2f8]
add ebx, dword [ebp - 0x2bc]
adc edi, dword [ebp - 0x2c0]
add dword [ebp - 0x2a4], ebx
adc dword [ebp - 0x2a8], edi
xor esi, esi
shrd eax, ecx, 0x1c
shl edx, 4
shr ecx, 0x1c
or esi, eax
mov dword [ebp - 0x2bc], esi
or edx, ecx
mov eax, dword [ebp - 0x2c4]
mov ecx, dword [ebp - 0x2c8]
mov esi, ecx
shld ecx, eax, 0x1e
shr esi, 2
shl eax, 0x1e
or esi, eax
mov dword [ebp - 0x2c0], edx
xor dword [ebp - 0x2bc], esi
xor edx, edx
mov eax, dword [ebp - 0x2c4]
or edx, ecx
xor dword [ebp - 0x2c0], edx
xor edx, edx
mov ecx, dword [ebp - 0x2c8]
mov esi, ecx
shld ecx, eax, 0x19
shr esi, 7
or edx, ecx
shl eax, 0x19
xor dword [ebp - 0x2c0], edx
or esi, eax
xor dword [ebp - 0x2bc], esi
mov ecx, dword [ebp - 0x2c4]
mov esi, ecx
and ecx, dword [ebp - 0x28c]
or esi, dword [ebp - 0x28c]
and esi, dword [ebp - 0x29c]
mov eax, dword [ebp - 0x2c8]
or esi, ecx
mov ecx, dword [ebp - 0x2bc]
mov edx, eax
and eax, dword [ebp - 0x298]
or edx, dword [ebp - 0x298]
and edx, dword [ebp - 0x2a0]
or edx, eax
mov eax, dword [ebp - 0x2c0]
add ecx, esi
adc eax, edx
add ecx, ebx
mov dword [ebp - 0x2bc], ecx
adc eax, edi
mov ecx, dword [ebp - 0x2a8]
mov dword [ebp - 0x2c0], eax
mov ebx, ecx
mov eax, dword [ebp - 0x2a4]
xor edi, edi
shld ecx, eax, 0x17
shr ebx, 9
xor edx, edx
or edi, ecx
shl eax, 0x17
mov ecx, dword [ebp - 0x2a8]
or ebx, eax
mov eax, dword [ebp - 0x2a4]
mov esi, eax
shrd eax, ecx, 0x12
shl esi, 0xe
shr ecx, 0x12
or edx, eax
mov eax, dword [ebp - 0x2a4]
or esi, ecx
mov ecx, dword [ebp - 0x2a8]
xor edi, esi
mov esi, eax
xor ebx, edx
shrd eax, ecx, 0xe
shl esi, 0x12
xor edx, edx
shr ecx, 0xe
or edx, eax
mov eax, dword [ebp - 0x294]
or esi, ecx
mov ecx, dword [ebp - 0x290]
xor ebx, edx
xor ecx, dword [ebp - 0x2ac]
xor edi, esi
xor eax, dword [ebp - 0x2b0]
and ecx, dword [ebp - 0x2a4]
and eax, dword [ebp - 0x2a8]
xor eax, dword [ebp - 0x294]
xor ecx, dword [ebp - 0x290]
add ebx, ecx
mov ecx, dword [ebp - 0x2c0]
adc edi, eax
mov eax, dword [ebp - 0x288]
add ebx, dword [eax + 0x10185c50]
adc edi, dword [eax + 0x10185c54]
add ebx, dword [ebp - 0x304]
mov eax, dword [ebp - 0x2bc]
mov edx, eax
adc edi, dword [ebp - 0x2d4]
add ebx, dword [ebp - 0x2b4]
adc edi, dword [ebp - 0x2b8]
add dword [ebp - 0x29c], ebx
adc dword [ebp - 0x2a0], edi
xor esi, esi
shrd eax, ecx, 0x1c
shl edx, 4
or esi, eax
shr ecx, 0x1c
mov eax, dword [ebp - 0x2bc]
or edx, ecx
mov ecx, dword [ebp - 0x2c0]
mov dword [ebp - 0x2b4], esi
mov esi, ecx
shld ecx, eax, 0x1e
shr esi, 2
shl eax, 0x1e
or esi, eax
mov dword [ebp - 0x2b8], edx
xor dword [ebp - 0x2b4], esi
xor edx, edx
mov eax, dword [ebp - 0x2bc]
or edx, ecx
xor dword [ebp - 0x2b8], edx
xor edx, edx
mov ecx, dword [ebp - 0x2c0]
mov esi, ecx
shld ecx, eax, 0x19
shr esi, 7
shl eax, 0x19
or edx, ecx
xor dword [ebp - 0x2b8], edx
or esi, eax
xor dword [ebp - 0x2b4], esi
mov ecx, dword [ebp - 0x2c4]
mov esi, ecx
or esi, dword [ebp - 0x2bc]
and ecx, dword [ebp - 0x2bc]
and esi, dword [ebp - 0x28c]
mov eax, dword [ebp - 0x2c8]
or esi, ecx
mov ecx, dword [ebp - 0x2b4]
mov edx, eax
and eax, dword [ebp - 0x2c0]
or edx, dword [ebp - 0x2c0]
and edx, dword [ebp - 0x298]
or edx, eax
mov eax, dword [ebp - 0x2b8]
add ecx, esi
adc eax, edx
add ecx, ebx
mov dword [ebp - 0x2b4], ecx
mov ecx, dword [ebp - 0x2a0]
adc eax, edi
mov dword [ebp - 0x2b8], eax
mov ebx, ecx
mov eax, dword [ebp - 0x29c]
xor edi, edi
shld ecx, eax, 0x17
shr ebx, 9
xor edx, edx
shl eax, 0x17
or edi, ecx
mov ecx, dword [ebp - 0x2a0]
or ebx, eax
mov eax, dword [ebp - 0x29c]
mov esi, eax
shl esi, 0xe
shrd eax, ecx, 0x12
or edx, eax
shr ecx, 0x12
or esi, ecx
mov eax, dword [ebp - 0x29c]
mov ecx, dword [ebp - 0x2a0]
xor edi, esi
mov esi, eax
xor ebx, edx
shrd eax, ecx, 0xe
shl esi, 0x12
xor edx, edx
or edx, eax
shr ecx, 0xe
or esi, ecx
mov eax, dword [ebp - 0x2b0]
xor eax, dword [ebp - 0x2a8]
xor edi, esi
and eax, dword [ebp - 0x2a0]
xor ebx, edx
xor eax, dword [ebp - 0x2b0]
mov ecx, dword [ebp - 0x2ac]
xor ecx, dword [ebp - 0x2a4]
and ecx, dword [ebp - 0x29c]
xor ecx, dword [ebp - 0x2ac]
add ebx, ecx
mov ecx, dword [ebp - 0x2b8]
adc edi, eax
mov eax, dword [ebp - 0x288]
add ebx, dword [eax + 0x10185c58]
adc edi, dword [eax + 0x10185c5c]
add ebx, dword [ebp - 0x2f0]
mov eax, dword [ebp - 0x2b4]
mov edx, eax
adc edi, dword [ebp - 0x2d8]
add ebx, dword [ebp - 0x290]
adc edi, dword [ebp - 0x294]
add dword [ebp - 0x28c], ebx
adc dword [ebp - 0x298], edi
xor esi, esi
shrd eax, ecx, 0x1c
shl edx, 4
or esi, eax
shr ecx, 0x1c
mov eax, dword [ebp - 0x2b4]
or edx, ecx
mov ecx, dword [ebp - 0x2b8]
mov dword [ebp - 0x290], esi
mov esi, ecx
shld ecx, eax, 0x1e
mov dword [ebp - 0x294], edx
xor edx, edx
shr esi, 2
or edx, ecx
xor dword [ebp - 0x294], edx
xor edx, edx
mov ecx, dword [ebp - 0x2b8]
shl eax, 0x1e
or esi, eax
mov eax, dword [ebp - 0x2b4]
xor dword [ebp - 0x290], esi
mov esi, ecx
shld ecx, eax, 0x19
shr esi, 7
or edx, ecx
shl eax, 0x19
xor dword [ebp - 0x294], edx
or esi, eax
xor dword [ebp - 0x290], esi
mov ecx, dword [ebp - 0x2bc]
mov esi, ecx
mov eax, dword [ebp - 0x2c0]
mov edx, eax
or esi, dword [ebp - 0x2b4]
or edx, dword [ebp - 0x2b8]
and ecx, dword [ebp - 0x2b4]
and esi, dword [ebp - 0x2c4]
and edx, dword [ebp - 0x2c8]
or esi, ecx
and eax, dword [ebp - 0x2b8]
mov ecx, dword [ebp - 0x290]
or edx, eax
add ecx, esi
mov eax, dword [ebp - 0x294]
adc eax, edx
add ecx, ebx
mov dword [ebp - 0x290], ecx
adc eax, edi
mov ecx, dword [ebp - 0x298]
mov dword [ebp - 0x294], eax
mov ebx, ecx
mov eax, dword [ebp - 0x28c]
xor edi, edi
shld ecx, eax, 0x17
shr ebx, 9
xor edx, edx
or edi, ecx
shl eax, 0x17
mov ecx, dword [ebp - 0x298]
or ebx, eax
mov eax, dword [ebp - 0x28c]
mov esi, eax
shrd eax, ecx, 0x12
shl esi, 0xe
or edx, eax
shr ecx, 0x12
mov eax, dword [ebp - 0x28c]
or esi, ecx
mov ecx, dword [ebp - 0x298]
xor edi, esi
mov esi, eax
xor ebx, edx
shrd eax, ecx, 0xe
shl esi, 0x12
xor edx, edx
or edx, eax
shr ecx, 0xe
mov eax, dword [ebp - 0x2a8]
or esi, ecx
xor eax, dword [ebp - 0x2a0]
xor edi, esi
and eax, dword [ebp - 0x298]
xor ebx, edx
xor eax, dword [ebp - 0x2a8]
mov ecx, dword [ebp - 0x2a4]
xor ecx, dword [ebp - 0x29c]
and ecx, dword [ebp - 0x28c]
xor ecx, dword [ebp - 0x2a4]
add ebx, ecx
mov ecx, dword [ebp - 0x294]
adc edi, eax
mov eax, dword [ebp - 0x288]
add ebx, dword [eax + 0x10185c60]
adc edi, dword [eax + 0x10185c64]
add ebx, dword [ebp - 0x2dc]
mov eax, dword [ebp - 0x290]
mov edx, eax
adc edi, dword [ebp - 0x308]
add ebx, dword [ebp - 0x2ac]
adc edi, dword [ebp - 0x2b0]
add dword [ebp - 0x2c4], ebx
adc dword [ebp - 0x2c8], edi
xor esi, esi
shrd eax, ecx, 0x1c
shl edx, 4
or esi, eax
shr ecx, 0x1c
mov eax, dword [ebp - 0x290]
or edx, ecx
mov ecx, dword [ebp - 0x294]
mov dword [ebp - 0x2ac], esi
mov esi, ecx
shld ecx, eax, 0x1e
mov dword [ebp - 0x2b0], edx
xor edx, edx
shr esi, 2
or edx, ecx
mov ecx, dword [ebp - 0x294]
shl eax, 0x1e
or esi, eax
xor dword [ebp - 0x2ac], esi
mov esi, ecx
xor dword [ebp - 0x2b0], edx
mov eax, dword [ebp - 0x290]
xor edx, edx
shld ecx, eax, 0x19
shr esi, 7
or edx, ecx
shl eax, 0x19
xor dword [ebp - 0x2b0], edx
or esi, eax
xor dword [ebp - 0x2ac], esi
mov ecx, dword [ebp - 0x2b4]
mov esi, ecx
and ecx, dword [ebp - 0x290]
or esi, dword [ebp - 0x290]
and esi, dword [ebp - 0x2bc]
mov eax, dword [ebp - 0x2b8]
or esi, ecx
mov ecx, dword [ebp - 0x2ac]
mov edx, eax
and eax, dword [ebp - 0x294]
or edx, dword [ebp - 0x294]
and edx, dword [ebp - 0x2c0]
or edx, eax
mov eax, dword [ebp - 0x2b0]
add ecx, esi
adc eax, edx
add ecx, ebx
mov dword [ebp - 0x2ac], ecx
adc eax, edi
mov ecx, dword [ebp - 0x2c8]
mov dword [ebp - 0x2b0], eax
mov ebx, ecx
mov eax, dword [ebp - 0x2c4]
xor edi, edi
shld ecx, eax, 0x17
shr ebx, 9
xor edx, edx
or edi, ecx
shl eax, 0x17
mov ecx, dword [ebp - 0x2c8]
or ebx, eax
mov eax, dword [ebp - 0x2c4]
mov esi, eax
shrd eax, ecx, 0x12
shl esi, 0xe
or edx, eax
shr ecx, 0x12
mov eax, dword [ebp - 0x2c4]
or esi, ecx
mov ecx, dword [ebp - 0x2c8]
xor edi, esi
mov esi, eax
xor ebx, edx
shrd eax, ecx, 0xe
xor edx, edx
shl esi, 0x12
shr ecx, 0xe
or edx, eax
mov eax, dword [ebp - 0x2a0]
or esi, ecx
xor eax, dword [ebp - 0x298]
xor edi, esi
and eax, dword [ebp - 0x2c8]
xor ebx, edx
xor eax, dword [ebp - 0x2a0]
mov ecx, dword [ebp - 0x29c]
xor ecx, dword [ebp - 0x28c]
and ecx, dword [ebp - 0x2c4]
xor ecx, dword [ebp - 0x29c]
add ebx, ecx
adc edi, eax
mov eax, dword [ebp - 0x288]
add ebx, dword [eax + 0x10185c68]
adc edi, dword [eax + 0x10185c6c]
add ebx, dword [ebp - 0x2e4]
mov eax, dword [ebp - 0x2ac]
mov edx, eax
adc edi, dword [ebp - 0x2f4]
add ebx, dword [ebp - 0x2a4]
adc edi, dword [ebp - 0x2a8]
add dword [ebp - 0x2bc], ebx
adc dword [ebp - 0x2c0], edi
mov ecx, dword [ebp - 0x2b0]
xor esi, esi
shrd eax, ecx, 0x1c
shl edx, 4
or esi, eax
shr ecx, 0x1c
mov eax, dword [ebp - 0x2ac]
or edx, ecx
mov ecx, dword [ebp - 0x2b0]
mov dword [ebp - 0x2a4], esi
mov esi, ecx
shld ecx, eax, 0x1e
shr esi, 2
shl eax, 0x1e
or esi, eax
mov dword [ebp - 0x2a8], edx
xor dword [ebp - 0x2a4], esi
xor edx, edx
mov eax, dword [ebp - 0x2ac]
or edx, ecx
xor dword [ebp - 0x2a8], edx
xor edx, edx
mov ecx, dword [ebp - 0x2b0]
mov esi, ecx
shld ecx, eax, 0x19
shr esi, 7
or edx, ecx
shl eax, 0x19
xor dword [ebp - 0x2a8], edx
or esi, eax
xor dword [ebp - 0x2a4], esi
mov ecx, dword [ebp - 0x290]
mov esi, ecx
or esi, dword [ebp - 0x2ac]
and ecx, dword [ebp - 0x2ac]
and esi, dword [ebp - 0x2b4]
mov eax, dword [ebp - 0x294]
or esi, ecx
mov ecx, dword [ebp - 0x2a4]
mov edx, eax
and eax, dword [ebp - 0x2b0]
or edx, dword [ebp - 0x2b0]
and edx, dword [ebp - 0x2b8]
or edx, eax
mov eax, dword [ebp - 0x2a8]
add ecx, esi
adc eax, edx
add ecx, ebx
mov dword [ebp - 0x2a4], ecx
mov ecx, dword [ebp - 0x2c0]
adc eax, edi
mov dword [ebp - 0x2a8], eax
mov ebx, ecx
mov eax, dword [ebp - 0x2bc]
xor edi, edi
shld ecx, eax, 0x17
shr ebx, 9
xor edx, edx
shl eax, 0x17
or edi, ecx
mov ecx, dword [ebp - 0x2c0]
or ebx, eax
mov eax, dword [ebp - 0x2bc]
mov esi, eax
shrd eax, ecx, 0x12
shl esi, 0xe
shr ecx, 0x12
or edx, eax
mov eax, dword [ebp - 0x2bc]
or esi, ecx
mov ecx, dword [ebp - 0x2c0]
xor edi, esi
mov esi, eax
xor ebx, edx
shrd eax, ecx, 0xe
xor edx, edx
shl esi, 0x12
shr ecx, 0xe
or edx, eax
or esi, ecx
xor ebx, edx
mov ecx, dword [ebp - 0x2c4]
xor edi, esi
xor ecx, dword [ebp - 0x28c]
and ecx, dword [ebp - 0x2bc]
xor ecx, dword [ebp - 0x28c]
mov eax, dword [ebp - 0x2c8]
xor eax, dword [ebp - 0x298]
and eax, dword [ebp - 0x2c0]
xor eax, dword [ebp - 0x298]
add ebx, ecx
mov ecx, dword [ebp - 0x2a8]
adc edi, eax
mov eax, dword [ebp - 0x288]
add ebx, dword [eax + 0x10185c70]
adc edi, dword [eax + 0x10185c74]
add ebx, dword [ebp - 0x2e8]
mov eax, dword [ebp - 0x2a4]
mov edx, eax
adc edi, dword [ebp - 0x300]
add ebx, dword [ebp - 0x29c]
adc edi, dword [ebp - 0x2a0]
add dword [ebp - 0x2b4], ebx
adc dword [ebp - 0x2b8], edi
xor esi, esi
shrd eax, ecx, 0x1c
shl edx, 4
or esi, eax
shr ecx, 0x1c
mov eax, dword [ebp - 0x2a4]
or edx, ecx
mov ecx, dword [ebp - 0x2a8]
mov dword [ebp - 0x29c], esi
mov esi, ecx
shld ecx, eax, 0x1e
shr esi, 2
shl eax, 0x1e
or esi, eax
mov dword [ebp - 0x2a0], edx
xor dword [ebp - 0x29c], esi
xor edx, edx
mov eax, dword [ebp - 0x2a4]
or edx, ecx
xor dword [ebp - 0x2a0], edx
xor edx, edx
mov ecx, dword [ebp - 0x2a8]
mov esi, ecx
shld ecx, eax, 0x19
shr esi, 7
shl eax, 0x19
or edx, ecx
xor dword [ebp - 0x2a0], edx
or esi, eax
xor dword [ebp - 0x29c], esi
mov ecx, dword [ebp - 0x2ac]
mov esi, ecx
or esi, dword [ebp - 0x2a4]
and ecx, dword [ebp - 0x2a4]
mov eax, dword [ebp - 0x2b0]
mov edx, eax
and eax, dword [ebp - 0x2a8]
or edx, dword [ebp - 0x2a8]
and esi, dword [ebp - 0x290]
and edx, dword [ebp - 0x294]
or esi, ecx
mov ecx, dword [ebp - 0x29c]
or edx, eax
mov eax, dword [ebp - 0x2a0]
add ecx, esi
adc eax, edx
add ecx, ebx
mov dword [ebp - 0x29c], ecx
mov ecx, dword [ebp - 0x2b8]
adc eax, edi
mov dword [ebp - 0x2a0], eax
mov ebx, ecx
mov eax, dword [ebp - 0x2b4]
xor edi, edi
shld ecx, eax, 0x17
shr ebx, 9
shl eax, 0x17
or ebx, eax
mov eax, dword [ebp - 0x2b4]
or edi, ecx
mov ecx, dword [ebp - 0x2b8]
mov esi, eax
shrd eax, ecx, 0x12
shl esi, 0xe
xor edx, edx
or edx, eax
shr ecx, 0x12
or esi, ecx
mov eax, dword [ebp - 0x2b4]
mov ecx, dword [ebp - 0x2b8]
xor edi, esi
mov esi, eax
xor ebx, edx
shrd eax, ecx, 0xe
shl esi, 0x12
xor edx, edx
or edx, eax
shr ecx, 0xe
mov eax, dword [ebp - 0x2c8]
or esi, ecx
xor eax, dword [ebp - 0x2c0]
xor edi, esi
and eax, dword [ebp - 0x2b8]
xor ebx, edx
xor eax, dword [ebp - 0x2c8]
mov ecx, dword [ebp - 0x2c4]
xor ecx, dword [ebp - 0x2bc]
and ecx, dword [ebp - 0x2b4]
xor ecx, dword [ebp - 0x2c4]
add ebx, ecx
mov ecx, dword [ebp - 0x2a0]
adc edi, eax
mov eax, dword [ebp - 0x288]
add ebx, dword [eax + 0x10185c78]
adc edi, dword [eax + 0x10185c7c]
add ebx, dword [ebp - 0x2ec]
mov eax, dword [ebp - 0x29c]
mov edx, eax
adc edi, dword [ebp - 0x2fc]
add ebx, dword [ebp - 0x28c]
adc edi, dword [ebp - 0x298]
add dword [ebp - 0x290], ebx
adc dword [ebp - 0x294], edi
xor esi, esi
shrd eax, ecx, 0x1c
shl edx, 4
or esi, eax
shr ecx, 0x1c
mov eax, dword [ebp - 0x29c]
or edx, ecx
mov ecx, dword [ebp - 0x2a0]
mov dword [ebp - 0x28c], esi
mov esi, ecx
shld ecx, eax, 0x1e
mov dword [ebp - 0x298], edx
xor edx, edx
shr esi, 2
or edx, ecx
mov ecx, dword [ebp - 0x2a0]
xor dword [ebp - 0x298], edx
xor edx, edx
shl eax, 0x1e
or esi, eax
mov eax, dword [ebp - 0x29c]
xor dword [ebp - 0x28c], esi
mov esi, ecx
shld ecx, eax, 0x19
shr esi, 7
shl eax, 0x19
or edx, ecx
xor dword [ebp - 0x298], edx
or esi, eax
xor dword [ebp - 0x28c], esi
mov ecx, dword [ebp - 0x2a4]
mov esi, ecx
mov eax, dword [ebp - 0x2a8]
mov edx, eax
or esi, dword [ebp - 0x29c]
or edx, dword [ebp - 0x2a0]
and ecx, dword [ebp - 0x29c]
and eax, dword [ebp - 0x2a0]
and esi, dword [ebp - 0x2ac]
and edx, dword [ebp - 0x2b0]
or esi, ecx
mov ecx, dword [ebp - 0x28c]
or edx, eax
mov eax, dword [ebp - 0x298]
add ecx, esi
adc eax, edx
add ecx, ebx
mov ebx, dword [ebp - 0x30c]
mov dword [ebp - 0x28c], ecx
adc eax, edi
mov ecx, dword [ebp - 0x288]
inc ebx
add ecx, 0x40
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x30c], ebx
mov dword [ebp - 0x288], ecx
cmp ecx, 0x248
jl 0x1007c0be
mov ecx, dword [ebp - 0x310]
add ecx, dword [ebp - 0x28c]
mov edx, dword [ebp - 0x314]
adc edx, eax
mov eax, dword [ebp - 0x318]
pop edi
pop esi
pop ebx
mov dword [eax + 8], ecx
mov ecx, dword [ebp - 0x31c]
add ecx, dword [ebp - 0x29c]
mov dword [eax + 0xc], edx
mov edx, dword [ebp - 0x320]
adc edx, dword [ebp - 0x2a0]
mov dword [eax + 0x10], ecx
mov ecx, dword [ebp - 0x338]
add ecx, dword [ebp - 0x2a4]
mov dword [eax + 0x14], edx
mov edx, dword [ebp - 0x324]
adc edx, dword [ebp - 0x2a8]
mov dword [eax + 0x18], ecx
mov ecx, dword [ebp - 0x328]
add ecx, dword [ebp - 0x2ac]
mov dword [eax + 0x1c], edx
mov edx, dword [ebp - 0x32c]
adc edx, dword [ebp - 0x2b0]
mov dword [eax + 0x20], ecx
mov ecx, dword [ebp - 0x330]
add ecx, dword [ebp - 0x290]
mov dword [eax + 0x24], edx
mov edx, dword [ebp - 0x334]
adc edx, dword [ebp - 0x294]
mov dword [eax + 0x28], ecx
mov ecx, dword [ebp - 0x350]
add ecx, dword [ebp - 0x2b4]
mov dword [eax + 0x2c], edx
mov edx, dword [ebp - 0x33c]
adc edx, dword [ebp - 0x2b8]
mov dword [eax + 0x30], ecx
mov ecx, dword [ebp - 0x340]
add ecx, dword [ebp - 0x2bc]
mov dword [eax + 0x34], edx
mov edx, dword [ebp - 0x344]
adc edx, dword [ebp - 0x2c0]
mov dword [eax + 0x38], ecx
mov ecx, dword [ebp - 0x348]
add ecx, dword [ebp - 0x2c4]
mov dword [eax + 0x3c], edx
mov edx, dword [ebp - 0x34c]
adc edx, dword [ebp - 0x2c8]
mov dword [eax + 0x40], ecx
mov ecx, dword [ebp - 4]
xor ecx, ebp
mov dword [eax + 0x44], edx
call fcn.101452d9
leave
ret