Function at 0x45ded6
Capabilities:
Authenticate hmac
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov eax, dword [ebp + 8]
mov ebx, eax
push ebx
push ecx
ror bl, cl
push esi
sbb si, 0x5f4b
push edx
shr dl, cl
dec bx
sub ebx, 0x73f01b3
sub cx, 0x1cd9
sub ecx, ebx
push eax
mov ax, dx
xchg bh, dh
push edi
xor di, 0x2b80
xchg ah, dh
or ecx, edx
adc dh, bh
sbb cl, 0x57
rol esi, cl
test edi, 0x29d31ea2
test bx, 0x3c72
not bh
xor edx, edx
or di, 0x7c86
mov esi, 0x6a427f37
and bl, 0x26
cmp ebx, eax
shr esi, 3
inc ax
add dx, 0x77a8
and eax, 0x1bb96277
add dh, 0x5c
sub dx, 0x781b
nop
ror si, cl
test bh, dh
ror esi, 6
xchg ebx, ecx
sbb edx, 0x40b0f4ab
or si, bx
and dh, cl
xor esi, edx
xchg edx, eax
add si, 0x4cc3
xor ah, 0x1d
adc edi, 0x6f61ccd8
or ebx, eax
or ch, bl
ror al, cl
rol si, 6
not ch
inc ecx
xchg al, dh
adc eax, eax
nop
rol ax, cl
nop
xor bh, ah
add bh, 5
sub ah, dh
mov al, bl
cmp ax, di
dec edi
ror ch, cl
rol bh, 7
test edi, 0x562d3e03
and dx, cx
xchg ah, cl
test bh, ch
rol ecx, 4
add ax, si
nop
mov di, ax
add ebx, eax
sbb edi, 0xd714d5
inc di
nop
rol dx, cl
shl si, cl
and di, 0x3a78
or bh, 0x1a
sbb di, 0x743b
or eax, 0x76a3e8c2
dec al
test edx, 0x1dcce5b7
inc esi
sub edx, 0x4b45edb2
mov ebx, 0x452286cb
ror eax, cl
dec bx
rol dl, 2
and bx, 0x596e
adc bh, 0x2a
sbb eax, eax
not ch
shl al, 4
and bl, 0x32
mov ax, dx
cmp esi, edx
mov ecx, edx
and si, 0x6a61
xchg dh, bl
rol di, cl
xchg ch, dl
pop edi
or edx, edx
rol ch, cl
dec edx
or cx, 0x467
xor bh, 0x26
cmp dx, 0x38ec
sbb bh, 0xf
xor dl, bh
xchg dh, ah
xor ecx, ecx
shl ch, cl
push edi
rol edi, 7
nop
add di, 0x4340
nop
and dl, al
rol edx, cl
dec edi
mov esi, esi
rol ax, 5
or ch, 0x32
sbb cl, 0x5d
nop
xchg bl, dh
mov bl, 0x7f
not edx
cmp dl, ah
inc ebx
shl cx, cl
adc edi, 0x59c90817
sbb dx, 0x53ea
cmp di, 0x5ce5
mov cl, 0
sbb bl, 0x7b
rol edx, cl
not ebx
or edi, 0x601c8fc8
stc
stc
dec di
cmp dx, di
xor bl, dh
stc
test di, dx
not bl
shr cx, 2
mov edx, 0x31e41400
rol dx, 1
shr ebx, 6
ror edx, cl
mov cx, 0x7fb9
stc
cmp cl, bh
dec dh
cmp eax, edx
rol ch, cl
add si, ax
cmp ah, 0x27
xor esi, edx
add ecx, eax
nop
shr bx, cl
xchg di, bx
add dx, 0x7eb6
rol dh, 5
adc cl, 1
shl ebx, cl
add bl, cl
inc cl
inc bh
or ecx, edx
not ah
nop
ror bx, cl
or dx, 0x36c
pop edi
pop eax
pop edx
pop esi
pop ecx
pop ebx
call fcn.0045f876
push edx
not edx
push esi
push edi
adc esi, edi
push ebx
or bl, bl
push eax
adc ah, 2
push ecx
cmp edx, ecx
xor edi, 0x66c69ad2
not dx
dec esi
xchg ecx, edx
shr dh, 3
shl bh, 5
cmp bl, dl
mov edi, 0x729dc43b
add ax, 0x4a66
cmp bl, ch
rol ch, 1
or edx, 0x4cde03cc
xor ecx, edx
sbb dl, bh
stc
test ebx, 0x5cfe822f
nop
xchg dl, bh
stc
nop
nop
dec edx
rol al, 1
sub edi, 0x22e152e2
not ax
shr ax, cl
shr ch, 5
and dh, ch
ror esi, 6
sbb edi, 0x630519ce
sbb bx, di
stc
test edx, 0x125c33e2
not cx
ror edi, 5
stc
stc
inc di
sub eax, ecx
ror bl, cl
shl bx, cl
shl dh, cl
dec dx
rol di, cl
sbb edx, 0x3c1b57d0
not ah
shr ax, 2
not edx
stc
mov edx, eax
rol cx, 3
ror bl, 3
xchg esi, esi
shr bx, cl
or di, bx
not edx
rol dl, cl
sub esi, 0x6db128e5
stc
adc cl, ah
sbb ecx, 0xb71a25c
test si, 0x2bb9
rol edx, 1
sub bh, ah
rol dl, cl
shl dx, 2
and ebx, edi
test dx, ax
stc
cmp di, ax
cmp al, dl
shr si, cl
dec si
not ax
stc
and bx, bx
shr si, 7
xor bl, 0x7f
mov cl, 0x5b
add esi, 0x769aabd8
nop
mov si, si
sbb edi, 0x5d96a40b
sub ax, si
sbb ebx, 0x122ed39
sbb al, bh
dec dx
shr di, cl
add bh, bh
and al, bh
rol di, cl
nop
sbb dh, bh
xchg esi, ecx
inc ecx
pop ecx
nop
push ecx
xchg al, cl
stc
cmp di, 0x6c43
shr edx, 7
and al, 0x66
xchg edx, ebx
or edx, ecx
mov bh, 0x34
rol al, cl
and edx, ecx
shr dl, cl
sub eax, 0x30d4527b
sub ch, dl
mov dx, 0x583d
ror dx, 6
shr bx, cl
shr bx, cl
dec edi
test di, dx
xchg esi, ebx
sbb di, dx
xor esi, 0x7b61e4e5
mov ax, ax
adc ax, bx
sub cl, al
or esi, eax
xchg ebx, edx
cmp cl, 0x33
add eax, edx
cmp esi, edx
test ebx, ecx
rol ax, cl
mov eax, 0x21eda3fe
xchg bx, ax
dec al
or ah, cl
nop
xchg bl, bh
shl ax, cl
and di, 0x220b
xchg edi, ebx
rol ebx, cl
inc eax
shl eax, cl
shr bx, cl
shr ebx, cl
add cl, cl
mov dh, 0x68
shr ebx, cl
mov cx, ax
shr di, cl
cmp cl, 0x45
xor ebx, 0x24003e2d
add ebx, 0x6be9531a
and edx, 0x798f024d
or dx, ax
ror ebx, cl
xchg esi, ebx
shl ch, cl
adc si, 0x5d7f
test eax, edi
adc eax, 0x18073d80
ror ch, cl
shr al, 4
shr dh, 5
adc ah, 0x7a
dec dl
test si, 0x7d93
ror esi, 8
shl edi, cl
test ecx, 0x6d7a17c
cmp esi, 0x27af0302
shl edi, cl
rol ebx, cl
ror ax, 3
xchg bl, dh
add di, 0x1212
shr al, 8
cmp cx, di
dec ebx
inc si
xor cx, 0x48aa
dec bx
sub dl, cl
stc
ror dl, 1
shl ax, cl
cmp di, 0xcb6
nop
add ecx, 0x5d371c91
xor di, 0x2a23
inc al
sbb dh, 0x34
add edi, edi
sub dx, 0x38a7
adc di, si
mov dx, si
adc dx, 0x180a
inc ebx
pop ecx
nop
push ecx
sub bl, ch
inc al
mov edx, 0x4b96a942
mov eax, 0x3d078d58
sbb bx, 0x6a3d
rol edx, cl
not esi
stc
inc eax
sbb cl, 0x7e
or dh, 0x60
rol bx, cl
stc
mov al, ah
sbb dl, dl
ror ax, 7
sub edi, ebx
shl bh, 2
mov ebx, 0x3f116e5b
stc
shl di, 4
and bl, 0x7a
and ch, dh
inc ax
add ax, 0x3e0
rol esi, 2
test esi, eax
nop
mov ch, ch
pop ecx
pop eax
pop ebx
pop edi
pop esi
pop edx
stc
push eax
cmp eax, 0xb586e9e
xor eax, 0x35926701
nop
push ecx
rol eax, cl
push edi
mov di, cx
push ebx
push edx
adc bl, dh
mov dl, dh
shr cx, 4
or ch, 0x45
nop
test dx, 0x56
stc
ror cl, cl
sbb bl, ah
xor eax, 0x37e2dd2e
sub cx, 0x2256
sbb ah, 0x4d
pop edx
pop ebx
pop edi
pop ecx
pop eax
jns 0x45e3ba
call fcn.0045fb8a
call fcn.0045ff23
sub ebx, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
lea edx, [eax + ecx]
push edx
xor dl, 0x76
push edi
or edi, 0x1099895
push esi
or si, si
push eax
add ah, dl
push ebx
xchg bl, ah
stc
xor ebx, eax
and edi, 0x55586534
shr bx, 4
inc bx
push ecx
shl ebx, cl
stc
nop
rol si, 1
shl dx, cl
sbb edx, 0x36beb33
inc ecx
shr ebx, cl
xor si, 0x4138
cmp edi, 0x637da27c
sbb ebx, eax
sub ax, dx
and bh, 0x12
add eax, ebx
cmp ecx, 0x1ab4ce7a
nop
and ch, dl
and si, 0x74b4
xchg ebx, esi
and edx, 0xb37ecd5
sub ax, 0x539
sub ebx, 0x4c410b5d
not ch
inc edx
shl dl, 8
and edx, esi
and bh, 6
sub dx, si
sbb eax, eax
dec di
xor bh, ah
not ecx
sub si, 0x536b
nop
rol ebx, 1
or esi, edx
sub ch, ch
mov edi, ecx
cmp edx, eax
shl edx, cl
shl dh, 8
xor edx, 0x3c0e1679
cmp si, 0x5de4
ror cl, cl
or ah, bh
shl bx, 4
and esi, eax
inc esi
sbb cx, 0x336b
nop
nop
mov esi, eax
not dl
inc cx
sbb di, si
mov bx, 0x69a
xchg edi, ecx
cmp edx, 0x997ec83
shl dl, 8
ror al, cl
rol dx, 6
shr dl, 2
ror esi, 3
inc dx
mov cl, dh
not si
add eax, 0x204afd47
shl bh, cl
cmp ecx, ecx
cmp si, 0x4e1e
rol cl, cl
ror ebx, 4
shr di, cl
stc
sub edi, eax
not si
shl eax, 6
sbb ebx, 0x2da4908e
dec cl
adc cx, 0xca
and cl, cl
stc
xchg dx, si
test ax, cx
cmp dh, 0x79
and dh, 0x14
rol ah, 1
sbb cx, bx
dec edi
add cl, 0x12
pop ecx
ror dl, 5
stc
push ecx
shl edi, cl
not ecx
or bx, 0x63a2
rol bh, 4
dec al
rol ebx, cl
sub dx, 0x2221
test bl, ch
or si, 0x7b1c
and bh, 0x11
inc eax
or edx, edi
dec bl
xchg ah, dl
mov si, 0x3d6
test bh, bl
cmp bx, 0x5596
cmp ch, ch
rol cx, cl
or edi, 0x75c3f6a6
cmp ax, 0x2d7c
and bx, 0x79d0
and al, 0x2f
or dl, al
test bx, 0x18be
stc
rol esi, cl
shl ch, 5
sbb cx, ax
adc ecx, 0x58b97901
test edx, edx
or cx, 0x3eed
shl al, cl
nop
not si
stc
xchg bx, di
shr bx, 7
xor edi, 0x6d40f0ca
test esi, 0x1a7f00eb
add al, ah
mov cx, 0x13e3
or si, 0x3bbf
add ah, 0x5c
inc bx
or eax, 0x4de96b38
or ah, 0x71
and ax, ax
sub ax, 0x5998
ror ecx, cl
adc ax, 0x4e28
adc cl, 0x2e
adc dx, ax
adc bx, 0x4c32
sub esi, edx
ror ax, cl
inc cx
xor ax, 0x6ec4
add ecx, ebx
cmp dh, 0xa
xor bl, ch
test bh, cl
nop
shr eax, cl
sub bl, al
or esi, 0x31f33955
adc esi, 0x78e52f19
not al
ror dl, cl
shl al, 2
dec di
shr ebx, 3
mov ax, 0x734f
stc
inc di
inc ax
nop
pop ecx
pop ebx
pop eax
pop esi
pop edi
pop edx
push edx
sbb edx, 0x24754e5c
push eax
sbb eax, 0x2839c65c
push esi
and si, 0x3a89
push ecx
and cx, 0x36bd
shr esi, cl
ror dx, 1
sub al, cl
sbb dx, ax
rol dh, cl
add eax, 0x573d91a7
stc
xchg dx, si
sbb ecx, 0x2a39f4d3
xchg esi, eax
sbb eax, eax
push ebx
ror bh, cl
shl ch, 1
shr bl, 8
sub cx, ax
sbb cx, cx
xchg bh, bl
dec dl
adc bl, 0x24
test ecx, 0x65102b2c
inc bl
or eax, esi
ror ebx, cl
or esi, ecx
mov ecx, 0xed965da
push edi
sub edi, 0x23f3aa22
xor al, dl
add esi, esi
cmp cl, ch
adc dh, 6
rol bx, cl
and bx, dx
stc
nop
sbb al, 0x75
dec cl
or cx, 0x3ca9
cmp bx, di
or dh, 0x62
not edx
xor bh, 0x7f
dec dl
mov dx, 0x4253
stc
or dl, 0x5c
mov esi, 0x572ea412
sub ch, cl
or ah, cl
inc al
rol si, cl
pop edi
pop ebx
pop ecx
pop esi
pop eax
pop edx
push ecx
push ebx
adc ch, bl
mov ch, cl
push edx
sub dl, cl
sub bl, dh
push edi
xchg di, cx
sub ebx, edi
push esi
sub si, 0xa38
not ebx
shl cx, cl
stc
push eax
cmp eax, esi
rol bx, cl
or si, 0x4194
add ch, 0x7c
shr edx, cl
xchg cx, dx
dec ch
mov ax, 0xf1c
xor bh, 0x1c
stc
mov ah, ch
not esi
stc
or cl, 0x56
stc
shr dl, 8
and esi, 0x3f5b058d
sub cl, 6
stc
inc ecx
not bh
dec edi
and ax, 0x23fd
test ebx, eax
rol dl, cl
mov dx, cx
stc
ror al, cl
dec bh
stc
ror edx, 3
shr cl, 8
dec bx
inc bh
rol ebx, cl
test eax, ebx
or edi, 0x201bc239
shr bl, 1
cmp dl, 5
rol dx, cl
shl ch, 7
xchg cl, bh
rol bx, cl
ror ax, 8
xor dl, bl
add bx, ax
not esi
rol ax, cl
stc
not eax
rol bx, cl
dec ah
test dx, si
ror ebx, cl
mov ah, bh
shr cx, 2
and edi, ecx
pop eax
pop esi
pop edi
pop edx
pop ebx
pop ecx
push eax
push ebx
mov ah, bl
and ah, 0x5a
push ecx
add ch, 0x31
push edx
shr dh, 8
cmp ch, cl
dec dh
xchg cl, ah
xor ebx, 0x18a0e885
ror bh, cl
push esi
ror si, cl
test ax, 0x1402
nop
adc ebx, 0x21f0ecc3
pop esi
pop edx
pop ecx
pop ebx
pop eax
call fcn.0046024a
call fcn.00460733
push edi
dec edi
push esi
rol esi, 4
push ecx
xchg esi, ecx
nop
push eax
xchg cx, ax
push edx
xchg edx, esi
or ah, 9
adc eax, eax
push ebx
dec bx
not ah
rol ax, 4
shr di, cl
cmp edi, 0x5defaf8
and bh, 0x73
or si, dx
or ebx, 0x3b710a5b
mov eax, 0x49668b48
cmp bh, 0x54
adc ebx, esi
add edx, ebx
pop ebx
pop edx
pop eax
pop ecx
pop esi
pop edi
push ecx
not cx
and cx, 0x5eb5
rol ecx, 6
dec cx
push eax
xor ax, 0x5cc0
inc cl
push esi
adc si, 0x2b17
or ch, ah
ror cx, cl
add ax, si
test ecx, 0x7017e033
mov al, al
push edi
dec edi
shl ecx, 2
and al, 0x4c
push edx
or dx, dx
stc
push ebx
xchg bl, ch
cmp ch, ah
xchg dl, cl
cmp dx, ax
or ax, dx
sbb eax, esi
stc
add eax, 0x6e24382a
and ah, dl
xchg dx, cx
nop
and si, di
xchg dx, cx
xchg bx, cx
shr bh, 2
and al, ch
or si, bx
or si, 0x7aca
shl edx, cl
and di, 0x4cd8
rol cl, 5
test dx, 0x7643
sbb ch, bh
xor bx, 0xad5
dec ecx
test dl, dh
sub ch, bh
stc
adc eax, 0x47133868
stc
ror dx, 5
sub bx, 0x7c8e
pop ebx
pop edx
pop edi
pop esi
pop eax
pop ecx
call fcn.00460cc6
push edx
push ecx
adc dx, cx
push esi
xchg si, dx
push edi
sbb edi, ecx
nop
ror esi, 3
push ebx
shl ebx, cl
inc dx
test dl, ch
push eax
ror ax, 2
not edi
inc al
sub edi, eax
adc ch, 0x7d
pop eax
pop ebx
pop edi
pop esi
pop ecx
pop edx
call fcn.0046116b
call fcn.00461690
push edx
xor dx, 0x7555
pop edx
mov esi, dword [edx]
test esi, esi
je 0x45f866
lea edi, [edx + 8]
push ebx
push esi
sub bx, si
push edx
mov si, dx
push edi
sbb edi, esi
nop
push ecx
ror edi, cl
shl ebx, 8
adc ecx, 0x3fe4ba09
nop
dec ch
push eax
and ax, di
or di, di
shl bl, cl
xchg ecx, edi
dec di
nop
not esi
and dx, 0x78d1
xor cx, ax
sbb di, bx
inc ebx
or edi, 0x68a9f9b6
test di, 0x29d9
ror edx, 8
stc
test si, si
inc ah
not di
sub di, bx
ror ch, 7
ror bh, cl
sub ax, bx
shl esi, cl
not ebx
xchg edi, eax
and dl, 5
shl al, 4
or al, dl
nop
nop
rol bx, cl
stc
mov al, ch
xor edi, ecx
sbb esi, edx
shr bh, 1
cmp si, ax
stc
test dl, 0x35
or al, ch
add dl, 0x69
inc ch
ror eax, cl
nop
shl cl, 1
add edi, 0x12b5e507
xor esi, 0x68464ff7
and edx, ebx
cmp si, 0x5d26
or bx, si
xchg esi, ecx
xor ch, 0x32
dec eax
adc di, 0x3c0a
add esi, 0x203b13db
shr ecx, 4
cmp ah, al
mov si, 0x2d1d
inc dh
shl eax, cl
and ax, 0x47f5
rol bh, cl
adc eax, ebx
test si, cx
stc
xor ax, 0x2fca
adc ah, dh
sbb cx, bx
adc dl, ah
nop
nop
xor ax, 0x635
and bl, 0x6f
nop
cmp bx, cx
mov edi, 0x463a8908
stc
xchg dx, bx
cmp cx, si
add edx, 0x1556c1b
not cx
not cx
nop
sub si, cx
xchg edx, edx
sbb ecx, edx
and ch, 0x4c
nop
adc eax, edx
adc si, 0x128f
sbb si, dx
pop eax
nop
and edx, 0x756642e0
push eax
adc edx, eax
dec di
shl dh, cl
stc
mov bl, bh
xor edx, 0x2b97d38c
or ax, si
add dl, 0x7f
adc al, cl
adc cx, di
and edi, edx
dec cx
sub si, ax
cmp esi, ecx
mov bx, di
mov dx, ax
xor esi, 0x47302f39
and al, 0x73
test esi, 0x31ad46d7
dec bl
and bx, ax
nop
test esi, 0x1e8a51db
ror dx, cl
stc
shl di, cl
nop
and di, bx
cmp edx, 0x3728efd3
sbb bl, ch
or ecx, eax
nop
inc edi
inc ebx
shr dh, cl
inc dl
sbb dh, ah
rol edi, 2
or bl, 0x19
ror si, 1
stc
dec eax
shl bx, 4
ror eax, 4
stc
nop
mov esi, 0x5efdde23
ror edx, cl
add eax, 0x2a456809
ror edi, cl
sub bx, 0x4b8d
xchg bx, dx
shl dx, cl
shl ax, cl
dec eax
rol cl, cl
ror cx, 6
mov edx, 0x460d395d
shr dx, cl
or edi, ecx
mov al, al
adc edx, eax
shr ah, 5
shl ch, cl
cmp si, di
ror al, 3
sub esi, 0x1c82032a
and bl, 0xb
shl ax, 1
xor bx, 0x3f9
shr ax, cl
or ah, dl
cmp si, di
or si, 0x7c4
inc edi
ror ebx, 4
nop
nop
ror si, cl
cmp edx, 0x49fb2300
dec ebx
or di, 0x79f1
adc ax, 0x65ac
rol eax, cl
mov al, 0x4c
or si, 0x609f
xchg dx, di
cmp al, cl
dec dx
xchg bl, dl
rol eax, cl
dec al
sbb bx, 0x4443
mov dx, 0x5961
test cl, al
rol edx, cl
sbb eax, 0x11eb898c
xchg edx, edx
pop eax
or ch, ch
xor ebx, 0x63916300
cmp di, 0x43a0
dec edx
push eax
and ax, di
and bh, 0x46
stc
rol bl, cl
test dh, ah
xor dh, 0x63
xor edi, 0x1d37a3bb
mov dl, 0x29
cmp di, 0x189a
xor edi, edi
or esi, edx
mov cx, 0x36da
inc cx
nop
adc cl, 0x35
add bx, si
test edx, 0x68345c37
shl bh, cl
shl eax, cl
nop
add si, 0x3acb
cmp si, bx
shl dh, 7
stc
inc bl
dec edi
xor ebx, 0x73e3a17c
or si, 0x31a
sub dl, 0x5f
ror dl, cl
inc bx
adc cx, ax
xchg bx, ax
add bx, 0x416a
not ebx
inc bh
sub dl, 0x17
add esi, 0x6a334a3e
test dx, si
add bh, 0x37
add bl, 0x6c
dec esi
and dl, 0x31
ror dh, 1
shl eax, 5
nop
add di, dx
not ch
adc cx, dx
test edi, 0x1fdba424
not bx
shl dh, 7
or bx, 0x6484
ror ax, cl
not esi
or esi, 0x1b8be9ae
sbb ax, 0x5e6f
test dx, 0x1b32
test eax, 0x6776b3dc
rol ecx, 2
cmp bx, dx
xor ch, dl
mov dx, 0x1370
and edi, eax
not dl
xchg ecx, ecx
adc ax, 0x496
not al
adc bx, 0x75e
test cl, 0x34
mov esi, 0xbcb2845
cmp edx, 0x48e53727
and esi, edx
xchg edi, edi
not ch
not si
ror di, 6
mov cx, dx
stc
adc cx, di
shl eax, 4
shr eax, cl
sub ah, ah
ror si, cl
sbb cx, 0x6669
cmp cl, 0x4f
add esi, eax
cmp bx, bx
adc ebx, esi
not al
dec bh
sbb bx, di
xchg cx, si
dec di
sub cx, dx
stc
pop eax
cmp edx, 0x2b812a55
dec cl
dec edi
ror di, 8
shr si, cl
sbb edi, 0x1cc8074b
cmp dx, 0x6ba2
stc
push eax
sub eax, 0x96683a9
xchg di, di
shr ah, cl
or di, di
sbb dl, 0x79
rol dl, 7
rol dh, 4
xor ebx, ebx
mov ebx, ebx
xor dh, 0x11
shr dl, 4
xor si, cx
or bx, si
sub bx, cx
stc
cmp dl, bl
adc si, bx
rol dh, 3
adc ax, 0x10ff
sbb dh, bl
not ah
cmp ecx, 0x3ebf5224
not ebx
shr ebx, 1
cmp dl, 0x71
sub eax, 0x2045ca7f
add bh, bh
mov dl, ch
add cx, 0x2a6c
xor bx, 0x7888
and ah, bl
add bx, si
mov ax, bx
and dx, di
cmp ecx, 0x1c1b3207
or dh, 0x65
inc ax
or al, ah
dec cx
add bx, si
xchg ebx, edi
and dh, bh
shr ah, cl
add eax, 0xe03248f
rol dx, 4
or esi, eax
xchg ah, ah
and eax, 0x1c0fcdce
shr dh, cl
sbb bl, 0x19
xor dl, 0x47
or bh, ah
dec dl
inc bx
mov bh, 0x15
dec di
shr di, 2
or ax, 0x7cfb
nop
or ecx, eax
adc ecx, 0x2ce28f47
test esi, 0x21e204d2
test ch, bl
inc cl
test esi, esi
or ch, 0x1a
cmp ch, cl
stc
not dh
dec bl
cmp ch, bh
xchg ah, ah
inc ecx
dec al
xchg cl, ch
ror di, 3
adc dx, bx
rol edi, 8
sbb edx, 0x46b4945c
or dl, 0xe
rol edi, cl
sub cl, ch
shr bx, cl
or si, si
nop
shl di, cl
or ch, cl
not ax
xor ax, cx
inc ax
dec edx
and esi, ebx
pop eax
push eax
shl eax, 4
sbb ax, 0x20cc
inc cx
test al, bh
or ax, 0x627f
ror cl, 3
adc bx, 0x7561
shl eax, cl
shr ax, cl
stc
stc
not edx
cmp di, ax
mov cx, bx
xor eax, 0x6ac043b6
test si, 0x6a18
or dl, cl
xchg dh, bh
rol ebx, 1
pop eax
pop ecx
pop edi
pop edx
pop esi
pop ebx
call fcn.00461a08
push edx
push eax
xor dl, al
push ebx
xchg edx, ebx
dec bx
adc bl, 0x15
push ecx
shl cl, 8
inc cx
adc bl, 0x18
or bx, 0x254c
and bh, dl
inc bl
add bx, 0x4de4
xchg al, bh
shl cl, 2
xchg ebx, eax
rol dx, 5
mov bx, 0x5cd2
add ah, dh
mov cx, 0x2469
sub bl, 0x13
pop ecx
pop ebx
pop eax
pop edx
call fcn.00461e51
call fcn.00462220
push eax
xor eax, 0x2a99fa43
push ecx
shr eax, cl
or cl, 2
push esi
and si, 0x3c4c
not ch
not ch
pop esi
pop ecx
pop eax
add edx, dword [edx + 4]
cmp edi, edx
jns 0x45e896
mov cx, word [edi]
shr cx, 0xc
call fcn.00462507
push eax
rol ax, 5
push ebx
sub bx, 0x73ec
stc
push edi
and di, 0x4ccf
push ecx
sbb ch, 0x20
test di, 0x34be
stc
xor bh, ah
stc
push edx
shl dh, 4
cmp bx, dx
not dl
xor eax, edx
dec ebx
stc
nop
sbb edi, 0x1a62dedd
xor edx, eax
inc ebx
push esi
cmp si, 0x515f
and di, dx
rol al, cl
add ebx, 0x319a4892
cmp si, 0x229d
sub ch, 0x59
test edi, edx
sub dh, cl
inc ebx
dec ecx
sbb edi, esi
sbb bl, al
xor eax, 0x6bde4e8d
shl esi, cl
or eax, 0x580e084c
test esi, edx
sbb esi, 0x3cf7164d
xchg dx, si
xor dl, bh
add eax, edi
shl esi, 7
rol dh, cl
not dx
inc cl
not si
ror bx, 8
cmp di, 0x4bce
nop
rol esi, cl
rol ah, 1
sbb al, 0x69
add esi, ecx
sbb si, ax
sbb ebx, ebx
mov si, ax
inc bx
nop
test al, 0x56
nop
rol dl, cl
shl dh, cl
add edx, ebx
test ebx, 0x1770e6a3
sub bl, 0x22
mov ecx, 0x1f16281f
stc
nop
ror cl, cl
mov bx, si
xor si, di
sbb dl, 0x23
cmp bx, 0x343b
cmp bl, al
not esi
test ax, cx
dec bx
adc ax, ax
mov ecx, 0x768a7e56
nop
sbb cx, 0x6c9a
sbb si, 0x4c98
inc bl
ror edx, 4
shr si, cl
not cx
test edx, 0x64c704a9
cmp ah, al
or esi, edi
dec edi
not esi
sub dh, dl
sub ax, cx
and bl, 0x55
adc bl, cl
xor ah, dh
inc bx
dec bl
rol cx, 7
or dl, 0x20
nop
and bh, 0x5b
pop esi
dec ax
inc ecx
shr bx, 2
or ah, ch
shl ah, cl
cmp dx, di
add cl, 0x29
ror edx, 5
test di, di
shr edi, 4
inc ax
stc
shr edx, 3
xor cl, al
shr bh, 1
stc
test ecx, edx
nop
xchg dh, dh
shl bh, cl
sbb al, 0x3c
inc al
sub dx, 0x1845
inc bl
mov ebx, ebx
test dh, bl
add bx, 0x3434
xchg cl, cl
inc edi
dec eax
sub bh, 0xd
rol cx, 3
or bx, 0x2b9b
test cx, di
inc eax
cmp edx, ebx
test ecx, 0x7b26879f
shl bl, cl
or dh, 0x42
or ecx, ebx
adc ah, 0x52
rol di, 6
push esi
or bx, si
rol bh, cl
dec cx
test si, 0x737d
shl cl, 2
inc ebx
shr esi, 5
ror bh, cl
dec bl
test eax, 0x7bfb42b9
inc si
test cx, 0x1472
mov edi, 0x40d1de9e
cmp dl, bh
test ch, al
nop
dec eax
add edi, 0x6d1d6714
sbb dl, 0x61
adc dx, 0x634d
dec cl
or al, 0x1f
shr di, 3
or edi, 0x2d62671f
ror eax, cl
not cx
add ecx, esi
not eax
stc
add ecx, ebx
mov ecx, edx
xchg bh, bl
ror dx, cl
mov edi, 0x6d62b13b
mov edx, 0x4afefa08
test al, 0x2d
test ax, 0x11f6
xchg si, bx
nop
dec bl
cmp di, si
mov ch, ah
and bx, bx
not edx
inc ax
stc
test dx, ax
adc si, si
shr ecx, cl
sbb edx, 0x6795434d
sbb ah, cl
dec bl
xchg cx, di
sub eax, edx
shl ch, cl
test bl, 4
test ebx, 0xe23e0be
mov ebx, 0x3027837d
pop esi
xchg ecx, ecx
stc
test ebx, 0x77560c73
test cl, ah
or ax, ax
ror ebx, 5
nop
adc ax, bx
cmp bh, 0x68
xchg edx, ecx
rol edx, cl
shl al, 3
shl di, cl
test ax, dx
inc ah
rol ah, 4
inc ax
sbb ebx, eax
cmp edx, 0x304d6cbc
or ch, dh
push esi
xor si, 0x4487
xchg edx, esi
and al, 0x77
cmp ax, 0x1c4d
sbb ax, ax
xchg ch, dh
ror bl, cl
xchg bh, dh
add cl, cl
rol edi, cl
sbb bl, bh
not bl
stc
mov si, 0x6fe7
not ecx
sub edx, 0x64544b94
xor edx, eax
dec dh
nop
xchg cl, ch
dec esi
inc cx
and si, 0x790e
shl eax, 4
and ax, 0x3cb8
ror ecx, 7
xchg dx, cx
and ch, al
rol ax, 6
xchg dl, bl
stc
shl ebx, 5
or ebx, eax
xor si, 0x6b63
and edx, eax
mov cx, 0x6377
dec cx
shr bx, 7
shr edi, cl
shr al, cl
not ecx
or dh, 0x36
dec edi
or edx, ecx
cmp esi, esi
inc edx
adc al, al
cmp bx, 0x2492
mov cx, di
stc
xor ch, 0x55
shl ch, 5
mov cx, si
dec ax
not edi
shr cx, cl
inc bx
nop
and edi, esi
xchg bl, dh
nop
or bx, di
rol edi, 1
mov si, dx
adc esi, 0x131265de
add esi, 0x58532558
sub cx, ax
xchg edx, ecx
sbb bx, 0x4b6a
and si, cx
sbb eax, 0x29c3942c
nop
add ah, 0x53
ror ecx, cl
adc eax, 0x13399e28
nop
stc
shl dh, cl
sbb bx, cx
or di, cx
pop esi
cmp dl, 0x78
mov edi, ebx
shl ecx, 7
ror dh, 8
dec cl
rol cx, cl
dec ah
sbb cx, 0x2816
ror ah, cl
push esi
sub esi, ebx
or bh, dh
and esi, 0x2d6e2692
ror ecx, cl
mov ebx, ebx
rol al, cl
stc
xchg edx, ebx
xchg cx, bx
xor ch, 0x15
shl dh, cl
rol dx, cl
sbb si, 0x7ab9
nop
rol di, cl
inc di
sub esi, 0xf1249ef
add dl, 0x61
test bl, 0x2e
xchg al, ch
sbb cl, 0x3d
sbb bl, al
cmp edi, esi
stc
rol dl, cl
nop
xchg ah, ch
stc
shr ebx, cl
or bx, 0x1344
inc al
and si, di
and si, di
not ch
shl bx, 2
nop
test di, dx
adc eax, edx
shr ch, cl
rol cl, 1
nop
mov ah, 0xb
test dx, cx
dec al
inc dl
inc cx
and cx, si
dec cx
and dh, 0x4c
inc dh
xchg bx, ax
cmp cx, 0x2c07
sbb ecx, ebx
shl cx, cl
shl ax, cl
rol dh, 6
stc
cmp si, 0xbc0
cmp dl, bl
stc
nop
ror ax, cl
stc
pop esi
pop edx
pop ecx
pop edi
pop ebx
pop eax
push edi
and edi, edi
push edx
sub dx, 0x6dbe
push ecx
not cx
xchg edx, edx
push esi
adc dx, si
push ebx
adc bx, dx
cmp esi, edx
xchg ecx, edi
or di, di
shr edi, 6
nop
adc esi, 0x220bbc64
push eax
xor dh, al
stc
dec cl
add si, ax
shl al, 2
xchg di, dx
cmp cx, 0x6e7f
not cx
nop
test ah, dh
nop
mov eax, esi
cmp cl, 0x44
adc eax, 0x1d9f00ff
xor di, si
or si, cx
test ecx, 0x3db870b
stc
inc dh
cmp eax, ecx
shr ax, cl
xor ax, dx
shl al, 8
nop
ror bx, 8
and ecx, 0x4a223433
adc edx, 0x367bc5f4
mov ecx, 0x13569a0e
stc
inc ax
sbb edx, edi
xor edi, 0x277f67ea
nop
or cl, dl
cmp cx, 0x16a3
rol esi, cl
stc
xor di, ax
ror dl, 7
adc edx, 0x662ef92a
and cl, dl
dec di
mov dx, si
shr dl, 2
ror bh, cl
inc edi
and eax, 0x774e21e3
and esi, 0x15982ceb
cmp ah, ah
not bl
or ebx, 0x3e0a38c2
rol ax, 8
shr di, cl
test cx, si
dec ah
cmp cx, si
nop
or esi, edx
mov edi, 0x48297972
shr dx, cl
dec al
and dh, dh
adc bx, ax
nop
stc
sub bx, 0x6ef6
xor bl, 0x59
rol dx, cl
adc ebx, 0x5cdddaf0
sub esi, ebx
add bh, ah
shl dh, 2
ror ax, cl
add dl, dh
ror dx, 3
sbb bx, ax
dec eax
xchg dx, ax
add ch, 0x76
rol cx, 2
mov bx, 0x4a5f
sub di, bx
sbb bh, dh
pop eax
pop ebx
pop esi
pop ecx
pop edx
pop edi
push ecx
rol ch, cl
push eax
rol eax, 6
push edx
xchg ah, dl
push esi
sub si, ax
pop esi
pop edx
pop eax
pop ecx
push ebx
push eax
add ebx, eax
push ecx
sbb cl, 0x52
stc
pop ecx
pop eax
pop ebx
cmp cx, 3
jne 0x45f85e
mov cx, word [edi]
and ecx, 0xfff
add ecx, esi
add dword [ecx + eax], ebx
push esi
push edx
sub si, dx
push eax
xchg dx, ax
push ecx
shl esi, cl
xchg ch, ch
cmp dl, dh
inc dl
rol ch, 8
not dx
dec cx
rol dl, 6
add si, 0x6b36
shr ax, 2
nop
dec cl
push ebx
test bl, 0x19
dec si
mov cl, bh
shr cl, 1
dec dl
sub dx, 0x7995
not ax
or esi, ecx
sub bl, 0x1e
adc dl, 0x29
push edi
xor edi, esi
mov eax, 0x12f8dd6b
sub edi, 0x57357f8f
mov ebx, ecx
inc bx
rol ebx, cl
shr ebx, 5
dec eax
sub ebx, 0x22915c1
rol ecx, 2
and bx, 0x588b
xor edx, 0x1a9072c5
sbb eax, 0x360cc6be
dec dl
inc bx
nop
test al, dl
not dx
dec eax
rol dl, cl
xchg cx, di
sub edx, 0x2708dae0
xor eax, ebx
stc
and di, 0x51fb
test al, cl
not bl
and esi, 0x58c0fef9
and al, 0x62
sbb dx, bx
not edi
and eax, ebx
rol ecx, 5
nop
mov al, bl
adc cl, dl
inc ebx
sub dx, ax
and bl, 0x7b
adc dl, dl
shl esi, 8
ror di, cl
cmp eax, 0x58420939
nop
stc
inc dh
adc ebx, 0x434a639e
test ecx, edx
ror cx, 2
inc di
adc cl, cl
inc ax
stc
rol si, cl
test ax, dx
cmp ecx, 0x277880b1
rol bx, cl
ror bh, cl
xchg ecx, edi
and edi, eax
xchg cx, di
dec bh
shl cl, 6
cmp ch, 0x46
and cx, cx
xor dh, 0x14
xor dx, 0x55a4
test bh, bh
inc ecx
nop
shr cx, cl
rol eax, 8
xor esi, eax
mov edx, 0x763960f3
dec ebx
sbb ax, 0x5290
pop edi
sub edx, ebx
shr eax, 1
inc esi
add cl, bl
test dx, 0x13f6
test al, ah
nop
xchg bh, bh
inc ax
push edi
add cx, di
xchg bh, bl
ror esi, 7
sub cl, 0x5b
xchg edi, ebx
rol edi, cl
or ch, 0x39
stc
nop
dec edx
dec bh
sbb bl, cl
inc al
ror di, 1
not edx
dec al
shl ecx, cl
sub ax, si
mov bh, ch
xchg ch, dh
and bl, al
cmp dl, cl
sbb cx, si
add di, ax
inc dl
not al
sbb ah, 0x65
sbb dl, dl
shr esi, 8
mov ebx, 0x75d348e1
not ecx
rol cl, 4
inc dh
dec si
dec cl
shr ax, 2
rol bl, 8
cmp dl, 0x37
sbb dh, dh
sub ebx, 0x1044259
inc dh
shl bh, 4
shr ax, 4
ror dh, 5
mov ch, 0x1c
shl bl, 8
shl cx, 6
sbb si, di
and di, 0x5677
xor bx, 0x431b
xchg dl, cl
xor ebx, 0x6feb5251
dec dh
sbb ebx, edi
sbb ax, di
mov dx, di
sbb ch, dh
rol cx, cl
nop
xchg al, ch
dec bh
sub edx, 0x19a44f43
and ch, bl
shr bh, 2
adc ecx, 0xc8edfa
add al, bl
rol ecx, cl
and ch, dl
and bl, 0x7a
cmp dh, dh
cmp bx, 0x1fa
not edi
inc ah
stc
not ch
xchg al, bh
adc edx, 0x29699a86
xor si, cx
sub edi, eax
ror di, 4
or ah, 0x46
sub ah, 0x53
xor al, al
add cx, di
sub bx, ax
xor ecx, esi
xor esi, edi
or di, 0x4bb2
dec cx
dec esi
or cx, 0x78e9
pop edi
add cl, bh
push edi
sub di, dx
ror al, cl
shl cl, 7
not dx
not edx
test ah, 6
or bx, si
cmp edi, ecx
shr ax, 2
shr si, 8
ror esi, cl
xchg ch, cl
not ax
mov di, 0x4345
cmp bh, 0x7f
shl bh, 6
test edi, 0xef4d9ff
xchg ecx, ecx
shl ax, 1
ror dx, 2
sbb dx, cx
shl ah, 2
shr bx, 3
test edx, 0x668e0771
inc dl
and ax, 0x54e6
mov al, ch
cmp ch, 0x58
test bh, cl
sbb cx, dx
adc bx, 0x404d
not cx
xchg di, bx
dec bl
sbb si, 0x6af2
and edx, ecx
shr ch, cl
shl bx, cl
adc eax, 0x20691821
mov ax, si
or cl, 0x76
or ah, bl
cmp edi, ebx
cmp ch, ah
dec esi
ror cx, cl
cmp cl, bh
mov ax, 0x1866
xor ebx, 0x3003ab85
sub ecx, eax
test ax, si
cmp bx, ax
xor bl, 0x41
shl al, 1
xchg edi, esi
sbb di, ax
stc
shr cl, cl
shr edx, 5
nop
inc ax
cmp cl, al
nop
dec edx
rol ebx, 7
ror si, cl
cmp bh, 0x65
add edi, edi
rol ax, cl
inc bx
stc
adc di, 0x2fa6
rol edx, cl
test bh, 0x32
nop
cmp ax, bx
sub si, 0x5ee9
xor esi, esi
nop
stc
mov esi, 0x484e825c
mov esi, edx
stc
or edx, 0x58b80916
or edi, 0x65c62033
mov bl, 2
shl ecx, cl
xor di, 0x1fa4
or ecx, 0x172e7d91
xor cl, cl
add bx, cx
inc dh
xchg bh, ah
sub bh, ch
nop
mov bx, 0x3a79
rol bx, 2
rol bl, 6
ror dl, cl
pop edi
mov dx, 0x2d2d
shr dx, cl
ror ecx, cl
xor cx, bx
xchg edx, ebx
xchg edx, edx
sub dl, 0x3b
shl dl, cl
push edi
test edi, edi
shr edx, 5
sub bh, 0xb
nop
dec bh
stc
test ax, bx
inc bx
inc di
sub ah, bl
test eax, ebx
shl dl, 7
not ebx
sub dx, cx
not edi
adc si, 0x1ef6
stc
mov ebx, 0x33e2c5f3
test ah, 0x19
nop
xor eax, eax
or esi, eax
xor ah, ah
test ecx, 0xcba8719
rol dh, 5
nop
nop
adc al, ah
xor cx, 0x1a1a
xor si, 0x7e07
not eax
and eax, 0x34afeee7
nop
sub ecx, ebx
shl bl, cl
xor eax, 0x39349dc9
stc
and edi, 0x782f8858
shl ch, cl
cmp al, bl
ror ebx, 7
nop
not al
rol al, 7
rol cl, cl
dec ah
sbb ch, 0x50
or ah, bl
nop
sub cx, cx
xor ebx, 0x705ccffc
add ecx, ecx
shl eax, cl
ror di, cl
stc
sub bl, ch
sbb al, 0x7b
or bl, 0x48
cmp ebx, 0x3f0adbc3
not di
sub si, 0x3f7b
shl eax, 4
add bx, 0x1ef0
inc bl
xchg bx, ax
not bl
cmp bx, cx
rol edi, 6
xchg di, si
adc dx, di
shl edi, cl
xchg edi, ebx
nop
cmp cx, dx
nop
xor bh, bl
ror ax, 1
nop
inc di
sub edx, edi
xor dl, dl
ror si, 5
and bx, cx
xchg cx, cx
inc ecx
shl ax, cl
sub eax, esi
and eax, edi
shl cx, cl
inc ax
dec bh
inc bx
pop edi
inc si
dec dh
push edi
xchg dx, di
mov ax, 0x781a
dec edx
nop
adc di, dx
and edi, 0x6220fcff
mov al, 0x45
dec edi
ror si, cl
shl cx, cl
add ah, 0xb
dec al
test bx, 0x7479
test ecx, 0x7786bd65
xor ah, al
stc
not dx
adc esi, ebx
sbb ch, al
pop edi
pop ebx
pop ecx
pop eax
pop edx
pop esi
call fcn.0046298d
push eax
and al, 0x63
push edx
and edx, 0x24ba7e45
push ecx
ror dh, cl
push edi
push ebx
adc di, bx
xor dh, al
ror cx, cl
test dx, 0x2d4e
stc
cmp eax, ecx
push esi
not si
ror ch, 3
or bx, 0x5615
pop esi
pop ebx
pop edi
pop ecx
pop edx
pop eax
call fcn.00462f4e
push esi
push edi
and si, di
sbb edi, edi
not di
push ecx
rol cx, cl
ror cl, cl
add esi, 0x7ad55c8d
nop
inc edi
shr ecx, cl
push edx
ror dl, cl
push eax
xchg edx, eax
push ebx
shr bh, cl
ror cl, cl
or dh, bl
sbb dl, ah
dec edx
cmp cl, ch
add cx, 0x50b9
not ebx
xchg al, ah
shl eax, 6
test ecx, 0x3f76266a
or ecx, 0xfc6eb26
pop ebx
pop eax
pop edx
pop ecx
pop edi
pop esi
call fcn.004633d2
jg 0x45f843
push ecx
cmp ch, cl
push ebx
xchg bh, bl
push eax
add ah, 0
shr bl, 2
and ebx, ecx
pop eax
pop ebx
pop ecx
jle 0x45f858
push ecx
push ebx
cmp ecx, ebx
adc cl, 0x3e
pop ebx
pop ecx
push ecx
ror cx, 4
pop ecx
push eax
push ebx
adc ah, bh
pop ebx
pop eax
lea edi, [edi + 2]
jmp 0x45edbd
pop edi
pop esi
pop ebx
pop ebp
ret