Function at 0xe7b69d
Capabilities:
Authenticate hmac
Parse pe header

Disassembly:
mov bl, byte [ecx + edx]
mov byte [edi + edx], bl
inc ecx
inc edi
cmc
clc
test ebx, ebp
cmp ecx, dword [ebp - 0x24]
jne 0xad1bf4
sub ecx, ecx
test edi, 0x36567599
cmc
stc
sub dword [ebp - 0xc], 1
jne 0xad1bd5
mov dword [ebp - 0xc], edi
rcl cl, cl
or ecx, esp
clc
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [ebp + 0xc]
jae 0xdfbfb4
mov edx, dword [ebp - 4]
cmp edx, dword [ebp + 0x10]
jae 0xdfbfb4
mov edx, dword [ebp - 0x50]
mov ebx, dword [ebp - 0x14]
cmova di, di
mov di, ax
movsx edi, cx
mov edi, dword [ebp + 8]
jmp 0xe0b087
lea ecx, [ecx - 4]
cmp ebp, edi
clc
lea ecx, [ecx]
cmp eax, 0x1000000
jae 0xad28cb
mov edx, dword [ebp - 4]
sub di, dx
bts di, ax
btc di, dx
movzx edi, byte [edx]
cmc
cmp al, 0x4d
shl esi, 8
cmp di, 0x432f
clc
shl eax, 8
or esi, edi
inc edx
mov dword [ebp - 4], edx
btc dx, bp
shl dl, cl
shr eax, 1
sal dx, 0xa6
cmovne edx, ebp
sub esi, eax
sbb edx, 0xaea26a1
dec dh
sal edx, cl
mov edx, esi
clc
shr edx, 0x1f
cmp dh, 0x18
test esi, 0x48120bde
neg edx
cmp edi, 0x5b113843
stc
lea ebx, [edx + ebx*2 + 1]
test edx, eax
clc
and edx, eax
lea esi, [esi + edx]
cmp bl, 0x45
cmc
cmp ecx, edi
sub ecx, 1
jne 0xad2894
mov ecx, dword [ebp - 0x20]
movsx edx, dx
not dx
movzx edx, word [ecx + 0x646]
stc
shl ebx, 4
clc
cmp eax, 0x1000000
jae 0xad2950
mov edi, dword [ebp - 4]
stc
movzx edi, byte [edi]
shl esi, 8
shl eax, 8
cmp bx, 0x6dc3
cmc
cmp cx, sp
or esi, edi
xchg edi, edi
inc dword [ebp - 4]
mov edi, eax
test sp, cx
shr edi, 0xb
cmp bp, sp
clc
imul edi, edx
cmp esi, edi
jae 0xd64070
mov eax, edi
shrd edi, ebp, 0x2d
mov edi, 0x800
sub edi, edx
clc
cmp ax, cx
shr edi, 5
clc
cmc
test bx, 0x354e
add edi, edx
xchg dh, dh
setne dl
mov word [ecx + 0x646], di
setl dl
cwd
cmovle dx, di
mov edx, 2
jmp 0xd640ab
sub eax, edi
sub esi, edi
btr edi, ecx
mov edi, edx
shr edi, 5
cmc
sub edx, edi
stc
mov word [ecx + 2], dx
bswap edx
adc edi, ecx
lea edi, [ecx + 0x204]
setl dl
mov dword [ebp - 8], 0x10
sal edx, cl
bt edx, eax
btc cx, 0x17
mov dword [ebp - 0x1c], 0x100
bts dx, bp
stc
mov dword [ebp - 0x28], edi
xadd ecx, ecx
shl dx, cl
dec ch
mov edx, 1
xor cx, sp
nop
movzx ecx, word [edi + edx*2]
test edx, ecx
cmp eax, 0x1000000
jae 0xad2a2f
mov edi, dword [ebp - 4]
clc
movzx edi, byte [edi]
shl esi, 8
test ecx, edi
cmp bp, 0x2be1
stc
shl eax, 8
clc
cmc
or esi, edi
inc dword [ebp - 4]
mov edi, eax
cmc
shr edi, 0xb
test ebx, eax
imul edi, ecx
cmp esi, edi
jae 0xe760d5
mov eax, edi
not edi
mov edi, 0x800
clc
sub edi, ecx
cmp si, sp
shr edi, 5
lea edi, [edi + ecx]
mov ecx, edi
rol edi, 0x7f
sar edi, 0x2e
shr di, 0x35
mov edi, dword [ebp - 0x28]
mov word [edi + edx*2], cx
test esi, 0x71a37cab
clc
add edx, edx
jmp 0xe7610d
sub eax, edi
test di, 0x7b5c
sub esi, edi
xor edi, eax
and edi, edi
neg edi
mov edi, edx
cmp ch, 0x23
shr edi, 5
cmp bl, 0x50
sub edx, edi
test si, bp
mov di, dx
mov edi, dword [ebp - 0x30]
test bh, 0xb9
mov word [ecx + ebx*2 + 0x1c8], dx
not dh
btr edx, 0xeb
cdq
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0x38], edi
rcr edi, 0xe3
ror edi, 0xad
mov edi, dword [ebp - 0x2c]
mov dword [ebp - 0x30], edi
clc
bswap edi
mov edi, dword [ebp - 0x18]
cmc
cmp bh, cl
mov dword [ebp - 0x2c], edi
cmc
mov dword [ebp - 0x18], edx
inc dh
stc
cmp ebx, 7
not dh
sbb ebx, ebx
add dh, 0xfb
and ebx, 0xfffffffd
seto dh
add ebx, 0xb
or dx, si
lea ecx, [ecx + 0xa68]
movzx edx, word [ecx]
test edx, esi
stc
mov dword [ebp - 0x14], ebx
test di, 0x3d08
stc
cmp eax, 0x1000000
jae 0xad3bfb
mov edi, dword [ebp - 4]
cmp ebx, 0x2c6948d5
cmp sp, cx
movzx edi, byte [edi]
test edi, 0x1f860fa5
shl esi, 8
test si, sp
stc
test ch, 0xba
shl eax, 8
test bh, dh
cmc
or esi, edi
inc edi
inc dword [ebp - 4]
cmp ax, 0x57ff
btr di, 0x14
mov edi, eax
cmc
test ebp, esp
shr edi, 0xb
cmp esi, 0x3aeb4310
test sp, 0x5fe4
clc
imul edi, edx
test eax, 0x50bc465d
cmc
cmp esi, edi
jae 0xaddcc7
mov eax, edi
mov edi, 0x3f4d0bfa
xor di, 0x614e
mov edi, 0x800
cmc
test bl, 0xa5
cmp bl, cl
sub edi, edx
cmc
stc
shr edi, 5
lea edi, [edi + edx]
sbb dx, 0x5fbe
rol dh, 0xa0
mov edx, dword [ebp - 0x1c]
shl edx, 4
mov word [ecx], di
lea edi, [edx + ecx + 4]
mov dword [ebp - 8], 0
mov dword [ebp - 0x1c], 8
jmp 0xad29ee
movzx edi, word [edx + ecx*2]
cmc
test bp, 0x3d9c
cmp eax, 0x1000000
jae 0xad3f00
mov ebx, dword [ebp - 4]
movzx ebx, byte [ebx]
test si, 0x31ce
shl esi, 8
cmc
test bp, di
stc
shl eax, 8
test dx, 0x5b91
or esi, ebx
movzx bx, bh
cmovs ebx, ebp
inc dword [ebp - 4]
neg ebx
mov ebx, eax
cmp esi, 0x7c8b5af1
test ecx, esp
shr ebx, 0xb
clc
imul ebx, edi
cmp bx, 0x78cc
cmp esi, ebx
jae 0xadb981
mov eax, ebx
dec bl
test edi, esp
rcr bx, 0xb0
mov ebx, 0x800
test bp, ax
test bh, 0x5c
sub ebx, edi
stc
shr ebx, 5
lea ebx, [ebx + edi]
mov word [edx + ecx*2], bx
add ecx, ecx
jmp 0xadb99a
sub eax, ebx
sub esi, ebx
mov ebx, edi
shr ebx, 5
cmp bp, ax
test edi, ecx
stc
sub edi, ebx
mov word [edx + ecx*2], di
lea ecx, [ecx + ecx + 1]
cmp ecx, 0x100
jb 0xad3ec2
jmp 0xae9fa6
sub eax, ecx
sub esi, ecx
mov ecx, edx
clc
test ah, 0x47
shr ecx, 5
sub edx, ecx
mov ecx, dword [ebp - 8]
cmp ch, 0x65
test dh, bh
or ebx, dword [ebp - 0x38]
cmp bp, sp
mov word [ecx + edi*2], dx
cmp bl, bh
stc
clc
lea edi, [edi + edi + 1]
cmp di, di
cmc
shl dword [ebp - 0x38], 1
stc
sub dword [ebp - 0x44], 1
jne 0xe02e4f
jmp 0xadef49
sub eax, edi
test esi, 0x286e308e
sub esi, edi
bsf edi, edi
xor di, si
mov edi, edx
test esi, ebx
cmc
shr edi, 5
cmc
sub edx, edi
clc
test esi, eax
mov word [ecx], dx
test esp, eax
sub dx, ax
cmc
movzx edx, word [ecx + 2]
cmp eax, 0x1000000
jae 0xaddd31
mov edi, dword [ebp - 4]
cmp esi, 0x78f054d4
cmc
movzx edi, byte [edi]
cmp si, 0x77c3
cmp edi, ebx
shl esi, 8
clc
cmc
shl eax, 8
stc
or esi, edi
mov di, 0x59c6
xchg di, di
bswap di
inc dword [ebp - 4]
test edi, 0x241c2602
add edi, ecx
mov edi, eax
cmp sp, dx
stc
shr edi, 0xb
stc
cmp eax, ebp
test ax, 0x13bd
imul edi, edx
cmp sp, bp
cmp esi, edi
jae 0xad29b0
mov eax, edi
btc di, 0x7d
bsr di, bp
mov edi, eax
mov edi, 0x800
cmp ecx, 0x59216ed4
test bl, 0x8d
sub edi, edx
shr edi, 5
lea edi, [edi + edx]
btr edx, 0x4c
rcl dx, 0xcf
mov edx, dword [ebp - 0x1c]
mov word [ecx + 2], di
shl edx, 4
cmovae edi, eax
lea edi, [edx + ecx + 0x104]
mov ch, 0x2d
seto cl
mov ecx, 8
mov dword [ebp - 8], ecx
mov dword [ebp - 0x1c], ecx
jmp 0xad29ee
sub eax, edi
movsx ebx, bp
sub esi, edi
mov edi, edx
shr edi, 5
clc
sub edx, edi
shr bh, cl
shr bx, 0xac
mov word [ecx + 2], dx
mov edx, 3
movsx ebx, bx
lea ebx, [edx + edx]
btr dx, ax
movzx edx, word [ebx + ecx]
cmc
cmp eax, 0x1000000
jae 0xade8c0
mov edi, dword [ebp - 4]
movzx edi, byte [edi]
shl esi, 8
cmc
cmp ecx, edx
shl eax, 8
test bx, 0x2e12
or esi, edi
inc dword [ebp - 4]
sub di, 0x192b
xchg edi, edi
bts edi, eax
mov edi, eax
shr edi, 0xb
test cl, 3
imul edi, edx
stc
cmp esi, edi
jae 0xe0232b
mov eax, edi
xchg edi, edi
mov edi, 0x800
sub edi, edx
test esi, ebp
cmp sp, cx
shr edi, 5
cmp eax, esp
cmc
add edi, edx
mov word [ebx + ecx], di
jmp 0xe02345
sub eax, edi
clc
sub esi, edi
mov edi, edx
cmp ah, 0xf9
cmp dx, bp
test ebx, 0x365c2bbf
shr edi, 5
clc
sub edx, edi
mov edi, dword [ebp - 0x1c]
cmc
cmp si, si
stc
mov word [ecx + edi*2 + 0x644], dx
or ebx, 8
cmp cl, dl
cmp ebx, 0xffffffff
je 0xdfbfa3
mov ecx, dword [ebp - 0x30]
cwd
btr dx, si
mov edx, dword [ebp - 0x2c]
cmp di, di
clc
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x18]
cmp ax, si
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x30], edx
mov edx, edx
rcl dh, 0xb8
lea edx, [ebx + 1]
mov dword [ebp - 0x18], edx
cmp di, cx
test ecx, ecx
jne 0xd63b19
cmp ebx, dword [ebp - 0x10]
jmp 0xd63b1b
pop edi
pop esi
cbw
mov eax, 1
pop ebx
mov esp, ebp
xchg bp, bp
movsx ebp, si
pop ebp
ret 0xc
sub eax, edi
clc
cmc
sub esi, edi
cmc
inc edi
mov edi, edx
shr edi, 5
sub edx, edi
cmp dword [ebp - 0x3c], 0
mov word [ecx + ebx*2 + 0x180], dx
jne 0xae2fa6
cmp dword [ebp - 0x10], 0
je 0xae2679
movzx edx, word [ecx + ebx*2 + 0x198]
cmc
test ax, si
stc
cmp eax, 0x1000000
jae 0xae2fef
mov edi, dword [ebp - 4]
test di, 0x622
movzx edi, byte [edi]
cmp cl, dh
test bp, bp
shl esi, 8
stc
test ebx, ebx
cmp edi, ebx
shl eax, 8
or esi, edi
inc edi
bswap di
inc dword [ebp - 4]
neg edi
and di, 0x5717
or edi, 0x2c503435
mov edi, eax
cmp ax, bp
cmc
stc
shr edi, 0xb
cmp ch, 0x38
cmp ecx, edx
imul edi, edx
clc
mov dword [ebp - 0x4c], edi
cmp al, 0xf9
cmp edx, ebp
cmp esi, edi
jae 0xae91ca
mov eax, edi
xadd di, di
stc
mov edi, 0x800
sub edi, edx
cmp esi, 0x1ab76b24
cmp ebp, esi
shr edi, 5
cmp di, 0x507a
lea edi, [edi + edx]
btc dx, si
cmovns dx, sp
lea edx, [ebx + 0xf]
clc
cmc
test dx, si
shl edx, 4
test esi, ebp
cmp edi, esi
add edx, dword [ebp - 0x1c]
clc
mov word [ecx + ebx*2 + 0x198], di
rcr edi, 0x5e
lea edx, [ecx + edx*2]
adc di, 0x70e9
mov edi, eax
mov dword [ebp - 8], edx
test cx, 0x42b5
cmp esp, 0x2f0c41c7
movzx edx, word [edx]
stc
test ecx, 0x308b5b11
cmp edi, 0x1000000
jae 0xae30b6
shl edi, 8
dec eax
adc ax, bx
mov eax, edi
bswap edi
neg di
xor edi, 0x2f804be2
mov edi, dword [ebp - 4]
movzx edi, byte [edi]
clc
test ebp, ecx
test bx, 0x4d55
shl esi, 8
cmp bp, ax
clc
or esi, edi
inc dword [ebp - 4]
or edi, ecx
mov edi, eax
clc
shr edi, 0xb
stc
clc
imul edi, edx
cmc
cmp esi, edi
jae 0xe76828
mov ecx, 0x800
sbb eax, 0x6e975275
adc ah, 0xb3
sub ecx, edx
btr eax, 0x9e
sal eax, cl
nop
shr ecx, 5
rcr ah, cl
sar al, 0x49
add ecx, edx
mov edx, dword [ebp - 8]
stc
shl eax, 6
mov word [edx], cx
movzx cx, ah
stc
bt ax, 0x9a
mov ecx, dword [ebp - 0x18]
shl al, 0xd6
bt eax, edi
mov eax, edi
mov edi, dword [ebp - 0xc]
cmp si, bx
cmp edi, ecx
sbb edx, edx
and edx, dword [ebp - 0x24]
inc dword [ebp - 0x10]
cmp bp, 0x3d82
cmc
sub edx, ecx
xchg ecx, ecx
or cl, 3
not ch
mov ecx, dword [ebp - 0x34]
add edx, edi
mov dl, byte [edx + ecx]
mov byte [edi + ecx], dl
inc edi
test dx, 0x579d
cmp ebx, 7
sbb ecx, ecx
cmc
stc
and ecx, 0xfffffffe
test ebx, esp
cmp cx, bx
add ecx, 0xb
mov dword [ebp - 0x14], ecx
jmp 0xad1bfe
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [ebp - 0x18]
mov dword [ebp - 0x1c], 0x100
sbb edx, edx
and edx, dword [ebp - 0x24]
test si, dx
sub edx, dword [ebp - 0x18]
cmp bl, 0x6b
cmp edi, eax
clc
add edx, dword [edi + 0x14]
rcr di, 0x3e
btc edi, 0x15
cmp ebx, 0xa
xchg di, di
movzx edi, byte [edx + ecx]
sbb edx, edx
sal ch, 0xce
bt cx, bp
sub ch, 0x58
and edx, 0xfffffffd
bsr ecx, eax
sal cl, 0xf6
lea edx, [edx + 6]
clc
shr ecx, 0x36
bt cx, 0x62
sub ebx, edx
mov dword [ebp - 0x14], ebx
not cx
movzx cx, bl
mov ecx, 1
jmp 0xe05222
sub eax, edi
cmp di, 0x455
cmc
sub esi, edi
or edi, 0x72b64ec3
xchg edi, edi
neg di
mov edi, edx
test bh, 0x8f
clc
shr edi, 5
sub edx, edi
mov word [ebx + ecx], dx
dec dl
xchg dl, dh
movzx edx, ax
inc ebx
cdq
add ebx, ebx
mov edx, edx
adc dx, di
movzx edx, word [ebx + ecx]
test sp, 0x262b
cmp eax, 0x1000000
jae 0xae7cca
mov edi, dword [ebp - 4]
clc
cmp ax, 0x2bdb
cmp ebp, esp
movzx edi, byte [edi]
test sp, bx
cmc
stc
shl esi, 8
shl eax, 8
stc
or esi, edi
not di
mov edi, ebp
inc dword [ebp - 4]
xchg di, di
shr di, 0xe7
mov edi, eax
shr edi, 0xb
test esp, edx
imul edi, edx
cmp esi, edi
jae 0xe017ea
mov eax, edi
shrd edi, eax, 0x6d
rol di, 5
inc edi
mov edi, 0x800
cmp edi, 0x52f6564d
sub edi, edx
shr edi, 5
add edi, edx
mov word [ebx + ecx], di
jmp 0xe01814
sub eax, edi
sub esi, edi
mov edi, edx
shr edi, 5
test di, bx
sub edx, edi
mov word [ecx + ebx*2 + 0x198], dx
xor edx, edi
or dx, bx
cmp ax, 0x3dfa
movzx edx, word [ecx + ebx*2 + 0x1b0]
cmc
cmp eax, 0x1000000
jae 0xae9220
mov edi, dword [ebp - 4]
cmp edx, ebp
movzx edi, byte [edi]
clc
shl esi, 8
test esp, 0x19b3334f
cmc
shl eax, 8
test bp, 0x40d5
or esi, edi
inc dword [ebp - 4]
movsx edi, dx
mov edi, eax
shr edi, 0xb
stc
test ebx, edi
imul edi, edx
cmp esi, edi
jae 0xe7b436
mov eax, edi
mov edi, 0x800
sub edi, edx
shr edi, 5
test dl, al
stc
add edi, edx
mov edx, dword [ebp - 0x2c]
mov word [ecx + ebx*2 + 0x1b0], di
jmp 0xad3b81
sub eax, ebx
sub esi, ebx
or bx, sp
mov ebx, edi
shr ebx, 5
cmp cx, 0x234
test ebx, 0x4380539d
sub edi, ebx
sar bx, 0x95
and ebx, esi
mov ebx, dword [ebp - 0x44]
cmc
mov word [ebx], di
lea ecx, [ecx + ecx + 1]
cmc
and dword [ebp - 0x1c], edx
stc
test ecx, esp
cmp al, 0x33
cmp ecx, 0x100
jb 0xe0521a
mov edx, dword [ebp - 0xc]
cmovo di, dx
mov edi, dword [ebp - 0x34]
mov byte [edx + edi], cl
inc edx
inc dword [ebp - 0x10]
mov dword [ebp - 0xc], edx
jmp 0xad1c06
sub eax, edi
cmc
stc
clc
sub esi, edi
and edi, 0x4d9f7cae
or edi, 0x1dc84cb8
mov edi, edx
test ah, 0xc1
shr edi, 5
cmp esi, 0x6d4411aa
sub edx, edi
mov word [ebx + ecx], dx
inc ebx
add ebx, ebx
btr dx, 0xcf
clc
movzx edx, word [ebx + ecx]
cmp ch, bh
cmp edi, 0x73c44ea8
cmp eax, 0x1000000
jae 0xd633a3
mov edi, dword [ebp - 4]
movzx edi, byte [edi]
test sp, cx
test ebx, 0x728305a5
shl esi, 8
cmc
shl eax, 8
clc
cmp ebp, 0x28850221
cmc
or esi, edi
inc edi
inc dword [ebp - 4]
movsx edi, cx
mov edi, eax
cmp dl, dh
test al, dl
shr edi, 0xb
stc
imul edi, edx
cmp eax, ecx
cmp esi, edi
jae 0xae7c58
mov eax, edi
clc
xchg di, di
shrd di, bx, 0x7d
mov edi, 0x800
sub edi, edx
test eax, edx
clc
cmp dx, cx
shr edi, 5
cmc
add edi, edx
mov word [ebx + ecx], di
jmp 0xae7c85
cmp ebx, ecx
jae 0xae2679
cmp dword [ebp - 0x14], 0x13
not edi
movsx edx, dx
movzx dx, bh
mov edx, dword [ebp - 0x28]
xchg di, di
movsx edi, bx
not di
sbb ecx, ecx
movzx edi, di
and ecx, 0xfffffffd
test edi, esp
lea ecx, [ecx + 0xa]
btr edi, esp
mov dword [ebp - 0x14], ecx
and cx, ax
mov ecx, dword [ebp + 0xc]
stc
bts edi, edx
mov edi, dword [ebp - 0xc]
lea edx, [edx + 2]
test bp, 0x422c
cmp ecx, edi
cmp ecx, edi
je 0xae2679
sub ecx, edi
stc
mov dword [ebp - 0xc], ecx
clc
test esp, 0x2f4827d6
cmp edx, ecx
cmp ecx, edx
jb 0xd63b8f
mov dword [ebp - 0xc], edx
rcr ebx, cl
dec bh
bt bx, 0xd4
cmp edi, dword [ebp - 0x18]
mov ebx, dword [ebp - 0xc]
sbb ecx, ecx
and ecx, dword [ebp - 0x24]
cmp eax, edi
cmc
add dword [ebp - 0x10], ebx
sub ecx, dword [ebp - 0x18]
test si, di
sub edx, ebx
clc
add ecx, edi
test ch, 0x5e
test ax, dx
mov dword [ebp - 0x28], edx
lea edx, [ecx + ebx]
cmp edx, dword [ebp - 0x24]
mov dx, sp
movzx edx, ax
cwd
mov edx, dword [ebp - 0x34]
ja 0xad1bd5
lea edx, [edx + edi]
cmp edi, esp
cmp al, 0xc5
add ebx, edx
cmp ecx, 0x481800c7
test ch, 0x8e
test bx, dx
sub ecx, edi
test esp, 0x2c333776
add edi, dword [ebp - 0xc]
mov dword [ebp - 0x4c], ebx
not bl
mov dword [ebp - 0xc], edi
mov bl, byte [ecx + edx]
mov byte [edx], bl
inc edx
cmp esp, 0x393a2a93
cmp edx, dword [ebp - 0x4c]
jne 0xd63bf3
jmp 0xad1c06
sub eax, edi
clc
sub esi, edi
cmp ah, 0x71
or edi, 0x1543324
mov edi, edx
stc
shr edi, 5
test ebx, 0x5487733
test esi, eax
cmp dh, 0xd1
sub edx, edi
stc
mov word [ecx + 0x646], dx
sub edx, esp
rcl dl, 0x67
bt dx, ax
mov edx, 3
or ebx, 1
stc
add edx, edx
test ch, 0x38
mov dword [ebp - 0x1c], edx
cmp bp, di
test sp, 0x6de4
movzx edx, word [edx + ecx + 0x644]
cmc
cmp eax, 0x1000000
jae 0xd64105
mov edi, dword [ebp - 4]
cmc
cmp cx, di
stc
movzx edi, byte [edi]
cmc
test dl, 0x62
shl esi, 8
test ebp, 0x896e37
shl eax, 8
test esi, 0x46054cd5
test ax, bp
or esi, edi
bswap edi
inc edi
inc dword [ebp - 4]
add edi, 0x492d3711
rol di, 0xdf
mov edi, eax
clc
shr edi, 0xb
imul edi, edx
cmp esi, edi
jae 0xd64461
mov eax, edi
mov edi, 0x800
test ebx, edi
sub edi, edx
test edi, 0x20ec5611
cmp di, 0x113f
shr edi, 5
cmp eax, 0x76f75ee1
test al, 0x1d
add edi, edx
mov edx, dword [ebp - 0x1c]
mov word [edx + ecx + 0x644], di
jmp 0xd64491
sub eax, edi
test ebx, ebp
clc
test dl, 0xa2
sub esi, edi
xor di, bx
not di
bsr edi, ebx
mov edi, edx
cmp ebp, ebx
cmp dh, 0x20
test cl, 0xd8
shr edi, 5
test sp, cx
test esi, 0x22c14b8e
stc
sub edx, edi
bsr edi, edi
rcl edi, 0x66
movzx edi, si
mov edi, dword [ebp - 0x1c]
cmp eax, esi
clc
mov word [edi + ecx + 0x644], dx
cmp cx, di
lea edx, [edi + 1]
or ebx, 4
cmc
cmp esp, 0x63605a49
mov dword [ebp - 0x1c], edx
movzx edx, word [ecx + edx*2 + 0x644]
cmp eax, 0x1000000
jae 0xd643db
mov edi, dword [ebp - 4]
movzx edi, byte [edi]
shl esi, 8
shl eax, 8
cmp ah, 0x5a
or esi, edi
inc dword [ebp - 4]
btc di, bx
mov edi, eax
test al, 0xd1
cmp si, 0x1a85
shr edi, 0xb
test dh, bh
imul edi, edx
test ax, bp
cmp ax, 0x6eb1
cmp esi, edi
jae 0xadef12
mov eax, edi
mov edi, 0x800
cmp ebp, ebp
sub edi, edx
stc
cmp bp, 0x6306
clc
shr edi, 5
cmc
add edi, edx
mov edx, dword [ebp - 0x1c]
mov word [ecx + edx*2 + 0x644], di
jmp 0xadef40
sub eax, edi
clc
sub esi, edi
btr di, cx
mov edi, edx
clc
test esp, 0x190b303a
shr edi, 5
sub edx, edi
mov edi, dword [ebp - 0x1c]
test cl, cl
cmc
mov word [edi + ecx + 0x644], dx
lea edx, [edi + 1]
or ebx, 2
test edx, esi
test bh, 0xe4
add edx, edx
stc
test si, si
cmp ax, bp
mov dword [ebp - 0x1c], edx
movzx edx, word [edx + ecx + 0x644]
stc
clc
cmc
cmp eax, 0x1000000
jae 0xd644c9
mov edi, dword [ebp - 4]
movzx edi, byte [edi]
stc
shl esi, 8
shl eax, 8
test bx, bx
cmc
or esi, edi
inc dword [ebp - 4]
mov edi, eax
test dl, cl
shr edi, 0xb
imul edi, edx
cmp sp, 0x4cbc
cmp esi, edi
jae 0xd6435a
mov eax, edi
movzx edi, bp
mov edi, 0x800
test ebx, 0x1981a98
clc
stc
sub edi, edx
cmp esi, 0x1c8b3b6c
stc
test bp, si
shr edi, 5
test eax, edi
clc
add edi, edx
mov edx, dword [ebp - 0x1c]
mov word [edx + ecx + 0x644], di
jmp 0xd643ad
add dword [ebp - 0x28], 0x112
sub dword [ebp - 0x14], 0xc
setl dl
shl edx, 0xa1
mov edx, dword [ebp - 4]
cmp eax, 0x1000000
jae 0xdfbfda
movzx ecx, byte [edx]
ror bl, cl
shl esi, 8
shl eax, 8
bts edi, ecx
or esi, ecx
movsx bx, dl
movsx edi, bx
inc edx
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x1c], eax
shld ax, sp, 0xfe
lahf
xadd bl, bl
mov eax, dword [ebp - 0xc]
mov dword [ecx + 0x18], edx
xor ebx, 0x67547518
sub bh, ah
shl bx, cl
mov edx, dword [ebp - 0x28]
test di, bx
mov dword [ecx + 0x24], eax
add eax, ebx
xor di, di
shr ebx, cl
mov eax, dword [ebp - 0x18]
add ebx, 0x52c71d8e
mov dword [ecx + 0x48], edx
ror dl, cl
adc edi, 0x6a842b4b
cmp edi, ecx
mov edx, dword [ebp - 0x10]
shl edi, 0x6e
bsr bx, si
mov dword [ecx + 0x38], eax
mov eax, dword [ebp - 0x30]
mov dword [ecx + 0x2c], edx
mov edx, dword [ebp - 0x2c]
mov dword [ecx + 0x40], eax
test edi, 0x5a090126
cmc
rol ax, cl
mov eax, dword [ebp - 0x14]
shl bx, cl
pop edi
mov dword [ecx + 0x20], esi
shld si, sp, 0x33
movsx bx, bl
and si, 0x1fd1
mov dword [ecx + 0x3c], edx
mov edx, dword [ebp - 0x38]
cmc
ror bh, 0x12
and esi, 0x13f035e6
pop esi
shr ebx, 0xfe
shr bx, cl
add bh, 0x5f
mov dword [ecx + 0x34], eax
mov dword [ecx + 0x44], edx
xchg bl, bl
rol bx, 0x9c
sub eax, eax
movzx ebx, bx
cmovs bx, sp
movsx ebx, bx
pop ebx
mov esp, ebp
bswap ebp
xchg ebp, ebp
pop ebp
ret 0xc
sub eax, edi
test dx, sp
sub esi, edi
adc di, 0x5451
mov edi, edx
shr edi, 5
clc
sub edx, edi
mov word [ebx + ecx], dx
mov dx, bp
xchg edx, edx
cmovne dx, cx
inc ebx
test edx, 0x32865a32
xor edx, ecx
lea ebx, [ebx + ebx]
cwd
sal dl, 0x50
rcr dx, cl
movzx edx, word [ebx + ecx]
cmp eax, 0x1000000
jae 0xe01859
mov edi, dword [ebp - 4]
movzx edi, byte [edi]
test esp, 0x16c60d6
stc
cmp ebx, 0x2d4b2f08
shl esi, 8
stc
clc
shl eax, 8
or esi, edi
xchg edi, edi
inc dword [ebp - 4]
cmp ax, sp
sbb edi, 0xb5b77b9
mov edi, eax
shr edi, 0xb
cmp ecx, esi
imul edi, edx
clc
cmp esp, 0x2e690b15
test edi, 0x5b7f7d3e
cmp esi, edi
jae 0xe02d9e
mov eax, edi
shld edi, ecx, 8
mov edi, 0x800
cmp ebp, ebp
test eax, edx
sub edi, edx
shr edi, 5
test ax, ax
test si, 0x787
add edi, edx
mov word [ebx + ecx], di
jmp 0xe02dc5
sub eax, edi
test bh, ch
sub esi, edi
neg di
mov edi, edx
cmp ecx, esi
cmc
shr edi, 5
sub edx, edi
mov word [ebx + ecx], dx
inc ebx
mov dl, 0xff
lea ebx, [ebx + ebx]
sal edx, cl
clc
shl dl, 0x3e
movzx edx, word [ebx + ecx]
test edi, ebp
test dh, 0x5a
cmp eax, 0x1000000
jae 0xe02378
mov edi, dword [ebp - 4]
movzx edi, byte [edi]
shl esi, 8
shl eax, 8
test di, cx
stc
cmc
or esi, edi
inc dword [ebp - 4]
mov edi, eax
shr edi, 0xb
stc
test dh, dl
imul edi, edx
stc
test si, 0x3384
cmp esp, ebx
cmp esi, edi
jae 0xd63335
mov eax, edi
mov edi, 0x800
cmc
sub edi, edx
cmp ecx, ebp
shr edi, 5
add edi, edx
mov word [ebx + ecx], di
jmp 0xd6335d
sub eax, edi
sub esi, edi
or edi, 0x52dd4b74
neg di
dec edi
mov edi, edx
test ebx, 0x5d45470b
shr edi, 5
test eax, edx
sub edx, edi
mov word [ebx + ecx], dx
inc ebx
cmp sp, 0x1698
sub ebx, 0x40
cmp ebx, 4
jb 0xadef49
mov ecx, ebx
xor edx, 0x1bda7a71
ror di, 0xc2
mov edx, ebx
mov edi, 1
test sp, cx
shr ecx, 1
and ebx, edi
cmp esp, ecx
sub ecx, edi
or ebx, 2
mov dword [ebp - 0x44], ecx
stc
cmp edx, 0xe
jae 0xad288b
shl ebx, cl
shld cx, cx, 0xf3
add cl, bl
mov dword [ebp - 0x38], edi
and cx, 0x1e24
btc cx, 0x1a
rol ecx, cl
mov ecx, ebx
cmp ax, di
stc
sub ecx, edx
sub dh, 0xae
mov edx, dword [ebp - 0x20]
clc
cmp ebx, esi
lea ecx, [edx + ecx*2 + 0x55e]
shrd edx, eax, 0xb1
sub dh, 0x79
mov dword [ebp - 8], ecx
cmp eax, 0x167e3aba
xor dx, di
ror dl, 0xa9
lea esp, [esp]
shr dx, 0x6f
movzx edx, word [ecx + edi*2]
cmp eax, 0x1000000
jae 0xe02e82
mov ecx, dword [ebp - 4]
movzx ecx, byte [ecx]
stc
cmp bp, 0x1583
shl esi, 8
shl eax, 8
stc
or esi, ecx
xchg cl, ch
movsx ecx, bx
inc dword [ebp - 4]
or ecx, eax
sar cl, 0x3b
ror cl, cl
mov ecx, eax
clc
shr ecx, 0xb
imul ecx, edx
test dl, dh
cmp esi, ecx
jae 0xadbc86
mov eax, ecx
bts cx, sp
inc ch
mov ecx, 0x800
test bh, 0x2c
cmp edx, esp
cmp dl, 0x8d
sub ecx, edx
cmp ebp, 0x37dc0410
clc
shr ecx, 5
cmp edx, edi
stc
add ecx, edx
shl dl, cl
mov edx, ecx
shrd ecx, ebp, 0x88
cmp si, dx
mov ecx, dword [ebp - 8]
cmc
mov word [ecx + edi*2], dx
test bp, cx
add edi, edi
jmp 0xadbcb3
mov edi, dword [ebp - 0x4c]
and bl, 0xb8
sub bh, cl
mov edx, dword [ebp - 0x1c]
bsf bx, ax
or bh, 0x7f
mov ebx, dword [ebp - 8]
lea edi, [edi + edi]
clc
and edx, edi
cmc
mov dword [ebp - 0x4c], edi
bsf di, bp
mov edi, dword [ebp - 0x1c]
cmc
test ecx, 0x70c14e5
lea edi, [edi + edx]
cmp ebp, 0x4a461117
stc
test esi, 0x61d41d10
lea edi, [edi + ecx]
lea edi, [ebx + edi*2]
mov dword [ebp - 0x44], edi
movzx edi, word [edi]
cmc
test si, 0x2f68
cmp eax, 0x1000000
jae 0xe05298
mov ebx, dword [ebp - 4]
test ah, 5
stc
cmp bh, 0x25
movzx ebx, byte [ebx]
shl esi, 8
test dh, bh
shl eax, 8
stc
or esi, ebx
bswap ebx
movzx ebx, si
not bx
inc dword [ebp - 4]
stc
mov ebx, eax
cmp edi, 0x6fc368a3
shr ebx, 0xb
test si, cx
clc
imul ebx, edi
cmp esi, ebx
jae 0xae9f67
mov eax, ebx
or bx, 0x7a3a
or ebx, ecx
mov ebx, 0x800
cmp si, 0x3071
stc
test bx, bp
sub ebx, edi
shr ebx, 5
cmp ax, dx
test ch, bl
test cl, 9
lea ebx, [ebx + edi]
shld di, sp, 0x64
or edi, ebx
mov edi, dword [ebp - 0x44]
clc
mov word [edi], bx
cmc
clc
add ecx, ecx
not edx
jmp 0xae9f92
mov ecx, dword [ebp - 0x10]
clc
test edi, ecx
and ecx, edx
or dl, cl
bt edx, ebx
mov edx, ebx
cmp ebx, ebp
test ebx, eax
shl edx, 4
lea edx, [edx + ecx]
test cx, 0x48c0
cmp eax, 0x5ef66f94
mov dword [ebp - 0x1c], ecx
xchg ch, cl
bts ecx, ecx
test esp, 0x72a47886
mov ecx, dword [ebp - 0x20]
cmc
lea ecx, [ecx + edx*2]
test di, 0x4658
mov dword [ebp - 8], ecx
movzx ecx, word [ecx]
test ax, 0x47ab
cmp esp, 0x530a5420
cmp eax, 0x1000000
jae 0xe0b10a
mov edx, dword [ebp - 4]
cmp di, 0xd64
clc
movzx edx, byte [edx]
shl esi, 8
clc
test bl, 0x8f
shl eax, 8
clc
test esp, 0x29ea33bb
or esi, edx
inc dword [ebp - 4]
xchg dh, dh
btr dx, bp
sete dl
mov edx, eax
shr edx, 0xb
imul edx, ecx
cmc
cmp esi, edx
jae 0xe79e9f
mov eax, edx
mov edx, 0x800
stc
cmc
test bh, 1
sub edx, ecx
test ecx, esi
cmc
shr edx, 5
lea edx, [edx + ecx]
stc
bts cx, sp
mov ecx, dword [ebp - 8]
test esi, 0x7a3b354a
mov word [ecx], dx
mov edx, dword [ebp - 0x20]
lea edx, [edx + 0xe6c]
cmc
cmp dword [ebp - 0x3c], 0
mov dword [ebp - 8], edx
jne 0xe0b164
cmp dword [ebp - 0x10], 0
je 0xe0b1d7
mov ecx, dword [ebp - 0xc]
clc
stc
test ecx, ecx
jne 0xe0b174
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x34]
movzx ebx, byte [ecx + edx - 1]
adc cx, 0x49ff
mov cx, di
xchg dl, dl
mov edx, dword [ebp - 0x10]
add ch, 0x8a
btc cx, 0xb4
and edx, dword [ebp - 0x48]
or cl, al
stc
mov ecx, 8
cmp bp, di
test ebx, ecx
sub cl, byte [ebp - 0x40]
cmc
stc
shr ebx, cl
movsx cx, cl
mov ecx, dword [ebp - 0x40]
stc
shl edx, cl
stc
cmp cx, 0x1812
add ebx, edx
mov edx, dword [ebp - 8]
cmp di, 0x4972
cmc
imul ebx, ebx, 0x600
add edx, ebx
not bx
mov ebx, dword [ebp - 0x14]
cmc
mov dword [ebp - 8], edx
cmp al, 0xc
cmp ebx, 7
jae 0xae39f7
mov ecx, ebx
cmp ebx, 4
jb 0xe0b1f0
mov ecx, 3
sub ebx, ecx
mov ch, 0x9f
movsx ecx, di
movzx ecx, si
mov dword [ebp - 0x14], ebx
mov ecx, 1
jmp 0xad3ec2
sub eax, edi
cmc
sub esi, edi
movsx edi, di
and di, 0x2afd
mov edi, ecx
cmp ax, sp
stc
shr edi, 5
cmp esi, eax
sub ecx, edi
sbb di, sp
bt edi, 0x67
mov edi, dword [ebp - 0x28]
mov word [edi + edx*2], cx
sete ch
xor ch, 0x68
bts ecx, ebx
lea edx, [edx + edx + 1]
sbb cl, 0xc8
mov ecx, dword [ebp - 0x1c]
cmp edx, ecx
jb 0xad2a02
mov edi, dword [ebp - 8]
test dx, 0x3af4
cmp di, sp
sub edi, ecx
lea edx, [edx + edi]
cmp sp, sp
cmp eax, 0x1fba6426
mov dword [ebp - 0x28], edx
clc
cmc
cmp ebx, 0xc
jb 0xd63b50
mov ecx, edx
test dx, 0x352e
cmp ax, dx
cmp edx, 4
jb 0xe7615f
mov ecx, 3
test sp, 0x1962
ror dx, 0xae
mov edx, dword [ebp - 0x20]
cmp ch, bh
cmp edi, 0x7fa0286b
cmc
shl ecx, 7
lea ecx, [ecx + edx + 0x360]
cmp sp, si
cmovae dx, bp
add edx, esp
movzx edx, word [ecx + 2]
cmp bl, dh
test ebp, 0x32c30aa9
cmp eax, 0x1000000
jae 0xe761cb
mov edi, dword [ebp - 4]
cmp si, 0x6822
add bx, 0x57f6
movzx ebx, byte [edi]
test bp, di
cmp ebx, esp
shl esi, 8
test dh, 0x30
cmp eax, ebp
shl eax, 8
test si, di
stc
or esi, ebx
inc edi
cmp dl, 0x84
test sp, bx
mov dword [ebp - 4], edi
and edi, 0x2f8868ed
mov edi, eax
cmc
shr edi, 0xb
clc
imul edi, edx
test bx, 0x685e
cmp esi, edi
jae 0xade865
mov eax, edi
mov edi, 0x800
sub edi, edx
stc
test dh, 0xdf
shr edi, 5
cmp ecx, edx
add edi, edx
mov word [ecx + 2], di
mov dh, dl
mov edx, 2
jmp 0xade886
sub eax, edi
cmc
sub esi, edi
cmc
mov edi, edx
cmp ebx, esi
shr edi, 5
sub edx, edi
cmove di, dx
mov edi, eax
mov edi, dword [ebp - 8]
mov word [edi], dx
jmp 0xad3b91
sub eax, edx
test edi, eax
cmc
sub esi, edx
mov edx, ecx
cmp di, cx
shr edx, 5
cmp di, 0x1bae
sub ecx, edx
ror dx, 0xb9
mov edx, dword [ebp - 8]
mov word [edx], cx
sar dh, cl
test esp, ebx
shrd edx, esp, 0xef
mov ecx, dword [ebp - 0x20]
or edx, ebx
shr edx, cl
movzx edx, word [ecx + ebx*2 + 0x180]
cmp eax, 0x1000000
jae 0xe79efd
mov edi, dword [ebp - 4]
cmp cx, bp
clc
movzx edi, byte [edi]
shl esi, 8
stc
shl eax, 8
or esi, edi
movsx edi, ax
dec edi
inc dword [ebp - 4]
add edi, esp
mov edi, eax
test sp, 0x6ec
shr edi, 0xb
imul edi, edx
cmp esi, edi
jae 0xae2f7b
mov eax, edi
mov edi, 0x800
cmp bx, 0x23fe
sub edi, edx
cmp bp, di
shr edi, 5
cmc
add edi, edx
cmc
cmp bh, bh
test ecx, edi
mov word [ecx + ebx*2 + 0x180], di
cmp dl, ch
clc
add ebx, 0xc
test ecx, ebp
add ecx, 0x664
jmp 0xad3bad
push 0xe9a2da77
call fcn.00ace46c
pop esp
pop eax
add ebp, eax
cmp ch, cl
and ch, ch
imul edi, dword [eax], 0xffffffc4
and byte [esi], dl
mov word [ebx - 0x7f38d47f], fs
std
dec ebx
sub eax, edi
cmp ch, 0x4b
sub esi, edi
sal edi, 0xa3
and edi, 0x2bb030bc
mov edi, edx
stc
test si, dx
shr edi, 5
test bp, 0x221c
sub edx, edi
cmc
test esp, ebp
mov word [ecx + ebx*2 + 0x1b0], dx
movzx edx, word [ecx + ebx*2 + 0x1c8]
cmp eax, 0x6bbd74a1
cmp ecx, ebp
cmc
cmp eax, 0x1000000
jae 0xe7b4a0
mov edi, dword [ebp - 4]
cmp esp, edi
test sp, ax
movzx edi, byte [edi]
stc
clc
test al, 4
shl esi, 8
cmp bp, dx
shl eax, 8
or esi, edi
mov di, di
cmovne di, di
inc dword [ebp - 4]
mov edi, eax
test bp, 0x69fb
stc
shr edi, 0xb
imul edi, edx
test bx, 0x3661
cmp esi, edi
jae 0xad3b35
mov eax, edi
xchg di, di
sal di, 0xc4
xor edi, eax
mov edi, 0x800
sub edi, edx
test esi, 0x438755b4
shr edi, 5
add edi, edx
setns dl
mov edx, dword [ebp - 0x30]
mov word [ecx + ebx*2 + 0x1c8], di
jmp 0xad3b78
jmp 0xe7b6a7
jmp 0xe7b41c