Function at 0x454d50
Capabilities:
Authenticate hmac

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x20c
mov edi, dword [esp + 0x220]
mov ebp, dword [esp + 0x22c]
mov esi, dword [esp + 0x228]
mov eax, dword [esp + 0x224]
mov dword [esp + 8], eax
lea ebx, [esp + 0x10c]
mov dword [esp], ebx
mov dword [esp + 4], pe_nt_image_headers32
call fcn.00401e10
mov dword [esp + 8], esi
lea esi, [esp + 0x8c]
mov dword [esp], esi
mov dword [esp + 4], pe_nt_image_headers32
call fcn.00401e10
mov dword [esp + 8], ebp
lea ebp, [esp + 0xc]
mov dword [esp], ebp
mov dword [esp + 4], pe_nt_image_headers32
call fcn.00401e10
mov dword [esp], ebx
mov dword [esp + 4], 0x80cf4c
call fcn.007c5970
mov ecx, eax
and ecx, 1
inc ecx
xor ecx, eax
sete cl
movzx ecx, cl
cmp eax, ecx
je 0x454e89
mov dword [esp + 4], 0x7d5559
mov dword [esp], 0x80cf4c
call fcn.007c5970
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sete cl
movzx ecx, cl
cmp eax, ecx
jne 0x454efa
mov eax, 0x36
add al, 0x47
movzx eax, al
cmp eax, 0x68
je 0x454e30
cmp eax, 0x75
je 0x454e4a
cmp eax, 0x7d
jne 0x454e75
mov dword [esp], ebx
mov dword [esp + 4], str.d41d8cd98f00b204e9800998ecf8427e
call fcn.007c5970
mov ecx, eax
and ecx, 1
inc ecx
xor ecx, eax
jmp 0x454e65
mov dword [esp], ebx
mov dword [esp + 4], str.d41d8cd98f00b204e9800998ecf8427e
call fcn.007c5970
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sete cl
movzx ecx, cl
cmp eax, ecx
jne 0x454efa
jmp 0x454e89
mov dword [esp], ebx
mov dword [esp + 4], str.d41d8cd98f00b204e9800998ecf8427e
call fcn.007c5970
test eax, eax
jne 0x454efa
mov dword [esp + 4], ebp
mov dword [esp], esi
call fcn.007c58b0
test eax, eax
jne 0x454f80
mov dword [esp + 8], esi
lea esi, [esp + 0x18c]
mov dword [esp], esi
mov dword [esp + 4], pe_nt_image_headers32
call fcn.00401e10
mov dword [esp], esi
mov dword [esp + 4], str.d41d8cd98f00b204e9800998ecf8427e
call fcn.007c5970
test eax, eax
jne 0x454fb3
mov byte [esp + 0x18c], 0
mov dword [esp + 8], esi
mov dword [esp + 4], pe_nt_image_headers32
mov dword [esp], 0x80cf4c
call fcn.004959f0
mov esi, 1
jmp 0x454fa6
mov ebp, 0xcb
mov dword [esp], ebx
mov dword [esp + 4], 0x80cf4c
call fcn.007c5970
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sete cl
movzx ecx, cl
cmp eax, ecx
setne al
movzx eax, al
lea esi, [eax + eax*2]
xor ebx, ebx
test edi, edi
jne 0x454f6a
mov eax, 3
sub eax, edi
xor eax, edi
jne 0x454fa6
jmp 0x454f6a
and ebp, 0xffffffa1
add ebp, 0x14
mov eax, ebx
or eax, 2
mov ecx, ebx
xor ecx, 2
add ecx, eax
setne al
movzx eax, al
add ebx, eax
mov dword [esp + 4], edi
mov dword [esp], str.Invalid_admin_password_specified__s_n
call fcn.004414c0
mov eax, ebx
imul eax, eax
and eax, 3
cmp eax, 2
sbb eax, eax
and eax, 1
cmp ebx, eax
jb 0x454f40
jmp 0x454fa6
mov esi, 2
test edi, edi
jne 0x454f96
mov eax, edi
and eax, 1
xor eax, edi
not eax
test eax, eax
jne 0x454fa6
mov dword [esp + 4], edi
mov dword [esp], str.Mismatching_admin_passwords_specified__s_n
call fcn.004414c0
mov eax, esi
add esp, 0x20c
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, 0xf0
lea eax, [ecx + 9]
xor ecx, eax
add cl, 0x5c
xor eax, 0x62
movzx ecx, cl
cmp ecx, 0x45
je 0x455017
cmp ecx, 0x4e
je 0x454ff8
cmp ecx, 0x65
jne 0x45503e
movzx ecx, byte [esp + 0x18c]
mov edx, ecx
imul edx, edx
and edx, 3
cmp edx, 3
sete dl
movzx edx, dl
cmp ecx, edx
je 0x454ed8
jmp 0x455056
cmp byte [esp + 0x18c], 0
je 0x454ed8
xor ecx, ecx
test cl, cl
jne 0x454ed8
add eax, 0xfffffff2
xor al, 0x8c
jmp 0x455058
movzx ecx, byte [esp + 0x18c]
mov edx, ecx
imul edx, edx
and edx, 3
cmp edx, 2
sete dl
movzx edx, dl
cmp ecx, edx
je 0x454ed8
xor al, 0xde
add al, 0xbc
jmp 0x455058
cmp byte [esp + 0x18c], 0
je 0x454ed8
xor ecx, ecx
test cl, cl
jne 0x454ed8
add al, 0x66
movzx eax, al
cmp eax, 1
jne 0x455085
mov dword [esp], esi
call fcn.007c3e70
cmp eax, 0x20
je 0x454ed8
imul eax, eax
and eax, 3
cmp eax, 3
jne 0x454ef0
jmp 0x454ed8
mov dword [esp], esi
call fcn.007c3e70
cmp eax, 0x20
jne 0x454ef0
mov ecx, eax
or ecx, 2
xor eax, 2
add eax, ecx
jne 0x454ed8
jmp 0x454ef0