Function at 0x55261c
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffd18
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
mov dword [ebp - 4], eax
jmp 0x552caf
lea ecx, [ebp - 0x68]
mov edx, dword [edi]
mov dword [ebp - 0xc], edx
mov edx, dword [edi + 4]
mov dword [ebp - 8], edx
mov eax, dword [edi + 8]
mov dword [ecx + 8], eax
mov eax, dword [edi + 0xc]
mov dword [ecx + 0xc], eax
mov edx, dword [edi + 0x10]
mov dword [ecx + 0x10], edx
mov edx, dword [edi + 0x14]
mov dword [ecx + 0x14], edx
mov eax, dword [edi + 0x18]
mov dword [ecx + 0x18], eax
mov eax, dword [edi + 0x1c]
mov dword [ecx + 0x1c], eax
mov edx, dword [edi + 0x20]
mov dword [ebp - 0x14], edx
mov edx, dword [edi + 0x24]
mov dword [ebp - 0x10], edx
mov eax, dword [edi + 0x28]
mov dword [ecx + 0x28], eax
mov eax, dword [edi + 0x2c]
mov dword [ecx + 0x2c], eax
mov edx, dword [edi + 0x30]
mov dword [ecx + 0x30], edx
mov edx, dword [edi + 0x34]
mov dword [ecx + 0x34], edx
mov eax, dword [edi + 0x38]
mov dword [ecx + 0x38], eax
mov eax, dword [edi + 0x3c]
mov dword [ecx + 0x3c], eax
xor esi, esi
mov dword [ebp - 0x20], 0x61dce0
mov eax, dword [ebp - 4]
mov ebx, eax
xor eax, eax
xor edx, edx
mov al, byte [ebx]
mov edx, eax
xor eax, eax
shl edx, 0x18
push edx
push eax
xor eax, eax
xor edx, edx
mov al, byte [ebx + 1]
mov edx, eax
xor eax, eax
shl edx, 0x10
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
push edx
push eax
xor eax, eax
xor edx, edx
mov al, byte [ebx + 2]
mov edx, eax
xor eax, eax
shl edx, 8
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
push edx
push eax
xor eax, eax
xor edx, edx
mov al, byte [ebx + 3]
mov edx, eax
xor eax, eax
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
push edx
push eax
xor eax, eax
xor edx, edx
mov al, byte [ebx + 4]
shld edx, eax, 0x18
shl eax, 0x18
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
push edx
push eax
xor eax, eax
xor edx, edx
mov al, byte [ebx + 5]
shld edx, eax, 0x10
shl eax, 0x10
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
push edx
push eax
xor eax, eax
xor edx, edx
mov al, byte [ebx + 6]
shld edx, eax, 8
shl eax, 8
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
push edx
push eax
xor eax, eax
xor edx, edx
mov al, byte [ebx + 7]
shld edx, eax, 0
or edx, dword [esp + 4]
or eax, dword [esp]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0xc]
add esp, 8
mov dword [ecx], eax
mov eax, dword [ebp - 8]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x14]
mov dword [ecx + 0x20], edx
mov edx, dword [ebp - 0x10]
mov dword [ecx + 0x24], edx
mov eax, dword [ebp - 0x1c]
mov dword [ecx + 0x40], eax
mov eax, dword [ebp - 0x18]
mov dword [ecx + 0x44], eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
shrd eax, edx, 0xe
shr edx, 0xe
push edx
push eax
mov edx, dword [ebp - 0x14]
xor eax, eax
shl edx, 0x12
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
shrd eax, edx, 0x12
shr edx, 0x12
push edx
push eax
mov edx, dword [ebp - 0x14]
xor eax, eax
shl edx, 0xe
or edx, dword [esp + 4]
or eax, dword [esp]
add esp, 8
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov eax, dword [ebp - 0x10]
xor edx, edx
shr eax, 9
push edx
push eax
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x10]
shld edx, eax, 0x17
shl eax, 0x17
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
xor edx, dword [esp + 4]
xor eax, dword [esp]
add esp, 8
add eax, dword [ecx + 0x38]
adc edx, dword [ecx + 0x3c]
push edx
push eax
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x10]
and eax, dword [ecx + 0x28]
and edx, dword [ecx + 0x2c]
push edx
push eax
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x10]
not edx
not eax
and eax, dword [ecx + 0x30]
and edx, dword [ecx + 0x34]
xor edx, dword [esp + 4]
xor eax, dword [esp]
add esp, 8
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 4]
mov eax, dword [eax]
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
add dword [ebp - 0x1c], eax
adc dword [ebp - 0x18], edx
mov eax, dword [ecx + 0x18]
mov edx, dword [ecx + 0x1c]
add eax, dword [ebp - 0x1c]
adc edx, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], edx
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
shrd eax, edx, 0x1c
shr edx, 0x1c
push edx
push eax
mov edx, dword [ebp - 0xc]
xor eax, eax
shl edx, 4
or edx, dword [esp + 4]
or eax, dword [esp]
add esp, 8
push edx
push eax
mov eax, dword [ebp - 8]
xor edx, edx
shr eax, 2
push edx
push eax
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
shld edx, eax, 0x1e
shl eax, 0x1e
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov eax, dword [ebp - 8]
xor edx, edx
shr eax, 7
push edx
push eax
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
shld edx, eax, 0x19
shl eax, 0x19
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
xor edx, dword [esp + 4]
xor eax, dword [esp]
add esp, 8
add eax, dword [ebp - 0x1c]
adc edx, dword [ebp - 0x18]
push edx
push eax
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
and eax, dword [ecx + 8]
and edx, dword [ecx + 0xc]
push edx
push eax
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
and edx, dword [ecx + 0x14]
and eax, dword [ecx + 0x10]
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov eax, dword [ecx + 8]
mov edx, dword [ecx + 0xc]
and edx, dword [ecx + 0x14]
and eax, dword [ecx + 0x10]
xor edx, dword [esp + 4]
xor eax, dword [esp]
add esp, 8
add eax, dword [esp]
adc edx, dword [esp + 4]
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], edx
add esp, 8
add dword [ebp - 0x20], 8
add ebx, 8
inc esi
sub ecx, 8
cmp esi, 0x10
jl 0x5526a6
lea ebx, [esi*8 + 0x61dce0]
cmp esi, 0x50
jge 0x552c49
mov edx, dword [ecx + 0xbc]
mov eax, dword [ecx + 0xb8]
shrd eax, edx, 1
shr edx, 1
push edx
push eax
mov edx, dword [ecx + 0xb8]
xor eax, eax
shl edx, 0x1f
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov edx, dword [ecx + 0xbc]
mov eax, dword [ecx + 0xb8]
shrd eax, edx, 8
shr edx, 8
push edx
push eax
mov edx, dword [ecx + 0xb8]
xor eax, eax
shl edx, 0x18
or edx, dword [esp + 4]
or eax, dword [esp]
add esp, 8
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov edx, dword [ecx + 0xbc]
mov eax, dword [ecx + 0xb8]
shrd eax, edx, 7
shr edx, 7
xor edx, dword [esp + 4]
xor eax, dword [esp]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], edx
mov edx, dword [ecx + 0x54]
mov eax, dword [ecx + 0x50]
shrd eax, edx, 0x13
add esp, 8
shr edx, 0x13
push edx
push eax
mov edx, dword [ecx + 0x50]
xor eax, eax
shl edx, 0xd
or edx, dword [esp + 4]
or eax, dword [esp]
add esp, 8
push edx
push eax
mov eax, dword [ecx + 0x54]
xor edx, edx
shr eax, 0x1d
push edx
push eax
mov eax, dword [ecx + 0x50]
mov edx, dword [ecx + 0x54]
shld edx, eax, 3
shl eax, 3
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov edx, dword [ecx + 0x54]
mov eax, dword [ecx + 0x50]
shrd eax, edx, 6
shr edx, 6
xor edx, dword [esp + 4]
xor eax, dword [esp]
add esp, 8
add dword [ebp - 0x1c], eax
adc dword [ebp - 0x18], edx
mov eax, dword [ecx + 0xc0]
mov edx, dword [ecx + 0xc4]
add eax, dword [ecx + 0x78]
adc edx, dword [ecx + 0x7c]
add dword [ebp - 0x1c], eax
adc dword [ebp - 0x18], edx
mov eax, dword [ebp - 0xc]
mov dword [ecx], eax
mov eax, dword [ebp - 8]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x14]
mov dword [ecx + 0x20], edx
mov edx, dword [ebp - 0x10]
mov dword [ecx + 0x24], edx
mov eax, dword [ebp - 0x1c]
mov dword [ecx + 0x40], eax
mov eax, dword [ebp - 0x18]
mov dword [ecx + 0x44], eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
shrd eax, edx, 0xe
shr edx, 0xe
push edx
push eax
mov edx, dword [ebp - 0x14]
xor eax, eax
shl edx, 0x12
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
shrd eax, edx, 0x12
shr edx, 0x12
push edx
push eax
mov edx, dword [ebp - 0x14]
xor eax, eax
shl edx, 0xe
or edx, dword [esp + 4]
or eax, dword [esp]
add esp, 8
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov eax, dword [ebp - 0x10]
xor edx, edx
shr eax, 9
push edx
push eax
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x10]
shld edx, eax, 0x17
shl eax, 0x17
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
xor edx, dword [esp + 4]
xor eax, dword [esp]
add esp, 8
add eax, dword [ecx + 0x38]
adc edx, dword [ecx + 0x3c]
push edx
push eax
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x10]
and eax, dword [ecx + 0x28]
and edx, dword [ecx + 0x2c]
push edx
push eax
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x10]
not edx
not eax
and eax, dword [ecx + 0x30]
and edx, dword [ecx + 0x34]
xor edx, dword [esp + 4]
xor eax, dword [esp]
add esp, 8
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov eax, dword [ebx]
mov edx, dword [ebx + 4]
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
add dword [ebp - 0x1c], eax
adc dword [ebp - 0x18], edx
mov eax, dword [ecx + 0x18]
mov edx, dword [ecx + 0x1c]
add eax, dword [ebp - 0x1c]
adc edx, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], edx
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
shrd eax, edx, 0x1c
shr edx, 0x1c
push edx
push eax
mov edx, dword [ebp - 0xc]
xor eax, eax
shl edx, 4
or edx, dword [esp + 4]
or eax, dword [esp]
add esp, 8
push edx
push eax
mov eax, dword [ebp - 8]
xor edx, edx
shr eax, 2
push edx
push eax
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
shld edx, eax, 0x1e
shl eax, 0x1e
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov eax, dword [ebp - 8]
xor edx, edx
shr eax, 7
push edx
push eax
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
shld edx, eax, 0x19
shl eax, 0x19
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
xor edx, dword [esp + 4]
xor eax, dword [esp]
add esp, 8
add eax, dword [ebp - 0x1c]
adc edx, dword [ebp - 0x18]
push edx
push eax
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
and eax, dword [ecx + 8]
and edx, dword [ecx + 0xc]
push edx
push eax
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
and edx, dword [ecx + 0x14]
and eax, dword [ecx + 0x10]
xor eax, dword [esp]
xor edx, dword [esp + 4]
add esp, 8
push edx
push eax
mov eax, dword [ecx + 8]
mov edx, dword [ecx + 0xc]
and edx, dword [ecx + 0x14]
and eax, dword [ecx + 0x10]
xor edx, dword [esp + 4]
xor eax, dword [esp]
add esp, 8
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], edx
add ebx, 8
inc esi
sub ecx, 8
cmp esi, 0x50
jl 0x552960
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
add dword [edi], eax
adc dword [edi + 4], edx
mov eax, dword [ecx + 8]
mov edx, dword [ecx + 0xc]
add dword [edi + 8], eax
adc dword [edi + 0xc], edx
mov eax, dword [ecx + 0x10]
mov edx, dword [ecx + 0x14]
add dword [edi + 0x10], eax
adc dword [edi + 0x14], edx
mov eax, dword [ecx + 0x18]
mov edx, dword [ecx + 0x1c]
add dword [edi + 0x18], eax
adc dword [edi + 0x1c], edx
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x10]
add dword [edi + 0x20], eax
adc dword [edi + 0x24], edx
mov eax, dword [ecx + 0x28]
mov edx, dword [ecx + 0x2c]
add dword [edi + 0x28], eax
adc dword [edi + 0x2c], edx
mov eax, dword [ecx + 0x30]
mov edx, dword [ecx + 0x34]
add dword [edi + 0x30], eax
adc dword [edi + 0x34], edx
mov eax, dword [ecx + 0x38]
mov edx, dword [ecx + 0x3c]
add dword [edi + 0x38], eax
adc dword [edi + 0x3c], edx
add dword [ebp - 4], 0x80
mov ecx, dword [ebp + 0x10]
add dword [ebp + 0x10], 0xffffffff
test ecx, ecx
jne 0x552636
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret