Function at 0x43b420
Capabilities:
Authenticate hmac

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x60
call fcn.0041d9f0
sub esp, 8
mov esi, esp
jmp 0x43b435
push eax
mov dword [ebp - 0x64], esp
push eax
mov dword [ebp - 0x10], esp
push eax
mov dword [ebp - 0x68], esp
sub esp, 8
mov dword [ebp - 0x14], esp
push eax
mov dword [ebp - 0x6c], esp
mov al, byte [ebp - 0x3c]
mov byte [ebp - 0x44], al
mov byte [ebp - 0x60], 0xc8
mov byte [ebp - 0x5f], 0xc9
mov byte [ebp - 0x5e], 0xce
mov byte [ebp - 0x5d], 0x8f
mov eax, 4
mov byte [ebp + eax - 0x60], 0
add eax, 1
cmp eax, 5
jne 0x43b466
xor eax, eax
cmp eax, 5
jae 0x43b4ab
movzx edx, byte [ebp + eax - 0x60]
mov ecx, 0x2d
sub ecx, eax
mov ebx, 0x2d
sub ebx, eax
and ecx, ebx
or ecx, edx
xor ecx, 0xffffffff
mov ebx, 0x2d
sub ebx, eax
and ebx, edx
or ebx, ecx
add bl, 0xe6
mov byte [ebp + eax - 0x60], bl
add eax, 1
jmp 0x43b475
mov al, byte [ebp - 0x30]
mov byte [ebp - 0x40], al
mov byte [ebp - 0x38], 0xc8
mov byte [ebp - 0x37], 0xc9
mov byte [ebp - 0x36], 0xce
mov byte [ebp - 0x35], 0x8f
mov eax, 4
mov byte [ebp + eax - 0x38], 0
add eax, 1
cmp eax, 5
jne 0x43b4c6
xor eax, eax
cmp eax, 5
jae 0x43b50b
movzx edx, byte [ebp + eax - 0x38]
mov ecx, 0x2d
sub ecx, eax
mov ebx, 0x2d
sub ebx, eax
and ecx, ebx
or ecx, edx
xor ecx, 0xffffffff
mov ebx, 0x2d
sub ebx, eax
and ebx, edx
or ebx, ecx
add bl, 0xe6
mov byte [ebp + eax - 0x38], bl
add eax, 1
jmp 0x43b4d5
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cpuid
jmp 0x43b514
mov al, byte [ebp - 0x24]
mov byte [ebp - 0x48], al
mov byte [ebp - 0x2c], 0x1a
mov byte [ebp - 0x2b], 0
mov byte [ebp - 0x2a], 3
mov byte [ebp - 0x29], 7
mov eax, 4
mov byte [ebp + eax - 0x2c], 0
add eax, 1
cmp eax, 8
jne 0x43b52f
xor eax, eax
cmp eax, 8
jae 0x43b56b
movzx edi, byte [ebp + eax - 0x2c]
mov edx, 0x52
sub edx, eax
or edx, edi
mov ebx, 0x52
sub ebx, eax
and ebx, edi
xor edx, 0xffffffff
or ebx, edx
add bl, 0x9f
mov byte [ebp + eax - 0x2c], bl
add eax, 1
jmp 0x43b53e
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
je 0x43b739
mov al, byte [ebp - 0x18]
mov byte [ebp - 0x4c], al
mov byte [ebp - 0x20], 0xa1
mov byte [ebp - 0x1f], 0xa2
mov byte [ebp - 0x1e], 0xde
mov byte [ebp - 0x1d], 0xac
mov eax, 4
mov byte [ebp + eax - 0x20], 0
add eax, 1
cmp eax, 5
jne 0x43b591
xor eax, eax
cmp eax, 5
jae 0x43b5d4
movzx ebx, byte [ebp + eax - 0x20]
mov edi, eax
shl edi, 1
and edi, 0x5f10112e
mov edx, eax
xor edx, 0x2f880897
add edx, edi
mov edi, edx
and edi, ebx
shl edi, 1
add edx, ebx
sub edx, edi
add dl, 0xd
mov byte [ebp + eax - 0x20], dl
add eax, 1
jmp 0x43b5a0
cmp ecx, dword [ebp - 0x20]
je 0x43b739
mov eax, dword [ebp - 0x64]
mov al, byte [eax]
mov byte [ebp - 0x50], al
mov byte [esi], 0xb6
mov byte [esi + 1], 0x44
mov byte [esi + 2], 0x5c
mov byte [esi + 3], 0x62
mov eax, 4
mov byte [esi + eax], 0
add eax, 1
cmp eax, 5
jne 0x43b5f9
xor eax, eax
cmp eax, 5
jae 0x43b631
mov bl, byte [esi + eax]
mov edx, eax
xor edx, 0x49
mov edi, eax
or edi, 0x36
and edi, edx
shl edi, 1
mov edx, eax
xor edx, 0x36
add edx, edi
xor dl, bl
add dl, 0xf2
mov byte [esi + eax], dl
add eax, 1
jmp 0x43b607
cmp ecx, dword [esi]
je 0x43b739
mov eax, dword [ebp - 0x68]
mov al, byte [eax]
mov byte [ebp - 0x54], al
mov eax, dword [ebp - 0x10]
mov byte [eax], 0x7a
mov byte [eax + 1], 5
mov byte [eax + 2], 0x57
mov byte [eax + 3], 0x59
xor eax, eax
cmp eax, 4
jae 0x43b6a3
mov edx, dword [ebp - 0x10]
movzx ebx, byte [edx + eax]
mov esi, 0x8862dd4e
sub esi, eax
or esi, ebx
mov edx, 0x4e
sub edx, eax
mov edi, 0x4e
sub edi, eax
or edx, edi
and edx, ebx
xor esi, 0xffffffff
or edx, esi
mov ebx, edx
and ebx, 1
mov esi, edx
and esi, 1
xor edx, 1
add edx, 0x8a
or esi, edx
add ebx, esi
mov edx, dword [ebp - 0x10]
mov byte [edx + eax], bl
add eax, 1
jmp 0x43b655
mov eax, dword [ebp - 0x10]
cmp ecx, dword [eax]
je 0x43b739
mov eax, dword [ebp - 0x6c]
mov al, byte [eax]
mov byte [ebp - 0x58], al
mov esi, dword [ebp - 0x14]
mov byte [esi], 0xd
mov byte [esi + 1], 0xc
mov byte [esi + 2], 0xfa
mov byte [esi + 3], 0xe6
mov eax, 4
mov byte [esi + eax], 0
add eax, 1
cmp eax, 7
jne 0x43b6cd
xor eax, eax
cmp eax, 7
jae 0x43b731
mov edx, dword [ebp - 0x14]
movzx esi, byte [edx + eax]
mov edi, eax
add edi, 1
mov edx, eax
xor edx, 0xffffffff
or edx, 0x7fae6170
add edx, edi
mov edi, eax
or edi, 0x7fae6170
add edx, edi
mov edi, edx
and edi, esi
xor esi, 0xffffffff
mov ebx, edx
shl ebx, 1
xor ebx, 0xffffffff
add edx, ebx
and edx, esi
xor edi, 0xffffffff
mov esi, edx
shl esi, 1
xor esi, 0xffffffff
add edx, esi
mov esi, dword [ebp - 0x14]
and edx, edi
add dl, 0xd0
mov byte [esi + eax], dl
add eax, 1
jmp 0x43b6db
mov eax, dword [esi]
cmp ecx, eax
je 0x43b73b
jmp 0x43b73f
jmp 0x43b73b
mov al, 1
jmp 0x43b743
xor eax, eax
jmp 0x43b743
and al, 1
movzx eax, al
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret