Function at 0x18e4b98
Capabilities:
Authenticate hmac

Disassembly:
inc eax
mov dword [ebp + 8], eax
xadd al, al
ror ax, cl
mov eax, edx
shr eax, 0xb
clc
imul eax, edi
stc
clc
cmp esi, eax
jmp 0x17bc8e0
mov dword [ebp - 0xc], eax
jmp 0x10ac776
jmp 0x17a477c
mov dword [ebp - 0x14], ebx
jmp 0x10b3ab1
jae 0x10a4a0a
cmp eax, dword [ebp - 4]
jae 0x10ac6be
movzx ecx, byte [eax]
test bp, 0x2813
test si, bx
shl esi, 8
clc
shl edx, 8
stc
or esi, ecx
inc eax
bt ecx, eax
btc cx, dx
cmovns ecx, ecx
mov dword [ebp + 8], eax
rcl al, cl
test esi, 0x539d7de6
movzx eax, word [ebx + edi*2]
mov ecx, edx
clc
shr ecx, 0xb
jmp 0x17c0d09
add ecx, ecx
sub al, ch
add ah, 0x6a
mov eax, ebx
cmc
test ebx, ebp
and eax, ecx
stc
test esi, ecx
mov dword [ebp - 0x18], ecx
xor cl, bh
lea ecx, [eax + edi]
stc
lea ecx, [ecx + ebx]
bt bx, 0xbb
cmp ebp, edi
sbb bh, 0x1c
mov ebx, dword [ebp - 0xc]
test si, 0x78a6
jmp 0x10b1cfe
jae 0x10ac6be
pop edi
pop esi
mov eax, 3
mov bl, 0x35
jmp 0x17c5649
cmp ecx, dword [ebp - 4]
jmp 0x10ad086
lea eax, [eax + eax + 1]
sub ebx, 1
jmp 0x10a4740
jmp 0x17b6317
jmp 0x113af15
jne 0x18f4b98
mov ecx, dword [ebp - 8]
add ecx, 0x644
mov ebx, 4
test eax, ebp
jmp 0x17c7c93
cmp eax, dword [ebp - 4]
jae 0x10ac6be
movzx ecx, byte [eax]
shl esi, 8
stc
clc
cmp dl, bl
shl edx, 8
cmc
or esi, ecx
dec ecx
inc eax
mov dword [ebp + 8], eax
add al, 0x30
movzx eax, word [edi + 2]
or cl, 0x10
rcr ecx, 0x5c
mov ecx, edx
clc
shr ecx, 0xb
cmc
clc
imul ecx, eax
test ch, 0x11
clc
cmp esi, ecx
jmp 0x10b1d71
cmp esi, ecx
jmp 0x17c5d2e
shl edx, 8
cmp dl, 0xf9
test sp, di
or esi, ecx
inc ch
movsx ecx, ax
inc eax
and cx, dx
stc
mov dword [ebp + 8], eax
movzx eax, word [edi]
mov ecx, edx
shr ecx, 0xb
clc
imul ecx, eax
jmp 0x10ac34c
jb 0x10ac6c0
sub eax, eax
pop edi
bswap si
movsx ebx, si
pop esi
mov bx, si
pop ebx
jmp 0x17a4776
mov ecx, dword [ebp - 0xc]
test edi, ebp
sub edx, eax
clc
sub esi, eax
shl eax, cl
sar ax, 0xaa
bsf eax, eax
mov eax, dword [ebp - 8]
cmp bp, 0x7f76
movzx ecx, word [eax + ecx*2 + 0x180]
cmp edx, 0x1000000
jae 0x17bc182
mov eax, dword [ebp + 8]
cmp sp, 0x44bf
jmp 0x113e65e
jmp 0x17c7caa
jae 0x10ac6be
movzx ebx, byte [ecx]
shl esi, 8
jmp 0x17b7064
mov esp, ebp
pop ebp
jmp 0x179f4e7
jmp 0x10a6991
movzx ecx, word [ebx + ecx*2]
clc
cmc
mov dword [ebp - 0x10], ecx
cmp edx, 0x1000000
jae 0x18f42b4
mov ecx, dword [ebp + 8]
cmc
jmp 0x10a613e
jae 0x17c23f8
mov eax, 8
sal dh, cl
rcl dh, cl
shl ebx, 4
mov edx, ecx
lea ebx, [ebx + edi + 0x104]
jmp 0x17b3822
sub edx, ecx
sub esi, ecx
lea edi, [edi + edi + 1]
adc ecx, edx
or cx, bx
bts ecx, esp
mov ecx, dword [ebp - 0x10]
cmp edi, ecx
jmp 0x10b1ef9
shl esi, 8
cmp di, 0x37fe
stc
shl edx, 8
cmp bx, di
or esi, ecx
movzx ecx, sp
inc eax
shr ecx, 0xd7
mov dword [ebp + 8], eax
and cx, bp
movzx ecx, di
shr ch, cl
mov ecx, edx
clc
cmp ax, 0x6af
shr ecx, 0xb
cmp ah, 0xc
imul ecx, edi
cmp dx, sp
test ecx, eax
cmp esi, ecx
jae 0x17c5022
mov edx, ecx
jmp 0x10b4a4f
jb 0x17c242b
mov eax, dword [ebp - 0x14]
sub eax, ecx
lea edi, [edi + eax]
cmp ecx, ebx
cmp bx, 0x36c3
stc
cmp dword [ebp - 0xc], 4
jmp 0x10b3d28
jae 0x113af0e
cmp ecx, 0x1000000
jmp 0x10b4da3
jae 0x10ac6be
movzx ecx, byte [eax]
test ecx, 0x7e9268b8
cmc
shl esi, 8
stc
test sp, 0x7240
cmp bx, si
shl edx, 8
or esi, ecx
inc cx
jmp 0x17b7472
jne 0x17c7cb7
mov eax, dword [ebp - 0x18]
cmp bx, di
cmp ebp, 0x2e0d04cc
cmp edx, 0x1000000
jmp 0x17a5ce6
add eax, eax
jmp 0x10b1977
jae 0x10b3ab7
cmp edi, 4
jb 0x10b3d40
mov edi, 3
mov bl, 7
ror eax, cl
mov eax, dword [ebp - 8]
movsx ebx, bp
btr bx, 0x1f
shl edi, 7
mov bx, 0x41e8
movsx bx, dl
cmovb ebx, esi
lea ebx, [edi + eax + 0x360]
mov eax, dword [ebp + 8]
mov edi, 1
jmp 0x113904a
jae 0x10b4a34
cmp eax, dword [ebp - 4]
jae 0x10ac6be
movzx ecx, byte [eax]
shl esi, 8
test ebp, 0x2137081
shl edx, 8
stc
test bp, cx
or esi, ecx
xchg cx, cx
cmovae cx, ax
inc eax
seto cl
sal ecx, cl
mov dword [ebp + 8], eax
mov ecx, edx
shr ecx, 0xb
imul ecx, edi
cmp esi, ecx
jmp 0x17bfe44
jmp 0x113af15
jae 0x10a568d
cmp eax, dword [ebp - 4]
jmp 0x10a5687
jmp 0x17b85b8
dec ebx
test di, bx
test edx, 0x5a237995
and ebx, dword [edi + 0x2c]
add ecx, ebx
movzx eax, word [eax + ecx*2]
mov dword [ebp - 0x10], eax
cmp edx, 0x1000000
jmp 0x17ba048
jne 0x11327ba
cmp dword [edi + 0x2c], 0
je 0x17ac83a
mov ecx, dword [edi + 0x24]
cmp cl, cl
jmp 0x17ab3d6
dec ebx
cmp si, si
test esi, edi
clc
mov dword [ebp - 0x14], ebx
cmp bx, si
test sp, bx
cmp edi, 0xe
jae 0x18f4b8c
mov eax, edi
and cl, 0xdd
sbb ecx, edx
and eax, 1
or eax, 2
mov ecx, ebx
test bx, 0x7b05
shl eax, cl
stc
shld cx, si, 0x64
movsx ecx, cx
mov ecx, dword [ebp - 8]
clc
sub eax, edi
jmp 0x17c10ef
lea ebx, [ebx + edi + 4]
mov dword [ebp - 0x14], 0
jmp 0x17a643d
jmp 0x17cb24e
jmp 0x18e3e0d
sub edx, edi
cmp ax, sp
stc
sub esi, edi
stc
jmp 0x10a698d
mov ecx, dword [ebp - 8]
sub di, 0x4ace
bsf di, sp
sbb edi, edx
sub edx, eax
cmc
and edi, ebx
sub esi, eax
mov edi, 0x431a7a3a
bsr edi, esp
mov eax, dword [ebp - 0xc]
or di, cx
bt di, di
ror di, 0xf
movzx edi, word [ecx + eax*2 + 0x198]
cbw
bsr eax, edx
mov eax, dword [ebp + 8]
test edi, esi
mov dword [ebp - 0x18], 3
cmp edx, 0x1000000
jae 0x17b7481
cmp eax, dword [ebp - 4]
jmp 0x10b39ed
sub edx, ecx
cmp bh, 0xff
sub esi, ecx
mov edi, dword [ebp - 8]
cmc
mov dword [ebp - 0xc], 0xc
cmc
jmp 0x113ebf6
jmp 0x17c241e
jae 0x1139a7c
mov edi, dword [ebp - 8]
bt edx, edx
rcl edx, 0x36
mov edx, eax
mov eax, dword [ebp + 8]
stc
cmc
mov dword [ebp - 0xc], 0
stc
test ch, 0xc7
add edi, 0x664
jmp 0x18e34a3
cmp eax, dword [ebp - 4]
jmp 0x179f428
add edi, 0xa68
jmp 0x17b85b8
jae 0x179bc16
mov ecx, 1
jmp 0x10a40a5
jae 0x17a01fb
cmp eax, dword [ebp - 4]
jmp 0x17a01d0
mov ecx, dword [edi + 0x24]
mov ebx, dword [edi + 0x38]
cmp ecx, ebx
jae 0x17b62e3
mov eax, dword [edi + 0x28]
jmp 0x17c28f9
jae 0x17a7f61
mov eax, dword [ebp - 0xc]
adc di, si
mov edi, dword [ebp - 8]
sbb dl, 0x1a
lea eax, [eax + 0xf]
rcl edx, 0x7b
shl eax, 4
sbb dx, 0x5bc9
shr edx, cl
add eax, ebx
add dx, sp
rcl dh, cl
movzx edi, word [edi + eax*2]
not ah
xor dx, bp
mov eax, dword [ebp + 8]
add edx, esp
bts dx, si
mov edx, ecx
cmc
cmp ecx, 0x2bef1f82
cmp ecx, 0x1000000
jmp 0x17c1053
jae 0x10ac6be
movzx edi, byte [eax]
test bl, 0x70
shl esi, 8
cmc
test ch, 0xdc
clc
shl edx, 8
cmp bp, di
or esi, edi
jmp 0x17bc178
ret
mov dword [ebp - 0x10], eax
jmp 0x18e4f2d
jae 0x10ac6be
movzx ecx, byte [eax]
shl esi, 8
test ebx, eax
clc
shl edx, 8
cmp ebp, ebp
or esi, ecx
movzx cx, dh
setb ch
not cl
inc eax
shld cx, sp, 0xf5
test edx, 0x6f05394a
mov ecx, edx
shr ecx, 0xb
imul ecx, dword [ebp - 0x10]
test ecx, edi
cmc
cmp esi, ecx
jmp 0x17bd138
jae 0x10ac6be
movzx edi, byte [eax]
shl esi, 8
cmc
shl edx, 8
cmc
test esi, 0x199a66a2
or esi, edi
inc di
mov di, di
inc eax
sub edi, 0x21162625
shr edx, 1
mov edi, esi
stc
test ax, bp
sub edi, edx
cmp eax, esi
stc
shr edi, 0x1f
jmp 0x17c1097
mov esp, ebp
xchg ebp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xc]
adc edi, edx
test si, si
movzx edi, word [eax + ecx*2]
cmc
cmp edx, 0x1000000
jae 0x10a3074
mov eax, dword [ebp + 8]
stc
cmp eax, dword [ebp - 4]
jae 0x10ac6be
movzx ebx, byte [eax]
shl esi, 8
cmc
shl edx, 8
clc
jmp 0x17a88a3
jae 0x10ac6c0
mov edx, dword [ebp - 4]
cmp ebx, ecx
test bh, 0x5a
cmc
cmp dword [ebp + 8], edx
jmp 0x10ac6b8
movzx edi, word [ecx + edi*2 + 0x1c8]
cmp edx, 0x1000000
jmp 0x10b4a00
mov dword [ebp - 0x10], 8
jmp 0x113b6a6
add eax, 0xe6c
cmp sp, di
stc
cmp ebp, 0x26421771
cmp dword [edi + 0x30], 0
mov dword [ebp - 0xc], eax
jmp 0x11327aa
mov edi, dword [ebp - 0xc]
sub edx, ecx
cmc
stc
sub esi, ecx
not cx
mov ecx, dword [ebp - 8]
movzx edi, word [ecx + edi*2 + 0x1b0]
cmp sp, 0x741d
stc
cmp edx, 0x1000000
jae 0x10b1ed5
cmp eax, dword [ebp - 4]
jmp 0x17b91de
or esi, ebx
jmp 0x10a306a
dec eax
stc
test edi, 0x674a33ec
and eax, dword [edi + 0x2c]
cmp ebp, 0x21d6366
clc
shl eax, cl
test cl, 0xf8
cmp di, 0x363b
stc
add ebx, eax
stc
cmc
imul ebx, ebx, 0x600
cmp di, 0x3ee4
cmc
add dword [ebp - 0xc], ebx
jmp 0x17ac83a
jae 0x10b1e47
mov edx, ecx
test edx, 0x7e9005d8
clc
cmc
add edi, edi
jmp 0x17af151
test ecx, ecx
jne 0x17ab3e1
mov ecx, dword [edi + 0x28]
mov ebx, dword [edi + 0x14]
cbw
cmp dx, 0x3aad
movzx ebx, byte [ebx + ecx - 1]
sal ah, 0x49
seta ch
mov eax, dword [edi]
bsr ecx, eax
mov ecx, 8
test ax, 0x6fd8
cmp cl, cl
clc
sub cl, al
and ah, 0x53
bswap ax
shr ebx, cl
shl al, cl
sar cl, 0x20
mov ecx, dword [edi + 4]
test eax, esp
mov eax, 1
stc
shl eax, cl
mov ecx, dword [edi]
jmp 0x17a9ef7
lea edi, [edi + edi + 1]
and dword [ebp - 8], eax
cmp edi, 0x100
jae 0x17bf080
mov ecx, dword [ebp - 0x18]
jmp 0x10a84ee
cmp dword [edi + 0x34], 7
jmp 0x113edf4
jmp 0x10b1e57
shl esi, 8
shl edx, 8
test esi, esp
or esi, ecx
inc eax
mov dword [ebp + 8], eax
bts ax, cx
xadd eax, eax
mov eax, edx
shr eax, 0xb
imul eax, dword [ebp - 0x10]
cmp esi, eax
jmp 0x17bf6cd
imul ecx, dword [ebp - 0x10]
stc
test cx, si
cmp esi, ecx
jae 0x17c1fba
mov edx, ecx
cmp dh, dl
clc
test si, 0x377a
add edi, edi
jmp 0x18e78d4
inc edi
mov dword [ebp + 8], edi
and edi, 0x2e821df5
shr di, 0x15
bswap edi
mov edi, edx
test cx, 0x6ba1
shr edi, 0xb
imul edi, ecx
cmp esi, edi
jmp 0x18e3e31
mov dword [ebp - 0x14], eax
jmp 0x179f72f
xor eax, eax
cmc
stc
test cx, si
mov edi, dword [edi + 0x14]
clc
sub edi, ebx
movsx bx, al
add edi, ecx
movzx ecx, byte [edi + eax]
mov dword [ebp - 8], 0x100
xor bl, 0x10
mov edi, 1
rcl al, 0x23
setl bh
and bl, ch
mov edi, edi
cmc
adc bh, 0x8d
mov ebx, dword [ebp - 8]
btr eax, ebx
jmp 0x10a4bbc
shl edx, 8
or esi, ebx
jmp 0x18f42a5
inc eax
xchg ch, cl
bt cx, 0x48
sar cl, cl
mov dword [ebp + 8], eax
not ch
mov ecx, edx
test dx, si
cmc
shr ecx, 0xb
clc
stc
imul ecx, edi
cmp esp, 0x4eab421a
clc
cmp esi, ecx
jmp 0x179ed60
jae 0x10ac417
cmp eax, dword [ebp - 4]
jmp 0x17bad7b
cmp edx, 0x1000000
jmp 0x17b80f5
jae 0x10ac6be
movzx ecx, byte [eax]
cmp si, dx
jmp 0x10b1eb2
jb 0x18e3e0d
sub edi, 0x40
stc
mov dword [ebp + 8], eax
cmp edi, 4
jb 0x10b3ab7
mov ebx, edi
cmc
shr ebx, 1
jmp 0x113449f
jae 0x17b04d4
mov eax, dword [ebp + 8]
cmp eax, dword [ebp - 4]
jmp 0x17c7c7f
jae 0x10ac6be
movzx ecx, byte [eax]
cmc
test bp, 0x58f8
shl esi, 8
jmp 0x10ac3ff
jae 0x10ac6be
shl ecx, 8
clc
movsx edx, dx
adc dh, 0x9f
mov edx, ecx
adc cx, si
mov cl, cl
bsf ecx, esi
movzx ecx, byte [eax]
cmp ax, bp
stc
shl esi, 8
stc
cmp esp, ecx
clc
or esi, ecx
inc eax
mov dword [ebp + 8], eax
mov ecx, edx
clc
cmp edx, ebx
shr ecx, 0xb
clc
imul ecx, edi
test ebp, 0xdb175dd
cmp esi, ecx
jmp 0x10b2902
inc eax
cmc
mov dword [ebp + 8], eax
bt ax, 0xf7
mov eax, edx
stc
shr eax, 0xb
stc
imul eax, ecx
cmp esi, eax
jmp 0x113bc52
jae 0x17bf066
mov edx, eax
jmp 0x17c1062
jae 0x17cb240
mov edx, ecx
add edi, edi
jmp 0x1138a8e
sub edx, eax
clc
sub esi, eax
lea ecx, [ecx + ecx + 1]
test di, 0x392
cmp ecx, 0x100
jb 0x17a477c
mov eax, 1
jmp 0x10b3ac3
jae 0x10ac723
mov edx, eax
sub ax, bp
btr ax, 0xe
mov eax, dword [ebp - 8]
jmp 0x17a7e98
jae 0x113af0e
mov edx, ecx
jmp 0x10a8925
imul ecx, eax
cmc
cmp esi, ecx
jmp 0x17aa493
jae 0x17bbd65
cmp eax, dword [ebp - 4]
jmp 0x17bbd37
add ecx, ecx
jmp 0x17bf074
dec edi
cmp bx, si
and edi, edx
cmp ecx, esp
test si, bp
sub esi, edi
cmp edi, 0x29a2112b
sub ebx, 1
jmp 0x10a8f54
lea eax, [ecx + eax*2 + 0x55e]
jmp 0x10a3e90
sub edx, ecx
sub esi, ecx
jmp 0x17ab7c7
sub edx, ecx
sub esi, ecx
sbb eax, 0xd361b1a
btc eax, 0x31
lea ebx, [edi + 0x204]
stc
ror di, 0xe9
mov dword [ebp - 0x14], 0x10
mov dword [ebp - 0x10], 0x100
mov edi, 1
shr ah, cl
sar ax, cl
rcr al, 0x7a
mov eax, dword [ebp + 8]
test esp, edi
cmp edx, 0x1000000
jmp 0x10a49d0
jmp 0x17b62ea
mov edi, dword [ebp - 0xc]
clc
sub edx, ecx
stc
clc
test ah, 0x86
sub esi, ecx
mov ecx, dword [ebp - 8]
test bl, 0xb4
jmp 0x17a5fd1
pop ebx
jmp 0x10b0de6
jae 0x18e5d8e
shl ebx, 4
mov edx, ecx
jmp 0x113829d
jae 0x17a348b
cmp eax, ecx
jmp 0x17a3465
jae 0x10ac6be
movzx ecx, byte [eax]
jmp 0x17b04bf
mov dword [ebp + 8], eax
not ax
clc
rcl ah, cl
mov dword [ebp - 0xc], ecx
mov dword [ebp - 0x14], ebx
shr ax, 0xa
rcl cx, 0xbd
mov eax, 1
mov edi, edi
btr ecx, 0xcb
sar ecx, cl
mov ecx, dword [ebp - 0xc]
movzx ecx, word [ecx + eax*2]
test edi, 0x589c26e2
cmp eax, 0x576f613b
cmp edx, 0x1000000
jae 0x17b3792
mov edi, dword [ebp - 4]
cmp bp, 0x2cc1
test ecx, 0xca16276
cmp dword [ebp + 8], edi
jae 0x10ac6be
mov edi, dword [ebp + 8]
sal ebx, cl
movzx ebx, byte [edi]
test bx, di
shl esi, 8
cmc
stc
or esi, ebx
cmp ax, 0x4918
mov ebx, dword [ebp - 0x14]
cmp bx, 0x31dd
stc
test dl, 0x57
shl edx, 8
jmp 0x17b3782
sub edx, ecx
cmp cx, sp
sub esi, ecx
cmc
stc
lea edi, [edi + edi + 1]
clc
cmp edi, 0x40
jmp 0x17b96eb
mov dword [ebp - 0x18], 2
jmp 0x113266a
movzx ecx, word [ebx + edi*2]
mov dword [ebp - 0x10], ecx
stc
cmp ch, al
cmp edx, 0x1000000
jmp 0x1144bb7
jae 0x11393a5
mov edx, edi
test ch, 0x11
jmp 0x10b3c7e
jmp 0x17ab7cb
push ebp
clc
btc edx, 0xd6
mov ebp, esp
lea esp, [esp - 0x18]
shr dh, 0xb
push ebx
cmovbe bx, cx
add edx, 0x55ea7cf2
push esi
sbb esi, ebp
rcl esi, 0x84
shl bx, cl
push edi
mov edi, ecx
mov ecx, dword [ebp + 8]
mov edx, dword [edi + 0x1c]
bt esi, ebx
mov esi, dword [edi + 0x20]
or bh, 0x45
lea ecx, [ecx + eax]
mov eax, dword [edi + 0x10]
or bx, 0x62aa
mov ebx, ecx
mov dword [ebp - 4], ecx
cmp bh, dh
or cx, bx
mov ecx, dword [edi + 0x34]
mov bx, bx
adc ebx, 0x22894aad
mov dword [ebp - 0xc], ecx
rcl ebx, 0xbd
clc
mov ecx, dword [edi + 8]
mov ebx, 1
test sp, sp
clc
shl ebx, cl
rcr ch, 0xfd
mov ecx, dword [ebp - 0xc]
shl ecx, 4
mov dword [ebp - 8], eax
jmp 0x11326ed
jmp 0x17c241e
sub edx, ecx
cmp ah, 0xc7
sub esi, ecx
cmp edx, 0x1000000
jae 0x10aa269
mov eax, dword [ebp + 8]
clc
jmp 0x10aa249
not eax
jmp 0x18e4aee
inc ecx
test ecx, 0x27595630
mov dword [ebp + 8], ecx
sets ch
test esi, esp
mov ecx, edx
shr ecx, 0xb
jmp 0x17b05a5
mov ecx, dword [ebp - 4]
test esp, eax
cmp ch, 0x81
sub ebx, 4
stc
cmp edx, 0x1000000
jmp 0x17c61d3