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

Disassembly:
push ecx
push ebx
push ebp
mov ebp, dword [esp + 0x10]
mov edx, dword [ebp]
push esi
mov esi, dword [ebp + 4]
ror esi, 4
mov ecx, edx
xor ecx, esi
and ecx, 0xf0f0f0f
xor edx, ecx
xor ecx, esi
ror ecx, 0xc
mov esi, edx
xor esi, ecx
and esi, 0xffff0000
xor edx, esi
xor esi, ecx
ror esi, 0x12
mov ecx, edx
xor ecx, esi
and ecx, 0x33333333
xor edx, ecx
xor ecx, esi
mov esi, edx
ror ecx, 0x16
xor esi, ecx
and esi, 0xff00ff00
xor edx, esi
xor esi, ecx
ror esi, 9
mov ecx, esi
mov esi, edx
xor esi, ecx
push edi
mov edi, dword [eax + 0x78]
and esi, 0x55555555
mov dword [esp + 0x10], ecx
mov ecx, esi
xor ecx, edx
rol ecx, 1
xor edi, ecx
and edi, 0x3f3f3f3f
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
shr ebx, 0x10
movzx ebx, bl
shr edi, 0x18
mov edi, dword [edi*4 + 0x457b68]
or edi, dword [ebx*4 + 0x457968]
mov edx, ecx
ror edx, 4
xor edx, dword [eax + 0x7c]
xor esi, dword [esp + 0x10]
and edx, 0x3f3f3f3f
mov ebx, edx
shr ebx, 0x18
or edi, dword [ebx*4 + 0x457c68]
mov ebx, dword [esp + 0x18]
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457768]
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457a68]
mov ebx, edx
shr ebx, 8
movzx edx, dl
movzx ebx, bl
or edi, dword [ebx*4 + 0x457868]
rol esi, 2
or edi, dword [edx*4 + 0x457668]
movzx edx, byte [esp + 0x18]
or edi, dword [edx*4 + 0x457568]
xor esi, edi
mov edi, dword [eax + 0x70]
mov edx, esi
ror edx, 4
xor edx, dword [eax + 0x74]
and edx, 0x3f3f3f3f
xor edi, esi
and edi, 0x3f3f3f3f
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
shr ebx, 0x10
movzx ebx, bl
shr edi, 0x18
mov edi, dword [edi*4 + 0x457b68]
or edi, dword [ebx*4 + 0x457968]
mov ebx, edx
shr ebx, 0x18
or edi, dword [ebx*4 + 0x457c68]
mov ebx, dword [esp + 0x18]
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457768]
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457a68]
mov ebx, edx
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457868]
movzx edx, dl
or edi, dword [edx*4 + 0x457668]
movzx edx, byte [esp + 0x18]
or edi, dword [edx*4 + 0x457568]
xor ecx, edi
mov edi, dword [eax + 0x68]
xor edi, ecx
and edi, 0x3f3f3f3f
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
shr ebx, 0x10
movzx ebx, bl
shr edi, 0x18
mov edi, dword [edi*4 + 0x457b68]
or edi, dword [ebx*4 + 0x457968]
mov edx, ecx
ror edx, 4
xor edx, dword [eax + 0x6c]
and edx, 0x3f3f3f3f
mov ebx, edx
shr ebx, 0x18
or edi, dword [ebx*4 + 0x457c68]
mov ebx, dword [esp + 0x18]
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457768]
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457a68]
mov ebx, edx
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457868]
movzx edx, dl
or edi, dword [edx*4 + 0x457668]
movzx edx, byte [esp + 0x18]
or edi, dword [edx*4 + 0x457568]
xor esi, edi
mov edi, dword [eax + 0x60]
xor edi, esi
and edi, 0x3f3f3f3f
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
shr ebx, 0x10
mov edx, esi
ror edx, 4
xor edx, dword [eax + 0x64]
movzx ebx, bl
shr edi, 0x18
mov edi, dword [edi*4 + 0x457b68]
or edi, dword [ebx*4 + 0x457968]
and edx, 0x3f3f3f3f
mov ebx, edx
shr ebx, 0x18
or edi, dword [ebx*4 + 0x457c68]
mov ebx, dword [esp + 0x18]
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457768]
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457a68]
mov ebx, edx
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457868]
movzx edx, dl
or edi, dword [edx*4 + 0x457668]
movzx edx, byte [esp + 0x18]
or edi, dword [edx*4 + 0x457568]
xor ecx, edi
mov edi, dword [eax + 0x58]
xor edi, ecx
and edi, 0x3f3f3f3f
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
shr ebx, 0x10
movzx ebx, bl
shr edi, 0x18
mov edi, dword [edi*4 + 0x457b68]
or edi, dword [ebx*4 + 0x457968]
mov edx, ecx
ror edx, 4
xor edx, dword [eax + 0x5c]
and edx, 0x3f3f3f3f
mov ebx, edx
shr ebx, 0x18
or edi, dword [ebx*4 + 0x457c68]
mov ebx, dword [esp + 0x18]
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457768]
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457a68]
mov ebx, edx
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457868]
movzx edx, dl
or edi, dword [edx*4 + 0x457668]
movzx edx, byte [esp + 0x18]
or edi, dword [edx*4 + 0x457568]
xor esi, edi
mov edi, dword [eax + 0x50]
xor edi, esi
and edi, 0x3f3f3f3f
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
shr ebx, 0x10
movzx ebx, bl
shr edi, 0x18
mov edi, dword [edi*4 + 0x457b68]
or edi, dword [ebx*4 + 0x457968]
mov edx, esi
ror edx, 4
xor edx, dword [eax + 0x54]
and edx, 0x3f3f3f3f
mov ebx, edx
shr ebx, 0x18
or edi, dword [ebx*4 + 0x457c68]
mov ebx, dword [esp + 0x18]
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457768]
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457a68]
mov ebx, edx
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457868]
movzx edx, dl
or edi, dword [edx*4 + 0x457668]
movzx edx, byte [esp + 0x18]
or edi, dword [edx*4 + 0x457568]
xor ecx, edi
mov edi, dword [eax + 0x48]
xor edi, ecx
and edi, 0x3f3f3f3f
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
shr ebx, 0x10
movzx ebx, bl
shr edi, 0x18
mov edi, dword [edi*4 + 0x457b68]
or edi, dword [ebx*4 + 0x457968]
mov edx, ecx
ror edx, 4
xor edx, dword [eax + 0x4c]
and edx, 0x3f3f3f3f
mov ebx, edx
shr ebx, 0x18
or edi, dword [ebx*4 + 0x457c68]
mov ebx, dword [esp + 0x18]
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457768]
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457a68]
mov ebx, edx
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457868]
movzx edx, dl
or edi, dword [edx*4 + 0x457668]
movzx edx, byte [esp + 0x18]
or edi, dword [edx*4 + 0x457568]
xor esi, edi
mov edi, dword [eax + 0x40]
xor edi, esi
and edi, 0x3f3f3f3f
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
shr ebx, 0x10
shr edi, 0x18
mov edi, dword [edi*4 + 0x457b68]
movzx ebx, bl
or edi, dword [ebx*4 + 0x457968]
mov edx, esi
ror edx, 4
xor edx, dword [eax + 0x44]
and edx, 0x3f3f3f3f
mov ebx, edx
shr ebx, 0x18
or edi, dword [ebx*4 + 0x457c68]
mov ebx, dword [esp + 0x18]
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457768]
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457a68]
mov ebx, edx
shr ebx, 8
movzx edx, dl
movzx ebx, bl
or edi, dword [ebx*4 + 0x457868]
or edi, dword [edx*4 + 0x457668]
movzx edx, byte [esp + 0x18]
or edi, dword [edx*4 + 0x457568]
xor ecx, edi
mov edi, dword [eax + 0x38]
mov edx, ecx
ror edx, 4
xor edx, dword [eax + 0x3c]
xor edi, ecx
and edi, 0x3f3f3f3f
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
and edx, 0x3f3f3f3f
shr edi, 0x18
mov edi, dword [edi*4 + 0x457b68]
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457968]
mov ebx, edx
shr ebx, 0x18
or edi, dword [ebx*4 + 0x457c68]
mov ebx, dword [esp + 0x18]
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457768]
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457a68]
mov ebx, edx
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457868]
movzx edx, dl
or edi, dword [edx*4 + 0x457668]
movzx edx, byte [esp + 0x18]
or edi, dword [edx*4 + 0x457568]
xor esi, edi
mov edi, dword [eax + 0x30]
xor edi, esi
and edi, 0x3f3f3f3f
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
shr ebx, 0x10
movzx ebx, bl
shr edi, 0x18
mov edi, dword [edi*4 + 0x457b68]
or edi, dword [ebx*4 + 0x457968]
mov edx, esi
ror edx, 4
xor edx, dword [eax + 0x34]
and edx, 0x3f3f3f3f
mov ebx, edx
shr ebx, 0x18
or edi, dword [ebx*4 + 0x457c68]
mov ebx, dword [esp + 0x18]
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457768]
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457a68]
mov ebx, edx
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457868]
movzx edx, dl
or edi, dword [edx*4 + 0x457668]
movzx edx, byte [esp + 0x18]
or edi, dword [edx*4 + 0x457568]
xor ecx, edi
mov edi, dword [eax + 0x28]
xor edi, ecx
and edi, 0x3f3f3f3f
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
shr ebx, 0x10
movzx ebx, bl
mov edx, ecx
ror edx, 4
xor edx, dword [eax + 0x2c]
shr edi, 0x18
mov edi, dword [edi*4 + 0x457b68]
or edi, dword [ebx*4 + 0x457968]
and edx, 0x3f3f3f3f
mov ebx, edx
shr ebx, 0x18
or edi, dword [ebx*4 + 0x457c68]
mov ebx, dword [esp + 0x18]
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457768]
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457a68]
mov ebx, edx
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457868]
movzx edx, dl
or edi, dword [edx*4 + 0x457668]
movzx edx, byte [esp + 0x18]
or edi, dword [edx*4 + 0x457568]
xor esi, edi
mov edi, dword [eax + 0x20]
xor edi, esi
and edi, 0x3f3f3f3f
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
shr ebx, 0x10
movzx ebx, bl
shr edi, 0x18
mov edi, dword [edi*4 + 0x457b68]
or edi, dword [ebx*4 + 0x457968]
mov edx, esi
ror edx, 4
xor edx, dword [eax + 0x24]
and edx, 0x3f3f3f3f
mov ebx, edx
shr ebx, 0x18
or edi, dword [ebx*4 + 0x457c68]
mov ebx, dword [esp + 0x18]
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457768]
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457a68]
mov ebx, edx
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457868]
movzx edx, dl
or edi, dword [edx*4 + 0x457668]
movzx edx, byte [esp + 0x18]
or edi, dword [edx*4 + 0x457568]
xor ecx, edi
mov edi, dword [eax + 0x18]
xor edi, ecx
and edi, 0x3f3f3f3f
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
shr ebx, 0x10
movzx ebx, bl
shr edi, 0x18
mov edi, dword [edi*4 + 0x457b68]
or edi, dword [ebx*4 + 0x457968]
mov edx, ecx
ror edx, 4
xor edx, dword [eax + 0x1c]
and edx, 0x3f3f3f3f
mov ebx, edx
shr ebx, 0x18
or edi, dword [ebx*4 + 0x457c68]
mov ebx, dword [esp + 0x18]
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457768]
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457a68]
mov ebx, edx
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457868]
movzx edx, dl
or edi, dword [edx*4 + 0x457668]
movzx edx, byte [esp + 0x18]
or edi, dword [edx*4 + 0x457568]
xor esi, edi
mov edx, esi
ror edx, 4
xor edx, dword [eax + 0x14]
mov edi, dword [eax + 0x10]
xor edi, esi
and edi, 0x3f3f3f3f
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
shr ebx, 0x10
movzx ebx, bl
shr edi, 0x18
mov edi, dword [edi*4 + 0x457b68]
or edi, dword [ebx*4 + 0x457968]
and edx, 0x3f3f3f3f
mov ebx, edx
shr ebx, 0x18
or edi, dword [ebx*4 + 0x457c68]
mov ebx, dword [esp + 0x18]
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457768]
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457a68]
mov ebx, edx
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457868]
movzx edx, dl
or edi, dword [edx*4 + 0x457668]
movzx edx, byte [esp + 0x18]
or edi, dword [edx*4 + 0x457568]
xor ecx, edi
mov edi, dword [eax + 8]
xor edi, ecx
and edi, 0x3f3f3f3f
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
shr ebx, 0x10
movzx ebx, bl
shr edi, 0x18
mov edi, dword [edi*4 + 0x457b68]
or edi, dword [ebx*4 + 0x457968]
mov edx, ecx
ror edx, 4
xor edx, dword [eax + 0xc]
and edx, 0x3f3f3f3f
mov ebx, edx
shr ebx, 0x18
or edi, dword [ebx*4 + 0x457c68]
mov ebx, dword [esp + 0x18]
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457768]
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
or edi, dword [ebx*4 + 0x457a68]
mov ebx, edx
shr ebx, 8
movzx ebx, bl
or edi, dword [ebx*4 + 0x457868]
movzx edx, dl
or edi, dword [edx*4 + 0x457668]
movzx edx, byte [esp + 0x18]
or edi, dword [edx*4 + 0x457568]
xor esi, edi
mov edi, dword [eax]
mov ebx, esi
ror ebx, 4
xor ebx, dword [eax + 4]
xor edi, esi
and edi, 0x3f3f3f3f
and ebx, 0x3f3f3f3f
mov eax, edi
mov edx, edi
ror esi, 1
shr eax, 0x18
shr edx, 0x10
movzx edx, dl
mov dword [esp + 0x18], edi
mov dword [esp + 0x10], edx
mov edx, dword [eax*4 + 0x457b68]
mov eax, dword [esp + 0x10]
or edx, dword [eax*4 + 0x457968]
mov eax, ebx
shr eax, 0x18
or edx, dword [eax*4 + 0x457c68]
mov eax, edi
shr eax, 8
movzx eax, al
or edx, dword [eax*4 + 0x457768]
mov eax, ebx
shr eax, 0x10
movzx eax, al
or edx, dword [eax*4 + 0x457a68]
mov eax, ebx
shr eax, 8
movzx eax, al
or edx, dword [eax*4 + 0x457868]
movzx eax, bl
or edx, dword [eax*4 + 0x457668]
movzx eax, byte [esp + 0x18]
or edx, dword [eax*4 + 0x457568]
pop edi
xor edx, ecx
ror edx, 2
mov eax, edx
xor eax, esi
and eax, 0x55555555
xor esi, eax
xor eax, edx
rol eax, 9
mov ecx, eax
xor ecx, esi
and ecx, 0xff00ff00
xor esi, ecx
xor ecx, eax
rol ecx, 0x16
mov eax, ecx
xor eax, esi
and eax, 0x33333333
xor esi, eax
xor eax, ecx
rol eax, 0x12
mov ecx, eax
xor ecx, esi
and ecx, 0xffff0000
xor esi, ecx
xor ecx, eax
rol ecx, 0xc
mov eax, ecx
xor eax, esi
and eax, 0xf0f0f0f
mov edx, eax
xor edx, esi
xor eax, ecx
rol eax, 4
pop esi
mov dword [ebp], edx
mov dword [ebp + 4], eax
pop ebp
pop ebx
pop ecx
ret 4