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

Disassembly:
push ebx
push esi
add esp, 0xffffffd8
mov dword [esp + 4], ecx
mov dword [esp], edx
mov edx, dword [eax]
mov ecx, dword [esp]
xor edx, dword [ecx + 0xa0]
mov dword [esp + 8], edx
mov edx, eax
mov ecx, edx
add ecx, 4
mov ecx, dword [ecx]
mov ebx, dword [esp]
xor ecx, dword [ebx + 0xa4]
mov dword [esp + 0xc], ecx
mov ecx, edx
add ecx, 8
mov ecx, dword [ecx]
mov ebx, dword [esp]
xor ecx, dword [ebx + 0xa8]
mov dword [esp + 0x10], ecx
add edx, 0xc
mov ecx, dword [edx]
mov eax, dword [esp]
xor ecx, dword [eax + 0xac]
mov dword [esp + 0x14], ecx
movzx eax, byte [esp + 8]
mov edx, dword [eax*4 + 0x4cab1c]
shr ecx, 8
movzx eax, cl
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x10]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0xc]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x90]
mov dword [esp + 0x18], edx
movzx eax, byte [esp + 0xc]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 8]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x14]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x10]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x94]
mov dword [esp + 0x1c], edx
movzx eax, byte [esp + 0x10]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0xc]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 8]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x14]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x98]
mov dword [esp + 0x20], edx
movzx eax, byte [esp + 0x14]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x10]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0xc]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 8]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x9c]
mov dword [esp + 0x24], edx
movzx eax, byte [esp + 0x18]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x24]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x20]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x1c]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x80]
mov dword [esp + 8], edx
movzx eax, byte [esp + 0x1c]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x18]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x24]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x20]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x84]
mov dword [esp + 0xc], edx
movzx eax, byte [esp + 0x20]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x1c]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x18]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x24]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x88]
mov dword [esp + 0x10], edx
movzx eax, byte [esp + 0x24]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x20]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x1c]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x18]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x8c]
mov dword [esp + 0x14], edx
movzx eax, byte [esp + 8]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x14]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x10]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0xc]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x70]
mov dword [esp + 0x18], edx
movzx eax, byte [esp + 0xc]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 8]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x14]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x10]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x74]
mov dword [esp + 0x1c], edx
movzx eax, byte [esp + 0x10]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0xc]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 8]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x14]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x78]
mov dword [esp + 0x20], edx
movzx eax, byte [esp + 0x14]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x10]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0xc]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 8]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x7c]
mov dword [esp + 0x24], edx
movzx eax, byte [esp + 0x18]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x24]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x20]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x1c]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x60]
mov dword [esp + 8], edx
movzx eax, byte [esp + 0x1c]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x18]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x24]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x20]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x64]
mov dword [esp + 0xc], edx
movzx eax, byte [esp + 0x20]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x1c]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x18]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x24]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x68]
mov dword [esp + 0x10], edx
movzx eax, byte [esp + 0x24]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x20]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x1c]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x18]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x6c]
mov dword [esp + 0x14], edx
movzx eax, byte [esp + 8]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x14]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x10]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0xc]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x50]
mov dword [esp + 0x18], edx
movzx eax, byte [esp + 0xc]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 8]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x14]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x10]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x54]
mov dword [esp + 0x1c], edx
movzx eax, byte [esp + 0x10]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0xc]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 8]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x14]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x58]
mov dword [esp + 0x20], edx
movzx eax, byte [esp + 0x14]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x10]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0xc]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 8]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x5c]
mov dword [esp + 0x24], edx
movzx eax, byte [esp + 0x18]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x24]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x20]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x1c]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x40]
mov dword [esp + 8], edx
movzx eax, byte [esp + 0x1c]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x18]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x24]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x20]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x44]
mov dword [esp + 0xc], edx
movzx eax, byte [esp + 0x20]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x1c]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x18]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x24]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x48]
mov dword [esp + 0x10], edx
movzx eax, byte [esp + 0x24]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x20]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x1c]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x18]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x4c]
mov dword [esp + 0x14], edx
movzx eax, byte [esp + 8]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x14]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x10]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0xc]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x30]
mov dword [esp + 0x18], edx
movzx eax, byte [esp + 0xc]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 8]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x14]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x10]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x34]
mov dword [esp + 0x1c], edx
movzx eax, byte [esp + 0x10]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0xc]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 8]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x14]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x38]
mov dword [esp + 0x20], edx
movzx eax, byte [esp + 0x14]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x10]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0xc]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 8]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x3c]
mov dword [esp + 0x24], edx
movzx eax, byte [esp + 0x18]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x24]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x20]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x1c]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x20]
mov dword [esp + 8], edx
movzx eax, byte [esp + 0x1c]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x18]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x24]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x20]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x24]
mov dword [esp + 0xc], edx
movzx eax, byte [esp + 0x20]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x1c]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x18]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x24]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x28]
mov dword [esp + 0x10], edx
movzx eax, byte [esp + 0x24]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x20]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x1c]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x18]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x2c]
mov dword [esp + 0x14], edx
movzx eax, byte [esp + 8]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x14]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x10]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0xc]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x10]
mov dword [esp + 0x18], edx
movzx eax, byte [esp + 0xc]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 8]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0x14]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x10]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x14]
mov dword [esp + 0x1c], edx
movzx eax, byte [esp + 0x10]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0xc]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 8]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 0x14]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x18]
mov dword [esp + 0x20], edx
movzx eax, byte [esp + 0x14]
mov edx, dword [eax*4 + 0x4cab1c]
mov eax, dword [esp + 0x10]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4cab1c]
mov ecx, dword [esp + 0xc]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4cab1c]
mov ecx, dword [esp + 8]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4cab1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0x1c]
mov dword [esp + 0x24], edx
movzx eax, byte [esp + 0x18]
mov edx, dword [eax*4 + 0x4caf1c]
mov eax, dword [esp + 0x24]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4caf1c]
mov ecx, dword [esp + 0x20]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4caf1c]
mov ecx, dword [esp + 0x1c]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4caf1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax]
mov dword [esp + 8], edx
movzx eax, byte [esp + 0x1c]
mov edx, dword [eax*4 + 0x4caf1c]
mov eax, dword [esp + 0x18]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4caf1c]
mov ecx, dword [esp + 0x24]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4caf1c]
mov ecx, dword [esp + 0x20]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4caf1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 4]
mov dword [esp + 0xc], edx
movzx eax, byte [esp + 0x20]
mov edx, dword [eax*4 + 0x4caf1c]
mov eax, dword [esp + 0x1c]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4caf1c]
mov ecx, dword [esp + 0x18]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4caf1c]
mov ecx, dword [esp + 0x24]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4caf1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 8]
mov dword [esp + 0x10], edx
movzx eax, byte [esp + 0x24]
mov edx, dword [eax*4 + 0x4caf1c]
mov eax, dword [esp + 0x20]
shr eax, 8
movzx eax, al
mov eax, dword [eax*4 + 0x4caf1c]
mov ecx, dword [esp + 0x1c]
shr ecx, 0x10
movzx ecx, cl
mov esi, dword [ecx*4 + 0x4caf1c]
mov ecx, dword [esp + 0x18]
shr ecx, 0x18
movzx ecx, cl
mov ecx, dword [ecx*4 + 0x4caf1c]
mov ebx, eax
shl ebx, 8
shr eax, 0x18
or ebx, eax
xor edx, ebx
mov eax, esi
shl eax, 0x10
shr esi, 0x10
or eax, esi
xor edx, eax
mov eax, ecx
shl eax, 0x18
shr ecx, 8
or eax, ecx
xor edx, eax
mov eax, dword [esp]
xor edx, dword [eax + 0xc]
mov dword [esp + 0x14], edx
mov eax, dword [esp + 4]
mov edx, dword [esp + 8]
mov dword [eax], edx
mov eax, dword [esp + 4]
mov edx, eax
add edx, 4
mov ecx, dword [esp + 0xc]
mov dword [edx], ecx
mov edx, eax
add edx, 8
mov ecx, dword [esp + 0x10]
mov dword [edx], ecx
add eax, 0xc
mov edx, dword [esp + 0x14]
mov dword [eax], edx
add esp, 0x28
pop esi
pop ebx
ret